From b17ab31f94fb11f7098e4c91f9b4386b2020f676 Mon Sep 17 00:00:00 2001
From: “linengliang” <vanSuperEnergy@163.com>
Date: 星期四, 28 十二月 2023 11:16:02 +0800
Subject: [PATCH] 提交

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EquipmentReportRepairServiceImpl.java |   26 +++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EquipmentReportRepairMapper.java            |   19 +++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEquipmentReportRepairService.java         |    4 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java             |   11 ++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EquipmentReportRepairController.java    |   38 +++++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/vo/RepairReportExportVo.java                       |   61 ++++++++++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/Equipment.java                              |    4 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EquipmentReportRepairMapper.xml         |   86 +++++++++++++++++
 8 files changed, 248 insertions(+), 1 deletions(-)

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 5f74945..e9fd024 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
@@ -894,6 +894,15 @@
 		 equipmentService.updateBatchById(equipmentList);
 		 return Result.OK("缂栬緫鎴愬姛");
 	 }
-
+	 @PostMapping("/updateKeyEquipment")
+	 public  Result<?>updateKeyEquipment(@RequestBody Equipment equipment){
+	 	 equipmentService.update(new UpdateWrapper<Equipment>().eq("specific_equipment","0").set("specific_equipment",null));
+		 List<Equipment> keyEquipmentUpdateList = equipment.getKeyEquipmentUpdateList();
+		 for(Equipment updateEquipment:keyEquipmentUpdateList){
+		 	 updateEquipment.setId(updateEquipment.getEquipmentId());
+             equipmentService.updateById(updateEquipment);
+		 }
+		 return Result.OK("淇敼鎴愬姛");
+	 }
 
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EquipmentReportRepairController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EquipmentReportRepairController.java
index bbe7f0b..15505fe 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EquipmentReportRepairController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EquipmentReportRepairController.java
@@ -8,6 +8,7 @@
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.poi.ss.formula.functions.T;
 import org.apache.shiro.SecurityUtils;
 import org.jeecg.common.api.dto.message.MessageDTO;
 import org.jeecg.common.api.vo.Result;
@@ -17,17 +18,25 @@
 import org.jeecg.common.system.base.controller.JeecgController;
 import org.jeecg.common.system.query.QueryGenerator;
 import org.jeecg.common.system.vo.LoginUser;
+import org.jeecg.common.util.oConvertUtils;
 import org.jeecg.modules.eam.entity.*;
 import org.jeecg.modules.eam.service.*;
+import org.jeecg.modules.eam.vo.RepairReportExportVo;
 import org.jeecg.modules.system.entity.SysUser;
 import org.jeecg.modules.system.service.ISysUserService;
+import org.jeecgframework.poi.excel.def.NormalExcelConstants;
+import org.jeecgframework.poi.excel.entity.ExportParams;
+import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.context.annotation.Lazy;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.servlet.ModelAndView;
 
 import javax.servlet.http.HttpServletRequest;
 import java.math.BigDecimal;
+import java.util.Arrays;
 import java.util.Date;
 import java.util.List;
 import java.util.Map;
@@ -61,6 +70,8 @@
     private IdentityService sysIdentityService;
     @Autowired
     private IFaultInfoService faultInfoService;
