From 6fcb995547973223f4401745e5c2fbc77230089f Mon Sep 17 00:00:00 2001
From: Lius <Lius2225@163.com>
Date: 星期四, 10 七月 2025 10:42:33 +0800
Subject: [PATCH] 生产设备自主维护点检表导出

---
 lxzn-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java                               |    6 
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamWeekInspectionDetail.java          |    2 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamInspectionOrderMapper.xml             |  146 ++++++--
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/InspectionResultEnum.java           |   11 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamInspectionOrderService.java             |   25 +
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamInsOrderDetailResultResponse.java |   54 +++
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamInspectionOrderDetail.java         |    2 
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamInspectionOrderBaseResponse.java  |   41 ++
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamInsOrderDetailUserResponse.java   |   41 ++
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamWeekInsDetailResultResponse.java  |   54 +++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java     |  291 +++++++++++++++-
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamWeekInsDetailUserResponse.java    |   40 ++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamInspectionOrderController.java        |  314 ++--------------
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamInspectionOrderMapper.java                |   18 
 14 files changed, 708 insertions(+), 337 deletions(-)

diff --git a/lxzn-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java b/lxzn-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java
index 0c3d458..7924d9c 100644
--- a/lxzn-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java
+++ b/lxzn-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java
@@ -137,6 +137,12 @@
         filterChainDefinitionMap.put("/jmreport/**", "anon");
         filterChainDefinitionMap.put("/**/*.js.map", "anon");
         filterChainDefinitionMap.put("/**/*.css.map", "anon");
+        //璁惧鐐规鎵撳嵃鎺ュ彛鎺掗櫎
+        filterChainDefinitionMap.put("/eam/eamInspectionOrder/exportInsOrderBaseInfo", "anon");
+        filterChainDefinitionMap.put("/eam/eamInspectionOrder/exportInsOrderDetailList", "anon");
+        filterChainDefinitionMap.put("/eam/eamInspectionOrder/exportInsOrderDetailUserList", "anon");
+        filterChainDefinitionMap.put("/eam/eamInspectionOrder/exportWeekInsDetailList", "anon");
+        filterChainDefinitionMap.put("/eam/eamInspectionOrder/exportWeekInsOrderDetailUserList", "anon");
         //璁惧瀹屽ソ鐜囨姤琛ㄦ帓闄�
         filterChainDefinitionMap.put("/eam/repairOrder/equipmentAvailability", "anon");
         //鐢熶骇鏁呴殰闂撮殧鏃堕棿鎶ヨ〃鎺掗櫎
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/InspectionResultEnum.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/InspectionResultEnum.java
new file mode 100644
index 0000000..ccaaa0a
--- /dev/null
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/InspectionResultEnum.java
@@ -0,0 +1,11 @@
+package org.jeecg.modules.eam.constant;
+
+/**
+ * 鐐规缁撴灉鍒嗙被
+ */
+public enum InspectionResultEnum {
+    NORMAL, //姝e父
+    ANOMALY, //寮傚父
+    FAULT, //鏁呴殰
+    CLOSE //鍏虫満
+}
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamInspectionOrderDetail.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamInspectionOrderDetail.java
index c952e82..6bbc1c3 100644
--- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamInspectionOrderDetail.java
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamInspectionOrderDetail.java
@@ -31,7 +31,7 @@
     private String orderId;
 	/**鐐规缁撴灉*/
 	@Excel(name = "鐐规缁撴灉", width = 15)
-    @ApiModelProperty(value = "鐐规缁撴灉-姝e父-寮傚父")
+    @ApiModelProperty(value = "鐐规缁撴灉-姝e父-寮傚父-鏁呴殰-鍏虫満")
     private String inspectionResult;
 	/**寮傚父鎻忚堪*/
 	@Excel(name = "寮傚父鎻忚堪", width = 15)
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamWeekInspectionDetail.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamWeekInspectionDetail.java
index 5d3ecea..21487cf 100644
--- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamWeekInspectionDetail.java
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamWeekInspectionDetail.java
@@ -46,7 +46,7 @@
     private Date planInspectionDate;
 	/**鐐规缁撴灉*/
 	@Excel(name = "鐐规缁撴灉", width = 15)
