From f1b7de2d0bf989ff38b0bd2c52d4bb8b753af42c Mon Sep 17 00:00:00 2001
From: lyh <925863403@qq.com>
Date: 星期四, 24 七月 2025 18:13:59 +0800
Subject: [PATCH] 设备维修

---
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamRepairOrder.java                              |    5 
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/mapper/xml/EamReportAccidentsRegisterMapper.xml         |    5 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamReportProductHazardsController.java              |    2 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamRepairOrderController.java                       |    4 
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamReportAccidentsRegisterServiceImpl.java |  402 +++++++++++++++++++++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java            |   48 +-
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamReportAccidentsRegisterController.java           |   43 ++
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/BusinessCodeConst.java                         |   11 
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/dto/EamReportAccidentsRegisterDto.java                  |  290 ++++++++++------
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamReportAccidentsRegisterQuery.java            |   16 
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamRepairOrderServiceImpl.java             |   38 +
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamRepairPerson.java                             |    6 
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamReportAccidentsRegister.java                  |   92 ++++
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/IEamReportAccidentsRegisterService.java         |    6 
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/EamReportAccidentsRegisterEnum.java            |   36 ++
 15 files changed, 823 insertions(+), 181 deletions(-)

diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/BusinessCodeConst.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/BusinessCodeConst.java
index a2a8393..08ac2ba 100644
--- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/BusinessCodeConst.java
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/BusinessCodeConst.java
@@ -104,7 +104,16 @@
     String PCR0017 = "PCR0017";
     //浣跨敤鍗曚綅涓荤閮ㄧ骇棰嗗
     String PCR0018 = "PCR0018";
-
+    //鎿嶄綔宸ュ尯闀�
+    String PCR0019 = "PCR0019";
+    //涓績涓讳换
+    String PCR0020 = "PCR0020";
+    //鎶�鏈礋璐d汉
+    String PCR0021 = "PCR0021";
+    //鎶�鏈富绠″绾ч瀵�
+    String PCR0022 = "PCR0022";
+    //涓荤閮ㄧ骇棰嗗
+    String PCR0023 = "PCR0023";
     //閫氳繃銆侀┏鍥�
     String APPROVED = "1";
     String REJECTED = "2";
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/EamReportAccidentsRegisterEnum.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/EamReportAccidentsRegisterEnum.java
new file mode 100644
index 0000000..52a1e32
--- /dev/null
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/EamReportAccidentsRegisterEnum.java
@@ -0,0 +1,36 @@
+package org.jeecg.modules.eam.constant;
+
+public enum EamReportAccidentsRegisterEnum {
+    //寰呮彁浜�
+    PENDING_SUBMIT,
+    //寰呭尯闀垮鐞�
+    PENDING_REGIONAL_MANAGER,
+    //寰呬腑蹇冧富浠诲鐞�
+    PENDING_CENTER_MANAGER,
+    //寰呯淮淇伐澶勭悊
+    PENDING_REPAIR_WORKER,
+    //寰呯淮淇粍闀垮鐞�
+    PENDING_REPAIR_TEAM_LEADER,
+    //寰呯淮淇尯闀垮鐞�
+    PENDING_REPAIR_REGIONAL_MANAGER,
+    //寰呮妧鏈礋璐d汉澶勭悊
+    PENDING_TECHNICAL_RESPONSIBLE,
+    //寰呮妧鏈富绠″绾ч瀵煎鐞�
+    PENDING_TECHNICAL_SUPERVISOR,
+    //寰呬富绠¢儴绾ч瀵煎鐞�
+    PENDING_SUPERIOR_DEPARTMENT,
+    //宸插畬鎴�
+    REPAIR_COMPLETED,
+    //宸查┏鍥�
+    REJECTED;
+
+    public static EamReportAccidentsRegisterEnum getInstance(String code) {
+        EamReportAccidentsRegisterEnum[] values = EamReportAccidentsRegisterEnum.values();
+        for (EamReportAccidentsRegisterEnum value : values) {
+            if (value.name().equals(code)) {
+                return value;
+            }
+        }
+        return null;
+    }
+}
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/dto/EamReportAccidentsRegisterDto.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/dto/EamReportAccidentsRegisterDto.java
index 6c37b44..10fb8df 100644
--- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/dto/EamReportAccidentsRegisterDto.java
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/dto/EamReportAccidentsRegisterDto.java
@@ -8,6 +8,7 @@
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
 import org.jeecg.common.aspect.annotation.Dict;
+import org.jeecg.modules.flowable.domain.vo.FlowTaskVo;
 import org.jeecgframework.poi.excel.annotation.Excel;
 import org.springframework.format.annotation.DateTimeFormat;
 
@@ -21,243 +22,292 @@
  * @Version: V1.0
  */
 @Data
-@TableName("eam_report_accidents_register")
 @Accessors(chain = true)
 @EqualsAndHashCode(callSuper = false)
