From a3cfd941f3ccb05906ecbe99e6993f96770b51ed Mon Sep 17 00:00:00 2001
From: Lius <Lius2225@163.com>
Date: 星期四, 10 七月 2025 10:43:05 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusEvaluationOrderDetail.java                  |   73 +
 db/template/设备点检标准导入模板.xlsx                                                                                              |    0 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusChangeDetail.java                           |   67 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusDeactivateServiceImpl.java            |   19 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusChangeDetailService.java                  |   14 
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamEquipment.java                                      |   23 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusDeactivateService.java                    |   14 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationOrderChangeServiceImpl.java |   19 
 db/430设备管理数据库设计.pdma.json                                                                                                |    6 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusEvaluationApplicationMapper.xml         |    5 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationOrderController.java          |  151 ++
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/dto/EamEquipmentDto.java                                      |   18 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusChangeDetailController.java             |  151 ++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusDeactivateDetailMapper.java                 |   17 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusChangeDetailServiceImpl.java          |   19 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusEvaluationApplication.java                  |   91 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusEvaluationOrderChangeService.java         |   14 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusDeactivateMapper.java                       |   17 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusEvaluationOrderDetailMapper.java            |   17 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusChangeController.java                   |  151 ++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusChangeService.java                        |   14 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusChange.java                                 |   79 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java                               |   15 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusChangeMapper.java                           |   17 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationApplicationServiceImpl.java |   19 
 db/template/生产设备三级保养规范.docx                                                                                              |    0 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusDeactivateDetailMapper.xml              |    5 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusEvaluationOrder.java                        |  133 ++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusEvaluationOrderChange.java                  |   97 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusEvaluationOrderMapper.xml               |    5 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamMaintenanceStandardService.java                          |    2 
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/EamBaseRepairDepartImpl.java      |   24 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusChangeMapper.xml                        |    5 
 db/ZHR/menu_zhr.sql                                                                                                      |    0 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusDeactivateMapper.xml                    |    5 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusEvaluationOrderDetailMapper.xml         |    5 
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamEquipmentQuery.java                                |    5 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusChangeServiceImpl.java                |   19 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusEvaluationOrderChangeMapper.java            |   17 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusDeactivateDetail.java                       |   55 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusChangeDetailMapper.xml                  |    5 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationOrderDetailServiceImpl.java |   19 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusDeactivateController.java               |  151 ++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationOrderServiceImpl.java       |   19 
 db/template/生产设备二级保养规范.docx                                                                                              |    0 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusDeactivateDetailController.java         |  151 ++
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/BaseFactoryServiceImpl.java       |  100 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusDeactivateDetailService.java              |   14 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMaintenanceStandardController.java                     |   73 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusEvaluationApplicationMapper.java            |   17 
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java                     |    6 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationApplicationController.java    |  151 ++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusChangeDetailMapper.java                     |   17 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusDeactivateDetailServiceImpl.java      |   19 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusEvaluationOrderMapper.java                  |   17 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java                  |    5 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusEvaluationApplicationService.java         |   14 
 db/ZHR/dict_zhr.sql                                                                                                      |    0 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationOrderDetailController.java    |  151 ++
 db/template/设备台账导入模板.xls                                                                                                 |    0 
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/IEamBaseRepairDepartService.java       |    8 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusEvaluationOrderChangeMapper.xml         |    5 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationOrderChangeController.java    |  151 ++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusEvaluationOrderService.java               |   14 
 db/ZHR/create_table_zhr.sql                                                                                              |  722 ++++++++++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusDeactivate.java                             |   82 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusEvaluationOrderDetailService.java         |   14 
 67 files changed, 3,259 insertions(+), 73 deletions(-)

diff --git "a/db/430\350\256\276\345\244\207\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223\350\256\276\350\256\241.pdma.json" "b/db/430\350\256\276\345\244\207\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223\350\256\276\350\256\241.pdma.json"
index 6ebaead..bf57e7b 100644
--- "a/db/430\350\256\276\345\244\207\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223\350\256\276\350\256\241.pdma.json"
+++ "b/db/430\350\256\276\345\244\207\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223\350\256\276\350\256\241.pdma.json"
@@ -4,7 +4,7 @@
   "avatar": "",
   "version": "4.9.2",
   "createdTime": "2025-3-10 16:38:19",
