From 07e4b1114feadc19478847a9bcda869b5d6a5bf7 Mon Sep 17 00:00:00 2001
From: songhuangfeng123 <shf18767906695@163.com>
Date: 星期五, 02 九月 2022 14:23:10 +0800
Subject: [PATCH] 项目目录结构调整

---
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/KeypointEquipmentInfoService.java                                    |   12 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentTakecareDetailBaseService.java                  |   24 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/excepiton/EquipmentException.java                                            |   11 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentInfoService.java                                            |   12 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentTakecareStardardDetailServiceImpl.java                 |    9 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentCheckStandardDetailBaseService.java             |   24 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentInfoBaseService.java                            |   33 +
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentTypeMngBaseServiceImpl.java                |   47 +
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentTakecareStardardDetailBaseService.java          |   24 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentTestDetailService.java                                      |    2 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentRepairDetailService.java                                    |    2 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentInfoBaseServiceImpl.java                   |   68 ++
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentCheckStandardDetailBaseServiceImpl.java    |   41 +
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentTestDetailBaseService.java                      |   24 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/controller/KeypointEquipmentInfoController.java                              |   88 ---
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentTypeMngService.java                                         |    4 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentInfoServiceImpl.java                                   |  258 ++++++++-
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentTakecareStardardDetailService.java                          |    2 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentCheckStandardDetailServiceImpl.java                    |    9 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentTakecareDetailServiceImpl.java                         |    9 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentTypeMngServiceImpl.java                                |   32 +
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentTakecareDetailBaseServiceImpl.java         |   42 +
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/KeypointEquipmentInfoServiceImpl.java                           |  172 +++++-
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentRepairDetailBaseServiceImpl.java           |   42 +
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentTypeMngBaseService.java                         |   25 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/controller/EquipmentInfoController.java                                      |  163 -----
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentTestDetailServiceImpl.java                             |    9 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentRepairDetailServiceImpl.java                           |   21 
 /dev/null                                                                                                                                              |  161 -----
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/KeypointEquipmentInfoBaseService.java                    |   28 +
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/KeypointEquipmentInfoBaseServiceImpl.java           |   34 +
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/controller/EquipmentTypeMngController.java                                   |   28 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentTestDetailBaseServiceImpl.java             |   42 +
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentCheckStandardDetailService.java                             |    2 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentRepairDetailBaseService.java                    |   24 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentTakecareDetailService.java                                  |    2 
 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentTakecareStardardDetailBaseServiceImpl.java |   42 +
 37 files changed, 1,049 insertions(+), 523 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 4908d83..a883d88 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
@@ -54,8 +54,6 @@
     @Autowired
     public HttpServletRequest request;
 
-    @Autowired
-    public HttpServletResponse response;
 
     /**
      * 分页查询所有数据
@@ -65,11 +63,6 @@
      */
     @PostMapping(value = "/page/list")
     public ResultVO selectAll(@RequestBody PageQuery<EquipmentInfoQueryCriteria> pageQuery){
-        if(pageQuery.getSearchParams().getInfoType() == null){
-            return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL,"缺少infoType");
-        }
-
-        PageUtils.checkCheck(pageQuery);
 		return this.equipmentInfoService.queryAll(pageQuery);
     }
 	
@@ -93,13 +86,6 @@
      */
     @PostMapping(value = "/addOrUpdate")
     public ResultVO update(@RequestBody EquipmentInfoSaveOrUpdate infoDto) {
-        if(infoDto.getInfoType() == null || infoDto.getEquipmentTypeId() == null){
-            return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL,"缺少infoType或者equipmentTypeId");
-        }
-        if(infoDto.getInfoType() == 3){
-            return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL,"infoType值异常");
-        }
-
         equipmentInfoService.addOrUpdate(infoDto);
         return new ResultVO<>(ResultCodes.OK);
     }
@@ -112,19 +98,8 @@
      */
     @RequestMapping(value = "/delete",method = RequestMethod.POST)
     public ResultVO delete(@RequestBody Long[] ids) {
-        if(ids == null){
-            return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL);
-        }
-        List<Long> idList = Arrays.asList(ids);
 
-        List<EquipmentInfo> delList = new ArrayList<>();
-        idList.forEach(f->{
-            EquipmentInfo info = new EquipmentInfo();
-            info.setDelFlag(1);
-            info.setId(f);
-            delList.add(info);
-        });
-        this.equipmentInfoService.updateBatchById(delList);
+        this.equipmentInfoService.delete(ids);
         return new ResultVO<>(ResultCodes.OK);
     }
 
@@ -148,62 +123,7 @@
      */
     @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)");
-        map.put("48", "保养周期");
-        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();
+        equipmentInfoService.exportTemplate();
     }
 
 
@@ -213,21 +133,7 @@
      */
     @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);
+        equipmentInfoService.importData(file);
         return new ResultVO<>(ResultCodes.OK);
     }
 
@@ -240,68 +146,7 @@
      */
     @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)");
-        map.put("48", "保养周期");
-
-        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");
-
-        queryCriteria.setDelFlag(0);
-        List<EquipmentInfoExcel> respList = BeanCopyUtils.copyBeanList(equipmentInfoService.queryAll(queryCriteria), EquipmentInfoExcel.class);
-
-        ExcelUtil.exportExcel(map,respList , response.getOutputStream(),DateUtils.PATTERN_STANDARD);
-        response.getOutputStream().close();
+        equipmentInfoService.exportData(queryCriteria);
     }
 
 
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/controller/EquipmentTypeMngController.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/controller/EquipmentTypeMngController.java
index 80f2e30..80744e2 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/controller/EquipmentTypeMngController.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/controller/EquipmentTypeMngController.java
@@ -5,6 +5,7 @@
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.gkhy.safePlatform.equipment.entity.EquipmentTypeMng;
 import com.gkhy.safePlatform.equipment.service.EquipmentTypeMngService;
+import com.gkhy.safePlatform.equipment.service.baseService.EquipmentTypeMngBaseService;
 import org.springframework.web.bind.annotation.*;
 import com.gkhy.safePlatform.commons.query.PageQuery;
 import com.gkhy.safePlatform.commons.utils.PageUtils;
@@ -33,7 +34,11 @@
      */
     @Resource
     private EquipmentTypeMngService equipmentTypeMngService;
-
+    /**
+     * 服务对象
+     */
+    @Resource
+    private EquipmentTypeMngBaseService equipmentTypeMngBaseService;
     /**
      * 分页查询所有数据
      *
@@ -42,7 +47,7 @@
      */
     @PostMapping(value = "/page/list")
     public ResultVO selectAll(@RequestBody PageQuery<EquipmentTypeMngQueryCriteria> pageQuery){
-        PageUtils.checkCheck(pageQuery);
+
 		return this.equipmentTypeMngService.queryAll(pageQuery);
     }
 	
@@ -55,7 +60,7 @@
      */
     @GetMapping(value = "/selectOne/{id}")
     public ResultVO selectOne(@PathVariable Serializable id) {
-        return new ResultVO<>(ResultCodes.OK,this.equipmentTypeMngService.getById(id));
+        return new ResultVO<>(ResultCodes.OK,this.equipmentTypeMngBaseService.getById(id));
     }
 
 	/**
@@ -67,9 +72,9 @@
     @PostMapping(value = "/addOrUpdate")
     public ResultVO update(@RequestBody EquipmentTypeMng equipmentTypeMng) {
         if (equipmentTypeMng.getId() == null) {
-            return new ResultVO<>(ResultCodes.OK,equipmentTypeMngService.save(equipmentTypeMng));
+            return new ResultVO<>(ResultCodes.OK,equipmentTypeMngBaseService.save(equipmentTypeMng));
         } else {
-            equipmentTypeMngService.update(equipmentTypeMng,new UpdateWrapper<EquipmentTypeMng>().eq("id",equipmentTypeMng.getId()));
+            equipmentTypeMngBaseService.update(equipmentTypeMng,new UpdateWrapper<EquipmentTypeMng>().eq("id",equipmentTypeMng.getId()));
             return new ResultVO<>(ResultCodes.OK);
         }
     }
@@ -82,19 +87,8 @@
      */
     @RequestMapping(value = "/delete",method = RequestMethod.POST)
     public ResultVO delete(@RequestBody Long[] ids) {
-        if(ids == null){
-            return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL);
-        }
-        List<Long> idList = Arrays.asList(ids);
 
-        List<EquipmentTypeMng> delList = new ArrayList<>();
-        idList.forEach(f->{
-            EquipmentTypeMng info = new EquipmentTypeMng();
-            info.setDelFlag(1);
-            info.setId(f);
-            delList.add(info);
-        });
-        this.equipmentTypeMngService.updateBatchById(delList);
+        this.equipmentTypeMngService.delete(ids);
         return new ResultVO<>(ResultCodes.OK);
     }
 
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 35aed3c..54629c8 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
@@ -51,8 +51,6 @@
     @Autowired
     public HttpServletRequest request;
 
-    @Autowired
-    public HttpServletResponse response;
 
     /**
      * 分页查询所有数据
@@ -102,19 +100,7 @@
      */
     @RequestMapping(value = "/delete",method = RequestMethod.POST)
     public ResultVO delete(@RequestBody Long[] ids) {
-        if(ids == null){
-            return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL);
-        }
-        List<Long> idList = Arrays.asList(ids);
-
-        List<KeypointEquipmentInfo> delList = new ArrayList<>();
-        idList.forEach(f->{
-            KeypointEquipmentInfo info = new KeypointEquipmentInfo();
-            info.setDelFlag(1);
-            info.setId(f);
-            delList.add(info);
-        });
-        this.keypointEquipmentInfoService.updateBatchById(delList);
+        this.keypointEquipmentInfoService.delete(ids);
         return new ResultVO<>(ResultCodes.OK);
     }
 
@@ -125,31 +111,7 @@
      */
     @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();
+        keypointEquipmentInfoService.exportTemplate();
     }
 
 
@@ -159,21 +121,7 @@
      */
     @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);
+        keypointEquipmentInfoService.importData(file);
         return new ResultVO<>(ResultCodes.OK);
     }
 
@@ -186,35 +134,7 @@
      */
     @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();
