Commit c39865e90d251ef9feee04d5ead63b6516fd50ef
1 parent
a4b48556
fix(mes): 修正安灯迁移的配置角色显示和记录只读字段
Showing
5 changed files
with
100 additions
and
3 deletions
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/andon/MesProAndonConfigController.java
| ... | ... | @@ -11,6 +11,8 @@ import cn.iocoder.yudao.module.mes.controller.admin.pro.andon.vo.config.MesProAn |
| 11 | 11 | import cn.iocoder.yudao.module.mes.controller.admin.pro.andon.vo.config.MesProAndonConfigSaveReqVO; |
| 12 | 12 | import cn.iocoder.yudao.module.mes.dal.dataobject.pro.andon.MesProAndonConfigDO; |
| 13 | 13 | import cn.iocoder.yudao.module.mes.service.pro.andon.MesProAndonConfigService; |
| 14 | +import cn.iocoder.yudao.module.system.api.permission.RoleApi; | |
| 15 | +import cn.iocoder.yudao.module.system.api.permission.dto.RoleRespDTO; | |
| 14 | 16 | import cn.iocoder.yudao.module.system.api.user.AdminUserApi; |
| 15 | 17 | import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO; |
| 16 | 18 | import io.swagger.v3.oas.annotations.Operation; |
| ... | ... | @@ -40,6 +42,8 @@ public class MesProAndonConfigController { |
| 40 | 42 | |
| 41 | 43 | @Resource |
| 42 | 44 | private AdminUserApi adminUserApi; |
| 45 | + @Resource | |
| 46 | + private RoleApi roleApi; | |
| 43 | 47 | |
| 44 | 48 | @PostMapping("/create") |
| 45 | 49 | @Operation(summary = "创建安灯呼叫配置") |
| ... | ... | @@ -102,10 +106,15 @@ public class MesProAndonConfigController { |
| 102 | 106 | // 1. 批量获取关联数据 |
| 103 | 107 | Map<Long, AdminUserRespDTO> userMap = adminUserApi.getUserMap( |
| 104 | 108 | convertSet(list, MesProAndonConfigDO::getHandlerUserId)); |
| 109 | + Map<Long, RoleRespDTO> roleMap = roleApi.getRoleMap( | |
| 110 | + convertSet(list, MesProAndonConfigDO::getHandlerRoleId)); | |
| 105 | 111 | // 2. 拼接 VO |
| 106 | - return BeanUtils.toBean(list, MesProAndonConfigRespVO.class, vo -> | |
| 107 | - MapUtils.findAndThen(userMap, vo.getHandlerUserId(), | |
| 108 | - user -> vo.setHandlerUserNickname(user.getNickname()))); | |
| 112 | + return BeanUtils.toBean(list, MesProAndonConfigRespVO.class, vo -> { | |
| 113 | + MapUtils.findAndThen(userMap, vo.getHandlerUserId(), | |
| 114 | + user -> vo.setHandlerUserNickname(user.getNickname())); | |
| 115 | + MapUtils.findAndThen(roleMap, vo.getHandlerRoleId(), | |
| 116 | + role -> vo.setHandlerRoleName(role.getName())); | |
| 117 | + }); | |
| 109 | 118 | } |
| 110 | 119 | |
| 111 | 120 | } | ... | ... |
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/andon/vo/config/MesProAndonConfigRespVO.java
| ... | ... | @@ -21,6 +21,9 @@ public class MesProAndonConfigRespVO { |
| 21 | 21 | @Schema(description = "处置人角色编号", example = "10") |
| 22 | 22 | private Long handlerRoleId; |
| 23 | 23 | |
| 24 | + @Schema(description = "处置人角色名称", example = "生产经理") | |
| 25 | + private String handlerRoleName; | |
| 26 | + | |
| 24 | 27 | @Schema(description = "处置人编号", example = "100") |
| 25 | 28 | private Long handlerUserId; |
| 26 | 29 | ... | ... |
yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/api/permission/RoleApi.java
| 1 | 1 | package cn.iocoder.yudao.module.system.api.permission; |
| 2 | 2 | |
| 3 | +import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; | |
| 4 | +import cn.iocoder.yudao.module.system.api.permission.dto.RoleRespDTO; | |
| 5 | + | |
| 3 | 6 | import java.util.Collection; |
| 7 | +import java.util.List; | |
| 8 | +import java.util.Map; | |
| 4 | 9 | |
| 5 | 10 | /** |
| 6 | 11 | * 角色 API 接口 |
| ... | ... | @@ -18,4 +23,31 @@ public interface RoleApi { |
| 18 | 23 | */ |
| 19 | 24 | void validRoleList(Collection<Long> ids); |
| 20 | 25 | |
| 26 | + /** | |
| 27 | + * 获得角色信息 | |
| 28 | + * | |
| 29 | + * @param id 角色编号 | |
| 30 | + * @return 角色信息 | |
| 31 | + */ | |
| 32 | + RoleRespDTO getRole(Long id); | |
| 33 | + | |
| 34 | + /** | |
| 35 | + * 获得角色信息数组 | |
| 36 | + * | |
| 37 | + * @param ids 角色编号数组 | |
| 38 | + * @return 角色信息数组 | |
| 39 | + */ | |
| 40 | + List<RoleRespDTO> getRoleList(Collection<Long> ids); | |
| 41 | + | |
| 42 | + /** | |
| 43 | + * 获得指定编号的角色 Map | |
| 44 | + * | |
| 45 | + * @param ids 角色编号数组 | |
| 46 | + * @return 角色 Map | |
| 47 | + */ | |
| 48 | + default Map<Long, RoleRespDTO> getRoleMap(Collection<Long> ids) { | |
| 49 | + List<RoleRespDTO> list = getRoleList(ids); | |
| 50 | + return CollectionUtils.convertMap(list, RoleRespDTO::getId); | |
| 51 | + } | |
| 52 | + | |
| 21 | 53 | } | ... | ... |
yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/api/permission/RoleApiImpl.java
| 1 | 1 | package cn.iocoder.yudao.module.system.api.permission; |
| 2 | 2 | |
| 3 | +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; | |
| 4 | +import cn.iocoder.yudao.module.system.api.permission.dto.RoleRespDTO; | |
| 5 | +import cn.iocoder.yudao.module.system.dal.dataobject.permission.RoleDO; | |
| 3 | 6 | import cn.iocoder.yudao.module.system.service.permission.RoleService; |
| 4 | 7 | import org.springframework.stereotype.Service; |
| 5 | 8 | |
| 6 | 9 | import jakarta.annotation.Resource; |
| 7 | 10 | import java.util.Collection; |
| 11 | +import java.util.List; | |
| 8 | 12 | |
| 9 | 13 | /** |
| 10 | 14 | * 角色 API 实现类 |
| ... | ... | @@ -21,4 +25,16 @@ public class RoleApiImpl implements RoleApi { |
| 21 | 25 | public void validRoleList(Collection<Long> ids) { |
| 22 | 26 | roleService.validateRoleList(ids); |
| 23 | 27 | } |
| 28 | + | |
| 29 | + @Override | |
| 30 | + public RoleRespDTO getRole(Long id) { | |
| 31 | + RoleDO role = roleService.getRole(id); | |
| 32 | + return BeanUtils.toBean(role, RoleRespDTO.class); | |
| 33 | + } | |
| 34 | + | |
| 35 | + @Override | |
| 36 | + public List<RoleRespDTO> getRoleList(Collection<Long> ids) { | |
| 37 | + List<RoleDO> list = roleService.getRoleList(ids); | |
| 38 | + return BeanUtils.toBean(list, RoleRespDTO.class); | |
| 39 | + } | |
| 24 | 40 | } | ... | ... |
yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/api/permission/dto/RoleRespDTO.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.system.api.permission.dto; | |
| 2 | + | |
| 3 | +import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; | |
| 4 | +import lombok.Data; | |
| 5 | + | |
| 6 | +/** | |
| 7 | + * 角色 Response DTO | |
| 8 | + * | |
| 9 | + * @author 芋道源码 | |
| 10 | + */ | |
| 11 | +@Data | |
| 12 | +public class RoleRespDTO { | |
| 13 | + | |
| 14 | + /** | |
| 15 | + * 角色编号 | |
| 16 | + */ | |
| 17 | + private Long id; | |
| 18 | + /** | |
| 19 | + * 角色名称 | |
| 20 | + */ | |
| 21 | + private String name; | |
| 22 | + /** | |
| 23 | + * 角色编码 | |
| 24 | + */ | |
| 25 | + private String code; | |
| 26 | + /** | |
| 27 | + * 显示顺序 | |
| 28 | + */ | |
| 29 | + private Integer sort; | |
| 30 | + /** | |
| 31 | + * 角色状态 | |
| 32 | + * | |
| 33 | + * 枚举 {@link CommonStatusEnum} | |
| 34 | + */ | |
| 35 | + private Integer status; | |
| 36 | + | |
| 37 | +} | ... | ... |