From e2380fc99bb36cadfa8e2b5c22fcf17310a8dbfd Mon Sep 17 00:00:00 2001
From: songhuangfeng123 <shf18767906695@163.com>
Date: 星期四, 28 七月 2022 16:18:27 +0800
Subject: [PATCH] 覆盖fix

---
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/controller/KeypointEquipmentInfoController.java |  139 ++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 128 insertions(+), 11 deletions(-)

diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/controller/KeypointEquipmentInfoController.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/controller/KeypointEquipmentInfoController.java
index b3b561c..5a967a1 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/controller/KeypointEquipmentInfoController.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/controller/KeypointEquipmentInfoController.java
@@ -2,24 +2,35 @@
 
 
 import com.alibaba.fastjson.JSONObject;
-import com.gkhy.safePlatform.equipment.entity.*;
-import com.gkhy.safePlatform.equipment.model.dto.resp.KeypointEquipmentInfoDto;
-import com.gkhy.safePlatform.equipment.service.KeypointEquipmentInfoService;
-import com.google.common.collect.Lists;
-import org.springframework.web.bind.annotation.*;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
 import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
 import com.gkhy.safePlatform.commons.utils.PageUtils;
 import com.gkhy.safePlatform.commons.vo.ResultVO;
-import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.equipment.entity.*;
+import com.gkhy.safePlatform.equipment.model.dto.req.KeypointEquipmentInfoImportExcel;
 import com.gkhy.safePlatform.equipment.model.dto.req.KeypointEquipmentInfoQueryCriteria;
+import com.gkhy.safePlatform.equipment.model.dto.resp.KeypointEquipmentInfoDto;
+import com.gkhy.safePlatform.equipment.model.dto.resp.KeypointEquipmentInfoExcel;
+import com.gkhy.safePlatform.equipment.service.KeypointEquipmentInfoService;
+import com.gkhy.safePlatform.equipment.utils.DateUtils;
+import com.gkhy.safePlatform.equipment.utils.poihelper.ExcelLogs;
+import com.gkhy.safePlatform.equipment.utils.poihelper.ExcelUtil;
+import com.google.common.collect.Lists;
+import org.apache.commons.collections.CollectionUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
 
-import java.sql.Timestamp;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.stream.Collectors;
 import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
 import java.io.Serializable;
-import java.util.List;
+import java.net.URLEncoder;
+import java.sql.Timestamp;
+import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * 重点监管装置/设备 详细信息(KeypointEquipmentInfo)表控制层
@@ -35,6 +46,13 @@
      */
     @Resource
     private KeypointEquipmentInfoService keypointEquipmentInfoService;
+
+
+    @Autowired
+    public HttpServletRequest request;
+
+    @Autowired
+    public HttpServletResponse response;
 
     /**
      * 分页查询所有数据
@@ -91,6 +109,105 @@
     }
 
 
+    /**
+     * 下载模板
+     *
+     */
+    @GetMapping(value = "/exportTemplate")
+    public void exportTemplate() throws IOException {
+        Map<String,String> map = new LinkedHashMap<>();
+        map.put("1","类型/类别外键 ");
+        map.put("2","装置/部位名称");
+        map.put("3","所属单位部门/外键");
+        map.put("4","具体位置");
+        map.put("5","负责人姓名");
+        map.put("6","联系人/外键");
+        map.put("7","录入人/外键");
+        map.put("8","责任人/外键");
+        map.put("9","装置部位分类 1:关键装置 2:重点部位");
+        map.put("10","检查周期");
+        map.put("11","应急预案/外键");
+        map.put("12","主要危险有害因素");
+        map.put("13","易导致风险");
+        map.put("14","应急处置措施");
+        map.put("15","现场图片地址路径");
+
+
+        String fileName = URLEncoder.encode("重点监管装置设备数据导入模板.xls", "UTF-8");
+        response.setContentType("application/vnd.ms-excel");
+        response.setHeader("Content-Disposition", "attachment;filename=" + fileName + ".xlsx");
+        response.setHeader("Access-Control-Expose-Headers", "Content-Disposition");
+
+        ExcelUtil.exportExcel(map,new ArrayList<>() , response.getOutputStream());
+        response.getOutputStream().close();
+    }
+
+
+    /**
+     * 导入数据
+     *
+     */
+    @RequestMapping(value = "/importData")
+    public ResultVO importData(MultipartFile file) throws IOException {
+        String contentType = file.getContentType();
+        if(!"application/vnd.ms-excel".equals(contentType)
+                && !"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet".equals(contentType)) {
+            return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL, "上传的excel格式错误");
+        }
+
+        Collection<KeypointEquipmentInfoImportExcel> importExcel = ExcelUtil.importExcel(KeypointEquipmentInfoImportExcel.class, file.getInputStream(), "yyyy-MM-dd HH:mm:ss", new ExcelLogs() , 0);
+
+        if (CollectionUtils.isEmpty(importExcel)) {
+            return new ResultVO<>(ResultCodes.OK);
+        }
+
+        List<KeypointEquipmentInfo> respList = BeanCopyUtils.copyBeanList((List<KeypointEquipmentInfoImportExcel>)importExcel, KeypointEquipmentInfo.class);
+
+        keypointEquipmentInfoService.saveBatch(respList);
+        return new ResultVO<>(ResultCodes.OK);
+    }
+
+
+
+
+    /**
+     * 导出一览数据
+     *
+     */
+    @GetMapping(value = "/exportData")
+    public void exportData(KeypointEquipmentInfoQueryCriteria queryCriteria) throws IOException {
+        Map<String,String> map = new LinkedHashMap<>();
+        map.put("0","ID");
+        map.put("1","类型/类别外键");
+        map.put("2","装置/部位名称");
+        map.put("3","所属单位部门/外键");
+        map.put("4","具体位置");
+        map.put("5","负责人姓名");
+        map.put("6","联系人/外键");
+        map.put("7","录入人/外键");
+        map.put("8","责任人/外键");
+        map.put("9","装置部位分类 1:关键装置 2:重点部位");
+        map.put("10","检查周期");
+        map.put("11","应急预案/外键");
+        map.put("12","主要危险有害因素");
+        map.put("13","易导致风险");
+        map.put("14","应急处置措施");
+        map.put("15","现场图片地址路径");
+
+        String key = DateUtils.date2String(new Date(), DateUtils.PATTERN_ALLTIME_NOSIGN) ;
+        String fileName = URLEncoder.encode("重点监管装置设备"+key+".xls", "UTF-8");
+        response.setContentType("application/vnd.ms-excel");
+        response.setHeader("Content-Disposition", "attachment;filename=" + fileName + ".xlsx");
+        response.setHeader("Access-Control-Expose-Headers", "Content-Disposition");
+
+
+        List<KeypointEquipmentInfoExcel> respList = BeanCopyUtils.copyBeanList(keypointEquipmentInfoService.queryAll(queryCriteria), KeypointEquipmentInfoExcel.class);
+
+        ExcelUtil.exportExcel(map,respList , response.getOutputStream(),DateUtils.PATTERN_STANDARD);
+        response.getOutputStream().close();
+    }
+
+
 
     public static void main(String[] args) {
         KeypointEquipmentInfoDto infoDto = new KeypointEquipmentInfoDto();

--
Gitblit v1.9.2