+        keypointEquipmentInfoService.exportData(queryCriteria);
     }
 
 
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/excepiton/EquipmentException.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/excepiton/EquipmentException.java
index 30df76c..a9ffee4 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/excepiton/EquipmentException.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/excepiton/EquipmentException.java
@@ -1,12 +1,17 @@
 
 package com.gkhy.safePlatform.equipment.excepiton;
 
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
 import com.gkhy.safePlatform.equipment.enums.EquipmentResultCodes;
 
 public class EquipmentException extends RuntimeException {
     private String code;
     private String message;
 
+    public EquipmentException(String message) {
+        super(message);
+        this.code = "A3000";
+    }
     public EquipmentException(EquipmentResultCodes error) {
         super(error.getDesc());
         this.code = error.getCode();
@@ -19,6 +24,12 @@
         this.message = message;
     }
 
+    public EquipmentException(ResultCodes clientParamIllegal) {
+        super(clientParamIllegal.getDesc());
+        this.code = clientParamIllegal.getCode();
+        this.message = clientParamIllegal.getDesc();
+    }
+
     public String getCode() {
         return this.code;
     }
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/schedule/KeepAliveRobot.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/schedule/KeepAliveRobot.java
deleted file mode 100644
index 15470e3..0000000
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/schedule/KeepAliveRobot.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package com.gkhy.safePlatform.equipment.schedule;
-
-import com.gkhy.safePlatform.equipment.service.EquipmentInfoService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
-import org.springframework.scheduling.annotation.EnableScheduling;
-import org.springframework.scheduling.annotation.Scheduled;
-import org.springframework.stereotype.Component;
-
-
-@Component("equipmentKeepAlive")
-@EnableScheduling
-@ConditionalOnProperty(prefix = "threadPool.scheduling", name = "enabled", havingValue = "true")
-public class KeepAliveRobot {
-
-    @Autowired
-    private EquipmentInfoService equipmentInfoService;
-
-    // 30m
-    @Scheduled(cron = "0 0/30 * * * ?")
-    public void keepAlive(){
-        //
-        equipmentInfoService.getById(-1L);
-
-    }
-
-}
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipMinioAccessService.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipMinioAccessService.java
deleted file mode 100644
index b312d1e..0000000
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipMinioAccessService.java
+++ /dev/null
@@ -1,161 +0,0 @@
-package com.gkhy.safePlatform.equipment.service;
-
-import io.minio.*;
-import io.minio.errors.*;
-import io.minio.http.Method;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import javax.annotation.Resource;
-import java.io.IOException;
-import java.io.InputStream;
-import java.security.InvalidKeyException;
-import java.security.NoSuchAlgorithmException;
-import java.util.HashMap;
-import java.util.Map;
-
-@Service
-public class EquipMinioAccessService {
-
-   /* @Resource
-    private MinioConfig minioConfig;
-
-    @Autowired
-    private MinioClient minioClient;
-
-    public Object uploadStream(InputStream inputStream,String objectName){
-        try {
-            boolean bucketCheck =
-                    minioClient.bucketExists(BucketExistsArgs.builder()
-                            .bucket(minioConfig.getBucketName()).build());
-            if(bucketCheck == true){
-                // 上传流
-                minioClient.putObject(
-                        PutObjectArgs.builder()
-                                .bucket(minioConfig.getBucketName())
-                                .object(objectName).stream(inputStream, inputStream.available(), -1)
-                                .build());
-                inputStream.close();
-                System.out.println("上传成功");
-            }
-        } catch (ServerException e) {
-            e.printStackTrace();
-        } catch (InsufficientDataException e) {
-            e.printStackTrace();
-        } catch (ErrorResponseException e) {
-            e.printStackTrace();
-        } catch (IOException e) {
-            e.printStackTrace();
-        } catch (NoSuchAlgorithmException e) {
-            e.printStackTrace();
-        } catch (InvalidKeyException e) {
-            e.printStackTrace();
-        } catch (InvalidResponseException e) {
-            e.printStackTrace();
-        } catch (XmlParserException e) {
-            e.printStackTrace();
-        } catch (InternalException e) {
-            e.printStackTrace();
-        }
-        return "1";
-    }
-    public Object uploadFile(){
-        try {
-            boolean bucketCheck =
-                    minioClient.bucketExists(BucketExistsArgs.builder()
-                            .bucket(minioConfig.getBucketName()).build());
-            if(bucketCheck == true){
-                minioClient.uploadObject(UploadObjectArgs.builder().bucket(minioConfig.getBucketName())
-                        .object("1.b3dm")
-                        .filename("G:\\b3dm\\b3dm60\\Tile_+000_+004\\Tile_+000_+004.b3dm")
-                        .build());
-                System.out.println("上传成功");
-            }
-        } catch (ServerException e) {
-            e.printStackTrace();
-        } catch (InsufficientDataException e) {
-            e.printStackTrace();
-        } catch (ErrorResponseException e) {
-            e.printStackTrace();
-        } catch (IOException e) {
-            e.printStackTrace();
-        } catch (NoSuchAlgorithmException e) {
-            e.printStackTrace();
-        } catch (InvalidKeyException e) {
-            e.printStackTrace();
-        } catch (InvalidResponseException e) {
-            e.printStackTrace();
-        } catch (XmlParserException e) {
-            e.printStackTrace();
-        } catch (InternalException e) {
-            e.printStackTrace();
-        }
-        return "1";
-    }
-
-    public String getObjectUrl(String objectName){
-        String url = null;
-        try {
-            url = minioClient.getPresignedObjectUrl(GetPresignedObjectUrlArgs.builder()
-                    .method(Method.GET)
-                    .bucket(minioConfig.getBucketName())
-                    .object(objectName)
-                    .expiry(60).build());
-        } catch (ErrorResponseException e) {
-            e.printStackTrace();
-        } catch (InsufficientDataException e) {
-            e.printStackTrace();
-        } catch (InternalException e) {
-            e.printStackTrace();
-        } catch (InvalidKeyException e) {
-            e.printStackTrace();
-        } catch (InvalidResponseException e) {
-            e.printStackTrace();
-        } catch (IOException e) {
-            e.printStackTrace();
-        } catch (NoSuchAlgorithmException e) {
-            e.printStackTrace();
-        } catch (XmlParserException e) {
-            e.printStackTrace();
-        } catch (ServerException e) {
-            e.printStackTrace();
-        }
-        return url;
-    }
-
-    public String getPutUrl(String objName){
-        String url = null;
-        try {
-            Map<String, String> reqParams = new HashMap<>();
-            reqParams.put("response-content-type", "application/json");
-            url = minioClient.getPresignedObjectUrl(GetPresignedObjectUrlArgs.builder()
-                    .method(Method.PUT)
-                    .bucket(minioConfig.getBucketName())
-                    .object(objName)
-                    .expiry(60*2)
-                    .extraQueryParams(reqParams)
-                    .build());
-        } catch (ErrorResponseException e) {
-            e.printStackTrace();
-        } catch (InsufficientDataException e) {
-            e.printStackTrace();
-        } catch (InternalException e) {
-            e.printStackTrace();
-        } catch (InvalidKeyException e) {
-            e.printStackTrace();
-        } catch (InvalidResponseException e) {
-            e.printStackTrace();
-        } catch (IOException e) {
-            e.printStackTrace();
-        } catch (NoSuchAlgorithmException e) {
-            e.printStackTrace();
-        } catch (XmlParserException e) {
-            e.printStackTrace();
-        } catch (ServerException e) {
-            e.printStackTrace();
-        }
-        return url;
-    }*/
-
-
-}
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentCheckStandardDetailService.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentCheckStandardDetailService.java
index 831506c..8771625 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentCheckStandardDetailService.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentCheckStandardDetailService.java
@@ -15,7 +15,7 @@
  * @author xurui
  * @since 2022-07-19 15:21:54
  */
-public interface EquipmentCheckStandardDetailService extends IService<EquipmentCheckStandardDetail> {
+public interface EquipmentCheckStandardDetailService {
     ResultVO queryAll(PageQuery<EquipmentCheckStandardDetailQueryCriteria> pageQuery);
     
     List<EquipmentCheckStandardDetail> queryAll(EquipmentCheckStandardDetailQueryCriteria criteria);
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentInfoService.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentInfoService.java
index b72b70c..3bc94e4 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentInfoService.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentInfoService.java
@@ -7,7 +7,9 @@
 import com.gkhy.safePlatform.equipment.model.dto.req.EquipmentInfoQueryCriteria;
 import com.gkhy.safePlatform.equipment.model.dto.req.EquipmentInfoSaveOrUpdate;
 import com.gkhy.safePlatform.equipment.model.dto.resp.EquipmentInfoDto;
+import org.springframework.web.multipart.MultipartFile;
 
+import java.io.IOException;
 import java.io.Serializable;
 import java.util.List;
 import java.util.Map;
@@ -20,7 +22,7 @@
  * @author xurui
  * @since 2022-07-19 14:02:50
  */
-public interface EquipmentInfoService extends IService<EquipmentInfo> {
+public interface EquipmentInfoService {
     ResultVO queryAll(PageQuery<EquipmentInfoQueryCriteria> pageQuery);
     
     List<EquipmentInfo> queryAll(EquipmentInfoQueryCriteria criteria);
@@ -32,4 +34,12 @@
     Object statistics();
 
     Map<Long,String> getDepName(Set<Long> collectDepIdSet);
+
+    void importData(MultipartFile file) throws IOException;
+
+    void delete(Long[] ids);
+
+    void exportTemplate() throws IOException;
+
+    void exportData(EquipmentInfoQueryCriteria queryCriteria) throws IOException;
 }
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentRepairDetailService.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentRepairDetailService.java
index 034357a..ec2d50f 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentRepairDetailService.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentRepairDetailService.java
@@ -15,7 +15,7 @@
  * @author xurui
  * @since 2022-07-19 15:10:57
  */
-public interface EquipmentRepairDetailService extends IService<EquipmentRepairDetail> {
+public interface EquipmentRepairDetailService {
     ResultVO queryAll(PageQuery<EquipmentRepairDetailQueryCriteria> pageQuery);
     
     List<EquipmentRepairDetail> queryAll(EquipmentRepairDetailQueryCriteria criteria);
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentTakecareDetailService.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentTakecareDetailService.java
index d199769..e7d0b7b 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentTakecareDetailService.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentTakecareDetailService.java
@@ -15,7 +15,7 @@
  * @author xurui
  * @since 2022-07-19 14:40:28
  */
-public interface EquipmentTakecareDetailService extends IService<EquipmentTakecareDetail> {
+public interface EquipmentTakecareDetailService {
     ResultVO queryAll(PageQuery<EquipmentTakecareDetailQueryCriteria> pageQuery);
     
     List<EquipmentTakecareDetail> queryAll(EquipmentTakecareDetailQueryCriteria criteria);
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentTakecareStardardDetailService.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentTakecareStardardDetailService.java
index 3bc0610..511340e 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentTakecareStardardDetailService.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentTakecareStardardDetailService.java
@@ -15,7 +15,7 @@
  * @author xurui
  * @since 2022-07-19 15:22:05
  */
-public interface EquipmentTakecareStardardDetailService extends IService<EquipmentTakecareStardardDetail> {
+public interface EquipmentTakecareStardardDetailService {
     ResultVO queryAll(PageQuery<EquipmentTakecareStardardDetailQueryCriteria> pageQuery);
     
     List<EquipmentTakecareStardardDetail> queryAll(EquipmentTakecareStardardDetailQueryCriteria criteria);
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentTestDetailService.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentTestDetailService.java
index 7cd58bc..fca0445 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentTestDetailService.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentTestDetailService.java
@@ -15,7 +15,7 @@
  * @author xurui
  * @since 2022-07-19 15:08:23
  */
-public interface EquipmentTestDetailService extends IService<EquipmentTestDetail> {
+public interface EquipmentTestDetailService {
     ResultVO queryAll(PageQuery<EquipmentTestDetailQueryCriteria> pageQuery);
     
     List<EquipmentTestDetail> queryAll(EquipmentTestDetailQueryCriteria criteria);
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentTypeMngService.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentTypeMngService.java
index 7d755de..3fee63f 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentTypeMngService.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/EquipmentTypeMngService.java
@@ -16,10 +16,12 @@
  * @author xurui
  * @since 2022-07-19 08:35:02
  */
-public interface EquipmentTypeMngService extends IService<EquipmentTypeMng> {
+public interface EquipmentTypeMngService  {
     ResultVO queryAll(PageQuery<EquipmentTypeMngQueryCriteria> pageQuery);
     
     List<EquipmentTypeMng> queryAll(EquipmentTypeMngQueryCriteria criteria);
 
     List<EquipmentTypeMngDto> treeData(Long parentId);
+
+    void delete(Long[] ids);
 }
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/KeypointEquipmentInfoService.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/KeypointEquipmentInfoService.java
index 5a32838..574acd6 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/KeypointEquipmentInfoService.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/KeypointEquipmentInfoService.java
@@ -6,7 +6,9 @@
 import com.gkhy.safePlatform.commons.query.PageQuery;
 import com.gkhy.safePlatform.equipment.model.dto.req.KeypointEquipmentInfoQueryCriteria;
 import com.gkhy.safePlatform.equipment.model.dto.resp.KeypointEquipmentInfoDto;
+import org.springframework.web.multipart.MultipartFile;
 
+import java.io.IOException;
 import java.io.Serializable;
 import java.util.List;
 
@@ -17,7 +19,7 @@
  * @author xurui
  * @since 2022-07-19 13:36:27
  */
-public interface KeypointEquipmentInfoService extends IService<KeypointEquipmentInfo> {
+public interface KeypointEquipmentInfoService {
     ResultVO queryAll(PageQuery<KeypointEquipmentInfoQueryCriteria> pageQuery);
     
     List<KeypointEquipmentInfo> queryAll(KeypointEquipmentInfoQueryCriteria criteria);
@@ -25,4 +27,12 @@
     KeypointEquipmentInfoDto selectOne(Serializable id);
 
     void addOrUpdate(KeypointEquipmentInfoDto infoDto);
+
+    void importData(MultipartFile file) throws IOException;
+
+    void delete(Long[] ids);
+
+    void exportTemplate() throws IOException;
+
+    void exportData(KeypointEquipmentInfoQueryCriteria queryCriteria) throws IOException;
 }
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentCheckStandardDetailBaseService.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentCheckStandardDetailBaseService.java
new file mode 100644
index 0000000..cf5604d
--- /dev/null
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentCheckStandardDetailBaseService.java
@@ -0,0 +1,24 @@
+package com.gkhy.safePlatform.equipment.service.baseService;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.equipment.entity.EquipmentCheckStandardDetail;
+import com.gkhy.safePlatform.equipment.model.dto.req.EquipmentCheckStandardDetailQueryCriteria;
+
+import java.util.List;
+
+
+/**
+ * 设备检查标准设置(EquipmentCheckStandardDetail)表服务接口
+ *
+ * @author xurui
+ * @since 2022-07-19 15:21:54
+ */
+public interface EquipmentCheckStandardDetailBaseService extends IService<EquipmentCheckStandardDetail> {
+    List<EquipmentCheckStandardDetail> queryAll(EquipmentCheckStandardDetailQueryCriteria criteria);
+
+    IPage<EquipmentCheckStandardDetail> selectPage(IPage<EquipmentCheckStandardDetail> page, QueryWrapper predicate);
+}
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentInfoBaseService.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentInfoBaseService.java
new file mode 100644
index 0000000..f49c28e
--- /dev/null
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentInfoBaseService.java
@@ -0,0 +1,33 @@
+package com.gkhy.safePlatform.equipment.service.baseService;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.equipment.entity.EquipmentInfo;
+import com.gkhy.safePlatform.equipment.model.dto.req.EquipmentInfoQueryCriteria;
+import com.gkhy.safePlatform.equipment.model.dto.req.EquipmentInfoSaveOrUpdate;
+import com.gkhy.safePlatform.equipment.model.dto.resp.EquipmentInfoDto;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.io.IOException;
+import java.io.Serializable;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+
+/**
+ * 设备设施详细信息(EquipmentInfo)表服务接口
+ *
+ * @author xurui
+ * @since 2022-07-19 14:02:50
+ */
+public interface EquipmentInfoBaseService extends IService<EquipmentInfo> {
+    List<EquipmentInfo> queryAll(EquipmentInfoQueryCriteria criteria);
+
+    Object countOverTime();
+
+    IPage<EquipmentInfo> selectPage(IPage<EquipmentInfo> page, QueryWrapper predicate);
+}
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentRepairDetailBaseService.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentRepairDetailBaseService.java
new file mode 100644
index 0000000..82ce431
--- /dev/null
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentRepairDetailBaseService.java
@@ -0,0 +1,24 @@
+package com.gkhy.safePlatform.equipment.service.baseService;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.equipment.entity.EquipmentRepairDetail;
+import com.gkhy.safePlatform.equipment.model.dto.req.EquipmentRepairDetailQueryCriteria;
+
+import java.util.List;
+
+
+/**
+ * 设备维修明细(EquipmentRepairDetail)表服务接口
+ *
+ * @author xurui
+ * @since 2022-07-19 15:10:57
+ */
+public interface EquipmentRepairDetailBaseService extends IService<EquipmentRepairDetail> {
+    List<EquipmentRepairDetail> queryAll(EquipmentRepairDetailQueryCriteria criteria);
+
+    IPage<EquipmentRepairDetail> selectPage(IPage<EquipmentRepairDetail> page, QueryWrapper predicate);
+}
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentTakecareDetailBaseService.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentTakecareDetailBaseService.java
new file mode 100644
index 0000000..c5ea7c3
--- /dev/null
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentTakecareDetailBaseService.java
@@ -0,0 +1,24 @@
+package com.gkhy.safePlatform.equipment.service.baseService;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.equipment.entity.EquipmentTakecareDetail;
+import com.gkhy.safePlatform.equipment.model.dto.req.EquipmentTakecareDetailQueryCriteria;
+
+import java.util.List;
+
+
+/**
+ * 设备保养明细(EquipmentTakecareDetail)表服务接口
+ *
+ * @author xurui
+ * @since 2022-07-19 14:40:28
+ */
+public interface EquipmentTakecareDetailBaseService extends IService<EquipmentTakecareDetail> {
+    List<EquipmentTakecareDetail> queryAll(EquipmentTakecareDetailQueryCriteria criteria);
+
+    IPage<EquipmentTakecareDetail> selectPage(IPage<EquipmentTakecareDetail> page, QueryWrapper predicate);
+}
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentTakecareStardardDetailBaseService.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentTakecareStardardDetailBaseService.java
new file mode 100644
index 0000000..186129e
--- /dev/null
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentTakecareStardardDetailBaseService.java
@@ -0,0 +1,24 @@
+package com.gkhy.safePlatform.equipment.service.baseService;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.equipment.entity.EquipmentTakecareStardardDetail;
+import com.gkhy.safePlatform.equipment.model.dto.req.EquipmentTakecareStardardDetailQueryCriteria;
+
+import java.util.List;
+
+
+/**
+ * 设备保养明细(EquipmentTakecareStardardDetail)表服务接口
+ *
+ * @author xurui
+ * @since 2022-07-19 15:22:05
+ */
+public interface EquipmentTakecareStardardDetailBaseService extends IService<EquipmentTakecareStardardDetail> {
+    List<EquipmentTakecareStardardDetail> queryAll(EquipmentTakecareStardardDetailQueryCriteria criteria);
+
+    IPage<EquipmentTakecareStardardDetail> selectPage(IPage<EquipmentTakecareStardardDetail> page, QueryWrapper predicate);
+}
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentTestDetailBaseService.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentTestDetailBaseService.java
new file mode 100644
index 0000000..689f2e3
--- /dev/null
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentTestDetailBaseService.java
@@ -0,0 +1,24 @@
+package com.gkhy.safePlatform.equipment.service.baseService;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.equipment.entity.EquipmentTestDetail;
+import com.gkhy.safePlatform.equipment.model.dto.req.EquipmentTestDetailQueryCriteria;
+
+import java.util.List;
+
+
+/**
+ * 设备检测明细(EquipmentTestDetail)表服务接口
+ *
+ * @author xurui
+ * @since 2022-07-19 15:08:23
+ */
+public interface EquipmentTestDetailBaseService extends IService<EquipmentTestDetail> {
+    List<EquipmentTestDetail> queryAll(EquipmentTestDetailQueryCriteria criteria);
+
+    IPage<EquipmentTestDetail> selectPage(IPage<EquipmentTestDetail> page, QueryWrapper predicate);
+}
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentTypeMngBaseService.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentTypeMngBaseService.java
new file mode 100644
index 0000000..5b2a644
--- /dev/null
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/EquipmentTypeMngBaseService.java
@@ -0,0 +1,25 @@
+package com.gkhy.safePlatform.equipment.service.baseService;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.equipment.entity.EquipmentTypeMng;
+import com.gkhy.safePlatform.equipment.model.dto.req.EquipmentTypeMngQueryCriteria;
+import com.gkhy.safePlatform.equipment.model.dto.resp.EquipmentTypeMngDto;
+
+import java.util.List;
+
+
+/**
+ * 设备设施类型管理(EquipmentTypeMng)表服务接口
+ *
+ * @author xurui
+ * @since 2022-07-19 08:35:02
+ */
+public interface EquipmentTypeMngBaseService extends IService<EquipmentTypeMng> {
+    List<EquipmentTypeMng> queryAll(EquipmentTypeMngQueryCriteria criteria);
+
+    Page<EquipmentTypeMng> selectPage(Page<EquipmentTypeMng> page, QueryWrapper predicate);
+}
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/KeypointEquipmentInfoBaseService.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/KeypointEquipmentInfoBaseService.java
new file mode 100644
index 0000000..6de5a8a
--- /dev/null
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/KeypointEquipmentInfoBaseService.java
@@ -0,0 +1,28 @@
+package com.gkhy.safePlatform.equipment.service.baseService;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.equipment.entity.KeypointEquipmentInfo;
+import com.gkhy.safePlatform.equipment.model.dto.req.KeypointEquipmentInfoQueryCriteria;
+import com.gkhy.safePlatform.equipment.model.dto.resp.KeypointEquipmentInfoDto;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.io.IOException;
+import java.io.Serializable;
+import java.util.List;
+
+
+/**
+ * 重点监管装置/设备 详细信息(KeypointEquipmentInfo)表服务接口
+ *
+ * @author xurui
+ * @since 2022-07-19 13:36:27
+ */
+public interface KeypointEquipmentInfoBaseService extends IService<KeypointEquipmentInfo> {
+    List<KeypointEquipmentInfo> queryAll(KeypointEquipmentInfoQueryCriteria criteria);
+
+    IPage<KeypointEquipmentInfo> selectPage(IPage<KeypointEquipmentInfo> page, QueryWrapper predicate);
+}
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentCheckStandardDetailBaseServiceImpl.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentCheckStandardDetailBaseServiceImpl.java
new file mode 100644
index 0000000..c028a8f
--- /dev/null
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentCheckStandardDetailBaseServiceImpl.java
@@ -0,0 +1,41 @@
+package com.gkhy.safePlatform.equipment.service.baseService.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+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.vo.ResultVO;
+import com.gkhy.safePlatform.commons.vo.SearchResultVO;
+import com.gkhy.safePlatform.equipment.entity.EquipmentCheckStandardDetail;
+import com.gkhy.safePlatform.equipment.model.dto.req.EquipmentCheckStandardDetailQueryCriteria;
+import com.gkhy.safePlatform.equipment.model.dto.resp.EquipmentCheckStandardDetailDto;
+import com.gkhy.safePlatform.equipment.repository.EquipmentCheckStandardDetailRepository;
+import com.gkhy.safePlatform.equipment.service.baseService.EquipmentCheckStandardDetailBaseService;
+import com.gkhy.safePlatform.equipment.utils.QueryHelpPlus;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 设备检查标准设置(EquipmentCheckStandardDetail)表服务实现类
+ *
+ * @author xurui
+ * @since 2022-07-19 15:21:54
+ */
+@Service("equipmentCheckStandardDetailBaseService")
+public class EquipmentCheckStandardDetailBaseServiceImpl extends ServiceImpl<EquipmentCheckStandardDetailRepository, EquipmentCheckStandardDetail> implements EquipmentCheckStandardDetailBaseService {
+
+    @Override
+    public List<EquipmentCheckStandardDetail> queryAll(EquipmentCheckStandardDetailQueryCriteria criteria) {
+        return baseMapper.selectList(QueryHelpPlus.getPredicate(EquipmentCheckStandardDetail.class, criteria));
+    }
+
+    @Override
+    public IPage<EquipmentCheckStandardDetail> selectPage(IPage<EquipmentCheckStandardDetail> page, QueryWrapper predicate) {
+        return baseMapper.selectPage(page,predicate);
+    }
+}
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentInfoBaseServiceImpl.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentInfoBaseServiceImpl.java
new file mode 100644
index 0000000..f627736
--- /dev/null
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentInfoBaseServiceImpl.java
@@ -0,0 +1,68 @@
+package com.gkhy.safePlatform.equipment.service.baseService.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gkhy.safePlatform.account.rpc.apimodel.AccountDepartmentService;
+import com.gkhy.safePlatform.account.rpc.apimodel.model.resp.DepInfoRPCRespDTO;
+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.vo.SearchResultVO;
+import com.gkhy.safePlatform.equipment.entity.*;
+import com.gkhy.safePlatform.equipment.excepiton.EquipmentException;
+import com.gkhy.safePlatform.equipment.model.dto.req.*;
+import com.gkhy.safePlatform.equipment.model.dto.resp.EquipmentInfoDto;
+import com.gkhy.safePlatform.equipment.model.dto.resp.EquipmentInfoExcel;
+import com.gkhy.safePlatform.equipment.repository.EquipmentInfoRepository;
+import com.gkhy.safePlatform.equipment.repository.EquipmentTypeMngRepository;
+import com.gkhy.safePlatform.equipment.service.baseService.*;
+import com.gkhy.safePlatform.equipment.utils.DateUtils;
+import com.gkhy.safePlatform.equipment.utils.QueryHelpPlus;
+import com.gkhy.safePlatform.equipment.utils.poihelper.ExcelLogs;
+import com.gkhy.safePlatform.equipment.utils.poihelper.ExcelUtil;
+import org.apache.commons.collections.CollectionUtils;
+import org.apache.dubbo.config.annotation.DubboReference;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.io.Serializable;
+import java.net.URLEncoder;
+import java.util.*;
+import java.util.stream.Collectors;
+
+/**
+ * 设备设施详细信息(EquipmentInfo)表服务实现类
+ *
+ * @author xurui
+ * @since 2022-07-19 14:02:50
+ */
+@Service("equipmentInfoBaseService")
+public class EquipmentInfoBaseServiceImpl extends ServiceImpl<EquipmentInfoRepository, EquipmentInfo> implements EquipmentInfoBaseService {
+
+
+    @Autowired
+    private EquipmentInfoRepository equipmentInfoRepository;
+    @Override
+    public List<EquipmentInfo> queryAll(EquipmentInfoQueryCriteria criteria) {
+        return baseMapper.selectList(QueryHelpPlus.getPredicate(EquipmentInfo.class, criteria));
+    }
+
+    @Override
+    public Object countOverTime() {
+        return equipmentInfoRepository.countOverTime();
+    }
+
+    @Override
+    public IPage<EquipmentInfo> selectPage(IPage<EquipmentInfo> page, QueryWrapper predicate) {
+        return baseMapper.selectPage(page,predicate);
+    }
+}
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentRepairDetailBaseServiceImpl.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentRepairDetailBaseServiceImpl.java
new file mode 100644
index 0000000..b70342d
--- /dev/null
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentRepairDetailBaseServiceImpl.java
@@ -0,0 +1,42 @@
+package com.gkhy.safePlatform.equipment.service.baseService.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+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.vo.ResultVO;
+import com.gkhy.safePlatform.commons.vo.SearchResultVO;
+import com.gkhy.safePlatform.equipment.entity.EquipmentRepairDetail;
+import com.gkhy.safePlatform.equipment.model.dto.req.EquipmentRepairDetailQueryCriteria;
+import com.gkhy.safePlatform.equipment.model.dto.resp.EquipmentRepairDetailDto;
+import com.gkhy.safePlatform.equipment.repository.EquipmentRepairDetailRepository;
+import com.gkhy.safePlatform.equipment.service.baseService.EquipmentRepairDetailBaseService;
+import com.gkhy.safePlatform.equipment.utils.QueryHelpPlus;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 设备维修明细(EquipmentRepairDetail)表服务实现类
+ *
+ * @author xurui
+ * @since 2022-07-19 15:10:57
+ */
+@Service("equipmentRepairDetailBaseService")
+public class EquipmentRepairDetailBaseServiceImpl extends ServiceImpl<EquipmentRepairDetailRepository, EquipmentRepairDetail> implements EquipmentRepairDetailBaseService {
+
+
+    @Override
+    public List<EquipmentRepairDetail> queryAll(EquipmentRepairDetailQueryCriteria criteria) {
+        return baseMapper.selectList(QueryHelpPlus.getPredicate(EquipmentRepairDetail.class, criteria));
+    }
+
+    @Override
+    public IPage<EquipmentRepairDetail> selectPage(IPage<EquipmentRepairDetail> page, QueryWrapper predicate) {
+        return baseMapper.selectPage(page,predicate);
+    }
+}
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentTakecareDetailBaseServiceImpl.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentTakecareDetailBaseServiceImpl.java
new file mode 100644
index 0000000..898853d
--- /dev/null
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentTakecareDetailBaseServiceImpl.java
@@ -0,0 +1,42 @@
+package com.gkhy.safePlatform.equipment.service.baseService.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+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.vo.ResultVO;
+import com.gkhy.safePlatform.commons.vo.SearchResultVO;
+import com.gkhy.safePlatform.equipment.entity.EquipmentTakecareDetail;
+import com.gkhy.safePlatform.equipment.model.dto.req.EquipmentTakecareDetailQueryCriteria;
+import com.gkhy.safePlatform.equipment.model.dto.resp.EquipmentTakecareDetailDto;
+import com.gkhy.safePlatform.equipment.repository.EquipmentTakecareDetailRepository;
+import com.gkhy.safePlatform.equipment.service.baseService.EquipmentTakecareDetailBaseService;
+import com.gkhy.safePlatform.equipment.utils.QueryHelpPlus;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 设备保养明细(EquipmentTakecareDetail)表服务实现类
+ *
+ * @author xurui
+ * @since 2022-07-19 14:40:28
+ */
+@Service("equipmentTakecareDetailBaseService")
+public class EquipmentTakecareDetailBaseServiceImpl extends ServiceImpl<EquipmentTakecareDetailRepository, EquipmentTakecareDetail> implements EquipmentTakecareDetailBaseService {
+
+    @Override
+    public List<EquipmentTakecareDetail> queryAll(EquipmentTakecareDetailQueryCriteria criteria) {
+        return baseMapper.selectList(QueryHelpPlus.getPredicate(EquipmentTakecareDetail.class, criteria));
+    }
+
+    @Override
+    public IPage<EquipmentTakecareDetail> selectPage(IPage<EquipmentTakecareDetail> page, QueryWrapper predicate) {
+        return baseMapper.selectPage(page,predicate);
+
+    }
+}
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentTakecareStardardDetailBaseServiceImpl.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentTakecareStardardDetailBaseServiceImpl.java
new file mode 100644
index 0000000..cbbbdb2
--- /dev/null
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentTakecareStardardDetailBaseServiceImpl.java
@@ -0,0 +1,42 @@
+package com.gkhy.safePlatform.equipment.service.baseService.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+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.vo.ResultVO;
+import com.gkhy.safePlatform.commons.vo.SearchResultVO;
+import com.gkhy.safePlatform.equipment.entity.EquipmentTakecareStardardDetail;
+import com.gkhy.safePlatform.equipment.model.dto.req.EquipmentTakecareStardardDetailQueryCriteria;
+import com.gkhy.safePlatform.equipment.model.dto.resp.EquipmentTakecareStardardDetailDto;
+import com.gkhy.safePlatform.equipment.repository.EquipmentTakecareStardardDetailRepository;
+import com.gkhy.safePlatform.equipment.service.baseService.EquipmentTakecareStardardDetailBaseService;
+import com.gkhy.safePlatform.equipment.utils.QueryHelpPlus;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 设备保养明细(EquipmentTakecareStardardDetail)表服务实现类
+ *
+ * @author xurui
+ * @since 2022-07-19 15:22:05
+ */
+@Service("equipmentTakecareStardardDetailBaseService")
+public class EquipmentTakecareStardardDetailBaseServiceImpl extends ServiceImpl<EquipmentTakecareStardardDetailRepository, EquipmentTakecareStardardDetail> implements EquipmentTakecareStardardDetailBaseService {
+
+    @Override
+    public List<EquipmentTakecareStardardDetail> queryAll(EquipmentTakecareStardardDetailQueryCriteria criteria) {
+        return baseMapper.selectList(QueryHelpPlus.getPredicate(EquipmentTakecareStardardDetail.class, criteria));
+    }
+
+    @Override
+    public IPage<EquipmentTakecareStardardDetail> selectPage(IPage<EquipmentTakecareStardardDetail> page, QueryWrapper predicate) {
+        return baseMapper.selectPage(page,predicate);
+
+    }
+}
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentTestDetailBaseServiceImpl.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentTestDetailBaseServiceImpl.java
new file mode 100644
index 0000000..dd49acd
--- /dev/null
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentTestDetailBaseServiceImpl.java
@@ -0,0 +1,42 @@
+package com.gkhy.safePlatform.equipment.service.baseService.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+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.vo.ResultVO;
+import com.gkhy.safePlatform.commons.vo.SearchResultVO;
+import com.gkhy.safePlatform.equipment.entity.EquipmentTestDetail;
+import com.gkhy.safePlatform.equipment.model.dto.req.EquipmentTestDetailQueryCriteria;
+import com.gkhy.safePlatform.equipment.model.dto.resp.EquipmentTestDetailDto;
+import com.gkhy.safePlatform.equipment.repository.EquipmentTestDetailRepository;
+import com.gkhy.safePlatform.equipment.service.baseService.EquipmentTestDetailBaseService;
+import com.gkhy.safePlatform.equipment.utils.QueryHelpPlus;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 设备检测明细(EquipmentTestDetail)表服务实现类
+ *
+ * @author xurui
+ * @since 2022-07-19 15:08:23
+ */
+@Service("equipmentTestDetailBaseService")
+public class EquipmentTestDetailBaseServiceImpl extends ServiceImpl<EquipmentTestDetailRepository, EquipmentTestDetail> implements EquipmentTestDetailBaseService {
+
+    @Override
+    public List<EquipmentTestDetail> queryAll(EquipmentTestDetailQueryCriteria criteria) {
+        return baseMapper.selectList(QueryHelpPlus.getPredicate(EquipmentTestDetail.class, criteria));
+    }
+
+    @Override
+    public IPage<EquipmentTestDetail> selectPage(IPage<EquipmentTestDetail> page, QueryWrapper predicate) {
+        return baseMapper.selectPage(page,predicate);
+
+    }
+}
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentTypeMngBaseServiceImpl.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentTypeMngBaseServiceImpl.java
new file mode 100644
index 0000000..1aa2f51
--- /dev/null
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/EquipmentTypeMngBaseServiceImpl.java
@@ -0,0 +1,47 @@
+package com.gkhy.safePlatform.equipment.service.baseService.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.OrderItem;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+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.vo.SearchResultVO;
+import com.gkhy.safePlatform.equipment.entity.EquipmentTypeMng;
+import com.gkhy.safePlatform.equipment.excepiton.EquipmentException;
+import com.gkhy.safePlatform.equipment.model.dto.req.EquipmentTypeMngQueryCriteria;
+import com.gkhy.safePlatform.equipment.model.dto.resp.EquipmentTypeMngDto;
+import com.gkhy.safePlatform.equipment.repository.EquipmentTypeMngRepository;
+import com.gkhy.safePlatform.equipment.service.baseService.EquipmentTypeMngBaseService;
+import com.gkhy.safePlatform.equipment.utils.QueryHelpPlus;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * 设备设施类型管理(EquipmentTypeMng)表服务实现类
+ *
+ * @author xurui
+ * @since 2022-07-19 08:35:02
+ */
+@Service("equipmentTypeMngBaseService")
+public class EquipmentTypeMngBaseServiceImpl extends ServiceImpl<EquipmentTypeMngRepository, EquipmentTypeMng> implements EquipmentTypeMngBaseService {
+
+    @Override
+    public List<EquipmentTypeMng> queryAll(EquipmentTypeMngQueryCriteria criteria) {
+        return baseMapper.selectList(QueryHelpPlus.getPredicate(EquipmentTypeMng.class, criteria).orderBy(true,true,"sort_num"));
+    }
+
+    @Override
+    public Page<EquipmentTypeMng> selectPage(Page<EquipmentTypeMng> page, QueryWrapper predicate) {
+        return baseMapper.selectPage(page,predicate);
+
+    }
+}
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/KeypointEquipmentInfoBaseServiceImpl.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/KeypointEquipmentInfoBaseServiceImpl.java
new file mode 100644
index 0000000..991e27a
--- /dev/null
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/baseService/impl/KeypointEquipmentInfoBaseServiceImpl.java
@@ -0,0 +1,34 @@
+package com.gkhy.safePlatform.equipment.service.baseService.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gkhy.safePlatform.equipment.entity.*;
+import com.gkhy.safePlatform.equipment.model.dto.req.*;
+import com.gkhy.safePlatform.equipment.repository.KeypointEquipmentInfoRepository;
+import com.gkhy.safePlatform.equipment.service.baseService.*;
+import com.gkhy.safePlatform.equipment.utils.QueryHelpPlus;
+import org.springframework.stereotype.Service;
+
+import java.util.*;
+
+/**
+ * 重点监管装置/设备 详细信息(KeypointEquipmentInfo)表服务实现类
+ *
+ * @author xurui
+ * @since 2022-07-19 13:36:27
+ */
+@Service("keypointEquipmentInfoBaseService")
+public class KeypointEquipmentInfoBaseServiceImpl extends ServiceImpl<KeypointEquipmentInfoRepository, KeypointEquipmentInfo> implements KeypointEquipmentInfoBaseService {
+
+    @Override
+    public List<KeypointEquipmentInfo> queryAll(KeypointEquipmentInfoQueryCriteria criteria) {
+        return baseMapper.selectList(QueryHelpPlus.getPredicate(KeypointEquipmentInfo.class, criteria));
+    }
+
+    @Override
+    public IPage<KeypointEquipmentInfo> selectPage(IPage<KeypointEquipmentInfo> page, QueryWrapper predicate) {
+        return baseMapper.selectPage(page,predicate);
+
+    }
+}
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentCheckStandardDetailServiceImpl.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentCheckStandardDetailServiceImpl.java
index 5204908..2e8baac 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentCheckStandardDetailServiceImpl.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentCheckStandardDetailServiceImpl.java
@@ -6,6 +6,7 @@
 import com.gkhy.safePlatform.equipment.repository.EquipmentCheckStandardDetailRepository;
 import com.gkhy.safePlatform.equipment.entity.EquipmentCheckStandardDetail;
 import com.gkhy.safePlatform.equipment.service.EquipmentCheckStandardDetailService;
+import com.gkhy.safePlatform.equipment.service.baseService.EquipmentCheckStandardDetailBaseService;
 import org.springframework.stereotype.Service;
 import org.springframework.beans.factory.annotation.Autowired;
 import com.gkhy.safePlatform.commons.enums.ResultCodes;
@@ -26,10 +27,10 @@
  * @since 2022-07-19 15:21:54
  */
 @Service("equipmentCheckStandardDetailService")
-public class EquipmentCheckStandardDetailServiceImpl extends ServiceImpl<EquipmentCheckStandardDetailRepository, EquipmentCheckStandardDetail> implements EquipmentCheckStandardDetailService {
+public class EquipmentCheckStandardDetailServiceImpl implements EquipmentCheckStandardDetailService {
 
     @Autowired
-    private EquipmentCheckStandardDetailRepository equipmentCheckStandardDetailRepository;
+    private EquipmentCheckStandardDetailBaseService equipmentCheckStandardDetailBaseService;
     
     
 	
@@ -39,7 +40,7 @@
         Long pageSize = pageQuery.getPageSize();
         IPage<EquipmentCheckStandardDetail> page = new Page<>(pageIndex, pageSize);
 
-        page = baseMapper.selectPage(page,
+        page = equipmentCheckStandardDetailBaseService.selectPage(page,
                 QueryHelpPlus.getPredicate(EquipmentCheckStandardDetail.class, pageQuery.getSearchParams()));
         List<EquipmentCheckStandardDetailDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), EquipmentCheckStandardDetailDto.class);
 
@@ -56,6 +57,6 @@
 
     @Override
     public List<EquipmentCheckStandardDetail> queryAll(EquipmentCheckStandardDetailQueryCriteria criteria) {
-        return baseMapper.selectList(QueryHelpPlus.getPredicate(EquipmentCheckStandardDetail.class, criteria));
+        return equipmentCheckStandardDetailBaseService.queryAll(criteria);
     }
 }
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentInfoServiceImpl.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentInfoServiceImpl.java
index 1217145..e59c480 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentInfoServiceImpl.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentInfoServiceImpl.java
@@ -10,21 +10,33 @@
 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.vo.SearchResultVO;
 import com.gkhy.safePlatform.equipment.entity.*;
+import com.gkhy.safePlatform.equipment.excepiton.EquipmentException;
 import com.gkhy.safePlatform.equipment.model.dto.req.*;
 import com.gkhy.safePlatform.equipment.model.dto.resp.EquipmentInfoDto;
+import com.gkhy.safePlatform.equipment.model.dto.resp.EquipmentInfoExcel;
 import com.gkhy.safePlatform.equipment.repository.EquipmentInfoRepository;
 import com.gkhy.safePlatform.equipment.repository.EquipmentTypeMngRepository;
 import com.gkhy.safePlatform.equipment.service.*;
+import com.gkhy.safePlatform.equipment.service.baseService.*;
+import com.gkhy.safePlatform.equipment.utils.DateUtils;
 import com.gkhy.safePlatform.equipment.utils.QueryHelpPlus;
+import com.gkhy.safePlatform.equipment.utils.poihelper.ExcelLogs;
+import com.gkhy.safePlatform.equipment.utils.poihelper.ExcelUtil;
+import org.apache.commons.collections.CollectionUtils;
 import org.apache.dubbo.config.annotation.DubboReference;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.StringUtils;
+import org.springframework.web.multipart.MultipartFile;
 
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
 import java.io.Serializable;
+import java.net.URLEncoder;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -35,25 +47,25 @@
  * @since 2022-07-19 14:02:50
  */
 @Service("equipmentInfoService")
-public class EquipmentInfoServiceImpl extends ServiceImpl<EquipmentInfoRepository, EquipmentInfo> implements EquipmentInfoService {
+public class EquipmentInfoServiceImpl implements EquipmentInfoService {
 
     @Autowired
-    private EquipmentInfoRepository equipmentInfoRepository;
+    private EquipmentInfoBaseService equipmentInfoBaseService;
 
     @Autowired
-    private EquipmentTakecareDetailService equipmentTakecareDetailService;
+    private EquipmentTakecareDetailBaseService equipmentTakecareDetailBaseService;
 
     @Autowired
-    private EquipmentTestDetailService equipmentTestDetailService;
+    private EquipmentTestDetailBaseService equipmentTestDetailBaseService;
 
     @Autowired
-    private EquipmentRepairDetailService equipmentRepairDetailService;
+    private EquipmentRepairDetailBaseService equipmentRepairDetailBaseService;
 
     @Autowired
-    private EquipmentTakecareStardardDetailService equipmentTakecareStardardDetailService;
+    private EquipmentTakecareStardardDetailBaseService equipmentTakecareStardardDetailBaseService;
 
     @Autowired
-    private EquipmentCheckStandardDetailService equipmentCheckStandardDetailService;
+    private EquipmentCheckStandardDetailBaseService equipmentCheckStandardDetailBaseService;
 
     @DubboReference(check = false)
     private AccountDepartmentService accountDepartmentService;
@@ -61,13 +73,22 @@
     @Autowired
     private EquipmentTypeMngRepository equipmentTypeMngRepository;
 
+    @Autowired
+    public HttpServletResponse response;
+
 	@Override
     public ResultVO queryAll(PageQuery<EquipmentInfoQueryCriteria> pageQuery) {
+        if(pageQuery.getSearchParams().getInfoType() == null){
+            return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL,"缺少infoType");
+        }
+
+        PageUtils.checkCheck(pageQuery);
+
         Long pageIndex = pageQuery.getPageIndex();
         Long pageSize = pageQuery.getPageSize();
         IPage<EquipmentInfo> page = new Page<>(pageIndex, pageSize);
 
-        page = baseMapper.selectPage(page,
+        page = equipmentInfoBaseService.selectPage(page,
                 QueryHelpPlus.getPredicate(EquipmentInfo.class, pageQuery.getSearchParams()));
         List<EquipmentInfoDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), EquipmentInfoDto.class);
 
@@ -77,14 +98,14 @@
             EquipmentTakecareDetailQueryCriteria criteria = new EquipmentTakecareDetailQueryCriteria();
             criteria.setEquipmentId(f.getId());
             criteria.setInfoTpe(pageQuery.getSearchParams().getInfoType());
-            List<EquipmentTakecareDetail> takecareDetailList = equipmentTakecareDetailService.queryAll(criteria);
+            List<EquipmentTakecareDetail> takecareDetailList = equipmentTakecareDetailBaseService.queryAll(criteria);
             f.setTakecareDetailList(takecareDetailList);
 
             //设备检测
             EquipmentTestDetailQueryCriteria criteria1 = new EquipmentTestDetailQueryCriteria();
             criteria1.setEquipmentId(f.getId());
             criteria1.setInfoTpe(pageQuery.getSearchParams().getInfoType());
-            List<EquipmentTestDetail> testDetailList = equipmentTestDetailService.queryAll(criteria1);
+            List<EquipmentTestDetail> testDetailList = equipmentTestDetailBaseService.queryAll(criteria1);
             f.setTestDetailList(testDetailList);
 
             //设备检查 TODO
@@ -94,7 +115,7 @@
             EquipmentRepairDetailQueryCriteria criteria2 = new EquipmentRepairDetailQueryCriteria();
             criteria2.setEquipmentId(f.getId());
             criteria2.setInfoTpe(pageQuery.getSearchParams().getInfoType());
-            List<EquipmentRepairDetail> repairDetailList = equipmentRepairDetailService.queryAll(criteria2);
+            List<EquipmentRepairDetail> repairDetailList = equipmentRepairDetailBaseService.queryAll(criteria2);
             f.setRepaireDetailList(repairDetailList);
 
 
@@ -133,12 +154,12 @@
 
     @Override
     public List<EquipmentInfo> queryAll(EquipmentInfoQueryCriteria criteria) {
-        return baseMapper.selectList(QueryHelpPlus.getPredicate(EquipmentInfo.class, criteria));
+        return equipmentInfoBaseService.queryAll(criteria);
     }
 
     @Override
     public EquipmentInfoDto selectOne(Serializable id) {
-        EquipmentInfo equipmentInfo = baseMapper.selectById(id);
+        EquipmentInfo equipmentInfo = equipmentInfoBaseService.getById(id);
         if(equipmentInfo == null){
             return null;
         }
@@ -149,14 +170,14 @@
         EquipmentTakecareDetailQueryCriteria criteria = new EquipmentTakecareDetailQueryCriteria();
         criteria.setEquipmentId(infoDto.getId());
         criteria.setInfoTpe(infoDto.getInfoType());
-        List<EquipmentTakecareDetail> takecareDetailList = equipmentTakecareDetailService.queryAll(criteria);
+        List<EquipmentTakecareDetail> takecareDetailList = equipmentTakecareDetailBaseService.queryAll(criteria);
         infoDto.setTakecareDetailList(takecareDetailList);
 
         //设备检测
         EquipmentTestDetailQueryCriteria criteria1 = new EquipmentTestDetailQueryCriteria();
         criteria1.setEquipmentId(infoDto.getId());
         criteria1.setInfoTpe(infoDto.getInfoType());
-        List<EquipmentTestDetail> testDetailList = equipmentTestDetailService.queryAll(criteria1);
+        List<EquipmentTestDetail> testDetailList = equipmentTestDetailBaseService.queryAll(criteria1);
         infoDto.setTestDetailList(testDetailList);
 
         //设备检查 TODO
@@ -166,21 +187,21 @@
         EquipmentRepairDetailQueryCriteria criteria2 = new EquipmentRepairDetailQueryCriteria();
         criteria2.setEquipmentId(infoDto.getId());
         criteria2.setInfoTpe(infoDto.getInfoType());
-        List<EquipmentRepairDetail> repairDetailList = equipmentRepairDetailService.queryAll(criteria2);
+        List<EquipmentRepairDetail> repairDetailList = equipmentRepairDetailBaseService.queryAll(criteria2);
         infoDto.setRepaireDetailList(repairDetailList);
 
         //检查标准
         EquipmentCheckStandardDetailQueryCriteria criteria3 = new EquipmentCheckStandardDetailQueryCriteria();
         criteria3.setEquipmentId(infoDto.getId());
         criteria3.setInfoTpe(infoDto.getInfoType());
-        List<EquipmentCheckStandardDetail> checkStandardDetailList = equipmentCheckStandardDetailService.queryAll(criteria3);
+        List<EquipmentCheckStandardDetail> checkStandardDetailList = equipmentCheckStandardDetailBaseService.queryAll(criteria3);
         infoDto.setCheckStandardeDetailList(checkStandardDetailList);
 
         //保养标准
         EquipmentTakecareStardardDetailQueryCriteria criteria4 = new EquipmentTakecareStardardDetailQueryCriteria();
         criteria4.setEquipmentId(infoDto.getId());
         criteria4.setInfoTpe(infoDto.getInfoType());
-        List<EquipmentTakecareStardardDetail> takecareStardardDetailList = equipmentTakecareStardardDetailService.queryAll(criteria4);
+        List<EquipmentTakecareStardardDetail> takecareStardardDetailList = equipmentTakecareStardardDetailBaseService.queryAll(criteria4);
         infoDto.setTakecareStardardeDetailList(takecareStardardDetailList);
 
 
@@ -214,12 +235,19 @@
 
     @Override
     public void addOrUpdate(EquipmentInfoSaveOrUpdate infoDto) {
+        if(infoDto.getInfoType() == null || infoDto.getEquipmentTypeId() == null){
+            throw new EquipmentException(ResultCodes.CLIENT_PARAM_ILLEGAL);
+        }
+        if(infoDto.getInfoType() == 3){
+            throw new EquipmentException(ResultCodes.CLIENT_PARAM_ILLEGAL);
+        }
+
         EquipmentInfo equipmentInfo = BeanCopyUtils.copyBean(infoDto, EquipmentInfo.class);
         //保存主数据
         if (infoDto.getId() == null) { //新增
-            this.save(equipmentInfo);
+            equipmentInfoBaseService.save(equipmentInfo);
         } else {
-            this.update(equipmentInfo,new UpdateWrapper<EquipmentInfo>().eq("id",infoDto.getId()));
+            equipmentInfoBaseService.update(equipmentInfo,new UpdateWrapper<EquipmentInfo>().eq("id",infoDto.getId()));
         }
 
 
@@ -229,7 +257,7 @@
             f.setEquipmentId(equipmentInfo.getId());
             f.setInfoTpe(equipmentInfo.getInfoType());
         });
-        equipmentTakecareDetailService.saveOrUpdateBatch(takecareDetailList);
+        equipmentTakecareDetailBaseService.saveOrUpdateBatch(takecareDetailList);
         if(StringUtils.hasText(infoDto.getDelTakecareDetails())){
             List<Long> idList = Arrays.stream(infoDto.getDelTakecareDetails().split(",")).map(s-> Long.parseLong(s.trim()))
                     .collect(Collectors.toList());
@@ -241,7 +269,7 @@
                 info.setId(f);
                 delList.add(info);
             });
-            equipmentTakecareDetailService.updateBatchById(delList);
+            equipmentTakecareDetailBaseService.updateBatchById(delList);
         }
 
 
@@ -252,7 +280,7 @@
             f.setEquipmentId(equipmentInfo.getId());
             f.setInfoTpe(equipmentInfo.getInfoType());
         });
-        equipmentTestDetailService.saveOrUpdateBatch(testDetailList);
+        equipmentTestDetailBaseService.saveOrUpdateBatch(testDetailList);
         if(StringUtils.hasText(infoDto.getDelTestDetails())){
             List<Long> idList = Arrays.stream(infoDto.getDelTestDetails().split(",")).map(s-> Long.parseLong(s.trim()))
                     .collect(Collectors.toList());
@@ -263,7 +291,7 @@
                 info.setId(f);
                 delList.add(info);
             });
-            equipmentTestDetailService.updateBatchById(delList);
+            equipmentTestDetailBaseService.updateBatchById(delList);
         }
 
         //设备检查 TODO
@@ -275,7 +303,7 @@
             f.setEquipmentId(equipmentInfo.getId());
             f.setInfoTpe(equipmentInfo.getInfoType());
         });
-        equipmentRepairDetailService.saveOrUpdateBatch(repaireDetailList);
+        equipmentRepairDetailBaseService.saveOrUpdateBatch(repaireDetailList);
         if(StringUtils.hasText(infoDto.getDelRepaireDetails())){
             List<Long> idList = Arrays.stream(infoDto.getDelRepaireDetails().split(",")).map(s-> Long.parseLong(s.trim()))
                     .collect(Collectors.toList());
@@ -286,7 +314,7 @@
                 info.setId(f);
                 delList.add(info);
             });
-            equipmentRepairDetailService.updateBatchById(delList);
+            equipmentRepairDetailBaseService.updateBatchById(delList);
         }
 
         //保存检查标准
@@ -295,7 +323,7 @@
             f.setEquipmentId(equipmentInfo.getId());
             f.setInfoTpe(equipmentInfo.getInfoType());
         });
-        equipmentCheckStandardDetailService.saveOrUpdateBatch(checkStandardeDetailList);
+        equipmentCheckStandardDetailBaseService.saveOrUpdateBatch(checkStandardeDetailList);
         if(StringUtils.hasText(infoDto.getDelCheckStandardeDetails())){
             List<Long> idList = Arrays.stream(infoDto.getDelCheckStandardeDetails().split(",")).map(s-> Long.parseLong(s.trim()))
                     .collect(Collectors.toList());
@@ -306,7 +334,7 @@
                 info.setId(f);
                 delList.add(info);
             });
-            equipmentCheckStandardDetailService.updateBatchById(delList);
+            equipmentCheckStandardDetailBaseService.updateBatchById(delList);
         }
 
         //保存保养标准
@@ -315,7 +343,7 @@
             f.setEquipmentId(equipmentInfo.getId());
             f.setInfoTpe(equipmentInfo.getInfoType());
         });
