From 7cd4326bda3ce46633e8590ba4e36c5d92d0e001 Mon Sep 17 00:00:00 2001
From: zhangherong <571457620@qq.com>
Date: 星期三, 09 七月 2025 18:51:39 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java               |    2 
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/dto/EamEquipmentDto.java                                |  413 +++++++++++++++++++++++++++++++++++++++++++++
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/BaseFactoryServiceImpl.java |   47 +++++
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/IBaseFactoryService.java         |    5 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java                         |   25 ++
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamEquipment.java                                |    4 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java            |    3 
 7 files changed, 490 insertions(+), 9 deletions(-)

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
new file mode 100644
index 0000000..0ff795d
--- /dev/null
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/dto/EamEquipmentDto.java
@@ -0,0 +1,413 @@
+package org.jeecg.modules.eam.dto;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import org.jeecg.common.aspect.annotation.Dict;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 璁惧鍙拌处瀵煎叆涓撶敤
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class EamEquipmentDto {
+    /**
+     * 涓婚敭
+     */
+    @TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "涓婚敭")
+    private String id;
+    /**
+     * 鍒涘缓浜�
+     */
+    @ApiModelProperty(value = "鍒涘缓浜�")
+    @Dict(dicCode = "sys_user, realname, username")
+    private String createBy;
+    /**
+     * 鍒涘缓鏃堕棿
+     */
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss ")
+    private Date createTime;
+    /**
+     * 鏇存柊浜�
+     */
+    @ApiModelProperty(value = "鏇存柊浜�")
+    @Dict(dicCode = "sys_user, realname, username")
+    private String updateBy;
+    /**
+     * 鏇存柊鏃堕棿
+     */
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss ")
+    private Date updateTime;
+    /**
+     * 鍒犻櫎鏍囪
+     */
+    @ApiModelProperty(value = "鍒犻櫎鏍囪")
+    private Integer delFlag;
+    /**
+     * 鍏抽敭璁惧鏍囪瘑
+     */
+    @Excel(name = "鍏抽敭璁惧鏍囪瘑", width = 15, orderNum = "1")
+    @ApiModelProperty(value = "鍏抽敭璁惧鏍囪瘑")
+    @Dict(dicCode = "equipment_importance")
+    private String equipmentImportance;
+
+    /**
+     * 缁熶竴缂栫爜
+     */
+    @Excel(name = "缁熶竴缂栫爜", width = 15, orderNum = "2")
+    @ApiModelProperty(value = "缁熶竴缂栫爜")
+    private String equipmentCode;
+    /**
+     * 璁惧鍚嶇О
+     */
+    @Excel(name = "璁惧鍚嶇О", width = 15, orderNum = "3")
+    @ApiModelProperty(value = "璁惧鍚嶇О")
+    private String equipmentName;
+
+    /**
+     * 宸ユ
+     */
+    @Excel(name = "涓績/宸ュ尯/宸ユ", width = 15, orderNum = "4",dictTable = "eam_base_factory",dicText = "factory_name",dicCode = "org_code")
+    @ApiModelProperty(value = "涓績/宸ュ尯/宸ユ")
+    @Dict(dictTable = "eam_base_factory",dicText = "factory_name",dicCode = "factory_code")
+    private String factoryOrgCode;
+
+    /**
+     * 鎵�灞炲垎绫�
+     */
+    @Excel(name = "鎵�灞炲垎绫�", width = 15, orderNum = "5")
+    @ApiModelProperty(value = "鎵�灞炲垎绫�")
+    @Dict(dicCode = "equipment_category")
+    private String equipmentCategory;
+
+    @TableField(exist = false)
+    @Excel(name = "淇濆吇鐘舵��", width = 15, orderNum = "6",dicCode = "equipment_maintenance_status")
+    @ApiModelProperty(value = "淇濆吇鐘舵��")
+    @Dict(dicCode = "equipment_maintenance_status")
+    private String maintenanceStatus;
+
+    @TableField(exist = false)
+    @Excel(name = "缁翠慨鐘舵��", width = 15, orderNum = "7",dicCode = "equipment_repair_status")
+    @ApiModelProperty(value = "缁翠慨鐘舵��")
+    @Dict(dicCode = "equipment_repair_status")
+    private String repairStatus;
+
+
+    /**鎶�鏈姸鎬�*/
+    @TableField(exist = false)
+    @Excel(name = "鎶�鏈姸鎬�", width = 15, orderNum = "8",dicCode = "equipment_technology_status")
+    @ApiModelProperty(value = "鎶�鏈姸鎬�")
+    @Dict(dicCode = "equipment_technology_status")
+    private String technologyStatus;
+
+    /**
+     * ABC鏍囪瘑
+     */
+    @Excel(name = "ABC鏍囪瘑", width = 15, orderNum = "9",dicCode = "abc_flag")
+    @ApiModelProperty(value = "ABC鏍囪瘑")
+    @Dict(dicCode = "abc_flag")
+    private String abcFlag;
+
+    /**
+     * 缁翠慨鐝粍
+     */
+    @Excel(name = "缁翠慨鐝粍", width = 15, orderNum = "10",dictTable = "eam_base_repair_depart",dicText = "depart_name",dicCode = "org_code")
+    @ApiModelProperty(value = "缁翠慨鐝粍")
+    @Dict(dictTable = "eam_base_repair_depart",dicText = "depart_name",dicCode = "org_code")
+    private String repairDepartOrgCode;
+
+    /**
+     * 瀹夊叏閰嶇疆
+     */
+    @Excel(name = "瀹夊叏閰嶇疆", width = 15, orderNum = "11")
+    @ApiModelProperty(value = "瀹夊叏閰嶇疆")
+    private String securityConfiguration;
+
+    /**
+     * 鍐峰嵈绯荤粺
+     */
+    @Excel(name = "鍐峰嵈绯荤粺", width = 15, orderNum = "15",dicCode = "cooling_system")
+    @ApiModelProperty(value = "鍐峰嵈绯荤粺")
+    @Dict(dicCode = "cooling_system")
+    private String coolSystem;
+
+    /**
+     * 鐏伀鍣�
+     */
+    @Excel(name = "鐏伀鍣�", width = 15, orderNum = "16")
+    @ApiModelProperty(value = "鐏伀鍣�")
+    private String fireExtinguisher;
+
+    /**
+     * 鐏伀鍣ㄦ湁鏁堟湡鑷�
+     */
+    @Excel(name = "鐏伀鍣ㄦ湁鏁堟湡鑷�", width = 15, orderNum = "17")
+    @ApiModelProperty(value = "鐏伀鍣ㄦ湁鏁堟湡鑷�")
+    private String fireExtinguisherExpirationDate;
+
+    /**
+     * 鎿嶄綔绯荤粺
+     */
+    @Excel(name = "鎿嶄綔绯荤粺", width = 15, orderNum = "18",dicCode = "yn")
+    @ApiModelProperty(value = "鎿嶄綔绯荤粺")
+    @Dict(dicCode = "yn")
+    private String operationSystem;
+
+    /**
+     * 绯荤粺
+     */
+    @Excel(name = "绯荤粺", width = 15, orderNum = "19")
+    @ApiModelProperty(value = "绯荤粺")
+    private String system;
+
+    /**
+     * 璁惧绔彛
+     */
+    @Excel(name = "璁惧绔彛", width = 15, orderNum = "20")
+    @ApiModelProperty(value = "璁惧绔彛")
+    private String equipmentPort;
+
+    /**
+     * 鍧愭爣鏁伴噺
+     */
+    @Excel(name = "鍧愭爣鏁伴噺", width = 15, orderNum = "21")
+    @ApiModelProperty(value = "鍧愭爣鏁伴噺")
+    private Integer coordinateNum;
+
+    /**
+     * 閲嶉噺(鍚�)
+     */
+    @Excel(name = "閲嶉噺(鍚�)", width = 15, orderNum = "22")
+    @ApiModelProperty(value = "閲嶉噺(鍚�)")
+    private BigDecimal equipmentWeight;
+
+    /**
+     * 閲嶉噺璁¢噺鍗曚綅
+     */
+    @Excel(name = "閲嶉噺璁¢噺鍗曚綅", width = 15, orderNum = "23")
+    @ApiModelProperty(value = "閲嶉噺璁¢噺鍗曚綅")
+    private String weightUnit;
+
+    /**
+     * 鍔熻兘浣嶇疆
+     */
+    @Excel(name = "鍔熻兘浣嶇疆", width = 15, orderNum = "24")
+    @ApiModelProperty(value = "鍔熻兘浣嶇疆")
+    private String functionalLocation;
+
+    /**
+     * 瀹夎浣嶇疆
+     */
+    @Excel(name = "瀹夎浣嶇疆", width = 15, orderNum = "25")
+    @ApiModelProperty(value = "瀹夎浣嶇疆")
+    private String installationPosition;
+
+    /**
+     * 鍑哄巶鏃ユ湡
+     */
+    @Excel(name = "鍑哄巶鏃ユ湡", width = 25, format = "yyyy/MM/dd", orderNum = "26")
+    @ApiModelProperty(value = "鍑哄巶鏃ユ湡")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    private Date leaveFactoryDate;
+
+    /**
+     * 绔嬮」鍗″彿
+     */
+    @Excel(name = "绔嬮」鍗″彿", width = 15, orderNum = "27")
+    @ApiModelProperty(value = "绔嬮」鍗″彿")
+    private String cardNumber;
+
+    /**
+     * 璧勯噾鏉ユ簮
+     */
+    @Excel(name = "璧勯噾鏉ユ簮", width = 15, orderNum = "28")
+    @ApiModelProperty(value = "璧勯噾鏉ユ簮")
+    private String fundingSource;
+
+    /**
+     * 楠屾敹鏃ユ湡
+     */
+    @Excel(name = "鎶曠敤鏃ユ湡", width = 25, format = "yyyy/MM/dd", orderNum = "29")
+    @ApiModelProperty(value = "楠屾敹鏃ユ湡")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    private Date acceptanceCheckDate;
+
+    /**
+     * 鍑哄巶缂栧彿
+     */
+    @Excel(name = "鍑哄巶缂栧彿", width = 15, orderNum = "30")
+    @ApiModelProperty(value = "鍑哄巶缂栧彿")
+    private String factoryNumber;
+
+    /**
+     * 璧勪骇鍒堕�犲晢
+     */
+    @Excel(name = "璧勪骇鍒堕�犲晢", width = 25, orderNum = "31")
+    @ApiModelProperty(value = "璧勪骇鍒堕�犲晢")
+    private String manufacturingEnterprise;
+
+    /**
+     * 璧勪骇鏉ユ簮鍥藉
+     */
+    @Excel(name = "璧勪骇鏉ユ簮鍥藉", width = 25, orderNum = "32")
+    @ApiModelProperty(value = "璧勪骇鏉ユ簮鍥藉")
+    private String originCountry;
+
+    /**
+     * 鍨嬪彿
+     */
+    @Excel(name = "鍨嬪彿", width = 15, orderNum = "33")
+    @ApiModelProperty(value = "鍨嬪彿")
+    private String equipmentModel;
+
+    /**
+     * 璁惧瑙勬牸
+     */
+    @Excel(name = "璁惧瑙勬牸", width = 15, orderNum = "34")
+    @ApiModelProperty(value = "璁惧瑙勬牸")
+    private String equipmentSpecification;
+
+    /**
+     * 鎬诲姛鐜�(KW)
+     */
+    @Excel(name = "鎬诲姛鐜�(KW)", width = 15, orderNum = "35")
+    @ApiModelProperty(value = "鎬诲姛鐜�")
+    private String equipmentPower;
+
+    /**
+     * 璐ㄤ繚寮�濮嬫棩鏈�
+     */
+    @Excel(name = "璐ㄤ繚寮�濮嬫棩鏈�", width = 15, orderNum = "36")
+    @ApiModelProperty(value = "璐ㄤ繚寮�濮嬫棩鏈�")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    private Date warrantyStartDate;
+
+    /**
+     * 璐ㄤ繚缁撴潫鏃ユ湡
+     */
+    @Excel(name = "璐ㄤ繚缁撴潫鏃ユ湡", width = 15, orderNum = "37")
+    @ApiModelProperty(value = "璐ㄤ繚缁撴潫鏃ユ湡")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    private Date warrantyEndDate;
+
+    /**
+     * 璧勪骇鐘舵��
+     */
+    @Excel(name = "璧勪骇鐘舵��", width = 15, orderNum = "38",dicCode = "asset_status")
+    @ApiModelProperty(value = "璧勪骇鐘舵��")
+    @Dict(dicCode = "asset_status")
+    private String assetStatus;
+
+    /**鏈�鏂颁簩淇濇棩鏈�*/
+    @TableField(exist = false)
+    @Excel(name = "鏈�鏂颁簩淇濇棩鏈�", width = 15, orderNum = "39")
+    @ApiModelProperty(value = "鏈�鏂颁簩淇濇棩鏈�")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    private java.util.Date latestSecondMaintenance;
+
+    /**涓嬫浜屼繚鏃ユ湡*/
+    @TableField(exist = false)
+    @Excel(name = "涓嬫浜屼繚鏃ユ湡", width = 15, orderNum = "40")
+    @ApiModelProperty(value = "涓嬫浜屼繚鏃ユ湡")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    private java.util.Date nextSecondMaintenance;
+
+
+    /**鏈涓変繚鏃ユ湡*/
+    @TableField(exist = false)
+    @Excel(name = "鏈涓変繚鏃ユ湡", width = 15, orderNum = "41")
+    @ApiModelProperty(value = "鏈涓変繚鏃ユ湡")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    private java.util.Date latestThirdMaintenance;
+
+    /**涓嬫涓変繚鏃ユ湡*/
+    @TableField(exist = false)
+    @Excel(name = "涓嬫涓変繚鏃ユ湡", width = 15, orderNum = "42")
+    @ApiModelProperty(value = "涓嬫涓変繚鏃ユ湡")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    private java.util.Date nextThirdMaintenance;
+
+    /**涓変繚鍛ㄦ湡(骞�)*/
+    @TableField(exist = false)
+    @Excel(name = "涓変繚鍛ㄦ湡(骞�)", width = 15, orderNum = "43")
+    @ApiModelProperty(value = "涓変繚鍛ㄦ湡(骞�)")
+    private Integer thirdMaintenancePeriod;
+
+    /**鏈�鏂版妧鏈姸鎬侀壌瀹氭棩鏈�*/
+    @TableField(exist = false)
+    @Excel(name = "鏈�鏂版妧鏈姸鎬侀壌瀹氭棩鏈�", width = 15, 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")
+    @ApiModelProperty(value = "鎶�鏈姸鎬佷笅娆¢壌瀹氭棩鏈�")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    private java.util.Date nextTechnologyCheck;
+    /**鎶�鏈壌瀹氬懆鏈�(骞�)*/
+    @TableField(exist = false)
+    @Excel(name = "鎶�鏈壌瀹氬懆鏈�(骞�)", width = 15, orderNum = "46")
+    @ApiModelProperty(value = "鎶�鏈壌瀹氬懆鏈�(骞�)")
+    private Integer technologyCheckPeriod;
+
+    /**
+     * 鏄惁涓昏澶�
+     */
+    @Excel(name = "鏄惁涓昏澶�", width = 15, dicCode = "yn", orderNum = "47")
+    @ApiModelProperty(value = "鏄惁涓昏澶�")
+    @Dict(dicCode = "yn")
+    private String masterFlag;
+
+
+    /**
+     * 鏄惁鏈夊伐鑹哄弬鏁�
+     */
+    @Excel(name = "鏈夋棤宸ヨ壓鍙傛暟", width = 15, dicCode = "yn", orderNum = "48")
+    @ApiModelProperty(value = "鏄惁鏈夊伐鑹哄弬鏁�")
+    @Dict(dicCode = "yn")
+    private String processParametersFlag;
+    /**
+     * 鏄惁鏈夌簿搴﹀弬鏁�
+     */
+    @Excel(name = "鏈夋棤绮惧害鍙傛暟", width = 15, dicCode = "yn", orderNum = "49")
+    @ApiModelProperty(value = "鏄惁鏈夌簿搴﹀弬鏁�")
+    @Dict(dicCode = "yn")
+    private String precisionParametersFlag;
+
+
+    /**
+     * 澶囨敞
+     */
+    @Excel(name = "澶囨敞", width = 50, orderNum = "50")
+    @ApiModelProperty(value = "澶囨敞")
+    private String remark;
+
+}
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 1f173f3..2e1ec29 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
@@ -118,9 +118,9 @@
     /**
      * 宸ユ
      */
