From 37d6ceefa256356961be44e868842bf6a77e4599 Mon Sep 17 00:00:00 2001
From: lyh <925863403@qq.com>
Date: 星期一, 18 八月 2025 13:37:50 +0800
Subject: [PATCH] 加工设备三级保养验收单 加工设备三级保养移交单批量打印接口

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamThirdMaintenanceOrderMapper.java            |    9 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamThirdMaintenanceOrderMapper.xml         |   10 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamThirdMaintenanceOrderService.java         |   13 +
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/dto/EamThirdMaintenanceOrderExport.java        |  272 ++++++++++++++++++++++++++++++++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java |  100 ++++++++++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamThirdMaintenanceOrderController.java    |   24 +++
 6 files changed, 427 insertions(+), 1 deletions(-)

diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/dto/EamThirdMaintenanceOrderExport.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/dto/EamThirdMaintenanceOrderExport.java
new file mode 100644
index 0000000..30870f5
--- /dev/null
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/dto/EamThirdMaintenanceOrderExport.java
@@ -0,0 +1,272 @@
+package org.jeecg.modules.eam.dto;
+
+import com.baomidou.mybatisplus.annotation.*;
+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.jeecg.common.aspect.annotation.Dict;
+import org.jeecg.common.aspect.annotation.DictList;
+import org.jeecg.common.system.base.entity.JeecgEntity;
+import org.jeecg.modules.eam.entity.EamThirdMaintenanceOrderDetail;
+import org.jeecg.modules.eam.entity.EamThirdMaintenanceSpare;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * @Description: 璁惧涓夌骇淇濆吇
+ * @Author: jeecg-boot
+ * @Date: 2025-04-29
+ * @Version: V1.0
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class EamThirdMaintenanceOrderExport  {
+
+    /**
+     * ID
+     */
+    @TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "ID")
+    private String id;
+    /**
+     * 鍒犻櫎鏍囪
+     */
+    @ApiModelProperty(value = "鍒犻櫎鏍囪")
+    private Integer delFlag;
+    /**
+     * 宸ュ崟鍙�
+     */
+    @Excel(name = "宸ュ崟鍙�", width = 15)
+    @ApiModelProperty(value = "宸ュ崟鍙�")
+    private String orderNum;
+    /**
+     * 璁惧ID
+     */
+    @Excel(name = "璁惧ID", width = 15)
+    @ApiModelProperty(value = "璁惧ID")
+    private String equipmentId;
+    /**
+     * 鏍囧噯ID
+     */
+    @Excel(name = "鏍囧噯ID", width = 15)
+    @ApiModelProperty(value = "鏍囧噯ID")
+    @Dict(dictTable = "eam_maintenance_standard", dicCode = "id", dicText = "standard_name")
+    private String standardId;
+    /**
+     * 璁″垝淇濆吇鏃ユ湡
+     */
+    @ApiModelProperty(value = "璁″垝淇濆吇鏃ユ湡;鎻愬墠70澶╃敓鎴愬伐鍗�")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
+    private String maintenanceDate;
+    /**
+     * 閿佸畾宸ュ崟鏃ユ湡
+     */
+    @ApiModelProperty(value = "閿佸畾宸ュ崟鏃ユ湡;鎻愬墠55澶╅攣瀹氬伐鍗�")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    private Date freezeOrderDate;
+    /**
+     * 宸ュ崟杩囨湡鏃ユ湡
+     */
+    @ApiModelProperty(value = "宸ュ崟杩囨湡鏃ユ湡;鍒版湡鏈仛鐩存帴杩囨湡")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    private Date orderExpirationDate;
+    /**
+     * 瀹為檯寮�濮嬫椂闂�
+     */
+    @Excel(name = "瀹為檯寮�濮嬫椂闂�", width = 20, format = "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 actualStartTime;
+    /**
+     * 瀹為檯缁撴潫鏃堕棿
+     */
+    @Excel(name = "瀹為檯缁撴潫鏃堕棿", width = 20, format = "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 actualEndTime;
+    /**
+     * 缁翠慨浜�
+     */
+    @Excel(name = "缁翠慨浜�", width = 15)
+    @ApiModelProperty(value = "缁翠慨浜�")
+    @Dict(dictTable = "sys_user", dicCode = "username", dicText = "realname")
+    private String repairman;
+    /**
+     * 淇濆吇鐘舵��
+     */
+    @Excel(name = "淇濆吇鐘舵��", width = 15)
+    @ApiModelProperty(value = "淇濆吇鐘舵��;寰呬繚鍏汇�佷繚鍏讳腑銆佸緟妫�鏌ャ�佹搷浣滀汉绛惧瓧銆佺淮淇汉绛惧瓧銆佺淮淇涓讳换绛惧瓧銆佽澶囨鏌ヤ汉绛惧瓧銆佸凡瀹屾垚銆佸凡閿佸畾銆佸彉鏇翠腑銆佸凡鍙栨秷")
+    @Dict(dicCode = "third_maintenance_status")
+    private String maintenanceStatus;
+    /**
+     * 鍒涘缓鏂瑰紡
+     */
+    @Excel(name = "鍒涘缓鏂瑰紡", width = 15)
+    @ApiModelProperty(value = "鍒涘缓鏂瑰紡")
+    @Dict(dicCode = "order_creation_method")
+    private String creationMethod;
+    /**
+     * 璁惧鍔熻兘鏄惁榻愬;鏄惁
+     */
+    @Excel(name = "璁惧鍔熻兘鏄惁榻愬;鏄惁", width = 15)
+    @ApiModelProperty(value = "璁惧鍔熻兘鏄惁榻愬;鏄惁")
+    @Dict(dicCode = "yn")
+    private String fullyFunctional;
+    /**
+     * 璁惧鍔熻兘鏄惁榻愬;鏄惁
+     */
+    @Excel(name = "璁惧鑳藉惁姝e父杩愯浆;鏄惁", width = 15)
+    @ApiModelProperty(value = "璁惧鍔熻兘鏄惁榻愬;鏄惁")
+    @Dict(dicCode = "yn")
+    private String runningNormally;
+    /**
+     * 闂鎻忚堪
+     */
+    @Excel(name = "闂鎻忚堪", width = 30)
+    @ApiModelProperty(value = "闂鎻忚堪")
+    private String problemDescription;
+    /**
+     * 妫�鏌ヤ汉
+     */
+    @Excel(name = "妫�鏌ヤ汉", width = 15)
+    @ApiModelProperty(value = "妫�鏌ヤ汉")
+    @Dict(dictTable = "sys_user", dicCode = "username", dicText = "realname")
+    private String inspector;
+    /**
+     * 妫�鏌ユ椂闂�
+     */
+    @ApiModelProperty(value = "妫�鏌ユ椂闂�")
+    @Excel(name = "妫�鏌ユ椂闂�", width = 20, format = "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")
+    private Date inspectTime;
+    /**
+     * 鎿嶄綔浜虹瀛�
+     */
+    @Excel(name = "鎿嶄綔浜虹瀛�", width = 15)
+    @ApiModelProperty(value = "鎿嶄綔浜虹瀛�")
+    @Dict(dictTable = "sys_user", dicCode = "username", dicText = "realname")
+    private String operatorSignature;
+    /**
+     * 鍗忓姪鎿嶄綔浜�
+     */
+    @Excel(name = "鍗忓姪鎿嶄綔浜�", width = 15)
+    @ApiModelProperty(value = "鍗忓姪鎿嶄綔浜�")
+    private String assistantOperator;
+    /**
+     * 鎿嶄綔浜虹瀛楁椂闂�
+     */
+    @ApiModelProperty(value = "鎿嶄綔浜虹瀛楁椂闂�")
+    @Excel(name = "鎿嶄綔浜虹瀛楁椂闂�", width = 20, format = "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")
+    private Date operatorSignatureTime;
+    /**
+     * 缁翠慨浜虹瀛�
+     */
+    @Excel(name = "缁翠慨浜虹瀛�", width = 15)
+    @ApiModelProperty(value = "缁翠慨浜虹瀛�")
+    @Dict(dictTable = "sys_user", dicCode = "username", dicText = "realname")
+    private String repairmanSignature;
+    /**
+     * 鍗忓姪缁翠慨浜�
+     */
+    @Excel(name = "鍗忓姪缁翠慨浜�", width = 15)
+    @ApiModelProperty(value = "鍗忓姪缁翠慨浜�")
+    private String assistantRepairman;
+    /**
+     * 缁翠慨浜虹瀛楁椂闂�
+     */
+    @ApiModelProperty(value = "缁翠慨浜虹瀛楁椂闂�")
+    @Excel(name = "缁翠慨浜虹瀛楁椂闂�", width = 20, format = "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")
+    private Date repairmanSignatureTime;
+    /**
+     * 缁翠慨瀹や富浠荤瀛�
+     */
+    @Excel(name = "缁翠慨瀹や富浠荤瀛�", width = 15)
+    @ApiModelProperty(value = "缁翠慨瀹や富浠荤瀛�")
+    @Dict(dictTable = "sys_user", dicCode = "username", dicText = "realname")
+    private String repairManagerSignature;
+    /**
+     * 缁翠慨瀹や富浠荤瀛楁椂闂�
+     */
+    @ApiModelProperty(value = "缁翠慨瀹や富浠荤瀛楁椂闂�")
+    @Excel(name = "缁翠慨瀹や富浠荤瀛楁椂闂�", width = 20, format = "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")
+    private Date repairManagerSignatureTime;
+    /**
+     * 璁惧妫�鏌ヤ汉绛惧瓧
+     */
+    @Excel(name = "璁惧妫�鏌ヤ汉绛惧瓧", width = 15)
+    @ApiModelProperty(value = "璁惧妫�鏌ヤ汉绛惧瓧")
+    @Dict(dictTable = "sys_user", dicCode = "username", dicText = "realname")
+    private String inspectorSignature;
+    /**
+     * 璁惧妫�鏌ヤ汉绛惧瓧鏃堕棿
+     */
+    @ApiModelProperty(value = "璁惧妫�鏌ヤ汉绛惧瓧鏃堕棿")
+    @Excel(name = "璁惧妫�鏌ヤ汉绛惧瓧鏃堕棿", width = 20, format = "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")
+    private Date inspectorSignatureTime;
+    /**
+     * 澶囨敞
+     */
+    @Excel(name = "澶囨敞", width = 15)
+    @ApiModelProperty(value = "澶囨敞")
+    private String remark;
+    /**
+     * 绉讳氦鍗旽F缂栫爜
+     */
+    @Excel(name = "绉讳氦鍗旽F缂栫爜", width = 15)
+    @ApiModelProperty(value = "绉讳氦鍗旽F缂栫爜")
+    private String hfCodeA;
+    /**
+     * 楠屾敹鍗旽F缂栫爜
+     */
+    @Excel(name = "楠屾敹鍗旽F缂栫爜", width = 15)
+    @ApiModelProperty(value = "楠屾敹鍗旽F缂栫爜")
+    private String hfCodeB;
+    //鍒楄〃灞曠ず
+    @TableField(exist = false)
+    private String equipmentCode;
+    @TableField(exist = false)
+    private String equipmentName;
+    //鍨嬪彿
+    @TableField(exist = false)
+    private String equipmentModel;
+    //淇濆吇鏃ユ湡
+    private String maintenanceDateFormatted;
+    //浣跨敤鍗曚綅
+    private String factoryName;
+    /**
+     * 澶囦欢鏄庣粏
+     */
+    @ApiModelProperty(value = "澶囦欢浣跨敤鏄庣粏")
+    @DictList
+    private List<EamThirdMaintenanceSpare> eamThirdMaintenanceSpareList;
+
+    /**
+     * 鍒楄〃 淇濆吇椤规槑缁�
+     */
+    @ApiModelProperty(value = "鍒楄〃 淇濆吇椤规槑缁�")
+    @DictList
+    private List<EamThirdMaintenanceOrderDetail> eamThirdMaintenanceOrderDetailList;
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamThirdMaintenanceOrderController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamThirdMaintenanceOrderController.java
index ee7c54a..69c5722 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamThirdMaintenanceOrderController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamThirdMaintenanceOrderController.java
@@ -278,4 +278,28 @@
     public JSONObject exportThirdMaintenanceOrderBaseInfo(@RequestParam(name = "id", required = true) String id) {
         return eamThirdMaintenanceOrderService.exportThirdMaintenanceOrderBaseInfo(id);
     }
+
+    /**
+     * 鎵归噺鍔犲伐璁惧涓夌骇淇濆吇瀹屽伐绉讳氦鍗�
+     * @param ids
+     * @return
+     */
+    @AutoLog(value = "璁惧涓夌骇淇濆吇-鍔犲伐璁惧涓夌骇淇濆吇瀹屽伐绉讳氦鍗�")
+    @ApiOperation(value = "璁惧涓夌骇淇濆吇-鍔犲伐璁惧涓夌骇淇濆吇瀹屽伐绉讳氦鍗�", notes = "璁惧涓夌骇淇濆吇-鍔犲伐璁惧涓夌骇淇濆吇瀹屽伐绉讳氦鍗�")
+    @GetMapping(value = "/batchExport")
+    public Result<?> export(String ids){
+        return Result.ok(eamThirdMaintenanceOrderService.export(ids));
+    }
+
+    /**
+     * 鎵归噺鍔犲伐璁惧涓夌骇淇濆吇楠屾敹鍗�
+     * @param ids
+     * @return
+     */
+    @AutoLog(value = "璁惧涓夌骇淇濆吇-鍔犲伐璁惧涓夌骇淇濆吇楠屾敹鍗�")
+    @ApiOperation(value = "璁惧涓夌骇淇濆吇-鍔犲伐璁惧涓夌骇淇濆吇楠屾敹鍗�", notes = "璁惧涓夌骇淇濆吇-鍔犲伐璁惧涓夌骇淇濆吇楠屾敹鍗�")
+    @GetMapping(value = "/batchExportCheck")
+    public Result<?> exportCheck(String ids) {
+        return Result.ok(eamThirdMaintenanceOrderService.exportAcceptance(ids));
+    }
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamThirdMaintenanceOrderMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamThirdMaintenanceOrderMapper.java
index 7308b16..54e5579 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamThirdMaintenanceOrderMapper.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamThirdMaintenanceOrderMapper.java
@@ -6,8 +6,11 @@
 import com.baomidou.mybatisplus.core.toolkit.Constants;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.eam.dto.EamThirdMaintenanceOrderExport;
 import org.jeecg.modules.eam.entity.EamThirdMaintenanceOrder;
 import org.jeecg.modules.eam.request.EamThirdMaintenanceBaseResponse;
+
+import java.util.List;
 
 /**
  * @Description: 璁惧涓夌骇淇濆吇
@@ -27,6 +30,12 @@
     IPage<EamThirdMaintenanceOrder> queryPageList(Page<EamThirdMaintenanceOrder> page, @Param(Constants.WRAPPER) QueryWrapper<EamThirdMaintenanceOrder> queryWrapper);
 
     /**
+     * 鍒楄〃鏌ヨ
+     * @param queryWrapper
+     * @return
+     */
+    List<EamThirdMaintenanceOrderExport> queryList(@Param(Constants.WRAPPER) QueryWrapper<EamThirdMaintenanceOrderExport> queryWrapper);
+    /**
      *
      * @param id
      * @return
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamThirdMaintenanceOrderMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamThirdMaintenanceOrderMapper.xml
index c02c296..92cc041 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamThirdMaintenanceOrderMapper.xml
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamThirdMaintenanceOrderMapper.xml
@@ -35,4 +35,12 @@
                 LEFT JOIN eam_base_factory t3 ON t3.org_code = SUBSTRING ( t2.factory_org_code , 1, 6 )
         WHERE t1.id = #{id}
     </select>
-</mapper>
\ No newline at end of file
+    <select id="queryList" resultType="org.jeecg.modules.eam.dto.EamThirdMaintenanceOrderExport">
+        select wmo.*,FORMAT(CAST(wmo.maintenance_date AS DATE), 'yyyy骞碝M鏈坉d鏃�') AS maintenance_date_formatted, e.equipment_code, e.equipment_name, e.equipment_model,f.factory_name
+        from eam_third_maintenance_order wmo
+                 inner join eam_equipment e
+                            on wmo.equipment_id = e.id
+                 LEFT JOIN eam_base_factory f ON f.org_code = SUBSTRING ( e.factory_org_code , 1, 6 )
+            ${ew.customSqlSegment}
+    </select>
+</mapper>
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamThirdMaintenanceOrderService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamThirdMaintenanceOrderService.java
index 0577cc5..6ce703a 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamThirdMaintenanceOrderService.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamThirdMaintenanceOrderService.java
@@ -4,6 +4,7 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.jeecg.common.api.vo.Result;
+import org.jeecg.modules.eam.dto.EamThirdMaintenanceOrderExport;
 import org.jeecg.modules.eam.entity.EamThirdMaintenanceOrder;
 import com.baomidou.mybatisplus.extension.service.IService;
 import org.jeecg.modules.eam.request.EamThirdMaintenanceQuery;
@@ -88,4 +89,16 @@
      * @return
      */
     JSONObject exportThirdMaintenanceOrderBaseInfo(String id);
+
+    /**
+     * 鎵归噺鎵撳嵃鍔犲伐璁惧涓夌骇淇濆吇瀹屽伐绉讳氦鍗�
+     * @param ids
+     * @return
+     */
+    List<EamThirdMaintenanceOrderExport> export(String ids);
+
+    /**
+     * 鎵归噺鎵撳嵃鍔犲伐璁惧涓夌骇淇濆吇楠屾敹鍗�
+     */
+    List<EamThirdMaintenanceOrderExport> exportAcceptance(String ids);
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java
index 497be66..641593a 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java
@@ -24,6 +24,8 @@
 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.dto.EamThirdMaintenanceOrderExport;
+import org.jeecg.modules.eam.dto.EamThirdMaintenanceOrderExport;
 import org.jeecg.modules.eam.entity.*;
 import org.jeecg.modules.eam.mapper.EamThirdMaintenanceOrderMapper;
 import org.jeecg.modules.eam.request.EamThirdMaintenanceBaseResponse;
@@ -591,6 +593,104 @@
     }
 
     /**
+     * 鎵归噺鎵撳嵃鍔犲伐璁惧涓夌骇淇濆吇瀹屽伐绉讳氦鍗�
+     * @param ids
+     * @return
+     */
+    @Override
+    public List<EamThirdMaintenanceOrderExport> export(String ids){
+        QueryWrapper<EamThirdMaintenanceOrderExport> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("wmo.del_flag",CommonConstant.DEL_FLAG_0.toString());
+        queryWrapper.eq("wmo.maintenance_status",SecondMaintenanceStatusEnum.COMPLETE.name());
+        //鐢ㄦ埛鏁版嵁鏉冮檺
+        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+        if (sysUser == null) {
+            return new ArrayList<>();
+        }
+        if (StringUtils.isNotBlank(sysUser.getEamEquipmentIds())) {
+            //閫夋嫨浜嗚澶囷紝鏍规嵁璁惧id杩囨护璁惧
+            List<String> equipArr = Arrays.asList(sysUser.getEamEquipmentIds().split(","));
+            queryWrapper.in("e.equipment_code", equipArr);
+        } else {
+            //娌℃湁閫夋嫨璁惧锛屾牴鎹腑蹇冭繃婊よ澶�
+            List<BaseFactoryUser> baseFactoryUserList=baseFactoryUserService.
+                    list(new LambdaQueryWrapper<BaseFactoryUser>().eq(BaseFactoryUser::getUserId,sysUser.getId()));
+            if(!CollectionUtils.isEmpty(baseFactoryUserList)){
+                Set<String> factoryIds = baseFactoryUserList.stream().map(BaseFactoryUser::getFactoryId).collect(Collectors.toSet());
+                Set<String> factoryCode= baseFactoryService.listByIds(factoryIds).stream().map(BaseFactory::getOrgCode).collect(Collectors.toSet());
+                queryWrapper.in("e.factory_org_code", factoryCode);
+            } else {
+                return new ArrayList<>();
+            }
+        }
+        //鏌ヨ鏉′欢杩囨护
+        if (StrUtil.isNotEmpty(ids)) {
+            List<String> idList = Arrays.asList(ids.split(","));
+            queryWrapper.in("wmo.id", idList);
+        } else {
+            queryWrapper.orderByDesc("wmo.create_time");
+        }
+        List<EamThirdMaintenanceOrderExport> eamThirdMaintenanceOrderExports=this.baseMapper.queryList(queryWrapper);
+        //濉厖瀵瑰簲淇悊鏇存崲澶囦欢鏄庣粏
+        eamThirdMaintenanceOrderExports.forEach(eamThirdMaintenanceOrderExport->{
+            List<EamThirdMaintenanceSpare> eamThirdMaintenanceSpares=eamThirdMaintenanceSpareService.list(
+                    new QueryWrapper<EamThirdMaintenanceSpare>().eq("order_Id",eamThirdMaintenanceOrderExport.getId()));
+            if (!eamThirdMaintenanceSpares.isEmpty()){
+                eamThirdMaintenanceOrderExport.setEamThirdMaintenanceSpareList(eamThirdMaintenanceSpares);
+            }
+        });
+        return eamThirdMaintenanceOrderExports;
+    }
+
+    /**
+     * 鎵归噺鎵撳嵃鍔犲伐璁惧涓夌骇淇濆吇楠屾敹鍗�
+     */
+    @Override
+    public List<EamThirdMaintenanceOrderExport> exportAcceptance(String ids){
+        QueryWrapper<EamThirdMaintenanceOrderExport> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("wmo.del_flag",CommonConstant.DEL_FLAG_0.toString());
+        queryWrapper.eq("wmo.maintenance_status",SecondMaintenanceStatusEnum.COMPLETE.name());
+        //鐢ㄦ埛鏁版嵁鏉冮檺
+        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+        if (sysUser == null) {
+            return new ArrayList<>();
+        }
+        if (StringUtils.isNotBlank(sysUser.getEamEquipmentIds())) {
+            //閫夋嫨浜嗚澶囷紝鏍规嵁璁惧id杩囨护璁惧
+            List<String> equipArr = Arrays.asList(sysUser.getEamEquipmentIds().split(","));
+            queryWrapper.in("e.equipment_code", equipArr);
+        } else {
+            //娌℃湁閫夋嫨璁惧锛屾牴鎹腑蹇冭繃婊よ澶�
+            List<BaseFactoryUser> baseFactoryUserList=baseFactoryUserService.
+                    list(new LambdaQueryWrapper<BaseFactoryUser>().eq(BaseFactoryUser::getUserId,sysUser.getId()));
+            if(!CollectionUtils.isEmpty(baseFactoryUserList)){
+                Set<String> factoryIds = baseFactoryUserList.stream().map(BaseFactoryUser::getFactoryId).collect(Collectors.toSet());
+                Set<String> factoryCode= baseFactoryService.listByIds(factoryIds).stream().map(BaseFactory::getOrgCode).collect(Collectors.toSet());
+                queryWrapper.in("e.factory_org_code", factoryCode);
+            } else {
+                return new ArrayList<>();
+            }
+        }
+        //鏌ヨ鏉′欢杩囨护
+        if (StrUtil.isNotEmpty(ids)) {
+            List<String> idList = Arrays.asList(ids.split(","));
+            queryWrapper.in("wmo.id", idList);
+        } else {
+            queryWrapper.orderByDesc("wmo.create_time");
+        }
+        List<EamThirdMaintenanceOrderExport> eamThirdMaintenanceOrderExports=this.baseMapper.queryList(queryWrapper);
+        //濉厖瀵瑰簲淇濆吇椤规槑缁�
+        eamThirdMaintenanceOrderExports.forEach(eamThirdMaintenanceOrderExport->{
+            List<EamThirdMaintenanceOrderDetail> eamThirdMaintenanceSpares=eamThirdMaintenanceOrderDetailService.list(
+                    new QueryWrapper<EamThirdMaintenanceOrderDetail>().eq("order_Id",eamThirdMaintenanceOrderExport.getId()));
+            if (!eamThirdMaintenanceSpares.isEmpty()){
+                eamThirdMaintenanceOrderExport.setEamThirdMaintenanceOrderDetailList(eamThirdMaintenanceSpares);
+            }
+        });
+        return eamThirdMaintenanceOrderExports;
+    }
+
+    /**
      * 鏇存柊宸ュ崟鐘舵��
      */
     private void updateOrderStatus(Result result, EamThirdMaintenanceRequest request, EamThirdMaintenanceOrder order, LoginUser user) {

--
Gitblit v1.9.3