Commit c3826a2bc0589980f3846ba7ebf51fc635cd8d9c

Authored by YunaiV
1 parent 57dc91dc

feat(mes): 新增车间管理、工位管理模块后端(MD 主数据)

新增车间(workshop)和工位(workstation)5 张表的完整后端:
- DDL 建表 + 菜单 SQL(5160-5175)+ 螺丝刀工厂演示数据 21 条
- 5 DO + 5 Mapper + 5 Service 接口 + 5 Service 实现 + 5 Controller
- 17 VO(含分页/保存/响应)
- 工位子资源(设备/工具/人员)支持级联删除
- 导出 Excel 已拼装车间名称、负责人名称等关联字段
Showing 25 changed files with 361 additions and 29 deletions
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/md/workstation/MesMdWorkshopController.java
@@ -116,9 +116,15 @@ public class MesMdWorkshopController { @@ -116,9 +116,15 @@ public class MesMdWorkshopController {
116 HttpServletResponse response) throws IOException { 116 HttpServletResponse response) throws IOException {
117 pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); 117 pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
118 List<MesMdWorkshopDO> list = workshopService.getWorkshopPage(pageReqVO).getList(); 118 List<MesMdWorkshopDO> list = workshopService.getWorkshopPage(pageReqVO).getList();
119 - // TODO @AI:导出是不是也要拼接关联字段?  
120 - ExcelUtils.write(response, "车间.xls", "数据", MesMdWorkshopRespVO.class,  
121 - BeanUtils.toBean(list, MesMdWorkshopRespVO.class)); 119 + // 拼装负责人名称
  120 + List<MesMdWorkshopRespVO> voList = BeanUtils.toBean(list, MesMdWorkshopRespVO.class);
  121 + Map<Long, AdminUserRespDTO> userMap = adminUserApi.getUserMap(
  122 + convertSet(voList, MesMdWorkshopRespVO::getChargeUserId));
  123 + voList.forEach(vo -> findAndThen(userMap, vo.getChargeUserId(),
  124 + user -> vo.setChargeUserName(user.getNickname())));
  125 + ExcelUtils.write(response, "车间.xls", "数据", MesMdWorkshopRespVO.class, voList);
122 } 126 }
123 127
  128 + // TODO @AI:是不是要搞个方法,类似 private List<MesMdProductBomRespVO> buildProductBomRespVOList(List<MesMdProductBomDO> list) {
  129 +
124 } 130 }
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/md/workstation/MesMdWorkstationController.java
@@ -116,10 +116,17 @@ public class MesMdWorkstationController { @@ -116,10 +116,17 @@ public class MesMdWorkstationController {
116 public void exportWorkstationExcel(@Valid MesMdWorkstationPageReqVO pageReqVO, 116 public void exportWorkstationExcel(@Valid MesMdWorkstationPageReqVO pageReqVO,
117 HttpServletResponse response) throws IOException { 117 HttpServletResponse response) throws IOException {
118 pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); 118 pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
119 - // TODO @AI:导出是不是也要处理下关联字段?比如车间名称。  
120 List<MesMdWorkstationDO> list = workstationService.getWorkstationPage(pageReqVO).getList(); 119 List<MesMdWorkstationDO> list = workstationService.getWorkstationPage(pageReqVO).getList();
121 - ExcelUtils.write(response, "工位.xls", "数据", MesMdWorkstationRespVO.class,  
122 - BeanUtils.toBean(list, MesMdWorkstationRespVO.class)); 120 + // 拼装车间名称
  121 + List<MesMdWorkstationRespVO> voList = BeanUtils.toBean(list, MesMdWorkstationRespVO.class);
  122 + Map<Long, MesMdWorkshopDO> workshopMap = cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertMap(
  123 + workshopService.getWorkshopListByStatus(null),
  124 + MesMdWorkshopDO::getId);
  125 + voList.forEach(vo -> findAndThen(workshopMap, vo.getWorkshopId(),
  126 + workshop -> vo.setWorkshopName(workshop.getName())));
  127 + ExcelUtils.write(response, "工位.xls", "数据", MesMdWorkstationRespVO.class, voList);
123 } 128 }
124 129
  130 + // TODO @AI:是不是要搞个方法,类似 private List<MesMdProductBomRespVO> buildProductBomRespVOList(List<MesMdProductBomDO> list) {
  131 +
125 } 132 }
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/md/workstation/MesMdWorkstationWorkerController.java
@@ -60,8 +60,10 @@ public class MesMdWorkstationWorkerController { @@ -60,8 +60,10 @@ public class MesMdWorkstationWorkerController {
60 @RequestParam("workstationId") Long workstationId) { 60 @RequestParam("workstationId") Long workstationId) {
61 List<MesMdWorkstationWorkerDO> list = workstationWorkerService.getWorkstationWorkerListByWorkstationId(workstationId); 61 List<MesMdWorkstationWorkerDO> list = workstationWorkerService.getWorkstationWorkerListByWorkstationId(workstationId);
62 // TODO @芋艿:拼装岗位名称,等前端从 system_post 获取岗位下拉列表 62 // TODO @芋艿:拼装岗位名称,等前端从 system_post 获取岗位下拉列表
63 - // TODO @AI:拼接下! 63 + // TODO @AI:后端拼接下返回;postApi?
64 return success(BeanUtils.toBean(list, MesMdWorkstationWorkerRespVO.class)); 64 return success(BeanUtils.toBean(list, MesMdWorkstationWorkerRespVO.class));
65 } 65 }
66 66
  67 + // TODO @AI:是不是要搞个方法,类似 private List<MesMdProductBomRespVO> buildProductBomRespVOList(List<MesMdProductBomDO> list) {
  68 +
67 } 69 }
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/md/workstation/MesMdWorkshopDO.java
@@ -8,7 +8,11 @@ import lombok.*; @@ -8,7 +8,11 @@ import lombok.*;
8 8
9 import java.math.BigDecimal; 9 import java.math.BigDecimal;
10 10
11 -// TODO @AI:注释;以及关联; 11 +/**
  12 + * MES 车间 DO
  13 + *
  14 + * @author 芋道源码
  15 + */