-        equipmentTakecareStardardDetailService.saveOrUpdateBatch(takecareStardardeDetailList);
+        equipmentTakecareStardardDetailBaseService.saveOrUpdateBatch(takecareStardardeDetailList);
         if(StringUtils.hasText(infoDto.getDelTakecareStardardeDetails())){
             List<Long> idList = Arrays.stream(infoDto.getDelTakecareStardardeDetails().split(",")).map(s-> Long.parseLong(s.trim()))
                     .collect(Collectors.toList());
@@ -326,7 +354,7 @@
                 info.setId(f);
                 delList.add(info);
             });
-            equipmentTakecareStardardDetailService.updateBatchById(delList);
+            equipmentTakecareStardardDetailBaseService.updateBatchById(delList);
         }
 
 
@@ -338,11 +366,11 @@
                 .select("stop_status as stopStatus,count(0) as count")
                 .groupBy("stop_status");
 
-        List<Map<String, Object>> list = this.listMaps(wrapper);
+        List<Map<String, Object>> list = equipmentInfoBaseService.listMaps(wrapper);
 
 
         Map<String, Object> map = new HashMap<>();
-        map.put("-1",equipmentInfoRepository.countOverTime());//超时未保养
+        map.put("-1",equipmentInfoBaseService.countOverTime());//超时未保养
         return list;
     }
 