+    @Value("${jeecg.path.upload}")
+    private String upLoadPath;
 
 
     /**
@@ -294,4 +305,31 @@
         }
         return Result.OK("楠屾敹鎴愬姛");
     }
+    /**
+     * 瀵煎嚭excel
+     *
+     * @param request
+     * @param equipmentReportRepair
+     */
+    @RequestMapping(value = "/exportXls")
+    public ModelAndView exportXls(HttpServletRequest request, RepairReportExportVo equipmentReportRepair) {
+        // Step.1 缁勮鏌ヨ鏉′欢
+        String title = "鏁呴殰鎶ヤ慨瀵煎嚭";
+        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+        // Step.2 鑾峰彇瀵煎嚭鏁版嵁
+        List<RepairReportExportVo> exportList = equipmentReportRepairService.exportList(equipmentReportRepair);
+
+        // Step.3 AutoPoi 瀵煎嚭Excel
+        ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
+        //姝ゅ璁剧疆鐨刦ilename鏃犳晥 ,鍓嶇浼氶噸鏇存柊璁剧疆涓�涓�
+        mv.addObject(NormalExcelConstants.FILE_NAME, title);
+        mv.addObject(NormalExcelConstants.CLASS, RepairReportExportVo.class);
+        //update-begin--Author:liusq  Date:20210126 for锛氬浘鐗囧鍑烘姤閿欙紝ImageBasePath鏈缃�--------------------
+        ExportParams exportParams=new ExportParams(title + "鎶ヨ〃", "瀵煎嚭浜�:" + sysUser.getRealname(), title);
+        exportParams.setImageBasePath(upLoadPath);
+        //update-end--Author:liusq  Date:20210126 for锛氬浘鐗囧鍑烘姤閿欙紝ImageBasePath鏈缃�----------------------
+        mv.addObject(NormalExcelConstants.PARAMS,exportParams);
+        mv.addObject(NormalExcelConstants.DATA_LIST, exportList);
+        return mv;
+    }
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/Equipment.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/Equipment.java
index a28957f..9d435f7 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/Equipment.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/Equipment.java
@@ -399,6 +399,10 @@
     @Dict(dicCode = "is_product")
     @TableField(exist = false)
     private String nums;
+    @TableField(exist = false)
+    private String equipmentId;
+    @TableField(exist = false)
+    private List<Equipment> keyEquipmentUpdateList;
 
 
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EquipmentReportRepairMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EquipmentReportRepairMapper.java
index 20b8620..9ed8493 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EquipmentReportRepairMapper.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EquipmentReportRepairMapper.java
@@ -5,7 +5,9 @@
 import org.apache.ibatis.annotations.Param;
 import org.jeecg.modules.eam.entity.ChangeCause;
 import org.jeecg.modules.eam.entity.EquipmentReportRepair;
+import org.jeecg.modules.eam.vo.RepairReportExportVo;
 
+import java.util.Date;
 import java.util.List;
 import java.util.Map;
 
