diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/salesnotice/vo/line/MesWmSalesNoticeLineRespVO.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/salesnotice/vo/line/MesWmSalesNoticeLineRespVO.java index 9653ad1..be8b280 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/salesnotice/vo/line/MesWmSalesNoticeLineRespVO.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/salesnotice/vo/line/MesWmSalesNoticeLineRespVO.java @@ -19,9 +19,6 @@ public class MesWmSalesNoticeLineRespVO { @Schema(description = "物料编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") private Long itemId; - @Schema(description = "库存物资记录编号", example = "1") - private Long materialStockId; - @Schema(description = "物料编码", example = "M001") private String itemCode; diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/salesnotice/vo/line/MesWmSalesNoticeLineSaveReqVO.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/salesnotice/vo/line/MesWmSalesNoticeLineSaveReqVO.java index d7878ca..d6ba341 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/salesnotice/vo/line/MesWmSalesNoticeLineSaveReqVO.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/salesnotice/vo/line/MesWmSalesNoticeLineSaveReqVO.java @@ -22,9 +22,6 @@ public class MesWmSalesNoticeLineSaveReqVO { @NotNull(message = "物料编号不能为空") private Long itemId; - @Schema(description = "库存物资记录编号", example = "1") - private Long materialStockId; - @Schema(description = "批次编号", example = "1") private Long batchId; diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/wm/salesnotice/MesWmSalesNoticeLineDO.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/wm/salesnotice/MesWmSalesNoticeLineDO.java index 905dab4..7b033c1 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/wm/salesnotice/MesWmSalesNoticeLineDO.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/wm/salesnotice/MesWmSalesNoticeLineDO.java @@ -2,6 +2,7 @@ package cn.iocoder.yudao.module.mes.dal.dataobject.wm.salesnotice; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; import cn.iocoder.yudao.module.mes.dal.dataobject.md.item.MesMdItemDO; +import cn.iocoder.yudao.module.mes.dal.dataobject.wm.batch.MesWmBatchDO; import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; @@ -40,17 +41,15 @@ public class MesWmSalesNoticeLineDO extends BaseDO { */ private Long itemId; /** - * 库存物资记录编号 - * - * 关联 {@link cn.iocoder.yudao.module.mes.dal.dataobject.wm.materialstock.MesWmMaterialStockDO#getId()} - */ - private Long materialStockId; - /** * 批次编号 + * + * 关联 {@link MesWmBatchDO#getId()} */ private Long batchId; /** * 批次号 + * + * 关联 {@link MesWmBatchDO#getCode()} */ private String batchCode; /** diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/wm/MesWmSalesNoticeStatusEnum.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/wm/MesWmSalesNoticeStatusEnum.java index 7b1dc5b..d37a679 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/wm/MesWmSalesNoticeStatusEnum.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/wm/MesWmSalesNoticeStatusEnum.java @@ -29,12 +29,8 @@ public enum MesWmSalesNoticeStatusEnum implements ArrayValuable { * * 对应方法:{@link MesWmSalesNoticeService#submitSalesNotice(Long)} */ - APPROVED(MesOrderStatusConstants.APPROVED, "待出库"), - /** - * 已完成 - */ - // TODO @芋艿:这个待实现; - FINISHED(MesOrderStatusConstants.FINISHED, "已完成"); + APPROVED(MesOrderStatusConstants.APPROVED, "待出库"); + // TODO @芋艿:【对齐】暂时无后续流程,看看后续要怎么支持下。 public static final Integer[] ARRAYS = Arrays.stream(values()).map(MesWmSalesNoticeStatusEnum::getStatus).toArray(Integer[]::new); diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/salesnotice/MesWmSalesNoticeLineServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/salesnotice/MesWmSalesNoticeLineServiceImpl.java index 5f69518..ca85752 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/salesnotice/MesWmSalesNoticeLineServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/salesnotice/MesWmSalesNoticeLineServiceImpl.java @@ -1,13 +1,16 @@ package cn.iocoder.yudao.module.mes.service.wm.salesnotice; import cn.hutool.core.util.ObjUtil; +import cn.hutool.core.util.StrUtil; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.module.mes.controller.admin.wm.salesnotice.vo.line.MesWmSalesNoticeLinePageReqVO; import cn.iocoder.yudao.module.mes.controller.admin.wm.salesnotice.vo.line.MesWmSalesNoticeLineSaveReqVO; +import cn.iocoder.yudao.module.mes.dal.dataobject.wm.batch.MesWmBatchDO; import cn.iocoder.yudao.module.mes.dal.dataobject.wm.salesnotice.MesWmSalesNoticeDO; import cn.iocoder.yudao.module.mes.dal.dataobject.wm.salesnotice.MesWmSalesNoticeLineDO; import cn.iocoder.yudao.module.mes.dal.mysql.wm.salesnotice.MesWmSalesNoticeLineMapper; +import cn.iocoder.yudao.module.mes.service.wm.batch.MesWmBatchService; import jakarta.annotation.Resource; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; @@ -33,6 +36,9 @@ public class MesWmSalesNoticeLineServiceImpl implements MesWmSalesNoticeLineServ @Lazy private MesWmSalesNoticeService salesNoticeService; + @Resource + private MesWmBatchService batchService; + @Override public Long createSalesNoticeLine(MesWmSalesNoticeLineSaveReqVO createReqVO) { // 校验父单据存在且为草稿状态 @@ -40,6 +46,7 @@ public class MesWmSalesNoticeLineServiceImpl implements MesWmSalesNoticeLineServ // 插入 MesWmSalesNoticeLineDO line = BeanUtils.toBean(createReqVO, MesWmSalesNoticeLineDO.class); + fillBatchId(line); salesNoticeLineMapper.insert(line); return line.getId(); } @@ -53,6 +60,7 @@ public class MesWmSalesNoticeLineServiceImpl implements MesWmSalesNoticeLineServ // 更新 MesWmSalesNoticeLineDO updateObj = BeanUtils.toBean(updateReqVO, MesWmSalesNoticeLineDO.class); + fillBatchId(updateObj); salesNoticeLineMapper.updateById(updateObj); } @@ -108,4 +116,17 @@ public class MesWmSalesNoticeLineServiceImpl implements MesWmSalesNoticeLineServ } } + /** + * 根据 batchCode 回填 batchId + */ + private void fillBatchId(MesWmSalesNoticeLineDO line) { + if (StrUtil.isEmpty(line.getBatchCode())) { + return; + } + MesWmBatchDO batch = batchService.getBatchByCode(line.getBatchCode()); + if (batch != null) { + line.setBatchId(batch.getId()); + } + } + }