-  "updatedTime": "2025-7-8 15:34:54",
+  "updatedTime": "2025-7-9 19:20:22",
   "dbConns": [],
   "profile": {
     "default": {
@@ -24945,7 +24945,7 @@
           "id": "F19406B3-1B81-484F-B916-81143EB092A4"
         },
         {
-          "defKey": "process_technician鈥媉signature",
+          "defKey": "process_technician_signature",
           "defName": "宸ヨ壓鍛樼瀛�",
           "comment": "",
           "type": "",
@@ -24963,7 +24963,7 @@
           "id": "44FAEC7F-5BA9-4AD0-8692-DA36C64E4B7C"
         },
         {
-          "defKey": "process_technician鈥媉signature_time",
+          "defKey": "process_technician_signature_time",
           "defName": "宸ヨ壓鍛樼瀛楁椂闂�",
           "comment": "",
           "type": "",
diff --git a/db/ZHR/create_table_zhr.sql b/db/ZHR/create_table_zhr.sql
new file mode 100644
index 0000000..7a2cb5a
--- /dev/null
+++ b/db/ZHR/create_table_zhr.sql
@@ -0,0 +1,722 @@
+-- HF缂栫爜缁存姢
+IF EXISTS (SELECT *
+           FROM sys.objects
+           WHERE object_id = OBJECT_ID(N'[dbo].[eam_base_hf_code]')
+             AND type in (N'U'))
+    DROP TABLE [dbo].[eam_base_hf_code];
+CREATE TABLE [dbo].[eam_base_hf_code]
+(
+    id          NVARCHAR(32) NOT NULL,
+    create_by   NVARCHAR(50),
+    create_time DATETIME2,
+    update_by   NVARCHAR(50),
+    update_time DATETIME2,
+    del_flag    INT,
+    hf_code     NVARCHAR(100),
+    hf_name     NVARCHAR(255),
+    hf_category NVARCHAR(64),
+    hf_status   NVARCHAR(64),
+    hf_version  NVARCHAR(50),
+    PRIMARY KEY (id)
+);
+
+EXEC sp_addextendedproperty 'MS_Description', '鎶ヨ〃HFCode缁存姢', 'SCHEMA', dbo, 'table', eam_base_hf_code, null, null;
+EXEC sp_addextendedproperty 'MS_Description', '涓婚敭', 'SCHEMA', dbo, 'table', eam_base_hf_code, 'column', id;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓浜�', 'SCHEMA', dbo, 'table', eam_base_hf_code, 'column', create_by;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓鏃堕棿', 'SCHEMA', dbo, 'table', eam_base_hf_code, 'column',
+     create_time;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊浜�', 'SCHEMA', dbo, 'table', eam_base_hf_code, 'column', update_by;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊鏃堕棿', 'SCHEMA', dbo, 'table', eam_base_hf_code, 'column',
+     update_time;
+EXEC sp_addextendedproperty 'MS_Description', '鍒犻櫎鏍囪', 'SCHEMA', dbo, 'table', eam_base_hf_code, 'column', del_flag;
+EXEC sp_addextendedproperty 'MS_Description', 'HF缂栫爜', 'SCHEMA', dbo, 'table', eam_base_hf_code, 'column', hf_code;
+EXEC sp_addextendedproperty 'MS_Description', '妯℃澘鍚嶇О', 'SCHEMA', dbo, 'table', eam_base_hf_code, 'column', hf_name;
+EXEC sp_addextendedproperty 'MS_Description', '妯℃澘鍒嗙被', 'SCHEMA', dbo, 'table', eam_base_hf_code, 'column',
+     hf_category;
+EXEC sp_addextendedproperty 'MS_Description', '鐘舵��;鍚敤銆佺鐢�', 'SCHEMA', dbo, 'table', eam_base_hf_code, 'column',
+     hf_status;
+EXEC sp_addextendedproperty 'MS_Description', '鐗堟湰;V1锛孷2+', 'SCHEMA', dbo, 'table', eam_base_hf_code, 'column',
+     hf_version;
+
+--鎶�鏈壌瀹氳鑼�
+IF EXISTS (SELECT *
+           FROM sys.objects
+           WHERE object_id = OBJECT_ID(N'[dbo].[eam_technical_status_evaluation_standard]')
+             AND type in (N'U'))
+    DROP TABLE [dbo].[eam_technical_status_evaluation_standard];
+CREATE TABLE [dbo].[eam_technical_status_evaluation_standard]
+(
+    id                         NVARCHAR(32) NOT NULL,
+    create_by                  NVARCHAR(50),
+    create_time                DATETIME2,
+    update_by                  NVARCHAR(50),
+    update_time                DATETIME2,
+    del_flag                   INT,
+    standard_name              NVARCHAR(255),
+    standard_code              NVARCHAR(50),
+    evaluation_period          INT,
+    equipment_id               NVARCHAR(32),
+    standard_status            NVARCHAR(64),
+    has_safety_equipment_check NVARCHAR(64),
+    has_precision_check        NVARCHAR(64),
+    has_other_check            NVARCHAR(64),
+    standard_version           NVARCHAR(50),
+    remark                     NVARCHAR(255),
+    PRIMARY KEY (id)
+);
+
+EXEC sp_addextendedproperty 'MS_Description', '鎶�鏈姸鎬侀壌瀹氳鑼�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard, null, null;
+EXEC sp_addextendedproperty 'MS_Description', '涓婚敭', 'SCHEMA', dbo, 'table', eam_technical_status_evaluation_standard,
+     'column', id;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓浜�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard, 'column', create_by;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓鏃堕棿', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard, 'column', create_time;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊浜�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard, 'column', update_by;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊鏃堕棿', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard, 'column', update_time;
+EXEC sp_addextendedproperty 'MS_Description', '鍒犻櫎鏍囪', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard, 'column', del_flag;
+EXEC sp_addextendedproperty 'MS_Description', '瑙勮寖鍚嶇О', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard, 'column', standard_name;
+EXEC sp_addextendedproperty 'MS_Description', '瑙勮寖缂栫爜', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard, 'column', standard_code;
+EXEC sp_addextendedproperty 'MS_Description', '閴村畾鍛ㄦ湡', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard, 'column', evaluation_period;
+EXEC sp_addextendedproperty 'MS_Description', '璁惧ID', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard, 'column', equipment_id;
+EXEC sp_addextendedproperty 'MS_Description', '瑙勮寖鐘舵��;寰呮彁浜ゃ�佸惎鐢ㄣ�佷綔搴�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard, 'column', standard_status;
+EXEC sp_addextendedproperty 'MS_Description', '鏄惁鏈夊畨鍏ㄨ缃鏌�;鏄惁', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard, 'column', has_safety_equipment_check;
+EXEC sp_addextendedproperty 'MS_Description', '鏄惁鏈夎澶囩簿搴︽鏌�;鏄惁', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard, 'column', has_precision_check;
+EXEC sp_addextendedproperty 'MS_Description', '鏄惁鏈夊叾浠栨鏌�;鏄惁', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard, 'column', has_other_check;
+EXEC sp_addextendedproperty 'MS_Description', '鐗堟湰;V1,V2+', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard, 'column', standard_version;
+EXEC sp_addextendedproperty 'MS_Description', '澶囨敞', 'SCHEMA', dbo, 'table', eam_technical_status_evaluation_standard,
+     'column', remark;
+
+--鎶�鏈姸鎬侀壌瀹氳鑼冩槑缁�
+IF EXISTS (SELECT *
+           FROM sys.objects
+           WHERE object_id = OBJECT_ID(N'[dbo].[eam_technical_status_evaluation_standard_detail]')
+             AND type in (N'U'))
+    DROP TABLE [dbo].[eam_technical_status_evaluation_standard_detail];
+CREATE TABLE [dbo].[eam_technical_status_evaluation_standard_detail]
+(
+    id              NVARCHAR(32) NOT NULL,
+    create_by       NVARCHAR(50),
+    create_time     DATETIME2,
+    update_by       NVARCHAR(50),
+    update_time     DATETIME2,
+    standard_id     NVARCHAR(32),
+    check_category  NVARCHAR(64),
+    item_code       INT,
+    item_name       NVARCHAR(255),
+    tolerance_value NVARCHAR(100),
+    sub_item_name   NVARCHAR(255),
+    PRIMARY KEY (id)
+);
+
+EXEC sp_addextendedproperty 'MS_Description', '鎶�鏈姸鎬侀壌瀹氳鑼冩槑缁�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard_detail, null, null;
+EXEC sp_addextendedproperty 'MS_Description', '涓婚敭', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard_detail, 'column', id;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓浜�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard_detail, 'column', create_by;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓鏃堕棿', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard_detail, 'column', create_time;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊浜�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard_detail, 'column', update_by;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊鏃堕棿', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard_detail, 'column', update_time;
+EXEC sp_addextendedproperty 'MS_Description', '瑙勮寖ID', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard_detail, 'column', standard_id;
+EXEC sp_addextendedproperty 'MS_Description', '妫�鏌ュ垎绫�;绮惧害妫�鏌ャ�佸畨鍏ㄨ缃鏌ャ�佸叾浠栨鏌�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard_detail, 'column', check_category;
+EXEC sp_addextendedproperty 'MS_Description', '椤圭洰搴忓彿', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard_detail, 'column', item_code;
+EXEC sp_addextendedproperty 'MS_Description', '妫�鏌ラ」鐩�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard_detail, 'column', item_name;
+EXEC sp_addextendedproperty 'MS_Description', '鍏佸樊鍊�;绮惧害妫�鏌ュ睍绀�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard_detail, 'column', tolerance_value;
+EXEC sp_addextendedproperty 'MS_Description', '妫�鏌ュ瓙椤圭洰;绮惧害妫�鏌ュ睍绀猴紝鍙互涓虹┖', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_standard_detail, 'column', sub_item_name;
+
+--鎶�鏈姸鎬侀壌瀹氬伐鍗�
+IF EXISTS (SELECT *
+           FROM sys.objects
+           WHERE object_id = OBJECT_ID(N'[dbo].[eam_technical_status_evaluation_order]')
+             AND type in (N'U'))
+    DROP TABLE [dbo].[eam_technical_status_evaluation_order];
+CREATE TABLE [dbo].[eam_technical_status_evaluation_order]
+(
+    id                                NVARCHAR(32) NOT NULL,
+    create_by                         NVARCHAR(50),
+    create_time                       DATETIME2,
+    update_by                         NVARCHAR(50),
+    update_time                       DATETIME2,
+    del_flag                          INT,
+    order_num                         NVARCHAR(50),
+    equipment_id                      NVARCHAR(32),
+    standard_id                       NVARCHAR(32),
+    evaluation_date                   DATETIME2,
+    freeze_order_date                 DATETIME2,
+    order_expiration_date             DATETIME2,
+    actual_start_time                 DATETIME2,
+    actual_end_time                   DATETIME2,
+    evaluator                         NVARCHAR(50),
+    evaluation_status                 NVARCHAR(64),
+    creation_method                   NVARCHAR(64),
+    safety_equipment_check_result     NVARCHAR(64),
+    precision_check_result            NVARCHAR(64),
+    functional_check_result           NVARCHAR(64),
+    other_check_result                NVARCHAR(64),
+    repair_manager_signature          NVARCHAR(50),
+    repair_manager_signature_time_1   DATETIME2,
+    sample_check_result               NVARCHAR(64),
+    process_technician_signature      NVARCHAR(50),
+    process_technician_signature_time DATETIME2,
+    evaluation_result                 NVARCHAR(64),
+    evaluation_reason                 NVARCHAR(64),
+    inspector_signature               NVARCHAR(50),
+    inspector_signature_time          DATETIME2,
+    hf_code_a                         NVARCHAR(100),
+    hf_code_b                         NVARCHAR(100),
+    hf_code_c                         NVARCHAR(100),
+    hf_code_d                         NVARCHAR(100),
+    remark                            NVARCHAR(255),
+    PRIMARY KEY (id)
+);
+
+EXEC sp_addextendedproperty 'MS_Description', '鎶�鏈姸鎬侀壌瀹氬伐鍗�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order, null, null;
+EXEC sp_addextendedproperty 'MS_Description', '涓婚敭', 'SCHEMA', dbo, 'table', eam_technical_status_evaluation_order,
+     'column', id;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓浜�', 'SCHEMA', dbo, 'table', eam_technical_status_evaluation_order,
+     'column', create_by;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓鏃堕棿', 'SCHEMA', dbo, 'table', eam_technical_status_evaluation_order,
+     'column', create_time;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊浜�', 'SCHEMA', dbo, 'table', eam_technical_status_evaluation_order,
+     'column', update_by;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊鏃堕棿', 'SCHEMA', dbo, 'table', eam_technical_status_evaluation_order,
+     'column', update_time;
+EXEC sp_addextendedproperty 'MS_Description', '鍒犻櫎鏍囪', 'SCHEMA', dbo, 'table', eam_technical_status_evaluation_order,
+     'column', del_flag;
+EXEC sp_addextendedproperty 'MS_Description', '宸ュ崟鍙�', 'SCHEMA', dbo, 'table', eam_technical_status_evaluation_order,
+     'column', order_num;
+EXEC sp_addextendedproperty 'MS_Description', '璁惧ID', 'SCHEMA', dbo, 'table', eam_technical_status_evaluation_order,
+     'column', equipment_id;
+EXEC sp_addextendedproperty 'MS_Description', '瑙勮寖ID', 'SCHEMA', dbo, 'table', eam_technical_status_evaluation_order,
+     'column', standard_id;
+EXEC sp_addextendedproperty 'MS_Description', '璁″垝閴村畾鏃ユ湡;鎻愬墠70澶╃敓鎴愬伐鍗�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order, 'column', evaluation_date;
+EXEC sp_addextendedproperty 'MS_Description', '閿佸畾宸ュ崟鏃ユ湡;鎻愬墠55澶╅攣瀹氬伐鍗�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order, 'column', freeze_order_date;
+EXEC sp_addextendedproperty 'MS_Description', '宸ュ崟杩囨湡鏃ユ湡;鍒版湡鏈仛鐩存帴杩囨湡锛屽苟淇敼璁惧鎶�鏈姸鎬佷负绂佺敤', 'SCHEMA', dbo,
+     'table', eam_technical_status_evaluation_order, 'column', order_expiration_date;
+EXEC sp_addextendedproperty 'MS_Description', '瀹為檯寮�濮嬫椂闂�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order, 'column', actual_start_time;
+EXEC sp_addextendedproperty 'MS_Description', '瀹為檯缁撴潫鏃堕棿', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order, 'column', actual_end_time;
+EXEC sp_addextendedproperty 'MS_Description', '閴村畾浜�', 'SCHEMA', dbo, 'table', eam_technical_status_evaluation_order,
+     'column', evaluator;
+EXEC sp_addextendedproperty 'MS_Description',
+     '閴村畾鐘舵��;寰呴壌瀹氥�侀壌瀹氫腑銆佺淮淇涓讳换绛惧瓧銆佸伐鑹轰汉鍛樼瀛椼�佹妧鏈富绠$瀛椼�佽澶囨楠屽憳绛惧瓧銆佸凡瀹屾垚銆佸凡閿佸畾銆佸彉鏇翠腑銆佸凡杩囨湡',
+     'SCHEMA', dbo, 'table', eam_technical_status_evaluation_order, 'column', evaluation_status;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓鏂瑰紡', 'SCHEMA', dbo, 'table', eam_technical_status_evaluation_order,
+     'column', creation_method;
+EXEC sp_addextendedproperty 'MS_Description', '瀹夊叏瑁呯疆妫�鏌ョ粨鏋�;鏄�佸惁', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order, 'column', safety_equipment_check_result;
+EXEC sp_addextendedproperty 'MS_Description', '绮惧害鍙傛暟妫�鏌ョ粨鏋�;鏄�佸惁銆佹棤', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order, 'column', precision_check_result;
+EXEC sp_addextendedproperty 'MS_Description', '鍔熻兘鐘舵�佹鏌ョ粨鏋�;鏄�佸惁', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order, 'column', functional_check_result;
+EXEC sp_addextendedproperty 'MS_Description', '鍏朵粬妫�鏌ョ粨鏋�;鏄�佸惁銆佹棤', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order, 'column', other_check_result;
+EXEC sp_addextendedproperty 'MS_Description', '缁翠慨瀹や富浠荤瀛�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order, 'column', repair_manager_signature;
+EXEC sp_addextendedproperty 'MS_Description', '缁翠慨瀹や富浠荤瀛楁椂闂�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order, 'column', repair_manager_signature_time_1;
+EXEC sp_addextendedproperty 'MS_Description', '璇曚欢妫�鏌ョ粨鏋�;鍚堟牸銆佷笉鍚堟牸', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order, 'column', sample_check_result;
+EXEC sp_addextendedproperty 'MS_Description', '宸ヨ壓鍛樼瀛�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order, 'column', process_technician_signature;
+EXEC sp_addextendedproperty 'MS_Description', '宸ヨ壓鍛樼瀛楁椂闂�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order, 'column', process_technician_signature_time;
+EXEC sp_addextendedproperty 'MS_Description', '閴村畾缁撴灉;鍚堟牸銆侀檺鐢ㄣ�佺鐢�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order, 'column', evaluation_result;
+EXEC sp_addextendedproperty 'MS_Description', '闄怽绂佺敤鍘熷洜(澶氶��);瀹夊叏瑁呯疆銆佽澶囧姛鑳姐�佺簿搴︺�佽瘯浠躲�佸叾浠�', 'SCHEMA', dbo,
+     'table', eam_technical_status_evaluation_order, 'column', evaluation_reason;
+EXEC sp_addextendedproperty 'MS_Description', '璁惧妫�鏌ヤ汉绛惧瓧', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order, 'column', inspector_signature;
+EXEC sp_addextendedproperty 'MS_Description', '璁惧妫�鏌ヤ汉绛惧瓧鏃堕棿', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order, 'column', inspector_signature_time;
+EXEC sp_addextendedproperty 'MS_Description', '闄勫綍A HF缂栫爜', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order, 'column', hf_code_a;
+EXEC sp_addextendedproperty 'MS_Description', '闄勫綍B HF缂栫爜', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order, 'column', hf_code_b;
+EXEC sp_addextendedproperty 'MS_Description', '闄勫綍C HF缂栫爜', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order, 'column', hf_code_c;
+EXEC sp_addextendedproperty 'MS_Description', '闄勫綍D HF缂栫爜', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order, 'column', hf_code_d;
+EXEC sp_addextendedproperty 'MS_Description', '澶囨敞', 'SCHEMA', dbo, 'table', eam_technical_status_evaluation_order,
+     'column', remark;
+
+--鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�
+IF EXISTS (SELECT *
+           FROM sys.objects
+           WHERE object_id = OBJECT_ID(N'[dbo].[eam_technical_status_evaluation_order_detail]')
+             AND type in (N'U'))
+    DROP TABLE [dbo].[eam_technical_status_evaluation_order_detail];
+CREATE TABLE [dbo].[eam_technical_status_evaluation_order_detail]
+(
+    id                            NVARCHAR(32) NOT NULL,
+    create_by                     NVARCHAR(50),
+    create_time                   DATETIME2,
+    update_by                     NVARCHAR(50),
+    update_time                   DATETIME2,
+    item_code                     INT,
+    check_category                NVARCHAR(64),
+    item_name                     NVARCHAR(255),
+    tolerance_value               NVARCHAR(100),
+    sub_item_name                 NVARCHAR(255),
+    safety_equipment_check_result NVARCHAR(64),
+    other_check_result            NVARCHAR(255),
+    precision_check_result        NUMERIC(24, 4),
+    repairman_signature           NVARCHAR(50),
+    repairman_signature_time      DATETIME2,
+    PRIMARY KEY (id)
+);
+
+EXEC sp_addextendedproperty 'MS_Description', '鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_detail, null, null;
+EXEC sp_addextendedproperty 'MS_Description', '涓婚敭', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_detail, 'column', id;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓浜�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_detail, 'column', create_by;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓鏃堕棿', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_detail, 'column', create_time;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊浜�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_detail, 'column', update_by;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊鏃堕棿', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_detail, 'column', update_time;
+EXEC sp_addextendedproperty 'MS_Description', '搴忓彿', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_detail, 'column', item_code;
+EXEC sp_addextendedproperty 'MS_Description', '妫�鏌ュ垎绫�;绮惧害妫�鏌ャ�佸畨鍏ㄨ缃鏌ャ�佸叾浠栨鏌�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_detail, 'column', check_category;
+EXEC sp_addextendedproperty 'MS_Description', '妫�鏌ラ」鐩�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_detail, 'column', item_name;
+EXEC sp_addextendedproperty 'MS_Description', '鍏佸樊鍊�;绮惧害妫�鏌ュ睍绀�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_detail, 'column', tolerance_value;
+EXEC sp_addextendedproperty 'MS_Description', '妫�鏌ュ瓙椤圭洰;绮惧害妫�鏌ュ睍绀猴紝鍙互涓虹┖', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_detail, 'column', sub_item_name;
+EXEC sp_addextendedproperty 'MS_Description', '瀹夊叏瑁呯疆妫�鏌ョ粨鏋�;鏄�佸惁銆佹棤', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_detail, 'column', safety_equipment_check_result;
+EXEC sp_addextendedproperty 'MS_Description', '鍏朵粬妫�鏌ョ粨鏋�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_detail, 'column', other_check_result;
+EXEC sp_addextendedproperty 'MS_Description', '绮惧害妫�楠岀粨鏋�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_detail, 'column', precision_check_result;
+EXEC sp_addextendedproperty 'MS_Description', '缁翠慨浜�/绮惧害妫�鏌ヨ�呯瀛�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_detail, 'column', repairman_signature;
+EXEC sp_addextendedproperty 'MS_Description', '缁翠慨浜�/绮惧害妫�鏌ヨ�呯瀛楁椂闂�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_detail, 'column', repairman_signature_time;
+
+
+--鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�
+IF EXISTS (SELECT *
+           FROM sys.objects
+           WHERE object_id = OBJECT_ID(N'[dbo].[eam_technical_status_evaluation_order_change]')
+             AND type in (N'U'))
+    DROP TABLE [dbo].[eam_technical_status_evaluation_order_change];
+CREATE TABLE [dbo].[eam_technical_status_evaluation_order_change]
+(
+    id                                NVARCHAR(32) NOT NULL,
+    create_by                         NVARCHAR(50),
+    create_time                       DATETIME2,
+    update_by                         NVARCHAR(50),
+    update_time                       DATETIME2,
+    del_flag                          INT,
+    order_id                          NVARCHAR(32),
+    change_order_num                  NVARCHAR(100),
+    applicant                         NVARCHAR(50),
+    factory_org_code                  NVARCHAR(100),
+    apply_date                        DATETIME2,
+    change_status                     NVARCHAR(64),
+    apply_reason                      NVARCHAR(64),
+    deferred_maintenance_date         DATETIME2,
+    equipment_manager_signature       NVARCHAR(50),
+    equipment_manager_signature_time  DATETIME2,
+    depart_manager_signature          NVARCHAR(50),
+    depart_manager_signature_time     DATETIME2,
+    depart_manager_comment            NVARCHAR(255),
+    production_support_signature      NVARCHAR(50),
+    production_support_signature_time DATETIME2,
+    production_support_comment        NVARCHAR(255),
+    hf_code                           NVARCHAR(100),
+    PRIMARY KEY (id)
+);
+
+EXEC sp_addextendedproperty 'MS_Description', '鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, null, null;
+EXEC sp_addextendedproperty 'MS_Description', '涓婚敭', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', id;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓浜�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', create_by;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓鏃堕棿', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', create_time;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊浜�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', update_by;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊鏃堕棿', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', update_time;
+EXEC sp_addextendedproperty 'MS_Description', '鍒犻櫎鏍囪', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', del_flag;
+EXEC sp_addextendedproperty 'MS_Description', '宸ュ崟ID', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', order_id;
+EXEC sp_addextendedproperty 'MS_Description', '鍙樻洿鍗曞彿', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', change_order_num;
+EXEC sp_addextendedproperty 'MS_Description', '鐢宠浜�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', applicant;
+EXEC sp_addextendedproperty 'MS_Description', '鐢宠閮ㄩ棬', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', factory_org_code;
+EXEC sp_addextendedproperty 'MS_Description', '鐢宠鏃ユ湡', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', apply_date;
+EXEC sp_addextendedproperty 'MS_Description', '鍙樻洿鐘舵��;寰呮彁浜ゃ�佸緟涓荤瀹℃牳銆佸緟閮ㄩ棬纭銆佸緟淇濋殰閮ㄧ‘璁ゃ�佸凡浣滃簾銆佸凡瀹屾垚',
+     'SCHEMA', dbo, 'table', eam_technical_status_evaluation_order_change, 'column', change_status;
+EXEC sp_addextendedproperty 'MS_Description',
+     '鍙樻洿鍘熷洜;鐢熶骇浠诲姟鎬ユ棤娉曞仠鏈恒�佽澶囨晠闅滄澶勪簬缁翠慨鐘舵�併�佽澶囧凡鎶ュ簾銆佽澶囧ぇ淇�佹惉杩併�佹敼閫�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', apply_reason;
+EXEC sp_addextendedproperty 'MS_Description', '鍙樻洿閴村畾鏃ユ湡', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', deferred_maintenance_date;
+EXEC sp_addextendedproperty 'MS_Description', '涓荤棰嗗绛惧瓧', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', equipment_manager_signature;
+EXEC sp_addextendedproperty 'MS_Description', '涓荤棰嗗绛惧瓧鏃堕棿', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', equipment_manager_signature_time;
+EXEC sp_addextendedproperty 'MS_Description', '閮ㄩ棬棰嗗绛惧瓧;鏍规嵁鍙樻洿鍘熷洜绫诲瀷鍖哄垎涓嶅悓鐨勪汉瀹℃壒', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', depart_manager_signature;
+EXEC sp_addextendedproperty 'MS_Description', '閮ㄩ棬棰嗗绛惧瓧鏃堕棿', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', depart_manager_signature_time;
+EXEC sp_addextendedproperty 'MS_Description', '閮ㄩ棬棰嗗鎰忚', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', depart_manager_comment;
+EXEC sp_addextendedproperty 'MS_Description', '鐢熶骇淇濋殰閮ㄩ瀵肩瀛�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', production_support_signature;
+EXEC sp_addextendedproperty 'MS_Description', '鐢熶骇淇濋殰閮ㄩ瀵肩瀛楁椂闂�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', production_support_signature_time;
+EXEC sp_addextendedproperty 'MS_Description', '鐢熶骇淇濋殰閮ㄩ瀵兼剰瑙�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', production_support_comment;
+EXEC sp_addextendedproperty 'MS_Description', 'HF缂栫爜', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_order_change, 'column', hf_code;
+
+
+--鎶�鏈姸鎬佸彉鏇寸敵璇�
+IF EXISTS (SELECT *
+           FROM sys.objects
+           WHERE object_id = OBJECT_ID(N'[dbo].[eam_technical_status_change]')
+             AND type in (N'U'))
+    DROP TABLE [dbo].[eam_technical_status_change];
+CREATE TABLE [dbo].[eam_technical_status_change]
+(
+    id                              NVARCHAR(32) NOT NULL,
+    create_by                       NVARCHAR(50),
+    create_time                     DATETIME2,
+    update_by                       NVARCHAR(50),
+    update_time                     DATETIME2,
+    del_flag                        INT,
+    change_order_num                NVARCHAR(100),
+    change_status                   NVARCHAR(64),
+    designer                        NVARCHAR(50),
+    designer_time                   DATETIME2,
+    depart_header_signature         NVARCHAR(50),
+    depart_header_signature_time    DATETIME2,
+    depart_header_signature_comment NVARCHAR(255),
+    depart_leader_signature         NVARCHAR(50),
+    depart_leader_signature_time    DATETIME2,
+    depart_leader_signature_comment NVARCHAR(255),
+    hf_code                         NVARCHAR(100),
+    PRIMARY KEY (id)
+);
+
+EXEC sp_addextendedproperty 'MS_Description', '鎶�鏈姸鎬佸彉鏇寸敵璇�', 'SCHEMA', dbo, 'table', eam_technical_status_change,
+     null, null;
+EXEC sp_addextendedproperty 'MS_Description', '涓婚敭', 'SCHEMA', dbo, 'table', eam_technical_status_change, 'column', id;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓浜�', 'SCHEMA', dbo, 'table', eam_technical_status_change, 'column',
+     create_by;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓鏃堕棿', 'SCHEMA', dbo, 'table', eam_technical_status_change, 'column',
+     create_time;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊浜�', 'SCHEMA', dbo, 'table', eam_technical_status_change, 'column',
+     update_by;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊鏃堕棿', 'SCHEMA', dbo, 'table', eam_technical_status_change, 'column',
+     update_time;
+EXEC sp_addextendedproperty 'MS_Description', '鍒犻櫎鏍囪', 'SCHEMA', dbo, 'table', eam_technical_status_change, 'column',
+     del_flag;
+EXEC sp_addextendedproperty 'MS_Description', '鍙樻洿鍗曞彿', 'SCHEMA', dbo, 'table', eam_technical_status_change, 'column',
+     change_order_num;
+EXEC sp_addextendedproperty 'MS_Description', '鍙樻洿鍗曠姸鎬�', 'SCHEMA', dbo, 'table', eam_technical_status_change,
+     'column', change_status;
+EXEC sp_addextendedproperty 'MS_Description', '缂栧埗浜�', 'SCHEMA', dbo, 'table', eam_technical_status_change, 'column',
+     designer;
+EXEC sp_addextendedproperty 'MS_Description', '缂栧埗鏃堕棿', 'SCHEMA', dbo, 'table', eam_technical_status_change, 'column',
+     designer_time;
+EXEC sp_addextendedproperty 'MS_Description', '浣跨敤鍗曚綅瀹や富绠$瀛�', 'SCHEMA', dbo, 'table', eam_technical_status_change,
+     'column', depart_header_signature;
+EXEC sp_addextendedproperty 'MS_Description', '浣跨敤鍗曚綅瀹や富绠$瀛楁椂闂�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_change, 'column', depart_header_signature_time;
+EXEC sp_addextendedproperty 'MS_Description', '浣跨敤鍗曚綅瀹や富绠℃剰瑙�', 'SCHEMA', dbo, 'table', eam_technical_status_change,
+     'column', depart_header_signature_comment;
+EXEC sp_addextendedproperty 'MS_Description', '浣跨敤鍗曚綅閮ㄤ富绠$瀛�', 'SCHEMA', dbo, 'table', eam_technical_status_change,
+     'column', depart_leader_signature;
+EXEC sp_addextendedproperty 'MS_Description', '浣跨敤鍗曚綅閮ㄤ富绠$瀛楁椂闂�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_change, 'column', depart_leader_signature_time;
+EXEC sp_addextendedproperty 'MS_Description', '浣跨敤鍗曚綅閮ㄤ富绠$瀛�', 'SCHEMA', dbo, 'table', eam_technical_status_change,
+     'column', depart_leader_signature_comment;
+EXEC sp_addextendedproperty 'MS_Description', 'HF缂栫爜', 'SCHEMA', dbo, 'table', eam_technical_status_change, 'column',
+     hf_code;
+
+
+--鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�
+IF EXISTS (SELECT *
+           FROM sys.objects
+           WHERE object_id = OBJECT_ID(N'[dbo].[eam_technical_status_change_detail]')
+             AND type in (N'U'))
+    DROP TABLE [dbo].[eam_technical_status_change_detail];
+CREATE TABLE [dbo].[eam_technical_status_change_detail]
+(
+    id                      NVARCHAR(32) NOT NULL,
+    create_by               NVARCHAR(50),
+    create_time             DATETIME2,
+    update_by               NVARCHAR(50),
+    update_time             DATETIME2,
+    equipment_id            NVARCHAR(32),
+    change_category         NVARCHAR(64),
+    change_date             DATETIME2,
+    change_technical_status NVARCHAR(64),
+    acceptance_checker      NVARCHAR(50),
+    acceptance_check_time   DATETIME2,
+    acceptance_check_result NVARCHAR(64),
+    order_id                NVARCHAR(32),
+    PRIMARY KEY (id)
+);
+
+EXEC sp_addextendedproperty 'MS_Description', '鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_change_detail, null, null;
+EXEC sp_addextendedproperty 'MS_Description', '涓婚敭', 'SCHEMA', dbo, 'table', eam_technical_status_change_detail,
+     'column', id;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓浜�', 'SCHEMA', dbo, 'table', eam_technical_status_change_detail,
+     'column', create_by;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓鏃堕棿', 'SCHEMA', dbo, 'table', eam_technical_status_change_detail,
+     'column', create_time;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊浜�', 'SCHEMA', dbo, 'table', eam_technical_status_change_detail,
+     'column', update_by;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊鏃堕棿', 'SCHEMA', dbo, 'table', eam_technical_status_change_detail,
+     'column', update_time;
+EXEC sp_addextendedproperty 'MS_Description', '璁惧ID', 'SCHEMA', dbo, 'table', eam_technical_status_change_detail,
+     'column', equipment_id;
+EXEC sp_addextendedproperty 'MS_Description', '鍙樻洿鍘熷洜;鎼縼銆佸ぇ淇�佹敼閫犮�佸叾浠�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_change_detail, 'column', change_category;
+EXEC sp_addextendedproperty 'MS_Description', '鍙樻洿鏃ユ湡', 'SCHEMA', dbo, 'table', eam_technical_status_change_detail,
+     'column', change_date;
+EXEC sp_addextendedproperty 'MS_Description', '鍙樻洿鍚庢妧鏈姸鎬�;鍙樻洿閫氳繃鍚庨粯璁よ澶囨妧鏈姸鎬佹敼涓虹鐢�', 'SCHEMA', dbo,
+     'table', eam_technical_status_change_detail, 'column', change_technical_status;
+EXEC sp_addextendedproperty 'MS_Description', '楠屾敹妫�鏌ヤ汉', 'SCHEMA', dbo, 'table', eam_technical_status_change_detail,
+     'column', acceptance_checker;
+EXEC sp_addextendedproperty 'MS_Description', '楠屾敹妫�鏌ユ椂闂�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_change_detail, 'column', acceptance_check_time;
+EXEC sp_addextendedproperty 'MS_Description',
+     '楠屾敹妫�鏌ョ粨鏋�;澶т慨銆佹敼閫� 闇�瑕佸~鍐欓獙鏀剁粨鏋滐紝鎼縼鎸夌収鎶�鏈姸鎬侀壌瀹氬伐鍗曠淮鎶わ紝鍏朵粬鏆傛湭浣跨敤鍒帮紝鍙鐣欐绫诲瀷', 'SCHEMA', dbo,
+     'table', eam_technical_status_change_detail, 'column', acceptance_check_result;
+EXEC sp_addextendedproperty 'MS_Description', '鎶�鏈姸鎬侀壌瀹氬伐鍗旾D;鎼縼浣跨敤', 'SCHEMA', dbo, 'table',
+     eam_technical_status_change_detail, 'column', order_id;
+
+
+--鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�
+IF EXISTS (SELECT *
+           FROM sys.objects
+           WHERE object_id = OBJECT_ID(N'[dbo].[eam_technical_status_evaluation_application]')
+             AND type in (N'U'))
+    DROP TABLE [dbo].[eam_technical_status_evaluation_application];
+CREATE TABLE [dbo].[eam_technical_status_evaluation_application]
+(
+    id                                NVARCHAR(32) NOT NULL,
+    create_by                         NVARCHAR(50),
+    create_time                       DATETIME2,
+    update_by                         NVARCHAR(50),
+    update_time                       DATETIME2,
+    del_flag                          INT,
+    application_order_num             NVARCHAR(100),
+    applicant                         NVARCHAR(50),
+    factory_org_code                  NVARCHAR(100),
+    apply_date                        DATETIME2,
+    application_status                NVARCHAR(64),
+    depart_header_signature           NVARCHAR(50),
+    depart_header_signature_time      DATETIME2,
+    depart_header_comment             NVARCHAR(255),
+    production_header_signature       NVARCHAR(50),
+    production_header_signature_time  DATETIME2,
+    production_header_comment         NVARCHAR(255),
+    production_support_signature      NVARCHAR(50),
+    production_support_signature_time DATETIME2,
+    production_support_comment        NVARCHAR(255),
+    hf_code                           NVARCHAR(100),
+    PRIMARY KEY (id)
+);
+
+EXEC sp_addextendedproperty 'MS_Description', '鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�;绂佺敤鐘舵�佺殑璁惧鎴栦复鏃惰繘琛屾妧鏈壌瀹氭椂浣跨敤', 'SCHEMA',
+     dbo, 'table', eam_technical_status_evaluation_application, null, null;
+EXEC sp_addextendedproperty 'MS_Description', '涓婚敭', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_application, 'column', id;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓浜�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_application, 'column', create_by;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓鏃堕棿', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_application, 'column', create_time;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊浜�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_application, 'column', update_by;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊鏃堕棿', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_application, 'column', update_time;
+EXEC sp_addextendedproperty 'MS_Description', '鍒犻櫎鏍囪', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_application, 'column', del_flag;
+EXEC sp_addextendedproperty 'MS_Description', '鐢宠鍗曞彿', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_application, 'column', application_order_num;
+EXEC sp_addextendedproperty 'MS_Description', '鐢宠浜�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_application, 'column', applicant;
+EXEC sp_addextendedproperty 'MS_Description', '鐢宠閮ㄩ棬', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_application, 'column', factory_org_code;
+EXEC sp_addextendedproperty 'MS_Description', '鐢宠鏃ユ湡', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_application, 'column', apply_date;
+EXEC sp_addextendedproperty 'MS_Description',
+     '鐢宠鍗曠姸鎬�;寰呮彁浜ゃ�佸緟鍗曚綅瀹ょ骇棰嗗瀹℃牳銆佺敓浜ц澶囩鐞嗕富绠″鏍搞�佸緟淇濋殰閮ㄩ瀵煎鏍搞�佸凡浣滃簾銆佸凡瀹屾垚', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_application, 'column', application_status;
+EXEC sp_addextendedproperty 'MS_Description', '鐢宠鍗曚綅瀹ょ骇棰嗗绛惧瓧', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_application, 'column', depart_header_signature;
+EXEC sp_addextendedproperty 'MS_Description', '鐢宠鍗曚綅瀹ょ骇棰嗗绛惧瓧鏃堕棿', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_application, 'column', depart_header_signature_time;
+EXEC sp_addextendedproperty 'MS_Description', '鐢宠鍗曚綅瀹ょ骇棰嗗鎰忚', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_application, 'column', depart_header_comment;
+EXEC sp_addextendedproperty 'MS_Description', '鐢熶骇璁惧绠$悊涓荤绛惧瓧', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_application, 'column', production_header_signature;
+EXEC sp_addextendedproperty 'MS_Description', '鐢熶骇璁惧绠$悊涓荤绛惧瓧鍥涗欢', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_application, 'column', production_header_signature_time;
+EXEC sp_addextendedproperty 'MS_Description', '鐢熶骇璁惧绠$悊涓荤鎰忚', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_application, 'column', production_header_comment;
+EXEC sp_addextendedproperty 'MS_Description', '鐢熶骇淇濋殰閮ㄩ瀵肩瀛�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_application, 'column', production_support_signature;
+EXEC sp_addextendedproperty 'MS_Description', '鐢熶骇淇濋殰閮ㄩ瀵肩瀛楁椂闂�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_application, 'column', production_support_signature_time;
+EXEC sp_addextendedproperty 'MS_Description', '鐢熶骇淇濋殰閮ㄩ瀵兼剰瑙�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_application, 'column', production_support_comment;
+EXEC sp_addextendedproperty 'MS_Description', 'HF缂栫爜', 'SCHEMA', dbo, 'table',
+     eam_technical_status_evaluation_application, 'column', hf_code;
+
+--鍋滅敤鍔犲伐璁惧鐢宠鍗�
+IF EXISTS (SELECT *
+           FROM sys.objects
+           WHERE object_id = OBJECT_ID(N'[dbo].[eam_technical_status_deactivate]')
+             AND type in (N'U'))
+    DROP TABLE [dbo].[eam_technical_status_deactivate];
+CREATE TABLE [dbo].[eam_technical_status_deactivate]
+(
+    id                              NVARCHAR(32) NOT NULL,
+    create_by                       NVARCHAR(50),
+    create_time                     DATETIME2,
+    update_by                       NVARCHAR(50),
+    update_time                     DATETIME2,
+    del_flag                        INT,
+    deactivate_order_num            NVARCHAR(100),
+    applicant                       NVARCHAR(50),
+    factory_org_code                NVARCHAR(100),
+    apply_date                      DATETIME2,
+    application_status              NVARCHAR(64),
+    depart_header_signature         NVARCHAR(50),
+    depart_header_signature_time    DATETIME2,
+    depart_header_signature_comment NVARCHAR(255),
+    depart_leader_signature         NVARCHAR(50),
+    depart_leader_signature_time    DATETIME2,
+    depart_leader_signature_comment NVARCHAR(255),
+    hf_code                         NVARCHAR(100),
+    PRIMARY KEY (id)
+);
+
+EXEC sp_addextendedproperty 'MS_Description', '鍋滅敤鍔犲伐璁惧鐢宠鍗�;鐢宠鍗曚綅鐢宠鍋滅敤璁惧锛屽鎵归�氳繃鍚庝慨鏀硅澶囩姸鎬佷负绂佺敤',
+     'SCHEMA', dbo, 'table', eam_technical_status_deactivate, null, null;
+EXEC sp_addextendedproperty 'MS_Description', '涓婚敭', 'SCHEMA', dbo, 'table', eam_technical_status_deactivate, 'column',
+     id;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓浜�', 'SCHEMA', dbo, 'table', eam_technical_status_deactivate,
+     'column', create_by;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓鏃堕棿', 'SCHEMA', dbo, 'table', eam_technical_status_deactivate,
+     'column', create_time;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊浜�', 'SCHEMA', dbo, 'table', eam_technical_status_deactivate,
+     'column', update_by;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊鏃堕棿', 'SCHEMA', dbo, 'table', eam_technical_status_deactivate,
+     'column', update_time;
+EXEC sp_addextendedproperty 'MS_Description', '鍒犻櫎鏍囪', 'SCHEMA', dbo, 'table', eam_technical_status_deactivate,
+     'column', del_flag;
+EXEC sp_addextendedproperty 'MS_Description', '鍋滅敤鍗曞彿', 'SCHEMA', dbo, 'table', eam_technical_status_deactivate,
+     'column', deactivate_order_num;
+EXEC sp_addextendedproperty 'MS_Description', '鐢宠浜�', 'SCHEMA', dbo, 'table', eam_technical_status_deactivate,
+     'column', applicant;
+EXEC sp_addextendedproperty 'MS_Description', '鐢宠閮ㄩ棬', 'SCHEMA', dbo, 'table', eam_technical_status_deactivate,
+     'column', factory_org_code;
+EXEC sp_addextendedproperty 'MS_Description', '鐢宠鏃ユ湡', 'SCHEMA', dbo, 'table', eam_technical_status_deactivate,
+     'column', apply_date;
+EXEC sp_addextendedproperty 'MS_Description',
+     '鐢宠鍗曠姸鎬�;寰呮彁浜ゃ�佸緟鍗曚綅瀹ょ骇棰嗗瀹℃牳銆佺敓浜ц澶囩鐞嗕富绠″鏍搞�佸緟淇濋殰閮ㄩ瀵煎鏍搞�佸凡浣滃簾銆佸凡瀹屾垚', 'SCHEMA', dbo, 'table',
+     eam_technical_status_deactivate, 'column', application_status;
+EXEC sp_addextendedproperty 'MS_Description', '浣跨敤鍗曚綅瀹や富绠$瀛�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_deactivate, 'column', depart_header_signature;
+EXEC sp_addextendedproperty 'MS_Description', '浣跨敤鍗曚綅瀹や富绠$瀛楁椂闂�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_deactivate, 'column', depart_header_signature_time;
+EXEC sp_addextendedproperty 'MS_Description', '浣跨敤鍗曚綅瀹や富绠℃剰瑙�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_deactivate, 'column', depart_header_signature_comment;
+EXEC sp_addextendedproperty 'MS_Description', '浣跨敤鍗曚綅閮ㄤ富绠$瀛�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_deactivate, 'column', depart_leader_signature;
+EXEC sp_addextendedproperty 'MS_Description', '浣跨敤鍗曚綅閮ㄤ富绠$瀛楁椂闂�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_deactivate, 'column', depart_leader_signature_time;
+EXEC sp_addextendedproperty 'MS_Description', '浣跨敤鍗曚綅閮ㄤ富绠$瀛�', 'SCHEMA', dbo, 'table',
+     eam_technical_status_deactivate, 'column', depart_leader_signature_comment;
+EXEC sp_addextendedproperty 'MS_Description', 'HF缂栫爜', 'SCHEMA', dbo, 'table', eam_technical_status_deactivate,
+     'column', hf_code;
+
+
+--鍋滅敤鍔犲伐璁惧鏄庣粏
+IF EXISTS (SELECT *
+           FROM sys.objects
+           WHERE object_id = OBJECT_ID(N'[dbo].[eam_technical_status_deactivate_detail]')
+             AND type in (N'U'))
+    DROP TABLE [dbo].[eam_technical_status_deactivate_detail];
+CREATE TABLE [dbo].[eam_technical_status_deactivate_detail]
+(
+    id                       NVARCHAR(32) NOT NULL,
+    create_by                NVARCHAR(50),
+    create_time              DATETIME2,
+    update_by                NVARCHAR(50),
+    update_time              DATETIME2,
+    equipment_id             NVARCHAR(32),
+    deactivate_reason        NVARCHAR(255),
+    deactivate_duration      NUMERIC(24, 4),
+    deactivate_duration_unit NVARCHAR(64),
+    PRIMARY KEY (id)
+);
+
+EXEC sp_addextendedproperty 'MS_Description', '鍋滅敤鍔犲伐璁惧鏄庣粏', 'SCHEMA', dbo, 'table',
+     eam_technical_status_deactivate_detail, null, null;
+EXEC sp_addextendedproperty 'MS_Description', '涓婚敭', 'SCHEMA', dbo, 'table', eam_technical_status_deactivate_detail,
+     'column', id;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓浜�', 'SCHEMA', dbo, 'table', eam_technical_status_deactivate_detail,
+     'column', create_by;
+EXEC sp_addextendedproperty 'MS_Description', '鍒涘缓鏃堕棿', 'SCHEMA', dbo, 'table',
+     eam_technical_status_deactivate_detail, 'column', create_time;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊浜�', 'SCHEMA', dbo, 'table', eam_technical_status_deactivate_detail,
+     'column', update_by;
+EXEC sp_addextendedproperty 'MS_Description', '鏇存柊鏃堕棿', 'SCHEMA', dbo, 'table',
+     eam_technical_status_deactivate_detail, 'column', update_time;
+EXEC sp_addextendedproperty 'MS_Description', '璁惧ID', 'SCHEMA', dbo, 'table', eam_technical_status_deactivate_detail,
+     'column', equipment_id;
+EXEC sp_addextendedproperty 'MS_Description', '鍋滅敤鍘熷洜', 'SCHEMA', dbo, 'table',
+     eam_technical_status_deactivate_detail, 'column', deactivate_reason;
+EXEC sp_addextendedproperty 'MS_Description', '鍋滅敤鏃堕暱', 'SCHEMA', dbo, 'table',
+     eam_technical_status_deactivate_detail, 'column', deactivate_duration;
+EXEC sp_addextendedproperty 'MS_Description', '鍋滅敤鏃堕暱鍗曚綅;澶┿�佹湀銆佸勾', 'SCHEMA', dbo, 'table',
+     eam_technical_status_deactivate_detail, 'column', deactivate_duration_unit;
diff --git a/db/ZHR/dict_zhr.sql b/db/ZHR/dict_zhr.sql
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/db/ZHR/dict_zhr.sql
diff --git a/db/ZHR/menu_zhr.sql b/db/ZHR/menu_zhr.sql
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/db/ZHR/menu_zhr.sql
diff --git "a/db/template/\347\224\237\344\272\247\350\256\276\345\244\207\344\270\211\347\272\247\344\277\235\345\205\273\350\247\204\350\214\203.docx" "b/db/template/\347\224\237\344\272\247\350\256\276\345\244\207\344\270\211\347\272\247\344\277\235\345\205\273\350\247\204\350\214\203.docx"
index ada5153..363a18f 100644
--- "a/db/template/\347\224\237\344\272\247\350\256\276\345\244\207\344\270\211\347\272\247\344\277\235\345\205\273\350\247\204\350\214\203.docx"
+++ "b/db/template/\347\224\237\344\272\247\350\256\276\345\244\207\344\270\211\347\272\247\344\277\235\345\205\273\350\247\204\350\214\203.docx"
Binary files differ
diff --git "a/db/template/\347\224\237\344\272\247\350\256\276\345\244\207\344\272\214\347\272\247\344\277\235\345\205\273\350\247\204\350\214\203.docx" "b/db/template/\347\224\237\344\272\247\350\256\276\345\244\207\344\272\214\347\272\247\344\277\235\345\205\273\350\247\204\350\214\203.docx"
index 615547c..518d878 100644
--- "a/db/template/\347\224\237\344\272\247\350\256\276\345\244\207\344\272\214\347\272\247\344\277\235\345\205\273\350\247\204\350\214\203.docx"
+++ "b/db/template/\347\224\237\344\272\247\350\256\276\345\244\207\344\272\214\347\272\247\344\277\235\345\205\273\350\247\204\350\214\203.docx"
Binary files differ
diff --git "a/db/template/\350\256\276\345\244\207\345\217\260\350\264\246\345\257\274\345\205\245\346\250\241\346\235\277.xls" "b/db/template/\350\256\276\345\244\207\345\217\260\350\264\246\345\257\274\345\205\245\346\250\241\346\235\277.xls"
index 723c430..df9dac7 100644
--- "a/db/template/\350\256\276\345\244\207\345\217\260\350\264\246\345\257\274\345\205\245\346\250\241\346\235\277.xls"
+++ "b/db/template/\350\256\276\345\244\207\345\217\260\350\264\246\345\257\274\345\205\245\346\250\241\346\235\277.xls"
Binary files differ
diff --git "a/db/template/\350\256\276\345\244\207\347\202\271\346\243\200\346\240\207\345\207\206\345\257\274\345\205\245\346\250\241\346\235\277.xlsx" "b/db/template/\350\256\276\345\244\207\347\202\271\346\243\200\346\240\207\345\207\206\345\257\274\345\205\245\346\250\241\346\235\277.xlsx"
index 165d444..49f920f 100644
--- "a/db/template/\350\256\276\345\244\207\347\202\271\346\243\200\346\240\207\345\207\206\345\257\274\345\205\245\346\250\241\346\235\277.xlsx"
+++ "b/db/template/\350\256\276\345\244\207\347\202\271\346\243\200\346\240\207\345\207\206\345\257\274\345\205\245\346\250\241\346\235\277.xlsx"
Binary files differ
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/dto/EamEquipmentDto.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/dto/EamEquipmentDto.java
index 0ff795d..4e05465 100644
--- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/dto/EamEquipmentDto.java
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/dto/EamEquipmentDto.java
@@ -92,7 +92,7 @@
     /**
      * 鎵�灞炲垎绫�
      */
-    @Excel(name = "鎵�灞炲垎绫�", width = 15, orderNum = "5")
+    @Excel(name = "鎵�灞炲垎绫�", width = 15, orderNum = "5",dicCode = "equipment_category")
     @ApiModelProperty(value = "鎵�灞炲垎绫�")
     @Dict(dicCode = "equipment_category")
     private String equipmentCategory;
@@ -296,7 +296,7 @@
     /**
      * 璐ㄤ繚寮�濮嬫棩鏈�
      */
-    @Excel(name = "璐ㄤ繚寮�濮嬫棩鏈�", width = 15, orderNum = "36")
+    @Excel(name = "璐ㄤ繚寮�濮嬫棩鏈�", width = 15, format = "yyyy/MM/dd", orderNum = "36")
     @ApiModelProperty(value = "璐ㄤ繚寮�濮嬫棩鏈�")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern = "yyyy-MM-dd")
@@ -305,7 +305,7 @@
     /**
      * 璐ㄤ繚缁撴潫鏃ユ湡
      */
-    @Excel(name = "璐ㄤ繚缁撴潫鏃ユ湡", width = 15, orderNum = "37")
+    @Excel(name = "璐ㄤ繚缁撴潫鏃ユ湡", width = 15, format = "yyyy/MM/dd", orderNum = "37")
     @ApiModelProperty(value = "璐ㄤ繚缁撴潫鏃ユ湡")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern = "yyyy-MM-dd")
