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

---
 incident-manage/incident-manage-service/src/main/resources/config/mapper/incidentManage/AccidentReportInfoMapper.xml               |    2 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/controller/KeypointEquipmentInfoController.java          |  139 ++++++++++++-
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/RewardPunishmentDetailServiceImpl.java |    6 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/RewardPunishmentDetailController.java    |   62 +++++
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/RewardPunishmentDetailRepository.java    |    7 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/utils/poihelper/ExcelUtil.java                      |    8 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/controller/EquipmentInfoController.java                  |  190 ++++++++++++++++++
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/RewardPunishmentStandardController.java  |  117 ++++++++++-
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/BaseDomain.java                              |   11 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/utils/QueryHelpPlus.java                            |    4 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/RewardPunishmentDetailService.java          |    1 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/entity/BaseDomain.java                                   |   11 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/utils/QueryHelpPlus.java                                 |    4 
 13 files changed, 509 insertions(+), 53 deletions(-)

diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/controller/EquipmentInfoController.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/controller/EquipmentInfoController.java
index 8b9a9e1..23f46ee 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/controller/EquipmentInfoController.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/controller/EquipmentInfoController.java
@@ -1,26 +1,38 @@
 package com.gkhy.safePlatform.equipment.controller;
 import com.alibaba.fastjson.JSONObject;
+import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
 import com.gkhy.safePlatform.equipment.entity.*;
+import com.gkhy.safePlatform.equipment.model.dto.req.EquipmentInfoImportExcel;
 import com.gkhy.safePlatform.equipment.model.dto.req.EquipmentInfoSaveOrUpdate;
+import com.gkhy.safePlatform.equipment.model.dto.resp.EquipmentInfoExcel;
+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 java.io.IOException;
+import java.net.URLEncoder;
 import java.sql.Timestamp;
 
 
 import com.gkhy.safePlatform.equipment.model.dto.resp.EquipmentInfoDto;
 import com.gkhy.safePlatform.equipment.service.EquipmentInfoService;
+import org.apache.commons.collections.CollectionUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import com.gkhy.safePlatform.commons.query.PageQuery;
 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.model.dto.req.EquipmentInfoQueryCriteria;
+import org.springframework.web.multipart.MultipartFile;
 
-import java.util.ArrayList;
-import java.util.Arrays;
+import java.util.*;
 import java.util.stream.Collectors;
 import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
 import java.io.Serializable;
-import java.util.List;
 
 /**
  * 设备设施详细信息(EquipmentInfo)表控制层
@@ -36,6 +48,12 @@
      */
     @Resource
     private EquipmentInfoService equipmentInfoService;