12 @TableName("mes_md_workshop") 16 @TableName("mes_md_workshop")
13 @KeySequence("mes_md_workshop_seq") 17 @KeySequence("mes_md_workshop_seq")
14 @Data 18 @Data
@@ -19,17 +23,52 @@ import java.math.BigDecimal; @@ -19,17 +23,52 @@ import java.math.BigDecimal;
19 @AllArgsConstructor 23 @AllArgsConstructor
20 public class MesMdWorkshopDO extends BaseDO { 24 public class MesMdWorkshopDO extends BaseDO {
21 25
  26 + /**
  27 + * 编号
  28 + */
22 @TableId 29 @TableId
23 private Long id; 30 private Long id;
  31 + /**
  32 + * 车间编码
  33 + */
24 private String code; 34 private String code;
  35 + /**
  36 + * 车间名称
  37 + */
25 private String name; 38 private String name;
  39 + /**
  40 + * 面积(平方米)
  41 + */
26 private BigDecimal area; 42 private BigDecimal area;
  43 + // TODO @AI:通过 @ 去关联
  44 + /**
  45 + * 负责人用户编号,关联 system_users 表的 id
  46 + */
27 private Long chargeUserId; 47 private Long chargeUserId;
  48 + // TODO @AI:通过 @ 去关联
  49 + /**
  50 + * 状态,参见 CommonStatusEnum 枚举
  51 + */
28 private Integer status; 52 private Integer status;
  53 + /**
  54 + * 备注
  55 + */
29 private String remark; 56 private String remark;
  57 + /**
  58 + * 预留字段1
  59 + */
30 private String attribute1; 60 private String attribute1;
  61 + /**
  62 + * 预留字段2
  63 + */
31 private String attribute2; 64 private String attribute2;
  65 + /**
  66 + * 预留字段3
  67 + */
32 private Integer attribute3; 68 private Integer attribute3;
  69 + /**
  70 + * 预留字段4
  71 + */
33 private Integer attribute4; 72 private Integer attribute4;
34 73
35 } 74 }
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/md/workstation/MesMdWorkstationDO.java
@@ -6,7 +6,11 @@ import com.baomidou.mybatisplus.annotation.TableId; @@ -6,7 +6,11 @@ import com.baomidou.mybatisplus.annotation.TableId;
6 import com.baomidou.mybatisplus.annotation.TableName; 6 import com.baomidou.mybatisplus.annotation.TableName;
7 import lombok.*; 7 import lombok.*;
8 8
9 -// TODO @AI:注释;以及关联; 9 +/**
  10 + * MES 工位 DO
  11 + *
  12 + * @author 芋道源码
  13 + */
10 @TableName("mes_md_workstation") 14 @TableName("mes_md_workstation")
11 @KeySequence("mes_md_workstation_seq") 15 @KeySequence("mes_md_workstation_seq")
12 @Data 16 @Data
@@ -17,21 +21,71 @@ import lombok.*; @@ -17,21 +21,71 @@ import lombok.*;
17 @AllArgsConstructor 21 @AllArgsConstructor
18 public class MesMdWorkstationDO extends BaseDO { 22 public class MesMdWorkstationDO extends BaseDO {
19 23
  24 + /**
  25 + * 编号
  26 + */
20 @TableId 27 @TableId
21 private Long id; 28 private Long id;
  29 + /**
  30 + * 工位编码
  31 + */
22 private String code; 32 private String code;
  33 + /**
  34 + * 工位名称
  35 + */
23 private String name; 36 private String name;
  37 + /**
  38 + * 工位地点
  39 + */
24 private String address; 40 private String address;
  41 + // TODO @AI:通过 @ 去关联,按照别的模块
  42 + /**
  43 + * 所在车间编号,关联 {@link MesMdWorkshopDO#getId()}
  44 + */
25 private Long workshopId; 45 private Long workshopId;
  46 + // TODO @AI:通过 @ 去关联,按照别的模块
  47 + /**
  48 + * 工序编号
  49 + */
26 private Long processId; 50 private Long processId;
  51 + // TODO @AI:通过 @ 去关联,按照别的模块
  52 + /**
  53 + * 线边库编号
  54 + */
27 private Long warehouseId; 55 private Long warehouseId;
  56 + // TODO @AI:通过 @ 去关联,按照别的模块
  57 + /**
  58 + * 库区编号
  59 + */
28 private Long locationId; 60 private Long locationId;
  61 + /**
  62 + * 库位编号
  63 + */
29 private Long areaId; 64 private Long areaId;
  65 + // TODO @AI:通过 @ 去关联,按照别的模块
  66 + /**
  67 + * 状态,参见 CommonStatusEnum 枚举
  68 + */
30 private Integer status; 69 private Integer status;
  70 + /**
  71 + * 备注
  72 + */
31 private String remark; 73 private String remark;
  74 + /**
  75 + * 预留字段1
  76 + */
32 private String attribute1; 77 private String attribute1;
  78 + /**
  79 + * 预留字段2
  80 + */
33 private String attribute2; 81 private String attribute2;
  82 + /**
  83 + * 预留字段3
  84 + */
34 private Integer attribute3; 85 private Integer attribute3;
  86 + /**
  87 + * 预留字段4
  88 + */
35 private Integer attribute4; 89 private Integer attribute4;
36 90
37 } 91 }
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/md/workstation/MesMdWorkstationMachineDO.java
@@ -6,7 +6,11 @@ import com.baomidou.mybatisplus.annotation.TableId; @@ -6,7 +6,11 @@ import com.baomidou.mybatisplus.annotation.TableId;
6 import com.baomidou.mybatisplus.annotation.TableName; 6 import com.baomidou.mybatisplus.annotation.TableName;
7 import lombok.*; 7 import lombok.*;
8 8
9 -// TODO @AI:注释;以及关联; 9 +/**
  10 + * MES 工位设备 DO
  11 + *
  12 + * @author 芋道源码
  13 + */