@@ -361,10 +389,174 @@
                         }
                     }
                 } catch (Exception e) {
-                    log.error("exception",e);
+                    System.out.println("exception"+e);
                 }
             }
         });
         return depPool;
     }
+
+    @Override
+    public void importData(MultipartFile file) throws IOException {
+        String contentType = file.getContentType();
+        if(!"application/vnd.ms-excel".equals(contentType)
+                && !"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet".equals(contentType)) {
+            throw new EquipmentException("上传的excel格式错误");
+        }
+
+        Collection<EquipmentInfoImportExcel> importExcel = ExcelUtil.importExcel(EquipmentInfoImportExcel.class, file.getInputStream(), "yyyy-MM-dd HH:mm:ss", new ExcelLogs() , 0);
+
+        if (CollectionUtils.isEmpty(importExcel)) {
+            return ;
+        }
+
+        List<EquipmentInfo> respList = BeanCopyUtils.copyBeanList((List<EquipmentInfoImportExcel>)importExcel, EquipmentInfo.class);
+
+        equipmentInfoBaseService.saveBatch(respList);
+    }
+
+    @Override
+    public void delete(Long[] ids) {
+        if(ids == null){
+            throw new EquipmentException(ResultCodes.CLIENT_PARAM_ILLEGAL);
+        }
+        List<Long> idList = Arrays.asList(ids);
+
+        List<EquipmentInfo> delList = new ArrayList<>();
+        idList.forEach(f->{
+            EquipmentInfo info = new EquipmentInfo();
+            info.setDelFlag(1);
+            info.setId(f);
+            delList.add(info);
+        });
+
+        equipmentInfoBaseService.updateBatchById(delList);
+
+    }
+
+    @Override
+    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)");
+        map.put("48", "保养周期");
+        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();
+    }
+
+    @Override
+    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)");
+        map.put("48", "保养周期");
+
+        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");
+
+        queryCriteria.setDelFlag(0);
+        List<EquipmentInfoExcel> respList = BeanCopyUtils.copyBeanList(this.queryAll(queryCriteria), EquipmentInfoExcel.class);
+
+        ExcelUtil.exportExcel(map,respList , response.getOutputStream(),DateUtils.PATTERN_STANDARD);
+        response.getOutputStream().close();
+    }
 }
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentRepairDetailServiceImpl.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentRepairDetailServiceImpl.java
index 6271a21..a97665e 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentRepairDetailServiceImpl.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentRepairDetailServiceImpl.java
@@ -2,20 +2,19 @@
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.gkhy.safePlatform.equipment.repository.EquipmentRepairDetailRepository;
-import com.gkhy.safePlatform.equipment.entity.EquipmentRepairDetail;
-import com.gkhy.safePlatform.equipment.service.EquipmentRepairDetailService;
-import org.springframework.stereotype.Service;
-import org.springframework.beans.factory.annotation.Autowired;
 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.vo.ResultVO;
 import com.gkhy.safePlatform.commons.vo.SearchResultVO;
