Commit 08e5dc716c47e23e2c5f46a9979aa5fd6abb507b

Authored by YunaiV
1 parent 0635d13d

✨ feat(workstation): 新增获取指定车间工作站数量的功能

yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/md/workstation/MesMdWorkstationMapper.java
... ... @@ -39,6 +39,10 @@ public interface MesMdWorkstationMapper extends BaseMapperX<MesMdWorkstationDO>
39 39 return selectList(MesMdWorkstationDO::getStatus, status);
40 40 }
41 41  
  42 + default Long selectCountByWorkshopId(Long workshopId) {
  43 + return selectCount(MesMdWorkstationDO::getWorkshopId, workshopId);
  44 + }
  45 +
42 46 default Long selectCountByWarehouseId(Long warehouseId) {
43 47 return selectCount(MesMdWorkstationDO::getWarehouseId, warehouseId);
44 48 }
... ...
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/workstation/MesMdWorkshopServiceImpl.java
... ... @@ -7,9 +7,7 @@ import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
7 7 import cn.iocoder.yudao.module.mes.controller.admin.md.workstation.vo.workshop.MesMdWorkshopPageReqVO;
8 8 import cn.iocoder.yudao.module.mes.controller.admin.md.workstation.vo.workshop.MesMdWorkshopSaveReqVO;
9 9 import cn.iocoder.yudao.module.mes.dal.dataobject.md.workstation.MesMdWorkshopDO;
10   -import cn.iocoder.yudao.module.mes.dal.dataobject.md.workstation.MesMdWorkstationDO;
11 10 import cn.iocoder.yudao.module.mes.dal.mysql.md.workstation.MesMdWorkshopMapper;
12   -import cn.iocoder.yudao.module.mes.dal.mysql.md.workstation.MesMdWorkstationMapper;
13 11 import cn.iocoder.yudao.module.mes.enums.wm.BarcodeBizTypeEnum;
14 12 import cn.iocoder.yudao.module.mes.service.wm.barcode.MesWmBarcodeService;
15 13 import jakarta.annotation.Resource;
... ... @@ -38,8 +36,7 @@ public class MesMdWorkshopServiceImpl implements MesMdWorkshopService {
38 36  
39 37 @Resource
40 38 @Lazy
41   - private MesMdWorkstationMapper workstationMapper;
42   -
  39 + private MesMdWorkstationService workstationService;
43 40 @Resource
44 41 private MesWmBarcodeService barcodeService;
45 42  
... ... @@ -79,7 +76,7 @@ public class MesMdWorkshopServiceImpl implements MesMdWorkshopService {
79 76 // 校验存在
80 77 validateWorkshopExists(id);
81 78 // 校验车间下是否存在工作站
82   - Long count = workstationMapper.selectCount(MesMdWorkstationDO::getWorkshopId, id);
  79 + Long count = workstationService.getWorkstationCountByWorkshopId(id);
83 80 if (count > 0) {
84 81 throw exception(MD_WORKSHOP_HAS_WORKSTATION);
85 82 }
... ...
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/workstation/MesMdWorkstationMachineServiceImpl.java
... ... @@ -5,7 +5,6 @@ import cn.iocoder.yudao.module.mes.controller.admin.md.workstation.vo.machine.Me
5 5 import cn.iocoder.yudao.module.mes.dal.dataobject.md.workstation.MesMdWorkstationDO;
6 6 import cn.iocoder.yudao.module.mes.dal.dataobject.md.workstation.MesMdWorkstationMachineDO;
7 7 import cn.iocoder.yudao.module.mes.dal.mysql.md.workstation.MesMdWorkstationMachineMapper;
8   -import cn.iocoder.yudao.module.mes.dal.mysql.md.workstation.MesMdWorkstationMapper;
9 8 import cn.iocoder.yudao.module.mes.service.dv.machinery.MesDvMachineryService;
10 9 import jakarta.annotation.Resource;
11 10 import org.springframework.stereotype.Service;
... ... @@ -29,8 +28,7 @@ public class MesMdWorkstationMachineServiceImpl implements MesMdWorkstationMachi
29 28 private MesMdWorkstationMachineMapper workstationMachineMapper;
30 29  
31 30 @Resource
32   - private MesMdWorkstationMapper workstationMapper;
33   -
  31 + private MesMdWorkstationService workstationService;
34 32 @Resource
35 33 private MesDvMachineryService machineryService;
36 34  
... ... @@ -51,7 +49,7 @@ public class MesMdWorkstationMachineServiceImpl implements MesMdWorkstationMachi
51 49 // 校验该设备是否已分配到其他工作站(一台设备只能分配到一个工作站)
52 50 MesMdWorkstationMachineDO existing = workstationMachineMapper.selectByMachineryId(reqVO.getMachineryId());
53 51 if (existing != null) {
54   - MesMdWorkstationDO workstation = workstationMapper.selectById(existing.getWorkstationId());
  52 + MesMdWorkstationDO workstation = workstationService.getWorkstation(existing.getWorkstationId());
55 53 throw exception(MD_WORKSTATION_MACHINE_EXISTS,
56 54 workstation != null ? workstation.getName() : String.valueOf(existing.getWorkstationId()));
57 55 }
... ...
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/workstation/MesMdWorkstationService.java
... ... @@ -106,6 +106,14 @@ public interface MesMdWorkstationService {
106 106 Long getWorkstationCountByAreaId(Long areaId);
107 107  
108 108 /**
  109 + * 获得指定车间下的工作站数量
  110 + *
  111 + * @param workshopId 车间编号
  112 + * @return 工作站数量
  113 + */
  114 + Long getWorkstationCountByWorkshopId(Long workshopId);
  115 +
  116 + /**
109 117 * 获得工作站列表
110 118 *
111 119 * @param ids 编号数组
... ...
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/workstation/MesMdWorkstationServiceImpl.java
... ... @@ -243,6 +243,11 @@ public class MesMdWorkstationServiceImpl implements MesMdWorkstationService {
243 243 }
244 244  
245 245 @Override
  246 + public Long getWorkstationCountByWorkshopId(Long workshopId) {
  247 + return workstationMapper.selectCountByWorkshopId(workshopId);
  248 + }
  249 +
  250 + @Override
246 251 public Long getWorkstationCountByWarehouseId(Long warehouseId) {
247 252 return workstationMapper.selectCountByWarehouseId(warehouseId);
248 253 }
... ...
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/tm/tool/MesTmToolService.java
... ... @@ -65,6 +65,14 @@ public interface MesTmToolService {
65 65 List<MesTmToolDO> getToolList();
66 66  
67 67 /**
  68 + * 获得指定工具类型下的工具数量
  69 + *
  70 + * @param toolTypeId 工具类型编号
  71 + * @return 工具数量
  72 + */
  73 + Long getToolCountByToolTypeId(Long toolTypeId);
  74 +
  75 + /**
68 76 * 获得工具列表
69 77 *
70 78 * @param ids 编号列表
... ...
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/tm/tool/MesTmToolServiceImpl.java
... ... @@ -121,6 +121,11 @@ public class MesTmToolServiceImpl implements MesTmToolService {
121 121 }
122 122  
123 123 @Override
  124 + public Long getToolCountByToolTypeId(Long toolTypeId) {
  125 + return toolMapper.selectCountByToolTypeId(toolTypeId);
  126 + }
  127 +
  128 + @Override
124 129 public List<MesTmToolDO> getToolList() {
125 130 return toolMapper.selectList();
126 131 }
... ...
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/tm/tool/MesTmToolTypeServiceImpl.java
... ... @@ -6,9 +6,9 @@ import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
6 6 import cn.iocoder.yudao.module.mes.controller.admin.tm.tool.vo.type.MesTmToolTypePageReqVO;
7 7 import cn.iocoder.yudao.module.mes.controller.admin.tm.tool.vo.type.MesTmToolTypeSaveReqVO;
8 8 import cn.iocoder.yudao.module.mes.dal.dataobject.tm.tool.MesTmToolTypeDO;
9   -import cn.iocoder.yudao.module.mes.dal.mysql.tm.tool.MesTmToolMapper;
10 9 import cn.iocoder.yudao.module.mes.dal.mysql.tm.tool.MesTmToolTypeMapper;
11 10 import jakarta.annotation.Resource;
  11 +import org.springframework.context.annotation.Lazy;
12 12 import org.springframework.stereotype.Service;
13 13 import org.springframework.validation.annotation.Validated;
14 14  
... ... @@ -34,7 +34,8 @@ public class MesTmToolTypeServiceImpl implements MesTmToolTypeService {
34 34 private MesTmToolTypeMapper toolTypeMapper;
35 35  
36 36 @Resource
37   - private MesTmToolMapper toolMapper;
  37 + @Lazy
  38 + private MesTmToolService toolService;
38 39  
39 40 @Override
40 41 public Long createToolType(MesTmToolTypeSaveReqVO createReqVO) {
... ... @@ -71,7 +72,7 @@ public class MesTmToolTypeServiceImpl implements MesTmToolTypeService {
71 72 // 校验存在
72 73 validateToolTypeExists(id);
73 74 // 校验是否被工具引用
74   - if (toolMapper.selectCountByToolTypeId(id) > 0) {
  75 + if (toolService.getToolCountByToolTypeId(id) > 0) {
75 76 throw exception(TM_TOOL_TYPE_HAS_TOOL);
76 77 }
77 78  
... ...