-    @ApiModelProperty(value = "鐐规缁撴灉-姝e父-寮傚父")
+    @ApiModelProperty(value = "鐐规缁撴灉-姝e父-寮傚父-鍏虫満-鏁呴殰")
     private String inspectionResult;
 	/**寮傚父鎻忚堪*/
 	@Excel(name = "寮傚父鎻忚堪", width = 15)
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamInsOrderDetailResultResponse.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamInsOrderDetailResultResponse.java
new file mode 100644
index 0000000..6e72a21
--- /dev/null
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamInsOrderDetailResultResponse.java
@@ -0,0 +1,54 @@
+package org.jeecg.modules.eam.request;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * @Author: Lius
+ * @CreateTime: 2025-07-09
+ * @Description: 鐐规椤瑰熀纭�淇℃伅瀵煎嚭璇︾粏
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="杩斿洖瀵硅薄", description="鐐规宸ュ崟鍩虹淇℃伅瀵煎嚭璇︾粏")
+public class EamInsOrderDetailResultResponse implements Serializable {
+
+    private static final long serialVersionUID = -1779195782355233938L;
+
+    /**鐐规鏃ユ湡*/
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "鐐规鏃ユ湡")
+    private Date inspectionDate;
+    /**淇濆吇椤瑰簭鍙�*/
+    @ApiModelProperty(value = "淇濆吇椤瑰簭鍙�")
+    private Integer itemCode;
+    /**淇濆吇椤�*/
+    @ApiModelProperty(value = "淇濆吇椤�")
+    private String itemName;
+    /**淇濆吇瑕佹眰*/
+    @ApiModelProperty(value = "淇濆吇瑕佹眰")
+    private String  itemDemand;
+    /**鐐规缁撴灉*/
+    @ApiModelProperty(value = "鐐规缁撴灉-姝e父-寮傚父-")
+    private String inspectionResult;
+
+    public EamInsOrderDetailResultResponse() {
+    }
+
+    public EamInsOrderDetailResultResponse(Integer itemCode, String itemName, String itemDemand) {
+        this.itemCode = itemCode;
+        this.itemName = itemName;
+        this.itemDemand = itemDemand;
+    }
+}
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamInsOrderDetailUserResponse.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamInsOrderDetailUserResponse.java
new file mode 100644
index 0000000..fc913a8
--- /dev/null
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamInsOrderDetailUserResponse.java
@@ -0,0 +1,41 @@
+package org.jeecg.modules.eam.request;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * @Author: Lius
+ * @CreateTime: 2025-07-09
+ * @Description: 鏃ョ偣妫�璐d换浜鸿繑鍥炲璞�
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="杩斿洖瀵硅薄", description="鏃ョ偣妫�璐d换浜鸿繑鍥炲鍑鸿缁�")
+public class EamInsOrderDetailUserResponse implements Serializable {
+
+    private static final long serialVersionUID = 6369935960896727599L;
+
+    /**鐐规鏃ユ湡*/
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "鐐规鏃ユ湡")
+    private Date inspectionDate;
+
+    /**鐐规浜�*/
+    @ApiModelProperty(value = "鐐规浜�-鏄鍙栦汉")
+    private String operator;
+
+    /**鐝粍闀跨‘璁�*/
+    @ApiModelProperty(value = "鐝粍闀跨‘璁�--棰嗗彇鍚庝骇鐢�")
+    private String confirmUser;
+
+}
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamInspectionOrderBaseResponse.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamInspectionOrderBaseResponse.java
new file mode 100644
index 0000000..6d3c3f1
--- /dev/null
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamInspectionOrderBaseResponse.java
@@ -0,0 +1,41 @@
+package org.jeecg.modules.eam.request;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+/**
+ * @Author: Lius
+ * @CreateTime: 2025-07-09
+ * @Description: 鐐规宸ュ崟鍩虹淇℃伅瀵煎嚭璇︾粏
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="杩斿洖瀵硅薄", description="鐐规宸ュ崟鍩虹淇℃伅瀵煎嚭璇︾粏")
+public class EamInspectionOrderBaseResponse implements Serializable {
+
+    private static final long serialVersionUID = -9051699099294744556L;
+
+    @ApiModelProperty(value = "璁惧鍚嶇О")
+    private String equipmentName;
+
+    @ApiModelProperty(value = "璁惧鍨嬪彿")
+    private String equipmentModel;
+
+    @ApiModelProperty(value = "璁惧缂栧彿")
+    private String equipmentCode;
+
+    @ApiModelProperty(value = "鍗曚綅")
+    private String factoryName;
+
+    @ApiModelProperty(value = "骞�")
+    private String inspectionYear;
+
+    @ApiModelProperty(value = "鏈�")
+    private String inspectionMonth;
+}
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamWeekInsDetailResultResponse.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamWeekInsDetailResultResponse.java
new file mode 100644
index 0000000..ede4b91
--- /dev/null
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamWeekInsDetailResultResponse.java
@@ -0,0 +1,54 @@
+package org.jeecg.modules.eam.request;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * @Author: Lius
+ * @CreateTime: 2025-07-09
+ * @Description: 鍛ㄧ偣妫�缁撴灉鍒楄〃
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="杩斿洖瀵硅薄", description="鍛ㄧ偣妫�宸ュ崟鍩虹淇℃伅瀵煎嚭璇︾粏")
+public class EamWeekInsDetailResultResponse implements Serializable {
+
+    private static final long serialVersionUID = -9051699099294744556L;
+
+    /**璁″垝鐐规鏃ユ湡*/
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "璁″垝鐐规鏃ユ湡")
+    private Date planInspectionDate;
+    /**淇濆吇椤瑰簭鍙�*/
+    @ApiModelProperty(value = "淇濆吇椤瑰簭鍙�")
+    private Integer itemCode;
+    /**淇濆吇椤�*/
+    @ApiModelProperty(value = "淇濆吇椤�")
+    private String itemName;
+    /**淇濆吇瑕佹眰*/
+    @ApiModelProperty(value = "淇濆吇瑕佹眰")
+    private String  itemDemand;
+    /**鐐规缁撴灉*/
+    @ApiModelProperty(value = "鐐规缁撴灉-姝e父-寮傚父-鏁呴殰-鍏虫満")
+    private String inspectionResult;
+
+    public EamWeekInsDetailResultResponse() {
+    }
+
+    public EamWeekInsDetailResultResponse(Integer itemCode, String itemName, String itemDemand) {
+        this.itemCode = itemCode;
+        this.itemName = itemName;
+        this.itemDemand = itemDemand;
+    }
+}
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamWeekInsDetailUserResponse.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamWeekInsDetailUserResponse.java
new file mode 100644
index 0000000..9af0af0
--- /dev/null
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/request/EamWeekInsDetailUserResponse.java
@@ -0,0 +1,40 @@
+package org.jeecg.modules.eam.request;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * @Author: Lius
+ * @CreateTime: 2025-07-10
+ * @Description: 鍛ㄧ偣妫�璐d换浜鸿繑鍥炲璞�
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="杩斿洖瀵硅薄", description="鍛ㄧ偣妫�璐d换浜鸿繑鍥炲鍑鸿缁�")
+public class EamWeekInsDetailUserResponse implements Serializable {
+
+    private static final long serialVersionUID = -2269180394302345460L;
+
+    /**鐐规鏃ユ湡*/
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "鐐规鏃ユ湡")
+    private Date inspectionDate;
+
+    /**鐐规浜�*/
+    @ApiModelProperty(value = "鐐规浜�-鏄鍙栦汉")
+    private String inspector;
+
+    /**鐝粍闀跨‘璁�*/
+    @ApiModelProperty(value = "鐝粍闀跨‘璁�--棰嗗彇鍚庝骇鐢�")
+    private String confirmUser;
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamInspectionOrderController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamInspectionOrderController.java
index 0b445f4..c0ff072 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamInspectionOrderController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamInspectionOrderController.java
@@ -330,277 +330,63 @@
     }
 
     /**
-     * 鎶ヨ〃浣跨敤 qsw
-     * 2025-6-19
+     * 瀵煎嚭鑾峰彇鍩烘湰淇℃伅
+     * @param equipmentCode 缁熶竴缂栫爜
+     * @param inspectionDate 鏃ユ湡
+     * @return
      */