-public class EamReportAccidentsRegisterDto  {
+public class EamReportAccidentsRegisterDto extends FlowTaskVo implements Serializable {
 
-	/**涓婚敭*/
-	@TableId(type = IdType.ASSIGN_ID)
+    private static final long serialVersionUID = 3844096033304425984L;
+
+    /**涓婚敭*/
+    @TableId(type = IdType.ASSIGN_ID)
     @ApiModelProperty(value = "涓婚敭")
     private String id;
-	/**鍒涘缓浜�*/
+    /**鍒涘缓浜�*/
     @ApiModelProperty(value = "鍒涘缓浜�")
     private String createBy;
-	/**鍒涘缓鏃ユ湡*/
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    /**鍒涘缓鏃ユ湡*/
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
     @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
     @ApiModelProperty(value = "鍒涘缓鏃ユ湡")
     private Date createTime;
-	/**鏇存柊浜�*/
+    /**鏇存柊浜�*/
     @ApiModelProperty(value = "鏇存柊浜�")
     private String updateBy;
-	/**鏇存柊鏃ユ湡*/
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    /**鏇存柊鏃ユ湡*/
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
     @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
     @ApiModelProperty(value = "鏇存柊鏃ユ湡")
     private Date updateTime;
-	/**鍒犻櫎鏍囪*/
-	@Excel(name = "鍒犻櫎鏍囪", width = 15)
+    /**鍒犻櫎鏍囪*/
+    @Excel(name = "鍒犻櫎鏍囪", width = 15)
     @ApiModelProperty(value = "鍒犻櫎鏍囪")
     @TableLogic
     private String delFlag;
-	/**鎶ヤ慨ID*/
-	@Excel(name = "鎶ヤ慨ID", width = 15)
+    /**鎶ヤ慨ID*/
+    @Excel(name = "鎶ヤ慨ID", width = 15)
     @ApiModelProperty(value = "鎶ヤ慨ID")
     private String reportId;
-	/**璁惧ID*/
-	@Excel(name = "璁惧ID", width = 15)
+    /**璁惧ID*/
+    @Excel(name = "璁惧ID", width = 15)
     @ApiModelProperty(value = "璁惧ID")
     private String equipmentId;
-	/**鏄惁鏈夎澶囨搷浣滆瘉 鏄惁*/
-	@Excel(name = "鏄惁鏈夎澶囨搷浣滆瘉 鏄惁", width = 15)
+    /**鐧昏鐘舵��*/
+    @ApiModelProperty(value = "鐧昏鐘舵��")
+    @Dict(dicCode = "eam_report_accidents_register_status")
+    private String registerStatus;
+    /**鏄惁鏈夎澶囨搷浣滆瘉 鏄惁*/
+    @Excel(name = "鏄惁鏈夎澶囨搷浣滆瘉 鏄惁", width = 15)
     @ApiModelProperty(value = "鏄惁鏈夎澶囨搷浣滆瘉 鏄惁")
     @Dict(dicCode = "yn")
     private String operationCertificate;
-	/**鏄惁鏂數閲嶅惎*/
-	@Excel(name = "鏄惁鏂數閲嶅惎", width = 15)
+    /**鏄惁鏂數閲嶅惎*/
+    @Excel(name = "鏄惁鏂數閲嶅惎", width = 15)
     @ApiModelProperty(value = "鏄惁鏂數閲嶅惎")
     @Dict(dicCode = "yn")
     private String powerOffRestart;
-	/**鏄惁涓烘壒娆¢浠�*/
-	@Excel(name = "鏄惁涓烘壒娆¢浠�", width = 15)
+    /**鏄惁涓烘壒娆¢浠�*/
+    @Excel(name = "鏄惁涓烘壒娆¢浠�", width = 15)
     @ApiModelProperty(value = "鏄惁涓烘壒娆¢浠�")
     @Dict(dicCode = "yn")
     private String batchFirstPiece;
-	/**鍙樺姩鍥犵礌 鏄惁*/
-	@Excel(name = "鍙樺姩鍥犵礌 鏄惁", width = 15)
+    /**鍙樺姩鍥犵礌 鏄惁*/
+    @Excel(name = "鍙樺姩鍥犵礌 鏄惁", width = 15)
     @ApiModelProperty(value = "鍙樺姩鍥犵礌 鏄惁")
     @Dict(dicCode = "yn")
     private String variableFactors;
-	/**鍙樺姩鍥犵礌鍐呭 鍒�鍏锋洿鎹€�佸伐鑹烘洿鏀广�佸姞宸ョ▼搴忔洿鏀广�佸垁鍏疯ˉ鍋垮�兼洿鏀广��*/
-	@Excel(name = "鍙樺姩鍥犵礌鍐呭 鍒�鍏锋洿鎹€�佸伐鑹烘洿鏀广�佸姞宸ョ▼搴忔洿鏀广�佸垁鍏疯ˉ鍋垮�兼洿鏀广��", width = 15)
+    /**鍙樺姩鍥犵礌鍐呭 鍒�鍏锋洿鎹€�佸伐鑹烘洿鏀广�佸姞宸ョ▼搴忔洿鏀广�佸垁鍏疯ˉ鍋垮�兼洿鏀广��*/
+    @Excel(name = "鍙樺姩鍥犵礌鍐呭 鍒�鍏锋洿鎹€�佸伐鑹烘洿鏀广�佸姞宸ョ▼搴忔洿鏀广�佸垁鍏疯ˉ鍋垮�兼洿鏀广��", width = 15)
     @ApiModelProperty(value = "鍙樺姩鍥犵礌鍐呭 鍒�鍏锋洿鎹€�佸伐鑹烘洿鏀广�佸姞宸ョ▼搴忔洿鏀广�佸垁鍏疯ˉ鍋垮�兼洿鏀�")
     @Dict(dicCode = "variable_factors_value")
     private String variableFactorsValue;
-	/**鎵ц绋嬪簭*/
-	@Excel(name = "鎵ц绋嬪簭", width = 15)
+    /**鎵ц绋嬪簭*/
+    @Excel(name = "鎵ц绋嬪簭", width = 15)
     @ApiModelProperty(value = "鎵ц绋嬪簭")
     private String executeNc;
-	/**浜嬫晠鐜拌薄*/
-	@Excel(name = "浜嬫晠鐜拌薄", width = 15)
+    /**浜嬫晠鐜拌薄*/
+    @Excel(name = "浜嬫晠鐜拌薄", width = 15)
     @ApiModelProperty(value = "浜嬫晠鐜拌薄")
     private String accidentPhenomenon;
-	/**閲囧彇鎺柦*/
-	@Excel(name = "閲囧彇鎺柦", width = 15)
+    /**閲囧彇鎺柦*/
+    @Excel(name = "閲囧彇鎺柦", width = 15)
     @ApiModelProperty(value = "閲囧彇鎺柦")
     private String measure;
-	/**閫犳垚缁撴灉*/
-	@Excel(name = "閫犳垚缁撴灉", width = 15)
+    /**閫犳垚缁撴灉*/
+    @Excel(name = "閫犳垚缁撴灉", width = 15)
     @ApiModelProperty(value = "閫犳垚缁撴灉")
     private String causingResults;
-	/**鎿嶄綔宸�*/
-	@Excel(name = "鎿嶄綔宸�", width = 15)
+    /**鎿嶄綔宸�*/
+    @Excel(name = "鎿嶄綔宸�", width = 15)
     @ApiModelProperty(value = "鎿嶄綔宸�")
     private String confirmer;
-	/**鎿嶄綔宸ョ‘璁ゆ椂闂�*/
-	@Excel(name = "鎿嶄綔宸ョ‘璁ゆ椂闂�", width = 15, format = "yyyy-MM-dd")
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    /**鎿嶄綔宸ョ‘璁ゆ椂闂�*/
+    @Excel(name = "鎿嶄綔宸ョ‘璁ゆ椂闂�", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern="yyyy-MM-dd")
     @ApiModelProperty(value = "鎿嶄綔宸ョ‘璁ゆ椂闂�")
     private Date confirmTime;
-	/**鍖洪暱*/
-	@Excel(name = "鍖洪暱", width = 15)
+    /**鍖洪暱*/
+    @Excel(name = "鍖洪暱", width = 15)
     @ApiModelProperty(value = "鍖洪暱")
     private String district;
     /**鍖洪暱纭*/
     @Excel(name = "鍖洪暱纭", width = 15)
-    @ApiModelProperty(value = "鍖洪暱纭")
+    @ApiModelProperty(value = "鍖洪暱纭鎰忚")
     private String districtConfirm;
-	/**鍖洪暱纭鏃堕棿*/
-	@Excel(name = "鍖洪暱纭鏃堕棿", width = 15, format = "yyyy-MM-dd")
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    /**鍖洪暱纭鏃堕棿*/
+    @Excel(name = "鍖洪暱纭鏃堕棿", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern="yyyy-MM-dd")
     @ApiModelProperty(value = "鍖洪暱纭鏃堕棿")
     private Date districtTime;
-	/**涓績涓讳换*/
-	@Excel(name = "涓績涓讳换", width = 15)
+    /**鍖洪暱纭缁撴灉*/
+    @Excel(name = "鍖洪暱纭缁撴灉", width = 15)
+    @ApiModelProperty(value = "鍖洪暱纭缁撴灉")
+    private String districtResult;
+    /**涓績涓讳换*/
+    @Excel(name = "涓績涓讳换", width = 15)
     @ApiModelProperty(value = "涓績涓讳换")
     private String centerDirector;
     /**涓績涓讳换纭*/
     @Excel(name = "涓績涓讳换纭", width = 15)
-    @ApiModelProperty(value = "涓績涓讳换纭")
+    @ApiModelProperty(value = "涓績涓讳换纭鎰忚")
     private String centerDirectorConfirm;
-	/**涓績涓讳换纭鏃堕棿*/
-	@Excel(name = "涓績涓讳换纭鏃堕棿", width = 15, format = "yyyy-MM-dd")
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    /**涓績涓讳换纭缁撴灉*/
+    @Excel(name = "涓績涓讳换纭缁撴灉", width = 15)
+    @ApiModelProperty(value = "涓績涓讳换纭缁撴灉")
+    private String centerDirectorResult;
+    /**涓績涓讳换纭鏃堕棿*/
+    @Excel(name = "涓績涓讳换纭鏃堕棿", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern="yyyy-MM-dd")
     @ApiModelProperty(value = "涓績涓讳换纭鏃堕棿")
     private Date centerDirectorTime;
-	/**缁翠慨寮�濮嬫椂闂�*/
-	@Excel(name = "缁翠慨寮�濮嬫椂闂�", width = 15, format = "yyyy-MM-dd")
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    /**缁翠慨寮�濮嬫椂闂�*/
+    @Excel(name = "缁翠慨寮�濮嬫椂闂�", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern="yyyy-MM-dd")
     @ApiModelProperty(value = "缁翠慨寮�濮嬫椂闂�")
     private Date reportStartTime;
-	/**璁惧鐘舵��*/
-	@Excel(name = "璁惧鐘舵��", width = 15)
+    /**璁惧鐘舵��*/
+    @Excel(name = "璁惧鐘舵��", width = 15)
     @ApiModelProperty(value = "璁惧鐘舵��")
     private String equipmentStatus;
-	/**鍘熷洜鍒嗘瀽*/
-	@Excel(name = "鍘熷洜鍒嗘瀽", width = 15)
+    /**鍘熷洜鍒嗘瀽*/
+    @Excel(name = "鍘熷洜鍒嗘瀽", width = 15)
     @ApiModelProperty(value = "鍘熷洜鍒嗘瀽")
     private String causeAnalysis;
-	/**妫�鏌ョ粨鏋�*/
-	@Excel(name = "妫�鏌ョ粨鏋�", width = 15)
+    /**妫�鏌ョ粨鏋�*/
+    @Excel(name = "妫�鏌ョ粨鏋�", width = 15)
     @ApiModelProperty(value = "妫�鏌ョ粨鏋�")
     private String inspectionResults;
-	/**閲囧彇鎺柦*/
-	@Excel(name = "閲囧彇鎺柦", width = 15)
+    /**閲囧彇鎺柦*/
+    @Excel(name = "閲囧彇鎺柦", width = 15)
     @ApiModelProperty(value = "閲囧彇鎺柦")
     private String takeSteps;
-	/**寤鸿閲囧彇鎺柦*/
-	@Excel(name = "寤鸿閲囧彇鎺柦", width = 15)
+    /**寤鸿閲囧彇鎺柦*/
+    @Excel(name = "寤鸿閲囧彇鎺柦", width = 15)
     @ApiModelProperty(value = "寤鸿閲囧彇鎺柦")
     private String suggestionTakeSteps;
-	/**寤鸿閲囧彇鎺柦鏃堕棿*/
-	@Excel(name = "寤鸿閲囧彇鎺柦鏃堕棿", width = 15, format = "yyyy-MM-dd")
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    /**寤鸿閲囧彇鎺柦鏃堕棿*/
+    @Excel(name = "寤鸿閲囧彇鎺柦鏃堕棿", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern="yyyy-MM-dd")
     @ApiModelProperty(value = "寤鸿閲囧彇鎺柦鏃堕棿")
     private Date suggestionTakeStepsTime;
-	/**缁翠慨纭*/
-	@Excel(name = "缁翠慨纭", width = 15)
+    /**缁翠慨宸ョ‘璁�*/
+    @Excel(name = "缁翠慨宸ョ‘璁�", width = 15)
     @ApiModelProperty(value = "缁翠慨纭")
     private String repairConfirm;
-	/**缁翠慨纭鎰忚*/
-	@Excel(name = "缁翠慨纭鎰忚", width = 15)
+    /**缁翠慨宸ョ‘璁ょ粨鏋�*/
+    @Excel(name = "缁翠慨宸ョ‘璁ょ粨鏋�", width = 15)
+    @ApiModelProperty(value = "缁翠慨宸ョ‘璁ょ粨鏋�")
+    private String repairConfirmResult;
+    /**缁翠慨宸ョ‘璁ゆ剰瑙�*/
+    @Excel(name = "缁翠慨宸ョ‘璁ゆ剰瑙�", width = 15)
     @ApiModelProperty(value = "缁翠慨纭鎰忚")
     private String repairConfirmComment;
-	/**缁翠慨纭鏃堕棿*/
-	@Excel(name = "缁翠慨纭鏃堕棿", width = 15, format = "yyyy-MM-dd")
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    /**缁翠慨宸ョ‘璁ゆ椂闂�*/
+    @Excel(name = "缁翠慨宸ョ‘璁ゆ椂闂�", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern="yyyy-MM-dd")
     @ApiModelProperty(value = "缁翠慨纭鏃堕棿")
     private Date repairConfirmTime;
-	/**缁翠慨缁勯暱纭*/
-	@Excel(name = "缁翠慨缁勯暱纭", width = 15)
+    /**缁翠慨缁勯暱纭*/
+    @Excel(name = "缁翠慨缁勯暱纭", width = 15)
     @ApiModelProperty(value = "缁翠慨缁勯暱纭")
     private String repairGroupLeader;
-	/**缁翠慨缁勯暱鎰忚*/
-	@Excel(name = "缁翠慨缁勯暱鎰忚", width = 15)
+    /**缁翠慨缁勯暱鎰忚*/
+    @Excel(name = "缁翠慨缁勯暱鎰忚", width = 15)
     @ApiModelProperty(value = "缁翠慨缁勯暱鎰忚")
     private String repairGroupLeaderComment;
-	/**缁翠慨缁勯暱纭鏃堕棿*/
-	@Excel(name = "缁翠慨缁勯暱纭鏃堕棿", width = 15, format = "yyyy-MM-dd")
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    /**缁翠慨缁勯暱纭缁撴灉*/
+    @Excel(name = "缁翠慨缁勯暱纭缁撴灉", width = 15)
+    @ApiModelProperty(value = "缁翠慨缁勯暱纭缁撴灉")
+    private String repairGroupLeaderResult;
+    /**缁翠慨缁勯暱纭鏃堕棿*/
+    @Excel(name = "缁翠慨缁勯暱纭鏃堕棿", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern="yyyy-MM-dd")
     @ApiModelProperty(value = "缁翠慨缁勯暱纭鏃堕棿")
     private Date repairGroupLeaderTime;
-	/**缁翠慨缁勯暱纭*/
-	@Excel(name = "缁翠慨缁勯暱纭", width = 15)
-    @ApiModelProperty(value = "缁翠慨缁勯暱纭")
+    /**缁翠慨缁勯暱(鍖洪暱)纭*/
+    @Excel(name = "缁翠慨缁勯暱(鍖洪暱)纭", width = 15)
+    @ApiModelProperty(value = "缁翠慨缁勯暱(鍖洪暱)纭")
     private String repairDistrict;
-	/**缁翠慨缁勯暱鎰忚*/
-	@Excel(name = "缁翠慨缁勯暱鎰忚", width = 15)
-    @ApiModelProperty(value = "缁翠慨缁勯暱鎰忚")
+    /**缁翠慨缁勯暱(鍖洪暱)鎰忚*/
+    @Excel(name = "缁翠慨缁勯暱(鍖洪暱)鎰忚", width = 15)
+    @ApiModelProperty(value = "缁翠慨缁勯暱(鍖洪暱)鎰忚")
     private String repairDistrictComment;
-	/**缁翠慨缁勯暱纭鏃堕棿*/
-	@Excel(name = "缁翠慨缁勯暱纭鏃堕棿", width = 15, format = "yyyy-MM-dd")
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    /**缁翠慨缁勯暱(鍖洪暱)纭缁撴灉*/
+    @Excel(name = "缁翠慨缁勯暱(鍖洪暱)纭缁撴灉", width = 15)
+    @ApiModelProperty(value = "缁翠慨缁勯暱(鍖洪暱)纭缁撴灉")
+    private String repairDistrictResult;
+    /**缁翠慨缁勯暱(鍖洪暱)纭鏃堕棿*/
+    @Excel(name = "缁翠慨缁勯暱纭鏃堕棿", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern="yyyy-MM-dd")
-    @ApiModelProperty(value = "缁翠慨缁勯暱纭鏃堕棿")
+    @ApiModelProperty(value = "缁翠慨缁勯暱(鍖洪暱)纭鏃堕棿")
     private Date repairDistrictTime;
-	/**鍘熷洜鍒嗘瀽鏍稿鍚屾剰銆佷笉鍚屾剰*/
-	@Excel(name = "鍘熷洜鍒嗘瀽鏍稿鍚屾剰銆佷笉鍚屾剰", width = 15)
+    /**鍘熷洜鍒嗘瀽鏍稿鍚屾剰銆佷笉鍚屾剰*/
+    @Excel(name = "鍘熷洜鍒嗘瀽鏍稿鍚屾剰銆佷笉鍚屾剰", width = 15)
     @ApiModelProperty(value = "鍘熷洜鍒嗘瀽鏍稿鍚屾剰銆佷笉鍚屾剰")
     private String checkAgree;
-	/**涓嶅悓鎰忓師鍥犲垎鏋�*/
-	@Excel(name = "涓嶅悓鎰忓師鍥犲垎鏋�", width = 15)
+    /**涓嶅悓鎰忓師鍥犲垎鏋�*/
+    @Excel(name = "涓嶅悓鎰忓師鍥犲垎鏋�", width = 15)
     @ApiModelProperty(value = "涓嶅悓鎰忓師鍥犲垎鏋�")
     private String disagreeReason;
-	/**鏁存敼鎺柦*/
-	@Excel(name = "鏁存敼鎺柦", width = 15)
+    /**鏁存敼鎺柦*/
+    @Excel(name = "鏁存敼鎺柦", width = 15)
     @ApiModelProperty(value = "鏁存敼鎺柦")
     private String rectificationMeasures;
-	/**浜嬫晠缁撹*/
-	@Excel(name = "浜嬫晠缁撹", width = 15)
+    /**浜嬫晠缁撹*/
+    @Excel(name = "浜嬫晠缁撹", width = 15)
     @ApiModelProperty(value = "浜嬫晠缁撹")
     private String accidentConclusion;
-	/**鎶�鏈礋璐d汉*/
-	@Excel(name = "鎶�鏈礋璐d汉", width = 15)
+    /**鎶�鏈礋璐d汉*/
+    @Excel(name = "鎶�鏈礋璐d汉", width = 15)
     @ApiModelProperty(value = "鎶�鏈礋璐d汉")
     private String technicalDirector;
-	/**鎶�鏈礋璐d汉纭鏃堕棿*/
-	@Excel(name = "鎶�鏈礋璐d汉纭鏃堕棿", width = 15, format = "yyyy-MM-dd")
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    /**鎶�鏈礋璐d汉纭鎰忚*/
+    @Excel(name = "鎶�鏈礋璐d汉纭鎰忚", width = 15)
+    @ApiModelProperty(value = "鎶�鏈礋璐d汉纭鎰忚")
+    private String technicalDirectorConfirm;
+    /**鎶�鏈礋璐d汉纭缁撴灉*/
+    @Excel(name = "鎶�鏈礋璐d汉纭缁撴灉", width = 15)
+    @ApiModelProperty(value = "鎶�鏈礋璐d汉纭缁撴灉")
+    private String technicalDirectorResult;
+    /**鎶�鏈礋璐d汉纭鏃堕棿*/
+    @Excel(name = "鎶�鏈礋璐d汉纭鏃堕棿", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern="yyyy-MM-dd")
     @ApiModelProperty(value = "鎶�鏈礋璐d汉纭鏃堕棿")
     private Date technicalDirectorTime;
-	/**鎶�鏈富绠″绾ч瀵�*/
-	@Excel(name = "鎶�鏈富绠″绾ч瀵�", width = 15)
+    /**鎶�鏈富绠″绾ч瀵�*/
+    @Excel(name = "鎶�鏈富绠″绾ч瀵�", width = 15)
     @ApiModelProperty(value = "鎶�鏈富绠″绾ч瀵�")
     private String technicalDirectorLeader;
-	/**鎶�鏈富绠″绾ч瀵肩‘璁ゆ椂闂�*/
-	@Excel(name = "鎶�鏈富绠″绾ч瀵肩‘璁ゆ椂闂�", width = 15, format = "yyyy-MM-dd")
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    /**鎶�鏈富绠″绾ч瀵肩‘璁ゆ剰瑙�*/
+    @Excel(name = "鎶�鏈富绠″绾ч瀵肩‘璁ゆ剰瑙�", width = 15)
+    @ApiModelProperty(value = "鎶�鏈富绠″绾ч瀵肩‘璁ゆ剰瑙�")
+    private String technicalDirectorLeaderConfirm;
+    /**鎶�鏈富绠″绾ч瀵肩‘璁ょ粨鏋�*/
+    @Excel(name = "鎶�鏈富绠″绾ч瀵肩‘璁ょ粨鏋�", width = 15)
+    @ApiModelProperty(value = "鎶�鏈富绠″绾ч瀵肩‘璁ょ粨鏋�")
+    private String technicalDirectorLeaderResult;
+    /**鎶�鏈富绠″绾ч瀵肩‘璁ゆ椂闂�*/
+    @Excel(name = "鎶�鏈富绠″绾ч瀵肩‘璁ゆ椂闂�", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern="yyyy-MM-dd")
     @ApiModelProperty(value = "鎶�鏈富绠″绾ч瀵肩‘璁ゆ椂闂�")
     private Date technicalDirectorLeaderTime;
-	/**涓荤閮ㄧ骇棰嗗*/
-	@Excel(name = "涓荤閮ㄧ骇棰嗗", width = 15)
+    /**涓荤閮ㄧ骇棰嗗*/
+    @Excel(name = "涓荤閮ㄧ骇棰嗗", width = 15)
     @ApiModelProperty(value = "涓荤閮ㄧ骇棰嗗")
     private String technicalDirectorPart;
-	/**涓荤閮ㄧ骇棰嗗纭鏃堕棿*/
-	@Excel(name = "涓荤閮ㄧ骇棰嗗纭鏃堕棿", width = 15, format = "yyyy-MM-dd")
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    /**涓荤閮ㄧ骇棰嗗纭鏃堕棿*/
+    @Excel(name = "涓荤閮ㄧ骇棰嗗纭鏃堕棿", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern="yyyy-MM-dd")
     @ApiModelProperty(value = "涓荤閮ㄧ骇棰嗗纭鏃堕棿")
     private Date technicalDirectorPartTime;
+    /**涓荤閮ㄧ骇棰嗗纭鎰忚*/
+    @Excel(name = "涓荤閮ㄧ骇棰嗗纭鎰忚", width = 15)
+    @ApiModelProperty(value = "涓荤閮ㄧ骇棰嗗纭鎰忚")
+    private String technicalDirectorPartConfirm;
+    /**涓荤閮ㄧ骇棰嗗纭缁撴灉*/
+    @Excel(name = "涓荤閮ㄧ骇棰嗗纭缁撴灉", width = 15)
+    @ApiModelProperty(value = "涓荤閮ㄧ骇棰嗗纭缁撴灉")
+    private String technicalDirectorPartResult;
     //鍒楄〃灞曠ず
     @TableField(exist = false)
     private String equipmentCode;
@@ -267,4 +317,16 @@
     private String equipmentModel;
     @TableField(exist = false)
     private String installationPosition;
+    /**搴熷搧浠跺彿*/
+    @TableField(exist = false)
+    @ApiModelProperty(value = "搴熷搧浠跺彿")
+    private String scrapPartNumber;
+    /**搴熷搧浠舵暟*/
+    @TableField(exist = false)
+    @ApiModelProperty(value = "搴熷搧浠舵暟")
+    private String scrapPartQuantity;
+    /**搴熷搧浠峰��*/
+    @TableField(exist = false)
+    @ApiModelProperty(value = "搴熷搧浠峰��")
+    private String scrapPartValue;
 }
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamRepairOrder.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamRepairOrder.java
index 15b02d4..e783ef1 100644
--- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamRepairOrder.java
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamRepairOrder.java
@@ -76,6 +76,11 @@
     @ApiModelProperty(name = "缁翠慨鐘舵��",notes = "寰呯淮淇�佺淮淇腑銆佸緟纭銆佺淮淇畬鎴�")
     @Dict(dicCode = "repair_status")
     private String repairStatus;
+    /**鏁呴殰绫诲瀷*/
+    @Excel(name = "鏁呴殰绫诲瀷", width = 15)
+    @ApiModelProperty(value = "鏁呴殰绫诲瀷")
+    @Dict(dicCode = "fault_type")
+    private String faultType;
     /** 缁翠慨寮�濮嬫椂闂� */
     @ApiModelProperty(name = "缁翠慨寮�濮嬫椂闂�",notes = "")
     private Date actualStartTime;
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamRepairPerson.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamRepairPerson.java
index 9c708ea..3568f15 100644
--- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamRepairPerson.java
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamRepairPerson.java
@@ -70,9 +70,9 @@
     @ApiModelProperty(value = "鏄惁鏄富缁翠慨浜�")
     @Dict(dicCode = "yn")
     private String repairPrimary;
-	/**缁翠慨鏃堕暱*/
-	@Excel(name = "缁翠慨鏃堕暱", width = 15)
-    @ApiModelProperty(value = "缁翠慨鏃堕暱")
+	/**缁翠慨鏃堕暱(灏忔椂)*/
+	@Excel(name = "缁翠慨鏃堕暱(灏忔椂)", width = 15)
+    @ApiModelProperty(value = "缁翠慨鏃堕暱(灏忔椂)")
     private String repairDuration;
 	/**澶囨敞*/
 	@Excel(name = "澶囨敞", width = 15)
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamReportAccidentsRegister.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamReportAccidentsRegister.java
index 9631af9..02e35bd 100644
--- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamReportAccidentsRegister.java
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamReportAccidentsRegister.java
@@ -63,6 +63,10 @@
 	@Excel(name = "璁惧ID", width = 15)
     @ApiModelProperty(value = "璁惧ID")
     private String equipmentId;
+    /**鐧昏鐘舵��*/
+    @ApiModelProperty(value = "鐧昏鐘舵��")
+    @Dict(dicCode = "eam_report_accidents_register_status")
+    private String registerStatus;
 	/**鏄惁鏈夎澶囨搷浣滆瘉 鏄惁*/
 	@Excel(name = "鏄惁鏈夎澶囨搷浣滆瘉 鏄惁", width = 15)
     @ApiModelProperty(value = "鏄惁鏈夎澶囨搷浣滆瘉 鏄惁")
@@ -120,7 +124,7 @@
     private String district;
     /**鍖洪暱纭*/
     @Excel(name = "鍖洪暱纭", width = 15)
-    @ApiModelProperty(value = "鍖洪暱纭")
+    @ApiModelProperty(value = "鍖洪暱纭鎰忚")
     private String districtConfirm;
 	/**鍖洪暱纭鏃堕棿*/
 	@Excel(name = "鍖洪暱纭鏃堕棿", width = 15, format = "yyyy-MM-dd")
@@ -128,14 +132,22 @@
     @DateTimeFormat(pattern="yyyy-MM-dd")
     @ApiModelProperty(value = "鍖洪暱纭鏃堕棿")
     private Date districtTime;
+    /**鍖洪暱纭缁撴灉*/
+    @Excel(name = "鍖洪暱纭缁撴灉", width = 15)
+    @ApiModelProperty(value = "鍖洪暱纭缁撴灉")
+    private String districtResult;
 	/**涓績涓讳换*/
 	@Excel(name = "涓績涓讳换", width = 15)
     @ApiModelProperty(value = "涓績涓讳换")
     private String centerDirector;
     /**涓績涓讳换纭*/
     @Excel(name = "涓績涓讳换纭", width = 15)
-    @ApiModelProperty(value = "涓績涓讳换纭")
+    @ApiModelProperty(value = "涓績涓讳换纭鎰忚")
     private String centerDirectorConfirm;
+    /**涓績涓讳换纭缁撴灉*/
+    @Excel(name = "涓績涓讳换纭缁撴灉", width = 15)
+    @ApiModelProperty(value = "涓績涓讳换纭缁撴灉")
+    private String centerDirectorResult;
 	/**涓績涓讳换纭鏃堕棿*/
 	@Excel(name = "涓績涓讳换纭鏃堕棿", width = 15, format = "yyyy-MM-dd")
 	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@@ -174,16 +186,20 @@
     @DateTimeFormat(pattern="yyyy-MM-dd")
     @ApiModelProperty(value = "寤鸿閲囧彇鎺柦鏃堕棿")
     private Date suggestionTakeStepsTime;
-	/**缁翠慨纭*/
-	@Excel(name = "缁翠慨纭", width = 15)
+	/**缁翠慨宸ョ‘璁�*/
+	@Excel(name = "缁翠慨宸ョ‘璁�", width = 15)
     @ApiModelProperty(value = "缁翠慨纭")
     private String repairConfirm;
-	/**缁翠慨纭鎰忚*/
-	@Excel(name = "缁翠慨纭鎰忚", width = 15)
+    /**缁翠慨宸ョ‘璁ょ粨鏋�*/
+    @Excel(name = "缁翠慨宸ョ‘璁ょ粨鏋�", width = 15)
+    @ApiModelProperty(value = "缁翠慨宸ョ‘璁ょ粨鏋�")
+    private String repairConfirmResult;
+	/**缁翠慨宸ョ‘璁ゆ剰瑙�*/
+	@Excel(name = "缁翠慨宸ョ‘璁ゆ剰瑙�", width = 15)
     @ApiModelProperty(value = "缁翠慨纭鎰忚")
     private String repairConfirmComment;
-	/**缁翠慨纭鏃堕棿*/
-	@Excel(name = "缁翠慨纭鏃堕棿", width = 15, format = "yyyy-MM-dd")
+	/**缁翠慨宸ョ‘璁ゆ椂闂�*/
+	@Excel(name = "缁翠慨宸ョ‘璁ゆ椂闂�", width = 15, format = "yyyy-MM-dd")
 	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern="yyyy-MM-dd")
     @ApiModelProperty(value = "缁翠慨纭鏃堕棿")
