Commit 7df27df39b3cc24562f5486811b0135398dda65c
1 parent
49d14482
✨ feat(mes): 新增批次编码字段及外协工单编码处理逻辑
Showing
5 changed files
with
26 additions
and
2 deletions
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/outsourcereceipt/MesWmOutsourceReceiptController.java
| ... | ... | @@ -12,8 +12,10 @@ import cn.iocoder.yudao.module.mes.controller.admin.wm.outsourcereceipt.vo.MesWm |
| 12 | 12 | import cn.iocoder.yudao.module.mes.controller.admin.wm.outsourcereceipt.vo.MesWmOutsourceReceiptRespVO; |
| 13 | 13 | import cn.iocoder.yudao.module.mes.controller.admin.wm.outsourcereceipt.vo.MesWmOutsourceReceiptSaveReqVO; |
| 14 | 14 | import cn.iocoder.yudao.module.mes.dal.dataobject.md.vendor.MesMdVendorDO; |
| 15 | +import cn.iocoder.yudao.module.mes.dal.dataobject.pro.workorder.MesProWorkOrderDO; | |
| 15 | 16 | import cn.iocoder.yudao.module.mes.dal.dataobject.wm.outsourcereceipt.MesWmOutsourceReceiptDO; |
| 16 | 17 | import cn.iocoder.yudao.module.mes.service.md.vendor.MesMdVendorService; |
| 18 | +import cn.iocoder.yudao.module.mes.service.pro.workorder.MesProWorkOrderService; | |
| 17 | 19 | import cn.iocoder.yudao.module.mes.service.wm.outsourcereceipt.MesWmOutsourceReceiptService; |
| 18 | 20 | import io.swagger.v3.oas.annotations.Operation; |
| 19 | 21 | import io.swagger.v3.oas.annotations.Parameter; |
| ... | ... | @@ -46,6 +48,9 @@ public class MesWmOutsourceReceiptController { |
| 46 | 48 | @Resource |
| 47 | 49 | private MesMdVendorService vendorService; |
| 48 | 50 | |
| 51 | + @Resource | |
| 52 | + private MesProWorkOrderService workOrderService; | |
| 53 | + | |
| 49 | 54 | @PostMapping("/create") |
| 50 | 55 | @Operation(summary = "创建外协入库单") |
| 51 | 56 | @PreAuthorize("@ss.hasPermission('mes:wm-outsource-receipt:create')") |
| ... | ... | @@ -148,10 +153,14 @@ public class MesWmOutsourceReceiptController { |
| 148 | 153 | // 1. 获得关联数据 |
| 149 | 154 | Map<Long, MesMdVendorDO> vendorMap = vendorService.getVendorMap( |
| 150 | 155 | convertSet(list, MesWmOutsourceReceiptDO::getVendorId)); |
| 156 | + Map<Long, MesProWorkOrderDO> workOrderMap = workOrderService.getWorkOrderMap( | |
| 157 | + convertSet(list, MesWmOutsourceReceiptDO::getWorkOrderId)); | |
| 151 | 158 | // 2. 构建结果 |
| 152 | 159 | return BeanUtils.toBean(list, MesWmOutsourceReceiptRespVO.class, vo -> { |
| 153 | 160 | MapUtils.findAndThen(vendorMap, vo.getVendorId(), |
| 154 | 161 | vendor -> vo.setVendorName(vendor.getName())); |
| 162 | + MapUtils.findAndThen(workOrderMap, vo.getWorkOrderId(), | |
| 163 | + workOrder -> vo.setWorkOrderCode(workOrder.getCode())); | |
| 155 | 164 | }); |
| 156 | 165 | } |
| 157 | 166 | ... | ... |
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/outsourcereceipt/vo/MesWmOutsourceReceiptRespVO.java
| ... | ... | @@ -25,11 +25,11 @@ public class MesWmOutsourceReceiptRespVO { |
| 25 | 25 | private String name; |
| 26 | 26 | |
| 27 | 27 | @Schema(description = "外协工单编号", example = "1") |
| 28 | - private Long workorderId; | |
| 28 | + private Long workOrderId; | |
| 29 | 29 | |
| 30 | 30 | @Schema(description = "外协工单编码", example = "WO20260301") |
| 31 | 31 | @ExcelProperty("外协工单") |
| 32 | - private String workorderCode; | |
| 32 | + private String workOrderCode; | |
| 33 | 33 | |
| 34 | 34 | @Schema(description = "供应商编号", example = "1") |
| 35 | 35 | private Long vendorId; | ... | ... |
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/outsourcereceipt/vo/line/MesWmOutsourceReceiptLineRespVO.java
| ... | ... | @@ -37,6 +37,9 @@ public class MesWmOutsourceReceiptLineRespVO { |
| 37 | 37 | @Schema(description = "批次编号", example = "1") |
| 38 | 38 | private Long batchId; |
| 39 | 39 | |
| 40 | + @Schema(description = "批次编码", example = "BATCH20260301001") | |
| 41 | + private String batchCode; | |
| 42 | + | |
| 40 | 43 | @Schema(description = "生产日期") |
| 41 | 44 | private LocalDateTime productionDate; |
| 42 | 45 | ... | ... |
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/outsourcereceipt/MesWmOutsourceReceiptDetailService.java
| ... | ... | @@ -63,4 +63,11 @@ public interface MesWmOutsourceReceiptDetailService { |
| 63 | 63 | */ |
| 64 | 64 | void deleteOutsourceReceiptDetailByReceiptId(Long receiptId); |
| 65 | 65 | |
| 66 | + /** | |
| 67 | + * 删除委外收货明细(根据行编号) | |
| 68 | + * | |
| 69 | + * @param lineId 行编号 | |
| 70 | + */ | |
| 71 | + void deleteOutsourceReceiptDetailByLineId(Long lineId); | |
| 72 | + | |
| 66 | 73 | } | ... | ... |
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/outsourcereceipt/MesWmOutsourceReceiptDetailServiceImpl.java
| ... | ... | @@ -110,6 +110,11 @@ public class MesWmOutsourceReceiptDetailServiceImpl implements MesWmOutsourceRec |
| 110 | 110 | detailMapper.deleteByReceiptId(receiptId); |
| 111 | 111 | } |
| 112 | 112 | |
| 113 | + @Override | |
| 114 | + public void deleteOutsourceReceiptDetailByLineId(Long lineId) { | |
| 115 | + detailMapper.deleteByLineId(lineId); | |
| 116 | + } | |
| 117 | + | |
| 113 | 118 | private void validateOutsourceReceiptDetailExists(Long id) { |
| 114 | 119 | if (detailMapper.selectById(id) == null) { |
| 115 | 120 | throw exception(WM_OUTSOURCE_RECEIPT_DETAIL_NOT_EXISTS); | ... | ... |