@@ -321,7 +321,7 @@
 
     /**鏈�鏂颁簩淇濇棩鏈�*/
     @TableField(exist = false)
-    @Excel(name = "鏈�鏂颁簩淇濇棩鏈�", width = 15, orderNum = "39")
+    @Excel(name = "鏈�鏂颁簩淇濇棩鏈�", width = 15, format = "yyyy/MM/dd", orderNum = "39")
     @ApiModelProperty(value = "鏈�鏂颁簩淇濇棩鏈�")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern = "yyyy-MM-dd")
@@ -329,7 +329,7 @@
 
     /**涓嬫浜屼繚鏃ユ湡*/
     @TableField(exist = false)
-    @Excel(name = "涓嬫浜屼繚鏃ユ湡", width = 15, orderNum = "40")
+    @Excel(name = "涓嬫浜屼繚鏃ユ湡", width = 15, format = "yyyy/MM/dd", orderNum = "40")
     @ApiModelProperty(value = "涓嬫浜屼繚鏃ユ湡")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern = "yyyy-MM-dd")
@@ -338,7 +338,7 @@
 
     /**鏈涓変繚鏃ユ湡*/
     @TableField(exist = false)
-    @Excel(name = "鏈涓変繚鏃ユ湡", width = 15, orderNum = "41")
+    @Excel(name = "鏈涓変繚鏃ユ湡", width = 15, format = "yyyy/MM/dd", orderNum = "41")
     @ApiModelProperty(value = "鏈涓変繚鏃ユ湡")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern = "yyyy-MM-dd")
@@ -346,7 +346,7 @@
 
     /**涓嬫涓変繚鏃ユ湡*/
     @TableField(exist = false)
-    @Excel(name = "涓嬫涓変繚鏃ユ湡", width = 15, orderNum = "42")
+    @Excel(name = "涓嬫涓変繚鏃ユ湡", width = 15, format = "yyyy/MM/dd", orderNum = "42")
     @ApiModelProperty(value = "涓嬫涓変繚鏃ユ湡")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern = "yyyy-MM-dd")
@@ -360,14 +360,14 @@
 
     /**鏈�鏂版妧鏈姸鎬侀壌瀹氭棩鏈�*/
     @TableField(exist = false)
-    @Excel(name = "鏈�鏂版妧鏈姸鎬侀壌瀹氭棩鏈�", width = 15, orderNum = "44")
+    @Excel(name = "鏈�鏂版妧鏈姸鎬侀壌瀹氭棩鏈�", width = 15, format = "yyyy/MM/dd", orderNum = "44")
     @ApiModelProperty(value = "鏈�鏂版妧鏈姸鎬侀壌瀹氭棩鏈�")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern = "yyyy-MM-dd")
     private java.util.Date latestTechnologyCheck;
     /**鎶�鏈姸鎬佷笅娆¢壌瀹氭棩鏈�*/
     @TableField(exist = false)
-    @Excel(name = "鎶�鏈姸鎬佷笅娆¢壌瀹氭棩鏈�", width = 15, orderNum = "45")
+    @Excel(name = "鎶�鏈姸鎬佷笅娆¢壌瀹氭棩鏈�", width = 15, format = "yyyy/MM/dd", orderNum = "45")
     @ApiModelProperty(value = "鎶�鏈姸鎬佷笅娆¢壌瀹氭棩鏈�")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern = "yyyy-MM-dd")
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamEquipment.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamEquipment.java
index 2e1ec29..344c9bf 100644
--- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamEquipment.java
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamEquipment.java
@@ -126,7 +126,7 @@
     /**
      * 鎵�灞炲垎绫�
      */
-    @Excel(name = "鎵�灞炲垎绫�", width = 15, orderNum = "5")
+    @Excel(name = "鎵�灞炲垎绫�", width = 15, orderNum = "5",dicCode = "equipment_category")
     @ApiModelProperty(value = "鎵�灞炲垎绫�")
     @Dict(dicCode = "equipment_category")
     private String equipmentCategory;
@@ -162,7 +162,7 @@
     /**
      * 缁翠慨鐝粍
      */
-    @Excel(name = "缁翠慨鐝粍", width = 15, orderNum = "10",dictTable = "eam_base_repair_depart",dicText = "depart_name",dicCode = "org_code")
+    @Excel(name = "缁翠慨鐝粍", width = 15, orderNum = "10")
     @ApiModelProperty(value = "缁翠慨鐝粍")
     @Dict(dictTable = "eam_base_repair_depart",dicText = "depart_name",dicCode = "org_code")
     private String repairDepartOrgCode;
@@ -185,8 +185,9 @@
     /**
      * 鐏伀鍣�
      */
-    @Excel(name = "鐏伀鍣�", width = 15, orderNum = "16")
+    @Excel(name = "鐏伀鍣�", width = 15, orderNum = "16",dicCode = "yn")
     @ApiModelProperty(value = "鐏伀鍣�")
+    @Dict(dicCode = "yn")
     private String fireExtinguisher;
 
     /**
@@ -330,7 +331,7 @@
     /**
      * 璐ㄤ繚寮�濮嬫棩鏈�
      */
-    @Excel(name = "璐ㄤ繚寮�濮嬫棩鏈�", width = 15, orderNum = "36")
+    @Excel(name = "璐ㄤ繚寮�濮嬫棩鏈�",  width = 25, format = "yyyy/MM/dd",  orderNum = "36")
     @ApiModelProperty(value = "璐ㄤ繚寮�濮嬫棩鏈�")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern = "yyyy-MM-dd")
@@ -339,7 +340,7 @@
     /**
      * 璐ㄤ繚缁撴潫鏃ユ湡
      */
-    @Excel(name = "璐ㄤ繚缁撴潫鏃ユ湡", width = 15, orderNum = "37")
+    @Excel(name = "璐ㄤ繚缁撴潫鏃ユ湡", width = 15, format = "yyyy/MM/dd", orderNum = "37")
     @ApiModelProperty(value = "璐ㄤ繚缁撴潫鏃ユ湡")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern = "yyyy-MM-dd")
@@ -355,7 +356,7 @@
 
     /**鏈�鏂颁簩淇濇棩鏈�*/
     @TableField(exist = false)
-    @Excel(name = "鏈�鏂颁簩淇濇棩鏈�", width = 15, orderNum = "39")
+    @Excel(name = "鏈�鏂颁簩淇濇棩鏈�", width = 15, format = "yyyy/MM/dd", orderNum = "39")
     @ApiModelProperty(value = "鏈�鏂颁簩淇濇棩鏈�")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern = "yyyy-MM-dd")
@@ -363,7 +364,7 @@
 
     /**涓嬫浜屼繚鏃ユ湡*/
     @TableField(exist = false)
-    @Excel(name = "涓嬫浜屼繚鏃ユ湡", width = 15, orderNum = "40")
+    @Excel(name = "涓嬫浜屼繚鏃ユ湡", width = 15, format = "yyyy/MM/dd", orderNum = "40")
     @ApiModelProperty(value = "涓嬫浜屼繚鏃ユ湡")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern = "yyyy-MM-dd")
@@ -372,7 +373,7 @@
 
     /**鏈涓変繚鏃ユ湡*/
     @TableField(exist = false)
-    @Excel(name = "鏈涓変繚鏃ユ湡", width = 15, orderNum = "41")
+    @Excel(name = "鏈涓変繚鏃ユ湡", width = 15,  format = "yyyy/MM/dd",orderNum = "41")
     @ApiModelProperty(value = "鏈涓変繚鏃ユ湡")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern = "yyyy-MM-dd")
@@ -380,7 +381,7 @@
 
     /**涓嬫涓変繚鏃ユ湡*/
     @TableField(exist = false)
-    @Excel(name = "涓嬫涓変繚鏃ユ湡", width = 15, orderNum = "42")
+    @Excel(name = "涓嬫涓変繚鏃ユ湡", width = 15, format = "yyyy/MM/dd", orderNum = "42")
     @ApiModelProperty(value = "涓嬫涓変繚鏃ユ湡")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern = "yyyy-MM-dd")
@@ -394,14 +395,14 @@
 
     /**鏈�鏂版妧鏈姸鎬侀壌瀹氭棩鏈�*/
     @TableField(exist = false)
-    @Excel(name = "鏈�鏂版妧鏈姸鎬侀壌瀹氭棩鏈�", width = 15, orderNum = "44")
+    @Excel(name = "鏈�鏂版妧鏈姸鎬侀壌瀹氭棩鏈�", width = 15, format = "yyyy/MM/dd", orderNum = "44")
     @ApiModelProperty(value = "鏈�鏂版妧鏈姸鎬侀壌瀹氭棩鏈�")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern = "yyyy-MM-dd")
     private java.util.Date latestTechnologyCheck;
     /**鎶�鏈姸鎬佷笅娆¢壌瀹氭棩鏈�*/
     @TableField(exist = false)
-    @Excel(name = "鎶�鏈姸鎬佷笅娆¢壌瀹氭棩鏈�", width = 15, orderNum = "45")
+    @Excel(name = "鎶�鏈姸鎬佷笅娆¢壌瀹氭棩鏈�", width = 15, format = "yyyy/MM/dd", orderNum = "45")
     @ApiModelProperty(value = "鎶�鏈姸鎬佷笅娆¢壌瀹氭棩鏈�")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern = "yyyy-MM-dd")
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamEquipmentQuery.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamEquipmentQuery.java
index 40293d6..7839048 100644
--- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamEquipmentQuery.java
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamEquipmentQuery.java
@@ -1,6 +1,8 @@
 package org.jeecg.modules.eam.request;
 
 import lombok.Data;
+import org.jeecg.common.aspect.annotation.Dict;
+import org.jeecgframework.poi.excel.annotation.Excel;
 
 @Data
 public class EamEquipmentQuery {
@@ -13,7 +15,8 @@
     private String operationSystem;
     private String orgId;
     private String equipmentCategory;
-
+    private String factoryOrgCode;
+    private String repairDepartOrgCode;
     private String column;
     private String order;
 }
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java
index 6134309..00ccb1a 100644
--- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java
@@ -205,6 +205,12 @@
             if (StringUtils.isNotBlank(eamEquipment.getEquipmentCategory())) {
                 queryWrapper.like("e.equipment_category", eamEquipment.getEquipmentCategory());
             }
+            if (StringUtils.isNotBlank(eamEquipment.getFactoryOrgCode())) {
+                queryWrapper.like("e.factory_org_code", eamEquipment.getFactoryOrgCode());
+            }
+            if (StringUtils.isNotBlank(eamEquipment.getRepairDepartOrgCode())) {
+                queryWrapper.like("e.repair_depart_org_code", eamEquipment.getRepairDepartOrgCode());
+            }
             if (StringUtils.isNotBlank(eamEquipment.getId())) {
                 queryWrapper.eq("e.id", eamEquipment.getId());
             }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java
index a2233c6..400264b 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java
@@ -29,7 +29,9 @@
 //import org.jeecg.modules.mdc.entity.MdcEquipment;
 //import org.jeecg.modules.mdc.service.IMdcEquipmentService;
 import org.jeecg.modules.system.entity.BaseFactory;