@@ -196,25 +212,33 @@
 	@Excel(name = "缁翠慨缁勯暱鎰忚", width = 15)
     @ApiModelProperty(value = "缁翠慨缁勯暱鎰忚")
     private String repairGroupLeaderComment;
+    /**缁翠慨缁勯暱纭缁撴灉*/
+    @Excel(name = "缁翠慨缁勯暱纭缁撴灉", width = 15)
+    @ApiModelProperty(value = "缁翠慨缁勯暱纭缁撴灉")
+    private String repairGroupLeaderResult;
 	/**缁翠慨缁勯暱纭鏃堕棿*/
 	@Excel(name = "缁翠慨缁勯暱纭鏃堕棿", width = 15, format = "yyyy-MM-dd")
 	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern="yyyy-MM-dd")
     @ApiModelProperty(value = "缁翠慨缁勯暱纭鏃堕棿")
     private Date repairGroupLeaderTime;
-	/**缁翠慨缁勯暱纭*/
-	@Excel(name = "缁翠慨缁勯暱纭", width = 15)
-    @ApiModelProperty(value = "缁翠慨缁勯暱纭")
+	/**缁翠慨缁勯暱(鍖洪暱)纭*/
+	@Excel(name = "缁翠慨缁勯暱(鍖洪暱)纭", width = 15)
+    @ApiModelProperty(value = "缁翠慨缁勯暱(鍖洪暱)纭")
     private String repairDistrict;