-    @GetMapping("/findInspectionResult")
-    public JSONObject findInspectionResult(@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
-                                          @RequestParam(name = "pageSize", defaultValue = "1000") Integer pageSize,
-                                          @RequestParam Map<String, Object> params) {
-
-        String equipmentId = (String)params.get("equipmentId");
-        String inspectionDate = (String)params.get("inspectionDate");
-
-        List<InspectionVo> inspectionVos = new ArrayList<>();
-        List<Map<String, Object>> inspectionStandard = eamInspectionOrderService.findInspectionStandard(equipmentId);
-        for (Map<String, Object> map : inspectionStandard) {
-            List<InspectionVo> dayInspectionResult = eamInspectionOrderService.findInspectionResult(equipmentId,(String)map.get("itemDemand"),inspectionDate);
-            InspectionVo inspectionVo = new InspectionVo();
-            inspectionVo.setInspectionContent((String)map.get("itemDemand"));
-            Object seq = map.get("seq");
-            inspectionVo.setSeq(seq.toString());
-            for (InspectionVo vo : dayInspectionResult) {
-                if("1".equals(vo.getDayTime())){
-                    inspectionVo.setDay1(vo.getInspectionResult());
-                    continue;
-                }else if("2".equals(vo.getDayTime())){
-                    inspectionVo.setDay2(vo.getInspectionResult());
-                    continue;
-                }else if("3".equals(vo.getDayTime())){
-                    inspectionVo.setDay3(vo.getInspectionResult());
-                    continue;
-                }else if("4".equals(vo.getDayTime())){
-                    inspectionVo.setDay4(vo.getInspectionResult());
-                    continue;
-                }else if("5".equals(vo.getDayTime())){
-                    inspectionVo.setDay5(vo.getInspectionResult());
-                    continue;
-                }else if("6".equals(vo.getDayTime())){
-                    inspectionVo.setDay6(vo.getInspectionResult());
-                    continue;
-                }else if("7".equals(vo.getDayTime())){
-                    inspectionVo.setDay7(vo.getInspectionResult());
-                    continue;
-                }else if("8".equals(vo.getDayTime())){
-                    inspectionVo.setDay8(vo.getInspectionResult());
-                    continue;
-                }else if("9".equals(vo.getDayTime())){
-                    inspectionVo.setDay9(vo.getInspectionResult());
-                    continue;
-                }else if("10".equals(vo.getDayTime())){
-                    inspectionVo.setDay10(vo.getInspectionResult());
-                    continue;
-                }else if("11".equals(vo.getDayTime())){
-                    inspectionVo.setDay11(vo.getInspectionResult());
-                    continue;
-                }else if("12".equals(vo.getDayTime())){
-                    inspectionVo.setDay12(vo.getInspectionResult());
-                    continue;
-                }else if("13".equals(vo.getDayTime())){
-                    inspectionVo.setDay13(vo.getInspectionResult());
-                    continue;
-                }else if("14".equals(vo.getDayTime())){
-                    inspectionVo.setDay14(vo.getInspectionResult());
-                    continue;
-                }else if("15".equals(vo.getDayTime())){
-                    inspectionVo.setDay15(vo.getInspectionResult());
-                    continue;
-                }else if("16".equals(vo.getDayTime())){
-                    inspectionVo.setDay16(vo.getInspectionResult());
-                    continue;
-                }else if("17".equals(vo.getDayTime())){
-                    inspectionVo.setDay17(vo.getInspectionResult());
-                    continue;
-                }else if("18".equals(vo.getDayTime())){
-                    inspectionVo.setDay18(vo.getInspectionResult());
-                    continue;
-                }else if("19".equals(vo.getDayTime())){
-                    inspectionVo.setDay19(vo.getInspectionResult());
-                    continue;
-                }else if("20".equals(vo.getDayTime())){
-                    inspectionVo.setDay20(vo.getInspectionResult());
-                    continue;
-                }else if("21".equals(vo.getDayTime())){
-                    inspectionVo.setDay21(vo.getInspectionResult());
-                    continue;
-                }else if("22".equals(vo.getDayTime())){
-                    inspectionVo.setDay22(vo.getInspectionResult());
-                    continue;
-                }else if("23".equals(vo.getDayTime())){
-                    inspectionVo.setDay23(vo.getInspectionResult());
-                    continue;
-                }else if("24".equals(vo.getDayTime())){
-                    inspectionVo.setDay24(vo.getInspectionResult());
-                    continue;
-                }else if("25".equals(vo.getDayTime())){
-                    inspectionVo.setDay25(vo.getInspectionResult());
-                    continue;
-                }else if("26".equals(vo.getDayTime())){
-                    inspectionVo.setDay26(vo.getInspectionResult());
-                    continue;
-                }else if("27".equals(vo.getDayTime())){
-                    inspectionVo.setDay27(vo.getInspectionResult());
-                    continue;
-                }else if("28".equals(vo.getDayTime())){
-                    inspectionVo.setDay28(vo.getInspectionResult());
-                    continue;
-                }else if("29".equals(vo.getDayTime())){
-                    inspectionVo.setDay29(vo.getInspectionResult());
-                    continue;
-                }else if("30".equals(vo.getDayTime())){
-                    inspectionVo.setDay30(vo.getInspectionResult());
-                    continue;
-                }else if("31".equals(vo.getDayTime())){
-                    inspectionVo.setDay31(vo.getInspectionResult());
-                    continue;
-                }
-            }
-            inspectionVos.add(inspectionVo);
-        }
-        JSONObject jsonObject = new JSONObject();
-        jsonObject.put("data",inspectionVos);
-        return jsonObject;
+    @GetMapping("/exportInsOrderBaseInfo")
+    public JSONObject exportInspectionOrderBaseInfo(@RequestParam(name = "equipmentCode", required = true) String equipmentCode,
+                                                    @RequestParam(name = "inspectionDate", required = true) String inspectionDate) {
+        return eamInspectionOrderService.exportInspectionOrderBaseInfo(equipmentCode, inspectionDate);
     }
 
     /**
-     * 鎶ヨ〃浣跨敤 qsw
-     * 2025-6-19
+     * 鏃ョ偣妫�椤瑰垪琛�
+     * @param equipmentCode 缁熶竴缂栫爜
+     * @param inspectionDate 鏃ユ湡
+     * @return
      */
-    @GetMapping("/findInspectionUser")
-    public JSONObject findInspectionUser(@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
-                                           @RequestParam(name = "pageSize", defaultValue = "1000") Integer pageSize,
-                                           @RequestParam Map<String, Object> params) {
-
-        String equipmentId = (String)params.get("equipmentId");
-        String inspectionDate = (String)params.get("inspectionDate");
-
-        List<InspectionVo> inspectionVos = new ArrayList<>();
-            List<InspectionVo> inspectionUser = eamInspectionOrderService.findInspectionUser(equipmentId,inspectionDate);
-            InspectionVo inspectionVo = new InspectionVo();
-            for (InspectionVo vo : inspectionUser) {
-                if("1".equals(vo.getDayTime())){
-                    inspectionVo.setOperator1(vo.getOperator());
-                    inspectionVo.setConfirmUser1(vo.getConfirmUser());
-                    continue;
-                }else if("2".equals(vo.getDayTime())){
-                    inspectionVo.setOperator2(vo.getOperator());
-                    inspectionVo.setConfirmUser2(vo.getConfirmUser());
-                    continue;
-                }else if("3".equals(vo.getDayTime())){
-                    inspectionVo.setOperator3(vo.getOperator());
-                    inspectionVo.setConfirmUser3(vo.getConfirmUser());
-                    continue;
-                }else if("4".equals(vo.getDayTime())){
-                    inspectionVo.setOperator4(vo.getOperator());
-                    inspectionVo.setConfirmUser4(vo.getConfirmUser());
-                    continue;
-                }else if("5".equals(vo.getDayTime())){
-                    inspectionVo.setOperator5(vo.getOperator());
-                    inspectionVo.setConfirmUser5(vo.getConfirmUser());
-                    continue;
-                }else if("6".equals(vo.getDayTime())){
-                    inspectionVo.setOperator6(vo.getOperator());
-                    inspectionVo.setConfirmUser6(vo.getConfirmUser());
-                    continue;
-                }else if("7".equals(vo.getDayTime())){
-                    inspectionVo.setOperator7(vo.getOperator());
-                    inspectionVo.setConfirmUser7(vo.getConfirmUser());
-                    continue;
-                }else if("8".equals(vo.getDayTime())){
-                    inspectionVo.setOperator8(vo.getOperator());
-                    inspectionVo.setConfirmUser8(vo.getConfirmUser());
-                    continue;
-                }else if("9".equals(vo.getDayTime())){
-                    inspectionVo.setOperator9(vo.getOperator());
-                    inspectionVo.setConfirmUser9(vo.getConfirmUser());
-                    continue;
-                }else if("10".equals(vo.getDayTime())){
-                    inspectionVo.setOperator10(vo.getOperator());
-                    inspectionVo.setConfirmUser10(vo.getConfirmUser());
-                    continue;
-                }else if("11".equals(vo.getDayTime())){
-                    inspectionVo.setOperator11(vo.getOperator());
-                    inspectionVo.setConfirmUser11(vo.getConfirmUser());
-                    continue;
-                }else if("12".equals(vo.getDayTime())){
-                    inspectionVo.setOperator12(vo.getOperator());
-                    inspectionVo.setConfirmUser12(vo.getConfirmUser());
-                    continue;
-                }else if("13".equals(vo.getDayTime())){
-                    inspectionVo.setOperator13(vo.getOperator());
-                    inspectionVo.setConfirmUser13(vo.getConfirmUser());
-                    continue;
-                }else if("14".equals(vo.getDayTime())){
-                    inspectionVo.setOperator14(vo.getOperator());
-                    inspectionVo.setConfirmUser14(vo.getConfirmUser());
-                    continue;
-                }else if("15".equals(vo.getDayTime())){
-                    inspectionVo.setOperator15(vo.getOperator());
-                    inspectionVo.setConfirmUser15(vo.getConfirmUser());
-                    continue;
-                }else if("16".equals(vo.getDayTime())){
-                    inspectionVo.setOperator16(vo.getOperator());
-                    inspectionVo.setConfirmUser16(vo.getConfirmUser());
-                    continue;
-                }else if("17".equals(vo.getDayTime())){
-                    inspectionVo.setOperator17(vo.getOperator());
-                    inspectionVo.setConfirmUser17(vo.getConfirmUser());
-                    continue;
-                }else if("18".equals(vo.getDayTime())){
-                    inspectionVo.setOperator18(vo.getOperator());
-                    inspectionVo.setConfirmUser18(vo.getConfirmUser());
-                    continue;
-                }else if("19".equals(vo.getDayTime())){
-                    inspectionVo.setOperator19(vo.getOperator());
-                    inspectionVo.setConfirmUser19(vo.getConfirmUser());
-                    continue;
-                }else if("20".equals(vo.getDayTime())){
-                    inspectionVo.setOperator20(vo.getOperator());
-                    inspectionVo.setConfirmUser20(vo.getConfirmUser());
-                    continue;
-                }else if("21".equals(vo.getDayTime())){
-                    inspectionVo.setOperator21(vo.getOperator());
-                    inspectionVo.setConfirmUser21(vo.getConfirmUser());
-                    continue;
-                }else if("22".equals(vo.getDayTime())){
-                    inspectionVo.setOperator22(vo.getOperator());
-                    inspectionVo.setConfirmUser22(vo.getConfirmUser());
-                    continue;
-                }else if("23".equals(vo.getDayTime())){
-                    inspectionVo.setOperator23(vo.getOperator());
-                    inspectionVo.setConfirmUser23(vo.getConfirmUser());
-                    continue;
-                }else if("24".equals(vo.getDayTime())){
-                    inspectionVo.setOperator24(vo.getOperator());
-                    inspectionVo.setConfirmUser24(vo.getConfirmUser());
-                    continue;
-                }else if("25".equals(vo.getDayTime())){
-                    inspectionVo.setOperator25(vo.getOperator());
-                    inspectionVo.setConfirmUser25(vo.getConfirmUser());
-                    continue;
-                }else if("26".equals(vo.getDayTime())){
-                    inspectionVo.setOperator26(vo.getOperator());
-                    inspectionVo.setConfirmUser26(vo.getConfirmUser());
-                    continue;
-                }else if("27".equals(vo.getDayTime())){
-                    inspectionVo.setOperator27(vo.getOperator());
-                    inspectionVo.setConfirmUser27(vo.getConfirmUser());
-                    continue;
-                }else if("28".equals(vo.getDayTime())){
-                    inspectionVo.setOperator28(vo.getOperator());
-                    inspectionVo.setConfirmUser28(vo.getConfirmUser());
-                    continue;
-                }else if("29".equals(vo.getDayTime())){
-                    inspectionVo.setOperator29(vo.getOperator());
-                    inspectionVo.setConfirmUser29(vo.getConfirmUser());
-                    continue;
-                }else if("30".equals(vo.getDayTime())){
-                    inspectionVo.setOperator30(vo.getOperator());
-                    inspectionVo.setConfirmUser30(vo.getConfirmUser());
-                    continue;
-                }else if("31".equals(vo.getDayTime())){
-                    inspectionVo.setOperator31(vo.getOperator());
-                    inspectionVo.setConfirmUser31(vo.getConfirmUser());
-                    continue;
-                }
-            }
-            inspectionVos.add(inspectionVo);
-//        }
-        JSONObject jsonObject = new JSONObject();
-        jsonObject.put("data",inspectionVos);
-        return jsonObject;
+    @GetMapping("/exportInsOrderDetailList")
+    public JSONObject exportInspectionOrderDetailList(@RequestParam(name = "equipmentCode", required = true) String equipmentCode,
+                                                    @RequestParam(name = "inspectionDate", required = true) String inspectionDate) {
+        return eamInspectionOrderService.exportInspectionOrderDetailList(equipmentCode, inspectionDate);
     }
 
+    /**
+     * 鏃ョ偣妫�璐d换浜哄垪琛�
+     * @param equipmentCode 缁熶竴缂栫爜
+     * @param inspectionDate 鏃ユ湡
+     * @return
+     */
+    @GetMapping("/exportInsOrderDetailUserList")
+    public JSONObject exportInspectionOrderDetailUserList(@RequestParam(name = "equipmentCode", required = true) String equipmentCode,
+                                                    @RequestParam(name = "inspectionDate", required = true) String inspectionDate) {
+        return eamInspectionOrderService.exportInspectionOrderDetailUserList(equipmentCode, inspectionDate);
+    }
 
+    /**
+     * 鍛ㄧ偣妫�椤瑰垪琛�
+     * @param equipmentCode 缁熶竴缂栫爜
+     * @param inspectionDate 鏃ユ湡
+     * @return
+     */
+    @GetMapping("/exportWeekInsDetailList")
+    public JSONObject exportWeekInsDetailList(@RequestParam(name = "equipmentCode", required = true) String equipmentCode,
+                                                    @RequestParam(name = "inspectionDate", required = true) String inspectionDate) {
+        return eamInspectionOrderService.exportWeekInsDetailList(equipmentCode, inspectionDate);
+    }
+
+    /**
+     * 鍛ㄧ偣妫�璐d换浜哄垪琛�
+     * @param equipmentCode 缁熶竴缂栫爜
+     * @param inspectionDate 鏃ユ湡
+     * @return
+     */
+    @GetMapping("/exportWeekInsOrderDetailUserList")
+    public JSONObject exportInspectionOrder(@RequestParam(name = "equipmentCode", required = true) String equipmentCode,
+                                                    @RequestParam(name = "inspectionDate", required = true) String inspectionDate) {
+        return eamInspectionOrderService.exportWeekInsOrderDetailUserList(equipmentCode, inspectionDate);
+    }
 
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamInspectionOrderMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamInspectionOrderMapper.java
index 51b179e..6ddc90e 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamInspectionOrderMapper.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamInspectionOrderMapper.java
@@ -7,11 +7,9 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.apache.ibatis.annotations.Param;
 import org.jeecg.modules.eam.entity.EamInspectionOrder;
-import org.jeecg.modules.eam.entity.EamWeekMaintenanceOrder;
-import org.jeecg.modules.eam.vo.InspectionVo;
+import org.jeecg.modules.eam.request.*;
 
 import java.util.List;
-import java.util.Map;
 
 /**
  * @Description: 鐐规宸ュ崟
@@ -28,12 +26,14 @@
      * @return
      */
     IPage<EamInspectionOrder> queryPageList(Page<EamInspectionOrder> page, @Param(Constants.WRAPPER) QueryWrapper<EamInspectionOrder> queryWrapper);
-    /**
-     * 鐐规鎶ヨ〃 new
-     */
-    List<InspectionVo> findInspectionResult(@Param("equipmentId")String equipmentId, @Param("itemDemand")String itemDemand,@Param("yearMonth")String yearMonth);
 
-    List<InspectionVo> findInspectionUser(@Param("equipmentId")String equipmentId,@Param("yearMonth")String yearMonth);
+    EamInspectionOrderBaseResponse findInsOrderBaseInfo(@Param("equipmentCode") String equipmentCode, @Param("inspectionDate") String inspectionDate);
 
-    List<Map<String,Object>> findInspectionStandard(@Param("equipmentId")String equipmentId);
+    List<EamInsOrderDetailResultResponse> findInsOrderDetailList(@Param("equipmentCode") String equipmentCode, @Param("inspectionDate") String inspectionDate);
+
+    List<EamInsOrderDetailUserResponse> findInspectionOrderDetailUserList(@Param("equipmentCode") String equipmentCode, @Param("inspectionDate") String inspectionDate);
+
+    List<EamWeekInsDetailResultResponse> findWeekInsDetailList(@Param("equipmentCode") String equipmentCode, @Param("inspectionDate") String inspectionDate);
+
+    List<EamWeekInsDetailUserResponse> findWeekInsOrderDetailUserList(@Param("equipmentCode") String equipmentCode, @Param("inspectionDate") String inspectionDate);
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamInspectionOrderMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamInspectionOrderMapper.xml
index 2c34c4a..f67c832 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamInspectionOrderMapper.xml
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamInspectionOrderMapper.xml
@@ -10,47 +10,117 @@
         ${ew.customSqlSegment}
     </select>
 
-    <select id="findInspectionUser"  parameterType="String" resultType="org.jeecg.modules.eam.vo.InspectionVo">
-
-        SELECT
-            t2.realname operator,
-            t3.realname as confirmUser,
-            CONVERT(VARCHAR, DATEPART(DAY, t1.inspection_date)) as dayTime
+    <select id="findInsOrderBaseInfo" resultType="org.jeecg.modules.eam.request.EamInspectionOrderBaseResponse">
+        SELECT TOP 1
+            t2.equipment_name equipmentName,
+            t2.equipment_code equipmentCode,
+            t2.equipment_model equipmentModel,
+            t2.factory_org_code factoryName,
+            DATEPART( YEAR, t1.inspection_date ) AS inspectionYear,
+            DATEPART( MONTH, t1.inspection_date ) AS inspectionMonth
         FROM
             eam_inspection_order t1
-            left join sys_user t2 on t1.operator = t2.username
-            left join sys_user t3 on t1.confirm_user = t3.username
-        WHERE t1.del_flag = '0'
-          AND t1.equipment_id = #{equipmentId}
-        AND SUBSTRING ( CONVERT ( VARCHAR ( 10 ), t1.inspection_date, 120 ), 1, 7 ) = SUBSTRING(CONVERT(VARCHAR(10),#{yearMonth}, 120 ), 1, 7 )
-    </select>
-
-    <select id="findInspectionResult"  parameterType="String" resultType="org.jeecg.modules.eam.vo.InspectionVo">
-
-        SELECT
-            t1.item_demand as inspectionContent,
-            CONVERT(VARCHAR, DATEPART(DAY, t2.inspection_date)) as dayTime,
-            case t1.inspection_result  when '1' then '鈭�' when '2' then 'x' else '' end as inspectionResult
-        FROM
-            eam_inspection_order_detail t1
-        LEFT JOIN eam_inspection_order t2 ON t1.order_id = t2.id
-        WHERE t1.item_demand = #{itemDemand}
-        and t2.equipment_id = #{equipmentId}
-        AND SUBSTRING ( CONVERT ( VARCHAR ( 10 ), t2.inspection_date, 120 ), 1, 7 ) = SUBSTRING(CONVERT(VARCHAR(10),#{yearMonth}, 120 ), 1, 7 )
-    </select>
-
-    <select id="findInspectionStandard"  parameterType="String" resultType="Map">
-        SELECT
-            ROW_NUMBER() OVER (ORDER BY t1.id) AS seq,
-            t1.item_demand as itemDemand
-        FROM
-            eam_maintenance_standard_detail t1
-            LEFT JOIN eam_maintenance_standard t2 ON t1.standard_id = t2.id
+                LEFT JOIN eam_equipment t2 ON t1.equipment_id = t2.id
         WHERE
-          t2.maintenance_category = 'POINT_INSPECTION'
-          AND t2.standard_status = 'NORMAL'
-          and equipment_id =#{equipmentId}
+            t2.equipment_code = #{equipmentCode}
+          AND t1.inspection_date LIKE CONCAT(#{inspectionDate},'%')
+          AND t1.inspection_status = 'COMPLETE'
         ORDER BY
-            item_code ASC
+            t1.inspection_date DESC
     </select>
+
+    <select id="findInsOrderDetailList" resultType="org.jeecg.modules.eam.request.EamInsOrderDetailResultResponse">
+        SELECT
+            t1.inspection_date inspectionDate,
+            t2.item_code item_code,
+            t2.item_name item_name,
+            t2.item_demand item_demand,
+            t2.inspection_result inspection_result
+        FROM
+            eam_inspection_order t1
+                LEFT JOIN eam_inspection_order_detail t2 ON t1.id = t2.order_id
+                LEFT JOIN eam_equipment t3 ON t1.equipment_id = t3.id
+        WHERE
+            t3.equipment_code = #{equipmentCode}
+            AND t1.inspection_date LIKE CONCAT(#{inspectionDate},'%')
+            AND t1.inspection_status = 'COMPLETE'
+        GROUP BY
+            t1.inspection_date,
+            t2.item_code,
+            t2.item_name,
+            t2.item_demand,
+            t2.inspection_result
+        ORDER BY
+            t1.inspection_date ASC
+    </select>
+
+    <select id="findInspectionOrderDetailUserList" resultType="org.jeecg.modules.eam.request.EamInsOrderDetailUserResponse">
+        SELECT
+            t1.inspection_date inspectionDate,
+            t1.operator,
+            t1.confirm_user confirmUser
+        FROM
+            eam_inspection_order t1
+            LEFT JOIN eam_equipment t2 ON t1.equipment_id = t2.id
+        WHERE
+            t2.equipment_code = #{equipmentCode}
+            AND t1.inspection_date LIKE CONCAT(#{inspectionDate},'%')
+            AND t1.inspection_status = 'COMPLETE'
+        GROUP BY
+            t1.inspection_date,
+            t1.operator,
+            t1.confirm_user
+        ORDER BY
+            t1.inspection_date ASC
+    </select>
+
+    <select id="findWeekInsDetailList" resultType="org.jeecg.modules.eam.request.EamWeekInsDetailResultResponse">
+        SELECT
+            t1.plan_inspection_date,
+            t1.item_code,
+            t1.item_name,
+            t1.item_demand,
+            t1.inspection_result
+
+        FROM
+            eam_week_inspection_detail t1
+                LEFT JOIN eam_equipment t2 ON t1.equipment_id = t2.id
+                LEFT JOIN eam_inspection_order t3 ON t3.inspection_date = t1.plan_inspection_date
+                AND t3.equipment_id = t1.equipment_id
+        WHERE
+            t2.equipment_code = #{equipmentCode}
+            AND t3.inspection_date LIKE CONCAT(#{inspectionDate},'%')
+            AND t3.inspection_status = 'COMPLETE'
+        GROUP BY
+            t1.plan_inspection_date,
+            t1.item_code,
+            t1.item_name,
+            t1.item_demand,
+            t1.inspection_result
+        ORDER BY
+            t1.plan_inspection_date ASC
+    </select>
+
+    <select id="findWeekInsOrderDetailUserList" resultType="org.jeecg.modules.eam.request.EamWeekInsDetailUserResponse">
+        SELECT
+            t1.plan_inspection_date,
+            t1.inspector,
+            t3.confirm_user
+        FROM
+            eam_week_inspection_detail t1
+                LEFT JOIN eam_equipment t2 ON t1.equipment_id = t2.id
+                LEFT JOIN eam_inspection_order t3 ON t3.inspection_date = t1.plan_inspection_date
+                AND t3.equipment_id = t1.equipment_id
+        WHERE
+            t2.equipment_code = #{equipmentCode}
+            AND t3.inspection_date LIKE CONCAT(#{inspectionDate},'%')
+            AND t3.inspection_status = 'COMPLETE'
+        GROUP BY
+            t1.plan_inspection_date,
+            t1.inspector,
+            t3.confirm_user
+        ORDER BY
+            t1.plan_inspection_date ASC
+    </select>
+
 </mapper>
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamInspectionOrderService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamInspectionOrderService.java
index 669eff0..f072bb0 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamInspectionOrderService.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamInspectionOrderService.java
@@ -1,5 +1,6 @@
 package org.jeecg.modules.eam.service;
 
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -88,11 +89,27 @@
     List<EamInspectionOrder> selectUnCompleteOrder(String expiredDate);
 
     /**
-     * 鐐规鎶ヨ〃 new
+     * 瀵煎嚭鑾峰彇鍩烘湰淇℃伅
      */
-    List<InspectionVo> findInspectionResult(String equipmentId, String itemDemand,String yearMonth);
+    JSONObject exportInspectionOrderBaseInfo(String equipmentCode, String inspectionDate);
 
-    List<InspectionVo> findInspectionUser(String equipmentId,String yearMonth);
+    /**
+     * 鏃ョ偣妫�椤瑰垪琛�
+     */
+    JSONObject exportInspectionOrderDetailList(String equipmentCode, String inspectionDate);
 
-    List<Map<String,Object>> findInspectionStandard(String equipmentId);
+    /**
+     * 鏃ョ偣妫�璐d换浜哄垪琛�
+     */
+    JSONObject exportInspectionOrderDetailUserList(String equipmentCode, String inspectionDate);
+
+    /**
+     * 鍛ㄧ偣妫�椤瑰垪琛�
+     */
+    JSONObject exportWeekInsDetailList(String equipmentCode, String inspectionDate);
+
+    /**
+     * 鍛ㄧ偣妫�璐d换浜哄垪琛�
+     */
+    JSONObject exportWeekInsOrderDetailUserList(String equipmentCode, String inspectionDate);
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java
index fa8dc1f..1bf8ee0 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java
@@ -3,6 +3,7 @@
 import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -20,18 +21,14 @@
 import org.jeecg.common.system.vo.LoginUser;
 import org.jeecg.common.util.oConvertUtils;
 import org.jeecg.modules.eam.aspect.annotation.EquipmentHistoryLog;
+import org.jeecg.modules.eam.constant.*;
+import org.jeecg.modules.eam.request.*;
 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.eam.constant.BusinessCodeConst;
-import org.jeecg.modules.eam.constant.EquipmentOperationTagEnum;
-import org.jeecg.modules.eam.constant.InspectionItemCategroyEnum;
-import org.jeecg.modules.eam.constant.InspectionStatus;
 import org.jeecg.modules.eam.entity.*;
 import org.jeecg.modules.eam.mapper.EamInspectionOrderMapper;
-import org.jeecg.modules.eam.request.EamInspectionOrderQuery;
-import org.jeecg.modules.eam.request.EamInspectionOrderRequest;
 import org.jeecg.modules.eam.service.*;
 import org.jeecg.modules.eam.util.DateUtils;
 import org.jeecg.modules.eam.vo.InspectionVo;
@@ -41,13 +38,20 @@
 import org.jeecg.modules.flowable.apithird.service.FlowCommonService;
 import org.jeecg.modules.flowable.service.IFlowDefinitionService;
 import org.jeecg.modules.flowable.service.IFlowTaskService;
+import org.jeecg.modules.system.service.ISysDictService;
 import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
 import java.util.*;
+import java.util.concurrent.atomic.AtomicInteger;
 import java.util.stream.Collectors;
+import java.util.stream.IntStream;
 
 /**
  * @Description: 鐐规宸ュ崟
@@ -84,6 +88,8 @@
     private IEamReportRepairService eamReportRepairService;
     @Resource
     private IEamMaintenanceStandardDetailService eamMaintenanceStandardDetailService;
+    @Resource
+    private ISysDictService sysDictService;
 
     @Override
     public IPage<EamInspectionOrder> queryPageList(Page<EamInspectionOrder> page, EamInspectionOrderQuery query) {
@@ -156,6 +162,264 @@
         return eamInspectionOrderMapper.selectList(queryWrapper);
     }
 
+    /**
+     * 瀵煎嚭鑾峰彇鍩烘湰淇℃伅
+     * @param equipmentCode 璁惧缂栫爜
+     * @param inspectionDate 鐐规鏃ユ湡
+     * @return
+     */
+    @Override
+    public JSONObject exportInspectionOrderBaseInfo(String equipmentCode, String inspectionDate) {
+        // 鍒涘缓缁撴灉瀵硅薄
+        JSONObject result = new JSONObject();
+        EamInspectionOrderBaseResponse eamInspectionOrderBaseResponse = eamInspectionOrderMapper.findInsOrderBaseInfo(equipmentCode, inspectionDate);
+        // 澶勭悊鍗曚綅
+        String factoryOrgCode = eamInspectionOrderBaseResponse.getFactoryName();
+        BaseFactory baseFactory = baseFactoryService.getOne(new LambdaQueryWrapper<BaseFactory>().eq(BaseFactory::getOrgCode, factoryOrgCode.substring(0, 6)));
+        eamInspectionOrderBaseResponse.setFactoryName(baseFactory.getFactoryName());
+        result.put("data",Collections.singletonList(eamInspectionOrderBaseResponse));
+        return result;
+    }
+
+    /**
+     * 鏃ョ偣妫�椤瑰垪琛�
+     * @param equipmentCode 璁惧缂栫爜
+     * @param inspectionDate 鐐规鏃ユ湡
+     * @return
+     */
+    @Override
+    public JSONObject exportInspectionOrderDetailList(String equipmentCode, String inspectionDate) {
+        // 鍒涘缓缁撴灉瀵硅薄
+        JSONObject result = new JSONObject();
+        List<EamInsOrderDetailResultResponse> eamInsOrderDetailResultResponseList = eamInspectionOrderMapper.findInsOrderDetailList(equipmentCode, inspectionDate);
+        if (eamInsOrderDetailResultResponseList == null || eamInsOrderDetailResultResponseList.isEmpty()) {
+            return result;
+        }
+        Map<EamInsOrderDetailResultResponse, List<EamInsOrderDetailResultResponse>> groupMap = eamInsOrderDetailResultResponseList
+                .stream().collect(Collectors.groupingBy(
+                        // 鍒嗙粍閿細鍖呭惈 itemCode銆乮temName銆乮temDemand 鐨勫璞�
+                        item -> new EamInsOrderDetailResultResponse(
+                                item.getItemCode(),
+                                item.getItemName(),
+                                item.getItemDemand()
+                        ),
+                        // 鐢� TreeMap 浣滀负瀹瑰櫒锛屽苟鎸囧畾鎸� itemCode 鎺掑簭鐨勬瘮杈冨櫒
+                        () -> new TreeMap<>(Comparator.comparingInt(EamInsOrderDetailResultResponse::getItemCode)),
+                        // 鏀堕泦姣忕粍鐨勫厓绱犱负 List
+                        Collectors.toList()
+                ));
+        List<Map<String, Object>> resultList = new ArrayList<>();
+        groupMap.forEach((insOrderDetailResultResponse, insOrderDetailResultResponseList) -> {
+            Map<String, Object> resultMap = new LinkedHashMap<>();
+            resultMap.put("itemCode", insOrderDetailResultResponse.getItemCode());
+            resultMap.put("itemName", insOrderDetailResultResponse.getItemName());
+            resultMap.put("itemDemand", insOrderDetailResultResponse.getItemDemand());
+            Map<Integer, EamInsOrderDetailResultResponse> collect = insOrderDetailResultResponseList
+                    .stream().collect(Collectors.toMap(
+                            // 鍒嗙粍閿細鎻愬彇鏃ユ湡涓殑鈥滃ぉ鈥�
+                            item -> {
+                                Date date = item.getInspectionDate();
+                                LocalDate localDate = date.toInstant()
+                                        .atZone(ZoneId.systemDefault())
+                                        .toLocalDate();
+                                return localDate.getDayOfMonth(); // 閿负鈥滃ぉ鈥濓紙1-31锛�
+                            },
+                            // 鍊硷細鐩存帴浣跨敤褰撳墠瀵硅薄锛堜綔涓哄垵濮嬪�硷級
+                            item -> item,
+                            // 鍚堝苟鍑芥暟锛氬綋鍚屼竴鈥滃ぉ鈥濇湁澶氫釜瀵硅薄鏃讹紝濡備綍澶勭悊锛堣繖閲岀ず渚嬪彇绗竴涓級
+                            (existing, replacement) -> existing // 鑻ユ湁閲嶅閿紝淇濈暀宸插瓨鍦ㄧ殑瀵硅薄
+                    ));
+            for (int i = 1; i <= 31; i++) {
+                if (collect.containsKey(i)) {
+                    String inspectionResult = "";
+                    switch (collect.get(i).getInspectionResult()) {
+                        case "NORMAL":
+                            inspectionResult = "鈭�";
+                            break;
+                        case "ANOMALY":
+                            inspectionResult = "脳";
+                            break;
+                        case "FAULT":
+                            inspectionResult = "鈻�";
+                            break;
+                        case "CLOSE":
+                            inspectionResult = "T";
+                            break;
+                    }
+                    resultMap.put("inspectionResult" + i, inspectionResult);
+                } else {
+                    resultMap.put("inspectionResult" + i, "");
+                }
+            }
+            resultList.add(resultMap);
+        });
+        result.put("data", resultList);
+        return result;
+    }
+
+    /**
+     * 鏃ョ偣妫�璐d换浜哄垪琛�
+     * @param equipmentCode 璁惧缂栫爜
+     * @param inspectionDate 鐐规鏃ユ湡
+     * @return
+     */
+    @Override
+    public JSONObject exportInspectionOrderDetailUserList(String equipmentCode, String inspectionDate) {
+        // 鍒涘缓缁撴灉瀵硅薄
+        JSONObject result = new JSONObject();
+        List<EamInsOrderDetailUserResponse> eamInsOrderDetailUserResponseList = eamInspectionOrderMapper.findInspectionOrderDetailUserList(equipmentCode, inspectionDate);
+        if (eamInsOrderDetailUserResponseList == null || eamInsOrderDetailUserResponseList.isEmpty()) {
+            return result;
+        }
+        Map<Integer, EamInsOrderDetailUserResponse> groupMap = eamInsOrderDetailUserResponseList.stream().collect(Collectors.toMap(
+                // 鍒嗙粍閿細鎻愬彇鏃ユ湡涓殑鈥滃ぉ鈥�
+                item -> {
+                    Date date = item.getInspectionDate();
+                    LocalDate localDate = date.toInstant()
+                            .atZone(ZoneId.systemDefault())
+                            .toLocalDate();
+                    return localDate.getDayOfMonth(); // 閿负鈥滃ぉ鈥濓紙1-31锛�
+                },
+                // 鍊硷細鐩存帴浣跨敤褰撳墠瀵硅薄锛堜綔涓哄垵濮嬪�硷級
+                item -> item,
+                // 鍚堝苟鍑芥暟锛氬綋鍚屼竴鈥滃ぉ鈥濇湁澶氫釜瀵硅薄鏃讹紝濡備綍澶勭悊锛堣繖閲岀ず渚嬪彇绗竴涓級
+                (existing, replacement) -> existing // 鑻ユ湁閲嶅閿紝淇濈暀宸插瓨鍦ㄧ殑瀵硅薄
+        ));
+        List<Map<String, Object>> resultList = new ArrayList<>();
+        for (int i = 1; i <= 31; i++) {
+            Map<String, Object> resultMap = new HashMap<>();
+            if (groupMap.containsKey(i)) {
+                EamInsOrderDetailUserResponse eamInsOrderDetailUserResponse = groupMap.get(i);
+                resultMap.put("operator" + i, sysDictService.queryTableDictTextByKey("sys_user", "realname", "username", eamInsOrderDetailUserResponse.getOperator()));
+                resultMap.put("confirmUser" + i, sysDictService.queryTableDictTextByKey("sys_user", "realname", "username", eamInsOrderDetailUserResponse.getConfirmUser()));
+            } else {
+                resultMap.put("operator" + i, "");
+                resultMap.put("confirmUser" + i, "");
+            }
+            resultList.add(resultMap);
+        }
+        result.put("data", resultList);
+        return result;
+    }
+
+    /**
+     * 鍛ㄧ偣妫�椤瑰垪琛�
+     * @param equipmentCode 璁惧缂栫爜
+     * @param inspectionDate 鐐规鏃ユ湡
+     * @return
+     */
+    @Override
+    public JSONObject exportWeekInsDetailList(String equipmentCode, String inspectionDate) {
+        // 鍒涘缓缁撴灉瀵硅薄
+        JSONObject result = new JSONObject();
+        List<EamWeekInsDetailResultResponse> eamWeekInsDetailResultResponseList = eamInspectionOrderMapper.findWeekInsDetailList(equipmentCode, inspectionDate);
+        if (eamWeekInsDetailResultResponseList == null || eamWeekInsDetailResultResponseList.isEmpty()) {
+            return result;
+        }
+        Map<EamWeekInsDetailResultResponse, List<EamWeekInsDetailResultResponse>> groupMap = eamWeekInsDetailResultResponseList
+                .stream().collect(Collectors.groupingBy(
+                        // 鍒嗙粍閿細鍖呭惈 itemCode銆乮temName銆乮temDemand 鐨勫璞�
+                        item -> new EamWeekInsDetailResultResponse(
+                                item.getItemCode(),
+                                item.getItemName(),
+                                item.getItemDemand()
+                        ),
+                        // 鐢� TreeMap 浣滀负瀹瑰櫒锛屽苟鎸囧畾鎸� itemCode 鎺掑簭鐨勬瘮杈冨櫒
+                        () -> new TreeMap<>(Comparator.comparingInt(EamWeekInsDetailResultResponse::getItemCode)),
+                        // 鏀堕泦姣忕粍鐨勫厓绱犱负 List
+                        Collectors.toList()
+                ));
+        List<Map<String, Object>> resultList = new ArrayList<>();
+        groupMap.forEach((weekInsDetailResultResponse, weekInsDetailResultResponseList) -> {
+            Map<String, Object> resultMap = new LinkedHashMap<>();
+            resultMap.put("itemCode", weekInsDetailResultResponse.getItemCode());
+            resultMap.put("itemName", weekInsDetailResultResponse.getItemName());
+            resultMap.put("itemDemand", weekInsDetailResultResponse.getItemDemand());
+            // 浣跨敤AtomicInteger浣滀负璁℃暟鍣紝浠�1寮�濮�
+            AtomicInteger counter = new AtomicInteger(1);
+            Map<Integer, EamWeekInsDetailResultResponse> collect = weekInsDetailResultResponseList
+                    .stream()
+                    .collect(Collectors.toMap(
+                            // 鍒嗙粍閿細浣跨敤鑷搴忓彿锛堜粠1寮�濮嬶級
+                            item -> counter.getAndIncrement(),
+                            // 鍊硷細鐩存帴浣跨敤褰撳墠瀵硅薄
+                            item -> item,
+                            // 鍚堝苟鍑芥暟锛氬綋鍚屼竴搴忓彿鏈夊涓璞℃椂锛堢悊璁轰笂涓嶄細鍙戠敓锛夛紝濡備綍澶勭悊
+                            (existing, replacement) -> existing, // 鑻ユ湁閲嶅閿紝淇濈暀宸插瓨鍦ㄧ殑瀵硅薄
+                            // 鎸囧畾Map鐨勫叿浣撳疄鐜帮紙鍙�夛級
+                            LinkedHashMap::new // 淇濇寔鎻掑叆椤哄簭
+                    ));
+            for (int i = 1; i <= 5; i++) {
+                if (collect.containsKey(i)) {
+                    String inspectionResult = "";
+                    switch (collect.get(i).getInspectionResult()) {
+                        case "NORMAL":
+                            inspectionResult = "鈭�";
+                            break;
+                        case "ANOMALY":
+                            inspectionResult = "脳";
+                            break;
+                        case "FAULT":
+                            inspectionResult = "鈻�";
+                            break;
+                        case "CLOSE":
+                            inspectionResult = "T";
+                            break;
+                    }
+                    resultMap.put("inspectionResult" + i, inspectionResult);
+                } else {
+                    resultMap.put("inspectionResult" + i, "");
+                }
+            }
+            resultList.add(resultMap);
+        });
+        result.put("data", resultList);
+        return result;
+    }
+
+    /**
+     * 鍛ㄧ偣妫�璐d换浜哄垪琛�
+     * @param equipmentCode 璁惧缂栫爜
+     * @param inspectionDate 鐐规鏃ユ湡
+     * @return
+     */
+    @Override
+    public JSONObject exportWeekInsOrderDetailUserList(String equipmentCode, String inspectionDate) {
+        // 鍒涘缓缁撴灉瀵硅薄
+        JSONObject result = new JSONObject();
+        List<EamWeekInsDetailUserResponse> eamWeekInsDetailUserResponseList = eamInspectionOrderMapper.findWeekInsOrderDetailUserList(equipmentCode, inspectionDate);
+        if (eamWeekInsDetailUserResponseList == null || eamWeekInsDetailUserResponseList.isEmpty()) {
+            return result;
+        }
+        // 浣跨敤AtomicInteger浣滀负璁℃暟鍣紝浠�1寮�濮�
+        AtomicInteger counter = new AtomicInteger(1);
+        Map<Integer, EamWeekInsDetailUserResponse> groupMap = eamWeekInsDetailUserResponseList
+                .stream()
+                .collect(Collectors.toMap(
+                        // 鍒嗙粍閿細浣跨敤鑷搴忓彿锛堜粠1寮�濮嬶級
+                        item -> counter.getAndIncrement(),
+                        // 鍊硷細鐩存帴浣跨敤褰撳墠瀵硅薄锛堜綔涓哄垵濮嬪�硷級
+                        item -> item,
+                        // 鍚堝苟鍑芥暟锛氬綋鍚屼竴鈥滃ぉ鈥濇湁澶氫釜瀵硅薄鏃讹紝濡備綍澶勭悊锛堣繖閲岀ず渚嬪彇绗竴涓級
+                        (existing, replacement) -> existing // 鑻ユ湁閲嶅閿紝淇濈暀宸插瓨鍦ㄧ殑瀵硅薄
+                ));
+        List<Map<String, Object>> resultList = new ArrayList<>();
+        for (int i = 1; i <= 5; i++) {
+            Map<String, Object> resultMap = new HashMap<>();
+            if (groupMap.containsKey(i)) {
+                EamWeekInsDetailUserResponse eamWeekInsDetailUserResponse = groupMap.get(i);
+                resultMap.put("operator" + i, sysDictService.queryTableDictTextByKey("sys_user", "realname", "username", eamWeekInsDetailUserResponse.getInspector()));
+                resultMap.put("confirmUser" + i, sysDictService.queryTableDictTextByKey("sys_user", "realname", "username", eamWeekInsDetailUserResponse.getConfirmUser()));
+            } else {
+                resultMap.put("operator" + i, "");
+                resultMap.put("confirmUser" + i, "");
+            }
+            resultList.add(resultMap);
+        }
+        result.put("data", resultList);
+        return result;
+    }
+
     @Override
     @Transactional(rollbackFor = Exception.class)
     public Result<String> addInspectionOrder(EamInspectionOrderRequest eamInspectionOrderRequest) {
@@ -193,6 +457,7 @@
                 if (CollectionUtils.isNotEmpty(maintenanceStandardDetailList)) {
                     List<EamWeekInspectionDetail> weekInspectionDetailList = maintenanceStandardDetailList.stream().map(EamWeekInspectionDetail::new).collect(Collectors.toList());
                     weekInspectionDetailList.forEach(weekInspectionDetail -> {
+                        weekInspectionDetail.setEquipmentId(eamInspectionOrderRequest.getEquipmentId());
                         weekInspectionDetail.setStandardId(eamInspectionOrderRequest.getStandardId());
                         // TODO 鍛ㄧ偣妫�鏃ユ湡
                         weekInspectionDetail.setPlanInspectionDate(eamInspectionOrderRequest.getInspectionDate());
@@ -541,18 +806,4 @@
         return (List<String>) object;
     }
 
-    @Override
-    public List<InspectionVo> findInspectionResult(String equipmentId, String itemDemand, String yearMonth) {
-        return this.baseMapper.findInspectionResult(equipmentId, itemDemand, yearMonth);
-    }
-
-    @Override
-    public List<InspectionVo> findInspectionUser(String equipmentId, String yearMonth) {
-        return this.baseMapper.findInspectionUser(equipmentId, yearMonth);
-    }
-
-    @Override
-    public List<Map<String, Object>> findInspectionStandard(String equipmentId) {
-        return this.baseMapper.findInspectionStandard(equipmentId);
-    }
 }

--
Gitblit v1.9.3