+import org.jeecg.modules.system.entity.EamBaseRepairDepart;
 import org.jeecg.modules.system.service.IBaseFactoryService;
+import org.jeecg.modules.system.service.IEamBaseRepairDepartService;
 import org.jeecgframework.poi.excel.ExcelImportUtil;
 import org.jeecgframework.poi.excel.def.NormalExcelConstants;
 import org.jeecgframework.poi.excel.entity.ExportParams;
@@ -77,7 +79,8 @@
     private TranslateDictTextUtils translateDictTextUtils;
     @Autowired
     private IBaseFactoryService baseFactoryService;
-
+    @Autowired
+    private IEamBaseRepairDepartService eamBaseRepairDepartService;
     /**
      * 鍒嗛〉鍒楄〃鏌ヨ
      *
@@ -287,12 +290,22 @@
                     }else {
                         eamEquipment.setFactoryOrgCode(baseFactory.getOrgCode());
                     }
+                    EamBaseRepairDepart eamBaseRepairDepart=eamBaseRepairDepartService.searchCenterByKeyWord(eamEquipment.getRepairDepartOrgCode());
+                    if(eamBaseRepairDepart==null){
+                        sb.append(String.format("缁翠慨鐝粍淇℃伅[%s]涓嶅瓨鍦紝鏃犳硶瀵煎叆\n\r", eamEquipment.getRepairDepartOrgCode()));
+                        continue;
+                    }else {
+                        eamEquipment.setRepairDepartOrgCode(eamBaseRepairDepart.getOrgCode());
+                    }
                     EamEquipment equipment = eamEquipmentService.saveEquipment(eamEquipment);
                     if (equipment == null) {
                         //淇濆瓨澶辫触锛岃烦杩囨湰娆″惊鐜�
                         sb.append(String.format("璁惧缂栫爜[%s]淇濆瓨澶辫触锛屾棤娉曞鍏n\r", eamEquipment.getEquipmentCode()));
                         continue;
                     }
+                    EamEquipmentExtend eamEquipmentExtend=new EamEquipmentExtend();
+                    BeanUtils.copyProperties(eamEquipmentExtend,equipment);
+                    eamEquipmentExtendService.save(eamEquipmentExtend);
                 }
                 log.info("娑堣�楁椂闂�" + (System.currentTimeMillis() - start) + "姣");
                 //update-end-author:taoyan date:20190528 for:鎵归噺鎻掑叆鏁版嵁
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMaintenanceStandardController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMaintenanceStandardController.java
index e6f9f67..0d7d06e 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMaintenanceStandardController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMaintenanceStandardController.java
@@ -30,6 +30,7 @@
 
 import javax.servlet.http.HttpServletRequest;
 import java.util.*;
+import java.util.concurrent.atomic.AtomicInteger;
 
 /**
  * @Description: 淇濆吇鏍囧噯
@@ -232,15 +233,17 @@
     @DeleteMapping(value = "/deleteBatch")
     public Result<?> deleteBatch(@RequestParam(name = "ids", required = true) String ids) {
         List<String> list = Arrays.asList(ids.split(","));
+        AtomicInteger i = new AtomicInteger();
         list.forEach(id -> {
             EamMaintenanceStandard entity = eamMaintenanceStandardService.getById(id);
             if (entity != null&&entity.getStandardStatus().equals(MaintenanceStandardStatusEnum.WAIT_SUBMIT.name())) {
                 //鍙垹闄ょ姸鎬佷负寰呮彁浜ょ殑
+                i.getAndIncrement();
                 entity.setDelFlag(CommonConstant.DEL_FLAG_1);
                 eamMaintenanceStandardService.updateById(entity);
             }
         });
-        return Result.OK("鎵归噺鍒犻櫎鎴愬姛锛�");
+        return Result.OK("鎵归噺鍒犻櫎鎴愬姛,宸插垹闄ょ姸鎬佷负寰呮彁浜ょ殑淇濆吇鏍囧噯锛屽垹闄ゆ暟閲忎负"+i);
     }
 
     /**
@@ -282,18 +285,18 @@
 
             for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
                 MultipartFile file = entity.getValue();
-                file.getOriginalFilename();
-                return eamMaintenanceStandardService.importPointInspectionExcel(file);
+                String fileName = file.getOriginalFilename();
+                Result<?> importResult=eamMaintenanceStandardService.importPointInspectionExcel(file);
+                if (importResult.isSuccess()) {
+                    successCount++;
+                } else {
+                    results.put(fileName, importResult.getMessage());
+                    failureCount++;
+                }
             }
 
-            // 鏋勫缓鍝嶅簲
-            Map<String, Object> response = new HashMap<>();
-            response.put("results", results);
-            response.put("totalFiles", fileMap.size());
-            response.put("successCount", successCount);
-            response.put("failureCount", failureCount);
-
-            return Result.ok("瀵煎叆瀹屾垚" + response);
+            // 鏋勫缓鏈�缁堝搷搴�
+            return getResult(results, fileMap.size(), successCount, failureCount);
 
         } catch (Exception e) {
             log.error("鐐规瀵煎叆澶勭悊寮傚父", e);
@@ -318,18 +321,18 @@
 
             for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
                 MultipartFile file = entity.getValue();
-                file.getOriginalFilename();
-                return eamMaintenanceStandardService.importMaintenanceStandard(file, "SECOND");
+                String fileName = file.getOriginalFilename();
+                Result<?> importResult=eamMaintenanceStandardService.importMaintenanceStandard(file, "SECOND");
+                if (importResult.isSuccess()) {
+                    successCount++;
+                } else {
+                    results.put(fileName, importResult.getMessage());
+                    failureCount++;
+                }
             }
 
             // 鏋勫缓鏈�缁堝搷搴�
-            Map<String, Object> response = new HashMap<>();
-            response.put("results", results);
-            response.put("totalFiles", fileMap.size());
-            response.put("successCount", successCount);
-            response.put("failureCount", failureCount);
-
-            return Result.ok("瀵煎叆瀹屾垚"+response);
+            return getResult(results, fileMap.size(), successCount, failureCount);
 
         } catch (Exception e) {
             log.error("瀵煎叆澶勭悊寮傚父", e);
@@ -353,18 +356,18 @@
 
             for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
                 MultipartFile file = entity.getValue();
-                file.getOriginalFilename();
-                return eamMaintenanceStandardService.importMaintenanceStandard(file, "THIRD");
+                String fileName = file.getOriginalFilename();
+                Result<?> importResult= eamMaintenanceStandardService.importMaintenanceStandard(file, "THIRD");
+                if (importResult.isSuccess()) {
+                    successCount++;
+                } else {
+                    results.put(fileName, importResult.getMessage());
+                    failureCount++;
+                }
             }
 
             // 鏋勫缓鏈�缁堝搷搴�
-            Map<String, Object> response = new HashMap<>();
-            response.put("results", results);
-            response.put("totalFiles", fileMap.size());
-            response.put("successCount", successCount);
-            response.put("failureCount", failureCount);
-
-            return Result.ok("瀵煎叆瀹屾垚"+response);
+            return getResult(results, fileMap.size(), successCount, failureCount);
 
         } catch (Exception e) {
             log.error("瀵煎叆澶勭悊寮傚父", e);
@@ -372,4 +375,16 @@
         }
     }
 
+    private Result<?> getResult(Map<String, String> results, int fileCount, int successCount, int failureCount) {
+        List<String> response = new ArrayList<>();
+        response.add("鎬绘枃浠舵暟锛�" + fileCount);
+        response.add("鎴愬姛鏁帮細" + successCount);
+        response.add("澶辫触鏁帮細" + failureCount);
+        if (failureCount > 0) {
+            response.add("閿欒淇℃伅锛�" + results.values());
+            return Result.error("閮ㄥ垎鏂囦欢瀵煎叆澶辫触锛�" + response);
+        }
+        return Result.ok("鎵�鏈夋枃浠跺鍏ユ垚鍔燂細" + response);
+    }
+
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusChangeController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusChangeController.java
new file mode 100644
index 0000000..bea94ef
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusChangeController.java
@@ -0,0 +1,151 @@
+package org.jeecg.modules.eam.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.modules.eam.entity.EamTechnicalStatusChange;
+import org.jeecg.modules.eam.service.IEamTechnicalStatusChangeService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.servlet.ModelAndView;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.util.Arrays;
+
+ /**
+ * @Description: 鎶�鏈姸鎬佸彉鏇寸敵璇�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Slf4j
+@Api(tags="鎶�鏈姸鎬佸彉鏇寸敵璇�")
+@RestController
+@RequestMapping("/eam/eamTechnicalStatusChange")
+public class EamTechnicalStatusChangeController extends JeecgController<EamTechnicalStatusChange, IEamTechnicalStatusChangeService> {
+	@Autowired
+	private IEamTechnicalStatusChangeService eamTechnicalStatusChangeService;
+	
+	/**
+	 * 鍒嗛〉鍒楄〃鏌ヨ
+	 *
+	 * @param eamTechnicalStatusChange
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	@ApiOperation(value="鎶�鏈姸鎬佸彉鏇寸敵璇�-鍒嗛〉鍒楄〃鏌ヨ", notes="鎶�鏈姸鎬佸彉鏇寸敵璇�-鍒嗛〉鍒楄〃鏌ヨ")
+	@GetMapping(value = "/list")
+	public Result<?> queryPageList(EamTechnicalStatusChange eamTechnicalStatusChange,
+								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+								   HttpServletRequest req) {
+		QueryWrapper<EamTechnicalStatusChange> queryWrapper = QueryGenerator.initQueryWrapper(eamTechnicalStatusChange, req.getParameterMap());
+		Page<EamTechnicalStatusChange> page = new Page<EamTechnicalStatusChange>(pageNo, pageSize);
+		IPage<EamTechnicalStatusChange> pageList = eamTechnicalStatusChangeService.page(page, queryWrapper);
+		return Result.OK(pageList);
+	}
+	
+	/**
+	 * 娣诲姞
+	 *
+	 * @param eamTechnicalStatusChange
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬佸彉鏇寸敵璇�-娣诲姞")
+	@ApiOperation(value="鎶�鏈姸鎬佸彉鏇寸敵璇�-娣诲姞", notes="鎶�鏈姸鎬佸彉鏇寸敵璇�-娣诲姞")
+	@PostMapping(value = "/add")
+	public Result<?> add(@RequestBody EamTechnicalStatusChange eamTechnicalStatusChange) {
+		eamTechnicalStatusChangeService.save(eamTechnicalStatusChange);
+		return Result.OK("娣诲姞鎴愬姛锛�");
+	}
+	
+	/**
+	 * 缂栬緫
+	 *
+	 * @param eamTechnicalStatusChange
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬佸彉鏇寸敵璇�-缂栬緫")
+	@ApiOperation(value="鎶�鏈姸鎬佸彉鏇寸敵璇�-缂栬緫", notes="鎶�鏈姸鎬佸彉鏇寸敵璇�-缂栬緫")
+	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
+	public Result<?> edit(@RequestBody EamTechnicalStatusChange eamTechnicalStatusChange) {
+		eamTechnicalStatusChangeService.updateById(eamTechnicalStatusChange);
+		return Result.OK("缂栬緫鎴愬姛!");
+	}
+	
+	/**
+	 * 閫氳繃id鍒犻櫎
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬佸彉鏇寸敵璇�-閫氳繃id鍒犻櫎")
+	@ApiOperation(value="鎶�鏈姸鎬佸彉鏇寸敵璇�-閫氳繃id鍒犻櫎", notes="鎶�鏈姸鎬佸彉鏇寸敵璇�-閫氳繃id鍒犻櫎")
+	@DeleteMapping(value = "/delete")
+	public Result<?> delete(@RequestParam(name="id",required=true) String id) {
+		eamTechnicalStatusChangeService.removeById(id);
+		return Result.OK("鍒犻櫎鎴愬姛!");
+	}
+	
+	/**
+	 * 鎵归噺鍒犻櫎
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬佸彉鏇寸敵璇�-鎵归噺鍒犻櫎")
+	@ApiOperation(value="鎶�鏈姸鎬佸彉鏇寸敵璇�-鎵归噺鍒犻櫎", notes="鎶�鏈姸鎬佸彉鏇寸敵璇�-鎵归噺鍒犻櫎")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		this.eamTechnicalStatusChangeService.removeByIds(Arrays.asList(ids.split(",")));
+		return Result.OK("鎵归噺鍒犻櫎鎴愬姛锛�");
+	}
+	
+	/**
+	 * 閫氳繃id鏌ヨ
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬佸彉鏇寸敵璇�-閫氳繃id鏌ヨ")
+	@ApiOperation(value="鎶�鏈姸鎬佸彉鏇寸敵璇�-閫氳繃id鏌ヨ", notes="鎶�鏈姸鎬佸彉鏇寸敵璇�-閫氳繃id鏌ヨ")
+	@GetMapping(value = "/queryById")
+	public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
+		EamTechnicalStatusChange eamTechnicalStatusChange = eamTechnicalStatusChangeService.getById(id);
+		return Result.OK(eamTechnicalStatusChange);
+	}
+
+  /**
+   * 瀵煎嚭excel
+   *
+   * @param request
+   * @param eamTechnicalStatusChange
+   */
+  @RequestMapping(value = "/exportXls")
+  public ModelAndView exportXls(HttpServletRequest request, EamTechnicalStatusChange eamTechnicalStatusChange) {
+      return super.exportXls(request, eamTechnicalStatusChange, EamTechnicalStatusChange.class, "鎶�鏈姸鎬佸彉鏇寸敵璇�");
+  }
+
+  /**
+   * 閫氳繃excel瀵煎叆鏁版嵁
+   *
+   * @param request
+   * @param response
+   * @return
+   */
+  @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+  public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+      return super.importExcel(request, response, EamTechnicalStatusChange.class);
+  }
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusChangeDetailController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusChangeDetailController.java
new file mode 100644
index 0000000..73b50e5
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusChangeDetailController.java
@@ -0,0 +1,151 @@
+package org.jeecg.modules.eam.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.modules.eam.entity.EamTechnicalStatusChangeDetail;
+import org.jeecg.modules.eam.service.IEamTechnicalStatusChangeDetailService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.servlet.ModelAndView;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.util.Arrays;
+
+ /**
+ * @Description: 鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Slf4j
+@Api(tags="鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�")
+@RestController
+@RequestMapping("/eam/eamTechnicalStatusChangeDetail")
+public class EamTechnicalStatusChangeDetailController extends JeecgController<EamTechnicalStatusChangeDetail, IEamTechnicalStatusChangeDetailService> {
+	@Autowired
+	private IEamTechnicalStatusChangeDetailService eamTechnicalStatusChangeDetailService;
+	
+	/**
+	 * 鍒嗛〉鍒楄〃鏌ヨ
+	 *
+	 * @param eamTechnicalStatusChangeDetail
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	@ApiOperation(value="鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�-鍒嗛〉鍒楄〃鏌ヨ", notes="鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�-鍒嗛〉鍒楄〃鏌ヨ")
+	@GetMapping(value = "/list")
+	public Result<?> queryPageList(EamTechnicalStatusChangeDetail eamTechnicalStatusChangeDetail,
+								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+								   HttpServletRequest req) {
+		QueryWrapper<EamTechnicalStatusChangeDetail> queryWrapper = QueryGenerator.initQueryWrapper(eamTechnicalStatusChangeDetail, req.getParameterMap());
+		Page<EamTechnicalStatusChangeDetail> page = new Page<EamTechnicalStatusChangeDetail>(pageNo, pageSize);
+		IPage<EamTechnicalStatusChangeDetail> pageList = eamTechnicalStatusChangeDetailService.page(page, queryWrapper);
+		return Result.OK(pageList);
+	}
+	
+	/**
+	 * 娣诲姞
+	 *
+	 * @param eamTechnicalStatusChangeDetail
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�-娣诲姞")
+	@ApiOperation(value="鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�-娣诲姞", notes="鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�-娣诲姞")
+	@PostMapping(value = "/add")
+	public Result<?> add(@RequestBody EamTechnicalStatusChangeDetail eamTechnicalStatusChangeDetail) {
+		eamTechnicalStatusChangeDetailService.save(eamTechnicalStatusChangeDetail);
+		return Result.OK("娣诲姞鎴愬姛锛�");
+	}
+	
+	/**
+	 * 缂栬緫
+	 *
+	 * @param eamTechnicalStatusChangeDetail
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�-缂栬緫")
+	@ApiOperation(value="鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�-缂栬緫", notes="鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�-缂栬緫")
+	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
+	public Result<?> edit(@RequestBody EamTechnicalStatusChangeDetail eamTechnicalStatusChangeDetail) {
+		eamTechnicalStatusChangeDetailService.updateById(eamTechnicalStatusChangeDetail);
+		return Result.OK("缂栬緫鎴愬姛!");
+	}
+	
+	/**
+	 * 閫氳繃id鍒犻櫎
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�-閫氳繃id鍒犻櫎")
+	@ApiOperation(value="鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�-閫氳繃id鍒犻櫎", notes="鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�-閫氳繃id鍒犻櫎")
+	@DeleteMapping(value = "/delete")
+	public Result<?> delete(@RequestParam(name="id",required=true) String id) {
+		eamTechnicalStatusChangeDetailService.removeById(id);
+		return Result.OK("鍒犻櫎鎴愬姛!");
+	}
+	
+	/**
+	 * 鎵归噺鍒犻櫎
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�-鎵归噺鍒犻櫎")
+	@ApiOperation(value="鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�-鎵归噺鍒犻櫎", notes="鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�-鎵归噺鍒犻櫎")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		this.eamTechnicalStatusChangeDetailService.removeByIds(Arrays.asList(ids.split(",")));
+		return Result.OK("鎵归噺鍒犻櫎鎴愬姛锛�");
+	}
+	
+	/**
+	 * 閫氳繃id鏌ヨ
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�-閫氳繃id鏌ヨ")
+	@ApiOperation(value="鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�-閫氳繃id鏌ヨ", notes="鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�-閫氳繃id鏌ヨ")
+	@GetMapping(value = "/queryById")
+	public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
+		EamTechnicalStatusChangeDetail eamTechnicalStatusChangeDetail = eamTechnicalStatusChangeDetailService.getById(id);
+		return Result.OK(eamTechnicalStatusChangeDetail);
+	}
+
+  /**
+   * 瀵煎嚭excel
+   *
+   * @param request
+   * @param eamTechnicalStatusChangeDetail
+   */
+  @RequestMapping(value = "/exportXls")
+  public ModelAndView exportXls(HttpServletRequest request, EamTechnicalStatusChangeDetail eamTechnicalStatusChangeDetail) {
+      return super.exportXls(request, eamTechnicalStatusChangeDetail, EamTechnicalStatusChangeDetail.class, "鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�");
+  }
+
+  /**
+   * 閫氳繃excel瀵煎叆鏁版嵁
+   *
+   * @param request
+   * @param response
+   * @return
+   */
+  @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+  public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+      return super.importExcel(request, response, EamTechnicalStatusChangeDetail.class);
+  }
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusDeactivateController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusDeactivateController.java
new file mode 100644
index 0000000..f39d463
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusDeactivateController.java
@@ -0,0 +1,151 @@
+package org.jeecg.modules.eam.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.modules.eam.entity.EamTechnicalStatusDeactivate;
+import org.jeecg.modules.eam.service.IEamTechnicalStatusDeactivateService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.servlet.ModelAndView;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.util.Arrays;
+
+ /**
+ * @Description: 鍋滅敤鍔犲伐璁惧鐢宠鍗�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Slf4j
+@Api(tags="鍋滅敤鍔犲伐璁惧鐢宠鍗�")
+@RestController
+@RequestMapping("/eam/eamTechnicalStatusDeactivate")
+public class EamTechnicalStatusDeactivateController extends JeecgController<EamTechnicalStatusDeactivate, IEamTechnicalStatusDeactivateService> {
+	@Autowired
+	private IEamTechnicalStatusDeactivateService eamTechnicalStatusDeactivateService;
+	
+	/**
+	 * 鍒嗛〉鍒楄〃鏌ヨ
+	 *
+	 * @param eamTechnicalStatusDeactivate
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	@ApiOperation(value="鍋滅敤鍔犲伐璁惧鐢宠鍗�-鍒嗛〉鍒楄〃鏌ヨ", notes="鍋滅敤鍔犲伐璁惧鐢宠鍗�-鍒嗛〉鍒楄〃鏌ヨ")
+	@GetMapping(value = "/list")
+	public Result<?> queryPageList(EamTechnicalStatusDeactivate eamTechnicalStatusDeactivate,
+								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+								   HttpServletRequest req) {
+		QueryWrapper<EamTechnicalStatusDeactivate> queryWrapper = QueryGenerator.initQueryWrapper(eamTechnicalStatusDeactivate, req.getParameterMap());
+		Page<EamTechnicalStatusDeactivate> page = new Page<EamTechnicalStatusDeactivate>(pageNo, pageSize);
+		IPage<EamTechnicalStatusDeactivate> pageList = eamTechnicalStatusDeactivateService.page(page, queryWrapper);
+		return Result.OK(pageList);
+	}
+	
+	/**
+	 * 娣诲姞
+	 *
+	 * @param eamTechnicalStatusDeactivate
+	 * @return
+	 */
+	@AutoLog(value = "鍋滅敤鍔犲伐璁惧鐢宠鍗�-娣诲姞")
+	@ApiOperation(value="鍋滅敤鍔犲伐璁惧鐢宠鍗�-娣诲姞", notes="鍋滅敤鍔犲伐璁惧鐢宠鍗�-娣诲姞")
+	@PostMapping(value = "/add")
+	public Result<?> add(@RequestBody EamTechnicalStatusDeactivate eamTechnicalStatusDeactivate) {
+		eamTechnicalStatusDeactivateService.save(eamTechnicalStatusDeactivate);
+		return Result.OK("娣诲姞鎴愬姛锛�");
+	}
+	
+	/**
+	 * 缂栬緫
+	 *
+	 * @param eamTechnicalStatusDeactivate
+	 * @return
+	 */
+	@AutoLog(value = "鍋滅敤鍔犲伐璁惧鐢宠鍗�-缂栬緫")
+	@ApiOperation(value="鍋滅敤鍔犲伐璁惧鐢宠鍗�-缂栬緫", notes="鍋滅敤鍔犲伐璁惧鐢宠鍗�-缂栬緫")
+	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
+	public Result<?> edit(@RequestBody EamTechnicalStatusDeactivate eamTechnicalStatusDeactivate) {
+		eamTechnicalStatusDeactivateService.updateById(eamTechnicalStatusDeactivate);
+		return Result.OK("缂栬緫鎴愬姛!");
+	}
+	
+	/**
+	 * 閫氳繃id鍒犻櫎
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "鍋滅敤鍔犲伐璁惧鐢宠鍗�-閫氳繃id鍒犻櫎")
+	@ApiOperation(value="鍋滅敤鍔犲伐璁惧鐢宠鍗�-閫氳繃id鍒犻櫎", notes="鍋滅敤鍔犲伐璁惧鐢宠鍗�-閫氳繃id鍒犻櫎")
+	@DeleteMapping(value = "/delete")
+	public Result<?> delete(@RequestParam(name="id",required=true) String id) {
+		eamTechnicalStatusDeactivateService.removeById(id);
+		return Result.OK("鍒犻櫎鎴愬姛!");
+	}
+	
+	/**
+	 * 鎵归噺鍒犻櫎
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "鍋滅敤鍔犲伐璁惧鐢宠鍗�-鎵归噺鍒犻櫎")
+	@ApiOperation(value="鍋滅敤鍔犲伐璁惧鐢宠鍗�-鎵归噺鍒犻櫎", notes="鍋滅敤鍔犲伐璁惧鐢宠鍗�-鎵归噺鍒犻櫎")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		this.eamTechnicalStatusDeactivateService.removeByIds(Arrays.asList(ids.split(",")));
+		return Result.OK("鎵归噺鍒犻櫎鎴愬姛锛�");
+	}
+	
+	/**
+	 * 閫氳繃id鏌ヨ
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "鍋滅敤鍔犲伐璁惧鐢宠鍗�-閫氳繃id鏌ヨ")
+	@ApiOperation(value="鍋滅敤鍔犲伐璁惧鐢宠鍗�-閫氳繃id鏌ヨ", notes="鍋滅敤鍔犲伐璁惧鐢宠鍗�-閫氳繃id鏌ヨ")
+	@GetMapping(value = "/queryById")
+	public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
+		EamTechnicalStatusDeactivate eamTechnicalStatusDeactivate = eamTechnicalStatusDeactivateService.getById(id);
+		return Result.OK(eamTechnicalStatusDeactivate);
+	}
+
+  /**
+   * 瀵煎嚭excel
+   *
+   * @param request
+   * @param eamTechnicalStatusDeactivate
+   */
+  @RequestMapping(value = "/exportXls")
+  public ModelAndView exportXls(HttpServletRequest request, EamTechnicalStatusDeactivate eamTechnicalStatusDeactivate) {
+      return super.exportXls(request, eamTechnicalStatusDeactivate, EamTechnicalStatusDeactivate.class, "鍋滅敤鍔犲伐璁惧鐢宠鍗�");
+  }
+
+  /**
+   * 閫氳繃excel瀵煎叆鏁版嵁
+   *
+   * @param request
+   * @param response
+   * @return
+   */
+  @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+  public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+      return super.importExcel(request, response, EamTechnicalStatusDeactivate.class);
+  }
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusDeactivateDetailController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusDeactivateDetailController.java
new file mode 100644
index 0000000..13dd569
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusDeactivateDetailController.java
@@ -0,0 +1,151 @@
+package org.jeecg.modules.eam.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.modules.eam.entity.EamTechnicalStatusDeactivateDetail;
+import org.jeecg.modules.eam.service.IEamTechnicalStatusDeactivateDetailService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.servlet.ModelAndView;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.util.Arrays;
+
+ /**
+ * @Description: 鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Slf4j
+@Api(tags="鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�")
+@RestController
+@RequestMapping("/eam/eamTechnicalStatusDeactivateDetail")
+public class EamTechnicalStatusDeactivateDetailController extends JeecgController<EamTechnicalStatusDeactivateDetail, IEamTechnicalStatusDeactivateDetailService> {
+	@Autowired
+	private IEamTechnicalStatusDeactivateDetailService eamTechnicalStatusDeactivateDetailService;
+	
+	/**
+	 * 鍒嗛〉鍒楄〃鏌ヨ
+	 *
+	 * @param eamTechnicalStatusDeactivateDetail
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	@ApiOperation(value="鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�-鍒嗛〉鍒楄〃鏌ヨ", notes="鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�-鍒嗛〉鍒楄〃鏌ヨ")
+	@GetMapping(value = "/list")
+	public Result<?> queryPageList(EamTechnicalStatusDeactivateDetail eamTechnicalStatusDeactivateDetail,
+								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+								   HttpServletRequest req) {
+		QueryWrapper<EamTechnicalStatusDeactivateDetail> queryWrapper = QueryGenerator.initQueryWrapper(eamTechnicalStatusDeactivateDetail, req.getParameterMap());
+		Page<EamTechnicalStatusDeactivateDetail> page = new Page<EamTechnicalStatusDeactivateDetail>(pageNo, pageSize);
+		IPage<EamTechnicalStatusDeactivateDetail> pageList = eamTechnicalStatusDeactivateDetailService.page(page, queryWrapper);
+		return Result.OK(pageList);
+	}
+	
+	/**
+	 * 娣诲姞
+	 *
+	 * @param eamTechnicalStatusDeactivateDetail
+	 * @return
+	 */
+	@AutoLog(value = "鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�-娣诲姞")
+	@ApiOperation(value="鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�-娣诲姞", notes="鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�-娣诲姞")
+	@PostMapping(value = "/add")
+	public Result<?> add(@RequestBody EamTechnicalStatusDeactivateDetail eamTechnicalStatusDeactivateDetail) {
+		eamTechnicalStatusDeactivateDetailService.save(eamTechnicalStatusDeactivateDetail);
+		return Result.OK("娣诲姞鎴愬姛锛�");
+	}
+	
+	/**
+	 * 缂栬緫
+	 *
+	 * @param eamTechnicalStatusDeactivateDetail
+	 * @return
+	 */
+	@AutoLog(value = "鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�-缂栬緫")
+	@ApiOperation(value="鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�-缂栬緫", notes="鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�-缂栬緫")
+	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
+	public Result<?> edit(@RequestBody EamTechnicalStatusDeactivateDetail eamTechnicalStatusDeactivateDetail) {
+		eamTechnicalStatusDeactivateDetailService.updateById(eamTechnicalStatusDeactivateDetail);
+		return Result.OK("缂栬緫鎴愬姛!");
+	}
+	
+	/**
+	 * 閫氳繃id鍒犻櫎
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�-閫氳繃id鍒犻櫎")
+	@ApiOperation(value="鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�-閫氳繃id鍒犻櫎", notes="鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�-閫氳繃id鍒犻櫎")
+	@DeleteMapping(value = "/delete")
+	public Result<?> delete(@RequestParam(name="id",required=true) String id) {
+		eamTechnicalStatusDeactivateDetailService.removeById(id);
+		return Result.OK("鍒犻櫎鎴愬姛!");
+	}
+	
+	/**
+	 * 鎵归噺鍒犻櫎
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�-鎵归噺鍒犻櫎")
+	@ApiOperation(value="鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�-鎵归噺鍒犻櫎", notes="鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�-鎵归噺鍒犻櫎")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		this.eamTechnicalStatusDeactivateDetailService.removeByIds(Arrays.asList(ids.split(",")));
+		return Result.OK("鎵归噺鍒犻櫎鎴愬姛锛�");
+	}
+	
+	/**
+	 * 閫氳繃id鏌ヨ
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�-閫氳繃id鏌ヨ")
+	@ApiOperation(value="鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�-閫氳繃id鏌ヨ", notes="鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�-閫氳繃id鏌ヨ")
+	@GetMapping(value = "/queryById")
+	public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
+		EamTechnicalStatusDeactivateDetail eamTechnicalStatusDeactivateDetail = eamTechnicalStatusDeactivateDetailService.getById(id);
+		return Result.OK(eamTechnicalStatusDeactivateDetail);
+	}
+
+  /**
+   * 瀵煎嚭excel
+   *
+   * @param request
+   * @param eamTechnicalStatusDeactivateDetail
+   */
+  @RequestMapping(value = "/exportXls")
+  public ModelAndView exportXls(HttpServletRequest request, EamTechnicalStatusDeactivateDetail eamTechnicalStatusDeactivateDetail) {
+      return super.exportXls(request, eamTechnicalStatusDeactivateDetail, EamTechnicalStatusDeactivateDetail.class, "鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�");
+  }
+
+  /**
+   * 閫氳繃excel瀵煎叆鏁版嵁
+   *
+   * @param request
+   * @param response
+   * @return
+   */
+  @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+  public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+      return super.importExcel(request, response, EamTechnicalStatusDeactivateDetail.class);
+  }
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationApplicationController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationApplicationController.java
new file mode 100644
index 0000000..7315c8a
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationApplicationController.java
@@ -0,0 +1,151 @@
+package org.jeecg.modules.eam.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationApplication;
+import org.jeecg.modules.eam.service.IEamTechnicalStatusEvaluationApplicationService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.servlet.ModelAndView;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.util.Arrays;
+
+ /**
+ * @Description: 鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Slf4j
+@Api(tags="鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�")
+@RestController
+@RequestMapping("/eam/eamTechnicalStatusEvaluationApplication")
+public class EamTechnicalStatusEvaluationApplicationController extends JeecgController<EamTechnicalStatusEvaluationApplication, IEamTechnicalStatusEvaluationApplicationService> {
+	@Autowired
+	private IEamTechnicalStatusEvaluationApplicationService eamTechnicalStatusEvaluationApplicationService;
+	
+	/**
+	 * 鍒嗛〉鍒楄〃鏌ヨ
+	 *
+	 * @param eamTechnicalStatusEvaluationApplication
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	@ApiOperation(value="鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�-鍒嗛〉鍒楄〃鏌ヨ", notes="鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�-鍒嗛〉鍒楄〃鏌ヨ")
+	@GetMapping(value = "/list")
+	public Result<?> queryPageList(EamTechnicalStatusEvaluationApplication eamTechnicalStatusEvaluationApplication,
+								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+								   HttpServletRequest req) {
+		QueryWrapper<EamTechnicalStatusEvaluationApplication> queryWrapper = QueryGenerator.initQueryWrapper(eamTechnicalStatusEvaluationApplication, req.getParameterMap());
+		Page<EamTechnicalStatusEvaluationApplication> page = new Page<EamTechnicalStatusEvaluationApplication>(pageNo, pageSize);
+		IPage<EamTechnicalStatusEvaluationApplication> pageList = eamTechnicalStatusEvaluationApplicationService.page(page, queryWrapper);
+		return Result.OK(pageList);
+	}
+	
+	/**
+	 * 娣诲姞
+	 *
+	 * @param eamTechnicalStatusEvaluationApplication
+	 * @return
+	 */
+	@AutoLog(value = "鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�-娣诲姞")
+	@ApiOperation(value="鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�-娣诲姞", notes="鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�-娣诲姞")
+	@PostMapping(value = "/add")
+	public Result<?> add(@RequestBody EamTechnicalStatusEvaluationApplication eamTechnicalStatusEvaluationApplication) {
+		eamTechnicalStatusEvaluationApplicationService.save(eamTechnicalStatusEvaluationApplication);
+		return Result.OK("娣诲姞鎴愬姛锛�");
+	}
+	
+	/**
+	 * 缂栬緫
+	 *
+	 * @param eamTechnicalStatusEvaluationApplication
+	 * @return
+	 */
+	@AutoLog(value = "鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�-缂栬緫")
+	@ApiOperation(value="鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�-缂栬緫", notes="鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�-缂栬緫")
+	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
+	public Result<?> edit(@RequestBody EamTechnicalStatusEvaluationApplication eamTechnicalStatusEvaluationApplication) {
+		eamTechnicalStatusEvaluationApplicationService.updateById(eamTechnicalStatusEvaluationApplication);
+		return Result.OK("缂栬緫鎴愬姛!");
+	}
+	
+	/**
+	 * 閫氳繃id鍒犻櫎
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�-閫氳繃id鍒犻櫎")
+	@ApiOperation(value="鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�-閫氳繃id鍒犻櫎", notes="鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�-閫氳繃id鍒犻櫎")
+	@DeleteMapping(value = "/delete")
+	public Result<?> delete(@RequestParam(name="id",required=true) String id) {
+		eamTechnicalStatusEvaluationApplicationService.removeById(id);
+		return Result.OK("鍒犻櫎鎴愬姛!");
+	}
+	
+	/**
+	 * 鎵归噺鍒犻櫎
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�-鎵归噺鍒犻櫎")
+	@ApiOperation(value="鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�-鎵归噺鍒犻櫎", notes="鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�-鎵归噺鍒犻櫎")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		this.eamTechnicalStatusEvaluationApplicationService.removeByIds(Arrays.asList(ids.split(",")));
+		return Result.OK("鎵归噺鍒犻櫎鎴愬姛锛�");
+	}
+	
+	/**
+	 * 閫氳繃id鏌ヨ
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�-閫氳繃id鏌ヨ")
+	@ApiOperation(value="鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�-閫氳繃id鏌ヨ", notes="鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�-閫氳繃id鏌ヨ")
+	@GetMapping(value = "/queryById")
+	public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
+		EamTechnicalStatusEvaluationApplication eamTechnicalStatusEvaluationApplication = eamTechnicalStatusEvaluationApplicationService.getById(id);
+		return Result.OK(eamTechnicalStatusEvaluationApplication);
+	}
+
+  /**
+   * 瀵煎嚭excel
+   *
+   * @param request
+   * @param eamTechnicalStatusEvaluationApplication
+   */
+  @RequestMapping(value = "/exportXls")
+  public ModelAndView exportXls(HttpServletRequest request, EamTechnicalStatusEvaluationApplication eamTechnicalStatusEvaluationApplication) {
+      return super.exportXls(request, eamTechnicalStatusEvaluationApplication, EamTechnicalStatusEvaluationApplication.class, "鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�");
+  }
+
+  /**
+   * 閫氳繃excel瀵煎叆鏁版嵁
+   *
+   * @param request
+   * @param response
+   * @return
+   */
+  @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+  public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+      return super.importExcel(request, response, EamTechnicalStatusEvaluationApplication.class);
+  }
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationOrderChangeController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationOrderChangeController.java
new file mode 100644
index 0000000..fe8cd09
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationOrderChangeController.java
@@ -0,0 +1,151 @@
+package org.jeecg.modules.eam.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationOrderChange;
+import org.jeecg.modules.eam.service.IEamTechnicalStatusEvaluationOrderChangeService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.servlet.ModelAndView;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.util.Arrays;
+
+ /**
+ * @Description: 鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Slf4j
+@Api(tags="鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�")
+@RestController
+@RequestMapping("/eam/eamTechnicalStatusEvaluationOrderChange")
+public class EamTechnicalStatusEvaluationOrderChangeController extends JeecgController<EamTechnicalStatusEvaluationOrderChange, IEamTechnicalStatusEvaluationOrderChangeService> {
+	@Autowired
+	private IEamTechnicalStatusEvaluationOrderChangeService eamTechnicalStatusEvaluationOrderChangeService;
+	
+	/**
+	 * 鍒嗛〉鍒楄〃鏌ヨ
+	 *
+	 * @param eamTechnicalStatusEvaluationOrderChange
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	@ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�-鍒嗛〉鍒楄〃鏌ヨ", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�-鍒嗛〉鍒楄〃鏌ヨ")
+	@GetMapping(value = "/list")
+	public Result<?> queryPageList(EamTechnicalStatusEvaluationOrderChange eamTechnicalStatusEvaluationOrderChange,
+								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+								   HttpServletRequest req) {
+		QueryWrapper<EamTechnicalStatusEvaluationOrderChange> queryWrapper = QueryGenerator.initQueryWrapper(eamTechnicalStatusEvaluationOrderChange, req.getParameterMap());
+		Page<EamTechnicalStatusEvaluationOrderChange> page = new Page<EamTechnicalStatusEvaluationOrderChange>(pageNo, pageSize);
+		IPage<EamTechnicalStatusEvaluationOrderChange> pageList = eamTechnicalStatusEvaluationOrderChangeService.page(page, queryWrapper);
+		return Result.OK(pageList);
+	}
+	
+	/**
+	 * 娣诲姞
+	 *
+	 * @param eamTechnicalStatusEvaluationOrderChange
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�-娣诲姞")
+	@ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�-娣诲姞", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�-娣诲姞")
+	@PostMapping(value = "/add")
+	public Result<?> add(@RequestBody EamTechnicalStatusEvaluationOrderChange eamTechnicalStatusEvaluationOrderChange) {
+		eamTechnicalStatusEvaluationOrderChangeService.save(eamTechnicalStatusEvaluationOrderChange);
+		return Result.OK("娣诲姞鎴愬姛锛�");
+	}
+	
+	/**
+	 * 缂栬緫
+	 *
+	 * @param eamTechnicalStatusEvaluationOrderChange
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�-缂栬緫")
+	@ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�-缂栬緫", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�-缂栬緫")
+	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
+	public Result<?> edit(@RequestBody EamTechnicalStatusEvaluationOrderChange eamTechnicalStatusEvaluationOrderChange) {
+		eamTechnicalStatusEvaluationOrderChangeService.updateById(eamTechnicalStatusEvaluationOrderChange);
+		return Result.OK("缂栬緫鎴愬姛!");
+	}
+	
+	/**
+	 * 閫氳繃id鍒犻櫎
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�-閫氳繃id鍒犻櫎")
+	@ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�-閫氳繃id鍒犻櫎", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�-閫氳繃id鍒犻櫎")
+	@DeleteMapping(value = "/delete")
+	public Result<?> delete(@RequestParam(name="id",required=true) String id) {
+		eamTechnicalStatusEvaluationOrderChangeService.removeById(id);
+		return Result.OK("鍒犻櫎鎴愬姛!");
+	}
+	
+	/**
+	 * 鎵归噺鍒犻櫎
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�-鎵归噺鍒犻櫎")
+	@ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�-鎵归噺鍒犻櫎", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�-鎵归噺鍒犻櫎")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		this.eamTechnicalStatusEvaluationOrderChangeService.removeByIds(Arrays.asList(ids.split(",")));
+		return Result.OK("鎵归噺鍒犻櫎鎴愬姛锛�");
+	}
+	
+	/**
+	 * 閫氳繃id鏌ヨ
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�-閫氳繃id鏌ヨ")
+	@ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�-閫氳繃id鏌ヨ", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�-閫氳繃id鏌ヨ")
+	@GetMapping(value = "/queryById")
+	public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
+		EamTechnicalStatusEvaluationOrderChange eamTechnicalStatusEvaluationOrderChange = eamTechnicalStatusEvaluationOrderChangeService.getById(id);
+		return Result.OK(eamTechnicalStatusEvaluationOrderChange);
+	}
+
+  /**
+   * 瀵煎嚭excel
+   *
+   * @param request
+   * @param eamTechnicalStatusEvaluationOrderChange
+   */
+  @RequestMapping(value = "/exportXls")
+  public ModelAndView exportXls(HttpServletRequest request, EamTechnicalStatusEvaluationOrderChange eamTechnicalStatusEvaluationOrderChange) {
+      return super.exportXls(request, eamTechnicalStatusEvaluationOrderChange, EamTechnicalStatusEvaluationOrderChange.class, "鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�");
+  }
+
+  /**
+   * 閫氳繃excel瀵煎叆鏁版嵁
+   *
+   * @param request
+   * @param response
+   * @return
+   */
+  @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+  public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+      return super.importExcel(request, response, EamTechnicalStatusEvaluationOrderChange.class);
+  }
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationOrderController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationOrderController.java
new file mode 100644
index 0000000..45b2c89
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationOrderController.java
@@ -0,0 +1,151 @@
+package org.jeecg.modules.eam.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationOrder;
+import org.jeecg.modules.eam.service.IEamTechnicalStatusEvaluationOrderService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.servlet.ModelAndView;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.util.Arrays;
+
+ /**
+ * @Description: 鎶�鏈姸鎬侀壌瀹氬伐鍗�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Slf4j
+@Api(tags="鎶�鏈姸鎬侀壌瀹氬伐鍗�")
+@RestController
+@RequestMapping("/eam/eamTechnicalStatusEvaluationOrder")
+public class EamTechnicalStatusEvaluationOrderController extends JeecgController<EamTechnicalStatusEvaluationOrder, IEamTechnicalStatusEvaluationOrderService> {
+	@Autowired
+	private IEamTechnicalStatusEvaluationOrderService eamTechnicalStatusEvaluationOrderService;
+	
+	/**
+	 * 鍒嗛〉鍒楄〃鏌ヨ
+	 *
+	 * @param eamTechnicalStatusEvaluationOrder
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	@ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗�-鍒嗛〉鍒楄〃鏌ヨ", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗�-鍒嗛〉鍒楄〃鏌ヨ")
+	@GetMapping(value = "/list")
+	public Result<?> queryPageList(EamTechnicalStatusEvaluationOrder eamTechnicalStatusEvaluationOrder,
+								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+								   HttpServletRequest req) {
+		QueryWrapper<EamTechnicalStatusEvaluationOrder> queryWrapper = QueryGenerator.initQueryWrapper(eamTechnicalStatusEvaluationOrder, req.getParameterMap());
+		Page<EamTechnicalStatusEvaluationOrder> page = new Page<EamTechnicalStatusEvaluationOrder>(pageNo, pageSize);
+		IPage<EamTechnicalStatusEvaluationOrder> pageList = eamTechnicalStatusEvaluationOrderService.page(page, queryWrapper);
+		return Result.OK(pageList);
+	}
+	
+	/**
+	 * 娣诲姞
+	 *
+	 * @param eamTechnicalStatusEvaluationOrder
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗�-娣诲姞")
+	@ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗�-娣诲姞", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗�-娣诲姞")
+	@PostMapping(value = "/add")
+	public Result<?> add(@RequestBody EamTechnicalStatusEvaluationOrder eamTechnicalStatusEvaluationOrder) {
+		eamTechnicalStatusEvaluationOrderService.save(eamTechnicalStatusEvaluationOrder);
+		return Result.OK("娣诲姞鎴愬姛锛�");
+	}
+	
+	/**
+	 * 缂栬緫
+	 *
+	 * @param eamTechnicalStatusEvaluationOrder
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗�-缂栬緫")
+	@ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗�-缂栬緫", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗�-缂栬緫")
+	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
+	public Result<?> edit(@RequestBody EamTechnicalStatusEvaluationOrder eamTechnicalStatusEvaluationOrder) {
+		eamTechnicalStatusEvaluationOrderService.updateById(eamTechnicalStatusEvaluationOrder);
+		return Result.OK("缂栬緫鎴愬姛!");
+	}
+	
+	/**
+	 * 閫氳繃id鍒犻櫎
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗�-閫氳繃id鍒犻櫎")
+	@ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗�-閫氳繃id鍒犻櫎", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗�-閫氳繃id鍒犻櫎")
+	@DeleteMapping(value = "/delete")
+	public Result<?> delete(@RequestParam(name="id",required=true) String id) {
+		eamTechnicalStatusEvaluationOrderService.removeById(id);
+		return Result.OK("鍒犻櫎鎴愬姛!");
+	}
+	
+	/**
+	 * 鎵归噺鍒犻櫎
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗�-鎵归噺鍒犻櫎")
+	@ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗�-鎵归噺鍒犻櫎", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗�-鎵归噺鍒犻櫎")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		this.eamTechnicalStatusEvaluationOrderService.removeByIds(Arrays.asList(ids.split(",")));
+		return Result.OK("鎵归噺鍒犻櫎鎴愬姛锛�");
+	}
+	
+	/**
+	 * 閫氳繃id鏌ヨ
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗�-閫氳繃id鏌ヨ")
+	@ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗�-閫氳繃id鏌ヨ", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗�-閫氳繃id鏌ヨ")
+	@GetMapping(value = "/queryById")
+	public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
+		EamTechnicalStatusEvaluationOrder eamTechnicalStatusEvaluationOrder = eamTechnicalStatusEvaluationOrderService.getById(id);
+		return Result.OK(eamTechnicalStatusEvaluationOrder);
+	}
+
+  /**
+   * 瀵煎嚭excel
+   *
+   * @param request
+   * @param eamTechnicalStatusEvaluationOrder
+   */
+  @RequestMapping(value = "/exportXls")
+  public ModelAndView exportXls(HttpServletRequest request, EamTechnicalStatusEvaluationOrder eamTechnicalStatusEvaluationOrder) {
+      return super.exportXls(request, eamTechnicalStatusEvaluationOrder, EamTechnicalStatusEvaluationOrder.class, "鎶�鏈姸鎬侀壌瀹氬伐鍗�");
+  }
+
+  /**
+   * 閫氳繃excel瀵煎叆鏁版嵁
+   *
+   * @param request
+   * @param response
+   * @return
+   */
+  @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+  public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+      return super.importExcel(request, response, EamTechnicalStatusEvaluationOrder.class);
+  }
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationOrderDetailController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationOrderDetailController.java
new file mode 100644
index 0000000..573666c
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationOrderDetailController.java
@@ -0,0 +1,151 @@
+package org.jeecg.modules.eam.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationOrderDetail;
+import org.jeecg.modules.eam.service.IEamTechnicalStatusEvaluationOrderDetailService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.servlet.ModelAndView;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.util.Arrays;
+
+ /**
+ * @Description: 鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Slf4j
+@Api(tags="鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�")
+@RestController
+@RequestMapping("/eam/eamTechnicalStatusEvaluationOrderDetail")
+public class EamTechnicalStatusEvaluationOrderDetailController extends JeecgController<EamTechnicalStatusEvaluationOrderDetail, IEamTechnicalStatusEvaluationOrderDetailService> {
+	@Autowired
+	private IEamTechnicalStatusEvaluationOrderDetailService eamTechnicalStatusEvaluationOrderDetailService;
+	
+	/**
+	 * 鍒嗛〉鍒楄〃鏌ヨ
+	 *
+	 * @param eamTechnicalStatusEvaluationOrderDetail
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	@ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�-鍒嗛〉鍒楄〃鏌ヨ", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�-鍒嗛〉鍒楄〃鏌ヨ")
+	@GetMapping(value = "/list")
+	public Result<?> queryPageList(EamTechnicalStatusEvaluationOrderDetail eamTechnicalStatusEvaluationOrderDetail,
+								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+								   HttpServletRequest req) {
+		QueryWrapper<EamTechnicalStatusEvaluationOrderDetail> queryWrapper = QueryGenerator.initQueryWrapper(eamTechnicalStatusEvaluationOrderDetail, req.getParameterMap());
+		Page<EamTechnicalStatusEvaluationOrderDetail> page = new Page<EamTechnicalStatusEvaluationOrderDetail>(pageNo, pageSize);
+		IPage<EamTechnicalStatusEvaluationOrderDetail> pageList = eamTechnicalStatusEvaluationOrderDetailService.page(page, queryWrapper);
+		return Result.OK(pageList);
+	}
+	
+	/**
+	 * 娣诲姞
+	 *
+	 * @param eamTechnicalStatusEvaluationOrderDetail
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�-娣诲姞")
+	@ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�-娣诲姞", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�-娣诲姞")
+	@PostMapping(value = "/add")
+	public Result<?> add(@RequestBody EamTechnicalStatusEvaluationOrderDetail eamTechnicalStatusEvaluationOrderDetail) {
+		eamTechnicalStatusEvaluationOrderDetailService.save(eamTechnicalStatusEvaluationOrderDetail);
+		return Result.OK("娣诲姞鎴愬姛锛�");
+	}
+	
+	/**
+	 * 缂栬緫
+	 *
+	 * @param eamTechnicalStatusEvaluationOrderDetail
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�-缂栬緫")
+	@ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�-缂栬緫", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�-缂栬緫")
+	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
+	public Result<?> edit(@RequestBody EamTechnicalStatusEvaluationOrderDetail eamTechnicalStatusEvaluationOrderDetail) {
+		eamTechnicalStatusEvaluationOrderDetailService.updateById(eamTechnicalStatusEvaluationOrderDetail);
+		return Result.OK("缂栬緫鎴愬姛!");
+	}
+	
+	/**
+	 * 閫氳繃id鍒犻櫎
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�-閫氳繃id鍒犻櫎")
+	@ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�-閫氳繃id鍒犻櫎", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�-閫氳繃id鍒犻櫎")
+	@DeleteMapping(value = "/delete")
+	public Result<?> delete(@RequestParam(name="id",required=true) String id) {
+		eamTechnicalStatusEvaluationOrderDetailService.removeById(id);
+		return Result.OK("鍒犻櫎鎴愬姛!");
+	}
+	
+	/**
+	 * 鎵归噺鍒犻櫎
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�-鎵归噺鍒犻櫎")
+	@ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�-鎵归噺鍒犻櫎", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�-鎵归噺鍒犻櫎")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		this.eamTechnicalStatusEvaluationOrderDetailService.removeByIds(Arrays.asList(ids.split(",")));
+		return Result.OK("鎵归噺鍒犻櫎鎴愬姛锛�");
+	}
+	
+	/**
+	 * 閫氳繃id鏌ヨ
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�-閫氳繃id鏌ヨ")
+	@ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�-閫氳繃id鏌ヨ", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�-閫氳繃id鏌ヨ")
+	@GetMapping(value = "/queryById")
+	public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
+		EamTechnicalStatusEvaluationOrderDetail eamTechnicalStatusEvaluationOrderDetail = eamTechnicalStatusEvaluationOrderDetailService.getById(id);
+		return Result.OK(eamTechnicalStatusEvaluationOrderDetail);
+	}
+
+  /**
+   * 瀵煎嚭excel
+   *
+   * @param request
+   * @param eamTechnicalStatusEvaluationOrderDetail
+   */
+  @RequestMapping(value = "/exportXls")
+  public ModelAndView exportXls(HttpServletRequest request, EamTechnicalStatusEvaluationOrderDetail eamTechnicalStatusEvaluationOrderDetail) {
+      return super.exportXls(request, eamTechnicalStatusEvaluationOrderDetail, EamTechnicalStatusEvaluationOrderDetail.class, "鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�");
+  }
+
+  /**
+   * 閫氳繃excel瀵煎叆鏁版嵁
+   *
+   * @param request
+   * @param response
+   * @return
+   */
+  @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+  public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+      return super.importExcel(request, response, EamTechnicalStatusEvaluationOrderDetail.class);
+  }
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusChange.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusChange.java
new file mode 100644
index 0000000..1a2c818
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusChange.java
@@ -0,0 +1,79 @@
+package org.jeecg.modules.eam.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.util.Date;
+
+/**
+ * @Description: 鎶�鏈姸鎬佸彉鏇寸敵璇�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Data
+@TableName("eam_technical_status_change")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="eam_technical_status_change瀵硅薄", description="鎶�鏈姸鎬佸彉鏇寸敵璇�")
+public class EamTechnicalStatusChange {
+    
+	/**涓婚敭*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "涓婚敭")
+	private String id;
+	/**鍒涘缓浜�*/
+    @ApiModelProperty(value = "鍒涘缓浜�")
+	private String createBy;
+	/**鍒涘缓鏃堕棿*/
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+	private Date createTime;
+	/**鏇存柊浜�*/
+    @ApiModelProperty(value = "鏇存柊浜�")
+	private String updateBy;
+	/**鏇存柊鏃堕棿*/
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+	private Date updateTime;
+	/**鍒犻櫎鏍囪*/
+    @ApiModelProperty(value = "鍒犻櫎鏍囪")
+	private Integer delFlag;
+	/**鍙樻洿鍗曞彿*/
+    @ApiModelProperty(value = "鍙樻洿鍗曞彿")
+	private String changeOrderNum;
+	/**鍙樻洿鍗曠姸鎬�*/
+    @ApiModelProperty(value = "鍙樻洿鍗曠姸鎬�")
+	private String changeStatus;
+	/**缂栧埗浜�*/
+    @ApiModelProperty(value = "缂栧埗浜�")
+	private String designer;
+	/**缂栧埗鏃堕棿*/
+    @ApiModelProperty(value = "缂栧埗鏃堕棿")
+	private Date designerTime;
+	/**浣跨敤鍗曚綅瀹や富绠$瀛�*/
+    @ApiModelProperty(value = "浣跨敤鍗曚綅瀹や富绠$瀛�")
+	private String departHeaderSignature;
+	/**浣跨敤鍗曚綅瀹や富绠$瀛楁椂闂�*/
+    @ApiModelProperty(value = "浣跨敤鍗曚綅瀹や富绠$瀛楁椂闂�")
+	private Date departHeaderSignatureTime;
+	/**浣跨敤鍗曚綅瀹や富绠℃剰瑙�*/
+    @ApiModelProperty(value = "浣跨敤鍗曚綅瀹や富绠℃剰瑙�")
+	private String departHeaderSignatureComment;
+	/**浣跨敤鍗曚綅閮ㄤ富绠$瀛�*/
+    @ApiModelProperty(value = "浣跨敤鍗曚綅閮ㄤ富绠$瀛�")
+	private String departLeaderSignature;
+	/**浣跨敤鍗曚綅閮ㄤ富绠$瀛楁椂闂�*/
+    @ApiModelProperty(value = "浣跨敤鍗曚綅閮ㄤ富绠$瀛楁椂闂�")
+	private Date departLeaderSignatureTime;
+	/**浣跨敤鍗曚綅閮ㄤ富绠$瀛�*/
+    @ApiModelProperty(value = "浣跨敤鍗曚綅閮ㄤ富绠$瀛�")
+	private String departLeaderSignatureComment;
+	/**HF缂栫爜*/
+    @ApiModelProperty(value = "HF缂栫爜")
+	private String hfCode;
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusChangeDetail.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusChangeDetail.java
new file mode 100644
index 0000000..567a90e
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusChangeDetail.java
@@ -0,0 +1,67 @@
+package org.jeecg.modules.eam.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.util.Date;
+
+/**
+ * @Description: 鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Data
+@TableName("eam_technical_status_change_detail")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="eam_technical_status_change_detail瀵硅薄", description="鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�")
+public class EamTechnicalStatusChangeDetail {
+    
+	/**涓婚敭*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "涓婚敭")
+	private String id;
+	/**鍒涘缓浜�*/
+    @ApiModelProperty(value = "鍒涘缓浜�")
+	private String createBy;
+	/**鍒涘缓鏃堕棿*/
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+	private Date createTime;
+	/**鏇存柊浜�*/
+    @ApiModelProperty(value = "鏇存柊浜�")
+	private String updateBy;
+	/**鏇存柊鏃堕棿*/
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+	private Date updateTime;
+	/**璁惧ID*/
+    @ApiModelProperty(value = "璁惧ID")
+	private String equipmentId;
+	/**鍙樻洿鍘熷洜;鎼縼銆佸ぇ淇�佹敼閫犮�佸叾浠�*/
+    @ApiModelProperty(value = "鍙樻洿鍘熷洜;鎼縼銆佸ぇ淇�佹敼閫犮�佸叾浠�")
+	private String changeCategory;
+	/**鍙樻洿鏃ユ湡*/
+    @ApiModelProperty(value = "鍙樻洿鏃ユ湡")
+	private Date changeDate;
+	/**鍙樻洿鍚庢妧鏈姸鎬�;鍙樻洿閫氳繃鍚庨粯璁よ澶囨妧鏈姸鎬佹敼涓虹鐢�*/
+    @ApiModelProperty(value = "鍙樻洿鍚庢妧鏈姸鎬�;鍙樻洿閫氳繃鍚庨粯璁よ澶囨妧鏈姸鎬佹敼涓虹鐢�")
+	private String changeTechnicalStatus;
+	/**楠屾敹妫�鏌ヤ汉*/
+    @ApiModelProperty(value = "楠屾敹妫�鏌ヤ汉")
+	private String acceptanceChecker;
+	/**楠屾敹妫�鏌ユ椂闂�*/
+    @ApiModelProperty(value = "楠屾敹妫�鏌ユ椂闂�")
+	private Date acceptanceCheckTime;
+	/**楠屾敹妫�鏌ョ粨鏋�;澶т慨銆佹敼閫� 闇�瑕佸~鍐欓獙鏀剁粨鏋滐紝鎼縼鎸夌収鎶�鏈姸鎬侀壌瀹氬伐鍗曠淮鎶わ紝鍏朵粬鏆傛湭浣跨敤鍒帮紝鍙鐣欐绫诲瀷*/
+    @ApiModelProperty(value = "楠屾敹妫�鏌ョ粨鏋�;澶т慨銆佹敼閫� 闇�瑕佸~鍐欓獙鏀剁粨鏋滐紝鎼縼鎸夌収鎶�鏈姸鎬侀壌瀹氬伐鍗曠淮鎶わ紝鍏朵粬鏆傛湭浣跨敤鍒帮紝鍙鐣欐绫诲瀷")
+	private String acceptanceCheckResult;
+	/**鎶�鏈姸鎬侀壌瀹氬伐鍗旾D;鎼縼浣跨敤*/
+    @ApiModelProperty(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗旾D;鎼縼浣跨敤")
+	private String orderId;
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusDeactivate.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusDeactivate.java
new file mode 100644
index 0000000..3d25acc
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusDeactivate.java
@@ -0,0 +1,82 @@
+package org.jeecg.modules.eam.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.util.Date;
+
+/**
+ * @Description: 鍋滅敤鍔犲伐璁惧鐢宠鍗�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Data
+@TableName("eam_technical_status_deactivate")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="eam_technical_status_deactivate瀵硅薄", description="鍋滅敤鍔犲伐璁惧鐢宠鍗�")
+public class EamTechnicalStatusDeactivate {
+    
+	/**涓婚敭*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "涓婚敭")
+	private String id;
+	/**鍒涘缓浜�*/
+    @ApiModelProperty(value = "鍒涘缓浜�")
+	private String createBy;
+	/**鍒涘缓鏃堕棿*/
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+	private Date createTime;
+	/**鏇存柊浜�*/
+    @ApiModelProperty(value = "鏇存柊浜�")
+	private String updateBy;
+	/**鏇存柊鏃堕棿*/
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+	private Date updateTime;
+	/**鍒犻櫎鏍囪*/
+    @ApiModelProperty(value = "鍒犻櫎鏍囪")
+	private Integer delFlag;
+	/**鍋滅敤鍗曞彿*/
+    @ApiModelProperty(value = "鍋滅敤鍗曞彿")
+	private String deactivateOrderNum;
+	/**鐢宠浜�*/
+    @ApiModelProperty(value = "鐢宠浜�")
+	private String applicant;
+	/**鐢宠閮ㄩ棬*/
+    @ApiModelProperty(value = "鐢宠閮ㄩ棬")
+	private String factoryOrgCode;
+	/**鐢宠鏃ユ湡*/
+    @ApiModelProperty(value = "鐢宠鏃ユ湡")
+	private Date applyDate;
+	/**鐢宠鍗曠姸鎬�;寰呮彁浜ゃ�佸緟鍗曚綅瀹ょ骇棰嗗瀹℃牳銆佺敓浜ц澶囩鐞嗕富绠″鏍搞�佸緟淇濋殰閮ㄩ瀵煎鏍搞�佸凡浣滃簾銆佸凡瀹屾垚*/
+    @ApiModelProperty(value = "鐢宠鍗曠姸鎬�;寰呮彁浜ゃ�佸緟鍗曚綅瀹ょ骇棰嗗瀹℃牳銆佺敓浜ц澶囩鐞嗕富绠″鏍搞�佸緟淇濋殰閮ㄩ瀵煎鏍搞�佸凡浣滃簾銆佸凡瀹屾垚")
+	private String applicationStatus;
+	/**浣跨敤鍗曚綅瀹や富绠$瀛�*/
+    @ApiModelProperty(value = "浣跨敤鍗曚綅瀹や富绠$瀛�")
+	private String departHeaderSignature;
+	/**浣跨敤鍗曚綅瀹や富绠$瀛楁椂闂�*/
+    @ApiModelProperty(value = "浣跨敤鍗曚綅瀹や富绠$瀛楁椂闂�")
+	private Date departHeaderSignatureTime;
+	/**浣跨敤鍗曚綅瀹や富绠℃剰瑙�*/
+    @ApiModelProperty(value = "浣跨敤鍗曚綅瀹や富绠℃剰瑙�")
+	private String departHeaderSignatureComment;
+	/**浣跨敤鍗曚綅閮ㄤ富绠$瀛�*/
+    @ApiModelProperty(value = "浣跨敤鍗曚綅閮ㄤ富绠$瀛�")
+	private String departLeaderSignature;
+	/**浣跨敤鍗曚綅閮ㄤ富绠$瀛楁椂闂�*/
+    @ApiModelProperty(value = "浣跨敤鍗曚綅閮ㄤ富绠$瀛楁椂闂�")
+	private Date departLeaderSignatureTime;
+	/**浣跨敤鍗曚綅閮ㄤ富绠$瀛�*/
+    @ApiModelProperty(value = "浣跨敤鍗曚綅閮ㄤ富绠$瀛�")
+	private String departLeaderSignatureComment;
+	/**HF缂栫爜*/
+    @ApiModelProperty(value = "HF缂栫爜")
+	private String hfCode;
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusDeactivateDetail.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusDeactivateDetail.java
new file mode 100644
index 0000000..c63655c
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusDeactivateDetail.java
@@ -0,0 +1,55 @@
+package org.jeecg.modules.eam.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.util.Date;
+
+/**
+ * @Description: 鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Data
+@TableName("eam_technical_status_deactivate_detail")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="eam_technical_status_deactivate_detail瀵硅薄", description="鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�")
+public class EamTechnicalStatusDeactivateDetail {
+    
+	/**涓婚敭*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "涓婚敭")
+	private String id;
+	/**鍒涘缓浜�*/
+    @ApiModelProperty(value = "鍒涘缓浜�")
+	private String createBy;
+	/**鍒涘缓鏃堕棿*/
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+	private Date createTime;
+	/**鏇存柊浜�*/
+    @ApiModelProperty(value = "鏇存柊浜�")
+	private String updateBy;
+	/**鏇存柊鏃堕棿*/
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+	private Date updateTime;
+	/**璁惧ID*/
+    @ApiModelProperty(value = "璁惧ID")
+	private String equipmentId;
+	/**鍋滅敤鍘熷洜*/
+    @ApiModelProperty(value = "鍋滅敤鍘熷洜")
+	private String deactivateReason;
+	/**鍋滅敤鏃堕暱*/
+    @ApiModelProperty(value = "鍋滅敤鏃堕暱")
+	private java.math.BigDecimal deactivateDuration;
+	/**鍋滅敤鏃堕暱鍗曚綅;澶┿�佹湀銆佸勾*/
+    @ApiModelProperty(value = "鍋滅敤鏃堕暱鍗曚綅;澶┿�佹湀銆佸勾")
+	private String deactivateDurationUnit;
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusEvaluationApplication.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusEvaluationApplication.java
new file mode 100644
index 0000000..d0f9f8d
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusEvaluationApplication.java
@@ -0,0 +1,91 @@
+package org.jeecg.modules.eam.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.util.Date;
+
+/**
+ * @Description: 鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Data
+@TableName("eam_technical_status_evaluation_application")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="eam_technical_status_evaluation_application瀵硅薄", description="鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�")
+public class EamTechnicalStatusEvaluationApplication {
+    
+	/**涓婚敭*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "涓婚敭")
+	private String id;
+	/**鍒涘缓浜�*/
+    @ApiModelProperty(value = "鍒涘缓浜�")
+	private String createBy;
+	/**鍒涘缓鏃堕棿*/
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+	private Date createTime;
+	/**鏇存柊浜�*/
+    @ApiModelProperty(value = "鏇存柊浜�")
+	private String updateBy;
+	/**鏇存柊鏃堕棿*/
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+	private Date updateTime;
+	/**鍒犻櫎鏍囪*/
+    @ApiModelProperty(value = "鍒犻櫎鏍囪")
+	private Integer delFlag;
+	/**鐢宠鍗曞彿*/
+    @ApiModelProperty(value = "鐢宠鍗曞彿")
+	private String applicationOrderNum;
+	/**鐢宠浜�*/
+    @ApiModelProperty(value = "鐢宠浜�")
+	private String applicant;
+	/**鐢宠閮ㄩ棬*/
+    @ApiModelProperty(value = "鐢宠閮ㄩ棬")
+	private String factoryOrgCode;
+	/**鐢宠鏃ユ湡*/
+    @ApiModelProperty(value = "鐢宠鏃ユ湡")
+	private Date applyDate;
+	/**鐢宠鍗曠姸鎬�;寰呮彁浜ゃ�佸緟鍗曚綅瀹ょ骇棰嗗瀹℃牳銆佺敓浜ц澶囩鐞嗕富绠″鏍搞�佸緟淇濋殰閮ㄩ瀵煎鏍搞�佸凡浣滃簾銆佸凡瀹屾垚*/
+    @ApiModelProperty(value = "鐢宠鍗曠姸鎬�;寰呮彁浜ゃ�佸緟鍗曚綅瀹ょ骇棰嗗瀹℃牳銆佺敓浜ц澶囩鐞嗕富绠″鏍搞�佸緟淇濋殰閮ㄩ瀵煎鏍搞�佸凡浣滃簾銆佸凡瀹屾垚")
+	private String applicationStatus;
+	/**鐢宠鍗曚綅瀹ょ骇棰嗗绛惧瓧*/
+    @ApiModelProperty(value = "鐢宠鍗曚綅瀹ょ骇棰嗗绛惧瓧")
+	private String departHeaderSignature;
+	/**鐢宠鍗曚綅瀹ょ骇棰嗗绛惧瓧鏃堕棿*/
+    @ApiModelProperty(value = "鐢宠鍗曚綅瀹ょ骇棰嗗绛惧瓧鏃堕棿")
+	private Date departHeaderSignatureTime;
+	/**鐢宠鍗曚綅瀹ょ骇棰嗗鎰忚*/
+    @ApiModelProperty(value = "鐢宠鍗曚綅瀹ょ骇棰嗗鎰忚")
+	private String departHeaderComment;
+	/**鐢熶骇璁惧绠$悊涓荤绛惧瓧*/
+    @ApiModelProperty(value = "鐢熶骇璁惧绠$悊涓荤绛惧瓧")
+	private String productionHeaderSignature;
+	/**鐢熶骇璁惧绠$悊涓荤绛惧瓧鍥涗欢*/
+    @ApiModelProperty(value = "鐢熶骇璁惧绠$悊涓荤绛惧瓧鍥涗欢")
+	private Date productionHeaderSignatureTime;
+	/**鐢熶骇璁惧绠$悊涓荤鎰忚*/
+    @ApiModelProperty(value = "鐢熶骇璁惧绠$悊涓荤鎰忚")
+	private String productionHeaderComment;
+	/**鐢熶骇淇濋殰閮ㄩ瀵肩瀛�*/
+    @ApiModelProperty(value = "鐢熶骇淇濋殰閮ㄩ瀵肩瀛�")
+	private String productionSupportSignature;
+	/**鐢熶骇淇濋殰閮ㄩ瀵肩瀛楁椂闂�*/
+    @ApiModelProperty(value = "鐢熶骇淇濋殰閮ㄩ瀵肩瀛楁椂闂�")
+	private Date productionSupportSignatureTime;
+	/**鐢熶骇淇濋殰閮ㄩ瀵兼剰瑙�*/
+    @ApiModelProperty(value = "鐢熶骇淇濋殰閮ㄩ瀵兼剰瑙�")
+	private String productionSupportComment;
+	/**HF缂栫爜*/
+    @ApiModelProperty(value = "HF缂栫爜")
+	private String hfCode;
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusEvaluationOrder.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusEvaluationOrder.java
new file mode 100644
index 0000000..93424a1
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusEvaluationOrder.java
@@ -0,0 +1,133 @@
+package org.jeecg.modules.eam.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.util.Date;
+
+/**
+ * @Description: 鎶�鏈姸鎬侀壌瀹氬伐鍗�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Data
+@TableName("eam_technical_status_evaluation_order")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="eam_technical_status_evaluation_order瀵硅薄", description="鎶�鏈姸鎬侀壌瀹氬伐鍗�")
+public class EamTechnicalStatusEvaluationOrder {
+    
+	/**涓婚敭*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "涓婚敭")
+	private String id;
+	/**鍒涘缓浜�*/
+    @ApiModelProperty(value = "鍒涘缓浜�")
+	private String createBy;
+	/**鍒涘缓鏃堕棿*/
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+	private Date createTime;
+	/**鏇存柊浜�*/
+    @ApiModelProperty(value = "鏇存柊浜�")
+	private String updateBy;
+	/**鏇存柊鏃堕棿*/
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+	private Date updateTime;
+	/**鍒犻櫎鏍囪*/
+    @ApiModelProperty(value = "鍒犻櫎鏍囪")
+	private Integer delFlag;
+	/**宸ュ崟鍙�*/
+    @ApiModelProperty(value = "宸ュ崟鍙�")
+	private String orderNum;
+	/**璁惧ID*/
+    @ApiModelProperty(value = "璁惧ID")
+	private String equipmentId;
+	/**瑙勮寖ID*/
+    @ApiModelProperty(value = "瑙勮寖ID")
+	private String standardId;
+	/**璁″垝閴村畾鏃ユ湡;鎻愬墠70澶╃敓鎴愬伐鍗�*/
+    @ApiModelProperty(value = "璁″垝閴村畾鏃ユ湡;鎻愬墠70澶╃敓鎴愬伐鍗�")
+	private Date evaluationDate;
+	/**閿佸畾宸ュ崟鏃ユ湡;鎻愬墠55澶╅攣瀹氬伐鍗�*/
+    @ApiModelProperty(value = "閿佸畾宸ュ崟鏃ユ湡;鎻愬墠55澶╅攣瀹氬伐鍗�")
+	private Date freezeOrderDate;
+	/**宸ュ崟杩囨湡鏃ユ湡;鍒版湡鏈仛鐩存帴杩囨湡锛屽苟淇敼璁惧鎶�鏈姸鎬佷负绂佺敤*/
+    @ApiModelProperty(value = "宸ュ崟杩囨湡鏃ユ湡;鍒版湡鏈仛鐩存帴杩囨湡锛屽苟淇敼璁惧鎶�鏈姸鎬佷负绂佺敤")
+	private Date orderExpirationDate;
+	/**瀹為檯寮�濮嬫椂闂�*/
+    @ApiModelProperty(value = "瀹為檯寮�濮嬫椂闂�")
+	private Date actualStartTime;
+	/**瀹為檯缁撴潫鏃堕棿*/
+    @ApiModelProperty(value = "瀹為檯缁撴潫鏃堕棿")
+	private Date actualEndTime;
+	/**閴村畾浜�*/
+    @ApiModelProperty(value = "閴村畾浜�")
+	private String evaluator;
+	/**閴村畾鐘舵��;寰呴壌瀹氥�侀壌瀹氫腑銆佺淮淇涓讳换绛惧瓧銆佸伐鑹轰汉鍛樼瀛椼�佹妧鏈富绠$瀛椼�佽澶囨楠屽憳绛惧瓧銆佸凡瀹屾垚銆佸凡閿佸畾銆佸彉鏇翠腑銆佸凡杩囨湡*/
+    @ApiModelProperty(value = "閴村畾鐘舵��;寰呴壌瀹氥�侀壌瀹氫腑銆佺淮淇涓讳换绛惧瓧銆佸伐鑹轰汉鍛樼瀛椼�佹妧鏈富绠$瀛椼�佽澶囨楠屽憳绛惧瓧銆佸凡瀹屾垚銆佸凡閿佸畾銆佸彉鏇翠腑銆佸凡杩囨湡")
+	private String evaluationStatus;
+	/**鍒涘缓鏂瑰紡*/
+    @ApiModelProperty(value = "鍒涘缓鏂瑰紡")
+	private String creationMethod;
+	/**瀹夊叏瑁呯疆妫�鏌ョ粨鏋�;鏄�佸惁*/
+    @ApiModelProperty(value = "瀹夊叏瑁呯疆妫�鏌ョ粨鏋�;鏄�佸惁")
+	private String safetyEquipmentCheckResult;
+	/**绮惧害鍙傛暟妫�鏌ョ粨鏋�;鏄�佸惁銆佹棤*/
+    @ApiModelProperty(value = "绮惧害鍙傛暟妫�鏌ョ粨鏋�;鏄�佸惁銆佹棤")
+	private String precisionCheckResult;
+	/**鍔熻兘鐘舵�佹鏌ョ粨鏋�;鏄�佸惁*/
+    @ApiModelProperty(value = "鍔熻兘鐘舵�佹鏌ョ粨鏋�;鏄�佸惁")
+	private String functionalCheckResult;
+	/**鍏朵粬妫�鏌ョ粨鏋�;鏄�佸惁銆佹棤*/
+    @ApiModelProperty(value = "鍏朵粬妫�鏌ョ粨鏋�;鏄�佸惁銆佹棤")
+	private String otherCheckResult;
+	/**缁翠慨瀹や富浠荤瀛�*/
+    @ApiModelProperty(value = "缁翠慨瀹や富浠荤瀛�")
+	private String repairManagerSignature;
+	/**缁翠慨瀹や富浠荤瀛楁椂闂�*/
+    @ApiModelProperty(value = "缁翠慨瀹や富浠荤瀛楁椂闂�")
+	private Date repairManagerSignatureTime1;
+	/**璇曚欢妫�鏌ョ粨鏋�;鍚堟牸銆佷笉鍚堟牸*/
+    @ApiModelProperty(value = "璇曚欢妫�鏌ョ粨鏋�;鍚堟牸銆佷笉鍚堟牸")
+	private String sampleCheckResult;
+	/**宸ヨ壓鍛樼瀛�*/
+    @ApiModelProperty(value = "宸ヨ壓鍛樼瀛�")
+	private String processTechnicianSignature;
+	/**宸ヨ壓鍛樼瀛楁椂闂�*/
+    @ApiModelProperty(value = "宸ヨ壓鍛樼瀛楁椂闂�")
+	private Date processTechnicianSignatureTime;
+	/**閴村畾缁撴灉;鍚堟牸銆侀檺鐢ㄣ�佺鐢�*/
+    @ApiModelProperty(value = "閴村畾缁撴灉;鍚堟牸銆侀檺鐢ㄣ�佺鐢�")
+	private String evaluationResult;
+	/**闄怽绂佺敤鍘熷洜(澶氶��);瀹夊叏瑁呯疆銆佽澶囧姛鑳姐�佺簿搴︺�佽瘯浠躲�佸叾浠�*/
+    @ApiModelProperty(value = "闄�/绂佺敤鍘熷洜(澶氶��);瀹夊叏瑁呯疆銆佽澶囧姛鑳姐�佺簿搴︺�佽瘯浠躲�佸叾浠�")
+	private String evaluationReason;
+	/**璁惧妫�鏌ヤ汉绛惧瓧*/
+    @ApiModelProperty(value = "璁惧妫�鏌ヤ汉绛惧瓧")
+	private String inspectorSignature;
+	/**璁惧妫�鏌ヤ汉绛惧瓧鏃堕棿*/
+    @ApiModelProperty(value = "璁惧妫�鏌ヤ汉绛惧瓧鏃堕棿")
+	private Date inspectorSignatureTime;
+	/**闄勫綍A HF缂栫爜*/
+    @ApiModelProperty(value = "闄勫綍A HF缂栫爜")
+	private String hfCodeA;
+	/**闄勫綍B HF缂栫爜*/
+    @ApiModelProperty(value = "闄勫綍B HF缂栫爜")
+	private String hfCodeB;
+	/**闄勫綍C HF缂栫爜*/
+    @ApiModelProperty(value = "闄勫綍C HF缂栫爜")
+	private String hfCodeC;
+	/**闄勫綍D HF缂栫爜*/
+    @ApiModelProperty(value = "闄勫綍D HF缂栫爜")
+	private String hfCodeD;
+	/**澶囨敞*/
+    @ApiModelProperty(value = "澶囨敞")
+	private String remark;
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusEvaluationOrderChange.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusEvaluationOrderChange.java
new file mode 100644
index 0000000..766489c
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusEvaluationOrderChange.java
@@ -0,0 +1,97 @@
+package org.jeecg.modules.eam.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.util.Date;
+
+/**
+ * @Description: 鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Data
+@TableName("eam_technical_status_evaluation_order_change")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="eam_technical_status_evaluation_order_change瀵硅薄", description="鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�")
+public class EamTechnicalStatusEvaluationOrderChange {
+    
+	/**涓婚敭*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "涓婚敭")
+	private String id;
+	/**鍒涘缓浜�*/
+    @ApiModelProperty(value = "鍒涘缓浜�")
+	private String createBy;
+	/**鍒涘缓鏃堕棿*/
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+	private Date createTime;
+	/**鏇存柊浜�*/
+    @ApiModelProperty(value = "鏇存柊浜�")
+	private String updateBy;
+	/**鏇存柊鏃堕棿*/
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+	private Date updateTime;
+	/**鍒犻櫎鏍囪*/
+    @ApiModelProperty(value = "鍒犻櫎鏍囪")
+	private Integer delFlag;
+	/**宸ュ崟ID*/
+    @ApiModelProperty(value = "宸ュ崟ID")
+	private String orderId;
+	/**鍙樻洿鍗曞彿*/
+    @ApiModelProperty(value = "鍙樻洿鍗曞彿")
+	private String changeOrderNum;
+	/**鐢宠浜�*/
+    @ApiModelProperty(value = "鐢宠浜�")
+	private String applicant;
+	/**鐢宠閮ㄩ棬*/
+    @ApiModelProperty(value = "鐢宠閮ㄩ棬")
+	private String factoryOrgCode;
+	/**鐢宠鏃ユ湡*/
+    @ApiModelProperty(value = "鐢宠鏃ユ湡")
+	private Date applyDate;
+	/**鍙樻洿鐘舵��;寰呮彁浜ゃ�佸緟涓荤瀹℃牳銆佸緟閮ㄩ棬纭銆佸緟淇濋殰閮ㄧ‘璁ゃ�佸凡浣滃簾銆佸凡瀹屾垚*/
+    @ApiModelProperty(value = "鍙樻洿鐘舵��;寰呮彁浜ゃ�佸緟涓荤瀹℃牳銆佸緟閮ㄩ棬纭銆佸緟淇濋殰閮ㄧ‘璁ゃ�佸凡浣滃簾銆佸凡瀹屾垚")
+	private String changeStatus;
+	/**鍙樻洿鍘熷洜;鐢熶骇浠诲姟鎬ユ棤娉曞仠鏈恒�佽澶囨晠闅滄澶勪簬缁翠慨鐘舵�併�佽澶囧凡鎶ュ簾銆佽澶囧ぇ淇�佹惉杩併�佹敼閫�*/
+    @ApiModelProperty(value = "鍙樻洿鍘熷洜;鐢熶骇浠诲姟鎬ユ棤娉曞仠鏈恒�佽澶囨晠闅滄澶勪簬缁翠慨鐘舵�併�佽澶囧凡鎶ュ簾銆佽澶囧ぇ淇�佹惉杩併�佹敼閫�")
+	private String applyReason;
+	/**鍙樻洿閴村畾鏃ユ湡*/
+    @ApiModelProperty(value = "鍙樻洿閴村畾鏃ユ湡")
+	private Date deferredMaintenanceDate;
+	/**涓荤棰嗗绛惧瓧*/
+    @ApiModelProperty(value = "涓荤棰嗗绛惧瓧")
+	private String equipmentManagerSignature;
+	/**涓荤棰嗗绛惧瓧鏃堕棿*/
+    @ApiModelProperty(value = "涓荤棰嗗绛惧瓧鏃堕棿")
+	private Date equipmentManagerSignatureTime;
+	/**閮ㄩ棬棰嗗绛惧瓧;鏍规嵁鍙樻洿鍘熷洜绫诲瀷鍖哄垎涓嶅悓鐨勪汉瀹℃壒*/
+    @ApiModelProperty(value = "閮ㄩ棬棰嗗绛惧瓧;鏍规嵁鍙樻洿鍘熷洜绫诲瀷鍖哄垎涓嶅悓鐨勪汉瀹℃壒")
+	private String departManagerSignature;
+	/**閮ㄩ棬棰嗗绛惧瓧鏃堕棿*/
+    @ApiModelProperty(value = "閮ㄩ棬棰嗗绛惧瓧鏃堕棿")
+	private Date departManagerSignatureTime;
+	/**閮ㄩ棬棰嗗鎰忚*/
+    @ApiModelProperty(value = "閮ㄩ棬棰嗗鎰忚")
+	private String departManagerComment;
+	/**鐢熶骇淇濋殰閮ㄩ瀵肩瀛�*/
+    @ApiModelProperty(value = "鐢熶骇淇濋殰閮ㄩ瀵肩瀛�")
+	private String productionSupportSignature;
+	/**鐢熶骇淇濋殰閮ㄩ瀵肩瀛楁椂闂�*/
+    @ApiModelProperty(value = "鐢熶骇淇濋殰閮ㄩ瀵肩瀛楁椂闂�")
+	private Date productionSupportSignatureTime;
+	/**鐢熶骇淇濋殰閮ㄩ瀵兼剰瑙�*/
+    @ApiModelProperty(value = "鐢熶骇淇濋殰閮ㄩ瀵兼剰瑙�")
+	private String productionSupportComment;
+	/**HF缂栫爜*/
+    @ApiModelProperty(value = "HF缂栫爜")
+	private String hfCode;
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusEvaluationOrderDetail.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusEvaluationOrderDetail.java
new file mode 100644
index 0000000..3d27910
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamTechnicalStatusEvaluationOrderDetail.java
@@ -0,0 +1,73 @@
+package org.jeecg.modules.eam.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.util.Date;
+
+/**
+ * @Description: 鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Data
+@TableName("eam_technical_status_evaluation_order_detail")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="eam_technical_status_evaluation_order_detail瀵硅薄", description="鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�")
+public class EamTechnicalStatusEvaluationOrderDetail {
+    
+	/**涓婚敭*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "涓婚敭")
+	private String id;
+	/**鍒涘缓浜�*/
+    @ApiModelProperty(value = "鍒涘缓浜�")
+	private String createBy;
+	/**鍒涘缓鏃堕棿*/
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+	private Date createTime;
+	/**鏇存柊浜�*/
+    @ApiModelProperty(value = "鏇存柊浜�")
+	private String updateBy;
+	/**鏇存柊鏃堕棿*/
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+	private Date updateTime;
+	/**搴忓彿*/
+    @ApiModelProperty(value = "搴忓彿")
+	private Integer itemCode;
+	/**妫�鏌ュ垎绫�;绮惧害妫�鏌ャ�佸畨鍏ㄨ缃鏌ャ�佸叾浠栨鏌�*/
+    @ApiModelProperty(value = "妫�鏌ュ垎绫�;绮惧害妫�鏌ャ�佸畨鍏ㄨ缃鏌ャ�佸叾浠栨鏌�")
+	private String checkCategory;
+	/**妫�鏌ラ」鐩�*/
+    @ApiModelProperty(value = "妫�鏌ラ」鐩�")
+	private String itemName;
+	/**鍏佸樊鍊�;绮惧害妫�鏌ュ睍绀�*/
+    @ApiModelProperty(value = "鍏佸樊鍊�;绮惧害妫�鏌ュ睍绀�")
+	private String toleranceValue;
+	/**妫�鏌ュ瓙椤圭洰;绮惧害妫�鏌ュ睍绀猴紝鍙互涓虹┖*/
+    @ApiModelProperty(value = "妫�鏌ュ瓙椤圭洰;绮惧害妫�鏌ュ睍绀猴紝鍙互涓虹┖")
+	private String subItemName;
+	/**瀹夊叏瑁呯疆妫�鏌ョ粨鏋�;鏄�佸惁銆佹棤*/
+    @ApiModelProperty(value = "瀹夊叏瑁呯疆妫�鏌ョ粨鏋�;鏄�佸惁銆佹棤")
+	private String safetyEquipmentCheckResult;
+	/**鍏朵粬妫�鏌ョ粨鏋�*/
+    @ApiModelProperty(value = "鍏朵粬妫�鏌ョ粨鏋�")
+	private String otherCheckResult;
+	/**绮惧害妫�楠岀粨鏋�*/
+    @ApiModelProperty(value = "绮惧害妫�楠岀粨鏋�")
+	private java.math.BigDecimal precisionCheckResult;
+	/**缁翠慨浜�/绮惧害妫�鏌ヨ�呯瀛�*/
+    @ApiModelProperty(value = "缁翠慨浜�/绮惧害妫�鏌ヨ�呯瀛�")
+	private String repairmanSignature;
+	/**缁翠慨浜�/绮惧害妫�鏌ヨ�呯瀛楁椂闂�*/
+    @ApiModelProperty(value = "缁翠慨浜�/绮惧害妫�鏌ヨ�呯瀛楁椂闂�")
+	private Date repairmanSignatureTime;
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusChangeDetailMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusChangeDetailMapper.java
new file mode 100644
index 0000000..228c4c5
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusChangeDetailMapper.java
@@ -0,0 +1,17 @@
+package org.jeecg.modules.eam.mapper;
+
+import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.eam.entity.EamTechnicalStatusChangeDetail;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * @Description: 鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+public interface EamTechnicalStatusChangeDetailMapper extends BaseMapper<EamTechnicalStatusChangeDetail> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusChangeMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusChangeMapper.java
new file mode 100644
index 0000000..d54ff02
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusChangeMapper.java
@@ -0,0 +1,17 @@
+package org.jeecg.modules.eam.mapper;
+
+import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.eam.entity.EamTechnicalStatusChange;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * @Description: 鎶�鏈姸鎬佸彉鏇寸敵璇�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+public interface EamTechnicalStatusChangeMapper extends BaseMapper<EamTechnicalStatusChange> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusDeactivateDetailMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusDeactivateDetailMapper.java
new file mode 100644
index 0000000..8086042
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusDeactivateDetailMapper.java
@@ -0,0 +1,17 @@
+package org.jeecg.modules.eam.mapper;
+
+import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.eam.entity.EamTechnicalStatusDeactivateDetail;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * @Description: 鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+public interface EamTechnicalStatusDeactivateDetailMapper extends BaseMapper<EamTechnicalStatusDeactivateDetail> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusDeactivateMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusDeactivateMapper.java
new file mode 100644
index 0000000..fb7583e
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusDeactivateMapper.java
@@ -0,0 +1,17 @@
+package org.jeecg.modules.eam.mapper;
+
+import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.eam.entity.EamTechnicalStatusDeactivate;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * @Description: 鍋滅敤鍔犲伐璁惧鐢宠鍗�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+public interface EamTechnicalStatusDeactivateMapper extends BaseMapper<EamTechnicalStatusDeactivate> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusEvaluationApplicationMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusEvaluationApplicationMapper.java
new file mode 100644
index 0000000..609faa6
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusEvaluationApplicationMapper.java
@@ -0,0 +1,17 @@
+package org.jeecg.modules.eam.mapper;
+
+import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationApplication;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * @Description: 鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+public interface EamTechnicalStatusEvaluationApplicationMapper extends BaseMapper<EamTechnicalStatusEvaluationApplication> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusEvaluationOrderChangeMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusEvaluationOrderChangeMapper.java
new file mode 100644
index 0000000..bb6b255
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusEvaluationOrderChangeMapper.java
@@ -0,0 +1,17 @@
+package org.jeecg.modules.eam.mapper;
+
+import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationOrderChange;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * @Description: 鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+public interface EamTechnicalStatusEvaluationOrderChangeMapper extends BaseMapper<EamTechnicalStatusEvaluationOrderChange> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusEvaluationOrderDetailMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusEvaluationOrderDetailMapper.java
new file mode 100644
index 0000000..6e265a6
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusEvaluationOrderDetailMapper.java
@@ -0,0 +1,17 @@
+package org.jeecg.modules.eam.mapper;
+
+import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationOrderDetail;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * @Description: 鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+public interface EamTechnicalStatusEvaluationOrderDetailMapper extends BaseMapper<EamTechnicalStatusEvaluationOrderDetail> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusEvaluationOrderMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusEvaluationOrderMapper.java
new file mode 100644
index 0000000..ac044df
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamTechnicalStatusEvaluationOrderMapper.java
@@ -0,0 +1,17 @@
+package org.jeecg.modules.eam.mapper;
+
+import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationOrder;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * @Description: 鎶�鏈姸鎬侀壌瀹氬伐鍗�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+public interface EamTechnicalStatusEvaluationOrderMapper extends BaseMapper<EamTechnicalStatusEvaluationOrder> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusChangeDetailMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusChangeDetailMapper.xml
new file mode 100644
index 0000000..cfb2dd3
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusChangeDetailMapper.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.eam.mapper.EamTechnicalStatusChangeDetailMapper">
+
+</mapper>
\ No newline at end of file
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusChangeMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusChangeMapper.xml
new file mode 100644
index 0000000..afba5d8
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusChangeMapper.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.eam.mapper.EamTechnicalStatusChangeMapper">
+
+</mapper>
\ No newline at end of file
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusDeactivateDetailMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusDeactivateDetailMapper.xml
new file mode 100644
index 0000000..730966a
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusDeactivateDetailMapper.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.eam.mapper.EamTechnicalStatusDeactivateDetailMapper">
+
+</mapper>
\ No newline at end of file
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusDeactivateMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusDeactivateMapper.xml
new file mode 100644
index 0000000..e743456
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusDeactivateMapper.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.eam.mapper.EamTechnicalStatusDeactivateMapper">
+
+</mapper>
\ No newline at end of file
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusEvaluationApplicationMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusEvaluationApplicationMapper.xml
new file mode 100644
index 0000000..f5516bf
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusEvaluationApplicationMapper.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.eam.mapper.EamTechnicalStatusEvaluationApplicationMapper">
+
+</mapper>
\ No newline at end of file
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusEvaluationOrderChangeMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusEvaluationOrderChangeMapper.xml
new file mode 100644
index 0000000..ff407ce
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusEvaluationOrderChangeMapper.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.eam.mapper.EamTechnicalStatusEvaluationOrderChangeMapper">
+
+</mapper>
\ No newline at end of file
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusEvaluationOrderDetailMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusEvaluationOrderDetailMapper.xml
new file mode 100644
index 0000000..65f6438
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusEvaluationOrderDetailMapper.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.eam.mapper.EamTechnicalStatusEvaluationOrderDetailMapper">
+
+</mapper>
\ No newline at end of file
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusEvaluationOrderMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusEvaluationOrderMapper.xml
new file mode 100644
index 0000000..a472323
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamTechnicalStatusEvaluationOrderMapper.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.eam.mapper.EamTechnicalStatusEvaluationOrderMapper">
+
+</mapper>
\ No newline at end of file
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamMaintenanceStandardService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamMaintenanceStandardService.java
index ce8b3fb..bcb724b 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamMaintenanceStandardService.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamMaintenanceStandardService.java
@@ -87,7 +87,7 @@
     /**
      * 鐐规琛ㄥ鍏ュ叆鍙�
      */
-    public Result<?> importPointInspectionExcel(MultipartFile file);
+    Result<?> importPointInspectionExcel(MultipartFile file);
 
 
     Result<?> importMaintenanceStandard(MultipartFile file, String type);
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusChangeDetailService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusChangeDetailService.java
new file mode 100644
index 0000000..11a5a07
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusChangeDetailService.java
@@ -0,0 +1,14 @@
+package org.jeecg.modules.eam.service;
+
+import org.jeecg.modules.eam.entity.EamTechnicalStatusChangeDetail;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * @Description: 鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+public interface IEamTechnicalStatusChangeDetailService extends IService<EamTechnicalStatusChangeDetail> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusChangeService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusChangeService.java
new file mode 100644
index 0000000..4799006
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusChangeService.java
@@ -0,0 +1,14 @@
+package org.jeecg.modules.eam.service;
+
+import org.jeecg.modules.eam.entity.EamTechnicalStatusChange;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * @Description: 鎶�鏈姸鎬佸彉鏇寸敵璇�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+public interface IEamTechnicalStatusChangeService extends IService<EamTechnicalStatusChange> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusDeactivateDetailService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusDeactivateDetailService.java
new file mode 100644
index 0000000..a55357e
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusDeactivateDetailService.java
@@ -0,0 +1,14 @@
+package org.jeecg.modules.eam.service;
+
+import org.jeecg.modules.eam.entity.EamTechnicalStatusDeactivateDetail;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * @Description: 鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+public interface IEamTechnicalStatusDeactivateDetailService extends IService<EamTechnicalStatusDeactivateDetail> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusDeactivateService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusDeactivateService.java
new file mode 100644
index 0000000..ef420bd
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusDeactivateService.java
@@ -0,0 +1,14 @@
+package org.jeecg.modules.eam.service;
+
+import org.jeecg.modules.eam.entity.EamTechnicalStatusDeactivate;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * @Description: 鍋滅敤鍔犲伐璁惧鐢宠鍗�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+public interface IEamTechnicalStatusDeactivateService extends IService<EamTechnicalStatusDeactivate> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusEvaluationApplicationService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusEvaluationApplicationService.java
new file mode 100644
index 0000000..eafcee6
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusEvaluationApplicationService.java
@@ -0,0 +1,14 @@
+package org.jeecg.modules.eam.service;
+
+import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationApplication;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * @Description: 鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+public interface IEamTechnicalStatusEvaluationApplicationService extends IService<EamTechnicalStatusEvaluationApplication> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusEvaluationOrderChangeService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusEvaluationOrderChangeService.java
new file mode 100644
index 0000000..203fa1c
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusEvaluationOrderChangeService.java
@@ -0,0 +1,14 @@
+package org.jeecg.modules.eam.service;
+
+import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationOrderChange;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * @Description: 鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+public interface IEamTechnicalStatusEvaluationOrderChangeService extends IService<EamTechnicalStatusEvaluationOrderChange> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusEvaluationOrderDetailService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusEvaluationOrderDetailService.java
new file mode 100644
index 0000000..21cc765
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusEvaluationOrderDetailService.java
@@ -0,0 +1,14 @@
+package org.jeecg.modules.eam.service;
+
+import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationOrderDetail;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * @Description: 鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+public interface IEamTechnicalStatusEvaluationOrderDetailService extends IService<EamTechnicalStatusEvaluationOrderDetail> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusEvaluationOrderService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusEvaluationOrderService.java
new file mode 100644
index 0000000..a0bb6c4
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamTechnicalStatusEvaluationOrderService.java
@@ -0,0 +1,14 @@
+package org.jeecg.modules.eam.service;
+
+import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationOrder;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * @Description: 鎶�鏈姸鎬侀壌瀹氬伐鍗�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+public interface IEamTechnicalStatusEvaluationOrderService extends IService<EamTechnicalStatusEvaluationOrder> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java
index ab2dd0c..56d59d2 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java
@@ -762,6 +762,7 @@
             // 鍒涘缓椤圭洰璇︽儏
             EamMaintenanceStandardDetail detail = new EamMaintenanceStandardDetail();
             detail.setStandardId(standard.getId());
+            detail.setItemCode(Integer.parseInt(getCellStringValue(row.getCell(0))));
             detail.setItemName(getCellStringValue(row.getCell(1)));
             detail.setItemCategory(itemCategory);
 
@@ -1044,15 +1045,17 @@
             if (!items.isEmpty()) {
                 items.remove(0);
             }
-
             // 2. 涓虹己澶遍儴浣嶇殑鏁版嵁濉厖鍓嶄竴鏉$殑淇濆吇閮ㄤ綅
             String lastPart = "";
+            int i =1;
             for (EamMaintenanceStandardDetail item : items) {
+                item.setItemCode(i);
                 if (item.getItemPart() != null && !item.getItemPart().isEmpty()) {
                     lastPart = item.getItemPart();
                 } else if (!lastPart.isEmpty()) {
                     item.setItemPart(lastPart);
                 }
+                i++;
             }
         }
     }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusChangeDetailServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusChangeDetailServiceImpl.java
