已重命名11个文件
已添加4个文件
已修改26个文件
3754 ■■■■■ 文件已修改
db/430设备管理数据库设计.pdma.json 2749 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-boot-base-core/src/main/java/org/jeecg/common/aspect/DictAspect.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/controller/EamBaseRepairDepartController.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/rule/OrgCodeRepDepRule.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/BusinessCodeConst.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/MaintenanceStandardStatusEnum.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamMaintenanceStandardDetail.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamWeekMaintenanceOrderDetail.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMaintenanceStandardController.java 46 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamMaintenanceStandard.java 70 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/InspectionOrderGenerateJob.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/SecondMaintenanceOrderGenerateJob.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/ThirdMaintenanceOrderGenerateJob.java 28 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/WeekMaintenanceOrderGenerateJob.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamMaintenanceStandardMapper.xml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamMaintenanceStandardRequest.java 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamMaintenanceStandardService.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java 307 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/vo/EamMaintenanceStandardVo.java 95 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysUserController.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/EamBaseRepairDepart.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/EamBaseRepairDepartUser.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysUser.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/EamBaseRepairDepartMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/EamBaseRepairDepartUserMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysUserMapper.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/EamBaseRepairDepartMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/EamBaseRepairDepartUserMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysUserMapper.xml 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/model/EamBaseRepairDepartTreeModel.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/model/RepairDepartIdModel.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/IEamBaseRepairDepartService.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/IEamBaseRepairDepartUserService.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysUserService.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/EamBaseRepairDepartImpl.java 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/EamBaseRepairDepartUserServiceImpl.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/util/FindsRepairDepartsChildrenUtil.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/vo/EamUserRepDepVo.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
db/430É豸¹ÜÀíÊý¾Ý¿âÉè¼Æ.pdma.json
@@ -4,7 +4,7 @@
  "avatar": "",
  "version": "4.9.2",
  "createdTime": "2025-3-10 16:38:19",
  "updatedTime": "2025-7-3 17:41:45",
  "updatedTime": "2025-7-4 21:12:47",
  "dbConns": [],
  "profile": {
    "default": {
@@ -632,7 +632,7 @@
      "#DDE5FF"
    ],
    "DDLToggleCase": "L",
    "menuWidth": "392px"
    "menuWidth": "472px"
  },
  "entities": [
    {
@@ -7639,7 +7639,7 @@
        {
          "defKey": "maintenance_date",
          "defName": "计划保养日期",
          "comment": "",
          "comment": "提前70天生成工单",
          "type": "",
          "len": "",
          "scale": "",
@@ -7654,6 +7654,62 @@
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "id": "E7D00DBD-66A2-4CED-8061-8E3F50ED2D37",
          "uiHint": null
        },
        {
          "defKey": "freeze_order_date",
          "defName": "锁定工单日期",
          "comment": "提前55天锁定工单",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "5735F6CA-38D9-42BA-9500-5F2465A92F40",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
        },
        {
          "defKey": "order_expiration_date",
          "defName": "工单过期日期",
          "comment": "到期未做直接过期",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "D316D197-1F62-4D2F-BDA0-FDF9F10BAA06",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
        },
        {
          "defKey": "actual_start_time",
@@ -7715,7 +7771,7 @@
        {
          "defKey": "maintenance_status",
          "defName": "保养状态",
          "comment": "",
          "comment": "待保养、保养中、待检查、操作人签字、维修人签字、维修室主任签字、设备检查人签字、已完成、已锁定、变更中、已取消",
          "type": "",
          "len": "",
          "scale": "",
@@ -9762,7 +9818,7 @@
        {
          "defKey": "change_status",
          "defName": "变更状态",
          "comment": "待提交、待主管审核、待部门确认、待保障部确认、取消、完成",
          "comment": "待提交、待主管审核、待部门确认、待保障部确认、已作废、已完成",
          "type": "",
          "len": "",
          "scale": "",
@@ -23187,6 +23243,2682 @@
      "correlations": [],
      "indexes": [],
      "type": "P"
    },
    {
      "id": "29558F80-959B-488C-8B7C-67AFD0F9A0F3",
      "env": {
        "base": {
          "nameSpace": "",
          "codeRoot": ""
        }
      },
      "defKey": "eam_technical_status_evaluation_standard",
      "defName": "技术状态鉴定规范",
      "comment": "",
      "properties": {
        "partitioned by": "(date string)",
        "row format delimited": "",
        "fields terminated by ','": "",
        "collection items terminated by '-'": "",
        "map keys terminated by ':'": "",
        "store as textfile;": ""
      },
      "sysProps": {
        "nameTemplate": "{defKey}[{defName}]"
      },
      "notes": {},
      "headers": [
        {
          "refKey": "hideInGraph",
          "hideInGraph": true
        },
        {
          "refKey": "defKey",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "defName",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "comment",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "primaryKey",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "notNull",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "autoIncrement",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "domain",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "type",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "len",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "scale",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "refDict",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "defaultValue",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "isStandard",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "uiHint",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "extProps",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr1",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr2",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr3",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr4",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr5",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr6",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr7",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr8",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr9",
          "freeze": false,
          "hideInGraph": true
        }
      ],
      "fields": [
        {
          "defKey": "id",
          "defName": "主键",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": true,
          "notNull": true,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "16120F75-6AA7-4483-868D-F07F511BB081",
          "id": "E603C039-217E-401F-B880-E355CA22EE63"
        },
        {
          "defKey": "create_by",
          "defName": "创建人",
          "comment": "",
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": "",
          "uiHint": "",
          "id": "6DBA71B0-CD36-435C-937C-CC528AEFE96A",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "create_time",
          "defName": "创建时间",
          "comment": "",
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": "",
          "uiHint": "",
          "id": "E990DC50-CB7B-4C6C-BA89-232C47B7BCEE",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
        },
        {
          "defKey": "update_by",
          "defName": "更新人",
          "comment": "",
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": "",
          "uiHint": "",
          "id": "66F19C60-0601-4AD4-842D-6039F4CB1704",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "update_time",
          "defName": "更新时间",
          "comment": "",
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": "",
          "uiHint": "",
          "id": "0A57C4C9-32E6-4B1E-916B-AC8310595186",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
        },
        {
          "defKey": "del_flag",
          "defName": "删除标记",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "1D764C4A-6F9F-421E-B11A-6F3E23B51811",
          "extProps": {},
          "domain": "6BC8F04B-6CFA-4995-98D3-318F5CDD774E",
          "id": "DE0A96AC-AD46-459D-AD67-CA1E96F59B2A"
        },
        {
          "defKey": "standard_name",
          "defName": "规范名称",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
          "id": "6765F0DF-0115-40FA-944F-A851AB0128EF"
        },
        {
          "defKey": "standard_code",
          "defName": "规范编码",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "id": "B244EFB9-0589-44B8-A249-81B9CD1C9BB9"
        },
        {
          "defKey": "evaluation_period",
          "defName": "鉴定周期",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "1D764C4A-6F9F-421E-B11A-6F3E23B51811",
          "extProps": {},
          "domain": "6BC8F04B-6CFA-4995-98D3-318F5CDD774E",
          "id": "B72C95BD-80FF-4574-BC27-4FB0E087070B"
        },
        {
          "defKey": "equipment_id",
          "defName": "设备ID",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "16120F75-6AA7-4483-868D-F07F511BB081",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "110B514A-4EA3-4D11-ADFF-624C2BA75C47",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "standard_status",
          "defName": "规范状态",
          "comment": "待提交、启用、作废",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "AA1AC6AB-432C-46B8-9AC2-9AB832390B4A",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "has_safety_equipment_check",
          "defName": "是否有安全装置检查",
          "comment": "是否",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
          "id": "57BA4F17-55A2-45DD-8CE6-5ABCC592F742"
        },
        {
          "defKey": "has_precision_check",
          "defName": "是否有设备精度检查",
          "comment": "是否",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
          "id": "1F3618BD-22D7-46FF-B7C9-0FEE5F6B97A9"
        },
        {
          "defKey": "has_other_check",
          "defName": "是否有其他检查",
          "comment": "是否",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
          "id": "2C88A464-AC97-4512-94EE-CCD08ED27A64"
        },
        {
          "defKey": "remark",
          "defName": "备注",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
          "id": "943AC3C9-4B29-4C54-9F9F-BC232C78E4B3"
        }
      ],
      "correlations": [],
      "indexes": [],
      "type": "P"
    },
    {
      "id": "73D3544F-E5F5-4C3F-BF5C-84D597C11BC6",
      "env": {
        "base": {
          "nameSpace": "",
          "codeRoot": ""
        }
      },
      "defKey": "eam_technical_status_evaluation_standard_detail",
      "defName": "技术状态鉴定规范明细",
      "comment": "",
      "properties": {
        "partitioned by": "(date string)",
        "row format delimited": "",
        "fields terminated by ','": "",
        "collection items terminated by '-'": "",
        "map keys terminated by ':'": "",
        "store as textfile;": ""
      },
      "sysProps": {
        "nameTemplate": "{defKey}[{defName}]"
      },
      "notes": {},
      "headers": [
        {
          "refKey": "hideInGraph",
          "hideInGraph": true
        },
        {
          "refKey": "defKey",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "defName",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "comment",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "primaryKey",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "notNull",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "autoIncrement",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "domain",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "type",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "len",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "scale",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "refDict",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "defaultValue",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "isStandard",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "uiHint",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "extProps",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr1",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr2",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr3",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr4",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr5",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr6",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr7",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr8",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr9",
          "freeze": false,
          "hideInGraph": true
        }
      ],
      "fields": [
        {
          "defKey": "id",
          "defName": "主键",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": true,
          "notNull": true,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "16120F75-6AA7-4483-868D-F07F511BB081",
          "id": "758F8CD9-2830-4758-9CE5-E26FA6B039C2"
        },
        {
          "defKey": "create_by",
          "defName": "创建人",
          "comment": "",
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": "",
          "uiHint": "",
          "id": "B0C84435-EA94-4286-B14A-43FB4534EA3B",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "create_time",
          "defName": "创建时间",
          "comment": "",
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": "",
          "uiHint": "",
          "id": "AFB18A1C-0F59-4C9F-9449-BC225D88079C",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
        },
        {
          "defKey": "update_by",
          "defName": "更新人",
          "comment": "",
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": "",
          "uiHint": "",
          "id": "A23C4001-4E6E-460A-A432-448653C8E0FE",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "update_time",
          "defName": "更新时间",
          "comment": "",
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": "",
          "uiHint": "",
          "id": "7AC81A36-5331-4E42-8966-06B7D33B486B",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
        },
        {
          "defKey": "standard_id",
          "defName": "规范ID",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "16120F75-6AA7-4483-868D-F07F511BB081",
          "id": "BD1BAB84-E57D-49E9-8BF2-BFEE7633B0C2"
        },
        {
          "defKey": "check_category",
          "defName": "检查分类",
          "comment": "精度检查、安全装置检查、其他检查",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
          "id": "AF03D6C1-02CE-45B6-9EB9-90761B6F8436"
        },
        {
          "defKey": "item_code",
          "defName": "项目序号",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "1D764C4A-6F9F-421E-B11A-6F3E23B51811",
          "extProps": {},
          "domain": "6BC8F04B-6CFA-4995-98D3-318F5CDD774E",
          "id": "544AE852-301E-4564-909C-3A7C4AFFE701"
        },
        {
          "defKey": "item_name",
          "defName": "检查项目",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
          "id": "AE5DDAE1-6DC5-4AFE-A73F-310521EABDEE"
        },
        {
          "defKey": "tolerance_value",
          "defName": "允差值",
          "comment": "精度检查展示",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "BE09D493-E183-402D-ACC4-EEA21EB35B8E",
          "id": "2807924C-DA64-41C1-9B60-3DC032E2EF76"
        },
        {
          "defKey": "sub_item_name",
          "defName": "检查子项目",
          "comment": "精度检查展示,可以为空",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
          "id": "6DDB7E9F-55E3-4340-8B7F-322824CAA9AF"
        }
      ],
      "correlations": [],
      "indexes": [],
      "type": "P"
    },
    {
      "id": "2E990330-B98A-450F-A504-96771FDB71F1",
      "env": {
        "base": {
          "nameSpace": "",
          "codeRoot": ""
        }
      },
      "defKey": "eam_technical_status_evaluation_order",
      "defName": "技术状态鉴定工单",
      "comment": "",
      "properties": {
        "partitioned by": "(date string)",
        "row format delimited": "",
        "fields terminated by ','": "",
        "collection items terminated by '-'": "",
        "map keys terminated by ':'": "",
        "store as textfile;": ""
      },
      "sysProps": {
        "nameTemplate": "{defKey}[{defName}]"
      },
      "notes": {},
      "headers": [
        {
          "refKey": "hideInGraph",
          "hideInGraph": true
        },
        {
          "refKey": "defKey",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "defName",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "comment",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "primaryKey",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "notNull",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "autoIncrement",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "domain",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "type",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "len",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "scale",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "refDict",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "defaultValue",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "isStandard",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "uiHint",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "extProps",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr1",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr2",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr3",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr4",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr5",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr6",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr7",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr8",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr9",
          "freeze": false,
          "hideInGraph": true
        }
      ],
      "fields": [
        {
          "defKey": "id",
          "defName": "主键",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": true,
          "notNull": true,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "16120F75-6AA7-4483-868D-F07F511BB081",
          "id": "B8930EAF-5B72-449A-BCA2-31731FD8DEC3"
        },
        {
          "defKey": "create_by",
          "defName": "创建人",
          "comment": "",
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": "",
          "uiHint": "",
          "id": "F465ACAD-840D-482A-874D-850D74B2E4BD",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "create_time",
          "defName": "创建时间",
          "comment": "",
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": "",
          "uiHint": "",
          "id": "64D02D73-B7FC-46E3-B146-EAC32B9E61C4",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
        },
        {
          "defKey": "update_by",
          "defName": "更新人",
          "comment": "",
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": "",
          "uiHint": "",
          "id": "BF25D63B-F284-442B-ABE4-CF2684906417",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "update_time",
          "defName": "更新时间",
          "comment": "",
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": "",
          "uiHint": "",
          "id": "27E8352D-28F0-4BF0-B80C-E54276E011F0",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
        },
        {
          "defKey": "del_flag",
          "defName": "删除标记",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "1D764C4A-6F9F-421E-B11A-6F3E23B51811",
          "extProps": {},
          "domain": "6BC8F04B-6CFA-4995-98D3-318F5CDD774E",
          "id": "9BF27F98-C679-4DC7-9252-5A06252627EB"
        },
        {
          "defKey": "order_num",
          "defName": "工单号",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "id": "CD268739-8F13-4025-8E9A-29D87D79D475"
        },
        {
          "defKey": "equipment_id",
          "defName": "设备ID",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "16120F75-6AA7-4483-868D-F07F511BB081",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "4974024F-5B8B-43F3-AE8F-5BFD236C5785",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "standard_id",
          "defName": "规范ID",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "16120F75-6AA7-4483-868D-F07F511BB081",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "28006A31-4C8F-430C-8575-2D63BB2A331A",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "evaluation_date",
          "defName": "计划鉴定日期",
          "comment": "提前70天生成工单",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "D4EC3749-323E-43FC-8467-B6E4C7FE4BFF",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
        },
        {
          "defKey": "freeze_order_date",
          "defName": "锁定工单日期",
          "comment": "提前55天锁定工单",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098",
          "extProps": {},
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "id": "275878B7-1BAA-42C1-B88D-E04AFA7B9A5E"
        },
        {
          "defKey": "order_expiration_date",
          "defName": "工单过期日期",
          "comment": "到期未做直接过期,并修改设备技术状态为禁用",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098",
          "extProps": {},
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "id": "16185F70-04E9-4426-87D2-291114EF6567"
        },
        {
          "defKey": "actual_start_time",
          "defName": "实际开始时间",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "51033E50-D073-431C-AAB9-753F12FEBA93",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
        },
        {
          "defKey": "actual_end_time",
          "defName": "实际结束时间",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "57B87FD0-3F73-4DBD-87BA-CF726EEF0BBF",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
        },
        {
          "defKey": "evaluator",
          "defName": "鉴定人",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "AF6B9316-622C-4737-82B3-E82799F967C0",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "evaluation_status",
          "defName": "鉴定状态",
          "comment": "待鉴定、鉴定中、维修室主任签字、工艺人员签字、技术主管签字、设备检验员签字、已完成、已锁定、变更中、已过期",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "5B41365E-EB87-411C-9421-3E0C66B50932",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "creation_method",
          "defName": "创建方式",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "1BC4D93C-ADE5-4631-9C35-8727A83BC317",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "safety_equipment_check_result",
          "defName": "安全装置检查结果",
          "comment": "是、否",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "B846038C-8184-4651-AFB3-90AE55927D00",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "precision_check_result",
          "defName": "精度参数检查结果",
          "comment": "是、否、无",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "EFEE3825-5393-4B3F-8200-80307D961A1B",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "functional_check_result",
          "defName": "功能状态检查结果",
          "comment": "是、否",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
          "id": "62E8B0E8-735B-42B2-9D12-C93F5ED04A95"
        },
        {
          "defKey": "other_check_result",
          "defName": "其他检查结果",
          "comment": "是、否、无",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
          "id": "A77E37BB-DEEE-4A7D-94EA-AAAAE0C65D81"
        },
        {
          "defKey": "repair_manager_signature",
          "defName": "维修室主任签字",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "5355870B-F68B-4C41-8271-146A0FEFF978",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "repair_manager_signature_time_1",
          "defName": "维修室主任签字时间",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "ADE87D39-0E76-4D32-8C2E-05F1D4C0B137",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
        },
        {
          "defKey": "sample_check_result",
          "defName": "试件检查结果",
          "comment": "合格、不合格",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
          "id": "F19406B3-1B81-484F-B916-81143EB092A4"
        },
        {
          "defKey": "process_technician​_signature",
          "defName": "工艺员签字",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "id": "44FAEC7F-5BA9-4AD0-8692-DA36C64E4B7C"
        },
        {
          "defKey": "process_technician​_signature_time",
          "defName": "工艺员签字时间",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098",
          "extProps": {},
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "id": "CD0EC1A3-9216-45AE-A386-43654B1F1F3C"
        },
        {
          "defKey": "evaluation_result",
          "defName": "鉴定结果",
          "comment": "合格、限用、禁用",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
          "id": "0A8069F0-FB42-449B-AF2D-2958B2CD26AE"
        },
        {
          "defKey": "evaluation_reason",
          "defName": "限\\禁用原因(多选)",
          "comment": "安全装置、设备功能、精度、试件、其他",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
          "id": "7F71F837-38E2-44A9-8B4F-06C00567B081"
        },
        {
          "defKey": "inspector_signature",
          "defName": "设备检查人签字",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "392E6DE4-95F8-449C-B342-8A6B7E8D7BFE",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "inspector_signature_time",
          "defName": "设备检查人签字时间",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "7E033853-C5FC-4F19-A327-BEE1B28281F5",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
        },
        {
          "defKey": "remark",
          "defName": "备注",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "296622C5-850D-41BD-B724-724AC1223C93",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        }
      ],
      "correlations": [],
      "indexes": [],
      "type": "P"
    },
    {
      "id": "882BADD5-3111-401C-9CF0-5ACAE364CA59",
      "env": {
        "base": {
          "nameSpace": "",
          "codeRoot": ""
        }
      },
      "defKey": "eam_technical_status_evaluation_order_detail",
      "defName": "技术状态鉴定工单明细",
      "comment": "",
      "properties": {
        "partitioned by": "(date string)",
        "row format delimited": "",
        "fields terminated by ','": "",
        "collection items terminated by '-'": "",
        "map keys terminated by ':'": "",
        "store as textfile;": ""
      },
      "sysProps": {
        "nameTemplate": "{defKey}[{defName}]"
      },
      "notes": {},
      "headers": [
        {
          "refKey": "hideInGraph",
          "hideInGraph": true
        },
        {
          "refKey": "defKey",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "defName",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "comment",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "primaryKey",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "notNull",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "autoIncrement",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "domain",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "type",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "len",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "scale",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "refDict",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "defaultValue",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "isStandard",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "uiHint",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "extProps",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr1",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr2",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr3",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr4",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr5",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr6",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr7",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr8",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr9",
          "freeze": false,
          "hideInGraph": true
        }
      ],
      "fields": [
        {
          "defKey": "id",
          "defName": "主键",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": true,
          "notNull": true,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "16120F75-6AA7-4483-868D-F07F511BB081",
          "id": "2DC7BE8C-B69E-4616-97E8-8EE09C13876A"
        },
        {
          "defKey": "create_by",
          "defName": "创建人",
          "comment": "",
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": "",
          "uiHint": "",
          "id": "E0E416EB-EF60-4869-B9A6-3362210E7BA0",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "create_time",
          "defName": "创建时间",
          "comment": "",
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": "",
          "uiHint": "",
          "id": "51AAA139-83AC-4523-87E1-D7BD931181CB",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
        },
        {
          "defKey": "update_by",
          "defName": "更新人",
          "comment": "",
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": "",
          "uiHint": "",
          "id": "13967F00-461F-4F79-9ACE-298FECBC85D7",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "update_time",
          "defName": "更新时间",
          "comment": "",
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": "",
          "uiHint": "",
          "id": "DF8E6653-C4E6-4E0B-A0D7-C20235E80747",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
        },
        {
          "defKey": "item_code",
          "defName": "序号",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "1D764C4A-6F9F-421E-B11A-6F3E23B51811",
          "extProps": {},
          "domain": "6BC8F04B-6CFA-4995-98D3-318F5CDD774E",
          "id": "88ACF01E-045B-4EF2-A6C6-31191AD8E152"
        },
        {
          "defKey": "check_category",
          "defName": "检查分类",
          "comment": "精度检查、安全装置检查、其他检查",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "3BBC249F-0EF3-4AA6-92CE-F89227A3C7AD",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "item_name",
          "defName": "检查项目",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "BE81DA75-AC78-4FD9-BFA2-ACEA81A0DE47",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "tolerance_value",
          "defName": "允差值",
          "comment": "精度检查展示",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "domain": "BE09D493-E183-402D-ACC4-EEA21EB35B8E",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "880BB194-A50F-407B-A813-091B605D106C",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "sub_item_name",
          "defName": "检查子项目",
          "comment": "精度检查展示,可以为空",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "D6F45C9B-B144-48A9-A06B-A6604F2DC206",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "safety_equipment_check_result",
          "defName": "安全装置检查结果",
          "comment": "是、否、无",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
          "id": "A837666A-2DBB-4FF9-B2B8-C5F61013A475"
        },
        {
          "defKey": "other_check_result",
          "defName": "其他检查结果",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
          "id": "B45DD691-590A-4577-B1EF-B509AC1A2386"
        },
        {
          "defKey": "precision_check_result",
          "defName": "精度检验结果",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "1A0BDC09-0792-4174-9E8E-80BE8DF44B8E",
          "extProps": {},
          "domain": "FF4459C5-6B45-4DBF-8FC0-E06239BC05B4",
          "id": "D1D3F7CE-C4B9-4995-AB61-4692844CD8C7"
        },
        {
          "defKey": "repairman_signature",
          "defName": "维修人/精度检查者签字",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "id": "2D7248FB-C64A-433A-B98B-1D6BE8FCF47A"
        },
        {
          "defKey": "repairman_signature_time",
          "defName": "维修人/精度检查者签字时间",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098",
          "extProps": {},
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "id": "B8C6560E-E5AE-4331-8AAE-AA1126CBC7E9"
        }
      ],
      "correlations": [],
      "indexes": [],
      "type": "P"
    },
    {
      "id": "191A7D10-95F3-48A9-92DD-CA7C5AEC0A57",
      "env": {
        "base": {
          "nameSpace": "",
          "codeRoot": ""
        }
      },
      "defKey": "eam_technical_status_evaluation_change",
      "defName": "技术状态鉴定工单变更",
      "comment": "",
      "properties": {
        "partitioned by": "(date string)",
        "row format delimited": "",
        "fields terminated by ','": "",
        "collection items terminated by '-'": "",
        "map keys terminated by ':'": "",
        "store as textfile;": ""
      },
      "sysProps": {
        "nameTemplate": "{defKey}[{defName}]"
      },
      "notes": {},
      "headers": [
        {
          "refKey": "hideInGraph",
          "hideInGraph": true
        },
        {
          "refKey": "defKey",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "defName",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "comment",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "primaryKey",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "notNull",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "autoIncrement",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "domain",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "type",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "len",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "scale",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "refDict",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "defaultValue",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "isStandard",
          "freeze": false,
          "hideInGraph": false
        },
        {
          "refKey": "uiHint",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "extProps",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr1",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr2",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr3",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr4",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr5",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr6",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr7",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr8",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "refKey": "attr9",
          "freeze": false,
          "hideInGraph": true
        }
      ],
      "fields": [
        {
          "defKey": "id",
          "defName": "主键",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": true,
          "notNull": true,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": null,
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "16120F75-6AA7-4483-868D-F07F511BB081",
          "id": "0E39299D-02BB-4BED-8FA0-47BC17B3CB33",
          "uiHint": null
        },
        {
          "defKey": "create_by",
          "defName": "创建人",
          "comment": "",
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": null,
          "uiHint": null,
          "id": "09D3F6D2-6C58-4F09-8730-2383C1462994",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "create_time",
          "defName": "创建时间",
          "comment": "",
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": null,
          "uiHint": null,
          "id": "4096FE85-F234-49C8-B0DA-0295BC72C1C0",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
        },
        {
          "defKey": "update_by",
          "defName": "更新人",
          "comment": "",
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": null,
          "uiHint": null,
          "id": "366832D2-416C-4AAD-8132-BD076A4D1478",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "update_time",
          "defName": "更新时间",
          "comment": "",
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": null,
          "uiHint": null,
          "id": "ACDE79A9-0311-4C45-83DF-2018CB8BB274",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
        },
        {
          "defKey": "del_flag",
          "defName": "删除标记",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": null,
          "baseType": "1D764C4A-6F9F-421E-B11A-6F3E23B51811",
          "extProps": {},
          "domain": "6BC8F04B-6CFA-4995-98D3-318F5CDD774E",
          "id": "C97C1D5C-D5EA-4DF0-882A-C4020CDE2F63",
          "uiHint": null
        },
        {
          "defKey": "order_id",
          "defName": "工单ID",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": null,
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "16120F75-6AA7-4483-868D-F07F511BB081",
          "id": "791D30B2-881A-4CB6-AACF-4E21478380EE",
          "uiHint": null
        },
        {
          "defKey": "applicant",
          "defName": "申请人",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": null,
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "id": "D94D41B1-51B9-4E3D-8A25-20393BA078BE",
          "uiHint": null
        },
        {
          "defKey": "factory_org_code",
          "defName": "申请部门",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": null,
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "BE09D493-E183-402D-ACC4-EEA21EB35B8E",
          "id": "A312C82E-15A7-4E6F-A9A2-7F878EA2E6DF",
          "uiHint": null
        },
        {
          "defKey": "apply_date",
          "defName": "申请日期",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": null,
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098",
          "extProps": {},
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "id": "FBF223A3-A780-48DB-A623-4E83DAFCA84A",
          "uiHint": null
        },
        {
          "defKey": "change_status",
          "defName": "变更状态",
          "comment": "待提交、待主管审核、待部门确认、待保障部确认、已作废、已完成",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "refDict": null,
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
          "id": "F83BBA17-D050-4328-BC2E-A90D60152EE5",
          "uiHint": null
        },
        {
          "defKey": "apply_reason",
          "defName": "变更原因",
          "comment": "生产任务急无法停机、设备故障正处于维修状态、设备已报废、设备大修、搬迁、改造",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": null,
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
          "id": "1B85F422-C507-4ABC-AACD-8FF54338C35A",
          "uiHint": null
        },
        {
          "defKey": "deferred_maintenance_date",
          "defName": "变更鉴定日期",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": null,
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098",
          "extProps": {},
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "id": "8F62E729-86F8-4C57-B4A9-2C9B8D5BC983",
          "uiHint": null
        },
        {
          "defKey": "equipment_manager_signature",
          "defName": "主管领导签字",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": null,
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "id": "3FA2F016-8300-4E7B-AAFA-92BFF483749D",
          "uiHint": null
        },
        {
          "defKey": "equipment_manager_signature_time",
          "defName": "主管领导签字时间",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": null,
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098",
          "extProps": {},
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "id": "9790F068-CDAF-422A-B87A-7F55FA40B364",
          "uiHint": null
        },
        {
          "defKey": "depart_manager_signature",
          "defName": "部门领导签字",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": null,
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "id": "52463E0A-F135-4819-9353-6CA9E68AF7FA",
          "uiHint": null
        },
        {
          "defKey": "depart_manager_signature_time",
          "defName": "部门领导签字时间",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": null,
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098",
          "extProps": {},
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "id": "6916268E-683D-4550-B7AB-8C89AD1A5E16",
          "uiHint": null
        },
        {
          "defKey": "depart_manager_comment",
          "defName": "部门领导意见",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": null,
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
          "id": "9A52B004-903F-43C1-94EF-6ADE461928CC",
          "uiHint": null
        },
        {
          "defKey": "production_support_signature",
          "defName": "生产保障部领导签字",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": null,
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "id": "23CD5B09-E890-4E88-AFDB-8643BB761FE5",
          "uiHint": null
        },
        {
          "defKey": "production_support_signature_time",
          "defName": "生产保障部领导签字时间",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": null,
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098",
          "extProps": {},
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "id": "34D18DFD-4171-4BC3-8940-3BBA50A05501",
          "uiHint": null
        },
        {
          "defKey": "production_support_comment",
          "defName": "生产保障部领导意见",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": null,
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
          "id": "4478B303-EEFF-4F42-A389-0AC012E4DBAD",
          "uiHint": null
        }
      ],
      "correlations": [],
      "indexes": [],
      "type": "P"
    }
  ],
  "views": [],
@@ -23929,7 +26661,12 @@
        "71918E5B-292A-4A4B-A72C-DDEB1F46CEC1",
        "CEFAEC98-1130-408E-AF46-0F63352FAD9C",
        "F422735F-F0B0-4DCD-979C-BBDDA704F624",
        "C0FFF043-304D-445B-9668-55F97F80CB9C"
        "C0FFF043-304D-445B-9668-55F97F80CB9C",
        "29558F80-959B-488C-8B7C-67AFD0F9A0F3",
        "73D3544F-E5F5-4C3F-BF5C-84D597C11BC6",
        "2E990330-B98A-450F-A504-96771FDB71F1",
        "882BADD5-3111-401C-9CF0-5ACAE364CA59",
        "191A7D10-95F3-48A9-92DD-CA7C5AEC0A57"
      ],
      "refViews": [],
      "refDiagrams": [],
lxzn-boot-base-core/src/main/java/org/jeecg/common/aspect/DictAspect.java
@@ -52,8 +52,9 @@
    /**
     * å®šä¹‰åˆ‡ç‚¹Pointcut
     */
    @Pointcut("execution(public * org.jeecg.modules.base.*Controller.*(..)) || @annotation(org.jeecg.common.aspect.annotation.AutoDict)")
    public void excudeService() {
    @Pointcut("(execution(public * org.jeecg.modules..*Controller.*(..)) " +
            "&& !execution(public * org.jeecg.modules.eam..*.*Controller.*(..)) ) " +
            "|| @annotation(org.jeecg.common.aspect.annotation.AutoDict)") public void excudeService() {
    }
    @Around("excudeService()")
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/controller/EamBaseRepairDepartController.java
@@ -15,10 +15,10 @@
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.eam.base.entity.EamBaseRepairDepart;
import org.jeecg.modules.eam.base.model.RepairDepartIdModel;
import org.jeecg.modules.eam.base.model.EamBaseRepairDepartTreeModel;
import org.jeecg.modules.eam.base.service.IEamBaseRepairDepartService;
import org.jeecg.modules.system.entity.EamBaseRepairDepart;
import org.jeecg.modules.system.model.RepairDepartIdModel;
import org.jeecg.modules.system.model.EamBaseRepairDepartTreeModel;
import org.jeecg.modules.system.service.IEamBaseRepairDepartService;
import org.springframework.cache.annotation.CacheEvict;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/rule/OrgCodeRepDepRule.java
@@ -6,8 +6,8 @@
import org.jeecg.common.handler.IFillRuleHandler;
import org.jeecg.common.util.SpringContextUtils;
import org.jeecg.common.util.YouBianCodeUtil;
import org.jeecg.modules.eam.base.entity.EamBaseRepairDepart;
import org.jeecg.modules.eam.base.service.IEamBaseRepairDepartService;
import org.jeecg.modules.system.entity.EamBaseRepairDepart;
import org.jeecg.modules.system.service.IEamBaseRepairDepartService;
import java.util.ArrayList;
import java.util.List;
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/BusinessCodeConst.java
@@ -68,5 +68,8 @@
    String PCR0006 = "PCR0006";
    //备件管理员
    String PCR0007 = "PCR0007";
    //维修室主任
    String PCR0008 = "PCR0008";
    //技术主管
    String PCR0009 = "PCR0009";
}
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/MaintenanceStandardStatusEnum.java
@@ -4,6 +4,9 @@
 * ä¿å…»æ ‡å‡†çŠ¶æ€
 */
public enum MaintenanceStandardStatusEnum {
    NORMAL,
    ABOLISH,;
    WAIT_SUBMIT,
    WAIT_REPAIR_DIRECTOR,
    WAIT_TECHNICAL_DIRECTOR,
    START,
    ABOLISH;
}
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamMaintenanceStandardDetail.java
@@ -8,6 +8,7 @@
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecg.modules.eam.dto.MaintenanceStandardImport;
import org.jeecg.modules.eam.dto.SecondMaintenanceStandardImport;
import org.jeecg.modules.eam.dto.ThirdMaintenanceStandardImport;
@@ -27,7 +28,7 @@
@Accessors(chain = true)
@ApiModel(value="eam_maintenance_standard_detail对象", description="保养标准明细")
public class EamMaintenanceStandardDetail implements Serializable {
    /**主键*/
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
@@ -44,30 +45,26 @@
    /**更新时间*/
    @ApiModelProperty(value = "更新时间")
    private Date updateTime;
    /**保养标准ID*/
    @ApiModelProperty(value = "保养标准ID")
    /**规范id*/
    @ApiModelProperty(value = "规范id")
    private String standardId;
    /**保养项序号*/
    @ApiModelProperty(value = "保养项序号")
    /**保养项分类*/
    @ApiModelProperty(value = "保养项分类")
    @Dict(dicCode = "maintenance_item_category")
    private String itemCategory;
    /**项目序号*/
    @ApiModelProperty(value = "项目序号")
    private Integer itemCode;
    /**部位*/
    @ApiModelProperty(value = "部位")
    private String itemPart;
    /**保养项*/
    @ApiModelProperty(value = "保养项")
    /**保养项目*/
    @ApiModelProperty(value = "保养项目")
    private String itemName;
    /**子保养项*/
    @ApiModelProperty(value = "子保养项")
    private String subItemName;
    /**检查标准或要求*/
    @ApiModelProperty(value = "检查标准或要求")
    private String itemDemand;
    /**保养要求2*/
    @ApiModelProperty(value = "保养要求2")
    private String itemDemandAlias;
    /**检查方法*/
    @ApiModelProperty(value = "检查方法")
    private String checkMethod;
    public EamMaintenanceStandardDetail(){}
@@ -82,7 +79,6 @@
    public EamMaintenanceStandardDetail(WeekMaintenanceStandardImport dto) {
        this.itemCode = dto.getItemCode();
        this.itemName = dto.getItemName();
        this.subItemName = dto.getSubItemName() + " " + (dto.getItemPart() == null ? "" : dto.getItemPart());
        this.itemDemand = dto.getItemDemand();
    }
@@ -91,8 +87,6 @@
        this.itemName = dto.getItemName();
        this.itemPart = dto.getItemPart();
        this.itemDemand = dto.getItemDemand();
        this.itemDemandAlias = dto.getItemDemandAlias();
        this.checkMethod = dto.getCheckMethod();
    }
    public EamMaintenanceStandardDetail(ThirdMaintenanceStandardImport dto) {
@@ -100,7 +94,5 @@
        this.itemName = dto.getItemName();
        this.itemPart = dto.getItemPart();
        this.itemDemand = dto.getItemDemand();
        this.itemDemandAlias = dto.getItemDemandAlias();
        this.checkMethod = dto.getCheckMethod();
    }
}
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamWeekMaintenanceOrderDetail.java
@@ -23,7 +23,7 @@
@Accessors(chain = true)
@ApiModel(value="eam_week_maintenance_order_detail对象", description="周保工单明细")
public class EamWeekMaintenanceOrderDetail implements Serializable {
    /**主键*/
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
@@ -70,7 +70,6 @@
    public EamWeekMaintenanceOrderDetail(EamMaintenanceStandardDetail detail) {
        this.itemCode = detail.getItemCode();
        this.itemName = detail.getItemName();
        this.subItemName = detail.getSubItemName();
        this.itemDemand = detail.getItemDemand();
    }
}
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java
@@ -148,7 +148,6 @@
                List<String> factoryCode= baseFactoryService.listByIds(factoryIds).stream().map(BaseFactory::getFactoryCode).collect(Collectors.toList());
                queryWrapper.in("e.factory_code", factoryCode);
            }
        }
        //查询条件过滤
        if (eamEquipment != null) {
@@ -224,14 +223,21 @@
        if (sysUser == null) {
            return Collections.emptyList();
        }
        if (StringUtils.isNotBlank(sysUser.getEquipmentIds())) {
        if (StringUtils.isNotBlank(sysUser.getEamEquipmentIds())) {
            //选择了设备,根据设备id过滤设备
            List<String> equipArr = Arrays.asList(sysUser.getEquipmentIds().split(","));
            queryWrapper.in("equipment_code", equipArr);
            List<String> equipArr = Arrays.asList(sysUser.getEamEquipmentIds().split(","));
            queryWrapper.in("e.equipment_code", equipArr);
        } else {
            //没有选择设备,根据车间过滤设备
            queryWrapper.exists("select 1 from mdc_user_production t where t.user_id={0} and t.pro_id=org_id", sysUser.getId());
            //没有选择设备,根据中心过滤设备
            List<BaseFactoryUser> baseFactoryUserList=baseFactoryUserService.
                    list(new LambdaQueryWrapper<BaseFactoryUser>().eq(BaseFactoryUser::getUserId,sysUser.getId()));
            if(!CollectionUtils.isEmpty(baseFactoryUserList)){
                List<String> factoryIds = baseFactoryUserList.stream().map(BaseFactoryUser::getFactoryId).collect(Collectors.toList());
                List<String> factoryCode= baseFactoryService.listByIds(factoryIds).stream().map(BaseFactory::getFactoryCode).collect(Collectors.toList());
                queryWrapper.in("e.factory_code", factoryCode);
            }
        }
        if (StringUtils.isNotBlank(keyword)) {
            queryWrapper.like("equipment_code", keyword);
            queryWrapper.or().like("equipment_name", keyword);
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMaintenanceStandardController.java
@@ -32,6 +32,7 @@
import org.jeecg.modules.eam.request.EamMaintenanceStandardRequest;
import org.jeecg.modules.eam.service.IEamEquipmentService;
import org.jeecg.modules.eam.service.IEamMaintenanceStandardService;
import org.jeecg.modules.eam.vo.EamMaintenanceStandardVo;
import org.jeecg.modules.system.service.ISysBusinessCodeRuleService;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.entity.ImportParams;
@@ -65,6 +66,28 @@
    private ISysBusinessCodeRuleService businessCodeRuleService;
    @Autowired
    private IEamEquipmentService eamEquipmentService;
    /**
     * æµç¨‹å¯åЍ,保存对应的数据
     * @param id
     * @return
     */
    @ApiOperation(value = "保养标准-流程启动保存对应的数据", notes = "保养标准-流程启动保存对应的数据")
    @GetMapping(value = "/saveEamMaintenanceStandardProcess")
    public Result<?> saveEamMaintenanceStandardProcess(String id){
        return Result.OK(eamMaintenanceStandardService.saveEamMaintenanceStandardProcess(id));
    }
    /**
     * æµç¨‹å®¡æ ¸
     * @param eamMaintenanceStandardVo
     * @return
     */
    @ApiOperation(value = "保养标准-流程审核", notes = "保养标准-流程审核")
    @PostMapping(value = "/audit")
    public Result<?> auditEamMaintenanceStandard(EamMaintenanceStandardVo eamMaintenanceStandardVo){
        return Result.OK(eamMaintenanceStandardService.auditEamMaintenanceStandard(eamMaintenanceStandardVo));
    }
    /**
     * åˆ†é¡µåˆ—表查询
@@ -541,29 +564,6 @@
            //文件编码
            Cell fileCode = row.getCell(13);
            request.setFileCode(fileCode.getStringCellValue());
            Map<String, PictureData> pictures;
            if (isXSSFWorkbook) {
                pictures = PoiPublicUtil.getSheetPictrues07((XSSFSheet) book.getSheetAt(0), (XSSFWorkbook) book);
            } else {
                pictures = PoiPublicUtil.getSheetPictrues03((HSSFSheet) book.getSheetAt(0), (HSSFWorkbook) book);
            }
            if (CollectionUtil.isNotEmpty(pictures)) {
                //只会存在一张图片
                PictureData pictureData = pictures.get(pictures.keySet().iterator().next());
                byte[] data = pictureData.getData();
                String fileName = request.getEquipmentCode() + "[" + request.getFileCode() + "]" + "." + pictureData.suggestFileExtension();
                FileUploadResult fileUploadResult = FileUtil.uploadFile(data, fileName);
                if(fileUploadResult != null) {
                    List<FileUploadResult> fileList = request.getFileList();
                    if(fileList == null) {
                        fileList = new ArrayList<FileUploadResult>();
                    }
                    fileList.add(fileUploadResult);
                    request.setFileList(fileList);
                }
            }
        } catch (Exception e) {
            log.error("读取Excel信息失败:{}", e.getMessage(), e);
        }
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamMaintenanceStandard.java
@@ -11,6 +11,7 @@
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
@@ -76,6 +77,12 @@
    @ApiModelProperty(value = "保养周期;单位:天")
    private Integer maintenancePeriod;
    /**
     * ä¿å…»å‘¨æœŸå•位
     */
    @ApiModelProperty(value = "保养周期单位")
    @Dict(dicCode = "period_unit")
    private String periodUnit;
    /**
     * åˆå§‹æ—¥æœŸ ä»Žå“ªä¸€å¤©å¼€å§‹è®¡ç®—下次保养日期
     */
    @ApiModelProperty(value = "初始日期")
@@ -106,22 +113,61 @@
    @ApiModelProperty(value = "标准版本")
    private Integer standardVersion;
    /**
     * æ–‡ä»¶ç¼–号
     * ç¼–制人
     */
    @ApiModelProperty(value = "文件编号")
    private String fileCode;
    @ApiModelProperty(value = "编制人")
    private String designer;
    /**
     * å‚考文件
     * ç¼–制日期
     */
    @ApiModelProperty(value = "参考文件")
    private String referenceFile;
    @ApiModelProperty(value = "编制日期")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date designTime;
    /**
     * æœ€æ–°ç”Ÿæˆå·¥å•æ—¶é—´
     * ä¸‹ä¸€æ¬¡ç”Ÿæˆæ—¶é—´ä¸ºæ­¤æ—¶é—´ + ä¿å…»å‘¨æœŸ
     * ç»´ä¿®ä¸»ä»»
     */
    @ApiModelProperty(value = "最新生成工单时间")
    private Date lastGenerateTime;
    @ApiModelProperty(value = "维修主任")
    private String repairManager;
    /**
     * ç»´ä¿®ä¸»ä»»å®¡æ‰¹ç»“æžœ
     */
    @ApiModelProperty(value = "维修主任审批结果")
    private String repairManagerApproveResult;
    /**
     * ç»´ä¿®ä¸»ä»»å®¡æ‰¹æ—¶é—´
     */
    @ApiModelProperty(value = "维修主任审批时间")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date repairManagerApproveTime;
    /**
     * ç»´ä¿®ä¸»ä»»å®¡æ‰¹æ„è§
     */
    @ApiModelProperty(value = "维修主任审批意见")
    private String repairManagerApproveComment;
    /**
     * æŠ€æœ¯ä¸»ç®¡
     */
    @ApiModelProperty(value = "技术主管")
    private String technicalManager;
    /**
     * æŠ€æœ¯ä¸»ç®¡å®¡æ‰¹ç»“æžœ
     */
    @ApiModelProperty(value = "技术主管审批结果")
    private String technicalManagerApproveResult;
    /**
     * æŠ€æœ¯ä¸»ç®¡å®¡æ‰¹æ—¶é—´
     */
    @ApiModelProperty(value = "技术主管审批时间")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date technicalManagerApproveTime;
    /**
     * æŠ€æœ¯ä¸»ç®¡å®¡æ‰¹æ„è§
     */
    @ApiModelProperty(value = "技术主管审批意见")
    private String technicalManagerApproveComment;
    //列表展示
    @TableField(exist = false)
    private String equipmentCode;
@@ -129,6 +175,8 @@
    private String equipmentName;
    @TableField(exist = false)
    private String keyword;
    @TableField(exist = false)
    private String equipmentModel;
    /**
     * è®¾å¤‡ç¼–号拼接
     */
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/InspectionOrderGenerateJob.java
@@ -85,9 +85,9 @@
                    standard.setInitialDate(DateUtils.localDateToDate(now.minusDays(1)));
                }
                LocalDate generateDate = DateUtils.dateToLocalDate(standard.getInitialDate());
                if (standard.getLastGenerateTime() != null) {
                    generateDate = DateUtils.dateToLocalDate(standard.getLastGenerateTime());
                }
//                if (standard.getLastGenerateTime() != null) {
//                    generateDate = DateUtils.dateToLocalDate(standard.getLastGenerateTime());
//                }
                //加周期
                do {
                    //初始日期设置的比较早,或任务长时间没执行,必须周期到今天才会生成工单
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/SecondMaintenanceOrderGenerateJob.java
@@ -82,9 +82,9 @@
                    standard.setInitialDate(DateUtils.localDateToDate(now.minusDays(1)));
                }
                LocalDate generateDate = DateUtils.dateToLocalDate(standard.getInitialDate());
                if (standard.getLastGenerateTime() != null) {
                    generateDate = DateUtils.dateToLocalDate(standard.getLastGenerateTime());
                }
//                if (standard.getLastGenerateTime() != null) {
//                    generateDate = DateUtils.dateToLocalDate(standard.getLastGenerateTime());
//                }
                //加周期
                do {
                    //初始日期设置的比较早,或任务长时间没执行,必须周期到今天才会生成工单
@@ -122,7 +122,7 @@
                request.setTableDetailList(tableDetailList);
                eamSecondMaintenanceOrderService.addMaintenance(request);
                standard.setLastGenerateTime(new Date());
//                standard.setLastGenerateTime(new Date());
                eamMaintenanceStandardService.updateById(standard);
            }
            quartzLog.setIsSuccess(0);
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/ThirdMaintenanceOrderGenerateJob.java
@@ -81,19 +81,19 @@
                    //设置初始日期为前一天
                    standard.setInitialDate(DateUtils.localDateToDate(now.minusDays(1)));
                }
                LocalDate generateDate = DateUtils.dateToLocalDate(standard.getInitialDate());
                if (standard.getLastGenerateTime() != null) {
                    generateDate = DateUtils.dateToLocalDate(standard.getLastGenerateTime());
                }
//                LocalDate generateDate = DateUtils.dateToLocalDate(standard.getInitialDate());
//                if (standard.getLastGenerateTime() != null) {
//                    generateDate = DateUtils.dateToLocalDate(standard.getLastGenerateTime());
//                }
                //加周期
                do {
                    //初始日期设置的比较早,或任务长时间没执行,必须周期到今天才会生成工单
                    generateDate = generateDate.plusDays(standard.getMaintenancePeriod());
                } while (now.isAfter(generateDate));
                if(!now.isEqual(generateDate)) {
                    //还未到生成日期,跳过执行
                    continue;
                }
//                do {
//                    //初始日期设置的比较早,或任务长时间没执行,必须周期到今天才会生成工单
//                    generateDate = generateDate.plusDays(standard.getMaintenancePeriod());
//                } while (now.isAfter(generateDate));
//                if(!now.isEqual(generateDate)) {
//                    //还未到生成日期,跳过执行
//                    continue;
//                }
                //获取保养项明细
                List<EamMaintenanceStandardDetail> standardDetailList = eamMaintenanceStandardDetailService.selectByStandardId(standard.getId());
                if(CollectionUtil.isEmpty(standardDetailList)) {
@@ -105,7 +105,7 @@
                EamThirdMaintenanceRequest request = new EamThirdMaintenanceRequest();
                request.setEquipmentId(standard.getEquipmentId());
                request.setStandardId(standard.getId());
                request.setMaintenanceDate(DateUtils.localDateToDate(generateDate));
//                request.setMaintenanceDate(DateUtils.localDateToDate(generateDate));
                String codeSeq = businessCodeRuleService.generateBusinessCodeSeq(BusinessCodeConst.THIRD_MAINTENANCE_CODE_RULE);
                request.setOrderNum(codeSeq);
                request.setCreationMethod(OrderCreationMethodEnum.AUTO.name());
@@ -138,7 +138,7 @@
                }
                eamThirdMaintenanceOrderService.addMaintenance(request);
                standard.setLastGenerateTime(new Date());
//                standard.setLastGenerateTime(new Date());
                eamMaintenanceStandardService.updateById(standard);
            }
            quartzLog.setIsSuccess(0);
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/WeekMaintenanceOrderGenerateJob.java
@@ -85,9 +85,9 @@
                    standard.setInitialDate(DateUtils.localDateToDate(now.minusDays(1)));
                }
                LocalDate generateDate = DateUtils.dateToLocalDate(standard.getInitialDate());
                if (standard.getLastGenerateTime() != null) {
                    generateDate = DateUtils.dateToLocalDate(standard.getLastGenerateTime());
                }