+import com.gkhy.safePlatform.equipment.entity.EquipmentRepairDetail;
 import com.gkhy.safePlatform.equipment.model.dto.req.EquipmentRepairDetailQueryCriteria;
 import com.gkhy.safePlatform.equipment.model.dto.resp.EquipmentRepairDetailDto;
+import com.gkhy.safePlatform.equipment.service.EquipmentRepairDetailService;
+import com.gkhy.safePlatform.equipment.service.baseService.EquipmentRepairDetailBaseService;
 import com.gkhy.safePlatform.equipment.utils.QueryHelpPlus;
-import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
 
 import java.util.List;
 
@@ -26,10 +25,10 @@
  * @since 2022-07-19 15:10:57
  */
 @Service("equipmentRepairDetailService")
-public class EquipmentRepairDetailServiceImpl extends ServiceImpl<EquipmentRepairDetailRepository, EquipmentRepairDetail> implements EquipmentRepairDetailService {
+public class EquipmentRepairDetailServiceImpl implements EquipmentRepairDetailService {
 
     @Autowired
-    private EquipmentRepairDetailRepository equipmentRepairDetailRepository;
+    private EquipmentRepairDetailBaseService equipmentRepairDetailBaseService;
     
     
 	
@@ -39,7 +38,7 @@
         Long pageSize = pageQuery.getPageSize();
         IPage<EquipmentRepairDetail> page = new Page<>(pageIndex, pageSize);
 
-        page = baseMapper.selectPage(page,
+        page = equipmentRepairDetailBaseService.selectPage(page,
                 QueryHelpPlus.getPredicate(EquipmentRepairDetail.class, pageQuery.getSearchParams()));
         List<EquipmentRepairDetailDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), EquipmentRepairDetailDto.class);
 
@@ -56,6 +55,6 @@
 
     @Override
     public List<EquipmentRepairDetail> queryAll(EquipmentRepairDetailQueryCriteria criteria) {
-        return baseMapper.selectList(QueryHelpPlus.getPredicate(EquipmentRepairDetail.class, criteria));
+        return equipmentRepairDetailBaseService.queryAll(criteria);
     }
 }
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentTakecareDetailServiceImpl.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentTakecareDetailServiceImpl.java
index bdbd132..5a6e7df 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentTakecareDetailServiceImpl.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentTakecareDetailServiceImpl.java
@@ -6,6 +6,7 @@
 import com.gkhy.safePlatform.equipment.repository.EquipmentTakecareDetailRepository;
 import com.gkhy.safePlatform.equipment.entity.EquipmentTakecareDetail;
 import com.gkhy.safePlatform.equipment.service.EquipmentTakecareDetailService;
