yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/md/workstation/MesMdWorkshopController.java
@@ -12,7 +12,9 @@
import cn.iocoder.yudao.module.mes.controller.admin.md.workstation.vo.workshop.MesMdWorkshopPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.md.workstation.vo.workshop.MesMdWorkshopRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.md.workstation.vo.workshop.MesMdWorkshopSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.md.factory.MesMdFactoryDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.md.workstation.MesMdWorkshopDO;
import cn.iocoder.yudao.module.mes.service.md.factory.MesMdFactoryService;
import cn.iocoder.yudao.module.mes.service.md.workstation.MesMdWorkshopService;
import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO;
@@ -46,6 +48,9 @@
    @Resource
    private AdminUserApi adminUserApi;
    @Resource
    private MesMdFactoryService factoryService;
    @PostMapping("/create")
    @Operation(summary = "创建车间")
@@ -97,14 +102,19 @@
        if (CollUtil.isEmpty(list)) {
            return success(Collections.emptyList());
        }
        // 批量获取负责人信息
        // 批量获取负责人、所属工厂信息
        Map<Long, AdminUserRespDTO> userMap = adminUserApi.getUserMap(
                convertSet(list, MesMdWorkshopDO::getChargeUserId));
        Map<Long, MesMdFactoryDO> factoryMap = factoryService.getFactoryMap(
                convertSet(list, MesMdWorkshopDO::getFactoryId));
        return success(convertList(list, ws -> {
            MesMdWorkshopRespVO vo = new MesMdWorkshopRespVO()
                    .setId(ws.getId()).setCode(ws.getCode()).setName(ws.getName()).setArea(ws.getArea());
                    .setId(ws.getId()).setCode(ws.getCode()).setName(ws.getName()).setArea(ws.getArea())
                    .setFactoryId(ws.getFactoryId());
            MapUtils.findAndThen(userMap, ws.getChargeUserId(),
                    user -> vo.setChargeUserName(user.getNickname()));
            MapUtils.findAndThen(factoryMap, ws.getFactoryId(),
                    factory -> vo.setFactoryName(factory.getName()));
            return vo;
        }));
    }
@@ -127,13 +137,17 @@
        if (CollUtil.isEmpty(list)) {
            return Collections.emptyList();
        }
        // 1. 批量获取负责人信息
        // 1. 批量获取负责人、所属工厂信息
        Map<Long, AdminUserRespDTO> userMap = adminUserApi.getUserMap(
                convertSet(list, MesMdWorkshopDO::getChargeUserId));
        Map<Long, MesMdFactoryDO> factoryMap = factoryService.getFactoryMap(
                convertSet(list, MesMdWorkshopDO::getFactoryId));
        // 2. 拼接 VO
        return BeanUtils.toBean(list, MesMdWorkshopRespVO.class, vo -> {
            MapUtils.findAndThen(userMap, vo.getChargeUserId(),
                    user -> vo.setChargeUserName(user.getNickname()));
            MapUtils.findAndThen(factoryMap, vo.getFactoryId(),
                    factory -> vo.setFactoryName(factory.getName()));
        });
    }