-	/**缁翠慨缁勯暱鎰忚*/
-	@Excel(name = "缁翠慨缁勯暱鎰忚", width = 15)
-    @ApiModelProperty(value = "缁翠慨缁勯暱鎰忚")
+	/**缁翠慨缁勯暱(鍖洪暱)鎰忚*/
+	@Excel(name = "缁翠慨缁勯暱(鍖洪暱)鎰忚", width = 15)
+    @ApiModelProperty(value = "缁翠慨缁勯暱(鍖洪暱)鎰忚")
     private String repairDistrictComment;
-	/**缁翠慨缁勯暱纭鏃堕棿*/
+    /**缁翠慨缁勯暱(鍖洪暱)纭缁撴灉*/
+    @Excel(name = "缁翠慨缁勯暱(鍖洪暱)纭缁撴灉", width = 15)
+    @ApiModelProperty(value = "缁翠慨缁勯暱(鍖洪暱)纭缁撴灉")
+    private String repairDistrictResult;
+	/**缁翠慨缁勯暱(鍖洪暱)纭鏃堕棿*/
 	@Excel(name = "缁翠慨缁勯暱纭鏃堕棿", width = 15, format = "yyyy-MM-dd")
 	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern="yyyy-MM-dd")
-    @ApiModelProperty(value = "缁翠慨缁勯暱纭鏃堕棿")
+    @ApiModelProperty(value = "缁翠慨缁勯暱(鍖洪暱)纭鏃堕棿")
     private Date repairDistrictTime;
 	/**鍘熷洜鍒嗘瀽鏍稿鍚屾剰銆佷笉鍚屾剰*/
 	@Excel(name = "鍘熷洜鍒嗘瀽鏍稿鍚屾剰銆佷笉鍚屾剰", width = 15)
@@ -236,6 +260,14 @@
 	@Excel(name = "鎶�鏈礋璐d汉", width = 15)
     @ApiModelProperty(value = "鎶�鏈礋璐d汉")
     private String technicalDirector;
+    /**鎶�鏈礋璐d汉纭鎰忚*/
+    @Excel(name = "鎶�鏈礋璐d汉纭鎰忚", width = 15)
+    @ApiModelProperty(value = "鎶�鏈礋璐d汉纭鎰忚")
+    private String technicalDirectorConfirm;
+    /**鎶�鏈礋璐d汉纭缁撴灉*/
+    @Excel(name = "鎶�鏈礋璐d汉纭缁撴灉", width = 15)
+    @ApiModelProperty(value = "鎶�鏈礋璐d汉纭缁撴灉")
+    private String technicalDirectorResult;
 	/**鎶�鏈礋璐d汉纭鏃堕棿*/
 	@Excel(name = "鎶�鏈礋璐d汉纭鏃堕棿", width = 15, format = "yyyy-MM-dd")
 	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@@ -246,6 +278,14 @@
 	@Excel(name = "鎶�鏈富绠″绾ч瀵�", width = 15)
     @ApiModelProperty(value = "鎶�鏈富绠″绾ч瀵�")
     private String technicalDirectorLeader;
+    /**鎶�鏈富绠″绾ч瀵肩‘璁ゆ剰瑙�*/
+    @Excel(name = "鎶�鏈富绠″绾ч瀵肩‘璁ゆ剰瑙�", width = 15)
+    @ApiModelProperty(value = "鎶�鏈富绠″绾ч瀵肩‘璁ゆ剰瑙�")
+    private String technicalDirectorLeaderConfirm;
+    /**鎶�鏈富绠″绾ч瀵肩‘璁ょ粨鏋�*/
+    @Excel(name = "鎶�鏈富绠″绾ч瀵肩‘璁ょ粨鏋�", width = 15)
+    @ApiModelProperty(value = "鎶�鏈富绠″绾ч瀵肩‘璁ょ粨鏋�")
+    private String technicalDirectorLeaderResult;
 	/**鎶�鏈富绠″绾ч瀵肩‘璁ゆ椂闂�*/
 	@Excel(name = "鎶�鏈富绠″绾ч瀵肩‘璁ゆ椂闂�", width = 15, format = "yyyy-MM-dd")
 	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@@ -262,6 +302,14 @@
     @DateTimeFormat(pattern="yyyy-MM-dd")
     @ApiModelProperty(value = "涓荤閮ㄧ骇棰嗗纭鏃堕棿")
     private Date technicalDirectorPartTime;
+    /**涓荤閮ㄧ骇棰嗗纭鎰忚*/
+    @Excel(name = "涓荤閮ㄧ骇棰嗗纭鎰忚", width = 15)
+    @ApiModelProperty(value = "涓荤閮ㄧ骇棰嗗纭鎰忚")
+    private String technicalDirectorPartConfirm;
+    /**涓荤閮ㄧ骇棰嗗纭缁撴灉*/
+    @Excel(name = "涓荤閮ㄧ骇棰嗗纭缁撴灉", width = 15)
+    @ApiModelProperty(value = "涓荤閮ㄧ骇棰嗗纭缁撴灉")
+    private String technicalDirectorPartResult;
     //鍒楄〃灞曠ず
     @TableField(exist = false)
     private String equipmentCode;
@@ -271,4 +319,16 @@
     private String equipmentModel;
     @TableField(exist = false)
     private String installationPosition;
+    /**搴熷搧浠跺彿*/
+    @TableField(exist = false)
+    @ApiModelProperty(value = "搴熷搧浠跺彿")
+    private String scrapPartNumber;
+    /**搴熷搧浠舵暟*/
+    @TableField(exist = false)
+    @ApiModelProperty(value = "搴熷搧浠舵暟")
+    private String scrapPartQuantity;
+    /**搴熷搧浠峰��*/
+    @TableField(exist = false)
+    @ApiModelProperty(value = "搴熷搧浠峰��")
+    private String scrapPartValue;
 }
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/mapper/xml/EamReportAccidentsRegisterMapper.xml b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/mapper/xml/EamReportAccidentsRegisterMapper.xml
index d967f14..0593f6d 100644
--- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/mapper/xml/EamReportAccidentsRegisterMapper.xml
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/mapper/xml/EamReportAccidentsRegisterMapper.xml
@@ -8,7 +8,10 @@
             e.equipment_code,
             e.equipment_name,
             e.equipment_model,
-            e.installation_position
+            e.installation_position,
+            wmo.scrap_part_number,
+            wmo.scrap_part_quantity,
+            wmo.scrap_part_value
         FROM eam_report_accidents_register aar
                  LEFT JOIN eam_report_repair wmo
                            ON aar.report_id = wmo.id
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamReportAccidentsRegisterQuery.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamReportAccidentsRegisterQuery.java
index e1985b7..426355f 100644
--- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamReportAccidentsRegisterQuery.java
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamReportAccidentsRegisterQuery.java
@@ -54,6 +54,10 @@
     @Excel(name = "璁惧ID", width = 15)
     @ApiModelProperty(value = "璁惧ID")
     private String equipmentId;
+    /**鐧昏鐘舵��*/
+    @ApiModelProperty(value = "鐧昏鐘舵��")
+    @Dict(dicCode = "eam_report_accidents_register_status")
+    private String registerStatus;
     /**鏄惁鏈夎澶囨搷浣滆瘉 鏄惁*/
     @Excel(name = "鏄惁鏈夎澶囨搷浣滆瘉 鏄惁", width = 15)
     @ApiModelProperty(value = "鏄惁鏈夎澶囨搷浣滆瘉 鏄惁")
@@ -264,4 +268,16 @@
     private String installationPosition;
     private String column;
     private String order;
