云
2026-10-20 4eb9a3a99e21522ede60dcb8bee5b5856b515dc7
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/ErrorCodeConstants.java
@@ -32,6 +32,7 @@
    // ========== MES 基础数据-物料(1-040-102-000) ==========
    ErrorCode MD_ITEM_NOT_EXISTS = new ErrorCode(1_040_102_000, "物料不存在");
    ErrorCode MD_ITEM_CODE_DUPLICATE = new ErrorCode(1_040_102_001, "物料编码已存在");
    // 1_040_102_002:物料名称唯一校验已取消(允许同名不同编码,与 MDM 物料对齐),此码仅保留占位,请勿再用于校验
    ErrorCode MD_ITEM_NAME_DUPLICATE = new ErrorCode(1_040_102_002, "物料名称已存在");
    ErrorCode MD_ITEM_BATCH_REQUIRED = new ErrorCode(1_040_102_004, "当前物料启用了批次管理,请选择批次");
    ErrorCode MD_ITEM_IS_DISABLE = new ErrorCode(1_040_102_005, "物料已禁用");
@@ -64,7 +65,6 @@
    // ========== MES 基础数据-客户(1-040-103-000) ==========
    ErrorCode MD_CLIENT_NOT_EXISTS = new ErrorCode(1_040_103_000, "客户不存在");
    ErrorCode MD_CLIENT_CODE_DUPLICATE = new ErrorCode(1_040_103_001, "客户编码已存在");
    ErrorCode MD_CLIENT_NAME_DUPLICATE = new ErrorCode(1_040_103_002, "客户名称已存在");
    ErrorCode MD_CLIENT_NICKNAME_DUPLICATE = new ErrorCode(1_040_103_003, "客户简称已存在");
    ErrorCode MD_CLIENT_IMPORT_LIST_IS_EMPTY = new ErrorCode(1_040_103_004, "导入客户数据不能为空");
@@ -170,6 +170,7 @@
    ErrorCode DV_MACHINERY_HAS_MAINTEN_RECORD = new ErrorCode(1_040_301_005, "设备已关联保养记录,无法删除");
    ErrorCode DV_MACHINERY_HAS_REPAIR = new ErrorCode(1_040_301_006, "设备已关联维修工单,无法删除");
    ErrorCode DV_MACHINERY_WORKSTATION_NOT_EXISTS = new ErrorCode(1_040_301_008, "工作站编码不存在");
    ErrorCode DV_MACHINERY_COLLECT_CODE_DUPLICATE = new ErrorCode(1_040_301_009, "数采设备编号已被其他设备占用");
    // ========== MES 设备管理-点检保养项目(1-040-304-000) ==========
    ErrorCode DV_SUBJECT_NOT_EXISTS = new ErrorCode(1_040_304_000, "点检保养项目不存在");
@@ -291,6 +292,8 @@
    // ========== MES 生产管理-生产任务(1-040-503-000) ==========
    ErrorCode PRO_TASK_NOT_EXISTS = new ErrorCode(1_040_503_000, "生产任务不存在");
    ErrorCode PRO_TASK_SCHEDULE_INVALID = new ErrorCode(1_040_503_020, "排产校验未通过:{}");
    ErrorCode PRO_TASK_SCHEDULE_PREVIEW_CHANGED = new ErrorCode(1_040_503_021, "排产数据已变化或预览已过期,请重新生成预览后确认");
    ErrorCode PRO_TASK_ALREADY_FINISHED = new ErrorCode(1_040_503_001, "生产任务已完成或已取消,不能继续操作");
    ErrorCode PRO_TASK_WORK_ORDER_MISMATCH = new ErrorCode(1_040_503_002, "生产任务不属于当前生产工单");
    ErrorCode PRO_TASK_WORKSTATION_MISMATCH = new ErrorCode(1_040_503_003, "生产任务不属于当前工作站");
@@ -298,7 +301,7 @@
    ErrorCode PRO_TASK_ITEM_MISMATCH = new ErrorCode(1_040_503_005, "检验物料与生产任务物料不一致");
    ErrorCode PRO_TASK_HAS_FEEDBACK = new ErrorCode(1_040_503_006, "该任务下存在报工记录,无法删除(避免报工追溯断链)");
    ErrorCode PRO_WORKSTATION_PROCESS_MISMATCH = new ErrorCode(1_040_503_009, "工作站所属工序与当前工序不一致"); // 修正编号冲突
    ErrorCode PRO_TASK_CANNOT_PAUSE = new ErrorCode(1_040_503_007, "只有【生产中】或【部分完成】的任务可以停工");
    ErrorCode PRO_TASK_CANNOT_PAUSE = new ErrorCode(1_040_503_007, "只有【草稿】、【生产中】或【部分完成】的任务可以停工");
    ErrorCode PRO_TASK_NOT_PAUSED = new ErrorCode(1_040_503_008, "任务不处于【已停工】状态,无法复工");
    // ========== MES 生产管理-生产任务投料(1-040-503-100) ==========
    ErrorCode PRO_TASK_ISSUE_NOT_EXISTS = new ErrorCode(1_040_503_100, "生产任务投料记录不存在");