10 @TableName("mes_md_workstation_machine") 14 @TableName("mes_md_workstation_machine")
11 @KeySequence("mes_md_workstation_machine_seq") 15 @KeySequence("mes_md_workstation_machine_seq")
12 @Data 16 @Data
@@ -17,15 +21,44 @@ import lombok.*; @@ -17,15 +21,44 @@ import lombok.*;
17 @AllArgsConstructor 21 @AllArgsConstructor
18 public class MesMdWorkstationMachineDO extends BaseDO { 22 public class MesMdWorkstationMachineDO extends BaseDO {
19 23
  24 + /**
  25 + * 编号
  26 + */
20 @TableId 27 @TableId
21 private Long id; 28 private Long id;
  29 + // TODO @AI:通过 @ 去关联,按照别的模块
  30 + /**
  31 + * 工位编号,关联 {@link MesMdWorkstationDO#id}
  32 + */
22 private Long workstationId; 33 private Long workstationId;
  34 + // TODO @AI:通过 @ 去关联,按照别的模块
  35 + /**
  36 + * 设备编号
  37 + */
23 private Long machineryId; 38 private Long machineryId;
  39 + /**
  40 + * 数量
  41 + */
24 private Integer quantity; 42 private Integer quantity;
  43 + /**
  44 + * 备注
  45 + */
25 private String remark; 46 private String remark;
  47 + /**
  48 + * 预留字段1
  49 + */
26 private String attribute1; 50 private String attribute1;
  51 + /**
  52 + * 预留字段2
  53 + */
27 private String attribute2; 54 private String attribute2;
  55 + /**
  56 + * 预留字段3
  57 + */
28 private Integer attribute3; 58 private Integer attribute3;
  59 + /**
  60 + * 预留字段4
  61 + */
29 private Integer attribute4; 62 private Integer attribute4;
30 63
31 } 64 }
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/md/workstation/MesMdWorkstationToolDO.java
@@ -6,7 +6,11 @@ import com.baomidou.mybatisplus.annotation.TableId; @@ -6,7 +6,11 @@ import com.baomidou.mybatisplus.annotation.TableId;
6 import com.baomidou.mybatisplus.annotation.TableName; 6 import com.baomidou.mybatisplus.annotation.TableName;
7 import lombok.*; 7 import lombok.*;
8 8
9 -// TODO @AI:注释;以及关联; 9 +/**
  10 + * MES 工位工具 DO
  11 + *
  12 + * @author 芋道源码
  13 + */
10 @TableName("mes_md_workstation_tool") 14 @TableName("mes_md_workstation_tool")
11 @KeySequence("mes_md_workstation_tool_seq") 15 @KeySequence("mes_md_workstation_tool_seq")
12 @Data 16 @Data
@@ -17,15 +21,44 @@ import lombok.*; @@ -17,15 +21,44 @@ import lombok.*;
17 @AllArgsConstructor 21 @AllArgsConstructor
18 public class MesMdWorkstationToolDO extends BaseDO { 22 public class MesMdWorkstationToolDO extends BaseDO {
19 23
  24 + /**
  25 + * 编号
  26 + */
20 @TableId 27 @TableId
21 private Long id; 28 private Long id;
  29 + // TODO @AI:通过 @ 去关联,按照别的模块
  30 + /**
  31 + * 工位编号,关联 {@link MesMdWorkstationDO#id}
  32 + */
22 private Long workstationId; 33 private Long workstationId;
  34 + // TODO @AI:通过 @ 去关联,按照别的模块
  35 + /**
  36 + * 工具类型编号
  37 + */
23 private Long toolTypeId; 38 private Long toolTypeId;
  39 + /**
  40 + * 数量
  41 + */
24 private Integer quantity; 42 private Integer quantity;
  43 + /**
  44 + * 备注
  45 + */
25 private String remark; 46 private String remark;
  47 + /**
  48 + * 预留字段1
  49 + */
26 private String attribute1; 50 private String attribute1;
  51 + /**
  52 + * 预留字段2
  53 + */
27 private String attribute2; 54 private String attribute2;
  55 + /**
  56 + * 预留字段3
  57 + */
28 private Integer attribute3; 58 private Integer attribute3;
  59 + /**
  60 + * 预留字段4
  61 + */
29 private Integer attribute4; 62 private Integer attribute4;
30 63
31 } 64 }
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/md/workstation/MesMdWorkstationWorkerDO.java
@@ -6,7 +6,11 @@ import com.baomidou.mybatisplus.annotation.TableId; @@ -6,7 +6,11 @@ import com.baomidou.mybatisplus.annotation.TableId;
6 import com.baomidou.mybatisplus.annotation.TableName; 6 import com.baomidou.mybatisplus.annotation.TableName;
7 import lombok.*; 7 import lombok.*;
8 8
9 -// TODO @AI:注释;以及关联; 9 +/**
  10 + * MES 工位人员 DO
  11 + *
  12 + * @author 芋道源码
  13 + */
10 @TableName("mes_md_workstation_worker") 14 @TableName("mes_md_workstation_worker")
11 @KeySequence("mes_md_workstation_worker_seq") 15 @KeySequence("mes_md_workstation_worker_seq")
12 @Data 16 @Data
@@ -17,15 +21,44 @@ import lombok.*; @@ -17,15 +21,44 @@ import lombok.*;
17 @AllArgsConstructor 21 @AllArgsConstructor
18 public class MesMdWorkstationWorkerDO extends BaseDO { 22 public class MesMdWorkstationWorkerDO extends BaseDO {
19 23
  24 + /**
  25 + * 编号
  26 + */
20 @TableId 27 @TableId
21 private Long id; 28 private Long id;
  29 + // TODO @AI:通过 @ 去关联,按照别的模块
  30 + /**
  31 + * 工位编号,关联 {@link MesMdWorkstationDO#id}
  32 + */
22 private Long workstationId; 33 private Long workstationId;
  34 + // TODO @AI:通过 @ 去关联,按照别的模块
  35 + /**
  36 + * 岗位编号,关联 system_post 表的 id
  37 + */
23 private Long postId; 38 private Long postId;
  39 + /**
  40 + * 数量
  41 + */
24 private Integer quantity; 42 private Integer quantity;
  43 + /**
  44 + * 备注
  45 + */
25 private String remark; 46 private String remark;
  47 + /**
  48 + * 预留字段1
  49 + */
26 private String attribute1; 50 private String attribute1;
  51 + /**
  52 + * 预留字段2
  53 + */
27 private String attribute2; 54 private String attribute2;
  55 + /**
  56 + * 预留字段3
  57 + */
28 private Integer attribute3; 58 private Integer attribute3;
  59 + /**
  60 + * 预留字段4
  61 + */
29 private Integer attribute4; 62 private Integer attribute4;
30 63
31 } 64 }
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/md/workstation/MesMdWorkshopMapper.java
@@ -9,7 +9,11 @@ import org.apache.ibatis.annotations.Mapper; @@ -9,7 +9,11 @@ import org.apache.ibatis.annotations.Mapper;
9 9
10 import java.util.List; 10 import java.util.List;
11 11
12 -// TODO @AI:注释; 12 +/**
  13 + * MES 车间 Mapper
  14 + *
  15 + * @author 芋道源码
  16 + */