+    /**搴熷搧浠跺彿*/
+    @TableField(exist = false)
+    @ApiModelProperty(value = "搴熷搧浠跺彿")
+    private String scrapPartNumber;
+    /**搴熷搧浠舵暟*/
+    @TableField(exist = false)
+    @ApiModelProperty(value = "搴熷搧浠舵暟")
+    private String scrapPartQuantity;
+    /**搴熷搧浠峰��*/
+    @TableField(exist = false)
+    @ApiModelProperty(value = "搴熷搧浠峰��")
+    private String scrapPartValue;
 }
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/IEamReportAccidentsRegisterService.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/IEamReportAccidentsRegisterService.java
index adfdd85..f0a57b0 100644
--- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/IEamReportAccidentsRegisterService.java
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/IEamReportAccidentsRegisterService.java
@@ -41,6 +41,12 @@
     Result<?> submit(String id);
 
     /**
+     * 娴佺▼瀹℃牳
+     * @param eamReportAccidentsRegisterDto
+     */
+    Result<?> audit(EamReportAccidentsRegisterDto eamReportAccidentsRegisterDto);
+
+    /**
      * 鍒犻櫎
      * @param id
      * @return
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamRepairOrderServiceImpl.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamRepairOrderServiceImpl.java
index 92eb973..d6ab450 100644
--- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamRepairOrderServiceImpl.java
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamRepairOrderServiceImpl.java
@@ -212,14 +212,16 @@
         }
         eamReportRepair.setReportStatus(EamRepairOrderRepairStatusEnum.UNDER_MAINTENANCE.name());
         eamReportRepairService.updateById(eamReportRepair);
+        List<EamRepairPerson> eamRepairPersonList=new ArrayList<>();
         iEamRepairPersonService.remove(new QueryWrapper<EamRepairPerson>().eq("repair_id",eamRepairOrderDto.getId()));
-        if(CollectionUtils.isNotEmpty(eamRepairOrderDto.getEamRepairPersonList())) {
-            List<EamRepairPerson> persons = eamRepairOrderDto.getEamRepairPersonList().stream()
-                    .map(person -> new EamRepairPerson()
-                            .setRepairId(eamRepairOrder.getId())
-                            .setDelFlag(CommonConstant.DEL_FLAG_0))
-                    .collect(Collectors.toList());
-            iEamRepairPersonService.saveBatch(persons);
+        if (CollectionUtils.isNotEmpty(eamRepairOrderDto.getEamRepairPersonList())) {
+            eamRepairOrderDto.getEamRepairPersonList().forEach(eamRepairPerson -> {
+                eamRepairPerson.setId(null);
+                eamRepairPerson.setRepairId(eamRepairOrder.getId());
+                eamRepairPerson.setDelFlag(CommonConstant.DEL_FLAG_0);
+                eamRepairPersonList.add(eamRepairPerson);
+            });
+            iEamRepairPersonService.saveBatch(eamRepairPersonList);
         }
         return true;
     }
@@ -233,7 +235,27 @@
         if (CollectionUtils.isEmpty(eamRepairPersonList)) {
             throw new RuntimeException("缁翠慨浜哄憳涓嶈兘涓虹┖");
         }
-        if (StrUtil.isEmpty(eamRepairOrder.getRepairCode())) {}
+        if (StrUtil.isEmpty(eamRepairOrder.getRepairCode())) {
+            throw new RuntimeException("宸ュ崟缂栧彿涓虹┖");
+        }
+        if (eamRepairOrder.getActualStartTime()==null){
+            throw new RuntimeException("缁翠慨寮�濮嬫椂闂翠负绌�");
+        }
+        if (eamRepairOrder.getActualEndTime()==null){
+            throw new RuntimeException("缁翠慨缁撴潫鏃堕棿涓虹┖");
+        }
+        if (StrUtil.isEmpty(eamRepairOrder.getFaultReason())){
+            throw new RuntimeException("鏁呴殰鍘熷洜涓虹┖");
+        }
+        if (StrUtil.isEmpty(eamRepairOrder.getFaultAnalysis())){
+            throw new RuntimeException("鏁呴殰鍒嗘瀽涓虹┖");
+        }
+        if (StrUtil.isEmpty(eamRepairOrder.getFaultProcess())){
+            throw new RuntimeException("鎺掓晠杩囩▼涓虹┖");
+        }
+        if (StrUtil.isEmpty(eamRepairOrder.getFaultPrevent())){
+            throw new RuntimeException("鏁呴殰棰勯槻涓虹┖");
+        }
         LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
         EamEquipment eamEquipment = eamEquipmentService.getById(eamRepairOrder.getEquipmentId());
         List<UserSelector> userSelectorList = sysUserService.selectOperatorList(eamEquipment.getEquipmentCode(), eamEquipment.getFactoryOrgCode(), BusinessCodeConst.PCR0001);
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamReportAccidentsRegisterServiceImpl.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamReportAccidentsRegisterServiceImpl.java
index 727163a..3058d9f 100644
--- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamReportAccidentsRegisterServiceImpl.java
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamReportAccidentsRegisterServiceImpl.java
@@ -1,5 +1,8 @@
 package org.jeecg.modules.eam.service.impl;
 
+import cn.hutool.core.collection.CollectionUtil;
+import cn.hutool.core.util.StrUtil;
+import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
@@ -8,33 +11,44 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.shiro.SecurityUtils;
+import org.flowable.engine.TaskService;
+import org.flowable.task.api.Task;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.constant.CommonConstant;
 import org.jeecg.common.constant.DataBaseConstant;
+import org.jeecg.common.exception.JeecgBootException;
 import org.jeecg.common.system.vo.LoginUser;
 import org.jeecg.common.util.oConvertUtils;
+import org.jeecg.modules.eam.constant.*;
 import org.jeecg.modules.eam.dto.EamReportAccidentsRegisterDto;
-import org.jeecg.modules.eam.entity.EamReportAccidentsRegister;
-import org.jeecg.modules.eam.entity.EamReportProductHazards;
-import org.jeecg.modules.eam.entity.EamReportRepair;
+import org.jeecg.modules.eam.entity.*;
 import org.jeecg.modules.eam.mapper.EamReportAccidentsRegisterMapper;
 import org.jeecg.modules.eam.request.EamReportAccidentsRegisterQuery;
+import org.jeecg.modules.eam.service.IEamEquipmentService;
 import org.jeecg.modules.eam.service.IEamReportAccidentsRegisterService;
 import org.jeecg.modules.eam.service.IEamReportRepairService;
+import org.jeecg.modules.flowable.apithird.business.entity.FlowMyBusiness;
+import org.jeecg.modules.flowable.apithird.business.service.IFlowMyBusinessService;
+import org.jeecg.modules.flowable.apithird.service.FlowCallBackServiceI;
+import org.jeecg.modules.flowable.apithird.service.FlowCommonService;
+import org.jeecg.modules.flowable.service.IFlowDefinitionService;
+import org.jeecg.modules.flowable.service.IFlowTaskService;
 import org.jeecg.modules.system.entity.BaseFactory;
 import org.jeecg.modules.system.entity.BaseFactoryUser;
 import org.jeecg.modules.system.service.IBaseFactoryService;
 import org.jeecg.modules.system.service.IBaseFactoryUserService;
+import org.jeecg.modules.system.service.ISysUserService;
+import org.jeecg.modules.system.vo.UserSelector;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.transaction.annotation.Transactional;
 
-import java.util.Arrays;
-import java.util.List;
-import java.util.Set;
+import javax.annotation.Resource;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -43,8 +57,8 @@
  * @Date:   2025-07-17
  * @Version: V1.0
  */
