lyh
2025-06-10 5836788a6aabf60014a746b724607e3e965a0d86
Merge remote-tracking branch 'origin/master'
已修改52个文件
3422 ■■■■ 文件已修改
db/数据库产品化设计.pdma.json 2108 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-boot-base-core/src/main/java/org/jeecg/common/util/TranslateDictTextUtils.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/ReportRepairEnum.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamRepairOrder.java 98 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamReportRepair.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamRepairOrderMapper.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamReportRepairMapper.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamRepairOrderMapper.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamReportRepairMapper.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamRepairOrderQuery.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamRepairOrderRequest.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamReportRepairQuery.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamRepairOrderServiceImpl.java 357 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamReportRepairServiceImpl.java 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamSecondMaintenanceOrderServiceImpl.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/OutStoreDetailController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/ToolLedgerController.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/ToolLedgerDetailController.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/ToolSharpeningController.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/ToolsLossBoundController.java 24 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/ToolsStocktakingBoundController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/entity/ToolSharpening.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/entity/ToolsLossBoundDetail.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/OutStoreDetailMapper.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/ToolLedgerDetailMapper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/ToolLedgerMapper.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/ToolsLossBoundDetailMapper.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/ToolsSharpeningMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/ToolsStocktakingBoundDetailMapper.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/BaseToolsMapper.xml 55 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/InStoreDetailMapper.xml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/OutStoreDetailMapper.xml 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/ToolLedgerDetailMapper.xml 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/ToolLedgerMapper.xml 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/ToolsLossBoundDetailMapper.xml 74 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/ToolsSharpeningMapper.xml 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/ToolsStocktakingBoundDetailMapper.xml 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IOutStoreDetailService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IToolLedgerDetailService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IToolLedgerService.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IToolsLossBoundDetailService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IToolsSharpeningService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IToolsStocktakingBoundDetailService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/InboundOrderServiceImpl.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/OutStoreDetailServiceImpl.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/ToolLedgerDetailServiceImpl.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/ToolLedgerServiceImpl.java 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/ToolsLossBoundDetailServiceImpl.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/ToolsSharpeningServiceImpl.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/ToolsStocktakingBoundDetailServiceImpl.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
db/Êý¾Ý¿â²úÆ·»¯Éè¼Æ.pdma.json
@@ -4,7 +4,7 @@
  "avatar": "",
  "version": "4.9.2",
  "createdTime": "2025-3-10 16:38:19",
  "updatedTime": "2025-6-6 10:13:46",
  "updatedTime": "2025-6-9 10:59:32",
  "dbConns": [],
  "profile": {
    "default": {
@@ -632,7 +632,7 @@
      "#DDE5FF"
    ],
    "DDLToggleCase": "L",
    "menuWidth": "336px"
    "menuWidth": "420px"
  },
  "entities": [
    {
@@ -10720,6 +10720,60 @@
          "id": "F0A26536-E486-44CE-A4D8-874A7753D20D"
        },
        {
          "defKey": "repair_confirm",
          "defName": "维修确认",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "6F7C1C5C-D159-41E6-BF9D-54DEEFA79AFF",
          "id": "74A93393-824F-4652-9A66-E9BA869A03A9"
        },
        {
          "defKey": "repair_confirm_comment",
          "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": "7658B2A6-A43B-4C1D-BAFD-93ADC3422234"
        },
        {
          "defKey": "repair_confirm_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": "E3BD4018-31D8-412D-AD9C-00ED3F068906"
        },
        {
          "defKey": "fault_reason",
          "defName": "故障原因",
          "comment": "",
@@ -10757,7 +10811,7 @@
        },
        {
          "defKey": "repairer",
          "defName": "维修负责人",
          "defName": "维修人",
          "comment": "",
          "type": "",
          "len": "",
@@ -10774,8 +10828,26 @@
          "id": "39B6A4DB-4B2F-4997-BE68-04267F517AD6"
        },
        {
          "defKey": "outsourced_flag",
          "defName": "是否委外",
          "defKey": "leader_user",
          "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": "BE863706-C9DD-45D3-9303-4180F1A444E2"
        },
        {
          "defKey": "leader_confirm",
          "defName": "领导确认结果",
          "comment": "",
          "type": "",
          "len": "",
@@ -10789,11 +10861,11 @@
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "6F7C1C5C-D159-41E6-BF9D-54DEEFA79AFF",
          "id": "DA146E97-BBC5-4384-A5BB-DDC93B583CE5"
          "id": "958A9D56-586D-483A-B670-EA3351BEEF50"
        },
        {
          "defKey": "outsourced_repair_decription",
          "defName": "委外维修描述",
          "defKey": "leader_confirm_comment",
          "defName": "领导意见",
          "comment": "",
          "type": "",
          "len": "",
@@ -10807,11 +10879,11 @@
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
          "id": "69CB22EB-2B80-49A7-B805-7C4F1F1C1CB2"
          "id": "F7BAD961-9011-4A25-B80B-7D6865B93F92"
        },
        {
          "defKey": "outsourced_start_time",
          "defName": "委外维修开始时间",
          "defKey": "leader_confirm_time",
          "defName": "领导确认时间",
          "comment": "",
          "type": "",
          "len": "",
@@ -10825,11 +10897,65 @@
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098",
          "extProps": {},
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "id": "FA66CD6A-B56E-4498-B9CA-51DFE0C04AE5"
          "id": "32CAA017-36BD-4EB3-B4E5-88F972CEE9CD"
        },
        {
          "defKey": "outsourced_end_time",
          "defName": "委外维修结束时间",
          "defKey": "external_repairer",
          "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": "AC27EA79-E7DA-4B72-B39B-8ECA8D968958"
        },
        {
          "defKey": "external_confirm",
          "defName": "机动办确认结果",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "6F7C1C5C-D159-41E6-BF9D-54DEEFA79AFF",
          "id": "ED829432-3B4C-49D4-8B91-05DF171070E9"
        },
        {
          "defKey": "external_confirm_comment",
          "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": "16D85E43-DC62-4809-BC8C-8274A8EACD4C"
        },
        {
          "defKey": "external_confirm_time",
          "defName": "机动办确认时间",
          "comment": "",
          "type": "",
          "len": "",
@@ -10843,10 +10969,10 @@
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098",
          "extProps": {},
          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
          "id": "C48C41A7-1AC7-43E4-98D8-DEFEE359B4AA"
          "id": "1FFC3F79-6226-4B7C-9F96-233CCEB9FE6E"
        },
        {
          "defKey": "outsourced_person",
          "defKey": "outsourced_user",
          "defName": "委外负责人",
          "comment": "",
          "type": "",
@@ -10892,8 +11018,8 @@
          "baseType": "B17BDED3-085F-40E1-9019-3B79CF2BF075"
        },
        {
          "defKey": "is_use_spare",
          "defName": "是否领用备件",
          "defKey": "confirmer",
          "defName": "操作工",
          "comment": "",
          "type": "",
          "len": "",
@@ -10904,14 +11030,32 @@
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "1D764C4A-6F9F-421E-B11A-6F3E23B51811",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "6BC8F04B-6CFA-4995-98D3-318F5CDD774E",
          "id": "36816184-4B15-4AC7-A460-4E8EC004871D"
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "id": "D12E8E73-B626-404F-9C60-E1D260F2DD9C"
        },
        {
          "defKey": "spare_part_description",
          "defName": "备件描述",
          "defKey": "confirm_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": "73F12932-B17A-43D7-8ABE-E492DBD081A4"
        },
        {
          "defKey": "confirm_comment",
          "defName": "操作工确认意见",
          "comment": "",
          "type": "",
          "len": "",
@@ -10925,7 +11069,7 @@
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
          "id": "3945E6D0-A58E-4B40-AFDA-6D8D477DE78F"
          "id": "D78104A0-7502-4867-BE4D-6727F35FAE54"
        }
      ],
      "correlations": [],
@@ -11191,88 +11335,6 @@
          "id": "85CDAFC1-967B-4CB3-982E-8E8BF03A09BC"
        },
        {
          "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": "6903B4C4-A6B4-41CE-9738-55F019462350",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "repair_type",
          "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": "19D358EF-F8CA-4B59-9174-DBF9D9031D15"
        },
        {
          "defKey": "plan_start_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": "A7BF0506-46FD-49EB-94F4-6D1FB00364B6"
        },
        {
          "defKey": "plan_end_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": "AFB42D15-7B7C-472C-80C3-0C99A8D45E37"
        },
        {
          "defKey": "repair_code",
          "defName": "维修编码",
          "comment": "",
@@ -11292,7 +11354,7 @@
        },
        {
          "defKey": "repair_name",
          "defName": "维修名称",
          "defName": "项目名称",
          "comment": "",
          "type": "",
          "len": "",
@@ -11325,6 +11387,96 @@
          "extProps": {},
          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
          "id": "6A9F4674-955E-4632-ADE4-37B8642F302F"
        },
        {
          "defKey": "repair_type",
          "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": "19D358EF-F8CA-4B59-9174-DBF9D9031D15"
        },
        {
          "defKey": "applicant",
          "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": "BAF0FBEF-F52F-4C30-B32C-50804ECDBA5E"
        },
        {
          "defKey": "applicant_production",
          "defName": "申请车间",
          "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": "A676B900-E220-48C2-8D39-897C7510CE7D"
        },
        {
          "defKey": "plan_start_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": "A7BF0506-46FD-49EB-94F4-6D1FB00364B6"
        },
        {
          "defKey": "plan_end_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": "AFB42D15-7B7C-472C-80C3-0C99A8D45E37"
        },
        {
          "defKey": "actual_start_time",
@@ -11381,26 +11533,8 @@
          "id": "9E38846A-B6B9-4758-80AB-D516B7069740"
        },
        {
          "defKey": "attachment",
          "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": "A7DC8D03-1A32-4B93-8CCA-C640BC4B3C23"
        },
        {
          "defKey": "repair_description",
          "defName": "维修描述",
          "defKey": "fault_description",
          "defName": "故障描述",
          "comment": "",
          "type": "",
          "len": "",
@@ -11417,8 +11551,8 @@
          "id": "3A15FA62-968C-4BF4-B0AD-BBDC1403714F"
        },
        {
          "defKey": "repair_method",
          "defName": "维修方式",
          "defKey": "applicant_reason",
          "defName": "申请原因",
          "comment": "",
          "type": "",
          "len": "",
@@ -11431,26 +11565,8 @@
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
          "id": "98FEFCC8-35AE-449E-A871-3EC16A77EE8B"
        },
        {
          "defKey": "outsourced_company",
          "defName": "委外公司",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "BE09D493-E183-402D-ACC4-EEA21EB35B8E",
          "id": "D603234A-461B-49B8-93C1-4712D7B44F43"
          "domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
          "id": "B04C4899-7FB7-45DA-B14C-BB23498403A5"
        },
        {
          "defKey": "responsible_person",
@@ -11469,6 +11585,24 @@
          "extProps": {},
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "id": "9371C30D-BFE6-4A65-879D-3F9FCEF04422"
        },
        {
          "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": "C44003D7-D3F9-4C2C-98F2-E85D64731D4B"
        }
      ],
      "correlations": [],
@@ -11716,26 +11850,8 @@
          "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": "7CF8393A-0CF1-41F7-B042-8E39796F1EE0"
        },
        {
          "defKey": "emergency_degree",
          "defName": "紧急程度",
          "defKey": "equipment_id",
          "defName": "设备ID",
          "comment": "",
          "type": "",
          "len": "",
@@ -11748,8 +11864,26 @@
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
          "id": "D7EDEEBD-6CA9-419D-B501-B763E8EAB296"
          "domain": "16120F75-6AA7-4483-868D-F07F511BB081",
          "id": "FB7C630E-7620-4FAF-B7B3-993C35C04380"
        },
        {
          "defKey": "unit_price",
          "defName": "单价",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "1A0BDC09-0792-4174-9E8E-80BE8DF44B8E",
          "extProps": {},
          "domain": "C3B1681B-99F9-4818-9E80-DE1652A51D85",
          "id": "CF1BDE59-06BB-4C63-9D87-FEAA51BCD77B"
        },
        {
          "defKey": "repair_result",
@@ -17148,24 +17282,6 @@
          "attr9": "",
          "id": "C45C1700-635C-4F3B-B92F-D488BB4BB27A",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
        },
        {
          "defKey": "scrap_status",
          "defName": "报废状态",
          "comment": "1:待报废,2:已报废",
          "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": "DD95E111-E409-44AE-A481-B88D5ED11766"
        }
      ],
      "correlations": [],