@@ -18,4 +20,21 @@
 public interface EquipmentReportRepairMapper extends BaseMapper<EquipmentReportRepair> {
 
     IPage<Map<String, Object>> getReportRepairList(IPage<Map> pageData, @Param("params") Map<String,Object> params,@Param("equipNums") List<String> equipNums);
+
+    List<RepairReportExportVo> exportList(
+            @Param("num")String num,
+            @Param("faultStartTime")Date faultStartTime,
+            @Param("faultEndTime")Date faultEndTime,
+            @Param("isStop")String isStop,
+            @Param("status")String status,
+            @Param("errUda2")String errUda2,
+            @Param("errUda1")String errUda1,
+            @Param("createBy")String createBy,
+            @Param("equipmentNum")String equipmentNum,
+            @Param("equipmentName")String equipmentName,
+            @Param("equipmentModel")String equipmentModel,
+            @Param("specification")String specification,
+            @Param("useId")String useId,
+            @Param("equipNums")List<String> equipNums
+    );
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EquipmentReportRepairMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EquipmentReportRepairMapper.xml
index 0a1d0b9..34417c7 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EquipmentReportRepairMapper.xml
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EquipmentReportRepairMapper.xml
@@ -25,6 +25,8 @@
             t1.create_time createTime,
             t1.update_by updateBy,
             t1.update_time updateTime,
+            t1.accept_time acceptTime,
+            t1.fault_hour faultHour,
             t2.num equipmentNum,
             t2.name equipmentName,
             t2.model equipmentModel,
@@ -103,4 +105,88 @@
         </if>
         ORDER BY t1.create_time desc
     </select>
+    <select id="exportList" resultType="org.jeecg.modules.eam.vo.RepairReportExportVo">
+        SELECT
+        t1.id,
+        t1.err_uda1 errUda1,
+        t1.err_uda2 errUda2,
+        t1.num num,
+        t1.equipment_id equipmentId,
+        t1.fault_reason faultReason,
+        t1.fault_description faultDescription,
+        t1.photo photo,
+        t1.is_stop isStop,
+        t1.approval approval,
+        t1.fault_time faultTime,
+        t1.source source,
+        t1.source_id sourceId,
+        t1.urgency urgency,
+        t1.is_create_order isCreateOrder,
+        t1.use_depart_id useDepartId,
+        t1.remark remark,
+        t1.status status,
+        t1.create_by createBy,
+        t1.create_time createTime,
+        t1.update_by updateBy,
+        t1.update_time updateTime,
+        t1.accept_time acceptTime,
+        t1.fault_hour faultHour,
+        t2.num equipmentNum,
+        t2.name equipmentName,
+        t2.model equipmentModel,
+        t2.team_id teamId,
+        t2.specification specification,
+        t2.use_id useId,
+        t2.specific_equipment specificEquipment
+        FROM
+        mom_eam_equipment_report_repair t1
+        left join mom_eam_equipment t2 on t1.equipment_id = t2.id
+        WHERE t1.del_flag = 0
+        <if test="num != null and num != ''">
+            and t1.num like concat('%',#{num},'%')
+        </if>
+        <if test="faultStartTime != null and faultStartTime != ''">
+            and t1.fault_time &gt;= #{faultStartTime}
+        </if>
+        <if test="faultEndTime != null and faultEndTime != ''">
+            and t1.fault_time &lt;= #{faultEndTime}
+        </if>
+        <if test="isStop != null and isStop != ''">
+            and t1.is_stop = #{isStop}
+        </if>
+        <if test="status != null and status != ''">
+            and t1.status = #{status}
+        </if>
+        <if test="errUda2 != null and errUda2 != ''">
+            and t1.err_uda2 like concat('%',#{errUda2},'%')
+        </if>
+        <if test="errUda1 != null and errUda1 != ''">
+            and t1.err_uda1 = #{errUda1}
+        </if>
+        <if test="createBy!= null and createBy != ''">
+            and t1.create_by like concat('%',#{createBy},'%')
+        </if>
+        <if test="equipmentNum != null and equipmentNum != ''">
+            and t2.num like concat('%',#{equipmentNum},'%')
+        </if>
+        <if test="equipmentName != null and equipmentName != ''">
+            and t2.name like concat('%',#{equipmentName},'%')
+        </if>
+        <if test="equipmentModel != null and equipmentModel != ''">
+            and t2.model like concat('%',#{model},'%')
+        </if>
+        <if test="specification != null and specification != ''">
+            and t2.specification like concat('%',#{specification},'%')
+        </if>
+        <if test="useId != null and useId != ''">
+            and t2.use_id  = #{useId}
+        </if>
+        <if test="equipNums.size!=0">
+            and t2.num in
+            <foreach collection="equipNums" open="(" separator="," close=")" item="num">
+                #{num}
+            </foreach>
+        </if>
+        ORDER BY t1.create_time desc
+    </select>
 </mapper>
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEquipmentReportRepairService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEquipmentReportRepairService.java
index df64270..0d55296 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEquipmentReportRepairService.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEquipmentReportRepairService.java
@@ -5,7 +5,9 @@
 import com.baomidou.mybatisplus.extension.service.IService;
 import org.jeecg.modules.eam.entity.ChangeCause;
 import org.jeecg.modules.eam.entity.EquipmentReportRepair;
+import org.jeecg.modules.eam.vo.RepairReportExportVo;
 
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -31,4 +33,6 @@
     void updateEquipmentReportRepairById(EquipmentReportRepair equipmentReportRepair);
 
     IPage<Map<String, Object>> getReportRepairList(Integer pageNo, Integer pageSize, Map<String, Object> params);
+
+    List<RepairReportExportVo> exportList(RepairReportExportVo repairReportExportVo);
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EquipmentReportRepairServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EquipmentReportRepairServiceImpl.java
index 4a974b9..562dbb1 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EquipmentReportRepairServiceImpl.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EquipmentReportRepairServiceImpl.java
@@ -14,6 +14,7 @@
 //import org.jeecg.modules.system.entity.SysUpload;
 //import org.jeecg.modules.system.entity.SysUploadRela;
 //import org.jeecg.modules.system.service.IUploadRelaService;
+import org.jeecg.modules.eam.vo.RepairReportExportVo;
 import org.jeecg.modules.system.entity.SysUser;
 import org.jeecg.modules.system.mapper.SysUserMapper;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -109,4 +110,29 @@
         }
         return super.getBaseMapper().getReportRepairList(pageData, params,equipNums) ;
     }
+
+    @Override
+    public List<RepairReportExportVo> exportList(RepairReportExportVo repairReportExportVo) {
+        List<String> equipNums = new ArrayList<>();
+        if(StringUtils.isNotBlank(repairReportExportVo.getNums())){
+            equipNums = Arrays.asList(repairReportExportVo.getNums().trim().split("\n"));
+        }
+        return baseMapper.exportList(
+                repairReportExportVo.getNum(),
+                repairReportExportVo.getFaultStartTime(),
+                repairReportExportVo.getFaultEndTime(),
+                repairReportExportVo.getIsStop(),
+                repairReportExportVo.getStatus(),
+                repairReportExportVo.getErrUda2(),
+                repairReportExportVo.getErrUda1(),
+                repairReportExportVo.getCreateBy(),
+                repairReportExportVo.getEquipmentNum(),
+                repairReportExportVo.getEquipmentName(),
+                repairReportExportVo.getModel(),
+                repairReportExportVo.getSpecification(),
+                repairReportExportVo.getUseId(),
+                equipNums
+        );
+
+    }
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/vo/RepairReportExportVo.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/vo/RepairReportExportVo.java
new file mode 100644
index 0000000..ac61759
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/vo/RepairReportExportVo.java
@@ -0,0 +1,61 @@
+package org.jeecg.modules.eam.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+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.io.Serializable;
+import java.util.Date;
+
+/**
+ * @author h1829
+ */
+@Data
+public class RepairReportExportVo implements Serializable {
+    @Excel(name = "鍏抽敭璁惧鏍囪瘑", width = 15,orderNum = "0",dicCode = "specific_equipment")
+    private String specificEquipment;
+    @Excel(name = "鐘舵��", width = 15,orderNum = "1",dicCode = "equipment_report_repair_status")
+    private String status;
+    @Excel(name = "鍗曟嵁鍙�", width = 15,orderNum = "2")
+    private String num;
+    /**璁惧缂栫爜*/
+    @Excel(name = "缁熶竴缂栫爜", width = 15,orderNum = "3")
+    private String equipmentNum;
+    /**璁惧鍚嶇О*/
+    @Excel(name = "璁惧鍚嶇О", width = 15,orderNum = "4")
+    private String equipmentName;
+    /**璁惧鍨嬪彿*/
+    @Excel(name = "璁惧鍨嬪彿", width = 15,orderNum = "5")
+    private String model;
+    @Excel(name = "浣跨敤閮ㄩ棬", width = 15,orderNum = "6",dicCode = "id",dictTable="sys_depart",dicText="depart_name")
+    private String useId;
+    @Excel(name = "鎶ヤ慨浜�", width = 15,orderNum = "7")
+    private String errUda2;
+    @Excel(name = "鏁呴殰鏃堕棿", width = 15,orderNum = "8",databaseFormat = "yyyy-MM-dd HH:mm:ss",exportFormat = "yyyy-MM-dd HH:mm:ss")
+    private Date faultTime;
+    @Excel(name = "鏁呴殰鎻忚堪", width = 15,orderNum = "9")
+    private String faultDescription;
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @Excel(name = "楠屾敹鏃堕棿", width = 15,orderNum = "11",databaseFormat = "yyyy-MM-dd HH:mm:ss",exportFormat = "yyyy-MM-dd HH:mm:ss" )
+    private Date acceptTime;
+    @Excel(name = "鍋滄満鏃堕暱", width = 15,orderNum = "12")
+    private String faultHour;
+    @Excel(name = "鏄惁鍋滄満缁翠慨", width = 15,orderNum = "13",dicCode = "is_stop")
+    private String isStop;
+    @Excel(name = "鏄惁鍦ㄥ姞宸ラ浂浠�", width = 15,orderNum = "14",dicCode = "is_product")
+    private String errUda1;
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date faultStartTime;
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date faultEndTime;
+    private String specification;
+    @Excel(name = "鍒跺崟浜�", width = 15,orderNum = "15")
+    private String createBy;
+    private String nums;
+}

--
Gitblit v1.9.3