//                if (standard.getLastGenerateTime() != null) {
//                    generateDate = DateUtils.dateToLocalDate(standard.getLastGenerateTime());
//                }
                //加周期
                do {
                    //初始日期设置的比较早,或任务长时间没执行,必须周期到今天才会生成工单
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamMaintenanceStandardMapper.xml
@@ -2,7 +2,8 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.eam.mapper.EamMaintenanceStandardMapper">
    <select id="queryPageList" resultType="org.jeecg.modules.eam.entity.EamMaintenanceStandard">
        select ems.*, e.equipment_code, e.equipment_name
        select ems.*, e.equipment_code, e.equipment_name,
               e.equipment_model
        from eam_maintenance_standard ems
        inner join eam_equipment e
        on ems.equipment_id = e.id
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamMaintenanceStandardRequest.java
@@ -7,6 +7,7 @@
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.api.vo.FileUploadResult;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecg.modules.eam.entity.EamMaintenanceStandardDetail;
import org.springframework.format.annotation.DateTimeFormat;
@@ -52,12 +53,12 @@
    /**文件编号*/
    @ApiModelProperty(value = "文件编号")
    private String fileCode;
    /**参考文件*/
    @ApiModelProperty(value = "参考文件")
    private String referenceFile;
    /**上传文件对系*/
    @ApiModelProperty(value = "上传文件对象")
    private List<FileUploadResult> fileList;
    /**
     * ä¿å…»å‘¨æœŸå•位
     */
    @ApiModelProperty(value = "保养周期单位")
    @Dict(dicCode = "period_unit")
    private String periodUnit;
    /**列表 ä¿å…»é¡¹æ˜Žç»†*/
    @ApiModelProperty(value = "列表 ä¿å…»é¡¹æ˜Žç»†")
    private List<EamMaintenanceStandardDetail> tableDetailList;
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamMaintenanceStandardService.java
@@ -3,8 +3,10 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.eam.entity.EamMaintenanceStandard;
import org.jeecg.modules.eam.request.EamMaintenanceStandardRequest;
import org.jeecg.modules.eam.vo.EamMaintenanceStandardVo;
import java.util.List;
@@ -64,4 +66,20 @@
     * @return
     */
    List<EamMaintenanceStandard> queryListByCategory(String maintenanceCategory);
    /**
     * æµç¨‹å¯åЍ,保存对应的数据
     * @param id
     * @return
     */
    Result<?> saveEamMaintenanceStandardProcess(String id);
    /**
     * å®¡æ‰¹æ“ä½œ
     * @param eamMaintenanceStandardVo
     * @return
     */
    Result<?> auditEamMaintenanceStandard(EamMaintenanceStandardVo eamMaintenanceStandardVo);
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java
@@ -166,17 +166,6 @@
            });
            eamInspectionOrderDetailService.saveBatch(eamInspectionOrderRequest.getTableDetailList());
        }
        //处理附件
        if (CollectionUtil.isNotEmpty(eamInspectionOrderRequest.getFileList())) {
            FileUploadResult fileUploadResult = eamInspectionOrderRequest.getFileList().get(0);
            ObjectMapper mapper = new ObjectMapper();
            try {
                String referenceFile = mapper.writeValueAsString(fileUploadResult);
                eamInspectionOrder.setImageFiles(referenceFile);
            } catch (JsonProcessingException e) {
                log.error("JSON转换失败:" + e.getMessage(), e);
            }
        }
        if (StrUtil.isNotBlank(eamInspectionOrderRequest.getOperator())) {
            triggerProcess(eamInspectionOrder);
        }
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java
@@ -1,35 +1,55 @@
package org.jeecg.modules.eam.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.flowable.engine.TaskService;
import org.flowable.task.api.Task;
import org.jeecg.common.api.vo.FileUploadResult;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.constant.CommonConstant;
import org.jeecg.common.exception.JeecgBootException;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.modules.eam.base.entity.BaseFactory;
import org.jeecg.modules.eam.base.entity.BaseFactoryUser;
import org.jeecg.modules.eam.base.service.IBaseFactoryService;
import org.jeecg.modules.eam.base.service.IBaseFactoryUserService;
import org.jeecg.modules.eam.constant.BusinessCodeConst;
import org.jeecg.modules.eam.constant.MaintenanceStandardStatusEnum;
import org.jeecg.modules.eam.entity.EamEquipment;
import org.jeecg.modules.eam.entity.EamMaintenanceStandard;
import org.jeecg.modules.eam.entity.EamMaintenanceStandardDetail;
import org.jeecg.modules.eam.mapper.EamMaintenanceStandardMapper;
import org.jeecg.modules.eam.request.EamMaintenanceStandardRequest;
import org.jeecg.modules.eam.service.IEamEquipmentService;
import org.jeecg.modules.eam.service.IEamMaintenanceStandardDetailService;
import org.jeecg.modules.eam.service.IEamMaintenanceStandardService;
import org.jeecg.modules.eam.vo.EamMaintenanceStandardVo;
import org.jeecg.modules.flowable.apithird.business.entity.FlowMyBusiness;
import org.jeecg.modules.flowable.apithird.business.service.IFlowMyBusinessService;
import org.jeecg.modules.flowable.apithird.service.FlowCallBackServiceI;
import org.jeecg.modules.flowable.apithird.service.FlowCommonService;
import org.jeecg.modules.flowable.service.IFlowDefinitionService;
import org.jeecg.modules.flowable.service.IFlowTaskService;
import org.jeecg.modules.system.service.ISysUserService;
import org.jeecg.modules.system.vo.UserSelector;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.*;
import java.util.stream.Collectors;
/**
@@ -38,15 +58,31 @@
 * @Date:   2025-03-26
 * @Version: V1.0
 */