@@ -19139,6 +19255,1614 @@
      ],
      "correlations": [],
      "notes": {}
    },
    {
      "id": "7BD6579A-5569-4F7F-A8B3-CA17908A43AC",
      "env": {
        "base": {
          "nameSpace": "",
          "codeRoot": ""
        }
      },
      "defKey": "eam_equipment_purchase_plan",
      "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": "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": "comment",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "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": "70E16932-3261-4AAE-BCF4-E513D3F2AB16"
        },
        {
          "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": "100D82CC-D045-479B-A211-4063271207F7",
          "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": "DE68092A-CBAC-49A0-B96B-75503C53AFD7",
          "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": "97945365-94EE-4CBC-B0B4-27ADAD68F798",
          "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": "081C0F7E-C583-4522-823D-FE2A4E17BB25",
          "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": "5AD25E7A-6B4A-4462-8F76-AC05660FF9DC"
        },
        {
          "defKey": "plan_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": "C757C668-468C-4A05-BEFC-F40A19F14338"
        },
        {
          "defKey": "plan_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": "E0EFB1AC-0AFE-426F-A307-0F104DA5B02A"
        },
        {
          "defKey": "plan_status",
          "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": "8E41BF7D-AB4F-4C75-951A-58DC90370E80"
        },
        {
          "defKey": "equipment_model",
          "defName": "型号",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "BE09D493-E183-402D-ACC4-EEA21EB35B8E",
          "id": "9565E68F-6079-40CB-9C87-8352DF1E7699"
        },
        {
          "defKey": "purchase_number",
          "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": "70268A4D-EC14-4389-8B7D-67A306878886"
        },
        {
          "defKey": "estimated_unit_price",
          "defName": "预计单价",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "1A0BDC09-0792-4174-9E8E-80BE8DF44B8E",
          "extProps": {},
          "domain": "C3B1681B-99F9-4818-9E80-DE1652A51D85",
          "id": "DBAD45BD-25D9-429B-ACAD-7D04E61830ED"
        },
        {
          "defKey": "total_price",
          "defName": "总价",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "1A0BDC09-0792-4174-9E8E-80BE8DF44B8E",
          "extProps": {},
          "domain": "C3B1681B-99F9-4818-9E80-DE1652A51D85",
          "id": "751CC71D-DC9A-46E1-B1BE-C3F3F03FE62A"
        },
        {
          "defKey": "overall_contract_amount",
          "defName": "合同总金额",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "1A0BDC09-0792-4174-9E8E-80BE8DF44B8E",
          "extProps": {},
          "domain": "C3B1681B-99F9-4818-9E80-DE1652A51D85",
          "id": "643CC9A0-34DE-4409-93AB-9FEB2BA6A026"
        },
        {
          "defKey": "equipment_importance",
          "defName": "ABC标识(管理分类)",
          "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": "108879A4-40F9-4829-A3D9-1A4C87219838"
        },
        {
          "defKey": "plan_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": "25F8D58C-A2B6-4A14-9398-F0988F362834"
        },
        {
          "defKey": "applicant",
          "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": "377544C4-9A38-40EA-A036-89F1AD9BA6B4"
        },
        {
          "defKey": "applicant_production",
          "defName": "申请车间",
          "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": "A6E80149-A12F-4659-A875-9C3A231B62FB"
        },
        {
          "defKey": "plan_start_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": "7C0317FE-3DB9-422A-8CAB-38BCE0D7C5B3"
        },
        {
          "defKey": "plan_end_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": "96B68373-7BA6-4B11-B996-85064E58FB2B"
        },
        {
          "defKey": "plan_description",
          "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": "F45CEBBC-B9A2-4D43-B92A-1AF7DAB57404"
        },
        {
          "defKey": "related_departs",
          "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": "21A927DB-4353-4139-B089-B47CAE3AAACD"
        },
        {
          "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": "2F7EDE10-5B72-46E8-A7FF-895280887508"
        }
      ],
      "correlations": [],
      "indexes": [],
      "type": "P"
    },
    {
      "id": "3EDC2496-813C-427C-9456-C04253A4B06A",
      "env": {
        "base": {
          "nameSpace": "",
          "codeRoot": ""
        }
      },
      "defKey": "eam_purchase_plan_attachment",
      "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": "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": "comment",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "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": "8E112BE0-FF7F-4177-A215-523379C39964"
        },
        {
          "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": "6CC7CF9F-D8D3-4B4C-B7D0-14BBF01D970D",
          "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": "4C7CB8E4-70FD-46D0-91B3-00D4FF9C6F40",
          "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": "E164EEEB-C23A-44C4-8162-3DFEE06847B3",
          "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": "292340D3-D2B2-4022-A749-FD965C9376FA",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
        },
        {
          "defKey": "plan_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": "B9190341-C37B-4BA3-A3F1-1A88C7DA4BD5",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "file_encode_name",
          "defName": "文件加密名",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "BE09D493-E183-402D-ACC4-EEA21EB35B8E",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "018B7F70-B9F4-4A35-993A-DDA3844690D3",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "file_name",
          "defName": "文件名称",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "BE09D493-E183-402D-ACC4-EEA21EB35B8E",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "AC1A9B68-9223-4B80-BBD0-12137AEC946A",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "file_path",
          "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": "F4A78F44-220C-462C-A27B-6B5715F13D09",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "file_suffix",
          "defName": "文件后缀名",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": true,
          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "20266E6B-28F9-469C-8489-E8874A771668",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        },
        {
          "defKey": "file_size",
          "defName": "文件大小",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "domain": "2E60DFAE-915E-4328-AEE2-6ED5FB43BAF5",
          "refDict": "",
          "extProps": {},
          "notes": {},
          "attr1": "",
          "attr2": "",
          "attr3": "",
          "attr4": "",
          "attr5": "",
          "attr6": "",
          "attr7": "",
          "attr8": "",
          "attr9": "",
          "id": "0770FBC9-FB9E-42DC-9FA4-85BD7BDA6BB1",
          "baseType": "A48A12F5-2E10-4F0A-8449-60887F0D30E0"
        },
        {
          "defKey": "description",
          "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": "0F1A1409-2FAC-4EE1-81EC-E41BB2E57D56",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
        }
      ],
      "correlations": [],
      "indexes": [],
      "type": "P"
    },
    {
      "id": "46306C3F-BCD6-4EF3-9D5A-ABFFCE89F519",
      "env": {
        "base": {
          "nameSpace": "",
          "codeRoot": ""
        }
      },
      "defKey": "eam_fluid",
      "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": "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": "comment",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "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": "279D367E-55FC-4456-878A-84ABD78F8E6E"
        },
        {
          "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": "1039A834-33CB-4F12-9EF5-8FD14D94ABFA",
          "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": "6A4DB154-B0BC-428C-A3B8-887FC3DFA6DA",
          "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": "900E517B-2931-43CB-BE9B-B1CBC4E1121A",
          "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": "FC4ECAC9-F67E-45C1-8B45-B9760E3AEB65",
          "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": "FE0C2577-7F4A-4516-A7D6-6E94616DEEE0"
        },
        {
          "defKey": "fluid_name",
          "defName": "油液名称",
          "comment": "",
          "type": "",
          "len": "",
          "scale": "",
          "primaryKey": false,
          "notNull": false,
          "autoIncrement": false,
          "defaultValue": "",
          "hideInGraph": false,
          "refDict": "",
          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
          "extProps": {},
          "domain": "BE09D493-E183-402D-ACC4-EEA21EB35B8E",
          "id": "9F1E7AC9-9CF6-4589-9F8A-F43B54590327"
        },
        {
          "defKey": "fluid_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": "F8D5CB8A-7528-45E4-83E8-7D928522EE5D"
        },
        {
          "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": "8BEB0101-F9E9-4D7A-BFE6-988569E8F5EC"
        }
      ],
      "correlations": [],
      "indexes": [],
      "type": "P"
    },
    {
      "id": "B5E08543-A1B9-4D84-944D-3883C1BFD8DC",
      "env": {
        "base": {
          "nameSpace": "",
          "codeRoot": ""
        }
      },
      "defKey": "eam_equipment_fluid",
      "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": "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": "comment",
          "freeze": false,
          "hideInGraph": true
        },
        {
          "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": "2A49CE3C-D7B7-4832-99E2-D835045929BB"
        },
        {
          "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": "72D8BFD4-1D58-4616-977E-0C30AF1AEF91",
          "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": "9A2E721C-2B3B-4974-825E-96EB1FE264D9",
          "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": "3972E0CD-AA9D-4D9D-81A2-09EF81E385C5",
          "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": "19AC25E3-49B7-4A9F-A2A0-93A0D0F409D3",
          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
        },
        {
          "defKey": "equipment_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": "96D63F73-563A-4292-809B-61B43777B0B1"
        },
        {
          "defKey": "fluid_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": "7DE665B8-9D9E-4B9B-9955-E3B80A970C6C"
        }
      ],
      "correlations": [],
      "indexes": [],
      "type": "P"
    }
  ],
  "views": [],
@@ -19871,7 +21595,11 @@
        "71B42532-3485-411A-88FF-712C439AE60E",
        "804A08AE-C5BE-49C9-BCA3-B6521C236EE1",
        "918CE0CD-78C7-4BEF-95F3-BAE2C4F828ED",
        "378CF92C-B63B-4D7F-84DF-5D2F84CE4753"
        "378CF92C-B63B-4D7F-84DF-5D2F84CE4753",
        "7BD6579A-5569-4F7F-A8B3-CA17908A43AC",
        "3EDC2496-813C-427C-9456-C04253A4B06A",
        "46306C3F-BCD6-4EF3-9D5A-ABFFCE89F519",
        "B5E08543-A1B9-4D84-944D-3883C1BFD8DC"
      ],
      "refViews": [],
      "refDiagrams": [],
lxzn-boot-base-core/src/main/java/org/jeecg/common/util/TranslateDictTextUtils.java
@@ -66,7 +66,12 @@
                    break;
                }
            }
            result.add(dictText);
            if(StringUtils.isNotBlank(dictText)) {
                result.add(dictText);
            }
        }
        if(CollectionUtil.isEmpty(result)) {
            return "";
        }
        return String.join(",", result);
    }
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/ReportRepairEnum.java
@@ -2,12 +2,13 @@
public enum ReportRepairEnum {
    WAIT_REPAIR, // å¾…ç»´ä¿®
    WAIT_INTERNAL_CONFIRM, // å¾…维修确认
    UNDER_INTERNAL_REPAIR, // å†…部维修中
    EXTERNAL_REPAIR_CONFIRM, // å¤–部维修确认中 è®¾å¤‡ç®¡ç†å‘˜ï¼Ÿ
    WAIT_EXTERNAL_RECEIVE, // å¾…机动办接单
    WAIT_LEADER_CONFIRM, // å¾…领导确认 è®¾å¤‡ç®¡ç†å‘˜
    WAIT_EXTERNAL_CONFIRM, // å¾…机动办确认
    UNDER_EXTERNAL_REPAIR, // æœºåŠ¨åŠžç»´ä¿®ä¸­
    UNDER_OUTSIDE_REPAIR, // å§”外维修中 è´£ä»»äººæ˜¯è°ï¼Ÿ
    WAIT_CONFIRM, // å¾…确认
    WAIT_CONFIRM, // æ“ä½œå·¥å¾…确认
    COMPLETE, // å·²å®Œæˆ
    ABOLISH, // å·²ä½œåºŸ
    ;
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamRepairOrder.java
@@ -51,7 +51,7 @@
     */
    @Excel(name = "设备ID", width = 15)
    @ApiModelProperty(value = "设备ID")
    @Dict(dictTable = "eam_equipment", dicCode = "id", dicText = "equipment_code")
//    @Dict(dictTable = "eam_equipment", dicCode = "id", dicText = "equipment_code")
    private String equipmentId;
    /**
     * ç»´ä¿®çŠ¶æ€
@@ -70,16 +70,23 @@
     */
    @ApiModelProperty(value = "维修结束时间")
    private Date actualEndTime;
    /**
     * æ˜¯å¦é¢†ç”¨å¤‡ä»¶ 1:是  0:否
     * ç»´ä¿®ç¡®è®¤ç»“æžœ
     */
    @ApiModelProperty(value = "是否领用备件")
    private Integer isUseSpare;
    @ApiModelProperty(value = "维修确认结果")
    @Dict(dicCode = "yn")
    private String repairConfirm;
    /**
     * å¤‡ä»¶æè¿°
     * ç»´ä¿®ç¡®è®¤æ„è§
     */
    @ApiModelProperty(value = "备件描述")
    private String sparePartDescription;
    @ApiModelProperty(value = "维修确认意见")
    private String repairConfirmComment;
    /**
     * ç»´ä¿®ç¡®è®¤æ—¶é—´
     */
    @ApiModelProperty(value = "维修确认时间")
    private Date repairConfirmTime;
    /**
     * æ•…障原因
     */
@@ -99,42 +106,89 @@
    @ApiModelProperty(value = "维修负责人")
    @Dict(dictTable = "sys_user", dicCode = "username", dicText = "realname")
    private String repairer;
    /**
     * æ˜¯å¦å§”外
     * ç¡®è®¤é¢†å¯¼
     */
    @Excel(name = "是否委外", width = 15)
    @ApiModelProperty(value = "是否委外")
    private String outsourcedFlag;
    @ApiModelProperty(value = "确认领导")
    @Dict(dictTable = "sys_user", dicCode = "username", dicText = "realname")
    private String leaderUser;
    /**
     * å§”外维修描述
     * é¢†å¯¼ç¡®è®¤ç»“æžœ
     */
    @Excel(name = "委外维修描述", width = 15)
    @ApiModelProperty(value = "委外维修描述")
    private String outsourcedRepairDescription;
    @ApiModelProperty(value = "领导确认结果")
    @Dict(dicCode = "yn")
    private String leaderConfirm;
    /**
     * å§”外维修开始时间
     * ç¡®è®¤æ„è§
     */
    @ApiModelProperty(value = "委外维修开始时间")
    private Date outsourcedStartTime;
    @ApiModelProperty(value = "确认意见")
    private String leaderConfirmComment;
    /**
     * å§”外维修结束时间
     * ç¡®è®¤æ—¶é—´
     */
    @ApiModelProperty(value = "委外维修结束时间")
    private Date outsourcedEndTime;
    @ApiModelProperty(value = "确认时间")
    private Date leaderConfirmTime;
    /**
     * æœºåŠ¨åŠžç»´ä¿®äºº
     */
    @ApiModelProperty(value = "机动办维修人")
    @Dict(dictTable = "sys_user", dicCode = "username", dicText = "realname")
    private String externalRepairer;
    /**
     * æœºåŠ¨åŠžç¡®è®¤ç»“æžœ
     */
    @ApiModelProperty(value = "机动办确认结果")
    @Dict(dicCode = "yn")
    private String externalConfirm;
    /**
     * æœºåŠ¨åŠžç¡®è®¤æ„è§
     */
    @ApiModelProperty(value = "机动办确认意见")
    private String externalConfirmComment;
    /**
     * æœºåŠ¨åŠžç¡®è®¤æ—¶é—´
     */
    @ApiModelProperty(value = "机动办确认时间")
    private Date externalConfirmTime;
    /**
     * å§”外负责人
     */
    @Excel(name = "委外负责人", width = 15)
    @ApiModelProperty(value = "委外负责人")
    private String outsourcedPerson;
    private String outsourcedUser;
    /**
     * ç…§ç‰‡æ–‡ä»¶ids;id以逗号分隔
     */
    @Excel(name = "照片文件ids;id以逗号分隔", width = 15)
    @ApiModelProperty(value = "照片文件ids;id以逗号分隔")
    private String imageFiles;
    /**
     * æ“ä½œå·¥ç¡®è®¤
     */
    @ApiModelProperty(value = "操作工确认")
    @Dict(dictTable = "sys_user", dicCode = "username", dicText = "realname")
    private String confirmer;
    /**
     * æ“ä½œå·¥ç¡®è®¤æ„è§
     */
    @ApiModelProperty(value = "操作工确认意见")
    private String confirmComment;
    /**
     * æ“ä½œå·¥ç¡®è®¤æ—¶é—´
     */
    @ApiModelProperty(value = "操作工确认时间")
    private Date confirmTime;
    @TableField(exist = false)
    @ApiModelProperty(value = "设备名称")
    private String equipmentName;
    /**
     * è®¾å¤‡ç¼–码
     */
    @TableField(exist = false)
    @ApiModelProperty(value = "设备编码")
    private String equipmentCode;
    @TableField(exist = false)
    private String installationPosition;
}
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamReportRepair.java
@@ -37,7 +37,7 @@
     */
    @Excel(name = "设备ID", width = 15, dictTable = "eam_equipment", dicCode = "id", dicText = "equipment_code")
    @ApiModelProperty(value = "设备ID")
    @Dict(dictTable = "eam_equipment", dicCode = "id", dicText = "equipment_code")