+import com.gkhy.safePlatform.equipment.service.baseService.EquipmentTakecareDetailBaseService;
 import org.springframework.stereotype.Service;
 import org.springframework.beans.factory.annotation.Autowired;
 import com.gkhy.safePlatform.commons.enums.ResultCodes;
@@ -26,10 +27,10 @@
  * @since 2022-07-19 14:40:28
  */
 @Service("equipmentTakecareDetailService")
-public class EquipmentTakecareDetailServiceImpl extends ServiceImpl<EquipmentTakecareDetailRepository, EquipmentTakecareDetail> implements EquipmentTakecareDetailService {
+public class EquipmentTakecareDetailServiceImpl implements EquipmentTakecareDetailService {
 
     @Autowired
-    private EquipmentTakecareDetailRepository equipmentTakecareDetailRepository;
+    private EquipmentTakecareDetailBaseService equipmentTakecareDetailBaseService;
     
     
 	
@@ -39,7 +40,7 @@
         Long pageSize = pageQuery.getPageSize();
         IPage<EquipmentTakecareDetail> page = new Page<>(pageIndex, pageSize);
 
-        page = baseMapper.selectPage(page,
+        page = equipmentTakecareDetailBaseService.selectPage(page,
                 QueryHelpPlus.getPredicate(EquipmentTakecareDetail.class, pageQuery.getSearchParams()));
         List<EquipmentTakecareDetailDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), EquipmentTakecareDetailDto.class);
 
@@ -56,6 +57,6 @@
 
     @Override
     public List<EquipmentTakecareDetail> queryAll(EquipmentTakecareDetailQueryCriteria criteria) {
-        return baseMapper.selectList(QueryHelpPlus.getPredicate(EquipmentTakecareDetail.class, criteria));
+        return equipmentTakecareDetailBaseService.queryAll(criteria);
     }
 }
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentTakecareStardardDetailServiceImpl.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentTakecareStardardDetailServiceImpl.java
index bcd29f7..704fbab 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentTakecareStardardDetailServiceImpl.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentTakecareStardardDetailServiceImpl.java
@@ -6,6 +6,7 @@
 import com.gkhy.safePlatform.equipment.repository.EquipmentTakecareStardardDetailRepository;
 import com.gkhy.safePlatform.equipment.entity.EquipmentTakecareStardardDetail;
 import com.gkhy.safePlatform.equipment.service.EquipmentTakecareStardardDetailService;