@Service
public class EamMaintenanceStandardServiceImpl extends ServiceImpl<EamMaintenanceStandardMapper, EamMaintenanceStandard> implements IEamMaintenanceStandardService {
@Service("IEamMaintenanceStandardService")
public class EamMaintenanceStandardServiceImpl extends ServiceImpl<EamMaintenanceStandardMapper, EamMaintenanceStandard> implements IEamMaintenanceStandardService , FlowCallBackServiceI {
    @Resource
    private EamMaintenanceStandardMapper eamMaintenanceStandardMapper;
    @Autowired
    private IEamMaintenanceStandardDetailService eamMaintenanceStandardDetailService;
    @Autowired
    private IBaseFactoryUserService baseFactoryUserService;
    @Autowired
    private IBaseFactoryService baseFactoryService;
    @Resource
    private FlowCommonService flowCommonService;
    @Resource
    private IFlowDefinitionService flowDefinitionService;
    @Autowired
    private IFlowTaskService flowTaskService;
    @Autowired
    private TaskService taskService;
    @Autowired
    private IFlowMyBusinessService flowMyBusinessService;
    @Autowired
    private ISysUserService sysUserService;
    @Autowired
    private IEamEquipmentService eamEquipmentService;
    @Override
    public IPage<EamMaintenanceStandard> queryPageList(Page<EamMaintenanceStandard> page, EamMaintenanceStandard eamMaintenanceStandard) {
        QueryWrapper<EamMaintenanceStandard> queryWrapper = new QueryWrapper<>();
@@ -56,13 +92,19 @@
        if (sysUser == null) {
            return page;
        }
        if (StringUtils.isNotBlank(sysUser.getEquipmentIds())) {
        if (StringUtils.isNotBlank(sysUser.getEamEquipmentIds())) {
            //选择了设备,根据设备id过滤设备
            List<String> equipArr = Arrays.asList(sysUser.getEquipmentIds().split(","));
            List<String> equipArr = Arrays.asList(sysUser.getEamEquipmentIds().split(","));
            queryWrapper.in("e.equipment_code", equipArr);
        } else {
            //没有选择设备,根据车间过滤设备
            queryWrapper.exists("select 1 from mdc_user_production t where t.user_id={0} and t.pro_id=e.org_id ", sysUser.getId());
            //没有选择设备,根据中心过滤设备
            List<BaseFactoryUser> baseFactoryUserList=baseFactoryUserService.
                    list(new LambdaQueryWrapper<BaseFactoryUser>().eq(BaseFactoryUser::getUserId,sysUser.getId()));
            if(!CollectionUtils.isEmpty(baseFactoryUserList)){
                List<String> factoryIds = baseFactoryUserList.stream().map(BaseFactoryUser::getFactoryId).collect(Collectors.toList());
                List<String> factoryCode= baseFactoryService.listByIds(factoryIds).stream().map(BaseFactory::getFactoryCode).collect(Collectors.toList());
                queryWrapper.in("e.factory_code", factoryCode);
            }
        }
        if(eamMaintenanceStandard != null) {
            //编码 æ¨¡ç³ŠæŸ¥è¯¢
@@ -71,7 +113,7 @@
            }
            //名称 æ¨¡ç³ŠæŸ¥è¯¢
            if(StringUtils.isNotBlank(eamMaintenanceStandard.getStandardName())) {
                queryWrapper.like("ems.standard_name", eamMaintenanceStandard.getStandardCode());
                queryWrapper.like("ems.standard_name", eamMaintenanceStandard.getStandardName());
            }
            //设备
            if(StringUtils.isNotBlank(eamMaintenanceStandard.getEquipmentId())) {
@@ -100,13 +142,8 @@
    @Transactional(rollbackFor = Exception.class)
    public boolean addMaintenanceStandard(EamMaintenanceStandardRequest standardRequest) {
        EamMaintenanceStandard entity = new EamMaintenanceStandard();
        entity.setStandardCode(standardRequest.getStandardCode());
        entity.setStandardName(standardRequest.getStandardName());
        entity.setMaintenanceCategory(standardRequest.getMaintenanceCategory());
        entity.setMaintenancePeriod(standardRequest.getMaintenancePeriod());
        entity.setInitialDate(standardRequest.getInitialDate());
        entity.setFileCode(standardRequest.getFileCode());
        entity.setStandardStatus(MaintenanceStandardStatusEnum.NORMAL.name());
        BeanUtils.copyProperties(standardRequest, entity);
        entity.setStandardStatus(MaintenanceStandardStatusEnum.WAIT_SUBMIT.name());
        //版本递增
        entity.setStandardVersion(CommonConstant.OPERATE_TYPE_1);
        //设备处理
@@ -117,17 +154,6 @@
        EamMaintenanceStandard exist = checkDuplicate(entity.getEquipmentId(), entity.getMaintenanceCategory());
        if(exist != null){
            throw new JeecgBootException("设备标准已存在,不能重复添加!");
        }
        //处理附件
        if(CollectionUtil.isNotEmpty(standardRequest.getFileList())) {
            FileUploadResult fileUploadResult = standardRequest.getFileList().get(0);
            ObjectMapper mapper = new ObjectMapper();
            try {
                String referenceFile = mapper.writeValueAsString(fileUploadResult);
                entity.setReferenceFile(referenceFile);
            } catch (JsonProcessingException e) {
                log.error("JSON转换失败:" + e.getMessage(), e);
            }
        }
        eamMaintenanceStandardMapper.insert(entity);
        //处理明细数据
@@ -149,20 +175,6 @@
        }
        entity.setStandardName(standardRequest.getStandardName());
        entity.setMaintenancePeriod(standardRequest.getMaintenancePeriod());
        entity.setFileCode(standardRequest.getFileCode());
        //处理附件
        if(CollectionUtil.isNotEmpty(standardRequest.getFileList())) {
            FileUploadResult fileUploadResult = standardRequest.getFileList().get(0);
            ObjectMapper mapper = new ObjectMapper();
            try {
                String referenceFile = mapper.writeValueAsString(fileUploadResult);
                entity.setReferenceFile(referenceFile);
            } catch (JsonProcessingException e) {
                log.error("JSON转换失败:" + e.getMessage(), e);
            }
        }else {
            entity.setReferenceFile(null);
        }
        eamMaintenanceStandardMapper.updateById(entity);
        //处理详情
        if(CollectionUtil.isNotEmpty(standardRequest.getTableDetailList())) {
@@ -208,8 +220,7 @@
        newEntity.setMaintenanceCategory(standardRequest.getMaintenanceCategory());
        newEntity.setMaintenancePeriod(standardRequest.getMaintenancePeriod());
        newEntity.setInitialDate(standardRequest.getInitialDate());
        newEntity.setFileCode(standardRequest.getFileCode());
        newEntity.setStandardStatus(MaintenanceStandardStatusEnum.NORMAL.name());
        newEntity.setStandardStatus(MaintenanceStandardStatusEnum.WAIT_SUBMIT.name());
        //版本递增
        newEntity.setStandardVersion(entity.getStandardVersion() + 1);
        //设备处理
@@ -220,17 +231,6 @@
        EamMaintenanceStandard exist = checkDuplicate(newEntity.getEquipmentId(), newEntity.getMaintenanceCategory());
        if(exist != null){
            throw new JeecgBootException("设备标准已存在,不能重复添加!");
        }
        //处理附件
        if(CollectionUtil.isNotEmpty(standardRequest.getFileList())) {
            FileUploadResult fileUploadResult = standardRequest.getFileList().get(0);
            ObjectMapper mapper = new ObjectMapper();
            try {
                String referenceFile = mapper.writeValueAsString(fileUploadResult);
                newEntity.setReferenceFile(referenceFile);
            } catch (JsonProcessingException e) {
                log.error("JSON转换失败:" + e.getMessage(), e);
            }
        }
        eamMaintenanceStandardMapper.insert(newEntity);
        //处理明细数据
@@ -254,7 +254,7 @@
        queryWrapper.eq(EamMaintenanceStandard::getEquipmentId, equipmentId);
        queryWrapper.eq(EamMaintenanceStandard::getMaintenanceCategory, maintenanceCategory);
        queryWrapper.eq(EamMaintenanceStandard::getDelFlag, CommonConstant.DEL_FLAG_0);
        queryWrapper.eq(EamMaintenanceStandard::getStandardStatus, MaintenanceStandardStatusEnum.NORMAL.name());
        queryWrapper.eq(EamMaintenanceStandard::getStandardStatus, MaintenanceStandardStatusEnum.WAIT_SUBMIT.name());
        queryWrapper.orderByDesc(EamMaintenanceStandard::getStandardVersion);
        List<EamMaintenanceStandard> list = eamMaintenanceStandardMapper.selectList(queryWrapper);
@@ -277,7 +277,7 @@
        query.setEquipmentId(equipmentId);
        query.setKeyword(keyword);
        query.setMaintenanceCategory(maintenanceCategory);
        query.setStandardStatus(MaintenanceStandardStatusEnum.NORMAL.name());
        query.setStandardStatus(MaintenanceStandardStatusEnum.WAIT_SUBMIT.name());
        IPage<EamMaintenanceStandard> pageData = this.queryPageList(page, query);
        return pageData.getRecords();
    }
@@ -287,7 +287,192 @@
        LambdaQueryWrapper<EamMaintenanceStandard> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper.eq(EamMaintenanceStandard::getDelFlag, CommonConstant.DEL_FLAG_0);
        queryWrapper.eq(EamMaintenanceStandard::getMaintenanceCategory, maintenanceCategory);
        queryWrapper.eq(EamMaintenanceStandard::getStandardStatus, MaintenanceStandardStatusEnum.NORMAL.name());
        queryWrapper.eq(EamMaintenanceStandard::getStandardStatus, MaintenanceStandardStatusEnum.WAIT_SUBMIT.name());
        return eamMaintenanceStandardMapper.selectList(queryWrapper);
    }
    /*流程业务代码--------------------------开始*/
    /**
     * æµç¨‹å¯åЍ,保存对应的数据
     * @param id
     * @return
     */
    @Override
    public Result<?> saveEamMaintenanceStandardProcess(String id){
        LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        EamMaintenanceStandard maintenanceStandard=this.getById(id);
        if (maintenanceStandard==null){
            return Result.error("未找到对应保养标准");
        }
        System.out.println("保养规范流程:" + maintenanceStandard.getId());
        flowCommonService.initActBusiness(maintenanceStandard.getStandardName()+"规范进行流程审核",
                maintenanceStandard.getId(), "IEamMaintenanceStandardService", "eam_maintenance_standard", null);
        Map<String, Object> variables = new HashMap<>();
        variables.put("dataId", maintenanceStandard.getId());
        variables.put("organization", "保养规范启动流程");
        variables.put("comment", "保养规范启动流程");
        variables.put("proofreading",true);
        Result result= flowDefinitionService.startProcessInstanceByKey("eam_maintenance_standard", variables);
        if (!result.isSuccess()) {
            super.removeById(maintenanceStandard.getId());
        }else {
            maintenanceStandard.setStandardStatus(MaintenanceStandardStatusEnum.WAIT_REPAIR_DIRECTOR.name());
            maintenanceStandard.setDesigner(user.getUsername());
            maintenanceStandard.setDesignTime(new Date());
            eamMaintenanceStandardMapper.updateById(maintenanceStandard);
            //获取flow的流程实例id,设置下一步的处理人员
            List<FlowMyBusiness> businessList = flowMyBusinessService.list(
                    new QueryWrapper<FlowMyBusiness>()
                            .eq("data_id", maintenanceStandard.getId())
            );
            if (businessList.isEmpty()) {
                return Result.error("流程记录不存在");
            }
            FlowMyBusiness flowMyBusiness = businessList.get(0);
            EamEquipment eamEquipment=eamEquipmentService.getById(maintenanceStandard.getEquipmentId());
            BaseFactory baseFactory=baseFactoryService.getOne(new QueryWrapper<BaseFactory>().eq("org_code", eamEquipment.getFactoryOrgCode()));
            List<UserSelector> userSelectorList=sysUserService.selectOperatorFactoryList(eamEquipment.getEquipmentCode(),baseFactory.getId(), BusinessCodeConst.PCR0007);
            if (!CollectionUtils.isEmpty(userSelectorList)) {
                List<String> usernameList=userSelectorList.stream().map(UserSelector::getUsername).collect(Collectors.toList());
                flowMyBusiness.setTodoUsers(JSON.toJSONString(usernameList));
                flowMyBusinessService.updateById(flowMyBusiness);
            }
        }
        return result;
    }
    /**
     * å®¡æ‰¹æ“ä½œ
     * @param eamMaintenanceStandardVo
     * @return
     */
    @Override
    public Result<?> auditEamMaintenanceStandard(EamMaintenanceStandardVo eamMaintenanceStandardVo){
        try {
            // å‚数校验
            if (StrUtil.isEmpty(eamMaintenanceStandardVo.getTaskId()) || StrUtil.isEmpty(eamMaintenanceStandardVo.getDataId())) {
                return Result.error("参数错误");
            }
            LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
            String userId = user.getId();
            eamMaintenanceStandardVo.setAssignee(user.getUsername());
            if (StrUtil.isEmpty(userId)) {
                return Result.error("未找到对应用户");
            }
            // æ•°æ®æŸ¥è¯¢
            EamMaintenanceStandard eamMaintenanceStandard = this.getById(eamMaintenanceStandardVo.getDataId());
            if (eamMaintenanceStandard == null) {
                return Result.error("未找到对应保养标准");
            }
            // 2. æŸ¥è¯¢æµç¨‹ä¸šåŠ¡è®°å½•ï¼ˆå¤„ç†ç©ºç»“æžœï¼‰
            List<FlowMyBusiness> businessList = flowMyBusinessService.list(
                    new QueryWrapper<FlowMyBusiness>()
                            .eq("process_instance_id", eamMaintenanceStandardVo.getInstanceId())
            );
            if (businessList.isEmpty()) {
                return Result.error("流程记录不存在");
            }
            FlowMyBusiness flowMyBusiness = businessList.get(0);
            // 3. æ ¡éªŒç”¨æˆ·æ˜¯å¦ä¸ºå€™é€‰å¤„理人
            List<String> todoUsers = JSON.parseArray(flowMyBusiness.getTodoUsers(), String.class);
            if (todoUsers == null || !todoUsers.contains(user.getUsername())) {
                return Result.error("用户无权操作此任务");
            }
            // 4. è®¤é¢†ä»»åŠ¡ï¼ˆå¤„ç†å·²è¢«è®¤é¢†çš„æƒ…å†µï¼‰
            String taskId = flowMyBusiness.getTaskId();
            Task task = taskService.createTaskQuery().taskId(taskId).singleResult();
            if (task == null) {
                return Result.error("任务不存在或已完成");
            }
            if (task.getAssignee() != null && !task.getAssignee().equals(user.getUsername())) {
                return Result.error("任务已被他人认领");
            }
            taskService.claim(taskId, user.getUsername());
            // è®¾ç½®æµç¨‹å˜é‡
            Map<String, Object> values = setProcessVariables(eamMaintenanceStandard, userId, eamMaintenanceStandardVo);
            eamMaintenanceStandardVo.setValues(values);
            // å®Œæˆæµç¨‹ä»»åŠ¡
            Result result = flowTaskService.complete(eamMaintenanceStandardVo);
            if (result.isSuccess()) {
                if (eamMaintenanceStandardVo.getRepairManagerApproveResult() != null) {
                    if (eamMaintenanceStandardVo.getRepairManagerApproveResult().equals("1")){
                        eamMaintenanceStandard.setStandardStatus(MaintenanceStandardStatusEnum.WAIT_TECHNICAL_DIRECTOR.name());
                    }else {
                        eamMaintenanceStandard.setStandardStatus(MaintenanceStandardStatusEnum.WAIT_SUBMIT.name());
                    }
                    eamMaintenanceStandard.setRepairManager(user.getUsername());
                    eamMaintenanceStandard.setRepairManagerApproveResult(eamMaintenanceStandardVo.getRepairManagerApproveResult());
                    eamMaintenanceStandard.setRepairManagerApproveTime(new Date());
                    eamMaintenanceStandard.setRepairManagerApproveComment(eamMaintenanceStandardVo.getComment());
                }
                if (eamMaintenanceStandardVo.getTechnicalManagerApproveResult() != null) {
                    if (eamMaintenanceStandardVo.getTechnicalManagerApproveResult().equals("1")){
                        eamMaintenanceStandard.setStandardStatus(MaintenanceStandardStatusEnum.START.name());
                    }else {
                        eamMaintenanceStandard.setStandardStatus(MaintenanceStandardStatusEnum.WAIT_SUBMIT.name());
                    }
                    eamMaintenanceStandard.setTechnicalManager(user.getUsername());
                    eamMaintenanceStandard.setTechnicalManagerApproveResult(eamMaintenanceStandardVo.getTechnicalManagerApproveResult());
                    eamMaintenanceStandard.setTechnicalManagerApproveTime(new Date());
                    eamMaintenanceStandard.setTechnicalManagerApproveComment(eamMaintenanceStandardVo.getComment());
                }
                this.updateById(eamMaintenanceStandard);
            } else {
                return result;
            }
            return Result.OK("操作成功");
        } catch (Exception e) {
            return Result.error("操作失败:" + e.getMessage());
        }
    }
    private Map<String, Object> setProcessVariables(EamMaintenanceStandard eamMaintenanceStandard, String userId, EamMaintenanceStandardVo eamMaintenanceStandardVo) {
        Map<String, Object> values = new HashMap<>();
        values.put("dataId", eamMaintenanceStandard.getId());
        values.put("assignee", userId);
        values.put("organization", eamMaintenanceStandardVo.getComment());
        values.put("comment", eamMaintenanceStandardVo.getComment());
        if (eamMaintenanceStandardVo.getRepairManagerApproveResult() != null) {
            values.put("repairManagerApproveResult", eamMaintenanceStandardVo.getRepairManagerApproveResult());
        }
        if (eamMaintenanceStandardVo.getTechnicalManagerApproveResult() != null) {
            values.put("technicalManagerApproveResult", eamMaintenanceStandardVo.getTechnicalManagerApproveResult());
        }
        return values;
    }
    @Override
    public void afterFlowHandle(FlowMyBusiness business) {
        business.getTaskNameId();//接下来审批的节点
        business.getValues();//前端传进来的参数
        business.getActStatus();
    }
    @Override
    public Object getBusinessDataById(String dataId) {
        return this.getById(dataId);
    }
    @Override
    public Map<String, Object> flowValuesOfTask(String taskNameId, Map<String, Object> values) {
        return null;
    }
    @Override
    public List<String> flowCandidateUsernamesOfTask(String taskNameId, Map<String, Object> values) {
        //业务是否干预流程,业务干预,流程干预,指定人员进行处理
        return null;
    }
    /*流程业务代码--------------------------结束*/
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/vo/EamMaintenanceStandardVo.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,95 @@
package org.jeecg.modules.eam.vo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecg.modules.flowable.domain.vo.FlowTaskVo;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
/**
 * @Description: ä¿å…»æ ‡å‡†
 * @Author: jeecg-boot
 * @Date: 2025-03-26
 * @Version: V1.0
 */
@Data
@ApiModel(description = "保养标准---工作流相关")
public class EamMaintenanceStandardVo extends FlowTaskVo {
    /**
     * ç¼–制人
     */
    @ApiModelProperty(value = "编制人")
    private String designer;
    /**
     * ç¼–制日期
     */
    @ApiModelProperty(value = "编制日期")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date designTime;
    /**
     * ç»´ä¿®ä¸»ä»»
     */
    @ApiModelProperty(value = "维修主任")
    private String repairManager;
    /**
     * ç»´ä¿®ä¸»ä»»å®¡æ‰¹ç»“æžœ
     */
    @ApiModelProperty(value = "维修主任审批结果")
    private String repairManagerApproveResult;
    /**
     * ç»´ä¿®ä¸»ä»»å®¡æ‰¹æ—¶é—´
     */
    @ApiModelProperty(value = "维修主任审批时间")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date repairManagerApproveTime;
    /**
     * ç»´ä¿®ä¸»ä»»å®¡æ‰¹æ„è§
     */
    @ApiModelProperty(value = "维修主任审批意见")
    private String repairManagerApproveComment;
    /**
     * æŠ€æœ¯ä¸»ç®¡
     */
    @ApiModelProperty(value = "技术主管")
    private String technicalManager;
    /**
     * æŠ€æœ¯ä¸»ç®¡å®¡æ‰¹ç»“æžœ
     */
    @ApiModelProperty(value = "技术主管审批结果")
    private String technicalManagerApproveResult;
    /**
     * æŠ€æœ¯ä¸»ç®¡å®¡æ‰¹æ—¶é—´
     */
    @ApiModelProperty(value = "技术主管审批时间")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date technicalManagerApproveTime;
    /**
     * æŠ€æœ¯ä¸»ç®¡å®¡æ‰¹æ„è§
     */
    @ApiModelProperty(value = "技术主管审批意见")
    private String technicalManagerApproveComment;
    //列表展示
    @TableField(exist = false)
    private String equipmentCode;
    @TableField(exist = false)
    private String equipmentName;
    @TableField(exist = false)
    private String keyword;
    @TableField(exist = false)
    private String equipmentModel;
}
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysUserController.java
@@ -29,6 +29,7 @@
import org.jeecg.modules.system.entity.*;
import org.jeecg.modules.system.model.DepartIdModel;
import org.jeecg.modules.system.model.ProductionIdModel;
import org.jeecg.modules.system.model.RepairDepartIdModel;
import org.jeecg.modules.system.model.SysUserSysDepartModel;
import org.jeecg.modules.system.service.*;
import org.jeecg.modules.system.vo.SysDepartUsersVO;
@@ -99,6 +100,9 @@
    @Resource
    private IMdcUserProductionService userProductionService;
    @Resource
    private IEamBaseRepairDepartUserService eamBaseRepairDepartUserService;
    /**
     * èŽ·å–ç”¨æˆ·åˆ—è¡¨æ•°æ®
     *
@@ -158,9 +162,11 @@
        if (userIds != null && userIds.size() > 0) {
            Map<String, String> useDepNames = sysUserService.getDepNamesByUserIds(userIds);
            Map<String, String> useProNames = sysUserService.getProNamesByUserIds(userIds);
            Map<String, String> useRepDepNames = sysUserService.getRepDepNamesByUserIds(userIds);
            pageList.getRecords().forEach(item -> {
                item.setOrgCodeTxt(useDepNames.get(item.getId()));
                item.setProductionName(useProNames.get(item.getId()));
                item.setRepairDepartName(useRepDepNames.get(item.getId()));
            });
        }
        result.setSuccess(true);
@@ -177,6 +183,7 @@
        String selectedRoles = jsonObject.getString("selectedroles");
        String selectedDeparts = jsonObject.getString("selecteddeparts");
        String selectedProductions = jsonObject.getString("selectedProduction");
        String selectedRepairDeparts = jsonObject.getString("selectedRepairDeparts");
        try {
            SysUser user = JSON.parseObject(jsonObject.toJSONString(), SysUser.class);
            user.setCreateTime(new Date());//设置创建时间
@@ -191,7 +198,7 @@
            //用户表字段org_code不能在这里设置他的值
            user.setOrgCode(null);
            // ä¿å­˜ç”¨æˆ·èµ°ä¸€ä¸ªservice ä¿è¯äº‹åŠ¡
            sysUserService.saveUser(user, selectedRoles, selectedDeparts, selectedProductions);
            sysUserService.saveUser(user, selectedRoles, selectedDeparts, selectedProductions, selectedRepairDeparts);
            baseCommonService.addLog("添加用户,username: " + user.getUsername(), CommonConstant.LOG_TYPE_2, 2);
            result.success("添加成功!");
        } catch (Exception e) {
@@ -219,6 +226,7 @@
                String roles = jsonObject.getString("selectedroles");
                String departs = jsonObject.getString("selecteddeparts");
                String productions = jsonObject.getString("selectedProduction");
                String repairDeparts = jsonObject.getString("selectedRepairDeparts");
                if (oConvertUtils.isEmpty(departs)) {
                    //vue3.0前端只传递了departIds
                    departs = user.getDepartIds();
@@ -226,10 +234,13 @@
                if (oConvertUtils.isNotEmpty(productions)) {
                    productions = user.getProductionIds();
                }
                if (oConvertUtils.isNotEmpty(repairDeparts)) {
                    repairDeparts = user.getRepairDepartIds();
                }
                //用户表字段org_code不能在这里设置他的值
                user.setOrgCode(null);
                // ä¿®æ”¹ç”¨æˆ·èµ°ä¸€ä¸ªservice ä¿è¯äº‹åŠ¡
                sysUserService.editUser(user, roles, departs, productions);
                sysUserService.editUser(user, roles, departs, productions, repairDeparts);
                result.success("修改成功!");
            }
        } catch (Exception e) {
@@ -423,6 +434,30 @@
        }
    }
    @AutoLog(value = "用户表-查询指定用户和维修部门关联的数据")
    @ApiOperation(value = "用户表-查询指定用户和维修部门关联的数据", notes = "用户表-查询指定用户和维修部门关联的数据")
    @GetMapping(value = "/userRepairDepartList")
    public Result<List<RepairDepartIdModel>> userRepairDepartList(@RequestParam(name = "userId", required = true) String userId) {
        Result<List<RepairDepartIdModel>> result = new Result<>();
        try {
            List<RepairDepartIdModel> repDepIdModelList = this.eamBaseRepairDepartUserService.queryRepairDepartIdsOfUser(userId);
            if (repDepIdModelList != null && !repDepIdModelList.isEmpty()) {
                result.setSuccess(true);
                result.setMessage("查找成功");
                result.setResult(repDepIdModelList);
            } else {
                result.setSuccess(false);
                result.setMessage("查找失败");
            }
            return result;
        } catch (Exception e) {
            log.error(e.getMessage(), e);
            result.setSuccess(false);
            result.setMessage("查找过程中出现了异常: " + e.getMessage());
            return result;
        }
    }
    /**
     * ç”Ÿæˆåœ¨æ·»åŠ ç”¨æˆ·æƒ…å†µä¸‹æ²¡æœ‰ä¸»é”®çš„é—®é¢˜,返回给前端,根据该id绑定部门数据
     *
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/EamBaseRepairDepart.java
ÎļþÃû´Ó lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/entity/EamBaseRepairDepart.java ÐÞ¸Ä
@@ -1,4 +1,4 @@
package org.jeecg.modules.eam.base.entity;
package org.jeecg.modules.system.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/EamBaseRepairDepartUser.java
ÎļþÃû´Ó lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/entity/EamBaseRepairDepartUser.java ÐÞ¸Ä
@@ -1,4 +1,4 @@
package org.jeecg.modules.eam.base.entity;
package org.jeecg.modules.system.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysUser.java
@@ -105,6 +105,9 @@
    /**产线名称*/
    private transient String productionName;
    /**维修部门名称*/
    private transient String repairDepartName;
    /**
     * çŠ¶æ€(1:正常  2:冻结 ï¼‰
     */
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/EamBaseRepairDepartMapper.java
ÎļþÃû´Ó lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/EamBaseRepairDepartMapper.java ÐÞ¸Ä
@@ -1,9 +1,9 @@
package org.jeecg.modules.eam.base.mapper;
package org.jeecg.modules.system.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.jeecg.modules.eam.base.entity.EamBaseRepairDepart;
import org.jeecg.modules.system.entity.EamBaseRepairDepart;
import java.util.List;
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/EamBaseRepairDepartUserMapper.java
ÎļþÃû´Ó lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/EamBaseRepairDepartUserMapper.java ÐÞ¸Ä
@@ -1,8 +1,8 @@
package org.jeecg.modules.eam.base.mapper;
package org.jeecg.modules.system.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.eam.base.entity.EamBaseRepairDepartUser;
import org.jeecg.modules.system.entity.EamBaseRepairDepartUser;
import java.util.List;
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysUserMapper.java
@@ -8,6 +8,7 @@
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.system.entity.SysUser;
import org.jeecg.modules.system.model.SysUserSysDepartModel;
import org.jeecg.modules.system.vo.EamUserRepDepVo;
import org.jeecg.modules.system.vo.MdcUserProVo;
import org.jeecg.modules.system.vo.SysUserDepVo;
@@ -193,4 +194,9 @@
    List<SysUser> getEquipmentAdmin(@Param("roleCode") String roleCode, @Param("equipmentId") String equipmentId);
    List<SysUser> getUserByRoleCodeList(@Param("roleCodeList") List<String> roleCodeList);
    /**
     * æ ¹æ®ç”¨æˆ·Ids,查询用户所属维修部门名称信息
     */
    List<EamUserRepDepVo> getRepDepNamesByUserIds(@Param("userIds") List<String> userIds);
}
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/EamBaseRepairDepartMapper.xml
ÎļþÃû´Ó lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/xml/EamBaseRepairDepartMapper.xml ÐÞ¸Ä
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.eam.base.mapper.EamBaseRepairDepartMapper">
<mapper namespace="org.jeecg.modules.system.mapper.EamBaseRepairDepartMapper">
    <!--递归查询所有子节点-->
    <select id="recursionChildren" resultType="java.lang.String">
@@ -32,7 +32,7 @@
        SELECT TOP 1 t2.id id FROM mdc_user_maintain t1 LEFT JOIN sys_maintain_depart t2 ON t1.pro_id = t2.id WHERE t1.user_id = #{userId} AND t2.org_type = '3'
    </select>
    <select id="findMaintainList" resultType="org.jeecg.modules.eam.base.entity.EamBaseRepairDepart">
    <select id="findMaintainList" resultType="org.jeecg.modules.system.entity.EamBaseRepairDepart">
        SELECT
            t1.*
        FROM
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/EamBaseRepairDepartUserMapper.xml
ÎļþÃû´Ó lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/xml/EamBaseRepairDepartUserMapper.xml ÐÞ¸Ä
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.eam.base.mapper.EamBaseRepairDepartUserMapper">
<mapper namespace="org.jeecg.modules.system.mapper.EamBaseRepairDepartUserMapper">
    <!--根据指定用户id查询产线id集合-->
    <select id="queryRepairDepartIdsByUserId" resultType="java.lang.String">
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysUserMapper.xml
@@ -236,4 +236,12 @@
            and username = #{username}
        </if>
    </select>
    <!-- æŸ¥è¯¢ç”¨æˆ·çš„æ‰€å±žäº§çº¿åç§°ä¿¡æ¯ -->
    <select id="getRepDepNamesByUserIds" resultType="org.jeecg.modules.system.vo.EamUserRepDepVo">
        SELECT t2.depart_name repairDepartName, t1.user_id FROM eam_base_repair_depart_user t1, eam_base_repair_depart t2 WHERE t2.id = t1.depart_id AND t1.user_id IN
        <foreach collection="userIds" index="index" item="id" open="(" separator="," close=")">
            #{id}
        </foreach>
    </select>
</mapper>
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/model/EamBaseRepairDepartTreeModel.java
ÎļþÃû´Ó lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/model/EamBaseRepairDepartTreeModel.java ÐÞ¸Ä
@@ -1,10 +1,10 @@
package org.jeecg.modules.eam.base.model;
package org.jeecg.modules.system.model;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.modules.eam.base.entity.EamBaseRepairDepart;
import org.jeecg.modules.system.entity.EamBaseRepairDepart;
import java.io.Serializable;
import java.util.ArrayList;
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/model/RepairDepartIdModel.java
ÎļþÃû´Ó lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/model/RepairDepartIdModel.java ÐÞ¸Ä
@@ -1,9 +1,9 @@
package org.jeecg.modules.eam.base.model;
package org.jeecg.modules.system.model;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.modules.eam.base.entity.EamBaseRepairDepart;
import org.jeecg.modules.system.entity.EamBaseRepairDepart;
import java.io.Serializable;
import java.util.ArrayList;
@@ -56,10 +56,10 @@
     *
     * @return
     */
    public RepairDepartIdModel convertByUserMaintainDepart(EamBaseRepairDepart mdcMaintainDepart) {
        this.key = mdcMaintainDepart.getId();
        this.value = mdcMaintainDepart.getId();
        this.title = mdcMaintainDepart.getDepartName();
    public RepairDepartIdModel convertByUserRepairDepart(EamBaseRepairDepart eamBaseRepairDepart) {
        this.key = eamBaseRepairDepart.getId();
        this.value = eamBaseRepairDepart.getId();
        this.title = eamBaseRepairDepart.getDepartName();
        return this;
    }
}
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/IEamBaseRepairDepartService.java
ÎļþÃû´Ó lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/IEamBaseRepairDepartService.java ÐÞ¸Ä
@@ -1,9 +1,9 @@
package org.jeecg.modules.eam.base.service;
package org.jeecg.modules.system.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.eam.base.entity.EamBaseRepairDepart;
import org.jeecg.modules.eam.base.model.EamBaseRepairDepartTreeModel;
import org.jeecg.modules.eam.base.model.RepairDepartIdModel;
import org.jeecg.modules.system.entity.EamBaseRepairDepart;
import org.jeecg.modules.system.model.EamBaseRepairDepartTreeModel;
import org.jeecg.modules.system.model.RepairDepartIdModel;
import java.util.List;
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/IEamBaseRepairDepartUserService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,26 @@
package org.jeecg.modules.system.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.system.entity.EamBaseRepairDepartUser;
import org.jeecg.modules.system.model.RepairDepartIdModel;
import java.util.List;
/**
 * @Author: Lius
 * @CreateTime: 2025-07-03
 * @Description: ç”¨æˆ·ç»´ä¿®éƒ¨é—¨/班组
 */
public interface IEamBaseRepairDepartUserService extends IService<EamBaseRepairDepartUser> {
    /**
     * æ ¹æ®æŒ‡å®šç”¨æˆ·id查询产线信息
     */
    List<RepairDepartIdModel> queryRepairDepartIdsOfUser(String userId);
//    /**
//     * æ ¹æ®æŒ‡å®šç”¨æˆ·id查询产线id集合
//     */
//    List<String> queryProductionIdsByUserId(String userId);
}
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysUserService.java
@@ -288,8 +288,9 @@
     * @param selectedRoles é€‰æ‹©çš„角色id,多个以逗号隔开
     * @param selectedDeparts é€‰æ‹©çš„部门id,多个以逗号隔开
     * @param selectedProductions é€‰æ‹©çš„产线id,多个以逗号隔开
     * @param selectedRepairDeparts é€‰æ‹©çš„维修部门id,多个以逗号隔开
     */
    void saveUser(SysUser user, String selectedRoles, String selectedDeparts, String selectedProductions);
    void saveUser(SysUser user, String selectedRoles, String selectedDeparts, String selectedProductions, String selectedRepairDeparts);
    /**
     * ç¼–辑用户
@@ -297,8 +298,9 @@
     * @param roles é€‰æ‹©çš„角色id,多个以逗号隔开
     * @param departs é€‰æ‹©çš„部门id,多个以逗号隔开
     * @param productions é€‰æ‹©çš„产线id,多个以逗号隔开
     * @param repairDeparts é€‰æ‹©çš„维修部门id,多个以逗号隔开
     */
    void editUser(SysUser user, String roles, String departs, String productions);
    void editUser(SysUser user, String roles, String departs, String productions, String repairDeparts);
    /**
     * userId转为username
@@ -319,6 +321,11 @@
     * æ ¹æ® userIds查询,查询用户所属产线的名称(多个产线名逗号隔开)
     */
    Map<String, String> getProNamesByUserIds(List<String> userIds);
    /**
     * æ ¹æ® userIds查询,查询用户所属产线的名称(多个产线名逗号隔开)
     */
    Map<String, String> getRepDepNamesByUserIds(List<String> userIds);
    /**
     * æ ¹æ®è§’色Id查询该角色下的所有用户信息,不分页
@@ -345,6 +352,15 @@
    /**
     * é€‰æ‹©ç”¨æˆ·
     * @param equipmentCode é€‰æ‹©çš„设备ID
     * @param factoryId é€‰æ‹©çš„车间ID
     * @param positionCode å²—位编号
     * @return
     */
    List<UserSelector> selectOperatorFactoryList(String equipmentCode, String factoryId, String positionCode);
    /**
     * é€‰æ‹©ç”¨æˆ·
     * @param positionCode å²—位编号
     * @return
     */
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/EamBaseRepairDepartImpl.java
ÎļþÃû´Ó lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/impl/EamBaseRepairDepartImpl.java ÐÞ¸Ä
@@ -1,4 +1,4 @@
package org.jeecg.modules.eam.base.service.impl;
package org.jeecg.modules.system.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -9,16 +9,16 @@
import org.jeecg.common.constant.FillRuleConstant;
import org.jeecg.common.util.FillRuleUtil;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.eam.base.entity.EamBaseRepairDepart;
import org.jeecg.modules.eam.base.entity.EamBaseRepairDepartUser;
import org.jeecg.modules.eam.base.mapper.EamBaseRepairDepartUserMapper;
import org.jeecg.modules.eam.base.service.IEamBaseRepairDepartService;
import org.jeecg.modules.eam.base.mapper.EamBaseRepairDepartMapper;
import org.jeecg.modules.eam.base.model.EamBaseRepairDepartTreeModel;
import org.jeecg.modules.eam.base.model.RepairDepartIdModel;
import org.jeecg.modules.eam.base.util.FindsRepairDepartsChildrenUtil;
import org.jeecg.modules.system.entity.EamBaseRepairDepart;
import org.jeecg.modules.system.entity.EamBaseRepairDepartUser;
import org.jeecg.modules.system.mapper.EamBaseRepairDepartMapper;
import org.jeecg.modules.system.mapper.EamBaseRepairDepartUserMapper;
import org.jeecg.modules.system.service.IEamBaseRepairDepartService;
import org.jeecg.modules.system.model.EamBaseRepairDepartTreeModel;
import org.jeecg.modules.system.model.RepairDepartIdModel;
import org.jeecg.modules.system.entity.SysUser;
import org.jeecg.modules.system.mapper.SysUserMapper;
import org.jeecg.modules.system.util.FindsRepairDepartsChildrenUtil;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/EamBaseRepairDepartUserServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,58 @@
package org.jeecg.modules.system.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.jeecg.modules.system.entity.EamBaseRepairDepart;
import org.jeecg.modules.system.entity.EamBaseRepairDepartUser;
import org.jeecg.modules.system.mapper.EamBaseRepairDepartUserMapper;
import org.jeecg.modules.system.model.RepairDepartIdModel;
import org.jeecg.modules.system.service.IEamBaseRepairDepartService;
import org.jeecg.modules.system.service.IEamBaseRepairDepartUserService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
/**
 * @Description: ç”¨æˆ·ç»´ä¿®éƒ¨é—¨/班组
 * @author: LiuS
 * @create: 2023-03-27 11:58
 */
@Service
public class EamBaseRepairDepartUserServiceImpl extends ServiceImpl<EamBaseRepairDepartUserMapper, EamBaseRepairDepartUser> implements IEamBaseRepairDepartUserService {
    @Resource
    private IEamBaseRepairDepartService eamBaseRepairDepartService;
    /**
     * æ ¹æ®ç”¨æˆ·id查询维修部门/班组信息
     */
    @Override
    public List<RepairDepartIdModel> queryRepairDepartIdsOfUser(String userId) {
        LambdaQueryWrapper<EamBaseRepairDepartUser> queryUserRepDep = new LambdaQueryWrapper<>();
        LambdaQueryWrapper<EamBaseRepairDepart> queryRepDep = new LambdaQueryWrapper<>();
        try {
            queryUserRepDep.eq(EamBaseRepairDepartUser::getUserId, userId);
            List<String> repRepDepIdList = new ArrayList<>();
            List<RepairDepartIdModel> repDepIdModelList = new ArrayList<>();
            List<EamBaseRepairDepartUser> userRepDepList = this.list(queryUserRepDep);
            if (userRepDepList != null && !userRepDepList.isEmpty()) {
                for (EamBaseRepairDepartUser eamBaseRepairDepartUser : userRepDepList) {
                    repRepDepIdList.add(eamBaseRepairDepartUser.getDepartId());
                }
                queryRepDep.in(EamBaseRepairDepart::getId, repRepDepIdList);
                List<EamBaseRepairDepart> repDepList = eamBaseRepairDepartService.list(queryRepDep);
                if (repDepList != null && !repDepList.isEmpty()) {
                    for (EamBaseRepairDepart eamBaseRepairDepart : repDepList) {
                        repDepIdModelList.add(new RepairDepartIdModel().convertByUserRepairDepart(eamBaseRepairDepart));
                    }
                }
                return repDepIdModelList;
            }
        } catch (Exception e) {
            e.fillInStackTrace();
        }
        return null;
    }
}
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java
@@ -25,6 +25,7 @@
import org.jeecg.modules.system.model.SysUserSysDepartModel;
import org.jeecg.modules.system.service.ISysDictService;
import org.jeecg.modules.system.service.ISysUserService;
import org.jeecg.modules.system.vo.EamUserRepDepVo;
import org.jeecg.modules.system.vo.MdcUserProVo;
import org.jeecg.modules.system.vo.SysUserDepVo;
import org.jeecg.modules.system.vo.UserSelector;
@@ -79,6 +80,8 @@
    SysRoleIndexMapper sysRoleIndexMapper;
    @Resource
    MdcUserProductionMapper mdcUserProductionMapper;
    @Resource
    EamBaseRepairDepartUserMapper eamBaseRepairDepartUserMapper;
    @Resource
    private ISysDictService sysDictService;
@@ -570,7 +573,7 @@
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void saveUser(SysUser user, String selectedRoles, String selectedDeparts, String selectedProductions) {
    public void saveUser(SysUser user, String selectedRoles, String selectedDeparts, String selectedProductions, String selectedRepairDeparts) {
        //step.1 ä¿å­˜ç”¨æˆ·
        this.save(user);
        //step.2 ä¿å­˜è§’色
@@ -597,12 +600,20 @@
                mdcUserProductionMapper.insert(mdcUserProduction);
            }
        }
        //step.5 ä¿å­˜æ‰€å±žç»´ä¿®éƒ¨é—¨
        if (oConvertUtils.isNotEmpty(selectedRepairDeparts)) {
            String[] arr = selectedRepairDeparts.split(",");
            for (String repairDepartId : arr) {
                EamBaseRepairDepartUser eamBaseRepairDepartUser = new EamBaseRepairDepartUser(user.getId(), repairDepartId);
                eamBaseRepairDepartUserMapper.insert(eamBaseRepairDepartUser);
            }
        }
    }
    @Override
    @Transactional(rollbackFor = Exception.class)
    @CacheEvict(value={CacheConstant.SYS_USERS_CACHE}, allEntries=true)
    public void editUser(SysUser user, String roles, String departs, String productions) {
    public void editUser(SysUser user, String roles, String departs, String productions, String repairDeparts) {
        //step.1 ä¿®æ”¹ç”¨æˆ·åŸºç¡€ä¿¡æ¯
        this.updateById(user);
        //step.2 ä¿®æ”¹è§’色
@@ -658,6 +669,19 @@
                mdcUserProductionMapper.insert(mdcUserProduction);
            }
        }
        //step.5 ä¿®æ”¹ç»´ä¿®éƒ¨é—¨
        String[] arrayRepDep = {};
        if(oConvertUtils.isNotEmpty(repairDeparts)){
            arrayRepDep = repairDeparts.split(",");
        }
        //先删后加
        eamBaseRepairDepartUserMapper.delete(new QueryWrapper<EamBaseRepairDepartUser>().lambda().eq(EamBaseRepairDepartUser::getUserId, user.getId()));
        if (oConvertUtils.isNotEmpty(repairDeparts)) {
            for (String repairDepartId : arrayRepDep) {
                EamBaseRepairDepartUser eamBaseRepairDepartUser = new EamBaseRepairDepartUser(user.getId(), repairDepartId);
                eamBaseRepairDepartUserMapper.insert(eamBaseRepairDepartUser);
            }
        }
        //step.5 ä¿®æ”¹æ‰‹æœºå·å’Œé‚®ç®±
        // æ›´æ–°æ‰‹æœºå·ã€é‚®ç®±ç©ºå­—符串为 null
        userMapper.updateNullByEmptyString("email");
@@ -704,6 +728,21 @@
        return res;
    }
    @Override
    public Map<String, String> getRepDepNamesByUserIds(List<String> userIds) {
        List<EamUserRepDepVo> list = this.baseMapper.getRepDepNamesByUserIds(userIds);
        Map<String, String> res = new HashMap<>(5);
        list.forEach(item -> {
            if (res.get(item.getUserId()) == null) {
                res.put(item.getUserId(), item.getRepairDepartName());
            } else {
                res.put(item.getUserId(), res.get(item.getUserId()) + "," + item.getRepairDepartName());
            }
        });
        return res;
    }
    // æ ¹æ®è§’色Id查询该角色下的所有用户信息
    @Override
    public List<SysUser> getAllUsersByRoleId(String roleId) {
@@ -752,6 +791,31 @@
        return collect;
    }
    /**
     * é€‰æ‹©ç”¨æˆ·
     * @param equipmentCode é€‰æ‹©çš„设备ID
     * @param factoryId é€‰æ‹©çš„工厂ID
     * @param positionCode å²—位编号
     * @return
     */
    @Override
    public List<UserSelector> selectOperatorFactoryList(String equipmentCode, String factoryId, String positionCode){
        LambdaQueryWrapper<SysUser> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper.eq(SysUser::getPost, positionCode);
//        if(StringUtils.isNotBlank(equipmentCode)) {
//            queryWrapper.and(q -> q.isNull(SysUser::getEquipmentIds).or().eq(SysUser::getEquipmentIds, "").or().like(SysUser::getEquipmentIds, equipmentCode));
//        }
//        if(StringUtils.isNotBlank(factoryId)) {
//            queryWrapper.exists("select 1 from eam_base_factory_user t where t.user_id=sys_user.id and t.factory_id={0}", factoryId);
//        }
        queryWrapper.eq(SysUser::getDelFlag, CommonConstant.DEL_FLAG_0);
        queryWrapper.eq(SysUser::getStatus, CommonConstant.DEL_FLAG_1);
        queryWrapper.orderByDesc(SysUser::getId);
        List<SysUser> sysUsers = userMapper.selectList(queryWrapper);
        List<UserSelector> collect = sysUsers.stream().map(user -> new UserSelector(user.getId(), user.getUsername(), user.getRealname())).collect(Collectors.toList());
        return collect;
    }
    @Override
    public List<UserSelector> selectOperatorList(String positionCode) {
        LambdaQueryWrapper<SysUser> queryWrapper = new LambdaQueryWrapper<>();
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/util/FindsRepairDepartsChildrenUtil.java
ÎļþÃû´Ó lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/util/FindsRepairDepartsChildrenUtil.java ÐÞ¸Ä
@@ -1,9 +1,9 @@
package org.jeecg.modules.eam.base.util;
package org.jeecg.modules.system.util;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.eam.base.entity.EamBaseRepairDepart;
import org.jeecg.modules.eam.base.model.EamBaseRepairDepartTreeModel;
import org.jeecg.modules.eam.base.model.RepairDepartIdModel;
import org.jeecg.modules.system.entity.EamBaseRepairDepart;
import org.jeecg.modules.system.model.EamBaseRepairDepartTreeModel;
import org.jeecg.modules.system.model.RepairDepartIdModel;
import java.util.ArrayList;
import java.util.List;
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/vo/EamUserRepDepVo.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
package org.jeecg.modules.system.vo;
import lombok.Data;
/**
 * @Author: Lius
 * @CreateTime: 2025-07-03
 * @Description:
 */
@Data
public class EamUserRepDepVo {
    private String userId;
    private String repairDepartName;
}