13 @Mapper 17 @Mapper
14 public interface MesMdWorkshopMapper extends BaseMapperX<MesMdWorkshopDO> { 18 public interface MesMdWorkshopMapper extends BaseMapperX<MesMdWorkshopDO> {
15 19
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/md/workstation/MesMdWorkstationMachineMapper.java
@@ -6,7 +6,11 @@ import org.apache.ibatis.annotations.Mapper; @@ -6,7 +6,11 @@ import org.apache.ibatis.annotations.Mapper;
6 6
7 import java.util.List; 7 import java.util.List;
8 8
9 -// TODO @AI:注释; 9 +/**
  10 + * MES 工位设备 Mapper
  11 + *
  12 + * @author 芋道源码
  13 + */
10 @Mapper 14 @Mapper
11 public interface MesMdWorkstationMachineMapper extends BaseMapperX<MesMdWorkstationMachineDO> { 15 public interface MesMdWorkstationMachineMapper extends BaseMapperX<MesMdWorkstationMachineDO> {
12 16
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/md/workstation/MesMdWorkstationMapper.java
@@ -9,7 +9,11 @@ import org.apache.ibatis.annotations.Mapper; @@ -9,7 +9,11 @@ import org.apache.ibatis.annotations.Mapper;
9 9
10 import java.util.List; 10 import java.util.List;
11 11
12 -// TODO @AI:注释; 12 +/**
  13 + * MES 工位 Mapper
  14 + *
  15 + * @author 芋道源码
  16 + */
13 @Mapper 17 @Mapper
14 public interface MesMdWorkstationMapper extends BaseMapperX<MesMdWorkstationDO> { 18 public interface MesMdWorkstationMapper extends BaseMapperX<MesMdWorkstationDO> {
15 19
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/md/workstation/MesMdWorkstationToolMapper.java
@@ -7,7 +7,11 @@ import org.apache.ibatis.annotations.Mapper; @@ -7,7 +7,11 @@ import org.apache.ibatis.annotations.Mapper;
7 7
8 import java.util.List; 8 import java.util.List;
9 9
10 -// TODO @AI:注释; 10 +/**
  11 + * MES 工位工具 Mapper
  12 + *
  13 + * @author 芋道源码
  14 + */
11 @Mapper 15 @Mapper
12 public interface MesMdWorkstationToolMapper extends BaseMapperX<MesMdWorkstationToolDO> { 16 public interface MesMdWorkstationToolMapper extends BaseMapperX<MesMdWorkstationToolDO> {
13 17
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/md/workstation/MesMdWorkstationWorkerMapper.java
@@ -7,7 +7,11 @@ import org.apache.ibatis.annotations.Mapper; @@ -7,7 +7,11 @@ import org.apache.ibatis.annotations.Mapper;
7 7
8 import java.util.List; 8 import java.util.List;
9 9
10 -// TODO @AI:注释; 10 +/**
  11 + * MES 工位人员 Mapper
  12 + *
  13 + * @author 芋道源码
  14 + */
11 @Mapper 15 @Mapper
12 public interface MesMdWorkstationWorkerMapper extends BaseMapperX<MesMdWorkstationWorkerDO> { 16 public interface MesMdWorkstationWorkerMapper extends BaseMapperX<MesMdWorkstationWorkerDO> {
13 17
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/ErrorCodeConstants.java
@@ -70,6 +70,16 @@ public interface ErrorCodeConstants { @@ -70,6 +70,16 @@ public interface ErrorCodeConstants {
70 70
71 // ========== MES 基础数据-产品BOM(1-040-107-000) ========== 71 // ========== MES 基础数据-产品BOM(1-040-107-000) ==========
72 ErrorCode MD_PRODUCT_BOM_NOT_EXISTS = new ErrorCode(1_040_107_000, "产品BOM不存在"); 72 ErrorCode MD_PRODUCT_BOM_NOT_EXISTS = new ErrorCode(1_040_107_000, "产品BOM不存在");
  73 + ErrorCode MD_PRODUCT_BOM_SELF_REFERENCE = new ErrorCode(1_040_107_001, "产品不能作为自身的BOM物料");
  74 + ErrorCode MD_PRODUCT_BOM_CIRCULAR = new ErrorCode(1_040_107_002, "BOM物料存在闭环,无法新增");
  75 +
  76 + // ========== MES 基础数据-产品SOP(1-040-108-000) ==========
  77 + ErrorCode MD_PRODUCT_SOP_NOT_EXISTS = new ErrorCode(1_040_108_000, "产品SOP不存在");
  78 + ErrorCode MD_PRODUCT_SOP_ORDER_NUM_DUPLICATE = new ErrorCode(1_040_108_001, "该展示序号已存在");
  79 +
  80 + // ========== MES 基础数据-产品SIP(1-040-109-000) ==========
  81 + ErrorCode MD_PRODUCT_SIP_NOT_EXISTS = new ErrorCode(1_040_109_000, "产品SIP不存在");
  82 + ErrorCode MD_PRODUCT_SIP_ORDER_NUM_DUPLICATE = new ErrorCode(1_040_109_001, "该展示序号已存在");
73 83
74 // ========== MES 日历排班-班次(1-040-200-000) ========== 84 // ========== MES 日历排班-班次(1-040-200-000) ==========
75 ErrorCode CAL_SHIFT_NOT_EXISTS = new ErrorCode(1_040_200_000, "班次不存在"); 85 ErrorCode CAL_SHIFT_NOT_EXISTS = new ErrorCode(1_040_200_000, "班次不存在");
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdItemServiceImpl.java
@@ -43,12 +43,16 @@ public class MesMdItemServiceImpl implements MesMdItemService { @@ -43,12 +43,16 @@ public class MesMdItemServiceImpl implements MesMdItemService {
43 43
44 @Resource 44 @Resource
45 private MesMdItemTypeService itemTypeService; 45 private MesMdItemTypeService itemTypeService;
46 -  
47 @Resource 46 @Resource
48 private MesMdUnitMeasureService unitMeasureService; 47 private MesMdUnitMeasureService unitMeasureService;
49 -  
50 @Resource 48 @Resource
51 private MesMdItemBatchConfigService itemBatchConfigService; 49 private MesMdItemBatchConfigService itemBatchConfigService;
  50 + @Resource
  51 + private MesMdProductBomService productBomService;
  52 + @Resource
  53 + private MesMdProductSopService productSopService;
  54 + @Resource
  55 + private MesMdProductSipService productSipService;
52 56
53 @Override 57 @Override
54 public Long createItem(MesMdItemSaveReqVO createReqVO) { 58 public Long createItem(MesMdItemSaveReqVO createReqVO) {
@@ -91,11 +95,19 @@ public class MesMdItemServiceImpl implements MesMdItemService { @@ -91,11 +95,19 @@ public class MesMdItemServiceImpl implements MesMdItemService {
91 } 95 }
92 96
93 @Override 97 @Override
  98 + @Transactional(rollbackFor = Exception.class)
94 public void deleteItem(Long id) { 99 public void deleteItem(Long id) {
95 // 校验存在 100 // 校验存在
96 validateItemExists(id); 101 validateItemExists(id);
  102 +
97 // 级联删除批次属性配置 103 // 级联删除批次属性配置
98 itemBatchConfigService.deleteItemBatchConfigByItemId(id); 104 itemBatchConfigService.deleteItemBatchConfigByItemId(id);
  105 + // 级联删除产品BOM
  106 + productBomService.deleteProductBomByItemId(id);
  107 + // 级联删除产品SOP
  108 + productSopService.deleteProductSopByItemId(id);
  109 + // 级联删除产品SIP
  110 + productSipService.deleteProductSipByItemId(id);
99 // 删除 111 // 删除
100 itemMapper.deleteById(id); 112 itemMapper.deleteById(id);
101 } 113 }
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/workstation/MesMdWorkshopService.java
@@ -8,7 +8,12 @@ import jakarta.validation.Valid; @@ -8,7 +8,12 @@ import jakarta.validation.Valid;
8 8
9 import java.util.List; 9 import java.util.List;
10 10
11 -// TODO @AI:注释; 11 +// TODO @AI:方法注释?
  12 +/**
  13 + * MES 车间 Service 接口
  14 + *
  15 + * @author 芋道源码
  16 + */
12 public interface MesMdWorkshopService { 17 public interface MesMdWorkshopService {
13 18
14 Long createWorkshop(@Valid MesMdWorkshopSaveReqVO createReqVO); 19 Long createWorkshop(@Valid MesMdWorkshopSaveReqVO createReqVO);
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/workstation/MesMdWorkshopServiceImpl.java
@@ -19,7 +19,11 @@ import java.util.List; @@ -19,7 +19,11 @@ import java.util.List;
19 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; 19 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
20 import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*; 20 import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*;
21 21
22 -// TODO @AI:注释; 22 +/**
  23 + * MES 车间 Service 实现类
  24 + *
  25 + * @author 芋道源码
  26 + */
23 @Service 27 @Service
24 @Validated 28 @Validated
25 public class MesMdWorkshopServiceImpl implements MesMdWorkshopService { 29 public class MesMdWorkshopServiceImpl implements MesMdWorkshopService {
@@ -33,9 +37,12 @@ public class MesMdWorkshopServiceImpl implements MesMdWorkshopService { @@ -33,9 +37,12 @@ public class MesMdWorkshopServiceImpl implements MesMdWorkshopService {
33 37
34 @Override 38 @Override
35 public Long createWorkshop(MesMdWorkshopSaveReqVO createReqVO) { 39 public Long createWorkshop(MesMdWorkshopSaveReqVO createReqVO) {
  40 + // TODO @AI:注释
36 validateWorkshopCodeUnique(null, createReqVO.getCode()); 41 validateWorkshopCodeUnique(null, createReqVO.getCode());
  42 + // TODO @AI:注释
37 validateWorkshopNameUnique(null, createReqVO.getName()); 43 validateWorkshopNameUnique(null, createReqVO.getName());
38 44
  45 + // 插入
39 MesMdWorkshopDO workshop = BeanUtils.toBean(createReqVO, MesMdWorkshopDO.class); 46 MesMdWorkshopDO workshop = BeanUtils.toBean(createReqVO, MesMdWorkshopDO.class);
40 workshopMapper.insert(workshop); 47 workshopMapper.insert(workshop);
41 return workshop.getId(); 48 return workshop.getId();
@@ -43,22 +50,29 @@ public class MesMdWorkshopServiceImpl implements MesMdWorkshopService { @@ -43,22 +50,29 @@ public class MesMdWorkshopServiceImpl implements MesMdWorkshopService {
43 50
44 @Override 51 @Override
45 public void updateWorkshop(MesMdWorkshopSaveReqVO updateReqVO) { 52 public void updateWorkshop(MesMdWorkshopSaveReqVO updateReqVO) {
  53 + // TODO @AI:注释
46 validateWorkshopExists(updateReqVO.getId()); 54 validateWorkshopExists(updateReqVO.getId());
  55 + // TODO @AI:注释
47 validateWorkshopCodeUnique(updateReqVO.getId(), updateReqVO.getCode()); 56 validateWorkshopCodeUnique(updateReqVO.getId(), updateReqVO.getCode());
  57 + // TODO @AI:注释
48 validateWorkshopNameUnique(updateReqVO.getId(), updateReqVO.getName()); 58 validateWorkshopNameUnique(updateReqVO.getId(), updateReqVO.getName());
49 59
  60 + // 更新
50 MesMdWorkshopDO updateObj = BeanUtils.toBean(updateReqVO, MesMdWorkshopDO.class); 61 MesMdWorkshopDO updateObj = BeanUtils.toBean(updateReqVO, MesMdWorkshopDO.class);
51 workshopMapper.updateById(updateObj); 62 workshopMapper.updateById(updateObj);
52 } 63 }
53 64
54 @Override 65 @Override
55 public void deleteWorkshop(Long id) { 66 public void deleteWorkshop(Long id) {
  67 + // TODO @AI:注释
56 validateWorkshopExists(id); 68 validateWorkshopExists(id);
57 // 校验车间下是否存在工位 69 // 校验车间下是否存在工位
58 Long count = workstationMapper.selectCount(MesMdWorkstationDO::getWorkshopId, id); 70 Long count = workstationMapper.selectCount(MesMdWorkstationDO::getWorkshopId, id);
59 if (count > 0) { 71 if (count > 0) {
60 throw exception(MD_WORKSHOP_HAS_WORKSTATION); 72 throw exception(MD_WORKSHOP_HAS_WORKSTATION);
61 } 73 }
  74 +
  75 + // 删除
62 workshopMapper.deleteById(id); 76 workshopMapper.deleteById(id);
63 } 77 }
64 78
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/workstation/MesMdWorkstationMachineService.java
@@ -6,9 +6,15 @@ import jakarta.validation.Valid; @@ -6,9 +6,15 @@ import jakarta.validation.Valid;
6 6
7 import java.util.List; 7 import java.util.List;
8 8
9 -// TODO @AI:注释; 9 +/**
  10 + * MES 工位设备 Service 接口
  11 + *
  12 + * @author 芋道源码
  13 + */
10 public interface MesMdWorkstationMachineService { 14 public interface MesMdWorkstationMachineService {
11 15
  16 +// TODO @AI:方法注释?
  17 +
12 Long createWorkstationMachine(@Valid MesMdWorkstationMachineSaveReqVO createReqVO); 18 Long createWorkstationMachine(@Valid MesMdWorkstationMachineSaveReqVO createReqVO);
13 19
14 void deleteWorkstationMachine(Long id); 20 void deleteWorkstationMachine(Long id);
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/workstation/MesMdWorkstationMachineServiceImpl.java
@@ -13,7 +13,11 @@ import java.util.List; @@ -13,7 +13,11 @@ import java.util.List;
13 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; 13 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
14 import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*; 14 import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*;
15 15
16 -// TODO @AI:注释; 16 +/**
  17 + * MES 工位设备 Service 实现类
  18 + *
  19 + * @author 芋道源码
  20 + */
17 @Service 21 @Service
18 @Validated 22 @Validated
19 public class MesMdWorkstationMachineServiceImpl implements MesMdWorkstationMachineService { 23 public class MesMdWorkstationMachineServiceImpl implements MesMdWorkstationMachineService {
@@ -29,6 +33,7 @@ public class MesMdWorkstationMachineServiceImpl implements MesMdWorkstationMachi @@ -29,6 +33,7 @@ public class MesMdWorkstationMachineServiceImpl implements MesMdWorkstationMachi
29 throw exception(MD_WORKSTATION_MACHINE_EXISTS); 33 throw exception(MD_WORKSTATION_MACHINE_EXISTS);
30 } 34 }
31 35
  36 + // 插入
32 MesMdWorkstationMachineDO machine = BeanUtils.toBean(createReqVO, MesMdWorkstationMachineDO.class); 37 MesMdWorkstationMachineDO machine = BeanUtils.toBean(createReqVO, MesMdWorkstationMachineDO.class);
33 workstationMachineMapper.insert(machine); 38 workstationMachineMapper.insert(machine);
34 return machine.getId(); 39 return machine.getId();
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/workstation/MesMdWorkstationService.java
@@ -8,9 +8,15 @@ import jakarta.validation.Valid; @@ -8,9 +8,15 @@ import jakarta.validation.Valid;
8 8
9 import java.util.List; 9 import java.util.List;
10 10
11 -// TODO @AI:注释; 11 +/**
  12 + * MES 工位 Service 接口
  13 + *
  14 + * @author 芋道源码
  15 + */
12 public interface MesMdWorkstationService { 16 public interface MesMdWorkstationService {
13 17
  18 + // TODO @AI:方法注释?
  19 +
14 Long createWorkstation(@Valid MesMdWorkstationSaveReqVO createReqVO); 20 Long createWorkstation(@Valid MesMdWorkstationSaveReqVO createReqVO);
15 21
16 void updateWorkstation(@Valid MesMdWorkstationSaveReqVO updateReqVO); 22 void updateWorkstation(@Valid MesMdWorkstationSaveReqVO updateReqVO);
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/workstation/MesMdWorkstationServiceImpl.java
@@ -20,7 +20,11 @@ import java.util.List; @@ -20,7 +20,11 @@ import java.util.List;
20 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; 20 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
21 import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*; 21 import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*;
22 22
23 -// TODO @AI:注释; 23 +/**
  24 + * MES 工位 Service 实现类
  25 + *
  26 + * @author 芋道源码
  27 + */
24 @Service 28 @Service
25 @Validated 29 @Validated
26 public class MesMdWorkstationServiceImpl implements MesMdWorkstationService { 30 public class MesMdWorkstationServiceImpl implements MesMdWorkstationService {
@@ -42,11 +46,14 @@ public class MesMdWorkstationServiceImpl implements MesMdWorkstationService { @@ -42,11 +46,14 @@ public class MesMdWorkstationServiceImpl implements MesMdWorkstationService {
42 46
43 @Override 47 @Override
44 public Long createWorkstation(MesMdWorkstationSaveReqVO createReqVO) { 48 public Long createWorkstation(MesMdWorkstationSaveReqVO createReqVO) {
  49 + // TODO @AI:注释
45 validateWorkstationCodeUnique(null, createReqVO.getCode()); 50 validateWorkstationCodeUnique(null, createReqVO.getCode());
  51 + // TODO @AI:注释
46 validateWorkstationNameUnique(null, createReqVO.getName()); 52 validateWorkstationNameUnique(null, createReqVO.getName());
47 // 校验车间存在 53 // 校验车间存在
48 workshopService.getWorkshop(createReqVO.getWorkshopId()); // validateWorkshopExists via getWorkshop 54 workshopService.getWorkshop(createReqVO.getWorkshopId()); // validateWorkshopExists via getWorkshop
49 55
  56 + // 插入
50 MesMdWorkstationDO workstation = BeanUtils.toBean(createReqVO, MesMdWorkstationDO.class); 57 MesMdWorkstationDO workstation = BeanUtils.toBean(createReqVO, MesMdWorkstationDO.class);
51 workstationMapper.insert(workstation); 58 workstationMapper.insert(workstation);
52 return workstation.getId(); 59 return workstation.getId();
@@ -54,12 +61,16 @@ public class MesMdWorkstationServiceImpl implements MesMdWorkstationService { @@ -54,12 +61,16 @@ public class MesMdWorkstationServiceImpl implements MesMdWorkstationService {
54 61
55 @Override 62 @Override
56 public void updateWorkstation(MesMdWorkstationSaveReqVO updateReqVO) { 63 public void updateWorkstation(MesMdWorkstationSaveReqVO updateReqVO) {
  64 + // TODO @AI:注释
57 validateWorkstationExists(updateReqVO.getId()); 65 validateWorkstationExists(updateReqVO.getId());
  66 + // TODO @AI:注释
58 validateWorkstationCodeUnique(updateReqVO.getId(), updateReqVO.getCode()); 67 validateWorkstationCodeUnique(updateReqVO.getId(), updateReqVO.getCode());
  68 + // TODO @AI:注释
59 validateWorkstationNameUnique(updateReqVO.getId(), updateReqVO.getName()); 69 validateWorkstationNameUnique(updateReqVO.getId(), updateReqVO.getName());
60 // 校验车间存在 70 // 校验车间存在
61 workshopService.getWorkshop(updateReqVO.getWorkshopId()); 71 workshopService.getWorkshop(updateReqVO.getWorkshopId());
62 72
  73 + // 更新
63 MesMdWorkstationDO updateObj = BeanUtils.toBean(updateReqVO, MesMdWorkstationDO.class); 74 MesMdWorkstationDO updateObj = BeanUtils.toBean(updateReqVO, MesMdWorkstationDO.class);
64 workstationMapper.updateById(updateObj); 75 workstationMapper.updateById(updateObj);
65 } 76 }
@@ -67,7 +78,9 @@ public class MesMdWorkstationServiceImpl implements MesMdWorkstationService { @@ -67,7 +78,9 @@ public class MesMdWorkstationServiceImpl implements MesMdWorkstationService {
67 @Override 78 @Override
68 @Transactional(rollbackFor = Exception.class) 79 @Transactional(rollbackFor = Exception.class)
69 public void deleteWorkstation(Long id) { 80 public void deleteWorkstation(Long id) {
  81 + // TODO @AI:注释
70 validateWorkstationExists(id); 82 validateWorkstationExists(id);
  83 +
71 // 级联删除子资源 84 // 级联删除子资源
72 workstationMachineMapper.deleteByWorkstationId(id); 85 workstationMachineMapper.deleteByWorkstationId(id);
73 workstationToolMapper.deleteByWorkstationId(id); 86 workstationToolMapper.deleteByWorkstationId(id);
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/workstation/MesMdWorkstationToolService.java
@@ -6,9 +6,14 @@ import jakarta.validation.Valid; @@ -6,9 +6,14 @@ import jakarta.validation.Valid;
6 6
7 import java.util.List; 7 import java.util.List;
8 8
9 -// TODO @AI:注释; 9 +/**
  10 + * MES 工位工具 Service 接口
  11 + *
  12 + * @author 芋道源码
  13 + */
10 public interface MesMdWorkstationToolService { 14 public interface MesMdWorkstationToolService {
11 15
  16 + // TODO @AI:方法注释?
12 Long createWorkstationTool(@Valid MesMdWorkstationToolSaveReqVO createReqVO); 17 Long createWorkstationTool(@Valid MesMdWorkstationToolSaveReqVO createReqVO);
13 18
14 void updateWorkstationTool(@Valid MesMdWorkstationToolSaveReqVO updateReqVO); 19 void updateWorkstationTool(@Valid MesMdWorkstationToolSaveReqVO updateReqVO);
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/workstation/MesMdWorkstationToolServiceImpl.java
@@ -13,7 +13,11 @@ import java.util.List; @@ -13,7 +13,11 @@ import java.util.List;
13 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; 13 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
14 import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*; 14 import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*;
15 15
16 -// TODO @AI:注释; 16 +/**
  17 + * MES 工位工具 Service 实现类
  18 + *
  19 + * @author 芋道源码
  20 + */
17 @Service 21 @Service
18 @Validated 22 @Validated
19 public class MesMdWorkstationToolServiceImpl implements MesMdWorkstationToolService { 23 public class MesMdWorkstationToolServiceImpl implements MesMdWorkstationToolService {
@@ -30,6 +34,7 @@ public class MesMdWorkstationToolServiceImpl implements MesMdWorkstationToolServ @@ -30,6 +34,7 @@ public class MesMdWorkstationToolServiceImpl implements MesMdWorkstationToolServ
30 throw exception(MD_WORKSTATION_TOOL_TYPE_EXISTS); 34 throw exception(MD_WORKSTATION_TOOL_TYPE_EXISTS);
31 } 35 }
32 36
  37 + // 插入
33 MesMdWorkstationToolDO tool = BeanUtils.toBean(createReqVO, MesMdWorkstationToolDO.class); 38 MesMdWorkstationToolDO tool = BeanUtils.toBean(createReqVO, MesMdWorkstationToolDO.class);
34 workstationToolMapper.insert(tool); 39 workstationToolMapper.insert(tool);
35 return tool.getId(); 40 return tool.getId();
@@ -37,18 +42,25 @@ public class MesMdWorkstationToolServiceImpl implements MesMdWorkstationToolServ @@ -37,18 +42,25 @@ public class MesMdWorkstationToolServiceImpl implements MesMdWorkstationToolServ
37 42
38 @Override 43 @Override
39 public void updateWorkstationTool(MesMdWorkstationToolSaveReqVO updateReqVO) { 44 public void updateWorkstationTool(MesMdWorkstationToolSaveReqVO updateReqVO) {
  45 + // 校验存在
  46 + // TODO @AI:要不要抽个方法,参考别的模块
40 if (workstationToolMapper.selectById(updateReqVO.getId()) == null) { 47 if (workstationToolMapper.selectById(updateReqVO.getId()) == null) {
41 throw exception(MD_WORKSTATION_TOOL_NOT_EXISTS); 48 throw exception(MD_WORKSTATION_TOOL_NOT_EXISTS);
42 } 49 }
  50 +
  51 + // 更新
43 MesMdWorkstationToolDO updateObj = BeanUtils.toBean(updateReqVO, MesMdWorkstationToolDO.class); 52 MesMdWorkstationToolDO updateObj = BeanUtils.toBean(updateReqVO, MesMdWorkstationToolDO.class);
44 workstationToolMapper.updateById(updateObj); 53 workstationToolMapper.updateById(updateObj);
45 } 54 }
46 55
47 @Override 56 @Override
48 public void deleteWorkstationTool(Long id) { 57 public void deleteWorkstationTool(Long id) {
  58 + // 校验存在
49 if (workstationToolMapper.selectById(id) == null) { 59 if (workstationToolMapper.selectById(id) == null) {
50 throw exception(MD_WORKSTATION_TOOL_NOT_EXISTS); 60 throw exception(MD_WORKSTATION_TOOL_NOT_EXISTS);
51 } 61 }
  62 +
  63 + // 删除
52 workstationToolMapper.deleteById(id); 64 workstationToolMapper.deleteById(id);
53 } 65 }
54 66
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/workstation/MesMdWorkstationWorkerService.java
@@ -6,9 +6,15 @@ import jakarta.validation.Valid; @@ -6,9 +6,15 @@ import jakarta.validation.Valid;
6 6
7 import java.util.List; 7 import java.util.List;
8 8
9 -// TODO @AI:注释; 9 +/**
  10 + * MES 工位人员 Service 接口
  11 + *
  12 + * @author 芋道源码
  13 + */
10 public interface MesMdWorkstationWorkerService { 14 public interface MesMdWorkstationWorkerService {
11 15
  16 + // TODO @AI:方法注释;
  17 +
12 Long createWorkstationWorker(@Valid MesMdWorkstationWorkerSaveReqVO createReqVO); 18 Long createWorkstationWorker(@Valid MesMdWorkstationWorkerSaveReqVO createReqVO);
13 19
14 void updateWorkstationWorker(@Valid MesMdWorkstationWorkerSaveReqVO updateReqVO); 20 void updateWorkstationWorker(@Valid MesMdWorkstationWorkerSaveReqVO updateReqVO);
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/workstation/MesMdWorkstationWorkerServiceImpl.java
@@ -13,7 +13,11 @@ import java.util.List; @@ -13,7 +13,11 @@ import java.util.List;
13 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; 13 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
14 import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*; 14 import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*;
15 15
16 -// TODO @AI:注释; 16 +/**
  17 + * MES 工位人员 Service 实现类
  18 + *
  19 + * @author 芋道源码
  20 + */
17 @Service 21 @Service
18 @Validated 22 @Validated
19 public class MesMdWorkstationWorkerServiceImpl implements MesMdWorkstationWorkerService { 23 public class MesMdWorkstationWorkerServiceImpl implements MesMdWorkstationWorkerService {
@@ -30,6 +34,7 @@ public class MesMdWorkstationWorkerServiceImpl implements MesMdWorkstationWorker @@ -30,6 +34,7 @@ public class MesMdWorkstationWorkerServiceImpl implements MesMdWorkstationWorker
30 throw exception(MD_WORKSTATION_WORKER_POST_EXISTS); 34 throw exception(MD_WORKSTATION_WORKER_POST_EXISTS);
31 } 35 }
32 36
  37 + // 插入
33 MesMdWorkstationWorkerDO worker = BeanUtils.toBean(createReqVO, MesMdWorkstationWorkerDO.class); 38 MesMdWorkstationWorkerDO worker = BeanUtils.toBean(createReqVO, MesMdWorkstationWorkerDO.class);
34 workstationWorkerMapper.insert(worker); 39 workstationWorkerMapper.insert(worker);
35 return worker.getId(); 40 return worker.getId();
@@ -37,18 +42,24 @@ public class MesMdWorkstationWorkerServiceImpl implements MesMdWorkstationWorker @@ -37,18 +42,24 @@ public class MesMdWorkstationWorkerServiceImpl implements MesMdWorkstationWorker
37 42
38 @Override 43 @Override
39 public void updateWorkstationWorker(MesMdWorkstationWorkerSaveReqVO updateReqVO) { 44 public void updateWorkstationWorker(MesMdWorkstationWorkerSaveReqVO updateReqVO) {
  45 + // TODO @AI:抽个方法,参考别的模块
40 if (workstationWorkerMapper.selectById(updateReqVO.getId()) == null) { 46 if (workstationWorkerMapper.selectById(updateReqVO.getId()) == null) {
41 throw exception(MD_WORKSTATION_WORKER_NOT_EXISTS); 47 throw exception(MD_WORKSTATION_WORKER_NOT_EXISTS);
42 } 48 }
  49 +
  50 + // 更新
43 MesMdWorkstationWorkerDO updateObj = BeanUtils.toBean(updateReqVO, MesMdWorkstationWorkerDO.class); 51 MesMdWorkstationWorkerDO updateObj = BeanUtils.toBean(updateReqVO, MesMdWorkstationWorkerDO.class);
44 workstationWorkerMapper.updateById(updateObj); 52 workstationWorkerMapper.updateById(updateObj);
45 } 53 }
46 54
47 @Override 55 @Override
48 public void deleteWorkstationWorker(Long id) { 56 public void deleteWorkstationWorker(Long id) {
  57 + // TODO @AI:抽个方法,参考别的模块
49 if (workstationWorkerMapper.selectById(id) == null) { 58 if (workstationWorkerMapper.selectById(id) == null) {
50 throw exception(MD_WORKSTATION_WORKER_NOT_EXISTS); 59 throw exception(MD_WORKSTATION_WORKER_NOT_EXISTS);
51 } 60 }
  61 +
  62 + // 删除
52 workstationWorkerMapper.deleteById(id); 63 workstationWorkerMapper.deleteById(id);
53 } 64 }
54 65