+import com.gkhy.safePlatform.equipment.service.baseService.EquipmentTakecareStardardDetailBaseService;
 import org.springframework.stereotype.Service;
 import org.springframework.beans.factory.annotation.Autowired;
 import com.gkhy.safePlatform.commons.enums.ResultCodes;
@@ -26,10 +27,10 @@
  * @since 2022-07-19 15:22:05
  */
 @Service("equipmentTakecareStardardDetailService")
-public class EquipmentTakecareStardardDetailServiceImpl extends ServiceImpl<EquipmentTakecareStardardDetailRepository, EquipmentTakecareStardardDetail> implements EquipmentTakecareStardardDetailService {
+public class EquipmentTakecareStardardDetailServiceImpl implements EquipmentTakecareStardardDetailService {
 
     @Autowired
-    private EquipmentTakecareStardardDetailRepository equipmentTakecareStardardDetailRepository;
+    private EquipmentTakecareStardardDetailBaseService equipmentTakecareStardardDetailBaseService;
     
     
 	
@@ -39,7 +40,7 @@
         Long pageSize = pageQuery.getPageSize();
         IPage<EquipmentTakecareStardardDetail> page = new Page<>(pageIndex, pageSize);
 
-        page = baseMapper.selectPage(page,
+        page = equipmentTakecareStardardDetailBaseService.selectPage(page,
                 QueryHelpPlus.getPredicate(EquipmentTakecareStardardDetail.class, pageQuery.getSearchParams()));
         List<EquipmentTakecareStardardDetailDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), EquipmentTakecareStardardDetailDto.class);
 
@@ -56,6 +57,6 @@
 
     @Override
     public List<EquipmentTakecareStardardDetail> queryAll(EquipmentTakecareStardardDetailQueryCriteria criteria) {
-        return baseMapper.selectList(QueryHelpPlus.getPredicate(EquipmentTakecareStardardDetail.class, criteria));
+        return equipmentTakecareStardardDetailBaseService.queryAll(criteria);
     }
 }
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentTestDetailServiceImpl.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentTestDetailServiceImpl.java
index 520db4f..ba5cff9 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentTestDetailServiceImpl.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentTestDetailServiceImpl.java
@@ -6,6 +6,7 @@
 import com.gkhy.safePlatform.equipment.repository.EquipmentTestDetailRepository;
 import com.gkhy.safePlatform.equipment.entity.EquipmentTestDetail;
 import com.gkhy.safePlatform.equipment.service.EquipmentTestDetailService;
+import com.gkhy.safePlatform.equipment.service.baseService.EquipmentTestDetailBaseService;
 import org.springframework.stereotype.Service;
 import org.springframework.beans.factory.annotation.Autowired;
 import com.gkhy.safePlatform.commons.enums.ResultCodes;
@@ -26,10 +27,10 @@
  * @since 2022-07-19 15:08:23
  */
 @Service("equipmentTestDetailService")
-public class EquipmentTestDetailServiceImpl extends ServiceImpl<EquipmentTestDetailRepository, EquipmentTestDetail> implements EquipmentTestDetailService {
+public class EquipmentTestDetailServiceImpl implements EquipmentTestDetailService {
 
     @Autowired
-    private EquipmentTestDetailRepository equipmentTestDetailRepository;
+    private EquipmentTestDetailBaseService equipmentTestDetailBaseService;
     
     
 	
@@ -39,7 +40,7 @@
         Long pageSize = pageQuery.getPageSize();
         IPage<EquipmentTestDetail> page = new Page<>(pageIndex, pageSize);
 
-        page = baseMapper.selectPage(page,
+        page = equipmentTestDetailBaseService.selectPage(page,
                 QueryHelpPlus.getPredicate(EquipmentTestDetail.class, pageQuery.getSearchParams()));
         List<EquipmentTestDetailDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), EquipmentTestDetailDto.class);
 
@@ -56,6 +57,6 @@
 
     @Override
     public List<EquipmentTestDetail> queryAll(EquipmentTestDetailQueryCriteria criteria) {
-        return baseMapper.selectList(QueryHelpPlus.getPredicate(EquipmentTestDetail.class, criteria));
+        return equipmentTestDetailBaseService.queryAll(criteria);
     }
 }
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentTypeMngServiceImpl.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentTypeMngServiceImpl.java
index 0a8a7e3..6930e21 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentTypeMngServiceImpl.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentTypeMngServiceImpl.java
@@ -6,17 +6,22 @@
 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.vo.SearchResultVO;
 import com.gkhy.safePlatform.equipment.entity.EquipmentTypeMng;
+import com.gkhy.safePlatform.equipment.excepiton.EquipmentException;
 import com.gkhy.safePlatform.equipment.model.dto.req.EquipmentTypeMngQueryCriteria;
 import com.gkhy.safePlatform.equipment.model.dto.resp.EquipmentTypeMngDto;
 import com.gkhy.safePlatform.equipment.repository.EquipmentTypeMngRepository;
 import com.gkhy.safePlatform.equipment.service.EquipmentTypeMngService;
+import com.gkhy.safePlatform.equipment.service.baseService.EquipmentTypeMngBaseService;
 import com.gkhy.safePlatform.equipment.utils.QueryHelpPlus;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.List;
 import java.util.stream.Collectors;
 
@@ -27,21 +32,23 @@
  * @since 2022-07-19 08:35:02
  */
 @Service("equipmentTypeMngService")
-public class EquipmentTypeMngServiceImpl extends ServiceImpl<EquipmentTypeMngRepository, EquipmentTypeMng> implements EquipmentTypeMngService {
+public class EquipmentTypeMngServiceImpl implements EquipmentTypeMngService {
 
     @Autowired
-    private EquipmentTypeMngRepository equipmentTypeMngRepository;
+    private EquipmentTypeMngBaseService equipmentTypeMngBaseService;
     
     
 	
 	@Override
     public ResultVO queryAll(PageQuery<EquipmentTypeMngQueryCriteria> pageQuery) {
+        PageUtils.checkCheck(pageQuery);
+
         Long pageIndex = pageQuery.getPageIndex();
         Long pageSize = pageQuery.getPageSize();
         Page<EquipmentTypeMng> page = new Page<>(pageIndex, pageSize);
         page.addOrder(OrderItem.asc("sort_num"));
 
-        page = baseMapper.selectPage(page,
+        page = equipmentTypeMngBaseService.selectPage(page,
                 QueryHelpPlus.getPredicate(EquipmentTypeMng.class, pageQuery.getSearchParams()));
         List<EquipmentTypeMngDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), EquipmentTypeMngDto.class);
 
@@ -58,7 +65,7 @@
 
     @Override
     public List<EquipmentTypeMng> queryAll(EquipmentTypeMngQueryCriteria criteria) {
-        return baseMapper.selectList(QueryHelpPlus.getPredicate(EquipmentTypeMng.class, criteria).orderBy(true,true,"sort_num"));
+        return equipmentTypeMngBaseService.queryAll(criteria);
     }
 
     @Override
@@ -78,4 +85,21 @@
         }
         return rsList;
     }
+
+    @Override
+    public void delete(Long[] ids) {
+        if(ids == null){
+            throw new EquipmentException(ResultCodes.CLIENT_PARAM_ILLEGAL);
+        }
+        List<Long> idList = Arrays.asList(ids);
+
+        List<EquipmentTypeMng> delList = new ArrayList<>();
+        idList.forEach(f->{
+            EquipmentTypeMng info = new EquipmentTypeMng();
+            info.setDelFlag(1);
+            info.setId(f);
+            delList.add(info);
+        });
+        equipmentTypeMngBaseService.updateBatchById(delList);
+    }
 }
\ No newline at end of file
diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/KeypointEquipmentInfoServiceImpl.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/KeypointEquipmentInfoServiceImpl.java
index 49a5e1c..160a22a 100644
--- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/KeypointEquipmentInfoServiceImpl.java
+++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/KeypointEquipmentInfoServiceImpl.java
@@ -7,10 +7,17 @@
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.gkhy.safePlatform.account.rpc.apimodel.AccountDepartmentService;
 import com.gkhy.safePlatform.equipment.entity.*;
+import com.gkhy.safePlatform.equipment.excepiton.EquipmentException;
 import com.gkhy.safePlatform.equipment.model.dto.req.*;
+import com.gkhy.safePlatform.equipment.model.dto.resp.KeypointEquipmentInfoExcel;
 import com.gkhy.safePlatform.equipment.repository.EquipmentTypeMngRepository;
 import com.gkhy.safePlatform.equipment.repository.KeypointEquipmentInfoRepository;
 import com.gkhy.safePlatform.equipment.service.*;
+import com.gkhy.safePlatform.equipment.service.baseService.*;
+import com.gkhy.safePlatform.equipment.utils.DateUtils;
+import com.gkhy.safePlatform.equipment.utils.poihelper.ExcelLogs;
+import com.gkhy.safePlatform.equipment.utils.poihelper.ExcelUtil;
+import org.apache.commons.collections.CollectionUtils;
 import org.apache.dubbo.config.annotation.DubboReference;
 import org.springframework.stereotype.Service;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -22,8 +29,12 @@
 import com.gkhy.safePlatform.equipment.utils.QueryHelpPlus;
 import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
 import org.springframework.util.StringUtils;
+import org.springframework.web.multipart.MultipartFile;
 
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
 import java.io.Serializable;
+import java.net.URLEncoder;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -34,26 +45,26 @@
  * @since 2022-07-19 13:36:27
  */
 @Service("keypointEquipmentInfoService")