-    @Excel(name = "涓績/宸ュ尯/宸ユ", width = 15, orderNum = "4",dictTable = "eam_base_factory",dicText = "factory_name",dicCode = "org_code")
+    @Excel(name = "涓績/宸ュ尯/宸ユ", width = 15, orderNum = "4")
     @ApiModelProperty(value = "涓績/宸ュ尯/宸ユ")
-    @Dict(dictTable = "eam_base_factory",dicText = "factory_name",dicCode = "org_code")
+    @Dict(dictTable = "eam_base_factory",dicText = "factory_name",dicCode = "factory_code")
     private String factoryOrgCode;
 
     /**
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 7c1226b..6134309 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
@@ -292,7 +292,7 @@
         if (sysUser == null) {
             return null;
         }
-        if (StringUtils.isNotBlank(sysUser.getEquipmentIds())) {
+        if (StringUtils.isNotBlank(sysUser.getEamEquipmentIds())) {
             //閫夋嫨浜嗚澶囷紝鏍规嵁璁惧id杩囨护璁惧
             List<String> equipArr = Arrays.asList(sysUser.getEamEquipmentIds().split(","));
             queryWrapper.in("equipment_code", equipArr);
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 5a19efb..a2233c6 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
@@ -18,6 +18,7 @@
 import org.jeecg.common.system.vo.LoginUser;
 import org.jeecg.common.util.TranslateDictTextUtils;
 import org.jeecg.common.util.oConvertUtils;
+import org.jeecg.modules.eam.dto.EamEquipmentDto;
 import org.jeecg.modules.eam.entity.EamEquipment;
 import org.jeecg.modules.eam.entity.EamEquipmentExtend;
 import org.jeecg.modules.eam.request.EamEquipmentQuery;
@@ -27,11 +28,14 @@
 import org.jeecg.modules.eam.vo.EquipmentSearchResult;
 //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.service.IBaseFactoryService;
 import org.jeecgframework.poi.excel.ExcelImportUtil;
 import org.jeecgframework.poi.excel.def.NormalExcelConstants;
 import org.jeecgframework.poi.excel.entity.ExportParams;
 import org.jeecgframework.poi.excel.entity.ImportParams;
 import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
@@ -41,6 +45,7 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
@@ -70,6 +75,8 @@
     private ObjectMapper objectMapper;
     @Autowired
     private TranslateDictTextUtils translateDictTextUtils;
+    @Autowired
+    private IBaseFactoryService baseFactoryService;
 
     /**
      * 鍒嗛〉鍒楄〃鏌ヨ
@@ -211,18 +218,23 @@
     public ModelAndView exportXls(HttpServletRequest request,EamEquipmentQuery eamEquipment) {
         LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
         List<EamEquipment> equipmentList=eamEquipmentService.exportList(eamEquipment);
+        List<EamEquipmentDto> eamEquipmentDtos=new ArrayList<>();
         String selections = request.getParameter("selections");
         if (oConvertUtils.isNotEmpty(selections)) {
             List<String> selectionList = Arrays.asList(selections.split(","));
             equipmentList = equipmentList.stream().filter(item -> selectionList.contains(item.getId())).collect(Collectors.toList());
         }
-
+        equipmentList.forEach(item -> {
+            EamEquipmentDto eamEquipmentDto = new EamEquipmentDto();
+            BeanUtils.copyProperties(item,eamEquipmentDto);
+            eamEquipmentDtos.add(eamEquipmentDto);
+        });
         // Step.3 AutoPoi 瀵煎嚭Excel
         ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
         mv.addObject(NormalExcelConstants.FILE_NAME, "璁惧鍙拌处"); //姝ゅ璁剧疆鐨刦ilename鏃犳晥 ,鍓嶇浼氶噸鏇存柊璁剧疆涓�涓�
-        mv.addObject(NormalExcelConstants.CLASS, EamEquipment.class);
+        mv.addObject(NormalExcelConstants.CLASS, EamEquipmentDto.class);
         mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("璁惧鍙拌处" + "鎶ヨ〃", "瀵煎嚭浜�:" + sysUser.getRealname(), "璁惧鍙拌处"));
-        mv.addObject(NormalExcelConstants.DATA_LIST, equipmentList);
+        mv.addObject(NormalExcelConstants.DATA_LIST, eamEquipmentDtos);
         return mv;
 
     }
@@ -268,6 +280,13 @@
                         sb.append(String.format("璁惧缂栫爜[%s]宸插瓨鍦紝鏃犳硶閲嶅瀵煎叆\n\r", eamEquipment.getEquipmentCode()));
                         continue;
                     }
+                    BaseFactory baseFactory=baseFactoryService.searchCenterByKeyWord(eamEquipment.getFactoryOrgCode());
+                    if(baseFactory==null){
+                        sb.append(String.format("EAM涓績淇℃伅[%s]涓嶅瓨鍦紝鏃犳硶瀵煎叆\n\r", eamEquipment.getFactoryOrgCode()));
+                        continue;
+                    }else {
+                        eamEquipment.setFactoryOrgCode(baseFactory.getOrgCode());
+                    }
                     EamEquipment equipment = eamEquipmentService.saveEquipment(eamEquipment);
                     if (equipment == null) {
                         //淇濆瓨澶辫触锛岃烦杩囨湰娆″惊鐜�
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 2df2d93..ab2dd0c 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
@@ -960,7 +960,6 @@
 
             List<XWPFTable> tables = doc.getTables();
             EamMaintenanceStandard standard = null;
-            boolean firstTableProcessed = false;
             List<EamMaintenanceStandardDetail> items = new ArrayList<>();
             String standardId = null;
 
@@ -1185,7 +1184,7 @@
             } else if (cellContents.size() == 1) {
                 // 鍗曞垪妯″紡锛氳涓哄唴瀹�
                 item.setItemName(cellContents.get(0));
-            } else if (cellContents.isEmpty() && !isRowEmpty(row)) {
+            } else if (!isRowEmpty(row)) {
                 // 鐗规畩澶勭悊锛氳闈炵┖浣嗘病鏈夋彁鍙栧埌鍐呭锛堝彲鑳芥槸澶嶆潅鍚堝苟鍗曞厓鏍硷級
                 // 灏濊瘯鎻愬彇鏁磋鏂囨湰浣滀负鍐呭
                 StringBuilder content = new StringBuilder();
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/IBaseFactoryService.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/IBaseFactoryService.java
index 94495b8..8541d75 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/IBaseFactoryService.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/IBaseFactoryService.java
@@ -32,7 +32,10 @@
      */
     List<EamBaseFactoryTreeModel> searchByKeyWord(String keyWord);
 
