diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/qc/ipqc/MesQcIpqcDO.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/qc/ipqc/MesQcIpqcDO.java index 1bc91fd..6bbc670 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/qc/ipqc/MesQcIpqcDO.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/qc/ipqc/MesQcIpqcDO.java @@ -5,7 +5,7 @@ import cn.iocoder.yudao.module.mes.dal.dataobject.md.item.MesMdItemDO; import cn.iocoder.yudao.module.mes.dal.dataobject.md.workstation.MesMdWorkstationDO; import cn.iocoder.yudao.module.mes.dal.dataobject.pro.workorder.MesProWorkOrderDO; import cn.iocoder.yudao.module.mes.dal.dataobject.qc.template.MesQcTemplateDO; -import cn.iocoder.yudao.module.mes.enums.MesOrderStatusEnum; +import cn.iocoder.yudao.module.mes.enums.qc.MesQcStatusEnum; import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; @@ -181,8 +181,7 @@ public class MesQcIpqcDO extends BaseDO { /** * 状态 * - * 枚举 {@link MesOrderStatusEnum} - * 当前使用:{@link MesOrderStatusEnum#DRAFT}、{@link MesOrderStatusEnum#FINISHED} + * 枚举 {@link MesQcStatusEnum} */ private Integer status; /** diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/qc/iqc/MesQcIqcDO.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/qc/iqc/MesQcIqcDO.java index 3f428e3..379d937 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/qc/iqc/MesQcIqcDO.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/qc/iqc/MesQcIqcDO.java @@ -6,8 +6,8 @@ import cn.iocoder.yudao.module.mes.dal.dataobject.md.vendor.MesMdVendorDO; import cn.iocoder.yudao.module.mes.dal.dataobject.qc.template.MesQcTemplateDO; import cn.iocoder.yudao.module.mes.dal.dataobject.wm.arrivalnotice.MesWmArrivalNoticeDO; import cn.iocoder.yudao.module.mes.dal.dataobject.wm.arrivalnotice.MesWmArrivalNoticeLineDO; -import cn.iocoder.yudao.module.mes.enums.MesOrderStatusEnum; import cn.iocoder.yudao.module.mes.enums.qc.MesQcSourceDocTypeEnum; +import cn.iocoder.yudao.module.mes.enums.qc.MesQcStatusEnum; import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; @@ -167,8 +167,7 @@ public class MesQcIqcDO extends BaseDO { /** * 状态 * - * 枚举 {@link MesOrderStatusEnum} - * 当前使用:{@link MesOrderStatusEnum#DRAFT}、{@link MesOrderStatusEnum#FINISHED} + * 枚举 {@link MesQcStatusEnum} */ private Integer status; /** diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/qc/oqc/MesQcOqcDO.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/qc/oqc/MesQcOqcDO.java index b1f8253..e589ef2 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/qc/oqc/MesQcOqcDO.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/qc/oqc/MesQcOqcDO.java @@ -159,7 +159,7 @@ public class MesQcOqcDO extends BaseDO { /** * 状态 * - * 枚举 {@link cn.iocoder.yudao.module.mes.enums.qc.MesQcOqcStatusEnum} + * 枚举 {@link cn.iocoder.yudao.module.mes.enums.qc.MesQcStatusEnum} */ private Integer status; /** diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/qc/rqc/MesQcRqcDO.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/qc/rqc/MesQcRqcDO.java index a305546..d3c61bf 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/qc/rqc/MesQcRqcDO.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/qc/rqc/MesQcRqcDO.java @@ -3,7 +3,7 @@ package cn.iocoder.yudao.module.mes.dal.dataobject.qc.rqc; 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.qc.template.MesQcTemplateDO; -import cn.iocoder.yudao.module.mes.enums.MesOrderStatusEnum; +import cn.iocoder.yudao.module.mes.enums.qc.MesQcStatusEnum; import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; @@ -120,8 +120,7 @@ public class MesQcRqcDO extends BaseDO { /** * 状态 * - * 枚举 {@link MesOrderStatusEnum} - * 当前使用:{@link MesOrderStatusEnum#DRAFT}、{@link MesOrderStatusEnum#FINISHED} + * 枚举 {@link MesQcStatusEnum} */ private Integer status; /** diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/itemreceipt/MesWmItemReceiptMapper.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/itemreceipt/MesWmItemReceiptMapper.java index a5f171e..49dd976 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/itemreceipt/MesWmItemReceiptMapper.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/itemreceipt/MesWmItemReceiptMapper.java @@ -19,7 +19,6 @@ public interface MesWmItemReceiptMapper extends BaseMapperX .likeIfPresent(MesWmItemReceiptDO::getName, reqVO.getName()) .eqIfPresent(MesWmItemReceiptDO::getVendorId, reqVO.getVendorId()) .betweenIfPresent(MesWmItemReceiptDO::getReceiptDate, reqVO.getReceiptDate()) - .eqIfPresent(MesWmItemReceiptDO::getStatus, reqVO.getStatus()) .orderByDesc(MesWmItemReceiptDO::getId)); } diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/MesOrderStatusConstants.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/MesOrderStatusConstants.java new file mode 100644 index 0000000..2152f56 --- /dev/null +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/MesOrderStatusConstants.java @@ -0,0 +1,31 @@ +package cn.iocoder.yudao.module.mes.enums; + +/** + * MES 单据状态常量 + * + * 集中管理各模块单据状态的编号,作为状态值的中央注册中心。 + * 各枚举类引用此处常量,避免硬编码数字。 + * + * @author 芋道源码 + */ +public final class MesOrderStatusConstants { + + /** 草稿 */ + public static final int DRAFT = 0; + + /** 已确认 */ + public static final int CONFIRMED = 1; + + /** 审批中 */ + public static final int APPROVING = 2; + + /** 已审批 */ + public static final int APPROVED = 3; + + /** 已完成 */ + public static final int FINISHED = 4; + + /** 已取消 */ + public static final int CANCELLED = 5; + +} diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/MesOrderStatusEnum.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/MesOrderStatusEnum.java deleted file mode 100644 index 75c2ee2..0000000 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/MesOrderStatusEnum.java +++ /dev/null @@ -1,41 +0,0 @@ -package cn.iocoder.yudao.module.mes.enums; - -import cn.iocoder.yudao.framework.common.core.ArrayValuable; -import lombok.AllArgsConstructor; -import lombok.Getter; - -import java.util.Arrays; - -/** - * MES 单据状态枚举 - * - * @author 芋道源码 - */ -@Getter -@AllArgsConstructor -public enum MesOrderStatusEnum implements ArrayValuable { - - DRAFT(0, "草稿"), - CONFIRMED(1, "已确认"), - APPROVING(2, "审批中"), - APPROVED(3, "已审批"), - FINISHED(4, "已完成"), - CANCELLED(5, "已取消"); - - public static final Integer[] ARRAYS = Arrays.stream(values()).map(MesOrderStatusEnum::getType).toArray(Integer[]::new); - - /** - * 状态值 - */ - private final Integer type; - /** - * 状态名 - */ - private final String name; - - @Override - public Integer[] array() { - return ARRAYS; - } - -} diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/qc/MesQcOqcStatusEnum.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/qc/MesQcStatusEnum.java index 1f4f7ec..d62c235 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/qc/MesQcOqcStatusEnum.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/qc/MesQcStatusEnum.java @@ -1,29 +1,34 @@ package cn.iocoder.yudao.module.mes.enums.qc; import cn.iocoder.yudao.framework.common.core.ArrayValuable; +import cn.iocoder.yudao.module.mes.enums.MesOrderStatusConstants; import lombok.AllArgsConstructor; import lombok.Getter; import java.util.Arrays; /** - * MES 出货检验单状态枚举 + * MES 质检单状态枚举 + * + * 适用于:IQC(来料检验)、IPQC(过程检验)、OQC(出货检验)、RQC(退货检验) * * @author 芋道源码 */ @Getter @AllArgsConstructor -public enum MesQcOqcStatusEnum implements ArrayValuable { +public enum MesQcStatusEnum implements ArrayValuable { - PREPARE(0, "草稿"), - FINISHED(1, "已完成"); + DRAFT(MesOrderStatusConstants.DRAFT, "草稿"), + FINISHED(MesOrderStatusConstants.FINISHED, "已完成"); - public static final Integer[] ARRAYS = Arrays.stream(values()).map(MesQcOqcStatusEnum::getType).toArray(Integer[]::new); + public static final Integer[] ARRAYS = Arrays.stream(values()) + .map(MesQcStatusEnum::getStatus).toArray(Integer[]::new); /** * 状态值 */ - private final Integer type; + private final Integer status; + /** * 状态名 */ diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/ipqc/MesQcIpqcServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/ipqc/MesQcIpqcServiceImpl.java index 04316fc..dfd8ad9 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/ipqc/MesQcIpqcServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/ipqc/MesQcIpqcServiceImpl.java @@ -11,7 +11,7 @@ import cn.iocoder.yudao.module.mes.dal.dataobject.qc.ipqc.MesQcIpqcDO; import cn.iocoder.yudao.module.mes.dal.dataobject.qc.template.MesQcTemplateItemDO; import cn.iocoder.yudao.module.mes.dal.mysql.qc.ipqc.MesQcIpqcMapper; import cn.iocoder.yudao.module.mes.enums.qc.MesQcDefectLevelEnum; -import cn.iocoder.yudao.module.mes.enums.MesOrderStatusEnum; +import cn.iocoder.yudao.module.mes.enums.qc.MesQcStatusEnum; import cn.iocoder.yudao.module.mes.enums.qc.MesQcTypeEnum; import cn.iocoder.yudao.module.mes.service.md.item.MesMdItemService; import cn.iocoder.yudao.module.mes.service.md.workstation.MesMdWorkstationService; @@ -84,7 +84,7 @@ public class MesQcIpqcServiceImpl implements MesQcIpqcService { // 2. 插入主表 MesQcIpqcDO ipqc = BeanUtils.toBean(createReqVO, MesQcIpqcDO.class); ipqc.setItemId(workOrder.getProductId()); - ipqc.setTemplateId(templateId).setStatus(MesOrderStatusEnum.DRAFT.getType()); + ipqc.setTemplateId(templateId).setStatus(MesQcStatusEnum.DRAFT.getStatus()); ipqcMapper.insert(ipqc); // 3. 从模板指标自动生成检验行 @@ -121,7 +121,7 @@ public class MesQcIpqcServiceImpl implements MesQcIpqcService { // 2. 更新状态为已完成 MesQcIpqcDO updateObj = new MesQcIpqcDO(); updateObj.setId(id); - updateObj.setStatus(MesOrderStatusEnum.FINISHED.getType()); + updateObj.setStatus(MesQcStatusEnum.FINISHED.getStatus()); ipqcMapper.updateById(updateObj); // TODO @芋艿:IPQC 完成时的 PRO/WM 联动(报工反馈更新、产品产出单拆分),待 WM 模块迁移后对接 @@ -158,7 +158,7 @@ public class MesQcIpqcServiceImpl implements MesQcIpqcService { */ private MesQcIpqcDO validateIpqcStatusPrepare(Long id) { MesQcIpqcDO ipqc = validateIpqcExists(id); - if (ObjUtil.notEqual(ipqc.getStatus(), MesOrderStatusEnum.DRAFT.getType())) { + if (ObjUtil.notEqual(ipqc.getStatus(), MesQcStatusEnum.DRAFT.getStatus())) { throw exception(QC_IPQC_NOT_PREPARE); } return ipqc; diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/iqc/MesQcIqcServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/iqc/MesQcIqcServiceImpl.java index 52e2b30..2d94020 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/iqc/MesQcIqcServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/iqc/MesQcIqcServiceImpl.java @@ -13,7 +13,7 @@ import cn.iocoder.yudao.module.mes.dal.dataobject.qc.template.MesQcTemplateItemD import cn.iocoder.yudao.module.mes.dal.mysql.qc.iqc.MesQcIqcMapper; import cn.iocoder.yudao.module.mes.enums.MesBizTypeConstants; import cn.iocoder.yudao.module.mes.enums.qc.MesQcDefectLevelEnum; -import cn.iocoder.yudao.module.mes.enums.MesOrderStatusEnum; +import cn.iocoder.yudao.module.mes.enums.qc.MesQcStatusEnum; import cn.iocoder.yudao.module.mes.enums.qc.MesQcTypeEnum; import cn.iocoder.yudao.module.mes.service.md.item.MesMdItemService; import cn.iocoder.yudao.module.mes.service.md.vendor.MesMdVendorService; @@ -83,7 +83,7 @@ public class MesQcIqcServiceImpl implements MesQcIqcService { MesQcIqcDO iqc = BeanUtils.toBean(createReqVO, MesQcIqcDO.class); iqc.setTemplateId(templateId); iqc.setCheckQuantity(createReqVO.getQualifiedQuantity().add(createReqVO.getUnqualifiedQuantity())); - iqc.setStatus(MesOrderStatusEnum.DRAFT.getType()); + iqc.setStatus(MesQcStatusEnum.DRAFT.getStatus()); iqcMapper.insert(iqc); // 3. 从模板指标自动生成检验行 @@ -120,7 +120,7 @@ public class MesQcIqcServiceImpl implements MesQcIqcService { // 2. 更新状态为已完成 MesQcIqcDO updateObj = new MesQcIqcDO() - .setId(id).setStatus(MesOrderStatusEnum.FINISHED.getType()); + .setId(id).setStatus(MesQcStatusEnum.FINISHED.getStatus()); iqcMapper.updateById(updateObj); // 3. 回写来源单据 @@ -181,7 +181,7 @@ public class MesQcIqcServiceImpl implements MesQcIqcService { */ private MesQcIqcDO validateIqcStatusPrepare(Long id) { MesQcIqcDO iqc = validateIqcExists(id); - if (ObjUtil.notEqual(iqc.getStatus(), MesOrderStatusEnum.DRAFT.getType())) { + if (ObjUtil.notEqual(iqc.getStatus(), MesQcStatusEnum.DRAFT.getStatus())) { throw exception(QC_IQC_NOT_PREPARE); } return iqc; diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/oqc/MesQcOqcServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/oqc/MesQcOqcServiceImpl.java index 6991088..f294f1c 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/oqc/MesQcOqcServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/oqc/MesQcOqcServiceImpl.java @@ -10,7 +10,7 @@ import cn.iocoder.yudao.module.mes.dal.dataobject.qc.oqc.MesQcOqcDO; import cn.iocoder.yudao.module.mes.dal.dataobject.qc.template.MesQcTemplateItemDO; import cn.iocoder.yudao.module.mes.dal.mysql.qc.oqc.MesQcOqcMapper; import cn.iocoder.yudao.module.mes.enums.qc.MesQcDefectLevelEnum; -import cn.iocoder.yudao.module.mes.enums.qc.MesQcOqcStatusEnum; +import cn.iocoder.yudao.module.mes.enums.qc.MesQcStatusEnum; import cn.iocoder.yudao.module.mes.enums.qc.MesQcTypeEnum; import cn.iocoder.yudao.module.mes.service.md.client.MesMdClientService; import cn.iocoder.yudao.module.mes.service.md.item.MesMdItemService; @@ -75,7 +75,7 @@ public class MesQcOqcServiceImpl implements MesQcOqcService { // 2. 插入主表 MesQcOqcDO oqc = BeanUtils.toBean(createReqVO, MesQcOqcDO.class); oqc.setTemplateId(templateId); - oqc.setStatus(MesQcOqcStatusEnum.PREPARE.getType()); + oqc.setStatus(MesQcStatusEnum.DRAFT.getStatus()); oqcMapper.insert(oqc); // 3. 从模板指标自动生成检验行 @@ -106,7 +106,7 @@ public class MesQcOqcServiceImpl implements MesQcOqcService { // 2. 更新状态为已完成 MesQcOqcDO updateObj = new MesQcOqcDO() - .setId(id).setStatus(MesQcOqcStatusEnum.FINISHED.getType()); + .setId(id).setStatus(MesQcStatusEnum.FINISHED.getStatus()); oqcMapper.updateById(updateObj); // TODO @芋艿:WM 模块迁移后,更新销售出库单行的检验结果 @@ -140,7 +140,7 @@ public class MesQcOqcServiceImpl implements MesQcOqcService { */ private MesQcOqcDO validateOqcStatusPrepare(Long id) { MesQcOqcDO oqc = validateOqcExists(id); - if (ObjUtil.notEqual(oqc.getStatus(), MesQcOqcStatusEnum.PREPARE.getType())) { + if (ObjUtil.notEqual(oqc.getStatus(), MesQcStatusEnum.DRAFT.getStatus())) { throw exception(QC_OQC_NOT_PREPARE); } return oqc; diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/rqc/MesQcRqcServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/rqc/MesQcRqcServiceImpl.java index 1bbe567..92f0a9b 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/rqc/MesQcRqcServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/rqc/MesQcRqcServiceImpl.java @@ -9,7 +9,7 @@ import cn.iocoder.yudao.module.mes.dal.dataobject.qc.defectrecord.MesQcDefectRec import cn.iocoder.yudao.module.mes.dal.dataobject.qc.rqc.MesQcRqcDO; import cn.iocoder.yudao.module.mes.dal.dataobject.qc.template.MesQcTemplateItemDO; import cn.iocoder.yudao.module.mes.dal.mysql.qc.rqc.MesQcRqcMapper; -import cn.iocoder.yudao.module.mes.enums.MesOrderStatusEnum; +import cn.iocoder.yudao.module.mes.enums.qc.MesQcStatusEnum; import cn.iocoder.yudao.module.mes.enums.qc.MesQcDefectLevelEnum; import cn.iocoder.yudao.module.mes.enums.qc.MesQcTypeEnum; import cn.iocoder.yudao.module.mes.service.md.item.MesMdItemService; @@ -71,7 +71,7 @@ public class MesQcRqcServiceImpl implements MesQcRqcService { // 2. 插入主表 MesQcRqcDO rqc = BeanUtils.toBean(createReqVO, MesQcRqcDO.class) .setTemplateId(templateId) - .setStatus(MesOrderStatusEnum.DRAFT.getType()); + .setStatus(MesQcStatusEnum.DRAFT.getStatus()); rqcMapper.insert(rqc); // 3. 从模板指标自动生成检验行 @@ -108,7 +108,7 @@ public class MesQcRqcServiceImpl implements MesQcRqcService { } // 2. 更新状态为已完成 - MesQcRqcDO updateObj = new MesQcRqcDO().setId(id).setStatus(MesOrderStatusEnum.FINISHED.getType()); + MesQcRqcDO updateObj = new MesQcRqcDO().setId(id).setStatus(MesQcStatusEnum.FINISHED.getStatus()); rqcMapper.updateById(updateObj); // TODO @芋艿:WM 模块迁移后,更新来源退料/退货单行的质量状态 @@ -145,7 +145,7 @@ public class MesQcRqcServiceImpl implements MesQcRqcService { */ private MesQcRqcDO validateRqcStatusPrepare(Long id) { MesQcRqcDO rqc = validateRqcExists(id); - if (ObjUtil.notEqual(rqc.getStatus(), MesOrderStatusEnum.DRAFT.getType())) { + if (ObjUtil.notEqual(rqc.getStatus(), MesQcStatusEnum.DRAFT.getStatus())) { throw exception(QC_RQC_NOT_PREPARE); } return rqc;