new file mode 100644
index 0000000..11ebd24
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusChangeDetailServiceImpl.java
@@ -0,0 +1,19 @@
+package org.jeecg.modules.eam.service.impl;
+
+import org.jeecg.modules.eam.entity.EamTechnicalStatusChangeDetail;
+import org.jeecg.modules.eam.mapper.EamTechnicalStatusChangeDetailMapper;
+import org.jeecg.modules.eam.service.IEamTechnicalStatusChangeDetailService;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+/**
+ * @Description: 鎶�鏈姸鎬佸彉鏇寸敵璇锋槑缁�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Service
+public class EamTechnicalStatusChangeDetailServiceImpl extends ServiceImpl<EamTechnicalStatusChangeDetailMapper, EamTechnicalStatusChangeDetail> implements IEamTechnicalStatusChangeDetailService {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusChangeServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusChangeServiceImpl.java
new file mode 100644
index 0000000..6738de7
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusChangeServiceImpl.java
@@ -0,0 +1,19 @@
+package org.jeecg.modules.eam.service.impl;
+
+import org.jeecg.modules.eam.entity.EamTechnicalStatusChange;
+import org.jeecg.modules.eam.mapper.EamTechnicalStatusChangeMapper;
+import org.jeecg.modules.eam.service.IEamTechnicalStatusChangeService;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+/**
+ * @Description: 鎶�鏈姸鎬佸彉鏇寸敵璇�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Service
+public class EamTechnicalStatusChangeServiceImpl extends ServiceImpl<EamTechnicalStatusChangeMapper, EamTechnicalStatusChange> implements IEamTechnicalStatusChangeService {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusDeactivateDetailServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusDeactivateDetailServiceImpl.java
new file mode 100644
index 0000000..dcac698
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusDeactivateDetailServiceImpl.java
@@ -0,0 +1,19 @@
+package org.jeecg.modules.eam.service.impl;
+
+import org.jeecg.modules.eam.entity.EamTechnicalStatusDeactivateDetail;
+import org.jeecg.modules.eam.mapper.EamTechnicalStatusDeactivateDetailMapper;
+import org.jeecg.modules.eam.service.IEamTechnicalStatusDeactivateDetailService;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+/**
+ * @Description: 鍋滅敤鍔犲伐璁惧鐢宠鍗曟槑缁�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Service
+public class EamTechnicalStatusDeactivateDetailServiceImpl extends ServiceImpl<EamTechnicalStatusDeactivateDetailMapper, EamTechnicalStatusDeactivateDetail> implements IEamTechnicalStatusDeactivateDetailService {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusDeactivateServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusDeactivateServiceImpl.java
new file mode 100644
index 0000000..0aabdba
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusDeactivateServiceImpl.java
@@ -0,0 +1,19 @@
+package org.jeecg.modules.eam.service.impl;
+
+import org.jeecg.modules.eam.entity.EamTechnicalStatusDeactivate;
+import org.jeecg.modules.eam.mapper.EamTechnicalStatusDeactivateMapper;
+import org.jeecg.modules.eam.service.IEamTechnicalStatusDeactivateService;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+/**
+ * @Description: 鍋滅敤鍔犲伐璁惧鐢宠鍗�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Service
+public class EamTechnicalStatusDeactivateServiceImpl extends ServiceImpl<EamTechnicalStatusDeactivateMapper, EamTechnicalStatusDeactivate> implements IEamTechnicalStatusDeactivateService {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationApplicationServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationApplicationServiceImpl.java
new file mode 100644
index 0000000..a33d873
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationApplicationServiceImpl.java
@@ -0,0 +1,19 @@
+package org.jeecg.modules.eam.service.impl;
+
+import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationApplication;
+import org.jeecg.modules.eam.mapper.EamTechnicalStatusEvaluationApplicationMapper;
+import org.jeecg.modules.eam.service.IEamTechnicalStatusEvaluationApplicationService;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+/**
+ * @Description: 鍔犲伐璁惧鎶�鏈壌瀹氱敵璇�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Service
+public class EamTechnicalStatusEvaluationApplicationServiceImpl extends ServiceImpl<EamTechnicalStatusEvaluationApplicationMapper, EamTechnicalStatusEvaluationApplication> implements IEamTechnicalStatusEvaluationApplicationService {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationOrderChangeServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationOrderChangeServiceImpl.java
new file mode 100644
index 0000000..774fecb
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationOrderChangeServiceImpl.java
@@ -0,0 +1,19 @@
+package org.jeecg.modules.eam.service.impl;
+
+import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationOrderChange;
+import org.jeecg.modules.eam.mapper.EamTechnicalStatusEvaluationOrderChangeMapper;
+import org.jeecg.modules.eam.service.IEamTechnicalStatusEvaluationOrderChangeService;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+/**
+ * @Description: 鎶�鏈姸鎬侀壌瀹氬伐鍗曞彉鏇�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Service
+public class EamTechnicalStatusEvaluationOrderChangeServiceImpl extends ServiceImpl<EamTechnicalStatusEvaluationOrderChangeMapper, EamTechnicalStatusEvaluationOrderChange> implements IEamTechnicalStatusEvaluationOrderChangeService {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationOrderDetailServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationOrderDetailServiceImpl.java
new file mode 100644
index 0000000..01e52fc
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationOrderDetailServiceImpl.java
@@ -0,0 +1,19 @@
+package org.jeecg.modules.eam.service.impl;
+
+import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationOrderDetail;
+import org.jeecg.modules.eam.mapper.EamTechnicalStatusEvaluationOrderDetailMapper;
+import org.jeecg.modules.eam.service.IEamTechnicalStatusEvaluationOrderDetailService;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+/**
+ * @Description: 鎶�鏈姸鎬侀壌瀹氬伐鍗曟槑缁�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Service
+public class EamTechnicalStatusEvaluationOrderDetailServiceImpl extends ServiceImpl<EamTechnicalStatusEvaluationOrderDetailMapper, EamTechnicalStatusEvaluationOrderDetail> implements IEamTechnicalStatusEvaluationOrderDetailService {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationOrderServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationOrderServiceImpl.java
new file mode 100644
index 0000000..59d55ff
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationOrderServiceImpl.java
@@ -0,0 +1,19 @@
+package org.jeecg.modules.eam.service.impl;
+
+import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationOrder;
+import org.jeecg.modules.eam.mapper.EamTechnicalStatusEvaluationOrderMapper;
+import org.jeecg.modules.eam.service.IEamTechnicalStatusEvaluationOrderService;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+/**
+ * @Description: 鎶�鏈姸鎬侀壌瀹氬伐鍗�
+ * @Author: jeecg-boot
+ * @Date:   2025-07-09
+ * @Version: V1.0
+ */
+@Service
+public class EamTechnicalStatusEvaluationOrderServiceImpl extends ServiceImpl<EamTechnicalStatusEvaluationOrderMapper, EamTechnicalStatusEvaluationOrder> implements IEamTechnicalStatusEvaluationOrderService {
+
+}
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/IEamBaseRepairDepartService.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/IEamBaseRepairDepartService.java
index 7d43f89..edbd45d 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/IEamBaseRepairDepartService.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/IEamBaseRepairDepartService.java
@@ -63,6 +63,12 @@
      * 鏍规嵁鐢ㄦ埛id鑾峰彇浜х嚎涓嬫媺鏍戦�夐」
      */
     List<RepairDepartIdModel> loadMaintainDepartTreeOptions(String userId);