+
+    @Autowired
+    public HttpServletRequest request;
+
+    @Autowired
+    public HttpServletResponse response;
 
     /**
      * 分页查询所有数据
@@ -109,6 +127,172 @@
         return new ResultVO<>(ResultCodes.OK,this.equipmentInfoService.statistics());
     }
 
+
+
+
+    /**
+     * 下载模板
+     *
+     */
+    @GetMapping(value = "/exportTemplate")
+    public void exportTemplate() throws IOException {
+        Map<String,String> map = new LinkedHashMap<>();
+        map.put("1", "类型/类别外键");
+        map.put("2", "具体类型(页面左侧的导航栏使用) 0:仪器仪表信息 1:生产设备设施 2:安全设备设施 ");
+        map.put("3", "名称");
+        map.put("4", "位号");
+        map.put("5", "用途");
+        map.put("6", "型号");
+        map.put("7", "单位部门外键");
+        map.put("8", "设置部位");
+        map.put("9", "生产日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("10", "使用期限(天)");
+        map.put("11", "生命周期 1:已使用 2:库存中 3:报废");
+        map.put("12", "投用日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("13", "维修状态 1:维修中 2:已修好");
+        map.put("14", "停用状态 1:停用 2.在用 3.维修 4.报废");
+        map.put("15", "上次检查日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("16", "上次检测日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("17", "上次保养日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("18", "下次检查日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("19", "下次检测日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("20", "下次保养日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("21", "负责人ID外键");
+        map.put("22", "负责人部门外键");
+        map.put("23", "供应商");
+        map.put("24", "使用说明");
+        map.put("25", "是否检查 1:是 2:否");
+        map.put("26", "检查周期");
+        map.put("27", "检查提前提醒");
+        map.put("28", "是否检测 1:是 2:否");
+        map.put("29", "检测周期");
+        map.put("30", "检测提前提醒");
+        map.put("31", "是否保养 1:是 2:否");
+        map.put("32", "检查内容");
+        map.put("33", "负责部门/外键");
+        map.put("34", "检查指标");
+        map.put("35", "预警值");
+        map.put("36", "联锁值");
+        map.put("37", "停用理由");
+        map.put("38", "停用后措施");
+        map.put("39", "实际停用日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("40", "停用提交人/外键");
+        map.put("41", "停用提交日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("42", "恢复理由");
+        map.put("43", "恢复填报日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("44", "实际恢复日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("45", "报废理由");
+        map.put("46", "报废填报日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("47", "实际报废日期(yyyy-MM-dd HH:mm:ss)");
+        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<EquipmentInfoImportExcel> importExcel = ExcelUtil.importExcel(EquipmentInfoImportExcel.class, file.getInputStream(), "yyyy-MM-dd HH:mm:ss", new ExcelLogs() , 0);
+
+        if (CollectionUtils.isEmpty(importExcel)) {
+            return new ResultVO<>(ResultCodes.OK);
+        }
+
+        List<EquipmentInfo> respList = BeanCopyUtils.copyBeanList((List<EquipmentInfoImportExcel>)importExcel, EquipmentInfo.class);
+
+        equipmentInfoService.saveBatch(respList);
+        return new ResultVO<>(ResultCodes.OK);
+    }
+
+
+
+
+    /**
+     * 导出一览数据
+     *
+     */
+    @GetMapping(value = "/exportData")
+    public void exportData(EquipmentInfoQueryCriteria queryCriteria) throws IOException {
+        Map<String,String> map = new LinkedHashMap<>();
+        map.put("0", "ID");
+        map.put("1", "类型/类别外键");
+        map.put("2", "具体类型(页面左侧的导航栏使用) 0:仪器仪表信息 1:生产设备设施 2:安全设备设施 ");
+        map.put("3", "名称");
+        map.put("4", "位号");
+        map.put("5", "用途");
+        map.put("6", "型号");
+        map.put("7", "单位部门外键");
+        map.put("8", "设置部位");
+        map.put("9", "生产日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("10", "使用期限(天)");
+        map.put("11", "生命周期 1:已使用 2:库存中 3:报废");
+        map.put("12", "投用日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("13", "维修状态 1:维修中 2:已修好");
+        map.put("14", "停用状态 1:停用 2.在用 3.维修 4.报废");
+        map.put("15", "上次检查日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("16", "上次检测日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("17", "上次保养日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("18", "下次检查日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("19", "下次检测日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("20", "下次保养日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("21", "负责人ID外键");
+        map.put("22", "负责人部门外键");
+        map.put("23", "供应商");
+        map.put("24", "使用说明");
+        map.put("25", "是否检查 1:是 2:否");
+        map.put("26", "检查周期");
+        map.put("27", "检查提前提醒");
+        map.put("28", "是否检测 1:是 2:否");
+        map.put("29", "检测周期");
+        map.put("30", "检测提前提醒");
+        map.put("31", "是否保养 1:是 2:否");
+        map.put("32", "检查内容");
+        map.put("33", "负责部门/外键");
+        map.put("34", "检查指标");
+        map.put("35", "预警值");
+        map.put("36", "联锁值");
+        map.put("37", "停用理由");
+        map.put("38", "停用后措施");
+        map.put("39", "实际停用日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("40", "停用提交人/外键");
+        map.put("41", "停用提交日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("42", "恢复理由");
+        map.put("43", "恢复填报日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("44", "实际恢复日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("45", "报废理由");
+        map.put("46", "报废填报日期(yyyy-MM-dd HH:mm:ss)");
+        map.put("47", "实际报废日期(yyyy-MM-dd HH:mm:ss)");
+
+        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<EquipmentInfoExcel> respList = BeanCopyUtils.copyBeanList(equipmentInfoService.queryAll(queryCriteria), EquipmentInfoExcel.class);
+
+        ExcelUtil.exportExcel(map,respList , response.getOutputStream(),DateUtils.PATTERN_STANDARD);
+        response.getOutputStream().close();
+    }
+
+
+
+
     public static void main(String[] args) {
         EquipmentInfoDto infoDto = new EquipmentInfoDto();
         List<EquipmentRepairDetail> repairDetails = Lists.newArrayList();
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();
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/entity/BaseDomain.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/entity/BaseDomain.java
index 3640c29..924c582 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/entity/BaseDomain.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/entity/BaseDomain.java
@@ -24,9 +24,10 @@
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
     private Date updateTime;
 
-    public static long getSerialVersionUID() {
-        return serialVersionUID;
-    }
+//    @TableLogic
+//    @JsonIgnore
+//    private Integer isDel;
+
 
     public Date getCreateTime() {
         return createTime;
@@ -43,8 +44,4 @@
     public void setUpdateTime(Date updateTime) {
         this.updateTime = updateTime;
     }
-
-    //    @TableLogic
-//    @JsonIgnore
-//    private Integer isDel;
 }
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/utils/QueryHelpPlus.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/utils/QueryHelpPlus.java
index fe4fff7..24d51fc 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/utils/QueryHelpPlus.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/utils/QueryHelpPlus.java
@@ -6,8 +6,8 @@
  */
 package com.gkhy.safePlatform.equipment.utils;
 
-import com.alibaba.nacos.common.utils.CollectionUtils;
-import com.alibaba.nacos.common.utils.StringUtils;
+import org.apache.commons.collections.CollectionUtils;
+import org.springframework.util.StringUtils;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.gkhy.safePlatform.equipment.annotation.Query;
 
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/RewardPunishmentDetailController.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/RewardPunishmentDetailController.java
index 7c91f6a..8b63da6 100644
--- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/RewardPunishmentDetailController.java
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/RewardPunishmentDetailController.java
@@ -5,8 +5,14 @@
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
 import com.gkhy.safePlatform.targetDuty.entity.RewardPunishmentDetail;
+import com.gkhy.safePlatform.targetDuty.model.dto.resp.ExamineTemplateDto;
+import com.gkhy.safePlatform.targetDuty.model.dto.resp.RewardPunishmentDetailExcel;
 import com.gkhy.safePlatform.targetDuty.service.RewardPunishmentDetailService;
+import com.gkhy.safePlatform.targetDuty.utils.DateUtils;
+import com.gkhy.safePlatform.targetDuty.utils.poihelper.ExcelUtil;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import com.gkhy.safePlatform.commons.query.PageQuery;
 import com.gkhy.safePlatform.commons.utils.PageUtils;
@@ -14,11 +20,14 @@
 import com.gkhy.safePlatform.commons.enums.ResultCodes;
 import com.gkhy.safePlatform.targetDuty.model.dto.req.RewardPunishmentDetailQueryCriteria;
 
-import java.util.Arrays;
+import java.io.IOException;
+import java.net.URLEncoder;
+import java.util.*;
 import java.util.stream.Collectors;
 import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
 import java.io.Serializable;
-import java.util.List;
 
 /**
  * 奖惩记录(RewardPunishmentDetail)表控制层
@@ -34,6 +43,12 @@
      */
     @Resource
     private RewardPunishmentDetailService rewardPunishmentDetailService;
+
+    @Autowired
+    public HttpServletRequest request;
+
+    @Autowired
+    public HttpServletResponse response;
 
     /**
      * 分页查询所有数据
@@ -73,10 +88,20 @@
         if(rewardPunishmentDetail.getRewardPunishmentStandardId() == null){
             return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL,"缺少rewardPunishmentStandardId");
         }
+
+        List<Long> pIdList = Arrays.stream(rewardPunishmentDetail.getPersonId().split(",")).map(s-> Long.parseLong(s.trim()))
+                .collect(Collectors.toList());
+
+        List<RewardPunishmentDetail> list = new ArrayList<>();
+        pIdList.forEach(f->{
+            RewardPunishmentDetail new1 = BeanCopyUtils.copyBean(rewardPunishmentDetail, RewardPunishmentDetail.class);
+            new1.setPersonId(f+"");
+            list.add(new1);
+        });
         if (rewardPunishmentDetail.getId() == null) {
-            return new ResultVO<>(ResultCodes.OK,rewardPunishmentDetailService.save(rewardPunishmentDetail));
+            return new ResultVO<>(ResultCodes.OK,rewardPunishmentDetailService.saveBatch(list));
         } else {
-            rewardPunishmentDetailService.update(rewardPunishmentDetail,new UpdateWrapper<RewardPunishmentDetail>().eq("id",rewardPunishmentDetail.getId()));
+            rewardPunishmentDetailService.updateBatchById(list);
             return new ResultVO<>(ResultCodes.OK);
         }
     }
@@ -94,4 +119,33 @@
         this.rewardPunishmentDetailService.removeByIds(idList);
         return new ResultVO<>(ResultCodes.OK);
     }
+
+
+
+    /**
+     * 导出一览数据
+     *
+     */
+    @GetMapping(value = "/exportData")
+    public void exportData(RewardPunishmentDetailQueryCriteria queryCriteria) throws IOException {
+        Map<String,String> map = new LinkedHashMap<>();
+        map.put("1","奖惩日期");
+        map.put("2","奖惩类型");
+        map.put("3","被奖惩者");
+        map.put("4","奖惩内容");
+        map.put("5","奖惩依据");
+
+        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<RewardPunishmentDetailExcel> respList = BeanCopyUtils.copyBeanList(rewardPunishmentDetailService.queryAllRelation(queryCriteria), RewardPunishmentDetailExcel.class);
+
+        ExcelUtil.exportExcel(map,respList , response.getOutputStream(),DateUtils.PATTERN_STANDARD);
+        response.getOutputStream().close();
+    }
+
 }
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/RewardPunishmentStandardController.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/RewardPunishmentStandardController.java
index 48b7899..dedb75f 100644
--- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/RewardPunishmentStandardController.java
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/RewardPunishmentStandardController.java
@@ -1,29 +1,34 @@
 package com.gkhy.safePlatform.targetDuty.controller;
-import java.util.Date;
-
-
 
 import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.gkhy.safePlatform.targetDuty.entity.RewardPunishmentStandard;
-import com.gkhy.safePlatform.targetDuty.entity.TargetMng;
-import com.gkhy.safePlatform.targetDuty.service.RewardPunishmentStandardService;
-import org.springframework.util.StringUtils;
-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.targetDuty.entity.RewardPunishmentStandard;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.RewardPunishmentStandardImportExcel;
 import com.gkhy.safePlatform.targetDuty.model.dto.req.RewardPunishmentStandardQueryCriteria;
+import com.gkhy.safePlatform.targetDuty.model.dto.resp.RewardPunishmentStandardExcel;
+import com.gkhy.safePlatform.targetDuty.service.RewardPunishmentStandardService;
+import com.gkhy.safePlatform.targetDuty.utils.DateUtils;
+import com.gkhy.safePlatform.targetDuty.utils.poihelper.ExcelLogs;
+import com.gkhy.safePlatform.targetDuty.utils.poihelper.ExcelUtil;
+import org.apache.commons.collections.CollectionUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.util.StringUtils;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
 
-import java.sql.Timestamp;
-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.util.*;
+import java.util.stream.Collectors;
 
 /**
  * (RewardPunishmentStandard)表控制层
@@ -39,6 +44,12 @@
      */
     @Resource
     private RewardPunishmentStandardService rewardPunishmentStandardService;
+
+    @Autowired
+    public HttpServletRequest request;
+
+    @Autowired
+    public HttpServletResponse response;
 
     /**
      * 分页查询所有数据
@@ -101,6 +112,82 @@
     }
 
 
+
+
+    /**
+     * 下载模板
+     *
+     */
+    @GetMapping(value = "/exportTemplate")
+    public void exportTemplate() throws IOException {
+        Map<String,String> map = new LinkedHashMap<>();
+        map.put("1","奖惩名称");
+        map.put("2","奖惩类型 1:奖励 2:惩罚");
+        map.put("3","奖惩内容");
+        map.put("4","依据");
+        map.put("5","备注");
+
+        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();
+    }
+
+    /**
+     * 导出一览数据
+     *
+     */
+    @GetMapping(value = "/exportData")
+    public void exportData(RewardPunishmentStandardQueryCriteria queryCriteria) throws IOException {
+        Map<String,String> map = new LinkedHashMap<>();
+        map.put("1","奖惩名称");
+        map.put("2","奖惩类型");
+        map.put("3","奖惩内容");
+        map.put("4","依据");
+        map.put("5","备注");
+
+        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<RewardPunishmentStandardExcel> respList = BeanCopyUtils.copyBeanList(rewardPunishmentStandardService.queryAll(queryCriteria), RewardPunishmentStandardExcel.class);
+
+        ExcelUtil.exportExcel(map,respList , response.getOutputStream(),DateUtils.PATTERN_STANDARD);
+        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<RewardPunishmentStandardImportExcel> importExcel = ExcelUtil.importExcel(RewardPunishmentStandardImportExcel.class, file.getInputStream(), "yyyy-MM-dd HH:mm:ss", new ExcelLogs() , 0);
+
+        if (CollectionUtils.isEmpty(importExcel)) {
+            return new ResultVO<>(ResultCodes.OK);
+        }
+
+        List<RewardPunishmentStandard> respList = BeanCopyUtils.copyBeanList((List<RewardPunishmentStandardImportExcel>)importExcel, RewardPunishmentStandard.class);
+
+        rewardPunishmentStandardService.saveBatch(respList);
+        return new ResultVO<>(ResultCodes.OK);
+    }
+
+
+
     public static void main(String[] args) {
         RewardPunishmentStandard mng = new RewardPunishmentStandard();
         mng.setStandardType(1);
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/BaseDomain.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/BaseDomain.java
index ea18fe5..f45dd38 100644
--- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/BaseDomain.java
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/BaseDomain.java
@@ -24,9 +24,10 @@
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
     private Date updateTime;
 
-    public static long getSerialVersionUID() {
-        return serialVersionUID;
-    }
+//    @TableLogic
+//    @JsonIgnore
+//    private Integer isDel;
+
 
     public Date getCreateTime() {
         return createTime;
@@ -43,8 +44,4 @@
     public void setUpdateTime(Date updateTime) {
         this.updateTime = updateTime;
     }
-
-    //    @TableLogic
-//    @JsonIgnore
-//    private Integer isDel;
 }
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/RewardPunishmentDetailRepository.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/RewardPunishmentDetailRepository.java
index 587e7e7..e7c6d7d 100644
--- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/RewardPunishmentDetailRepository.java
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/RewardPunishmentDetailRepository.java
@@ -9,6 +9,8 @@
 import org.apache.ibatis.annotations.Select;
 import org.springframework.stereotype.Repository;
 
+import java.util.List;
+
 /**
  * 奖惩记录(RewardPunishmentDetail)表数据库访问层
  *
@@ -22,4 +24,9 @@
             "from reward_punishment_detail a left join reward_punishment_standard b on a.reward_punishment_standard_id=b.id  where 1=1  " +
             "<if test =\"personId !='' and personId !=null\">and a.person_id =#{personId}</if> </script> ")
     IPage<RewardPunishmentDetailDto> queryAll(IPage<RewardPunishmentDetailDto> page, @Param("personId") String personId);
+
+    @Select("<script> select a.id,a.person_id,a.create_time ,b.standard_type ,b.content ,b.q_name ,b.reason " +
+            "from reward_punishment_detail a left join reward_punishment_standard b on a.reward_punishment_standard_id=b.id  where 1=1  " +
+            "<if test =\"personId !='' and personId !=null\">and a.person_id =#{personId}</if> </script> ")
+    List<RewardPunishmentDetail> queryAll( @Param("personId")String personId);
 }
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/RewardPunishmentDetailService.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/RewardPunishmentDetailService.java
index 52123fa..36080ba 100644
--- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/RewardPunishmentDetailService.java
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/RewardPunishmentDetailService.java
@@ -20,4 +20,5 @@
     
     List<RewardPunishmentDetail> queryAll(RewardPunishmentDetailQueryCriteria criteria);
 
+    List<RewardPunishmentDetail> queryAllRelation(RewardPunishmentDetailQueryCriteria criteria);
 }
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/RewardPunishmentDetailServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/RewardPunishmentDetailServiceImpl.java
index 9ce657c..248bfad 100644
--- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/RewardPunishmentDetailServiceImpl.java
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/RewardPunishmentDetailServiceImpl.java
@@ -58,4 +58,10 @@
     public List<RewardPunishmentDetail> queryAll(RewardPunishmentDetailQueryCriteria criteria) {
         return baseMapper.selectList(QueryHelpPlus.getPredicate(RewardPunishmentDetail.class, criteria));
     }
+
+
+    @Override
+    public List<RewardPunishmentDetail> queryAllRelation(RewardPunishmentDetailQueryCriteria criteria) {
+        return baseMapper.queryAll(criteria.getPersonId());
+    }
 }
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/utils/QueryHelpPlus.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/utils/QueryHelpPlus.java
index 12ab941..83c4f7f 100644
--- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/utils/QueryHelpPlus.java
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/utils/QueryHelpPlus.java
@@ -6,10 +6,10 @@
  */
 package com.gkhy.safePlatform.targetDuty.utils;
 
-import com.alibaba.nacos.common.utils.CollectionUtils;
-import com.alibaba.nacos.common.utils.StringUtils;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.gkhy.safePlatform.targetDuty.annotation.Query;
+import org.apache.commons.collections.CollectionUtils;
+import org.springframework.util.StringUtils;
 
 import java.lang.reflect.Field;
 import java.text.SimpleDateFormat;
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/utils/poihelper/ExcelUtil.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/utils/poihelper/ExcelUtil.java
index a8f9759..1b8b195 100644
--- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/utils/poihelper/ExcelUtil.java
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/utils/poihelper/ExcelUtil.java
@@ -19,6 +19,7 @@
 import java.lang.reflect.Field;
 import java.sql.Timestamp;
 import java.text.MessageFormat;
+import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.util.*;
 
@@ -557,7 +558,12 @@
                                     if(data != null){
                                         value = Integer.parseInt(String.valueOf(data));
                                     }
-                                } else {
+                                }else if (field.getType().equals(Long.class)) {
+                                    Object data = getCellValue(cell);
+                                    if(data != null){
+                                        value = Long.parseLong(String.valueOf(data));
+                                    }
+                                }  else {
                                     value = getCellValue(cell);
                                     // 处理特殊情况,excel的value为String,且bean中为其他,且defaultValue不为空,那就=defaultValue
                                     ExcelCell annoCell = field.getAnnotation(ExcelCell.class);
diff --git a/incident-manage/incident-manage-service/src/main/resources/config/mapper/incidentManage/AccidentReportInfoMapper.xml b/incident-manage/incident-manage-service/src/main/resources/config/mapper/incidentManage/AccidentReportInfoMapper.xml
index d46e54a..6b1a340 100644
--- a/incident-manage/incident-manage-service/src/main/resources/config/mapper/incidentManage/AccidentReportInfoMapper.xml
+++ b/incident-manage/incident-manage-service/src/main/resources/config/mapper/incidentManage/AccidentReportInfoMapper.xml
@@ -149,7 +149,7 @@
     FROM
         accident_report a
         LEFT JOIN accident_express b ON a.accident_express_id = b.id
-        WHERE del_flag = 0 and id = #{id}
+        WHERE a.del_flag = 0 and a.id = #{id}
     </select>
 
     <update id="updateAccidentReport" parameterType="com.gkhy.safePlatform.incidentManage.entity.AccidentReportInfo">

--
Gitblit v1.9.2