-
+    /**
+     * 鏍规嵁鍏抽敭瀛楄幏鍙栦腑蹇冩暟鎹�
+     */
+    BaseFactory searchCenterByKeyWord(String keyWord);
 
     /**
      * 淇濆瓨浜х嚎鏁版嵁
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 c50d112..084bb65 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
@@ -102,7 +102,54 @@
         return Collections.emptyList();
     }
 
+    public BaseFactory searchCenterByKeyWord(String keyWord) {
+        if (StringUtils.isBlank(keyWord)) {
+            return null;
+        }
 
+        if (keyWord.contains("/")) {
+            return searchByHierarchy(keyWord);
+        } else {
+            return searchByCode(keyWord);
+        }
+    }
+
+    private BaseFactory searchByHierarchy(String path) {
+        String[] levels = path.split("/");
+        int depth = levels.length;
+
+        // 妫�鏌ュ眰绾ф繁搴�
+        if (depth < 2 || depth > 3) {
+            return null; // 鏃犳晥鐨勫眰绾ф繁搴�
+        }
+
+        // 鏌ヨ绗竴绾т腑蹇�
+        BaseFactory center = findFactory(levels[0], 1, null);
+        if (center == 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());
+    }
+
+    private BaseFactory searchByCode(String code) {
+        LambdaQueryWrapper<BaseFactory> query = new LambdaQueryWrapper<>();
+        query.like(BaseFactory::getFactoryCode, code);
+        return this.baseMapper.selectOne(query); // 浣跨敤selectOne閬垮厤澶氫釜缁撴灉
+    }
+
+    private BaseFactory findFactory(String name, Integer category, String parentId) {
+        LambdaQueryWrapper<BaseFactory> query = new LambdaQueryWrapper<>();
+        query.eq(BaseFactory::getFactoryName, name);
+
+        if (category != null) query.eq(BaseFactory::getFactoryCategory, category);
+        if (parentId != null) query.eq(BaseFactory::getParentId, parentId);
+
+        return this.baseMapper.selectOne(query);
+    }
 
     /**
      * saveProductionData 瀵瑰簲 add 淇濆瓨鐢ㄦ埛鍦ㄩ〉闈㈡坊鍔犵殑鏂扮殑璁惧杞﹂棿绠$悊瀵硅薄鏁版嵁

--
Gitblit v1.9.3