-public class KeypointEquipmentInfoServiceImpl extends ServiceImpl<KeypointEquipmentInfoRepository, KeypointEquipmentInfo> implements KeypointEquipmentInfoService {
+public class KeypointEquipmentInfoServiceImpl implements KeypointEquipmentInfoService {
 
     @Autowired
-    private KeypointEquipmentInfoRepository keypointEquipmentInfoRepository;
+    private KeypointEquipmentInfoBaseService keypointEquipmentInfoBaseService;
 
 
     @Autowired
-    private EquipmentTakecareDetailService equipmentTakecareDetailService;
+    private EquipmentTakecareDetailBaseService equipmentTakecareDetailBaseService;
 
     @Autowired
-    private EquipmentTestDetailService equipmentTestDetailService;
+    private EquipmentTestDetailBaseService equipmentTestDetailBaseService;
 
     @Autowired
-    private EquipmentRepairDetailService equipmentRepairDetailService;
+    private EquipmentRepairDetailBaseService equipmentRepairDetailBaseService;
 
     @Autowired
-    private EquipmentTakecareStardardDetailService equipmentTakecareStardardDetailService;
+    private EquipmentTakecareStardardDetailBaseService equipmentTakecareStardardDetailBaseService;
 
     @Autowired
-    private EquipmentCheckStandardDetailService equipmentCheckStandardDetailService;
+    private EquipmentCheckStandardDetailBaseService equipmentCheckStandardDetailBaseService;
 
     @DubboReference(check = false)
     private AccountDepartmentService accountDepartmentService;
@@ -63,6 +74,9 @@
 
     @Autowired
     private EquipmentTypeMngRepository equipmentTypeMngRepository;
+
+    @Autowired
+    public HttpServletResponse response;
 	
 	@Override
     public ResultVO queryAll(PageQuery<KeypointEquipmentInfoQueryCriteria> pageQuery) {
@@ -70,7 +84,7 @@
         Long pageSize = pageQuery.getPageSize();
         IPage<KeypointEquipmentInfo> page = new Page<>(pageIndex, pageSize);
 
-        page = baseMapper.selectPage(page,
+        page = keypointEquipmentInfoBaseService.selectPage(page,
                 QueryHelpPlus.getPredicate(KeypointEquipmentInfo.class, pageQuery.getSearchParams()));
         List<KeypointEquipmentInfoDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), KeypointEquipmentInfoDto.class);
 
@@ -81,14 +95,14 @@
             EquipmentTakecareDetailQueryCriteria criteria = new EquipmentTakecareDetailQueryCriteria();
             criteria.setEquipmentId(f.getId());
             criteria.setInfoTpe(3);
-            List<EquipmentTakecareDetail> takecareDetailList = equipmentTakecareDetailService.queryAll(criteria);
+            List<EquipmentTakecareDetail> takecareDetailList = equipmentTakecareDetailBaseService.queryAll(criteria);
             f.setTakecareDetailList(takecareDetailList);
 
             //设备检测
             EquipmentTestDetailQueryCriteria criteria1 = new EquipmentTestDetailQueryCriteria();
             criteria1.setEquipmentId(f.getId());
             criteria1.setInfoTpe(3);
-            List<EquipmentTestDetail> checkDetailList = equipmentTestDetailService.queryAll(criteria1);
+            List<EquipmentTestDetail> checkDetailList = equipmentTestDetailBaseService.queryAll(criteria1);
             f.setCheckDetailList(checkDetailList);
 
             //设备检查 TODO
@@ -98,7 +112,7 @@
             EquipmentRepairDetailQueryCriteria criteria2 = new EquipmentRepairDetailQueryCriteria();
             criteria2.setEquipmentId(f.getId());
             criteria2.setInfoTpe(3);
-            List<EquipmentRepairDetail> repairDetailList = equipmentRepairDetailService.queryAll(criteria2);
+            List<EquipmentRepairDetail> repairDetailList = equipmentRepairDetailBaseService.queryAll(criteria2);
             f.setRepaireDetailList(repairDetailList);
 
             // --------------------------- 获取设备设施类型管理ID-----------------------
@@ -148,12 +162,12 @@
 
     @Override
     public List<KeypointEquipmentInfo> queryAll(KeypointEquipmentInfoQueryCriteria criteria) {
-        return baseMapper.selectList(QueryHelpPlus.getPredicate(KeypointEquipmentInfo.class, criteria));
+        return keypointEquipmentInfoBaseService.queryAll( criteria);
     }
 
     @Override
     public KeypointEquipmentInfoDto selectOne(Serializable id) {
-        KeypointEquipmentInfo keypointEquipmentInfo = baseMapper.selectById(id);
+        KeypointEquipmentInfo keypointEquipmentInfo = keypointEquipmentInfoBaseService.getById(id);
         if(keypointEquipmentInfo == null){
             return null;
         }
@@ -164,14 +178,14 @@
         EquipmentTakecareDetailQueryCriteria criteria = new EquipmentTakecareDetailQueryCriteria();
         criteria.setEquipmentId(infoDto.getId());
         criteria.setInfoTpe(3);
-        List<EquipmentTakecareDetail> takecareDetailList = equipmentTakecareDetailService.queryAll(criteria);
+        List<EquipmentTakecareDetail> takecareDetailList = equipmentTakecareDetailBaseService.queryAll(criteria);
         infoDto.setTakecareDetailList(takecareDetailList);
 
         //设备检测
         EquipmentTestDetailQueryCriteria criteria1 = new EquipmentTestDetailQueryCriteria();
         criteria1.setEquipmentId(infoDto.getId());
         criteria1.setInfoTpe(3);
-        List<EquipmentTestDetail> checkDetailList = equipmentTestDetailService.queryAll(criteria1);
+        List<EquipmentTestDetail> checkDetailList = equipmentTestDetailBaseService.queryAll(criteria1);
         infoDto.setCheckDetailList(checkDetailList);
 
         //设备检查 TODO
@@ -181,21 +195,21 @@
         EquipmentRepairDetailQueryCriteria criteria2 = new EquipmentRepairDetailQueryCriteria();
         criteria2.setEquipmentId(infoDto.getId());
         criteria2.setInfoTpe(3);
-        List<EquipmentRepairDetail> repairDetailList = equipmentRepairDetailService.queryAll(criteria2);
+        List<EquipmentRepairDetail> repairDetailList = equipmentRepairDetailBaseService.queryAll(criteria2);
         infoDto.setRepaireDetailList(repairDetailList);
 
         //检查标准
         EquipmentCheckStandardDetailQueryCriteria criteria3 = new EquipmentCheckStandardDetailQueryCriteria();
         criteria3.setEquipmentId(infoDto.getId());
         criteria3.setInfoTpe(3);
-        List<EquipmentCheckStandardDetail> checkStandardDetailList = equipmentCheckStandardDetailService.queryAll(criteria3);
+        List<EquipmentCheckStandardDetail> checkStandardDetailList = equipmentCheckStandardDetailBaseService.queryAll(criteria3);
         infoDto.setCheckStandardeDetailList(checkStandardDetailList);
 
         //保养标准
         EquipmentTakecareStardardDetailQueryCriteria criteria4 = new EquipmentTakecareStardardDetailQueryCriteria();
         criteria4.setEquipmentId(infoDto.getId());
         criteria4.setInfoTpe(3);
-        List<EquipmentTakecareStardardDetail> takecareStardardDetailList = equipmentTakecareStardardDetailService.queryAll(criteria4);
+        List<EquipmentTakecareStardardDetail> takecareStardardDetailList = equipmentTakecareStardardDetailBaseService.queryAll(criteria4);
         infoDto.setTakecareStardardeDetailList(takecareStardardDetailList);
 
         // --------------------------- 获取部门信息-----------------------
@@ -230,9 +244,9 @@
         KeypointEquipmentInfo equipmentInfo = BeanCopyUtils.copyBean(infoDto, KeypointEquipmentInfo.class);
         //保存主数据
         if (infoDto.getId() == null) { //新增
-            this.save(equipmentInfo);
+            keypointEquipmentInfoBaseService.save(equipmentInfo);
         } else {
-            this.update(equipmentInfo,new UpdateWrapper<KeypointEquipmentInfo>().eq("id",infoDto.getId()));
+            keypointEquipmentInfoBaseService.update(equipmentInfo,new UpdateWrapper<KeypointEquipmentInfo>().eq("id",infoDto.getId()));
         }
 
 
@@ -242,7 +256,7 @@
             f.setEquipmentId(equipmentInfo.getId());
             f.setInfoTpe(3);
         });
-        equipmentTakecareDetailService.saveOrUpdateBatch(takecareDetailList);
+        equipmentTakecareDetailBaseService.saveOrUpdateBatch(takecareDetailList);
         if(StringUtils.hasText(infoDto.getDelTakecareDetails())){
             List<Long> idList = Arrays.stream(infoDto.getDelTakecareDetails().split(",")).map(s-> Long.parseLong(s.trim()))
                     .collect(Collectors.toList());
@@ -254,7 +268,7 @@
                 info.setId(f);
                 delList.add(info);
             });
-            equipmentTakecareDetailService.updateBatchById(delList);
+            equipmentTakecareDetailBaseService.updateBatchById(delList);
         }
 
         //保存设备检测
@@ -263,7 +277,7 @@
             f.setEquipmentId(equipmentInfo.getId());
             f.setInfoTpe(3);
         });
-        equipmentTestDetailService.saveOrUpdateBatch(testDetailList);
+        equipmentTestDetailBaseService.saveOrUpdateBatch(testDetailList);
         if(StringUtils.hasText(infoDto.getDelTestDetails())){
             List<Long> idList = Arrays.stream(infoDto.getDelTestDetails().split(",")).map(s-> Long.parseLong(s.trim()))
                     .collect(Collectors.toList());
@@ -274,7 +288,7 @@
                 info.setId(f);
                 delList.add(info);
             });
-            equipmentTestDetailService.updateBatchById(delList);
+            equipmentTestDetailBaseService.updateBatchById(delList);
 
         }
         //设备检查 TODO
@@ -286,7 +300,7 @@
             f.setEquipmentId(equipmentInfo.getId());
             f.setInfoTpe(3);
         });
-        equipmentRepairDetailService.saveOrUpdateBatch(repaireDetailList);
+        equipmentRepairDetailBaseService.saveOrUpdateBatch(repaireDetailList);
         if(StringUtils.hasText(infoDto.getDelRepaireDetails())){
             List<Long> idList = Arrays.stream(infoDto.getDelRepaireDetails().split(",")).map(s-> Long.parseLong(s.trim()))
                     .collect(Collectors.toList());
@@ -297,7 +311,7 @@
                 info.setId(f);
                 delList.add(info);
             });
-            equipmentRepairDetailService.updateBatchById(delList);
+            equipmentRepairDetailBaseService.updateBatchById(delList);
 
         }
         //保存检查标准
@@ -306,7 +320,7 @@
             f.setEquipmentId(equipmentInfo.getId());
             f.setInfoTpe(3);
         });
-        equipmentCheckStandardDetailService.saveOrUpdateBatch(checkStandardeDetailList);
+        equipmentCheckStandardDetailBaseService.saveOrUpdateBatch(checkStandardeDetailList);
         if(StringUtils.hasText(infoDto.getDelCheckStandardeDetails())){
             List<Long> idList = Arrays.stream(infoDto.getDelCheckStandardeDetails().split(",")).map(s-> Long.parseLong(s.trim()))
                     .collect(Collectors.toList());
@@ -317,7 +331,7 @@
                 info.setId(f);
                 delList.add(info);
             });
-            equipmentCheckStandardDetailService.updateBatchById(delList);
+            equipmentCheckStandardDetailBaseService.updateBatchById(delList);
 
         }
         //保存保养标准
@@ -326,7 +340,7 @@
             f.setEquipmentId(equipmentInfo.getId());
             f.setInfoTpe(3);
         });
-        equipmentTakecareStardardDetailService.saveOrUpdateBatch(takecareStardardeDetailList);
+        equipmentTakecareStardardDetailBaseService.saveOrUpdateBatch(takecareStardardeDetailList);
         if(StringUtils.hasText(infoDto.getDelTakecareStardardeDetails())){
             List<Long> idList = Arrays.stream(infoDto.getDelTakecareStardardeDetails().split(",")).map(s-> Long.parseLong(s.trim()))
                     .collect(Collectors.toList());
@@ -337,8 +351,106 @@
                 info.setId(f);
                 delList.add(info);
             });
-            equipmentTakecareStardardDetailService.updateBatchById(delList);
+            equipmentTakecareStardardDetailBaseService.updateBatchById(delList);
 
         }
 	}
+
+    @Override
+    public void importData(MultipartFile file) throws IOException {
+        String contentType = file.getContentType();
+        if(!"application/vnd.ms-excel".equals(contentType)
+                && !"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet".equals(contentType)) {
+            throw new EquipmentException("上传的excel格式错误");
+        }
+
+        Collection<KeypointEquipmentInfoImportExcel> importExcel = ExcelUtil.importExcel(KeypointEquipmentInfoImportExcel.class, file.getInputStream(), "yyyy-MM-dd HH:mm:ss", new ExcelLogs() , 0);
+
+        if (CollectionUtils.isEmpty(importExcel)) {
+            return ;
+        }
+
+        List<KeypointEquipmentInfo> respList = BeanCopyUtils.copyBeanList((List<KeypointEquipmentInfoImportExcel>)importExcel, KeypointEquipmentInfo.class);
+
+        keypointEquipmentInfoBaseService.saveBatch(respList);
+    }
+
+    @Override
+    public void delete(Long[] ids) {
+        if(ids == null){
+            throw new EquipmentException(ResultCodes.CLIENT_PARAM_ILLEGAL);
+        }
+        List<Long> idList = Arrays.asList(ids);
+
+        List<KeypointEquipmentInfo> delList = new ArrayList<>();
+        idList.forEach(f->{
+            KeypointEquipmentInfo info = new KeypointEquipmentInfo();
+            info.setDelFlag(1);
+            info.setId(f);
+            delList.add(info);
+        });
+        keypointEquipmentInfoBaseService.updateBatchById(delList);
+    }
+
+    @Override
+    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();
+    }
+
+    @Override
+    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(this.queryAll(queryCriteria), KeypointEquipmentInfoExcel.class);
+
+        ExcelUtil.exportExcel(map,respList , response.getOutputStream(),DateUtils.PATTERN_STANDARD);
+        response.getOutputStream().close();
+    }
 }
\ No newline at end of file

--
Gitblit v1.9.2