//    @Dict(dictTable = "eam_equipment", dicCode = "id", dicText = "equipment_code")
    private String equipmentId;
    /**
     * è®¾å¤‡åç§°
@@ -112,4 +112,10 @@
    @ApiModelProperty(value = "备注")
    private String remark;
    //列表展示
    @TableField(exist = false)
    private String equipmentCode;
    @TableField(exist = false)
    private String installationPosition;
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamRepairOrderMapper.java
@@ -1,6 +1,8 @@
package org.jeecg.modules.eam.mapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.eam.entity.EamRepairOrder;
@@ -26,4 +28,12 @@
     * @return
     */
    IPage<EamRepairOrder> pageList(Page<EamRepairOrder> page, @Param("eamRepairOrder") EamRepairOrderQuery eamRepairOrder, @Param("userId") String userId, @Param("equipmentIds") List<String> equipmentIds);
    /**
     * åˆ†é¡µæŸ¥è¯¢
     * @param page
     * @param queryWrapper
     * @return
     */
    IPage<EamRepairOrder> queryPageList(Page<EamRepairOrder> page, @Param(Constants.WRAPPER) QueryWrapper<EamRepairOrder> queryWrapper);
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamReportRepairMapper.java
@@ -1,6 +1,8 @@
package org.jeecg.modules.eam.mapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.eam.entity.EamReportRepair;
@@ -25,4 +27,12 @@
     * @return
     */
    IPage<EamReportRepair> pageList(Page<EamReportRepair> page, @Param("eamReportRepair") EamReportRepairQuery eamReportRepairQuery, @Param("userId") String userId, @Param("equipmentIds") List<String> equipmentIds);
    /**
     * åˆ†é¡µæŸ¥è¯¢
     * @param page
     * @param queryWrapper
     * @return
     */
    IPage<EamReportRepair> queryPageList(Page<EamReportRepair> page, @Param(Constants.WRAPPER) QueryWrapper<EamReportRepair> queryWrapper);
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamRepairOrderMapper.xml
@@ -45,4 +45,11 @@
        </where>
        ORDER BY t1.create_time DESC
    </select>
    <select id="queryPageList" resultType="org.jeecg.modules.eam.entity.EamRepairOrder">
        select wmo.*, e.equipment_code, e.equipment_name, e.installation_position
        from eam_repair_order wmo
        inner join eam_equipment e
        on wmo.equipment_id = e.id
        ${ew.customSqlSegment}
    </select>
</mapper>
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamReportRepairMapper.xml
@@ -48,4 +48,11 @@
        </where>
        ORDER BY t1.create_time DESC
    </select>
    <select id="queryPageList" resultType="org.jeecg.modules.eam.entity.EamReportRepair">
        select wmo.*, e.equipment_code, e.equipment_name, e.installation_position
        from eam_report_repair wmo
        inner join eam_equipment e
        on wmo.equipment_id = e.id
        ${ew.customSqlSegment}
    </select>
</mapper>
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamRepairOrderQuery.java
@@ -22,9 +22,8 @@
    private static final long serialVersionUID = 7710893031748864058L;
    /**
     * è®¾å¤‡ç¼–码
     */
    @ApiModelProperty(value = "设备编码")
    private String equipmentCode;
    private String column;
    private String order;
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamRepairOrderRequest.java
@@ -33,18 +33,6 @@
    private String equipmentId;
    /**
     * ç»´ä¿®çŠ¶æ€
     */
    @ApiModelProperty(value = "维修状态")
    private String repairStatus;
    /**
     * æ˜¯å¦éœ€è¦é¢†ç”¨å¤‡ä»¶  1:是  0:否
     */
    @ApiModelProperty(value = "是否需要领用备件")
    private Integer isUseSpare;
    /**
     * æ•…障原因
     */
    @ApiModelProperty(value = "故障原因")