+
+
+    /**
+     * 鏍规嵁鍏抽敭瀛楄幏鍙栦腑蹇冩暟鎹�
+     */
+    EamBaseRepairDepart searchCenterByKeyWord(String keyWord);
 //
 //    /**
 //     * 閫掑綊鏌ヨ鎵�鏈夊瓙鑺傜偣
@@ -89,5 +95,5 @@
 //     * @return
 //     */
 //    EamBaseRepairDepart findMaintainDepartList(String equipmentId);
-    
+
 }
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/BaseFactoryServiceImpl.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/BaseFactoryServiceImpl.java
index 084bb65..d1faf69 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/BaseFactoryServiceImpl.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/BaseFactoryServiceImpl.java
@@ -5,6 +5,7 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.apache.commons.lang3.StringUtils;
 import org.jeecg.common.constant.CommonConstant;
 import org.jeecg.common.constant.FillRuleConstant;
@@ -110,7 +111,7 @@
         if (keyWord.contains("/")) {
             return searchByHierarchy(keyWord);
         } else {
-            return searchByCode(keyWord);
+            return searchByCodeOrName(keyWord);
         }
     }
 
@@ -118,27 +119,85 @@
         String[] levels = path.split("/");
         int depth = levels.length;
 
-        // 妫�鏌ュ眰绾ф繁搴�
+        // 鏀寔澶氱鏍煎紡锛氫腑蹇�/宸ュ尯銆佷腑蹇�/宸ユ銆佷腑蹇�/宸ュ尯/宸ユ
         if (depth < 2 || depth > 3) {
-            return null; // 鏃犳晥鐨勫眰绾ф繁搴�
+            return null;
         }
 