-@Service
-public class EamReportAccidentsRegisterServiceImpl extends ServiceImpl<EamReportAccidentsRegisterMapper, EamReportAccidentsRegister> implements IEamReportAccidentsRegisterService {
+@Service("IEamReportAccidentsRegisterService")
+public class EamReportAccidentsRegisterServiceImpl extends ServiceImpl<EamReportAccidentsRegisterMapper, EamReportAccidentsRegister> implements IEamReportAccidentsRegisterService, FlowCallBackServiceI {
 
     @Autowired
     private IBaseFactoryUserService baseFactoryUserService;
@@ -53,6 +67,26 @@
     @Autowired
     @Lazy
     private IEamReportRepairService iEamReportRepairService;
+    @Resource
+    private FlowCommonService flowCommonService;
+
+    @Resource
+    private IFlowDefinitionService flowDefinitionService;
+
+    @Resource
+    private IEamEquipmentService eamEquipmentService;
+
+    @Resource
+    private IFlowMyBusinessService flowMyBusinessService;
+
+    @Resource
+    private TaskService taskService;
+
+    @Resource
+    private IFlowTaskService flowTaskService;
+
+    @Autowired
+    private ISysUserService sysUserService;
     /**
      * 鍒嗛〉鍒楄〃
      * @param page
@@ -127,6 +161,13 @@
             return false;
         }
         BeanUtils.copyProperties(eamReportAccidentsRegisterDto,eamReportAccidentsRegister);
+        eamReportAccidentsRegister.setRegisterStatus(EamReportAccidentsRegisterEnum.PENDING_SUBMIT.name());
+        UpdateWrapper<EamReportRepair> updateWrapper = new UpdateWrapper<>();
+        updateWrapper.eq("id",eamReportAccidentsRegister.getReportId());
+        updateWrapper.set("scrap_part_number",eamReportAccidentsRegister.getScrapPartNumber());
+        updateWrapper.set("scrap_part_quantity",eamReportAccidentsRegister.getScrapPartQuantity());
+        updateWrapper.set("scrap_part_value",eamReportAccidentsRegister.getScrapPartValue());
+        iEamReportRepairService.update(updateWrapper);
         this.updateById(eamReportAccidentsRegister);
         return true;
     }
@@ -137,8 +178,329 @@
      * @return
      */
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public Result<?> submit(String id){
-        return null;
+        EamReportAccidentsRegister eamReportAccidentsRegister=this.getById(id);
+        LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+        EamEquipment eamEquipment = eamEquipmentService.getById(eamReportAccidentsRegister.getEquipmentId());
+        List<UserSelector> userSelectorList = sysUserService.selectOperatorList(eamEquipment.getEquipmentCode(), eamEquipment.getFactoryOrgCode(), BusinessCodeConst.PCR0019);
+        // 鍚姩璁惧浜嬫晠鐧昏娴佺▼
+        flowCommonService.initActBusiness("璁惧缂栧彿锛�" + eamEquipment.getEquipmentCode() + ", 璁惧鍚嶇О锛�" + eamEquipment.getEquipmentName()+"鍙戣捣璁惧浜嬫晠鐧昏娴佺▼",
+                eamReportAccidentsRegister.getId(),
+                "IEamReportAccidentsRegisterService",
+                "eam_report_accidents_register",
+                null);
+        Map<String, Object> variables = new HashMap<>();
+        variables.put("dataId", eamReportAccidentsRegister.getId());
+        variables.put("organization", "鎿嶄綔宸ユ彁浜ゅ惎鍔ㄦ祦绋�");
+        variables.put("comment", "鎿嶄綔宸ユ彁浜ゅ崟鍚姩娴佺▼");
+        variables.put("proofreading", true);
+        if (CollectionUtils.isEmpty(userSelectorList)) {
+            throw new JeecgBootException("璁惧鏈瓨鍦ㄥ尯闀匡紝鏃犳硶杩涘叆涓嬬骇瀹℃壒锛�");
+        }else {
+            List<String> usernameList = userSelectorList.stream().map(UserSelector::getUsername).collect(Collectors.toList());
+            variables.put("NextAssignee", usernameList);
+        }
+        Result result = flowDefinitionService.startProcessInstanceByKey("eam_report_accidents_register", variables);
+        if (!result.isSuccess()) {
+            return Result.error("娴佺▼鍚姩澶辫触");
+        } else {
+            eamReportAccidentsRegister.setConfirmer(user.getUsername());
+            eamReportAccidentsRegister.setConfirmTime(new Date());
+            eamReportAccidentsRegister.setRegisterStatus(EamReportAccidentsRegisterEnum.PENDING_REGIONAL_MANAGER.name());
+            this.updateById(eamReportAccidentsRegister);
+            return result;
+        }
+    }
+
+    /**
+     * 娴佺▼瀹℃牳
+     * @param eamReportAccidentsRegisterDto
+     */
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public Result<?> audit(EamReportAccidentsRegisterDto eamReportAccidentsRegisterDto){
+        EamReportAccidentsRegister eamReportAccidentsRegister = this.baseMapper.selectById(eamReportAccidentsRegisterDto.getId());
+        if (eamReportAccidentsRegister == null) {
+            throw new JeecgBootException("缁翠慨宸ュ崟涓嶅瓨鍦紝璇峰埛鏂伴噸璇曪紒");
+        }
+        // 鑾峰彇褰撳墠鐧诲綍鐢ㄦ埛
+        LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+        if (user == null || StrUtil.isBlank(user.getId())) {
+            throw new JeecgBootException("鏈幏鍙栧埌鐧诲綍鐢ㄦ埛锛岃閲嶆柊鐧诲綍鍚庡啀璇曪紒");
+        }
+        eamReportAccidentsRegisterDto.setAssignee(user.getUsername());
+        // 鑾峰彇娴佺▼涓氬姟璁板綍
+        FlowMyBusiness flowMyBusiness = flowMyBusinessService.getFlowMyBusiness(eamReportAccidentsRegisterDto.getInstanceId());
+        if (flowMyBusiness == null) {
+            throw new JeecgBootException("娴佺▼瀹炰緥涓嶅瓨鍦紝璇峰埛鏂板悗閲嶈瘯锛�");
+        }
+        boolean userAuthorized = isUserAuthorized(flowMyBusiness, user);
+        if (!userAuthorized) {
+            throw new JeecgBootException("鐢ㄦ埛鏃犳潈鎿嶄綔姝や换鍔★紝璇峰埛鏂板悗閲嶈瘯锛�");
+        }
+        // 璁ら浠诲姟
+        if (!claimTask(flowMyBusiness.getTaskId(), user)) {
+            throw new JeecgBootException("浠诲姟涓嶅瓨鍦ㄣ�佸凡瀹屾垚鎴栧凡琚粬浜鸿棰嗭紒");
+        }
+        EamEquipment equipment = eamEquipmentService.getById(eamReportAccidentsRegisterDto.getEquipmentId());
+        if (equipment == null) {
+            throw new JeecgBootException("璁惧涓嶅瓨鍦紝璇锋鏌ワ紒");
+        }
+        EamReportAccidentsRegisterEnum status = EamReportAccidentsRegisterEnum.getInstance(eamReportAccidentsRegister.getRegisterStatus());
+        if (status == null) {
+            return null;
+        }
+        //娴佺▼鍙橀噺
+        Map<String, Object> values = new HashMap<>();
+        List<String> userApprovalList;
+        List<UserSelector> userSelectors;
+        switch (status) {
+            //寰呭尯闀垮鐞�
+            case PENDING_REGIONAL_MANAGER:
+                userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getFactoryOrgCode(), BusinessCodeConst.PCR0020);
+                if (CollectionUtil.isEmpty(userSelectors)) {
+                    throw new JeecgBootException("璁惧鏈瓨鍦ㄤ腑蹇冧富浠伙紝鏃犳硶杩涘叆涓嬬骇瀹℃壒锛�");
+                }else{
+                    userApprovalList= userSelectors.stream().map(UserSelector::getUsername).collect(Collectors.toList());
+                    values.put("NextAssignee", userApprovalList);
+                    values.put("dataId", eamReportAccidentsRegisterDto.getId());
+                    if (StrUtil.isEmpty(eamReportAccidentsRegisterDto.getDistrictConfirm())){
+                        eamReportAccidentsRegisterDto.setDistrictConfirm("");
+                    }
+                    values.put("organization",eamReportAccidentsRegisterDto.getDistrictConfirm());
+                    values.put("comment", eamReportAccidentsRegisterDto.getDistrictConfirm());
+                    eamReportAccidentsRegisterDto.setComment(eamReportAccidentsRegisterDto.getDistrictConfirm());
+                    eamReportAccidentsRegister.setDistrict(user.getUsername());
+                    eamReportAccidentsRegister.setDistrictTime(new Date());
+                    eamReportAccidentsRegister.setDistrictResult(eamReportAccidentsRegisterDto.getDistrictResult());
+                    eamReportAccidentsRegister.setDistrictConfirm(eamReportAccidentsRegisterDto.getDistrictConfirm());
+                    if ("2".equals(eamReportAccidentsRegisterDto.getDistrictResult())){
+                        //鍖洪暱鎷掔粷
+                        eamReportAccidentsRegister.setRegisterStatus(EamReportAccidentsRegisterEnum.REJECTED.name());
+                    }else {
+                        eamReportAccidentsRegister.setRegisterStatus(EamReportAccidentsRegisterEnum.PENDING_CENTER_MANAGER.name());
+                    }
+                }
+                break;
+            //寰呬腑蹇冧富浠诲鐞�
+            case PENDING_CENTER_MANAGER:
+                userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getFactoryOrgCode(), BusinessCodeConst.PCR0002);
+                if (CollectionUtil.isEmpty(userSelectors)) {
+                    throw new JeecgBootException("璁惧鏈瓨鍦ㄧ淮淇伐锛屾棤娉曡繘鍏ヤ笅绾у鎵癸紒");
+                }else{
+                    userApprovalList= userSelectors.stream().map(UserSelector::getUsername).collect(Collectors.toList());
+                    values.put("NextAssignee", userApprovalList);
+                    values.put("dataId", eamReportAccidentsRegisterDto.getId());
+                    if (StrUtil.isEmpty(eamReportAccidentsRegisterDto.getCenterDirectorConfirm())){
+                        eamReportAccidentsRegisterDto.setCenterDirectorConfirm("");
+                    }
+                    values.put("organization",eamReportAccidentsRegisterDto.getCenterDirectorConfirm());
+                    values.put("comment", eamReportAccidentsRegisterDto.getCenterDirectorConfirm());
+                    eamReportAccidentsRegisterDto.setComment(eamReportAccidentsRegisterDto.getCenterDirectorConfirm());
+                    eamReportAccidentsRegister.setCenterDirector(user.getUsername());
+                    eamReportAccidentsRegister.setCenterDirectorTime(new Date());
+                    eamReportAccidentsRegister.setCenterDirectorResult(eamReportAccidentsRegisterDto.getCenterDirectorResult());
+                    eamReportAccidentsRegister.setCenterDirectorConfirm(eamReportAccidentsRegisterDto.getCenterDirectorConfirm());
+                    if ("2".equals(eamReportAccidentsRegisterDto.getCenterDirectorResult())){
+                        //涓績涓讳换鎷掔粷
+                        eamReportAccidentsRegister.setRegisterStatus(EamReportAccidentsRegisterEnum.REJECTED.name());
+                    }else {
+                        eamReportAccidentsRegister.setRegisterStatus(EamReportAccidentsRegisterEnum.PENDING_REPAIR_WORKER.name());
+                    }
+                }
+                break;
+            //寰呯淮淇伐澶勭悊
+            case PENDING_REPAIR_WORKER:
+                userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getFactoryOrgCode(), BusinessCodeConst.PCR0008);
+                if (CollectionUtil.isEmpty(userSelectors)) {
+                    throw new JeecgBootException("璁惧鏈瓨鍦ㄧ淮淇粍闀匡紝鏃犳硶杩涘叆涓嬬骇瀹℃壒锛�");
+                }else{
+                    userApprovalList= userSelectors.stream().map(UserSelector::getUsername).collect(Collectors.toList());
+                    values.put("NextAssignee", userApprovalList);
+                    values.put("dataId", eamReportAccidentsRegisterDto.getId());
+                    if (StrUtil.isEmpty(eamReportAccidentsRegisterDto.getRepairConfirmComment())){
+                        eamReportAccidentsRegisterDto.setRepairConfirmComment("");
+                    }
+                    values.put("organization",eamReportAccidentsRegisterDto.getRepairConfirmComment());
+                    values.put("comment", eamReportAccidentsRegisterDto.getRepairConfirmComment());
+                    eamReportAccidentsRegisterDto.setComment(eamReportAccidentsRegisterDto.getRepairConfirmComment());
+                    eamReportAccidentsRegister.setRepairConfirm(user.getUsername());
+                    eamReportAccidentsRegister.setRepairConfirmTime(new Date());
+                    eamReportAccidentsRegister.setRepairConfirmResult(eamReportAccidentsRegisterDto.getRepairConfirmResult());
+                    eamReportAccidentsRegister.setRepairConfirmComment(eamReportAccidentsRegisterDto.getRepairConfirmComment());
+                    eamReportAccidentsRegister.setReportStartTime(eamReportAccidentsRegisterDto.getReportStartTime());
+                    eamReportAccidentsRegister.setEquipmentStatus(eamReportAccidentsRegisterDto.getEquipmentStatus());
+                    eamReportAccidentsRegister.setCauseAnalysis(eamReportAccidentsRegisterDto.getCauseAnalysis());
+                    eamReportAccidentsRegister.setInspectionResults(eamReportAccidentsRegisterDto.getInspectionResults());
+                    eamReportAccidentsRegister.setTakeSteps(eamReportAccidentsRegisterDto.getTakeSteps());
+                    eamReportAccidentsRegister.setSuggestionTakeSteps(eamReportAccidentsRegisterDto.getSuggestionTakeSteps());
+                    eamReportAccidentsRegister.setSuggestionTakeStepsTime(eamReportAccidentsRegisterDto.getSuggestionTakeStepsTime());
+                    if ("2".equals(eamReportAccidentsRegisterDto.getRepairConfirmResult())){
+                        //缁翠慨缁勯暱鎷掔粷
+                        eamReportAccidentsRegister.setRegisterStatus(EamReportAccidentsRegisterEnum.REJECTED.name());
+                    }else {
+                        eamReportAccidentsRegister.setRegisterStatus(EamReportAccidentsRegisterEnum.PENDING_REPAIR_TEAM_LEADER.name());
+                    }
+                }
+                break;
+            //寰呯淮淇粍闀垮鐞�
+            case PENDING_REPAIR_TEAM_LEADER:
+                userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getFactoryOrgCode(), BusinessCodeConst.PCR0013);
+                if (CollectionUtil.isEmpty(userSelectors)) {
+                    throw new JeecgBootException("璁惧鏈瓨鍦ㄧ淮淇粍闀匡紝鏃犳硶杩涘叆涓嬬骇瀹℃壒");
+                }
+                userApprovalList= userSelectors.stream().map(UserSelector::getUsername).collect(Collectors.toList());
+                values.put("NextAssignee", userApprovalList);
+                if (StrUtil.isEmpty(eamReportAccidentsRegisterDto.getRepairGroupLeaderComment())){
+                    eamReportAccidentsRegisterDto.setRepairGroupLeaderComment("");
+                }
+                values.put("organization",eamReportAccidentsRegisterDto.getRepairGroupLeaderComment());
+                values.put("comment", eamReportAccidentsRegisterDto.getRepairGroupLeaderComment());
+                eamReportAccidentsRegisterDto.setComment(eamReportAccidentsRegisterDto.getRepairGroupLeaderComment());
+                eamReportAccidentsRegister.setRepairGroupLeader(user.getUsername());
+                eamReportAccidentsRegister.setRepairGroupLeaderTime(new Date());
+                eamReportAccidentsRegister.setRepairGroupLeaderResult(eamReportAccidentsRegisterDto.getRepairGroupLeaderResult());
+                eamReportAccidentsRegister.setRepairGroupLeaderComment(eamReportAccidentsRegisterDto.getRepairGroupLeaderComment());
+                if ("2".equals(eamReportAccidentsRegisterDto.getRepairGroupLeaderResult())){
+                    //缁翠慨缁勯暱鎷掔粷
+                    eamReportAccidentsRegister.setRegisterStatus(EamReportAccidentsRegisterEnum.REJECTED.name());
+                }else {
+                    eamReportAccidentsRegister.setRegisterStatus(EamReportAccidentsRegisterEnum.PENDING_REPAIR_REGIONAL_MANAGER.name());
+                }
+                break;
+            //寰呯淮淇尯闀垮鐞�
+            case PENDING_REPAIR_REGIONAL_MANAGER:
+                userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getFactoryOrgCode(), BusinessCodeConst.PCR0021);
+                if (CollectionUtil.isEmpty(userSelectors)) {
+                    throw new JeecgBootException("璁惧鏈瓨鍦ㄦ妧鏈礋璐d汉锛屾棤娉曡繘鍏ヤ笅绾у鎵�");
+                }
+                userApprovalList= userSelectors.stream().map(UserSelector::getUsername).collect(Collectors.toList());
+                values.put("NextAssignee", userApprovalList);
+                if (StrUtil.isEmpty(eamReportAccidentsRegisterDto.getRepairDistrictComment())){
+                    eamReportAccidentsRegisterDto.setRepairDistrictComment("");
+                }
+                values.put("organization",eamReportAccidentsRegisterDto.getRepairDistrictComment());
+                values.put("comment", eamReportAccidentsRegisterDto.getRepairDistrictComment());
+                eamReportAccidentsRegisterDto.setComment(eamReportAccidentsRegisterDto.getRepairDistrictComment());
+                eamReportAccidentsRegister.setRepairDistrict(user.getUsername());
+                eamReportAccidentsRegister.setRepairDistrictTime(new Date());
+                eamReportAccidentsRegister.setRepairDistrictResult(eamReportAccidentsRegisterDto.getRepairDistrictResult());
+                eamReportAccidentsRegister.setRepairDistrictComment(eamReportAccidentsRegisterDto.getRepairDistrictComment());
+                if ("2".equals(eamReportAccidentsRegisterDto.getCenterDirectorResult())){
+                    //缁翠慨鍖洪暱鎷掔粷
+                    eamReportAccidentsRegister.setRegisterStatus(EamReportAccidentsRegisterEnum.REJECTED.name());
+                }else {
+                    eamReportAccidentsRegister.setRegisterStatus(EamReportAccidentsRegisterEnum.PENDING_REPAIR_REGIONAL_MANAGER.name());
+                }
+                break;
+            //寰呮妧鏈礋璐d汉澶勭悊
+            case PENDING_TECHNICAL_RESPONSIBLE:
+                userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getFactoryOrgCode(), BusinessCodeConst.PCR0022);
+                if (CollectionUtil.isEmpty(userSelectors)) {
+                    throw new JeecgBootException("璁惧鏈瓨鍦ㄦ妧鏈富绠″绾ч瀵硷紝鏃犳硶杩涘叆涓嬬骇瀹℃壒");
+                }
+                userApprovalList= userSelectors.stream().map(UserSelector::getUsername).collect(Collectors.toList());
+                values.put("NextAssignee", userApprovalList);
+                if (StrUtil.isEmpty(eamReportAccidentsRegisterDto.getTechnicalDirectorConfirm())){
+                    eamReportAccidentsRegisterDto.setTechnicalDirectorConfirm("");
+                }
+                values.put("organization",eamReportAccidentsRegisterDto.getTechnicalDirectorConfirm());
+                values.put("comment", eamReportAccidentsRegisterDto.getTechnicalDirectorConfirm());
+                eamReportAccidentsRegisterDto.setComment(eamReportAccidentsRegisterDto.getTechnicalDirectorConfirm());
+                eamReportAccidentsRegister.setCheckAgree(eamReportAccidentsRegisterDto.getCheckAgree());
+                eamReportAccidentsRegister.setDisagreeReason(eamReportAccidentsRegisterDto.getDisagreeReason());
+                eamReportAccidentsRegister.setRectificationMeasures(eamReportAccidentsRegisterDto.getRectificationMeasures());
+                eamReportAccidentsRegister.setAccidentConclusion(eamReportAccidentsRegisterDto.getAccidentConclusion());
+                eamReportAccidentsRegister.setTechnicalDirector(user.getUsername());
+                eamReportAccidentsRegister.setTechnicalDirectorTime(new Date());
+                eamReportAccidentsRegister.setTechnicalDirectorResult(eamReportAccidentsRegisterDto.getTechnicalDirectorResult());
+                eamReportAccidentsRegister.setTechnicalDirectorConfirm(eamReportAccidentsRegisterDto.getTechnicalDirectorConfirm());
+                if ("2".equals(eamReportAccidentsRegisterDto.getCenterDirectorResult())){
+                    //鎶�鏈礋璐d汉鎷掔粷
+                    eamReportAccidentsRegister.setRegisterStatus(EamReportAccidentsRegisterEnum.REJECTED.name());
+                }else {
+                    eamReportAccidentsRegister.setRegisterStatus(EamReportAccidentsRegisterEnum.PENDING_TECHNICAL_SUPERVISOR.name());
+                }
+                break;
+            //寰呮妧鏈富绠″绾ч瀵煎鐞�
+            case PENDING_TECHNICAL_SUPERVISOR:
+                userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getFactoryOrgCode(), BusinessCodeConst.PCR0023);
+                if (CollectionUtil.isEmpty(userSelectors)) {
+                    throw new JeecgBootException("璁惧鏈瓨鍦ㄤ富绠¢儴绾ч瀵硷紝鏃犳硶杩涘叆涓嬬骇瀹℃壒");
+                }
+                userApprovalList= userSelectors.stream().map(UserSelector::getUsername).collect(Collectors.toList());
+                values.put("NextAssignee", userApprovalList);
+                if (StrUtil.isEmpty(eamReportAccidentsRegisterDto.getTechnicalDirectorLeaderConfirm())){
+                    eamReportAccidentsRegisterDto.setTechnicalDirectorLeaderConfirm("");
+                }
+                values.put("organization",eamReportAccidentsRegisterDto.getTechnicalDirectorLeaderConfirm());
+                values.put("comment", eamReportAccidentsRegisterDto.getTechnicalDirectorLeaderConfirm());
+                eamReportAccidentsRegisterDto.setComment(eamReportAccidentsRegisterDto.getTechnicalDirectorLeaderConfirm());
+                eamReportAccidentsRegister.setTechnicalDirectorLeader(user.getUsername());
+                eamReportAccidentsRegister.setTechnicalDirectorLeaderTime(new Date());
+                eamReportAccidentsRegister.setTechnicalDirectorLeaderResult(eamReportAccidentsRegisterDto.getTechnicalDirectorLeaderResult());
+                eamReportAccidentsRegister.setTechnicalDirectorLeaderConfirm(eamReportAccidentsRegisterDto.getTechnicalDirectorLeaderConfirm());
+                if ("2".equals(eamReportAccidentsRegisterDto.getCenterDirectorResult())){
+                    //鎶�鏈富绠″绾ч瀵兼嫆缁�
+                    eamReportAccidentsRegister.setRegisterStatus(EamReportAccidentsRegisterEnum.REJECTED.name());
+                }else {
+                    eamReportAccidentsRegister.setRegisterStatus(EamReportAccidentsRegisterEnum.PENDING_SUPERIOR_DEPARTMENT.name());
+                }
+                break;
+            //寰呬富绠¢儴绾ч瀵煎鐞�
+            case PENDING_SUPERIOR_DEPARTMENT:
+                if (StrUtil.isEmpty(eamReportAccidentsRegisterDto.getTechnicalDirectorPartConfirm())){
+                    eamReportAccidentsRegisterDto.setTechnicalDirectorPartConfirm("");
+                }
+                values.put("organization",eamReportAccidentsRegisterDto.getTechnicalDirectorPartConfirm());
+                values.put("comment", eamReportAccidentsRegisterDto.getTechnicalDirectorPartConfirm());
+                eamReportAccidentsRegisterDto.setComment(eamReportAccidentsRegisterDto.getTechnicalDirectorPartConfirm());
+                eamReportAccidentsRegister.setTechnicalDirectorPart(user.getUsername());
+                eamReportAccidentsRegister.setTechnicalDirectorPartTime(new Date());
+                eamReportAccidentsRegister.setTechnicalDirectorPartResult(eamReportAccidentsRegisterDto.getTechnicalDirectorPartResult());
+                eamReportAccidentsRegister.setTechnicalDirectorPartConfirm(eamReportAccidentsRegisterDto.getTechnicalDirectorPartConfirm());
+                if ("2".equals(eamReportAccidentsRegisterDto.getCenterDirectorResult())){
+                    //鎶�鏈富绠″绾ч瀵兼嫆缁�
+                    eamReportAccidentsRegister.setRegisterStatus(EamReportAccidentsRegisterEnum.REJECTED.name());
+                }else {
+                    eamReportAccidentsRegister.setRegisterStatus(EamReportAccidentsRegisterEnum.REPAIR_COMPLETED.name());
+                }
+                break;
+            default:
+                throw  new JeecgBootException("瀹℃壒澶辫触");
+        }
+        eamReportAccidentsRegisterDto.setValues(values);
+        Result result = flowTaskService.complete(eamReportAccidentsRegisterDto);
+        if (!result.isSuccess()) {
+            throw new JeecgBootException("瀹℃壒澶辫触锛岃鍒锋柊鏌ョ湅锛�");
+        }
+        //淇濆瓨宸ュ崟
+        this.updateById(eamReportAccidentsRegister);
+        return result;
+    }
+
+    private boolean claimTask(String taskId, LoginUser user) {
+        Task task = taskService.createTaskQuery().taskId(taskId).singleResult();
+        if (task == null) {
+            return false;
+        }
+        if (task.getAssignee() != null && !task.getAssignee().equals(user.getUsername())) {
+            return false;
+        }
+        taskService.claim(taskId, user.getUsername());
+        return true;
+    }
+
+    /**
+     * 鍒ゆ柇鐢ㄦ埛鏄惁鎷ユ湁姝ゆ潈闄�
+     * @param flowMyBusiness
+     * @param user
+     * @return
+     */
+    private boolean isUserAuthorized(FlowMyBusiness flowMyBusiness, LoginUser user) {
+        List<String> todoUsers = JSON.parseArray(flowMyBusiness.getTodoUsers(), String.class);
+        return todoUsers != null && todoUsers.contains(user.getUsername());
     }
 
     /**
@@ -167,4 +529,26 @@
         this.removeById(id);
         return true;
     }
+
+    @Override
+    public void afterFlowHandle(FlowMyBusiness business) {
+
+    }
+
+    @Override
+    public Object getBusinessDataById(String dataId) {
+        return null;
+    }
+
+    @Override
+    public Map<String, Object> flowValuesOfTask(String taskNameId, Map<String, Object> values) {
+        return Collections.emptyMap();
+    }
+
+    @Override
+    public List<String> flowCandidateUsernamesOfTask(String taskNameId, Map<String, Object> values) {
+        //鑾峰彇涓嬩竴姝ュ鐞嗕汉
+        Object object = values.get("NextAssignee");
+        return (List<String>) object;
+    }
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamRepairOrderController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamRepairOrderController.java
index 33c2fa8..f840478 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamRepairOrderController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamRepairOrderController.java
@@ -86,7 +86,7 @@
         // 鏍¢獙棰嗗彇鏉冮檺
         LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
         if (!BusinessCodeConst.PCR0002.equals(user.getPost())) {
-            return Result.error("鎻愪氦澶辫触,娌℃湁鎻愪氦鏉冮檺锛�,璇风櫥褰曠淮淇伐宀椾綅鐢ㄦ埛");
+            return Result.error("鎻愪氦澶辫触,娌℃湁鎻愪氦鏉冮檺锛�,闇�缁翠慨宸ユ彁浜�");
         }
         eamRepairOrderService.saveRepairOrder(id);
         return Result.OK("鎻愪氦鎴愬姛锛�");
@@ -137,7 +137,7 @@
         // 鏍¢獙棰嗗彇鏉冮檺
         LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
         if (!BusinessCodeConst.PCR0002.equals(user.getPost())) {
-            return Result.error("濉姤澶辫触,娌℃湁濉姤鏉冮檺锛�,璇风櫥褰曠淮淇伐宀椾綅鐢ㄦ埛");
+            return Result.error("濉姤澶辫触,娌℃湁濉姤鏉冮檺锛�,闇�缁翠慨宸ユ彁浜�");
         }
         if (eamRepairOrderDto == null) {
             return Result.error("濉姤鐨勫璞′笉鑳戒负绌猴紒");
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamReportAccidentsRegisterController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamReportAccidentsRegisterController.java
index bd34547..cb14634 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamReportAccidentsRegisterController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamReportAccidentsRegisterController.java
@@ -10,6 +10,7 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
+import cn.hutool.core.util.StrUtil;
 import org.apache.shiro.SecurityUtils;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.system.query.QueryGenerator;
@@ -17,7 +18,9 @@
 import org.jeecg.common.util.oConvertUtils;
 import org.jeecg.modules.eam.constant.BusinessCodeConst;
 import org.jeecg.modules.eam.dto.EamReportAccidentsRegisterDto;
+import org.jeecg.modules.eam.entity.EamRepairOrder;
 import org.jeecg.modules.eam.entity.EamReportAccidentsRegister;
+import org.jeecg.modules.eam.request.EamRepairOrderRequest;
 import org.jeecg.modules.eam.request.EamReportAccidentsRegisterQuery;
 import org.jeecg.modules.eam.service.IEamReportAccidentsRegisterService;
 
@@ -117,7 +120,7 @@
 		 // 鏍¢獙棰嗗彇鏉冮檺
 		 LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
 		 if (!BusinessCodeConst.PCR0001.equals(user.getPost())) {
-			 return Result.error("濉姤澶辫触,娌℃湁濉姤鏉冮檺锛�,璇风櫥褰曟搷浣滃伐宀椾綅鐢ㄦ埛");
+			 return Result.error("濉姤澶辫触,娌℃湁濉姤鏉冮檺锛�,闇�鎿嶄綔宸ユ彁浜�");
 		 }
 		 if (eamReportAccidentsRegisterDto == null) {
 			 return Result.error("濉姤鐨勫璞′笉鑳戒负绌猴紒");
@@ -131,6 +134,44 @@
 		 }
 	 }
 
+	 /**
+	  * 鎿嶄綔宸ユ彁浜�-鍙戣捣娴佺▼
+	  * @param id
+	  * @return
+	  */
+	 @ApiOperation(value = "璁惧浜嬫晠鐧昏琛�-鎻愪氦", notes = "璁惧浜嬫晠鐧昏琛�-鎻愪氦")
+	 @GetMapping(value = "/submit")
+	 public Result<?> submit(String id){
+		 // 鏍¢獙棰嗗彇鏉冮檺
+		 LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+		 if (!BusinessCodeConst.PCR0001.equals(user.getPost())) {
+			 return Result.error("鎻愪氦澶辫触,娌℃湁鎻愪氦鏉冮檺锛�,闇�鎿嶄綔宸ユ彁浜�");
+		 }
+		 eamReportAccidentsRegisterService.submit(id);
+		 return Result.OK("鎻愪氦鎴愬姛锛�");
+	 }
+
+	 /**
+	  * 鎴戠殑寰呭姙 鎵ц/瀹℃壒
+	  *
+	  * @param eamReportAccidentsRegisterDto
+	  * @return
+	  */
+	 @AutoLog(value = "璁惧浜嬫晠鐧昏琛�-鎵ц/瀹℃壒")
+	 @ApiOperation(value = "璁惧浜嬫晠鐧昏琛�-鎵ц/瀹℃壒", notes = "璁惧浜嬫晠鐧昏琛�-鎵ц/瀹℃壒")
+	 @PostMapping(value = "/perform")
+	 public Result<?> perform(@RequestBody EamReportAccidentsRegisterDto eamReportAccidentsRegisterDto) {
+		 if (eamReportAccidentsRegisterDto == null) {
+			 return Result.error("瀹℃壒鐨勫璞′笉鑳戒负绌猴紒");
+		 }
+		 // 妫�鏌ヨ姹傚弬鏁�
+		 if (StrUtil.isBlank(eamReportAccidentsRegisterDto.getTaskId()) || StrUtil.isBlank(eamReportAccidentsRegisterDto.getDataId()) || StrUtil.isBlank(eamReportAccidentsRegisterDto.getInstanceId())) {
+			 return Result.error("瀹℃壒浠诲姟閿欒鎴栦笉瀛樺湪锛�");
+		 }
+		 return  eamReportAccidentsRegisterService.audit(eamReportAccidentsRegisterDto);
+	 }
+
+
 	/**
 	 *   閫氳繃id鍒犻櫎
 	 *
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamReportProductHazardsController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamReportProductHazardsController.java
index a134dcd..a874675 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamReportProductHazardsController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamReportProductHazardsController.java
@@ -162,7 +162,7 @@
 		 // 鏍¢獙棰嗗彇鏉冮檺
 		 LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
 		 if (!BusinessCodeConst.PCR0001.equals(user.getPost())) {
-			 return Result.error("濉姤澶辫触,娌℃湁濉姤鏉冮檺锛�,璇风櫥褰曟搷浣滃伐宀椾綅鐢ㄦ埛");
+			 return Result.error("濉姤澶辫触,娌℃湁濉姤鏉冮檺锛�,闇�鎿嶄綔宸ユ彁浜�");
 		 }
 		 if (eamReportProductHazardsDto == null) {
 			 return Result.error("濉姤鐨勫璞′笉鑳戒负绌猴紒");
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 854da31..96338b7 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
@@ -347,6 +347,16 @@
         variables.put("organization", "淇濆吇瑙勮寖鍚姩娴佺▼");
         variables.put("comment", "淇濆吇瑙勮寖鍚姩娴佺▼");
         variables.put("proofreading", true);
+        EamEquipment eamEquipment = eamEquipmentService.getById(maintenanceStandard.getEquipmentId());
+        List<UserSelector> userSelectorList = sysUserService.selectOperatorList(eamEquipment.getEquipmentCode(), eamEquipment.getFactoryOrgCode(), BusinessCodeConst.PCR0008);
+        if (!CollectionUtils.isEmpty(userSelectorList)) {
+            List<String> usernameList = userSelectorList.stream().map(UserSelector::getUsername).collect(Collectors.toList());
+            if (CollectionUtils.isNotEmpty(usernameList)) {
+                variables.put("NextAssignee", usernameList);
+            }else {
+                throw new JeecgBootException("璁惧鏈瓨鍦ㄧ淮淇涓讳换锛屾棤娉曡繘鍏ヤ笅绾у鎵癸紒");
+            }
+        }
         Result result = flowDefinitionService.startProcessInstanceByKey("eam_maintenance_standard", variables);
         if (!result.isSuccess()) {
             super.removeById(maintenanceStandard.getId());
@@ -362,14 +372,6 @@
             );
             if (businessList.isEmpty()) {
                 return Result.error("娴佺▼璁板綍涓嶅瓨鍦�");
-            }
-            FlowMyBusiness flowMyBusiness = businessList.get(0);
-            EamEquipment eamEquipment = eamEquipmentService.getById(maintenanceStandard.getEquipmentId());
-            List<UserSelector> userSelectorList = sysUserService.selectOperatorList(eamEquipment.getEquipmentCode(), eamEquipment.getFactoryOrgCode(), BusinessCodeConst.PCR0008);
-            if (!CollectionUtils.isEmpty(userSelectorList)) {
-                List<String> usernameList = userSelectorList.stream().map(UserSelector::getUsername).collect(Collectors.toList());
-                flowMyBusiness.setTodoUsers(JSON.toJSONString(usernameList));
-                flowMyBusinessService.updateById(flowMyBusiness);
             }
         }
         return result;
@@ -441,22 +443,7 @@
                         eamMaintenanceStandard.setStandardStatus(MaintenanceStandardStatusEnum.REJECTED.name());
                     }
                     if (eamMaintenanceStandardVo.getRepairManagerApproveResult().equals("1")) {
-                        List<FlowMyBusiness> newbusinessList = flowMyBusinessService.list(
-                                new QueryWrapper<FlowMyBusiness>()
-                                        .eq("process_instance_id", eamMaintenanceStandardVo.getInstanceId()));
-                        FlowMyBusiness newflowMyBusiness = newbusinessList.get(0);
                         eamMaintenanceStandard.setStandardStatus(MaintenanceStandardStatusEnum.WAIT_TECHNICAL_DIRECTOR.name());
-                        //鑾峰彇flow鐨勬祦绋嬪疄渚媔d,璁剧疆涓嬩竴姝ョ殑澶勭悊浜哄憳
-                        EamMaintenanceStandard maintenanceStandard = this.getById(eamMaintenanceStandardVo.getDataId());
-                        EamEquipment eamEquipment = eamEquipmentService.getById(maintenanceStandard.getEquipmentId());
-                        List<UserSelector> userSelectorList = sysUserService.selectOperatorList(eamEquipment.getEquipmentCode(), eamEquipment.getFactoryOrgCode(), BusinessCodeConst.PCR0009);
-                        if (!CollectionUtils.isEmpty(userSelectorList)) {
-                            List<String> usernameList = userSelectorList.stream().map(UserSelector::getUsername).collect(Collectors.toList());
-                            newflowMyBusiness.setTodoUsers(JSON.toJSONString(usernameList));
-                            flowMyBusinessService.updateById(newflowMyBusiness);
-                        }else {
-                            throw new JeecgBootException("璁惧鏈瓨鍦ㄧ鐞嗗憳锛屾棤娉曡繘鍏ヤ笅绾у鎵癸紒");
-                        }
                     } else {
                         eamMaintenanceStandard.setStandardStatus(MaintenanceStandardStatusEnum.WAIT_SUBMIT.name());
                     }
@@ -517,6 +504,16 @@
             values.put("organization", eamMaintenanceStandardVo.getTechnicalManagerApproveComment());
             values.put("comment", eamMaintenanceStandardVo.getTechnicalManagerApproveComment());
         }
+        List<UserSelector> userSelectorList=new ArrayList<>();
+        if (eamMaintenanceStandardVo.getRepairManagerApproveResult() != null) {
+            //鑾峰彇flow鐨勬祦绋嬪疄渚媔d,璁剧疆涓嬩竴姝ョ殑澶勭悊浜哄憳
+            EamMaintenanceStandard maintenanceStandard = this.getById(eamMaintenanceStandardVo.getDataId());
+            EamEquipment eamEquipment = eamEquipmentService.getById(maintenanceStandard.getEquipmentId());
+            userSelectorList = sysUserService.selectOperatorList(eamEquipment.getEquipmentCode(), eamEquipment.getFactoryOrgCode(), BusinessCodeConst.PCR0009);
+            if (CollectionUtils.isEmpty(userSelectorList)) {
+                throw new JeecgBootException("璁惧鏈瓨鍦ㄧ鐞嗗憳锛屾棤娉曡繘鍏ヤ笅绾у鎵癸紒");
+            }
+        }
         return values;
     }
 
@@ -540,8 +537,9 @@
 
     @Override
     public List<String> flowCandidateUsernamesOfTask(String taskNameId, Map<String, Object> values) {
-        //涓氬姟鏄惁骞查娴佺▼锛屼笟鍔″共棰勶紝娴佺▼骞查锛屾寚瀹氫汉鍛樿繘琛屽鐞�
-        return null;
+        //鑾峰彇涓嬩竴姝ュ鐞嗕汉
+        Object object = values.get("NextAssignee");
+        return (List<String>) object;
     }
 
     /*娴佺▼涓氬姟浠g爜--------------------------缁撴潫*/

--
Gitblit v1.9.3