@@ -65,7 +53,26 @@
    @ApiModelProperty(value = "维修图片集合")
    private List<FileUploadResult> imageFilesResult;
    /**备件描述*/
    @ApiModelProperty(value = "备件描述")
    private String sparePartDescription;
    /**
     * ç»´ä¿®äººç¡®è®¤
     */
    private String repairConfirm;
    private String repairConfirmComment;
    /**
     * é¢†å¯¼ç¡®è®¤
     */
    private String leaderConfirm;
    private String leaderConfirmComment;
    /**
     * æœºåŠ¨åŠžç¡®è®¤
     */
    private String externalConfirm;
    private String externalConfirmComment;
    /**
     * æ“ä½œå·¥ç¡®è®¤æ„è§
     */
    private String confirmComment;
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamReportRepairQuery.java
@@ -38,4 +38,7 @@
     * æŒ‡æ´¾äººï¼ˆç»´ä¿®è´Ÿè´£äººï¼‰
     */
    private String repairer;
    private String column;
    private String order;
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java
@@ -195,8 +195,7 @@
        } else {
            eamInspectionOrder.setEquipmentCode(equipment.getEquipmentCode());
        }
        System.out.println("设备点检:" + eamInspectionOrder.getId());
        flowCommonService.initActBusiness("工单号:" + eamInspectionOrder.getOrderNum() + "设备编号" + eamInspectionOrder.getEquipmentCode() + "进行设备点检",
        flowCommonService.initActBusiness("工单号: " + eamInspectionOrder.getOrderNum() + ";设备编号: " + eamInspectionOrder.getEquipmentCode() + ";安装位置: " + equipment.getInstallationPosition(),
                eamInspectionOrder.getId(), "IEamInspectionOrderService", "eam_inspection", null);
        Map<String, Object> variables = new HashMap<>();
        variables.put("dataId", eamInspectionOrder.getId());
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamRepairOrderServiceImpl.java
@@ -3,6 +3,7 @@
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.fasterxml.jackson.core.JsonProcessingException;
@@ -14,8 +15,10 @@
import org.jeecg.common.api.vo.FileUploadResult;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.constant.CommonConstant;
import org.jeecg.common.constant.DataBaseConstant;
import org.jeecg.common.exception.JeecgBootException;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.eam.aspect.annotation.EquipmentHistoryLog;
import org.jeecg.modules.eam.constant.*;
import org.jeecg.modules.eam.entity.EamEquipment;
@@ -38,7 +41,10 @@
import org.jeecg.modules.flowable.service.IFlowTaskService;
import org.jeecg.modules.mdc.util.DateUtils;
import org.jeecg.modules.system.service.ISysBusinessCodeRuleService;
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 com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -46,6 +52,7 @@
import javax.annotation.Resource;
import java.util.*;
import java.util.stream.Collectors;
/**
 * @Description: ç»´ä¿®å·¥å•
@@ -82,26 +89,75 @@
    @Resource
    private IEamEquipmentExtendService eamEquipmentExtendService;
    @Autowired
    private ISysUserService sysUserService;
    /**
     * åˆ†é¡µåˆ—表
     *
     * @param page
     * @param eamRepairOrderQuery
     * @param query
     * @return
     */
    @Override
    public IPage<EamRepairOrder> pageList(Page<EamRepairOrder> page, EamRepairOrderQuery eamRepairOrderQuery) {
    public IPage<EamRepairOrder> pageList(Page<EamRepairOrder> page, EamRepairOrderQuery query) {
        QueryWrapper<EamRepairOrder> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("wmo.del_flag", CommonConstant.DEL_FLAG_0);
        //用户数据权限
        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        if (sysUser == null) {
            return page;
        }
        List<String> equipmentIds = new ArrayList<>();
        if (StringUtils.isNotBlank(sysUser.getEquipmentIds())) {
            //选择了设备,根据设备id过滤设备
            equipmentIds = Arrays.asList(sysUser.getEquipmentIds().split(","));
            List<String> equipArr = Arrays.asList(sysUser.getEquipmentIds().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());
        }
        return this.baseMapper.pageList(page, eamRepairOrderQuery, sysUser.getId(), equipmentIds);
        //查询条件过滤
        if (query != null) {
            if (StringUtils.isNotBlank(query.getEquipmentId())) {
                queryWrapper.eq("wmo.equipment_id", query.getEquipmentId());
            }
            if (StringUtils.isNotBlank(query.getEquipmentCode())) {
                queryWrapper.like("e.equipment_code", query.getEquipmentCode());
            }
            if (StringUtils.isNotBlank(query.getEquipmentName())) {
                queryWrapper.like("e.equipment_name", query.getEquipmentName());
            }
            if (StringUtils.isNotBlank(query.getRepairStatus())) {
                queryWrapper.eq("wmo.repair_status", query.getRepairStatus());
            }
            if (StringUtils.isNotBlank(query.getRepairer())) {
                queryWrapper.like("wmo.repairer", query.getRepairer());
            }
            if (StringUtils.isNotBlank(query.getRepairCode())) {
                queryWrapper.like("wmo.repair_code", query.getRepairCode());
            }
//            if(query.getStartTime() != null && query.getEndTime() != null) {
//                queryWrapper.between("wmo.fault_start_time", query.getStartTime(), query.getEndTime());
//            }
            //排序
            if (StringUtils.isNotBlank(query.getColumn()) && StringUtils.isNotBlank(query.getOrder())) {
                String column = query.getColumn();
                if (column.endsWith(CommonConstant.DICT_TEXT_SUFFIX)) {
                    column = column.substring(0, column.lastIndexOf(CommonConstant.DICT_TEXT_SUFFIX));
                }
                if (DataBaseConstant.SQL_ASC.equalsIgnoreCase(query.getOrder())) {
                    queryWrapper.orderByAsc("wmo." + oConvertUtils.camelToUnderline(column));
                } else {
                    queryWrapper.orderByDesc("wmo." + oConvertUtils.camelToUnderline(column));
                }
            } else {
                queryWrapper.orderByDesc("wmo.create_time");
            }
        } else {
            queryWrapper.orderByDesc("wmo.create_time");
        }
        return baseMapper.queryPageList(page, queryWrapper);
    }
    @Override
@@ -110,17 +166,19 @@
        String codeSeq = businessCodeRuleService.generateBusinessCodeSeq(BusinessCodeConst.REPAIR_ORDER_CODE_RULE);
        eamRepairOrder.setRepairCode(codeSeq);
        EamReportRepair eamReportRepair = eamReportRepairService.getById(eamRepairOrder.getReportId());
        if(eamReportRepair == null){
            throw new JeecgBootException("故障报修不存在,请刷新重试!");
        }
        eamRepairOrder.setDelFlag(CommonConstant.DEL_FLAG_0);
        eamRepairOrder.setEquipmentId(eamReportRepair.getEquipmentId());
        eamRepairOrder.setRepairStatus(ReportRepairEnum.UNDER_INTERNAL_REPAIR.name());
        eamRepairOrder.setRepairStatus(ReportRepairEnum.WAIT_INTERNAL_CONFIRM.name());
        eamRepairOrder.setActualStartTime(DateUtils.getNow());
        eamRepairOrder.setIsUseSpare(0);
        LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        eamRepairOrder.setRepairer(user.getUsername());
        super.save(eamRepairOrder);
        EamEquipment eamEquipment = eamEquipmentService.getById(eamReportRepair.getEquipmentId());
        // å¯åŠ¨ç»´ä¿®æµç¨‹
        flowCommonService.initActBusiness("维修工单号:" + codeSeq + ", è®¾å¤‡ç¼–号:" + eamEquipment.getEquipmentCode() + "开始维修",
        flowCommonService.initActBusiness("工单号:" + codeSeq + ", è®¾å¤‡ç¼–号:" + eamEquipment.getEquipmentCode() + ";安装位置: " + eamEquipment.getInstallationPosition(),
                eamRepairOrder.getId(),
                "IEamRepairOrderService",
                "eam_repair",
@@ -137,7 +195,7 @@
        if (!result.isSuccess()) {
            super.removeById(eamRepairOrder);
        } else {
            eamReportRepair.setReportStatus(ReportRepairEnum.UNDER_INTERNAL_REPAIR.name());
            eamReportRepair.setReportStatus(ReportRepairEnum.WAIT_INTERNAL_CONFIRM.name());
            eamReportRepairService.updateById(eamReportRepair);
            //更新设备维修状态
            eamEquipmentExtendService.updateEquipmentRepairStatus(eamReportRepair.getEquipmentId(), EquipmentRepairStatus.UNDER_REPAIR.name());
@@ -155,16 +213,18 @@
        String codeSeq = businessCodeRuleService.generateBusinessCodeSeq(BusinessCodeConst.REPAIR_ORDER_CODE_RULE);
        eamRepairOrder.setRepairCode(codeSeq);
        EamReportRepair eamReportRepair = eamReportRepairService.getById(eamReportRepairQuery.getId());
        if(eamReportRepair == null){
            throw new JeecgBootException("故障报修不存在,请刷新重试!");
        }
        eamRepairOrder.setDelFlag(CommonConstant.DEL_FLAG_0);
        eamRepairOrder.setEquipmentId(eamReportRepair.getEquipmentId());
        eamRepairOrder.setRepairStatus(ReportRepairEnum.UNDER_INTERNAL_REPAIR.name());
        eamRepairOrder.setRepairStatus(ReportRepairEnum.WAIT_INTERNAL_CONFIRM.name());
        eamRepairOrder.setActualStartTime(DateUtils.getNow());
        eamRepairOrder.setIsUseSpare(0);
        eamRepairOrder.setRepairer(eamReportRepairQuery.getRepairer());
        super.save(eamRepairOrder);
        EamEquipment eamEquipment = eamEquipmentService.getById(eamReportRepair.getEquipmentId());
        // å¯åŠ¨ç»´ä¿®æµç¨‹
        flowCommonService.initActBusiness("维修工单号:" + codeSeq + ", è®¾å¤‡ç¼–号:" + eamEquipment.getEquipmentCode() + "开始维修",
        flowCommonService.initActBusiness("工单号:" + codeSeq + ", è®¾å¤‡ç¼–号:" + eamEquipment.getEquipmentCode() + ";安装位置: " + eamEquipment.getInstallationPosition(),
                eamRepairOrder.getId(),
                "IEamRepairOrderService",
                "eam_repair",
@@ -181,7 +241,7 @@
        if (!result.isSuccess()) {
            super.removeById(eamRepairOrder);
        } else {
            eamReportRepair.setReportStatus(ReportRepairEnum.UNDER_INTERNAL_REPAIR.name());
            eamReportRepair.setReportStatus(ReportRepairEnum.WAIT_INTERNAL_CONFIRM.name());
            eamReportRepairService.updateById(eamReportRepair);
            //更新设备维修状态
            eamEquipmentExtendService.updateEquipmentRepairStatus(eamReportRepair.getEquipmentId(), EquipmentRepairStatus.UNDER_REPAIR.name());
@@ -198,10 +258,13 @@
    @Transactional(rollbackFor = Exception.class)
    @EquipmentHistoryLog(operationTag = EquipmentOperationTagEnum.REPAIRED, businessTable = "eam_repair_order")
    public EamRepairOrder perform(EamRepairOrderRequest request) {
        EamRepairOrder eamRepairOrder = this.baseMapper.selectById(request.getId());
        EamReportRepair eamReportRepair = eamReportRepairService.getById(eamRepairOrder.getReportId());
        if (eamRepairOrder == null) {
            throw new JeecgBootException("审批的数据已删除,请刷新重试!");
        EamRepairOrder order = this.baseMapper.selectById(request.getId());
        if (order == null) {
            throw new JeecgBootException("维修工单不存在,请刷新重试!");
        }
        EamReportRepair eamReportRepair = eamReportRepairService.getById(order.getReportId());
        if (eamReportRepair == null) {
            throw new JeecgBootException("故障报修不存在,请刷新重试!");
        }
        // èŽ·å–å½“å‰ç™»å½•ç”¨æˆ·
        LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
@@ -227,93 +290,199 @@
            throw new JeecgBootException("设备不存在,请检查!");
        }
        ReportRepairEnum status = ReportRepairEnum.getInstance(eamRepairOrder.getRepairStatus());
        ReportRepairEnum status = ReportRepairEnum.getInstance(order.getRepairStatus());
        if (status == null) {
            return null;
            throw new JeecgBootException("工单状态不合法,请检查!");
        }
        //流程变量
        Map<String, Object> values = new HashMap<>();
        List<UserSelector> userSelectors;
        List<String> userApprovalList;
        switch (status) {
            case UNDER_INTERNAL_REPAIR:
                //维修中:下一步 åˆ¤æ–­æ˜¯å¦éœ€è¦å¤‡ä»¶, éœ€è¦å¤‡ä»¶è½¬è®¾å¤‡ç®¡ç†å‘˜é¢†ç”¨å¤‡ä»¶, ä¸éœ€è¦åˆ™è½¬åˆ°è®¾å¤‡æŠ¥ä¿®å‘˜ç¡®è®¤ç»´ä¿®å®Œæˆ
                if (request.getIsUseSpare() == 1) {
                    // éœ€è¦
                    if (StringUtils.isBlank(equipment.getEquipmentManager())) {
                        throw new JeecgBootException("设备未分配设备管理员,无法进入下级审批!");
                    }
                    if (StringUtils.isBlank(eamRepairOrder.getSparePartDescription())) {
                        values.put("dataId", eamRepairOrder.getId());
                        values.put("organization", "维修工单进入等备件状态");
                        values.put("comment", "维修工单进入等备件状态");
                        values.put("NextAssignee", Arrays.asList(equipment.getEquipmentManager().split(",")));
                        values.put("status", 1);
                        request.setComment("维修工单进入等备件状态");
//                        eamRepairOrder.setRepairStatus(ReportRepairEnum.WAIT_SPARES.name());
//                        eamReportRepair.setReportStatus(ReportRepairEnum.WAIT_SPARES.name());
                        eamRepairOrder.setIsUseSpare(1);
                    } else {
                        values.put("dataId", eamRepairOrder.getId());
                        values.put("organization", "维修工单进入报修员确认阶段");
                        values.put("comment", "维修工单进入报修员确认阶段");
                        values.put("NextAssignee", Arrays.asList(eamReportRepair.getCreateBy().split(",")));
                        request.setComment("维修工单进入等备件状态");
                        eamRepairOrder.setRepairStatus(ReportRepairEnum.WAIT_CONFIRM.name());
                        eamReportRepair.setReportStatus(ReportRepairEnum.WAIT_CONFIRM.name());
                        eamRepairOrder.setFaultReason(request.getFaultReason());
                        eamRepairOrder.setRepairDescription(request.getRepairDescription());
                        // å¤„理附件
                        if (CollectionUtil.isNotEmpty(request.getImageFilesResult())) {
                            List<FileUploadResult> fileUploadResultList = request.getImageFilesResult();
                            ObjectMapper mapper = new ObjectMapper();
                            try {
                                String referenceFile = mapper.writeValueAsString(fileUploadResultList);
                                eamRepairOrder.setImageFiles(referenceFile);
                            } catch (JsonProcessingException e) {
                                log.error("JSON转换失败:" + e.getMessage(), e);
                            }
                        }
                        //更新设备维修状态
                        eamEquipmentExtendService.updateEquipmentRepairStatus(eamReportRepair.getEquipmentId(), EquipmentRepairStatus.WAIT_CONFIRM.name());
                    }
                } else {
                    // ä¸éœ€è¦
                    values.put("dataId", eamRepairOrder.getId());
                    values.put("organization", "维修工单进入报修员确认阶段");
                    values.put("comment", "维修工单进入报修员确认阶段");
                    values.put("NextAssignee", Arrays.asList(eamReportRepair.getCreateBy().split(",")));
                    values.put("status", 0);
                    request.setComment("维修工单进入报修员确认阶段");
                    eamRepairOrder.setRepairStatus(ReportRepairEnum.WAIT_CONFIRM.name());
                    eamReportRepair.setReportStatus(ReportRepairEnum.WAIT_CONFIRM.name());
                    eamRepairOrder.setFaultReason(request.getFaultReason());
                    eamRepairOrder.setRepairDescription(request.getRepairDescription());
                    eamRepairOrder.setIsUseSpare(0);
                    // å¤„理附件
                    if (CollectionUtil.isNotEmpty(request.getImageFilesResult())) {
                        List<FileUploadResult> fileUploadResultList = request.getImageFilesResult();
                        ObjectMapper mapper = new ObjectMapper();
                        try {
                            String referenceFile = mapper.writeValueAsString(fileUploadResultList);
                            eamRepairOrder.setImageFiles(referenceFile);
                        } catch (JsonProcessingException e) {
                            log.error("JSON转换失败:" + e.getMessage(), e);
                        }
                    }
                    //更新设备维修状态
                    eamEquipmentExtendService.updateEquipmentRepairStatus(eamReportRepair.getEquipmentId(), EquipmentRepairStatus.WAIT_CONFIRM.name());
            case WAIT_INTERNAL_CONFIRM:
                order.setRepairConfirm(request.getRepairConfirm());
                order.setRepairConfirmComment(request.getRepairConfirmComment());
                order.setRepairConfirmTime(new Date());
                values.put("dataId", order.getId());
                values.put("repairConfirm", request.getRepairConfirm());
                if(StringUtils.isNotBlank(request.getRepairConfirmComment())){
                    values.put("organization", request.getRepairConfirmComment());
                    values.put("comment", request.getRepairConfirmComment());
                    request.setComment(request.getRepairConfirmComment());
                }else {
                    values.put("organization", "维修工单维修人确认完成");
                    values.put("comment", "维修工单维修人确认完成");
                    request.setComment("维修工单维修人确认完成");
                }
                if(CommonConstant.STATUS_1.equals(request.getRepairConfirm())) {
                    //可内部维修  ç»´ä¿®äººè¿›è¡Œç»´ä¿®
                    values.put("NextAssignee", Arrays.asList(order.getRepairer().split(",")));
                    order.setRepairStatus(ReportRepairEnum.UNDER_INTERNAL_REPAIR.name());
                    eamReportRepair.setReportStatus(ReportRepairEnum.UNDER_INTERNAL_REPAIR.name());
                }else {
                    //提交机动办维修,车间管理员确认
                    userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getOrgId(), BusinessCodeConst.PCR0003);
                    if (CollectionUtil.isEmpty(userSelectors)) {
                        throw new JeecgBootException("设备未分配给班组长,无法进入下级审批!");
                    }
                    userApprovalList = userSelectors.stream().map(UserSelector::getUsername).collect(Collectors.toList());
                    values.put("NextAssignee", userApprovalList);
                    order.setRepairStatus(ReportRepairEnum.WAIT_LEADER_CONFIRM.name());
                    eamReportRepair.setReportStatus(ReportRepairEnum.WAIT_LEADER_CONFIRM.name());
                }
                break;
            case UNDER_INTERNAL_REPAIR:
                // å†…部维修
                values.put("dataId", order.getId());
                values.put("organization", "维修工单维修完成待操作工确认");
                values.put("comment", "维修工单维修完成待操作工确认");
                values.put("NextAssignee", Arrays.asList(eamReportRepair.getCreateBy().split(",")));
                request.setComment("维修工单维修完成待操作工确认");
                order.setRepairStatus(ReportRepairEnum.WAIT_CONFIRM.name());
                eamReportRepair.setReportStatus(ReportRepairEnum.WAIT_CONFIRM.name());
                order.setFaultReason(request.getFaultReason());
                order.setRepairDescription(request.getRepairDescription());
                order.setActualEndTime(new Date());
                // å¤„理附件
                if (CollectionUtil.isNotEmpty(request.getImageFilesResult())) {
                    List<FileUploadResult> fileUploadResultList = request.getImageFilesResult();
                    ObjectMapper mapper = new ObjectMapper();
                    try {
                        String referenceFile = mapper.writeValueAsString(fileUploadResultList);
                        order.setImageFiles(referenceFile);
                    } catch (JsonProcessingException e) {
                        log.error("JSON转换失败:" + e.getMessage(), e);
                    }
                }
                //更新设备维修状态
                eamEquipmentExtendService.updateEquipmentRepairStatus(eamReportRepair.getEquipmentId(), EquipmentRepairStatus.WAIT_CONFIRM.name());
                break;
            case WAIT_LEADER_CONFIRM:
                order.setLeaderConfirm(request.getLeaderConfirm());
                order.setLeaderConfirmComment(request.getLeaderConfirmComment());
                order.setLeaderUser(user.getUsername());
                order.setLeaderConfirmTime(new Date());
                values.put("dataId", order.getId());
                values.put("leaderConfirm", request.getLeaderConfirm());
                if(StringUtils.isNotBlank(request.getLeaderConfirmComment())){
                    values.put("organization", request.getLeaderConfirmComment());
                    values.put("comment", request.getLeaderConfirmComment());
                    request.setComment(request.getLeaderConfirmComment());
                }else {
                    values.put("organization", "维修工单领导确认完成");
                    values.put("comment", "维修工单领导确认完成");
                    request.setComment("维修工单领导确认完成");
                }
                if(CommonConstant.STATUS_1.equals(request.getLeaderConfirm())) {
                    //通过 æäº¤æœºåŠ¨åŠžç»´ä¿®
                    userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getOrgId(), BusinessCodeConst.PCR0006);
                    if (CollectionUtil.isEmpty(userSelectors)) {
                        throw new JeecgBootException("设备未分配给公司管理员,无法进入下级审批!");
                    }
                    userApprovalList = userSelectors.stream().map(UserSelector::getUsername).collect(Collectors.toList());
                    values.put("NextAssignee", userApprovalList);
                    order.setRepairStatus(ReportRepairEnum.WAIT_EXTERNAL_CONFIRM.name());
                    eamReportRepair.setReportStatus(ReportRepairEnum.WAIT_EXTERNAL_CONFIRM.name());
                }else {
                    //驳回 å¯å†…部维修  ç»´ä¿®äººè¿›è¡Œç»´ä¿®
                    values.put("NextAssignee", Arrays.asList(order.getRepairer().split(",")));
                    order.setRepairStatus(ReportRepairEnum.UNDER_INTERNAL_REPAIR.name());
                    eamReportRepair.setReportStatus(ReportRepairEnum.UNDER_INTERNAL_REPAIR.name());
                }
                break;
            case WAIT_EXTERNAL_CONFIRM:
                order.setExternalConfirm(request.getExternalConfirm());
                order.setExternalConfirmComment(request.getExternalConfirmComment());
                order.setExternalRepairer(user.getUsername());
                order.setExternalConfirmTime(new Date());
                values.put("dataId", order.getId());
                values.put("externalConfirm", request.getExternalConfirm());
                if(StringUtils.isNotBlank(request.getExternalConfirmComment())){
                    values.put("organization", request.getExternalConfirmComment());
                    values.put("comment", request.getExternalConfirmComment());
                    request.setComment(request.getExternalConfirmComment());
                }else {
                    values.put("organization", "维修工单机动办确认完成");
                    values.put("comment", "维修工单机动办确认完成");
                    request.setComment("维修工单机动办确认完成");
                }
                if(CommonConstant.STATUS_1.equals(request.getExternalConfirm())) {
                    //机动办可维修  æœºåŠ¨åŠžç»´ä¿®äººè¿›è¡Œç»´ä¿®
                    values.put("NextAssignee", Arrays.asList(order.getExternalRepairer().split(",")));
                    order.setRepairStatus(ReportRepairEnum.UNDER_EXTERNAL_REPAIR.name());
                    eamReportRepair.setReportStatus(ReportRepairEnum.UNDER_EXTERNAL_REPAIR.name());
                }else {
                    //机动办不可维修 è¿›è¡Œå§”外维修
                    values.put("NextAssignee", Arrays.asList(order.getExternalRepairer().split(",")));
                    order.setRepairStatus(ReportRepairEnum.UNDER_OUTSIDE_REPAIR.name());
                    eamReportRepair.setReportStatus(ReportRepairEnum.UNDER_OUTSIDE_REPAIR.name());
                }
                break;
            case UNDER_EXTERNAL_REPAIR:
                // æœºåŠ¨åŠžç»´ä¿®
                values.put("dataId", order.getId());
                values.put("organization", "维修工单机动办维修完成待操作工确认");
                values.put("comment", "维修工单机动办维修完成待操作工确认");
                values.put("NextAssignee", Arrays.asList(eamReportRepair.getCreateBy().split(",")));
                request.setComment("维修工单机动办维修完成待操作工确认");
                order.setRepairStatus(ReportRepairEnum.WAIT_CONFIRM.name());
                eamReportRepair.setReportStatus(ReportRepairEnum.WAIT_CONFIRM.name());
                order.setFaultReason(request.getFaultReason());
                order.setRepairDescription(request.getRepairDescription());
                order.setActualEndTime(new Date());
                // å¤„理附件
                if (CollectionUtil.isNotEmpty(request.getImageFilesResult())) {
                    List<FileUploadResult> fileUploadResultList = request.getImageFilesResult();
                    ObjectMapper mapper = new ObjectMapper();
                    try {
                        String referenceFile = mapper.writeValueAsString(fileUploadResultList);
                        order.setImageFiles(referenceFile);
                    } catch (JsonProcessingException e) {
                        log.error("JSON转换失败:" + e.getMessage(), e);
                    }
                }
                //更新设备维修状态
                eamEquipmentExtendService.updateEquipmentRepairStatus(eamReportRepair.getEquipmentId(), EquipmentRepairStatus.WAIT_CONFIRM.name());
                break;
            case UNDER_OUTSIDE_REPAIR:
                // æœºåŠ¨åŠžç»´ä¿®
                values.put("dataId", order.getId());
                values.put("organization", "维修工单委外维修完成待操作工确认");
                values.put("comment", "维修工单委外维修完成待操作工确认");
                values.put("NextAssignee", Arrays.asList(eamReportRepair.getCreateBy().split(",")));
                request.setComment("维修工单委外维修完成待操作工确认");
                order.setRepairStatus(ReportRepairEnum.WAIT_CONFIRM.name());
                order.setOutsourcedUser(user.getUsername());
                eamReportRepair.setReportStatus(ReportRepairEnum.WAIT_CONFIRM.name());
                order.setFaultReason(request.getFaultReason());
                order.setRepairDescription(request.getRepairDescription());
                order.setActualEndTime(new Date());
                // å¤„理附件
                if (CollectionUtil.isNotEmpty(request.getImageFilesResult())) {
                    List<FileUploadResult> fileUploadResultList = request.getImageFilesResult();
                    ObjectMapper mapper = new ObjectMapper();
                    try {
                        String referenceFile = mapper.writeValueAsString(fileUploadResultList);
                        order.setImageFiles(referenceFile);
                    } catch (JsonProcessingException e) {
                        log.error("JSON转换失败:" + e.getMessage(), e);
                    }
                }
                //更新设备维修状态
                eamEquipmentExtendService.updateEquipmentRepairStatus(eamReportRepair.getEquipmentId(), EquipmentRepairStatus.WAIT_CONFIRM.name());
                break;
            case WAIT_CONFIRM:
                // å¾…确认, ç»´ä¿®å‘˜ç»´ä¿®å®Œæˆï¼ŒæŠ¥ä¿®äººç¡®è®¤ç»“束流程
                values.put("dataId", eamRepairOrder.getId());
                values.put("dataId", order.getId());
                values.put("organization", "维修工单流程结束");
                values.put("comment", "维修工单流程结束");
                values.put("NextAssignee", Arrays.asList(eamReportRepair.getCreateBy().split(",")));
                values.put("status", 0);
                request.setComment("维修工单进入报修员确认阶段");
                eamRepairOrder.setRepairStatus(ReportRepairEnum.COMPLETE.name());
                request.setComment("维修工单流程结束");
                order.setRepairStatus(ReportRepairEnum.COMPLETE.name());
                eamReportRepair.setReportStatus(ReportRepairEnum.COMPLETE.name());
                eamRepairOrder.setActualEndTime(new Date());
                order.setConfirmComment(request.getConfirmComment());
                order.setConfirmTime(new Date());
                order.setConfirmer(user.getUsername());
                //更新设备维修状态
                eamEquipmentExtendService.updateEquipmentRepairStatus(eamReportRepair.getEquipmentId(), EquipmentRepairStatus.NORMAL.name());
                break;
@@ -326,10 +495,10 @@
            throw new JeecgBootException("审批失败,请刷新查看!");
        }
        //保存工单
        this.baseMapper.updateById(eamRepairOrder);
        this.baseMapper.updateById(order);
        // åŒæ­¥æ›´æ–°æŠ¥ä¿®è¡¨çŠ¶æ€
        eamReportRepairService.updateById(eamReportRepair);
        return eamRepairOrder;
        return order;
    }
    @Override
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamReportRepairServiceImpl.java
@@ -1,5 +1,6 @@
package org.jeecg.modules.eam.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.fasterxml.jackson.core.JsonProcessingException;
@@ -8,7 +9,9 @@
import org.apache.shiro.SecurityUtils;
import org.jeecg.common.api.vo.FileUploadResult;
import org.jeecg.common.constant.CommonConstant;
import org.jeecg.common.constant.DataBaseConstant;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.eam.aspect.annotation.EquipmentHistoryLog;
import org.jeecg.modules.eam.constant.*;
import org.jeecg.modules.eam.entity.*;
@@ -38,22 +41,68 @@
     * åˆ†é¡µåˆ—表
     *
     * @param page
     * @param eamReportRepairQuery
     * @param query
     * @return
     */
    @Override
    public IPage<EamReportRepair> pageList(Page<EamReportRepair> page, EamReportRepairQuery eamReportRepairQuery) {
    public IPage<EamReportRepair> pageList(Page<EamReportRepair> page, EamReportRepairQuery query) {
        QueryWrapper<EamReportRepair> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("wmo.del_flag", CommonConstant.DEL_FLAG_0);
        //用户数据权限
        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        if (sysUser == null) {
            return page;
        }
        List<String> equipmentIds = new ArrayList<>();
        if (StringUtils.isNotBlank(sysUser.getEquipmentIds())) {
            //选择了设备,根据设备id过滤设备
            equipmentIds = Arrays.asList(sysUser.getEquipmentIds().split(","));
            List<String> equipArr = Arrays.asList(sysUser.getEquipmentIds().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());
        }
        return this.baseMapper.pageList(page, eamReportRepairQuery, sysUser.getId(), equipmentIds);
        //查询条件过滤
        if (query != null) {
            if (StringUtils.isNotBlank(query.getEquipmentId())) {
                queryWrapper.eq("wmo.equipment_id", query.getEquipmentId());
            }
            if (StringUtils.isNotBlank(query.getEquipmentCode())) {
                queryWrapper.like("e.equipment_code", query.getEquipmentCode());
            }
            if (StringUtils.isNotBlank(query.getEquipmentName())) {
                queryWrapper.like("e.equipment_name", query.getEquipmentName());
            }
            if (StringUtils.isNotBlank(query.getBreakdownFlag())) {
                queryWrapper.eq("wmo.breakdown_flag", query.getBreakdownFlag());
            }
            if (StringUtils.isNotBlank(query.getReportStatus())) {
                queryWrapper.eq("wmo.report_status", query.getReportStatus());
            }
            if (StringUtils.isNotBlank(query.getFaultDescription())) {
                queryWrapper.like("wmo.fault_description", query.getFaultDescription());
            }
            if(query.getStartTime() != null && query.getEndTime() != null) {
                queryWrapper.between("wmo.fault_start_time", query.getStartTime(), query.getEndTime());
            }
            //排序
            if (StringUtils.isNotBlank(query.getColumn()) && StringUtils.isNotBlank(query.getOrder())) {
                String column = query.getColumn();
                if (column.endsWith(CommonConstant.DICT_TEXT_SUFFIX)) {
                    column = column.substring(0, column.lastIndexOf(CommonConstant.DICT_TEXT_SUFFIX));
                }
                if (DataBaseConstant.SQL_ASC.equalsIgnoreCase(query.getOrder())) {
                    queryWrapper.orderByAsc("wmo." + oConvertUtils.camelToUnderline(column));
                } else {
                    queryWrapper.orderByDesc("wmo." + oConvertUtils.camelToUnderline(column));
                }
            } else {
                queryWrapper.orderByDesc("wmo.create_time");
            }
        } else {
            queryWrapper.orderByDesc("wmo.create_time");
        }
        return baseMapper.queryPageList(page, queryWrapper);
    }
    @Override
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamSecondMaintenanceOrderServiceImpl.java
@@ -158,7 +158,7 @@
        //判断是否存在保养人 å¦‚果存在则启动流程
        if (StringUtils.isNotBlank(order.getOperator())) {
            //启动流程
            flowCommonService.initActBusiness("工单号:" + order.getOrderNum() + ";设备编号: " + equipment.getEquipmentCode() + ";进行设备二保",
            flowCommonService.initActBusiness("工单号: " + order.getOrderNum() + ";设备编号: " + equipment.getEquipmentCode() + ";安装位置" + equipment.getInstallationPosition(),
                    order.getId(), "IEamSecondMaintenanceOrderService", "second_maintenance_process", null);
            Map<String, Object> variables = new HashMap<>();
            variables.put("dataId", order.getId());
@@ -233,7 +233,7 @@
        //判断是否存在保养人 å¦‚果存在则启动流程
        if (StringUtils.isNotBlank(entity.getOperator())) {
            //启动流程
            flowCommonService.initActBusiness("工单号:" + entity.getOrderNum() + ";设备编号: " + equipment.getEquipmentCode() + ";进行设备二保",
            flowCommonService.initActBusiness("工单号: " + entity.getOrderNum() + ";设备编号: " + equipment.getEquipmentCode() + ";安装位置" + equipment.getInstallationPosition(),
                    entity.getId(), "IEamSecondMaintenanceOrderService", "second_maintenance_process", null);
            Map<String, Object> variables = new HashMap<>();
            variables.put("dataId", entity.getId());
@@ -287,7 +287,7 @@
        eamSecondMaintenanceOrderMapper.updateById(entity);
        //启动流程
        flowCommonService.initActBusiness("工单号:" + entity.getOrderNum() + ";设备编号: " + equipment.getEquipmentCode() + ";进行设备二保",
        flowCommonService.initActBusiness("工单号: " + entity.getOrderNum() + ";设备编号: " + equipment.getEquipmentCode() + ";安装位置" + equipment.getInstallationPosition(),
                entity.getId(), "IEamSecondMaintenanceOrderService", "second_maintenance_process", null);
        Map<String, Object> variables = new HashMap<>();
        variables.put("dataId", entity.getId());
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java
@@ -172,7 +172,7 @@
        //判断是否存在保养人 å¦‚果存在则启动流程
        if (StringUtils.isNotBlank(order.getOperator())) {
            //启动流程
            flowCommonService.initActBusiness("工单号:" + order.getOrderNum() + ";设备编号: " + equipment.getEquipmentCode() + ";进行设备三保",
            flowCommonService.initActBusiness("工单号:" + order.getOrderNum() + ";设备编号: " + equipment.getEquipmentCode() + ";安装位置" + equipment.getInstallationPosition(),
                    order.getId(), "IEamThirdMaintenanceOrderService", "third_maintenance_process", null);
            Map<String, Object> variables = new HashMap<>();
            variables.put("dataId", order.getId());
@@ -243,7 +243,7 @@
        //判断是否存在保养人 å¦‚果存在则启动流程
        if (StringUtils.isNotBlank(entity.getOperator())) {
            //启动流程
            flowCommonService.initActBusiness("工单号:" + entity.getOrderNum() + ";设备编号: " + equipment.getEquipmentCode() + ";进行设备三保",
            flowCommonService.initActBusiness("工单号:" + entity.getOrderNum() + ";设备编号: " + equipment.getEquipmentCode() + ";安装位置" + equipment.getInstallationPosition(),
                    entity.getId(), "IEamThirdMaintenanceOrderService", "third_maintenance_process", null);
            Map<String, Object> variables = new HashMap<>();
            variables.put("dataId", entity.getId());
@@ -296,7 +296,7 @@
        eamThirdMaintenanceOrderMapper.updateById(entity);
        //启动流程
        flowCommonService.initActBusiness("工单号:" + entity.getOrderNum() + ";设备编号: " + equipment.getEquipmentCode() + ";进行设备三保",
        flowCommonService.initActBusiness("工单号:" + entity.getOrderNum() + ";设备编号: " + equipment.getEquipmentCode() + ";安装位置" + equipment.getInstallationPosition(),
                entity.getId(), "IEamThirdMaintenanceOrderService", "third_maintenance_process", null);
        Map<String, Object> variables = new HashMap<>();
        boolean equipmentPrecisionFlag = precisionCheckDetailService.hasPrecisionCheckDetail(entity.getId());
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/OutStoreDetailController.java
@@ -16,6 +16,7 @@
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.tms.entity.OutStoreDetail;
import org.jeecg.modules.tms.entity.ToolLedger;
import org.jeecg.modules.tms.entity.vo.OutStoreDetailVo;
import org.jeecg.modules.tms.service.IOutStoreDetailService;
@@ -197,4 +198,23 @@
        return super.importExcel(request, response, OutStoreDetail.class);
    }
     /**
      * å·¥å…·å°è´¦-出库子页面列表查询
      *
      * @param outStoreDetail
      * @param pageNo
      * @param pageSize
      * @param query
      * @return
      */
     @ApiOperation(value="工具台账-出库子页面列表查询", notes="工具台账-出库子页面列表查询")
     @GetMapping(value = "/outStoreDetailList")
     public Result<?> outStoreDetailList(OutStoreDetail outStoreDetail,
                                     @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                     @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                     @RequestParam Map<String, String> query) {
         IPage<Map<String, Object>> pageList = outStoreDetailService.outStoreDetailList(pageNo,pageSize, query);
         return Result.OK(pageList);
     }
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/ToolLedgerController.java
@@ -215,4 +215,23 @@
        return super.importExcel(request, response, ToolLedger.class);
    }
     /**
      * å·¥å…·å°è´¦-列表查询
      *
      * @param toolLedger
      * @param pageNo
      * @param pageSize
      * @param query
      * @return
      */
     @ApiOperation(value="工具台账-列表查询", notes="工具台账-列表查询")
     @GetMapping(value = "/toolLedgerList")
     public Result<?> toolLedgerList(ToolLedger toolLedger,
                                                    @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                                    @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                                     @RequestParam Map<String, String> query) {
         IPage<Map<String, Object>> pageList = toolLedgerService.toolLedgerList(pageNo,pageSize, query);
         return Result.OK(pageList);
     }
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/ToolLedgerDetailController.java
@@ -213,4 +213,23 @@
         return Result.OK(pageList);
     }
     /**
      * å·¥å…·å°è´¦-查询把号
      *
      * @param toolLedgerDetail
      * @param pageNo
      * @param pageSize
      * @param query
      * @return
      */
     @ApiOperation(value="工具台账-查询把号", notes="工具台账-查询把号")
     @GetMapping(value = "/queryToolLedgerDetailList")
     public Result<?> queryToolLedgerDetailList(ToolLedgerDetail toolLedgerDetail,
                                                          @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                                          @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                                                      @RequestParam Map<String, String> query) {
         IPage<Map<String, Object>> pageList = toolLedgerDetailService.queryToolLedgerDetailList(pageNo, pageSize, query);
         return Result.OK(pageList);
     }
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/ToolSharpeningController.java
@@ -6,6 +6,7 @@
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.modules.tms.entity.OutStoreDetail;
import org.jeecg.modules.tms.entity.ToolLedger;
import org.jeecg.modules.tms.entity.ToolSharpening;
import org.jeecg.modules.tms.entity.ToolsLossBoundDetail;
@@ -88,6 +89,7 @@
    @ApiOperation(value="tms_tool_sharpening-添加", notes="tms_tool_sharpening-添加")
    @PostMapping(value = "/add")
    public Result<String> add(@RequestBody ToolSharpening toolSharpening) {
        toolSharpening.setSharpeningStatus("1");
        toolSharpeningService.save(toolSharpening);
        return Result.OK("添加成功!");
    }
@@ -115,4 +117,23 @@
        toolSharpeningService.removeById(id);
        return Result.OK("删除成功!");
    }
    /**
     * å·¥å…·å°è´¦-刃磨子页面列表查询
     *
     * @param toolSharpening
     * @param pageNo
     * @param pageSize
     * @param query
     * @return
     */
    @ApiOperation(value="工具台账-刃磨子页面列表查询", notes="工具台账-刃磨子页面列表查询")
    @GetMapping(value = "/toolSharpeningList")
    public Result<?> toolSharpeningList(ToolSharpening toolSharpening,
                                        @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                        @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                        @RequestParam Map<String, String> query) {
        IPage<Map<String, Object>> pageList = toolSharpeningService.toolSharpeningList(pageNo,pageSize, query);
        return Result.OK(pageList);
    }
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/ToolsLossBoundController.java
@@ -13,10 +13,7 @@
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.tms.entity.OutboundDetail;
import org.jeecg.modules.tms.entity.OutboundOrder;
import org.jeecg.modules.tms.entity.ToolsLossBound;
import org.jeecg.modules.tms.entity.ToolsLossBoundDetail;
import org.jeecg.modules.tms.entity.*;
import org.jeecg.modules.tms.entity.dto.LossBoundFlowDto;
import org.jeecg.modules.tms.entity.dto.OutBoundOrderFlowDto;
import org.jeecg.modules.tms.entity.vo.OutboundDetailVo;
@@ -324,4 +321,23 @@
        IPage<ToolsLossBoundDetail> pageList = toolsLossBoundDetailService.queryPageList(page, parameterMap);
        return Result.OK(pageList);
    }
    /**
     * å·¥å…·å°è´¦-报损子页面列表查询
     *
     * @param toolsLossBoundDetail
     * @param pageNo
     * @param pageSize
     * @param query
     * @return
     */
    @ApiOperation(value="工具台账-报损子页面列表查询", notes="工具台账-报损子页面列表查询")
    @GetMapping(value = "/toolLossDetailList")
    public Result<?> toolLossDetailList(ToolsLossBoundDetail toolsLossBoundDetail,
                                        @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                        @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                        @RequestParam Map<String, String> query) {
        IPage<Map<String, Object>> pageList = toolsLossBoundDetailService.toolLossDetailList(pageNo,pageSize, query);
        return Result.OK(pageList);
    }
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/ToolsStocktakingBoundController.java
@@ -16,6 +16,7 @@
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.modules.system.service.ISysBusinessCodeRuleService;
import org.jeecg.modules.tms.entity.BaseTools;
import org.jeecg.modules.tms.entity.ToolSharpening;
import org.jeecg.modules.tms.entity.ToolsStocktakingBound;
import org.jeecg.modules.tms.entity.ToolsStocktakingBoundDetail;
import org.jeecg.modules.tms.entity.dto.LossBoundFlowDto;
@@ -283,4 +284,23 @@
        return Result.OK("文件导入失败!");
    }
    /**
     * å·¥å…·å°è´¦-盘点子页面列表查询
     *
     * @param toolsStocktakingBound
     * @param pageNo
     * @param pageSize
     * @param query
     * @return
     */
    @ApiOperation(value="工具台账-盘点子页面列表查询", notes="工具台账-盘点子页面列表查询")
    @GetMapping(value = "/toolsStocktakingList")
    public Result<?> toolsStocktakingList(ToolsStocktakingBound toolsStocktakingBound,
                                        @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                        @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                        @RequestParam Map<String, String> query) {
        IPage<Map<String, Object>> pageList = toolsStocktakingBoundDetailService.toolsStocktakingList(pageNo,pageSize, query);
        return Result.OK(pageList);
    }
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/entity/ToolSharpening.java
@@ -4,6 +4,7 @@
import java.util.Date;
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;
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/entity/ToolsLossBoundDetail.java
@@ -140,6 +140,9 @@
    private String toolMaterial;
    @TableField(exist = false)
    private String partMaterial;
    @TableField(exist = false)
    private String toolModel;
    /**
     * åº“位号
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/OutStoreDetailMapper.java
@@ -1,6 +1,7 @@
package org.jeecg.modules.tms.mapper;
import java.util.List;
import java.util.Map;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -22,4 +23,6 @@
    IPage<OutStoreDetailVo> queryPageList(Page<OutStoreDetailVo> page,
                                          @Param(Constants.WRAPPER) Wrapper<OutStoreDetailVo> queryWrapper);
    public IPage<Map<String, Object>> outStoreDetailList(IPage<Map> pageData, @Param(Constants.WRAPPER) Wrapper<Map> wrapper);
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/ToolLedgerDetailMapper.java
@@ -26,4 +26,6 @@
    IPage<Map<String, Object>> queryLendTool(IPage<Map> pageData, @Param(Constants.WRAPPER) Wrapper<Map> wrapper);
    IPage<Map<String, Object>> querySharpenTool(IPage<Map> pageData, @Param(Constants.WRAPPER) Wrapper<Map> wrapper);
    IPage<Map<String, Object>> queryToolLedgerDetailList(IPage<Map> pageData, @Param(Constants.WRAPPER) Wrapper<Map> wrapper);
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/ToolLedgerMapper.java
@@ -1,7 +1,11 @@
package org.jeecg.modules.tms.mapper;
import java.util.List;
import java.util.Map;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.tms.entity.ToolLedger;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -14,4 +18,5 @@
 */
public interface ToolLedgerMapper extends BaseMapper<ToolLedger> {
    public IPage<Map<String, Object>> toolLedgerList(IPage<Map> pageData, @Param(Constants.WRAPPER) Wrapper<Map> wrapper);
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/ToolsLossBoundDetailMapper.java
@@ -10,6 +10,7 @@
import org.jeecg.modules.tms.entity.ToolsLossBoundDetail;
import java.util.List;
import java.util.Map;
/**
 * @Description: æŸè€—单明细
@@ -38,4 +39,6 @@
    IPage<ToolsLossBoundDetail> queryPageList(Page<ToolsLossBoundDetail> page,
                                        @Param(Constants.WRAPPER) Wrapper<ToolsLossBoundDetail> queryWrapper);
    public IPage<Map<String, Object>> toolLossDetailList(IPage<Map> pageData, @Param(Constants.WRAPPER) Wrapper<Map> wrapper);
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/ToolsSharpeningMapper.java
@@ -12,6 +12,8 @@
import org.jeecg.modules.tms.entity.vo.OutboundDetailVo;
import org.jeecg.modules.tms.entity.vo.ToolSharpeningVo;
import java.util.Map;
/**
 * @Description: tms_tool_sharpening Mapper æŽ¥å£
 * @Author: ä¾¯æ°
@@ -20,4 +22,6 @@
public interface ToolsSharpeningMapper extends BaseMapper<ToolSharpening> {
    IPage<ToolSharpeningVo> queryPageList(Page<ToolSharpeningVo> page,
                                          @Param(Constants.WRAPPER) Wrapper<ToolSharpeningVo> queryWrapper);
    public IPage<Map<String, Object>> toolSharpeningList(IPage<Map> pageData, @Param(Constants.WRAPPER) Wrapper<Map> wrapper);
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/ToolsStocktakingBoundDetailMapper.java
@@ -10,6 +10,7 @@
import org.jeecg.modules.tms.entity.ToolsStocktakingBoundDetail;
import java.util.List;
import java.util.Map;
public interface ToolsStocktakingBoundDetailMapper extends BaseMapper<ToolsStocktakingBoundDetail> {
@@ -38,4 +39,6 @@
    IPage<ToolsStocktakingBoundDetail> selectByMainId(Page<ToolsStocktakingBoundDetail> page,
                                       @Param(Constants.WRAPPER) Wrapper<ToolsStocktakingBoundDetail> queryWrapper);
    public IPage<Map<String, Object>> toolsStocktakingList(IPage<Map> pageData, @Param(Constants.WRAPPER) Wrapper<Map> wrapper);
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/BaseToolsMapper.xml
@@ -359,21 +359,17 @@
    <select id="pageWithLedgerAndConfig" resultType="org.jeecg.modules.tms.entity.vo.StocktakingPoundVo">
        SELECT
        DISTINCT
        t.id,
        t.classify_id AS classifyId,
        t.tool_id  AS toolId,
        t1.classify_id AS classifyId,
        t.tool_code AS toolCode,
        t.foreign_language_name AS foreignLanguageName,
        t.standard_level AS standardLevel,
        t.standard_code AS standardCode,
        t.tool_model AS toolModel,
        t.parama_table_name AS paramaTableName,
        t.tool_id AS toolId,
        t2.tool_model AS toolModel,
        t2.parama_table_name AS paramaTableName,
        t1.total_count AS totalCount,
        t1.available_count AS availableCount,
        t3.position_code AS positionCode,
        t3.application_type AS applicationType,
        t3.chinese_name AS chineseName,
        t2.chinese_name AS chineseName,
        t3.supplier_id AS supplierId,
        t3.storage_location AS storageLocation,
        t3.main_unit AS mainUnit,
@@ -410,10 +406,11 @@
                c.part_material AS partMaterial
            </otherwise>
        </choose>
        FROM tms_base_tools t
        LEFT JOIN tms_tool_ledger t1 ON t1.tool_id = t.id
        LEFT JOIN tms_tools_config_property t3 ON t3.tool_code = t.id
        FROM tms_tool_ledger_detail t
        left join tms_tool_ledger t1 ON  t1.tool_id= t.tool_Code
        left join tms_tools_classify t4 on t4.id = t1.classify_id
        left join tms_base_tools t2 on t2.id = t.tool_code
        left join tms_tools_config_property t3 on t3.tool_code = t.tool_code
        <!-- åŠ¨æ€è¡¨å…³è”ï¼Œç¡®ä¿æ‰€æœ‰æƒ…å†µéƒ½æœ‰å¯¹åº”çš„ LEFT JOIN -->
@@ -443,8 +440,8 @@
        </choose>
        <where>
            <if test="ew.paramNameValuePairs.toolCode != null and ew.paramNameValuePairs.toolCode != ''">
                AND t.tool_code LIKE CONCAT('%', #{ew.paramNameValuePairs.toolCode}, '%')
            <if test="ew.paramNameValuePairs.toolId != null and ew.paramNameValuePairs.toolId != ''">
                AND t.tool_id LIKE CONCAT('%', #{ew.paramNameValuePairs.toolId}, '%')
            </if>
        </where>
@@ -454,19 +451,12 @@
    <select id="pageWithSharpedAndConfig" resultType="org.jeecg.modules.tms.entity.vo.SharpeeningVo">
        SELECT
        DISTINCT
        t.id,
        t.create_time AS createTime,
        t.classify_id AS classifyId,
        t.tool_code AS toolCode,
        t.foreign_language_name AS foreignLanguageName,
        t.standard_level AS standardLevel,
        t.standard_code AS standardCode,
        t.tool_model AS toolModel,
        t.parama_table_name AS paramaTableName,
        t2.tool_model AS toolModel,
        t2.parama_table_name AS paramaTableName,
        t.tool_id AS toolId,
        t1.total_count AS totalCount,
        t1.available_count AS availableCount,
        t3.position_code AS positionCode,
        t3.application_type AS applicationType,
        t3.chinese_name AS chineseName,
@@ -474,16 +464,21 @@
        t3.storage_location AS storageLocation,
        t3.main_unit AS mainUnit,
        t3.warehouse_id AS warehouseId,
        t4.classify_id AS classifyId,
        t3.province_city AS provinceCity
        FROM tms_base_tools t
        LEFT JOIN tms_tool_ledger t1 ON t1.tool_id = t.id
        LEFT JOIN tms_tools_config_property t3 ON t3.tool_code = t.id
        FROM tms_tool_ledger_detail t
        left join tms_tool_ledger t1 ON  t1.tool_id= t.tool_Code
        left join tms_tools_classify t4 on t4.id = t1.classify_id
        left join tms_base_tools t2 on t2.id = t.tool_code
        left join tms_tools_config_property t3 on t3.tool_code = t.tool_code
--         FROM tms_base_tools t
--         LEFT JOIN tms_tool_ledger t1 ON t1.tool_id = t.id
--         LEFT JOIN tms_tools_config_property t3 ON t3.tool_code = t.id
        <where>
            <if test="ew.paramNameValuePairs.toolCode != null and ew.paramNameValuePairs.toolCode != ''">
                AND t.tool_code LIKE CONCAT('%', #{ew.paramNameValuePairs.toolCode}, '%')
            <if test="ew.paramNameValuePairs.toolId != null and ew.paramNameValuePairs.toolId != ''">
                AND t.tool_id LIKE CONCAT('%', #{ew.paramNameValuePairs.toolId}, '%')
            </if>
        </where>
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/InStoreDetailMapper.xml
@@ -7,7 +7,7 @@
            t.id,
            t.tool_id onlyCode,
            t.in_storehouse_type inStorehouseType,
            t.goods_shelves_id goodsShelvesId,
            t10.location_code locationCode,
            t.in_number inNumber,
            t.in_storehouse_id inStorehouseId,
            t.inbound_time inboundTime,
@@ -39,6 +39,7 @@
                 LEFT JOIN (select * from v_sys_dict where dict_code='in_status') t7 on t7.item_value = t3.in_status
                 LEFT JOIN (select * from v_sys_dict where dict_code='in_bill_status') t8 on t8.item_value = t3.order_status
                 left join (select * from v_sys_dict where dict_code='in_storehouse_type') t9 on t9.item_value = t.in_storehouse_type
                left join tms_goods_shelves t10 on t10.id = t.goods_shelves_id
            ${ew.customSqlSegment}
    </select>
</mapper>
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/OutStoreDetailMapper.xml
@@ -84,4 +84,42 @@
        </choose>
        ${ew.customSqlSegment}
    </select>
    <select id="outStoreDetailList" resultType="map" parameterType="String">
        SELECT
            t1.id,
            t1.tool_id onlyCode,
            t1.out_storehouse_type outStorehouseType,
            t1.out_number outNumber,
            t1.out_storehouse_id outStorehouseId,
            t4.outbound_time outboundTime,
            t1.create_by createBy,
            t1.create_time createTime,
            t1.update_by updateBy,
            t1.update_time updateTime,
            t2.tool_code toolCode,
            t2.chinese_name chineseName,
            t2.tool_model toolModel,
            t3.classify_id classifyNum,
            t4.out_num outNum,
            t4.subject_matter subjectMatter,
            t5.realname handler,
            t6.realname reviewer,
            t7.item_text inStatus,
            t8.item_text orderStatus,
            t9.item_text outStorehouseTypeName,
            t10.item_text operateType
        FROM
            tms_out_store_detail t1
                LEFT JOIN tms_base_tools t2 ON t2.id = t1.tool_code
                LEFT JOIN tms_tools_classify t3 ON t3.id = t2.classify_id
                LEFT JOIN tms_outbound_order t4 ON t4.id = t1.out_storehouse_id
                LEFT JOIN sys_user t5 ON t5.username = t4.handler
                LEFT JOIN sys_user t6 ON t6.username = t4.reviewer
                LEFT JOIN ( SELECT * FROM v_sys_dict WHERE dict_code = 'out_status' ) t7 ON t7.item_value = t4.out_status
                LEFT JOIN ( SELECT * FROM v_sys_dict WHERE dict_code = 'out_bill_status' ) t8 ON t8.item_value = t4.order_status
                LEFT JOIN ( SELECT * FROM v_sys_dict WHERE dict_code = 'out_storehouse_type' ) t9 ON t9.item_value = t1.out_storehouse_type
                LEFT JOIN ( SELECT * FROM v_sys_dict WHERE dict_code = 'inbound_operate_type' ) t10 ON t10.item_value = t1.operate_type
            ${ew.customSqlSegment}
    </select>
</mapper>
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/ToolLedgerDetailMapper.xml
@@ -172,4 +172,24 @@
                    )
            ) temp
    </select>
    <select id="queryToolLedgerDetailList"  resultType="map" parameterType="String">
        SELECT
            t1.id,
            t1.tool_code toolCodeId,
            t2.tool_code toolCode,
            t1.tool_id onlyCode,
            t2.chinese_name chineseName,
            t2.tool_model toolModel,
            t1.quantity,
            t1.warehouse_id warehouseId,
            ISNULL(t3.warehouse_id, '') + '/' + ISNULL(t3.warehouse_name, '') warehouseName,
            t1.position_code positionCode,
            t5.item_text applicationType
        FROM tms_tool_ledger_detail t1
                 LEFT JOIN tms_base_tools t2 on t1.tool_code = t2.id
                 LEFT JOIN tms_warehouse t3 on t1.warehouse_id = t3.id
                 left join tms_tools_config_property t4 on t4.tool_code = t2.id
                 left join (select * from v_sys_dict where dict_code ='application_type') t5 on t5.item_value = t4.application_type
            ${ew.customSqlSegment}
    </select>
</mapper>
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/ToolLedgerMapper.xml
@@ -2,4 +2,33 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.tms.mapper.ToolLedgerMapper">
    <select id="toolLedgerList" resultType="map" parameterType="String">
        select
            t1.id,
            t1.total_count totalCount,
            t1.available_count availableCount,
            t1.lend_count lendCount,
            t1.loss_count lossCount,
            t1.repair_count repairCount,
            t1.sharpening_count sharpeningCount,
            t1.detection_count detectionCount,
            t2.id toolCodeId,
            t2.tool_code toolCode,
            t2.chinese_name chineseName,
            t2.tool_model toolModel,
            t2.sign_code signCode,
            t2.accuracy_class accuracyClass,
            t2.standard_code standardCode,
            t2.standard_level standardLevel,
            t3.position_code positionCode,
            t3.storage_location storageLocation,
            t3.highest_inventory highestInventory,
            t3.lower_inventory lowerInventory,
            t4.item_text applicationType
        from tms_tool_ledger t1
            left join tms_base_tools t2 on t1.tool_id = t2.id
            left join tms_tools_config_property t3 on t3.tool_code = t2.id
            left join (select * from v_sys_dict where dict_code = 'application_type') t4 on t4.item_value = t3.application_type
        ${ew.customSqlSegment}
    </select>
</mapper>
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/ToolsLossBoundDetailMapper.xml
@@ -15,46 +15,60 @@
    </select>
    <select id="queryPageList" resultType="org.jeecg.modules.tms.entity.ToolsLossBoundDetail">
        SELECT
        t1.*,
        t2.chinese_name chineseName,
        t2.tool_model toolModel,
        t2.classify_id  classifyId,
        t2.parama_table_name paramaTableName,
        t3.application_type applicationType,
        t3.supplier_id supplierId,
        t.*,
        t1.classify_id AS classifyId,
        t2.tool_model AS toolModel,
        t2.parama_table_name AS paramaTableName,
        t3.position_code AS positionCode,
        t3.application_type AS applicationType,
        t2.chinese_name AS chineseName,
        t3.supplier_id AS supplierId,
        t3.storage_location AS storageLocation,
        <choose>
            <when test="ew.paramNameValuePairs.paramaTableName == '1'">
                t4.tool_material toolMaterial,
                t4.part_material partMaterial
            </when>
            <when test="ew.paramNameValuePairs.paramaTableName == '2'">
                t5.tool_material toolMaterial,
                t5.part_material partMaterial
            </when>
            <when test="ew.paramNameValuePairs.paramaTableName == '3'">
            <when test="ew.paramNameValuePairs.paramaTableName == '2'">
                t6.tool_material toolMaterial,
                t6.part_material partMaterial
            </when>
            <when test="ew.paramNameValuePairs.paramaTableName == '4'">
            <when test="ew.paramNameValuePairs.paramaTableName == '3'">
                t7.tool_material toolMaterial,
                t7.part_material partMaterial
            </when>
            <when test="ew.paramNameValuePairs.paramaTableName == '5'">
            <when test="ew.paramNameValuePairs.paramaTableName == '4'">
                t8.tool_material toolMaterial,
                t8.part_material partMaterial
            </when>
            <when test="ew.paramNameValuePairs.paramaTableName == '6'">
            <when test="ew.paramNameValuePairs.paramaTableName == '5'">
                t9.tool_material toolMaterial,
                t9.part_material partMaterial
            </when>
            <when test="ew.paramNameValuePairs.paramaTableName == '6'">
                t10.tool_material toolMaterial,
                t10.part_material partMaterial
            </when>
            <otherwise>
                t10.tool_material toolMaterial,
                t10.part_material partMaterial
            </otherwise>
        </choose>
        FROM tms_loss_bound_detail t1
        LEFT JOIN tms_base_tools t2 on t1.tool_id = t2.id
        LEFT JOIN tms_tools_config_property t3 on t3.tool_code = t2.id
        FROM tms_loss_bound_detail t
        left join tms_tool_ledger t1 ON  t1.tool_id= t.tool_Code
        left join tms_tools_classify t4 on t4.id = t1.classify_id
        left join tms_base_tools t2 on t2.id = t.tool_code
        left join tms_tools_config_property t3 on t3.tool_code = t.tool_code
--         LEFT JOIN tms_base_tools t2 on t1.tool_id = t2.id
--         LEFT JOIN tms_tools_config_property t3 on t3.tool_code = t2.id
        <choose>
            <when test="ew.paramNameValuePairs.paramaTableName == '1'">
@@ -81,4 +95,28 @@
        </choose>
        ${ew.customSqlSegment}
    </select>
    <select id="toolLossDetailList" resultType="map" parameterType="String">
        SELECT
            t1.id,
            t1.tool_id onlyCode,
            t1.loss_number lossNumber,
            t1.loss_reason lossReason,
            t2.order_code orderCode,
            t2.loss_time lossTime,
            t3.id toolCodeId,
            t3.tool_code toolCode,
            t3.chinese_name chineseName,
            t3.tool_model toolModel,
            t4.classify_id classifyNum,
            t5.item_text handler
        FROM
            tms_loss_bound_detail t1
                LEFT JOIN tms_loss_bound t2 ON t2.id = t1.loss_bound_id
                LEFT JOIN tms_base_tools t3 ON t3.id = t1.tool_code
                LEFT JOIN tms_tools_classify t4 ON t4.id = t3.classify_id
                LEFT JOIN ( SELECT * FROM v_sys_dict WHERE dict_code = 'sys_user' ) t5 ON t5.item_value = t2.handler
            ${ew.customSqlSegment}
    </select>
</mapper>
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/ToolsSharpeningMapper.xml
@@ -2,25 +2,49 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.tms.mapper.ToolsSharpeningMapper">
    <select id="queryPageList" resultType="org.jeecg.modules.tms.entity.vo.ToolSharpeningVo">
        SELECT
            t.*,
            t1.classify_id AS classifyId,
            t1.parama_table_name AS paramaTableName,
            t2.type_name AS typeName,
            t3.application_type AS applicationType,
            t3.tool_model AS toolModel,
            t3.province_city AS provinceCity,
            t3.chinese_name AS chineseName,
            t3.supplier_id AS supplierId,
            t3.storage_location AS storageLocation,
            t3.main_unit AS mainUnit,
            t4.position_code AS positionCode,
            t4.warehouse_id AS warehouseId
        SELECT t.*,
               t2.tool_model        AS toolModel,
               t2.parama_table_name AS paramaTableName,
               t.tool_id            AS toolId,
               t3.position_code     AS positionCode,
               t3.application_type  AS applicationType,
               t3.chinese_name      AS chineseName,
               t3.supplier_id       AS supplierId,
               t3.storage_location  AS storageLocation,
               t3.main_unit         AS mainUnit,
               t3.warehouse_id      AS warehouseId,
               t4.classify_id       AS classifyId,
               t3.province_city     AS provinceCity
        FROM tms_tool_sharpening t
                 LEFT JOIN tms_base_tools t1 ON t1.id = t.tool_code
                 LEFT JOIN tms_tools_classify t2 ON t1.classify_id = t2.id
                 LEFT JOIN tms_tools_config_property t3 ON t3.tool_code = t.tool_id
                 LEFT JOIN tms_tool_ledger_detail t4 ON t4.tool_code = t.tool_id
        ${ew.customSqlSegment}
                 left join tms_tool_ledger t1 ON t1.tool_id = t.tool_Code
                 left join tms_tool_ledger_detail t5 ON t5.tool_id = t.tool_Code
                 left join tms_tools_classify t4 on t4.id = t1.classify_id
                 left join tms_base_tools t2 on t2.id = t.tool_code
                 left join tms_tools_config_property t3 on t3.tool_code = t.tool_code
            ${ew.customSqlSegment}
    </select>
    <select id="toolSharpeningList" resultType="map" parameterType="String">
        SELECT
            t1.id,
            t1.tool_id onlyCode,
            t1.sharpening_time sharpeningTime,
            t1.sharpening_result sharpeningResult,
            t1.sharpening_status sharpeningStatus,
            t1.responsible_person responsiblePerson,
            t2.tool_code toolCode,
            t2.chinese_name chineseName,
            t2.tool_model toolModel,
            t3.classify_id classifyNum,
            t4.item_text sharpeningStatusName
        FROM
            tms_tool_sharpening t1
                LEFT JOIN tms_base_tools t2 ON t2.id = t1.tool_code
                LEFT JOIN tms_tools_classify t3 ON t3.id = t2.classify_id
                LEFT JOIN ( SELECT * FROM v_sys_dict WHERE dict_code = 'sharpening_status' ) t4 ON t4.item_value = t1.sharpening_status
            ${ew.customSqlSegment}
    </select>
</mapper>
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/ToolsStocktakingBoundDetailMapper.xml
@@ -88,4 +88,30 @@
            ${ew.customSqlSegment}
    </select>
    <select id="toolsStocktakingList" resultType="map" parameterType="String">
        SELECT
            t1.id,
            t1.tool_id onlyCode,
            t1.book_quantity bookQuantity,
            t1.available_quantity availableQuantity,
            t1.practical_quantity practicalQuantity,
            t1.surplus_deficit surplusDeficit,
            t1.stocktaking_date stocktakingDate,
            t2.order_code orderCode,
            t2.stocktaking_type stocktakingType,
            t2.stocktaking_name stocktakingName,
            t3.tool_code toolCode,
            t3.chinese_name chineseName,
            t3.tool_model toolModel,
            t4.classify_id classifyNum,
            t5.item_text handler
        FROM
            tms_stocktaking_bound_detail t1
                LEFT JOIN tms_stocktaking_bound t2 ON t2.id = t1.stocktaking_bound_id
                LEFT JOIN tms_base_tools t3 ON t3.id = t1.tool_code
                LEFT JOIN tms_tools_classify t4 ON t4.id = t3.classify_id
                LEFT JOIN ( SELECT * FROM v_sys_dict WHERE dict_code = 'sys_user' ) t5 ON t5.item_value = t2.handler
            ${ew.customSqlSegment}
    </select>
</mapper>
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IOutStoreDetailService.java
@@ -17,4 +17,6 @@
public interface IOutStoreDetailService extends IService<OutStoreDetail> {
    IPage<OutStoreDetailVo> queryPageList(Page<OutStoreDetailVo> page, Map<String, String[]> parameterMap);
    IPage<Map<String, Object>> outStoreDetailList(Integer pageNo, Integer pageSize, Map<String, String> query);
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IToolLedgerDetailService.java
@@ -20,4 +20,6 @@
    IPage<Map<String, Object>> queryLendTool(Integer pageNo, Integer pageSize, Map<String, String> query);
    IPage<Map<String, Object>> querySharpenTool(Integer pageNo, Integer pageSize, Map<String, String> query);
    IPage<Map<String, Object>> queryToolLedgerDetailList(Integer pageNo, Integer pageSize, Map<String, String> query);
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IToolLedgerService.java
@@ -1,7 +1,10 @@
package org.jeecg.modules.tms.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.jeecg.modules.tms.entity.ToolLedger;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.Map;
/**
 * @Description: tms_tool_ledger
@@ -11,4 +14,5 @@
 */
public interface IToolLedgerService extends IService<ToolLedger> {
    IPage<Map<String, Object>> toolLedgerList(Integer pageNo, Integer pageSize, Map<String, String> query);
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IToolsLossBoundDetailService.java
@@ -19,4 +19,6 @@
 */
public interface IToolsLossBoundDetailService extends IService<ToolsLossBoundDetail> {
    IPage<ToolsLossBoundDetail> queryPageList(Page<ToolsLossBoundDetail> page, Map<String, String[]> parameterMap);
    IPage<Map<String, Object>> toolLossDetailList(Integer pageNo, Integer pageSize, Map<String, String> query);
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IToolsSharpeningService.java
@@ -16,4 +16,6 @@
 */
public interface IToolsSharpeningService extends IService<ToolSharpening> {
    IPage<ToolSharpeningVo> queryPageList(Page<ToolSharpeningVo> page, Map<String, String[]> parameterMap);
    IPage<Map<String, Object>> toolSharpeningList(Integer pageNo, Integer pageSize, Map<String, String> query);
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IToolsStocktakingBoundDetailService.java
@@ -27,5 +27,5 @@
     */
    public   IPage<ToolsStocktakingBoundDetail> selectByMainId(Page<ToolsStocktakingBoundDetail> page, Map<String, String[]> parameterMap);
    IPage<Map<String, Object>> toolsStocktakingList(Integer pageNo, Integer pageSize, Map<String, String> query);
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/InboundOrderServiceImpl.java
@@ -68,6 +68,9 @@
    @Autowired
    private IInboundDetailService inboundDetailService;
    @Autowired
    private IGoodsShelvesService goodsShelvesService;
    @Override
    public boolean submit(String id) {
        InboundOrder inboundOrder = this.getById(id);
@@ -215,6 +218,7 @@
    @Override
    public void addInStorage(JSONObject jSONObject) {
        String inStorehouseType = jSONObject.getString("inStorehouseType");
        String locationCodeId = jSONObject.getString("locationCodeId");
        String classifyId = jSONObject.getString("classifyId");
        Date inboundTime = jSONObject.getDate("inboundTime");
        //获取入库明细
@@ -266,6 +270,7 @@
                        inStoreDetail.setInStorehouseType("1");
                        inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId());
                        inStoreDetail.setToolId(inboundDetailVo.getToolCode()+"-"+result);
                        inStoreDetail.setGoodsShelvesId(locationCodeId);
                        inStoreDetailService.save(inStoreDetail);
                        //增加库存明细
                        ToolLedgerDetail toolLedgerDetail = new ToolLedgerDetail();
@@ -287,6 +292,7 @@
                    inStoreDetail.setInNumber(inboundDetailVo.getInStorageQuantity());
                    inStoreDetail.setInStorehouseType("1");
                    inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId());
                    inStoreDetail.setGoodsShelvesId(locationCodeId);
                    inStoreDetailService.save(inStoreDetail);
                    //查询库存明细中是否存在该工具
                    ToolLedgerDetail toolLedgerDetail = toolLedgerDetailService.lambdaQuery().eq(ToolLedgerDetail::getToolCode,inboundDetailVo.getToolCodeId()).one();
@@ -331,6 +337,7 @@
                    inStoreDetail.setInStorehouseType("2");
                    inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId());
                    inStoreDetail.setToolId(inboundDetailVo.getOnlyCode());
                    inStoreDetail.setGoodsShelvesId(locationCodeId);
                    inStoreDetailService.save(inStoreDetail);
                    //不管到把
                }else {
@@ -346,6 +353,7 @@
                    inStoreDetail.setInNumber(inboundDetailVo.getInStorageQuantity());
                    inStoreDetail.setInStorehouseType("2");
                    inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId());
                    inStoreDetail.setGoodsShelvesId(locationCodeId);
                    inStoreDetailService.save(inStoreDetail);
                }
@@ -378,6 +386,7 @@
                    inStoreDetail.setInStorehouseType("5");
                    inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId());
                    inStoreDetail.setToolId(inboundDetailVo.getOnlyCode());
                    inStoreDetail.setGoodsShelvesId(locationCodeId);
                    inStoreDetailService.save(inStoreDetail);
                    //不管到把
                }else {
@@ -393,6 +402,7 @@
                    inStoreDetail.setInNumber(inboundDetailVo.getInStorageQuantity());
                    inStoreDetail.setInStorehouseType("5");
                    inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId());
                    inStoreDetail.setGoodsShelvesId(locationCodeId);
                    inStoreDetailService.save(inStoreDetail);
                }
@@ -403,6 +413,7 @@
    @Override
    public void addApplyInStorage(JSONObject jSONObject) {
        String inStorehouseType = jSONObject.getString("inStorehouseType");
        String locationCodeId = jSONObject.getString("locationCodeId");
        //入库申请单id
        String orderId = jSONObject.getString("orderId");
        //获取入库明细
@@ -455,6 +466,7 @@
                        inStoreDetail.setInStorehouseType("1");
                        inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId());
                        inStoreDetail.setToolId(inboundDetailVo.getToolCode()+"-"+result);
                        inStoreDetail.setGoodsShelvesId(locationCodeId);
                        inStoreDetailService.save(inStoreDetail);
                        //增加库存明细
                        ToolLedgerDetail toolLedgerDetail = new ToolLedgerDetail();
@@ -477,6 +489,7 @@
                    inStoreDetail.setInStorehouseType("1");
                    inStoreDetail.setInStorehouseId(orderId);
                    inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId());
                    inStoreDetail.setGoodsShelvesId(locationCodeId);
                    inStoreDetailService.save(inStoreDetail);
                    //查询库存明细中是否存在该工具
                    ToolLedgerDetail toolLedgerDetail = toolLedgerDetailService.lambdaQuery().eq(ToolLedgerDetail::getToolCode,inboundDetailVo.getToolCodeId()).one();
@@ -527,6 +540,7 @@
                    inStoreDetail.setInStorehouseId(orderId);
                    inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId());
                    inStoreDetail.setToolId(inboundDetailVo.getOnlyCode());
                    inStoreDetail.setGoodsShelvesId(locationCodeId);
                    inStoreDetailService.save(inStoreDetail);
                    //不管到把
                }else {
@@ -543,6 +557,7 @@
                    inStoreDetail.setInStorehouseType("2");
                    inStoreDetail.setInStorehouseId(orderId);
                    inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId());
                    inStoreDetail.setGoodsShelvesId(locationCodeId);
                    inStoreDetailService.save(inStoreDetail);
                }
                //更改明细入库状态及实际入库数量
@@ -580,6 +595,7 @@
                    inStoreDetail.setInStorehouseId(orderId);
                    inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId());
                    inStoreDetail.setToolId(inboundDetailVo.getOnlyCode());
                    inStoreDetail.setGoodsShelvesId(locationCodeId);
                    inStoreDetailService.save(inStoreDetail);
                    //不管到把
                }else {
@@ -596,6 +612,7 @@
                    inStoreDetail.setInStorehouseType("5");
                    inStoreDetail.setInStorehouseId(orderId);
                    inStoreDetail.setToolCode(inboundDetailVo.getToolCodeId());
                    inStoreDetail.setGoodsShelvesId(locationCodeId);
                    inStoreDetailService.save(inStoreDetail);
                }
                //更改明细入库状态及实际入库数量
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/OutStoreDetailServiceImpl.java
@@ -2,8 +2,11 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.metadata.OrderItem;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.commons.lang.StringUtils;
import org.jeecg.common.exception.ExceptionCast;
import org.jeecg.modules.tms.entity.OutStoreDetail;
import org.jeecg.modules.tms.entity.vo.OutStoreDetailVo;
import org.jeecg.modules.tms.mapper.OutStoreDetailMapper;
@@ -12,6 +15,8 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
@@ -41,4 +46,32 @@
        queryWrapper.orderByDesc("t1.create_time");
        return this.baseMapper.queryPageList(page, queryWrapper);
    }
    @Override
    public IPage<Map<String, Object>> outStoreDetailList(Integer pageNo, Integer pageSize, Map<String, String> query) {
        if (pageNo == null || pageNo < 1 || pageSize == null || pageSize < 1) {
            ExceptionCast.cast("参数错误");
        }
        IPage<Map> pageData = new Page<Map>(pageNo, pageSize);
        QueryWrapper<Map> queryWrapper = Wrappers.query();
        if (null != query) {
            String classifyId = query.get("classifyId");
            if (StringUtils.isNotBlank(classifyId)) {
                queryWrapper.eq("t2.classify_id", classifyId);
            }
            String toolCode = query.get("toolCode");
            if (StringUtils.isNotBlank(toolCode)) {
                queryWrapper.like("t2.tool_code", toolCode);
            }
            String toolModel = query.get("toolModel");
            if (StringUtils.isNotBlank(toolModel)) {
                queryWrapper.like("t2.tool_mode", toolModel);
            }
            // æŽ’序写法
            List<OrderItem> orderItems = new ArrayList<>();
            orderItems.add(OrderItem.desc("t1.create_time"));
            ((Page<Map>) pageData).setOrders(orderItems);
        }
        return super.getBaseMapper().outStoreDetailList(pageData,queryWrapper);
    }
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/ToolLedgerDetailServiceImpl.java
@@ -98,4 +98,29 @@
        }
        return this.baseMapper.querySharpenTool(pageData,queryWrapper);
    }
    @Override
    public IPage<Map<String, Object>> queryToolLedgerDetailList(Integer pageNo, Integer pageSize, Map<String, String> query) {
        if (pageNo == null || pageNo < 1 || pageSize == null || pageSize < 1) {
            ExceptionCast.cast("参数错误");
        }
        IPage<Map> pageData = new Page<Map>(pageNo, pageSize);
        QueryWrapper<Map> queryWrapper = Wrappers.query();
        if (null != query) {
            String toolCode = query.get("toolCode");
            if (StringUtils.isNotBlank(toolCode)) {
                queryWrapper.like("t2.tool_code", toolCode);
            }
            String status = query.get("status");
            if (StringUtils.isNotBlank(status)) {
                queryWrapper.eq("t1.status", status);
            }
            String classifyId = query.get("classifyId");
            if (StringUtils.isNotBlank(classifyId)) {
                queryWrapper.like("t2.classify_id", classifyId);
            }
        }
        return this.baseMapper.queryToolLedgerDetailList(pageData,queryWrapper);
    }
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/ToolLedgerServiceImpl.java
@@ -1,11 +1,22 @@
package org.jeecg.modules.tms.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.metadata.OrderItem;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.commons.lang.StringUtils;
import org.jeecg.common.exception.ExceptionCast;
import org.jeecg.modules.tms.entity.ToolLedger;
import org.jeecg.modules.tms.mapper.ToolLedgerMapper;
import org.jeecg.modules.tms.service.IToolLedgerService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
 * @Description: tms_tool_ledger
@@ -16,4 +27,31 @@
@Service
public class ToolLedgerServiceImpl extends ServiceImpl<ToolLedgerMapper, ToolLedger> implements IToolLedgerService {
    @Override
    public IPage<Map<String, Object>> toolLedgerList(Integer pageNo, Integer pageSize, Map<String, String> query) {
        if (pageNo == null || pageNo < 1 || pageSize == null || pageSize < 1) {
            ExceptionCast.cast("参数错误");
        }
        IPage<Map> pageData = new Page<Map>(pageNo, pageSize);
        QueryWrapper<Map> queryWrapper = Wrappers.query();
        if (null != query) {
            String classifyId = query.get("classifyId");
            if (StringUtils.isNotBlank(classifyId)) {
                queryWrapper.eq("t1.classify_id", classifyId);
            }
            String toolCode = query.get("toolCode");
            if (StringUtils.isNotBlank(toolCode)) {
                queryWrapper.like("t2.tool_code", toolCode);
            }
            String toolModel = query.get("toolModel");
            if (StringUtils.isNotBlank(toolModel)) {
                queryWrapper.like("t2.tool_mode", toolModel);
            }
            // æŽ’序写法
            List<OrderItem> orderItems = new ArrayList<>();
            orderItems.add(OrderItem.desc("t1.create_time"));
            ((Page<Map>) pageData).setOrders(orderItems);
        }
        return super.getBaseMapper().toolLedgerList(pageData,queryWrapper);
    }
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/ToolsLossBoundDetailServiceImpl.java
@@ -3,8 +3,11 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.metadata.OrderItem;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.commons.lang.StringUtils;
import org.jeecg.common.exception.ExceptionCast;
import org.jeecg.modules.tms.entity.OutboundDetail;
import org.jeecg.modules.tms.entity.ToolsLossBound;
import org.jeecg.modules.tms.entity.ToolsLossBoundDetail;
@@ -15,6 +18,8 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
@@ -31,8 +36,36 @@
        QueryWrapper<ToolsLossBoundDetail> queryWrapper = Wrappers.query();
        String[] outStorehouseIds = parameterMap.get("lossBoundId");
        if (outStorehouseIds != null && outStorehouseIds.length > 0) {
            queryWrapper.eq("t1.loss_bound_id", outStorehouseIds[0]);
            queryWrapper.eq("t.loss_bound_id", outStorehouseIds[0]);
        }
        return this.baseMapper.queryPageList(page, queryWrapper);
    }
    @Override
    public IPage<Map<String, Object>> toolLossDetailList(Integer pageNo, Integer pageSize, Map<String, String> query) {
        if (pageNo == null || pageNo < 1 || pageSize == null || pageSize < 1) {
            ExceptionCast.cast("参数错误");
        }
        IPage<Map> pageData = new Page<Map>(pageNo, pageSize);
        QueryWrapper<Map> queryWrapper = Wrappers.query();
        if (null != query) {
            String classifyId = query.get("classifyId");
            if (StringUtils.isNotBlank(classifyId)) {
                queryWrapper.eq("t3.classify_id", classifyId);
            }
            String toolCode = query.get("toolCode");
            if (StringUtils.isNotBlank(toolCode)) {
                queryWrapper.like("t3.tool_code", toolCode);
            }
            String toolModel = query.get("toolModel");
            if (StringUtils.isNotBlank(toolModel)) {
                queryWrapper.like("t3.tool_mode", toolModel);
            }
            // æŽ’序写法
            List<OrderItem> orderItems = new ArrayList<>();
            orderItems.add(OrderItem.desc("t1.create_time"));
            ((Page<Map>) pageData).setOrders(orderItems);
        }
        return super.getBaseMapper().toolLossDetailList(pageData,queryWrapper);
    }
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/ToolsSharpeningServiceImpl.java
@@ -2,8 +2,11 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.metadata.OrderItem;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.commons.lang.StringUtils;
import org.jeecg.common.exception.ExceptionCast;
import org.jeecg.modules.tms.entity.ToolSharpening;
import org.jeecg.modules.tms.entity.ToolsLossBoundDetail;
import org.jeecg.modules.tms.entity.vo.ToolSharpeningVo;
@@ -12,6 +15,8 @@
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
@@ -48,5 +53,32 @@
        return this.baseMapper.queryPageList(page, queryWrapper);
    }
    @Override
    public IPage<Map<String, Object>> toolSharpeningList(Integer pageNo, Integer pageSize, Map<String, String> query) {
        if (pageNo == null || pageNo < 1 || pageSize == null || pageSize < 1) {
            ExceptionCast.cast("参数错误");
        }
        IPage<Map> pageData = new Page<Map>(pageNo, pageSize);
        QueryWrapper<Map> queryWrapper = Wrappers.query();
        if (null != query) {
            String classifyId = query.get("classifyId");
            if (StringUtils.isNotBlank(classifyId)) {
                queryWrapper.eq("t2.classify_id", classifyId);
            }
            String toolCode = query.get("toolCode");
            if (StringUtils.isNotBlank(toolCode)) {
                queryWrapper.like("t2.tool_code", toolCode);
            }
            String toolModel = query.get("toolModel");
            if (StringUtils.isNotBlank(toolModel)) {
                queryWrapper.like("t2.tool_mode", toolModel);
            }
            // æŽ’序写法
            List<OrderItem> orderItems = new ArrayList<>();
            orderItems.add(OrderItem.desc("t1.create_time"));
            ((Page<Map>) pageData).setOrders(orderItems);
        }
        return super.getBaseMapper().toolSharpeningList(pageData,queryWrapper);
    }
}
lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/ToolsStocktakingBoundDetailServiceImpl.java
@@ -2,15 +2,19 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.metadata.OrderItem;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.lang.StringUtils;
import org.jeecg.common.exception.ExceptionCast;
import org.jeecg.modules.tms.entity.ToolsStocktakingBoundDetail;
import org.jeecg.modules.tms.mapper.ToolsStocktakingBoundDetailMapper;
import org.jeecg.modules.tms.service.IToolsStocktakingBoundDetailService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@@ -36,4 +40,32 @@
        return toolsStocktakingBoundDetailMapper.selectByMainId(page, queryWrapper);
    }
    @Override
    public IPage<Map<String, Object>> toolsStocktakingList(Integer pageNo, Integer pageSize, Map<String, String> query) {
        if (pageNo == null || pageNo < 1 || pageSize == null || pageSize < 1) {
            ExceptionCast.cast("参数错误");
        }
        IPage<Map> pageData = new Page<Map>(pageNo, pageSize);
        QueryWrapper<Map> queryWrapper = Wrappers.query();
        if (null != query) {
            String classifyId = query.get("classifyId");
            if (StringUtils.isNotBlank(classifyId)) {
                queryWrapper.eq("t3.classify_id", classifyId);
            }
            String toolCode = query.get("toolCode");
            if (StringUtils.isNotBlank(toolCode)) {
                queryWrapper.like("t3.tool_code", toolCode);
            }
            String toolModel = query.get("toolModel");
            if (StringUtils.isNotBlank(toolModel)) {
                queryWrapper.like("t3.tool_mode", toolModel);
            }
            // æŽ’序写法
            List<OrderItem> orderItems = new ArrayList<>();
            orderItems.add(OrderItem.desc("t1.create_time"));
            ((Page<Map>) pageData).setOrders(orderItems);
        }
        return super.getBaseMapper().toolsStocktakingList(pageData,queryWrapper);
    }
}