-        // 鏌ヨ绗竴绾т腑蹇�
-        BaseFactory center = findFactory(levels[0], 1, null);
-        if (center == null) return null;
+        // 浠庡簳灞傚紑濮嬫煡璇細鏈�鍚庝竴绾у彲鑳芥槸宸ュ尯鎴栧伐娈�
+        String lastName = levels[depth - 1];
+        BaseFactory lastLevel = searchForLastLevel(lastName);
+        if (lastLevel == null) return null;
 
-        // 鏌ヨ绗簩绾у伐鍖�
-        BaseFactory workArea = findFactory(levels[1], null, center.getId());
-        if (workArea == null || depth == 2) return workArea;
-
-        // 鏌ヨ绗笁绾у伐娈�
-        return findFactory(levels[2], null, workArea.getId());
+        return validatePath(levels, lastLevel);
     }
 
-    private BaseFactory searchByCode(String code) {
+    private BaseFactory validatePath(String[] levels, BaseFactory lastLevel) {
+        if (levels.length == 2) {
+            // 涓績/宸ュ尯 鎴� 涓績/宸ユ
+            BaseFactory center = findParentCenter(lastLevel);
+            if (center != null &&
+                    center.getFactoryName().equals(levels[0]) &&
+                    ("1").equals(center.getFactoryCategory())) {
+                return lastLevel;
+            }
+        } else {
+            // 涓績/宸ュ尯/宸ユ
+            if (!("3").equals(lastLevel.getFactoryCategory())) return null;
+
+            BaseFactory workArea = getById(lastLevel.getParentId());
+            if (workArea == null ||
+                    !("2").equals(workArea.getFactoryCategory())) return null;
+
+            BaseFactory center = getById(workArea.getParentId());
+            if (center == null ||
+                    !("1").equals(center.getFactoryCategory())) return null;
+
+            if (workArea.getFactoryName().equals(levels[1]) &&
+                    center.getFactoryName().equals(levels[0])) {
+                return lastLevel;
+            }
+        }
+        return null;
+    }
+
+    private BaseFactory searchForLastLevel(String name) {
+        // 鍏堝皾璇曟煡璇㈠伐娈碉紙绫诲埆3锛�
+        BaseFactory workshop = findFactory(name, 3, null);
+        if (workshop != null) return workshop;
+
+        // 濡傛灉娌℃湁鎵惧埌宸ユ锛屽皾璇曟煡璇㈠伐鍖猴紙绫诲埆2锛�
+        return findFactory(name, 2, null);
+    }
+
+    private BaseFactory findParentCenter(BaseFactory entity) {
+        if (("1").equals(entity.getFactoryCategory())) {
+            return entity; // 鏈韩灏辨槸涓績
+        }
+
+        BaseFactory parent = getById(entity.getParentId());
+        if (parent == null) return null;
+
+        if (("1").equals(parent.getFactoryCategory())) {
+            return parent; // 鐩存帴鐖剁骇鏄腑蹇�
+        }
+
+        // 濡傛灉鐖剁骇涓嶆槸涓績锛屽皾璇曟壘鐖剁骇鐨勭埗绾�
+        return getById(parent.getParentId());
+    }
+
+    private BaseFactory searchByCodeOrName(String keyword) {
+        // 浣跨敤鍒嗛〉鏂瑰紡鍏煎SQL Server
         LambdaQueryWrapper<BaseFactory> query = new LambdaQueryWrapper<>();
-        query.like(BaseFactory::getFactoryCode, code);
-        return this.baseMapper.selectOne(query); // 浣跨敤selectOne閬垮厤澶氫釜缁撴灉
+        query.and(q -> q.eq(BaseFactory::getFactoryName, keyword)
+                .or()
+                .like(BaseFactory::getFactoryCode, keyword));
+
+        // 浣跨敤鍒嗛〉鏌ヨ鑾峰彇绗竴鏉¤褰�
+        Page<BaseFactory> page = new Page<>(1, 1);
+        Page<BaseFactory> resultPage = baseMapper.selectPage(page, query);
+
+        return resultPage.getRecords().isEmpty() ? null : resultPage.getRecords().get(0);
     }
 
     private BaseFactory findFactory(String name, Integer category, String parentId) {
@@ -148,7 +207,16 @@
         if (category != null) query.eq(BaseFactory::getFactoryCategory, category);
         if (parentId != null) query.eq(BaseFactory::getParentId, parentId);
 
-        return this.baseMapper.selectOne(query);
+        // 浣跨敤鍒嗛〉鏂瑰紡鍏煎SQL Server
+        Page<BaseFactory> page = new Page<>(1, 1);
+        Page<BaseFactory> resultPage = baseMapper.selectPage(page, query);
+
+        return resultPage.getRecords().isEmpty() ? null : resultPage.getRecords().get(0);
+    }
+
+    private BaseFactory getById(String id) {
+        if (StringUtils.isBlank(id)) return null;
+        return baseMapper.selectById(id);
     }
 
     /**
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/EamBaseRepairDepartImpl.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/EamBaseRepairDepartImpl.java
index 6f2db32..0034b41 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/EamBaseRepairDepartImpl.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/EamBaseRepairDepartImpl.java
@@ -309,4 +309,28 @@
         }
     }
 
+    /**
+     * 鏍规嵁鍏抽敭瀛楄幏鍙栦腑蹇冩暟鎹�
+     */
+    @Override
+    public EamBaseRepairDepart searchCenterByKeyWord(String keyWord) {
+        if (StringUtils.isBlank(keyWord)) {
+            return null;
+        }
+        // 鍏堟寜鍚嶇О鏌ヨ
+        LambdaQueryWrapper<EamBaseRepairDepart> query = new LambdaQueryWrapper<>();
+        query.eq(EamBaseRepairDepart::getDelFlag, CommonConstant.DEL_FLAG_0.toString());
+        query.eq(EamBaseRepairDepart::getDepartName, keyWord);
+        EamBaseRepairDepart result = this.baseMapper.selectOne(query);
+        if (result != null) {
+            return result;
+        }
+
+        // 鍐嶆寜缂栫爜鏌ヨ
+        query = new LambdaQueryWrapper<>();
+        query.eq(EamBaseRepairDepart::getDelFlag, CommonConstant.DEL_FLAG_0.toString());
+        query.eq(EamBaseRepairDepart::getDepartCode, keyWord);
+        return this.baseMapper.selectOne(query);
+    }
+
 }

--
Gitblit v1.9.3