@@ -332,6 +335,7 @@
            "报工对应的产出入库单已存在处理结果,无法自动补生成待检行,请运行质检报工数据修复脚本核对");
    ErrorCode PRO_FEEDBACK_PREV_PROCESS_NOT_FINISHED = new ErrorCode(1_040_506_016,
            "上一道工序「{}」尚未报工完成(剩余 {}),请先完成上一道工序的报工");
    ErrorCode PRO_FEEDBACK_EQUIPMENT_INVALID = new ErrorCode(1_040_506_017, "报工设备校验失败:{}");
    // ========== MES 生产管理-生产流转卡(1-040-507-000) ==========
    ErrorCode PRO_CARD_NOT_EXISTS = new ErrorCode(1_040_507_000, "生产流转卡不存在");
@@ -372,6 +376,12 @@
    ErrorCode QC_INDICATOR_CODE_DUPLICATE = new ErrorCode(1_040_601_001, "质检指标编码已存在");
    ErrorCode QC_INDICATOR_NAME_DUPLICATE = new ErrorCode(1_040_601_002, "质检指标名称已存在");
    ErrorCode QC_INDICATOR_RESULT_SPECIFICATION_REQUIRED = new ErrorCode(1_040_601_003, "结果值属性不能为空");
    ErrorCode QC_INDICATOR_PARENT_NOT_EXISTS = new ErrorCode(1_040_601_004, "父指标不存在");
    ErrorCode QC_INDICATOR_PARENT_NOT_GROUP = new ErrorCode(1_040_601_005, "父指标不是分组项");
    ErrorCode QC_INDICATOR_PARENT_SELF = new ErrorCode(1_040_601_006, "父指标不能是自己");
    ErrorCode QC_INDICATOR_GROUP_CANNOT_NEST = new ErrorCode(1_040_601_007, "分组项不能挂在其它指标下");
    ErrorCode QC_INDICATOR_HAS_CHILDREN = new ErrorCode(1_040_601_008, "该指标下已有子项");
    ErrorCode QC_INDICATOR_RESULT_TYPE_REQUIRED = new ErrorCode(1_040_601_009, "录入项的结果值类型不能为空");
    // ========== MES 质量管理-缺陷类型(1-040-602-000) ==========
    ErrorCode QC_DEFECT_NOT_EXISTS = new ErrorCode(1_040_602_000, "缺陷类型不存在");
@@ -636,6 +646,7 @@
    ErrorCode WM_RETURN_VENDOR_DETAIL_LINE_NOT_MATCH = new ErrorCode(1_040_711_202, "拣货明细不属于指定的供应商退货单");
    ErrorCode WM_RETURN_VENDOR_PURCHASE_ORDER_REQUIRED = new ErrorCode(1_040_711_008, "请先选择采购订单");
    ErrorCode WM_RETURN_VENDOR_PURCHASE_ORDER_NO_ITEM = new ErrorCode(1_040_711_009, "采购订单无明细数据,无法带入物料");
    ErrorCode WM_RETURN_VENDOR_ITEM_NOT_IN_PURCHASE_ORDER = new ErrorCode(1_040_711_010, "退货物料不在所关联采购订单内,无法添加");
    // ========== MES 仓库管理-产品收货单(1-040-712-000) ==========
    ErrorCode WM_PRODUCT_RECPT_NOT_EXISTS = new ErrorCode(1_040_712_000, "产品收货单不存在");
@@ -806,6 +817,8 @@
    // ========== MES 产品设计-资料审核(1-040-802-000) ==========
    ErrorCode PD_DOCUMENT_AUDIT_NOT_EXISTS = new ErrorCode(1_040_802_000, "资料审核记录不存在");
    ErrorCode PD_DOCUMENT_AUDIT_STATUS_REQUIRED = new ErrorCode(1_040_802_001, "审核结果不能为空:请选择「审核通过」或「审核不通过」后重新提交");
    ErrorCode PD_DOCUMENT_AUDIT_STATUS_INVALID = new ErrorCode(1_040_802_002, "审核结果不合法:只允许「审核通过」或「审核不通过」,请重新选择后提交");
    // ========== MES 产品设计-归档台账(1-040-803-000) ==========
    ErrorCode PD_ARCHIVE_NOT_EXISTS = new ErrorCode(1_040_803_000, "归档台账不存在");
@@ -827,4 +840,9 @@
    ErrorCode WMS_APPROVAL_STATUS_INVALID = new ErrorCode(1_040_900_004, "单据状态不正确,无法提交审批");
    ErrorCode WMS_APPROVAL_ALREADY_SUBMITTED = new ErrorCode(1_040_900_005, "单据已提交审批,请勿重复提交");
    // ========== MES 设备管理-数采(1-040-920-000) ==========
    ErrorCode COLLECT_DEVICE_NOT_BOUND = new ErrorCode(1_040_920_000, "数采设备[{}]未绑定设备台账,请先在设备台账维护数采设备编号");
    ErrorCode COLLECT_ALARM_NOT_EXISTS = new ErrorCode(1_040_920_001, "报警记录不存在");
    ErrorCode COLLECT_ALARM_ALREADY_CLEARED = new ErrorCode(1_040_920_002, "该报警已消除,无需重复确认");
}