From 759bbb8ee99665382a689fa90277a9b2279238da Mon Sep 17 00:00:00 2001 From: songhuangfeng123 <shf18767906695@163.com> Date: 星期五, 19 八月 2022 19:04:02 +0800 Subject: [PATCH] Merge branches 'genchuang' and 'master' of https://sinanoaq.cn:8888/r/safePlatform-out into master --- emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/repository/EmergencyDrillExecuteInfoRepository.java | 5 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/enums/TargetDutyResultCodes.java | 1 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetMngServiceImpl.java | 142 ++ goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetMngService.java | 2 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDutyWorkApproveServiceImpl.java | 62 + equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/req/EquipmentInfoImportExcel.java | 13 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/WorkApproveRelateDesc.java | 52 + incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/controller/AccidentReportController.java | 9 emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/query/EmergencySuppliesCountQuery.java | 14 emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/impl/EmergencySuppliesInfoServiceImpl.java | 6 incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/impl/AccidentCountServiceImpl.java | 56 + emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/EmergencySuppliesInfoService.java | 3 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetMngQueryCriteria.java | 2 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetTypeRepository.java | 16 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetExamineController.java | 184 ++-- emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencySuppliesServiceImpl.java | 1 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetTypeService.java | 23 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/entity/EquipmentInfo.java | 11 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetTypeQueryCriteria.java | 63 + goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetType.java | 52 + equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/req/EquipmentInfoSaveOrUpdate.java | 12 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/utils/BeanToMapUtil.java | 107 ++ goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetDutyWorkApproveService.java | 4 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDutyWorkApproveDto.java | 15 incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/controller/AccidentCountController.java | 28 emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/controller/EmergencyCountController.java | 40 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/repository/EquipmentInfoRepository.java | 5 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetDutyWorkApproveController.java | 4 emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/impl/EmergencyDrillExecuteInfoServiceImpl.java | 10 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetExamineServiceImpl.java | 126 ++ goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDivideDetailDto.java | 99 ++ emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/EmergencyDrillExecuteInfoService.java | 5 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/excepiton/TargetDutyException.java | 5 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/entity/KeypointEquipmentInfo.java | 1 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetExamineService.java | 2 incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/AccidentCountService.java | 12 emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencyDrillExecuteInfoMapper.xml | 50 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetMngRepository.java | 18 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetDivideDetail.java | 61 + goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetTypeDto.java | 62 + emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyCountServiceImpl.java | 152 +++ goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetTypeServiceImpl.java | 61 + incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/query/AccidentReportCountQuery.java | 12 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/req/KeypointEquipmentInfoQueryCriteria.java | 2 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/req/EquipmentInfoQueryCriteria.java | 2 incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/utils/TimeUtils.java | 4 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetTypeController.java | 105 ++ goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetExamineQueryCriteria.java | 50 + goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/ExamineMngServiceImpl.java | 33 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/resp/EquipmentInfoExcel.java | 13 emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/model/dto/resp/EmergencySuppliesCountRespDTO.java | 26 incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/AccidentReportService.java | 3 emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyDrillExecuteServiceImpl.java | 41 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetApproveDivideDetailDto.java | 160 +++ equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/service/impl/EquipmentInfoServiceImpl.java | 7 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetExamineSaveOrUpdate.java | 113 ++ emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/EmergencySuppliesService.java | 1 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetExamine.java | 55 - emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/controller/EmergencyDrillExecuteController.java | 11 emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/query/EmergencyDrillExecuteCountQuery.java | 27 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/controller/EquipmentInfoController.java | 2 emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/EmergencyDrillExecuteService.java | 3 /dev/null | 36 emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/EmergencyCountService.java | 17 emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencySuppliesInfoMapper.xml | 5 equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/resp/EquipmentInfoDto.java | 12 emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/repository/EmergencySuppliesInfoRepository.java | 3 incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/impl/AccidentReportServiceImpl.java | 29 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDivideDetailServiceImpl.java | 12 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetMngController.java | 18 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetExamineDto.java | 94 ++ 71 files changed, 2,076 insertions(+), 416 deletions(-) diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/controller/EmergencyCountController.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/controller/EmergencyCountController.java new file mode 100644 index 0000000..1430965 --- /dev/null +++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/controller/EmergencyCountController.java @@ -0,0 +1,40 @@ +package com.gkhy.safePlatform.emergency.controller; + +import com.gkhy.safePlatform.commons.query.PageQuery; +import com.gkhy.safePlatform.commons.utils.PageUtils; +import com.gkhy.safePlatform.commons.vo.ResultVO; +import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencyDrillExecuteCountRespDTO; +import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencySuppliesCountRespDTO; +import com.gkhy.safePlatform.emergency.query.EmergencyDrillExecuteCountQuery; +import com.gkhy.safePlatform.emergency.query.EmergencySuppliesCountQuery; +import com.gkhy.safePlatform.emergency.service.EmergencyCountService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +@RestController +@RequestMapping("/emergencyCount") +public class EmergencyCountController { + + @Autowired + private EmergencyCountService emergencyCountService; + + /** + * 应急演练次数统计图 + */ + @RequestMapping(value = "/emergencyDrillExecute/count",method = RequestMethod.POST) + public ResultVO<EmergencyDrillExecuteCountRespDTO> countEmergencyDrillExecute(@RequestBody EmergencyDrillExecuteCountQuery query){ + return emergencyCountService.countEmergencyDrillExecute(query); + } + + /** + * 应急物资统计图 + */ + @RequestMapping(value = "/emergencySupplies/count" ,method = RequestMethod.POST) + private ResultVO<List<EmergencySuppliesCountRespDTO>> list (@RequestBody PageQuery<EmergencySuppliesCountQuery> pageQuery){ + PageUtils.checkCheck(pageQuery); + return emergencyCountService.countEmergencySupplies(pageQuery); + } + +} diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/controller/EmergencyDrillExecuteController.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/controller/EmergencyDrillExecuteController.java index b1d6573..97060a4 100644 --- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/controller/EmergencyDrillExecuteController.java +++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/controller/EmergencyDrillExecuteController.java @@ -5,17 +5,14 @@ import com.gkhy.safePlatform.commons.utils.PageUtils; import com.gkhy.safePlatform.commons.vo.ResultVO; import com.gkhy.safePlatform.emergency.model.dto.req.EmergencyDrillExecuteReqDTO; -import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencyDrillExecuteCountRespDTO; import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencyDrillExecuteDetailRespDTO; import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencyDrillExecutePageRespDTO; import com.gkhy.safePlatform.emergency.query.EmergencyDrillExecuteQuery; -import com.gkhy.safePlatform.emergency.query.EmergencyDrillExecuteRPCQuery; import com.gkhy.safePlatform.emergency.service.EmergencyDrillExecuteService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.core.Authentication; import org.springframework.web.bind.annotation.*; -import java.security.Principal; import java.util.List; @RestController @@ -66,14 +63,6 @@ @RequestMapping(value = "/batchDelete",method = RequestMethod.POST) public ResultVO batchDeleteEmergencyDrillExecute(@RequestBody Long[] ids){ return emergencyDrillExecuteService.batchDeleteEmergencyDrillExecute(ids); - } - - /** - * 应急演练统计的rpc接口 - */ - @RequestMapping(value = "/count",method = RequestMethod.POST) - public ResultVO<EmergencyDrillExecuteCountRespDTO> countEmergencyDrillExecute(@RequestBody EmergencyDrillExecuteRPCQuery query){ - return emergencyDrillExecuteService.countEmergencyDrillExecute(query); } } diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/model/dto/resp/EmergencySuppliesCountRespDTO.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/model/dto/resp/EmergencySuppliesCountRespDTO.java new file mode 100644 index 0000000..9715bff --- /dev/null +++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/model/dto/resp/EmergencySuppliesCountRespDTO.java @@ -0,0 +1,26 @@ +package com.gkhy.safePlatform.emergency.model.dto.resp; + + +public class EmergencySuppliesCountRespDTO { + + private String name; + + private Integer totalNum; + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Integer getTotalNum() { + return totalNum; + } + + public void setTotalNum(Integer totalNum) { + this.totalNum = totalNum; + } + +} diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/query/EmergencyDrillExecuteCountQuery.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/query/EmergencyDrillExecuteCountQuery.java new file mode 100644 index 0000000..d3ae591 --- /dev/null +++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/query/EmergencyDrillExecuteCountQuery.java @@ -0,0 +1,27 @@ +package com.gkhy.safePlatform.emergency.query; + + +public class EmergencyDrillExecuteCountQuery { + + // type=1:月 type=2:年 + private Integer type; + + // 部门id + private Long deptId; + + public Integer getType() { + return type; + } + + public void setType(Integer type) { + this.type = type; + } + + public Long getDeptId() { + return deptId; + } + + public void setDeptId(Long deptId) { + this.deptId = deptId; + } +} diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/query/EmergencyDrillExecuteRPCQuery.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/query/EmergencyDrillExecuteRPCQuery.java deleted file mode 100644 index fb991a7..0000000 --- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/query/EmergencyDrillExecuteRPCQuery.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.gkhy.safePlatform.emergency.query; - -public class EmergencyDrillExecuteRPCQuery { - - private String level; - - // type=1:月 type=2:年 - private Integer type; - - private int year; - - private int month; - - public String getLevel() { - return level; - } - - public void setLevel(String level) { - this.level = level; - } - - public Integer getType() { - return type; - } - - public void setType(Integer type) { - this.type = type; - } - - public int getYear() { - return year; - } - - public void setYear(int year) { - this.year = year; - } - - public int getMonth() { - return month; - } - - public void setMonth(int month) { - this.month = month; - } -} diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/query/EmergencySuppliesCountQuery.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/query/EmergencySuppliesCountQuery.java new file mode 100644 index 0000000..2d16412 --- /dev/null +++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/query/EmergencySuppliesCountQuery.java @@ -0,0 +1,14 @@ +package com.gkhy.safePlatform.emergency.query; + +public class EmergencySuppliesCountQuery { + + private String classification ; + + public String getClassification() { + return classification; + } + + public void setClassification(String classification) { + this.classification = classification; + } +} diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/query/db/EmergencyDrillExecuteRPCDBQuery.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/query/db/EmergencyDrillExecuteRPCDBQuery.java deleted file mode 100644 index b70ad0a..0000000 --- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/query/db/EmergencyDrillExecuteRPCDBQuery.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.gkhy.safePlatform.emergency.query.db; - - - -public class EmergencyDrillExecuteRPCDBQuery { - - private String level; - - private String startTime; - - private String endTime; - - public String getLevel() { - return level; - } - - public void setLevel(String level) { - this.level = level; - } - - public String getStartTime() { - return startTime; - } - - public void setStartTime(String startTime) { - this.startTime = startTime; - } - - public String getEndTime() { - return endTime; - } - - public void setEndTime(String endTime) { - this.endTime = endTime; - } -} diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/repository/EmergencyDrillExecuteInfoRepository.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/repository/EmergencyDrillExecuteInfoRepository.java index 660dc83..8e62a8e 100644 --- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/repository/EmergencyDrillExecuteInfoRepository.java +++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/repository/EmergencyDrillExecuteInfoRepository.java @@ -7,7 +7,6 @@ import com.gkhy.safePlatform.emergency.entity.EmergencyDrillExecuteInfoDetailDO; import com.gkhy.safePlatform.emergency.entity.EmergencyDrillExecuteInfoPageDO; import com.gkhy.safePlatform.emergency.query.db.EmergencyDrillExecuteDBQuery; -import com.gkhy.safePlatform.emergency.query.db.EmergencyDrillExecuteRPCDBQuery; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; @@ -30,7 +29,7 @@ Integer selectEmergencyDrillExecuteIntervalTime(); - List<EmergencyDrillExecuteCountData> selectByMouthTimeAndType(@Param("query")EmergencyDrillExecuteRPCDBQuery dbQuery); + List<EmergencyDrillExecuteCountData> selectByMonthAndDept(@Param("startTime") String startTime ,@Param("endTime")String endTime ,@Param("deptIds")List<Long> deptIds); - List<EmergencyDrillExecuteCountData> selectByYearTimeAndType(@Param("query")EmergencyDrillExecuteRPCDBQuery dbQuery); + List<EmergencyDrillExecuteCountData> selectByYearAndDept(@Param("startTime") String startTime ,@Param("endTime")String endTime ,@Param("deptIds")List<Long> deptIds); } diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/repository/EmergencySuppliesInfoRepository.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/repository/EmergencySuppliesInfoRepository.java index 8c317e2..7783407 100644 --- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/repository/EmergencySuppliesInfoRepository.java +++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/repository/EmergencySuppliesInfoRepository.java @@ -5,6 +5,7 @@ import com.gkhy.safePlatform.emergency.entity.EmergencySuppliesInfo; import com.gkhy.safePlatform.emergency.entity.EmergencySuppliesInfoDetailDO; import com.gkhy.safePlatform.emergency.entity.EmergencySuppliesInfoPageDO; +import com.gkhy.safePlatform.emergency.query.EmergencySuppliesCountQuery; import com.gkhy.safePlatform.emergency.query.db.EmergencySuppliesDBQuery; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; @@ -23,4 +24,6 @@ void updateEmergencySupplies(EmergencySuppliesInfo emergencySuppliesInfo); void deleteEmergencySupplies(@Param("id") Long id); + + List<EmergencySuppliesInfoDetailDO> countEmergencySupplies(Page<EmergencySuppliesInfoDetailDO> page, EmergencySuppliesCountQuery query); } diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/EmergencyCountService.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/EmergencyCountService.java new file mode 100644 index 0000000..13379ff --- /dev/null +++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/EmergencyCountService.java @@ -0,0 +1,17 @@ +package com.gkhy.safePlatform.emergency.service; + +import com.gkhy.safePlatform.commons.query.PageQuery; +import com.gkhy.safePlatform.commons.vo.ResultVO; +import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencyDrillExecuteCountRespDTO; +import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencySuppliesCountRespDTO; +import com.gkhy.safePlatform.emergency.query.EmergencyDrillExecuteCountQuery; +import com.gkhy.safePlatform.emergency.query.EmergencySuppliesCountQuery; + +import java.util.List; + +public interface EmergencyCountService { + + ResultVO<EmergencyDrillExecuteCountRespDTO> countEmergencyDrillExecute(EmergencyDrillExecuteCountQuery query); + + ResultVO<List<EmergencySuppliesCountRespDTO>> countEmergencySupplies(PageQuery<EmergencySuppliesCountQuery> pageQuery); +} diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/EmergencyDrillExecuteService.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/EmergencyDrillExecuteService.java index 94a6ebe..802034b 100644 --- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/EmergencyDrillExecuteService.java +++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/EmergencyDrillExecuteService.java @@ -8,7 +8,7 @@ import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencyDrillExecuteDetailRespDTO; import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencyDrillExecutePageRespDTO; import com.gkhy.safePlatform.emergency.query.EmergencyDrillExecuteQuery; -import com.gkhy.safePlatform.emergency.query.EmergencyDrillExecuteRPCQuery; +import com.gkhy.safePlatform.emergency.query.EmergencyDrillExecuteCountQuery; import java.util.List; @@ -24,5 +24,4 @@ ResultVO batchDeleteEmergencyDrillExecute(Long[] ids); - ResultVO<EmergencyDrillExecuteCountRespDTO> countEmergencyDrillExecute(EmergencyDrillExecuteRPCQuery query); } diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/EmergencySuppliesService.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/EmergencySuppliesService.java index 4463d16..7a13d85 100644 --- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/EmergencySuppliesService.java +++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/EmergencySuppliesService.java @@ -21,4 +21,5 @@ ResultVO updateEmergencySupplies(Long uid, EmergencySuppliesReqDTO emergencySuppliesReqDTO); ResultVO batchDeleteEmergencySupplies( Long[] ids); + } diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/EmergencyDrillExecuteInfoService.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/EmergencyDrillExecuteInfoService.java index 2ff3ce5..9e165ba 100644 --- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/EmergencyDrillExecuteInfoService.java +++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/EmergencyDrillExecuteInfoService.java @@ -7,7 +7,6 @@ import com.gkhy.safePlatform.emergency.entity.EmergencyDrillExecuteInfoDetailDO; import com.gkhy.safePlatform.emergency.entity.EmergencyDrillExecuteInfoPageDO; import com.gkhy.safePlatform.emergency.query.db.EmergencyDrillExecuteDBQuery; -import com.gkhy.safePlatform.emergency.query.db.EmergencyDrillExecuteRPCDBQuery; import java.util.List; @@ -28,7 +27,7 @@ Integer selectEmergencyDrillExecuteIntervalTime(); - List<EmergencyDrillExecuteCountData> selectByMouthTimeAndType(EmergencyDrillExecuteRPCDBQuery dbQuery); + List<EmergencyDrillExecuteCountData> selectByMonthAndDept(String startTime ,String endTime ,List<Long> deptIds); - List<EmergencyDrillExecuteCountData> selectByYearTimeAndType(EmergencyDrillExecuteRPCDBQuery dbQuery); + List<EmergencyDrillExecuteCountData> selectByYearAndDept(String startTime ,String endTime ,List<Long> deptIds); } diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/EmergencySuppliesInfoService.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/EmergencySuppliesInfoService.java index 4e8c1e0..0da757e 100644 --- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/EmergencySuppliesInfoService.java +++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/EmergencySuppliesInfoService.java @@ -5,6 +5,7 @@ import com.gkhy.safePlatform.emergency.entity.EmergencySuppliesInfo; import com.gkhy.safePlatform.emergency.entity.EmergencySuppliesInfoDetailDO; import com.gkhy.safePlatform.emergency.entity.EmergencySuppliesInfoPageDO; +import com.gkhy.safePlatform.emergency.query.EmergencySuppliesCountQuery; import com.gkhy.safePlatform.emergency.query.db.EmergencySuppliesDBQuery; import java.util.List; @@ -21,4 +22,6 @@ void updateEmergencySupplies(EmergencySuppliesInfo emergencySuppliesInfo); void deleteEmergencySupplies(Long SuppliesId); + + List<EmergencySuppliesInfoDetailDO> countEmergencySupplies(Page<EmergencySuppliesInfoDetailDO> page,EmergencySuppliesCountQuery query); } diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/impl/EmergencyDrillExecuteInfoServiceImpl.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/impl/EmergencyDrillExecuteInfoServiceImpl.java index 5219134..9f48ac1 100644 --- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/impl/EmergencyDrillExecuteInfoServiceImpl.java +++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/impl/EmergencyDrillExecuteInfoServiceImpl.java @@ -7,7 +7,6 @@ import com.gkhy.safePlatform.emergency.entity.EmergencyDrillExecuteInfoDetailDO; import com.gkhy.safePlatform.emergency.entity.EmergencyDrillExecuteInfoPageDO; import com.gkhy.safePlatform.emergency.query.db.EmergencyDrillExecuteDBQuery; -import com.gkhy.safePlatform.emergency.query.db.EmergencyDrillExecuteRPCDBQuery; import com.gkhy.safePlatform.emergency.repository.EmergencyDrillExecuteInfoRepository; import com.gkhy.safePlatform.emergency.service.baseService.EmergencyDrillExecuteInfoService; import org.springframework.beans.factory.annotation.Autowired; @@ -57,14 +56,13 @@ } @Override - public List<EmergencyDrillExecuteCountData> selectByMouthTimeAndType(EmergencyDrillExecuteRPCDBQuery dbQuery) { - return emergencyDrillExecuteInfoRepository.selectByMouthTimeAndType(dbQuery); + public List<EmergencyDrillExecuteCountData> selectByMonthAndDept(String startTime ,String endTime ,List<Long> deptIds) { + return emergencyDrillExecuteInfoRepository.selectByMonthAndDept(startTime,endTime,deptIds); } @Override - public List<EmergencyDrillExecuteCountData> selectByYearTimeAndType(EmergencyDrillExecuteRPCDBQuery dbQuery) { - return emergencyDrillExecuteInfoRepository.selectByYearTimeAndType(dbQuery); + public List<EmergencyDrillExecuteCountData> selectByYearAndDept(String startTime ,String endTime ,List<Long> deptIds) { + return emergencyDrillExecuteInfoRepository.selectByYearAndDept(startTime,endTime,deptIds); } - } diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/impl/EmergencySuppliesInfoServiceImpl.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/impl/EmergencySuppliesInfoServiceImpl.java index 85c6343..19b2d8e 100644 --- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/impl/EmergencySuppliesInfoServiceImpl.java +++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/impl/EmergencySuppliesInfoServiceImpl.java @@ -5,6 +5,7 @@ import com.gkhy.safePlatform.emergency.entity.EmergencySuppliesInfo; import com.gkhy.safePlatform.emergency.entity.EmergencySuppliesInfoDetailDO; import com.gkhy.safePlatform.emergency.entity.EmergencySuppliesInfoPageDO; +import com.gkhy.safePlatform.emergency.query.EmergencySuppliesCountQuery; import com.gkhy.safePlatform.emergency.query.db.EmergencySuppliesDBQuery; import com.gkhy.safePlatform.emergency.repository.EmergencySuppliesInfoRepository; import com.gkhy.safePlatform.emergency.service.baseService.EmergencySuppliesInfoService; @@ -44,5 +45,10 @@ emergencySuppliesInfoRepository.deleteEmergencySupplies(SuppliesId); } + @Override + public List<EmergencySuppliesInfoDetailDO> countEmergencySupplies(Page<EmergencySuppliesInfoDetailDO> page,EmergencySuppliesCountQuery query){ + return emergencySuppliesInfoRepository.countEmergencySupplies(page,query); + } + } diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyCountServiceImpl.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyCountServiceImpl.java new file mode 100644 index 0000000..b9ddad0 --- /dev/null +++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyCountServiceImpl.java @@ -0,0 +1,152 @@ +package com.gkhy.safePlatform.emergency.service.impl; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.gkhy.safePlatform.account.rpc.apimodel.AccountDepartmentService; +import com.gkhy.safePlatform.commons.enums.E; +import com.gkhy.safePlatform.commons.enums.ResultCodes; +import com.gkhy.safePlatform.commons.exception.BusinessException; +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.emergency.entity.*; +import com.gkhy.safePlatform.emergency.model.dto.resp.*; +import com.gkhy.safePlatform.emergency.query.EmergencyDrillExecuteCountQuery; +import com.gkhy.safePlatform.emergency.query.EmergencySuppliesCountQuery; +import com.gkhy.safePlatform.emergency.service.EmergencyCountService; +import com.gkhy.safePlatform.emergency.service.EmergencySuppliesService; +import com.gkhy.safePlatform.emergency.service.baseService.EmergencyDrillExecuteInfoService; +import com.gkhy.safePlatform.emergency.service.baseService.EmergencySuppliesInfoService; +import com.gkhy.safePlatform.emergency.utils.TimeUtils; +import org.apache.dubbo.config.annotation.DubboReference; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import java.text.SimpleDateFormat; +import java.util.*; + +@Service("emergencyCountService") +public class EmergencyCountServiceImpl implements EmergencyCountService { + + @Autowired + private EmergencyDrillExecuteInfoService emergencyDrillExecuteInfoService; + + @DubboReference(check = false) + private AccountDepartmentService accountDepartmentService; + + @Autowired + private EmergencySuppliesInfoService emergencySuppliesInfoService; + + + + @Override + public ResultVO<EmergencyDrillExecuteCountRespDTO> countEmergencyDrillExecute(EmergencyDrillExecuteCountQuery query) { + + EmergencyDrillExecuteCountRespDTO emergencyDrillExecuteCountRespDTO = new EmergencyDrillExecuteCountRespDTO(); + + // 根据最新的应急演练实施的创建时间与当前时间 获取间隔天数 + Integer days = emergencyDrillExecuteInfoService.selectEmergencyDrillExecuteIntervalTime(); + emergencyDrillExecuteCountRespDTO.setDays(days); + + // 根据时间类型(年/月),部门id 获取统计结果 + List<EmergencyDrillExecuteCountData> list = new ArrayList<>(); + // 获取部门id集合 + List<Long> deptIds = new ArrayList<>(); + + ResultVO<List<Long>> rpcResult = accountDepartmentService.listDepAndSubDepIds(query.getDeptId()); + if (rpcResult != null && rpcResult.getCode().equals(ResultCodes.OK.getCode())) { + if (rpcResult.getData() != null) { + deptIds = (List<Long>) rpcResult.getData(); + } + }else{ + throw new BusinessException(ResultCodes.CLIENT_DEP_NOT_EXIST); + } + // 获取时间 + SimpleDateFormat sdf = new SimpleDateFormat("yyyy"); + Date date = new Date(); + int year = Integer.parseInt(sdf.format(date)); + if (query.getType()==1){ + // 月 + String startTime = TimeUtils.getYearFirst(year); + String endTime = TimeUtils.getYearLast(year); + list = emergencyDrillExecuteInfoService.selectByMonthAndDept(startTime,endTime,deptIds); + } + if (query.getType()==2){ + // 年 + String startTime = TimeUtils.getYearFirst(year-10); + String endTime = TimeUtils.getYearLast(year); + list = emergencyDrillExecuteInfoService.selectByYearAndDept(startTime,endTime,deptIds); + } + + if (!CollectionUtils.isEmpty(list)){ + List<EmergencyDrillExecuteCountDataRespDTO> dataList = BeanCopyUtils.copyBeanList(list,EmergencyDrillExecuteCountDataRespDTO.class); + emergencyDrillExecuteCountRespDTO.setDataList(dataList); + }else{ + emergencyDrillExecuteCountRespDTO.setDataList(new ArrayList<>()); + } + return new ResultVO<>(ResultCodes.OK,emergencyDrillExecuteCountRespDTO); + } + + @Override + public ResultVO<List<EmergencySuppliesCountRespDTO>> countEmergencySupplies(PageQuery<EmergencySuppliesCountQuery> pageQuery) { + List<EmergencySuppliesCountRespDTO> respList = new ArrayList<>(); + + Long pageIndex = pageQuery.getPageIndex(); + Long pageSize = pageQuery.getPageSize(); + Page<EmergencySuppliesInfoDetailDO> page = new Page<>(pageIndex,pageSize); + List<EmergencySuppliesInfoDetailDO> emergencySuppliesInfoDetailDOList = emergencySuppliesInfoService.countEmergencySupplies(page,pageQuery.getSearchParams()); + + if (!CollectionUtils.isEmpty(emergencySuppliesInfoDetailDOList)){ + for (EmergencySuppliesInfoDetailDO emergencySuppliesInfoDetailDO :emergencySuppliesInfoDetailDOList){ + EmergencySuppliesCountRespDTO emergencySuppliesCountRespDTO = new EmergencySuppliesCountRespDTO(); + // 名称+数量 + emergencySuppliesCountRespDTO.setName(emergencySuppliesInfoDetailDO.getName()); + emergencySuppliesCountRespDTO.setTotalNum(emergencySuppliesInfoDetailDO.getCount()); +// // 保质期内数量 +// SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");//格式化一下 +// Date produceDate = emergencySuppliesInfoDetailDO.getProductionDate(); +// Integer usePeriod = emergencySuppliesInfoDetailDO.getUsePeriod(); +// +// String[] arr = sdf.format(produceDate).split("-"); +// +// Calendar calendar = Calendar.getInstance();//获取对日期操作的类对象 +// calendar.clear(); +// calendar.set(Calendar.YEAR, Integer.parseInt(arr[0])); +// calendar.set(Calendar.MONTH, Integer.parseInt(arr[1])); +// calendar.set(Calendar.DAY_OF_MONTH, Integer.parseInt(arr[2])); +// +// calendar.set(Calendar.DAY_OF_YEAR,calendar.get(Calendar.DAY_OF_YEAR) +usePeriod); +// +// Date qualityD = calendar.getTime(); +// String time= sdf.format(calendar.getTime()); +// System.out.println(time); + + respList.add(emergencySuppliesCountRespDTO); + } + } + return new SearchResultVO<>( + true, + pageIndex, + pageSize,page.getPages(), + page.getTotal(), + respList, + ResultCodes.OK + ); + } + + public static void main(String[] args) { + Date date = new Date();//获取当前日期 + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");//格式化一下 + Calendar calendar1 = Calendar.getInstance();//获取对日期操作的类对象 + //两种写法都可以获取到前三天的日期 + calendar1.set(Calendar.DAY_OF_YEAR,calendar1.get(Calendar.DAY_OF_YEAR) -40); + //在当前时间的基础上获取前三天的日期 +// calendar1.add(Calendar.DATE, -40); + //add方法 参数也可传入 月份,获取的是前几月或后几月的日期 + //calendar1.add(Calendar.MONTH, -3); + Date today = calendar1.getTime(); + String time= sdf.format(today); + System.out.println(time); + } +} diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyDrillExecuteServiceImpl.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyDrillExecuteServiceImpl.java index 76c3610..00a745e 100644 --- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyDrillExecuteServiceImpl.java +++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyDrillExecuteServiceImpl.java @@ -13,9 +13,8 @@ import com.gkhy.safePlatform.emergency.model.dto.req.EmergencyDrillExecuteUserReqDTO; import com.gkhy.safePlatform.emergency.model.dto.resp.*; import com.gkhy.safePlatform.emergency.query.EmergencyDrillExecuteQuery; -import com.gkhy.safePlatform.emergency.query.EmergencyDrillExecuteRPCQuery; +import com.gkhy.safePlatform.emergency.query.EmergencyDrillExecuteCountQuery; import com.gkhy.safePlatform.emergency.query.db.EmergencyDrillExecuteDBQuery; -import com.gkhy.safePlatform.emergency.query.db.EmergencyDrillExecuteRPCDBQuery; import com.gkhy.safePlatform.emergency.service.EmergencyDrillExecuteService; import com.gkhy.safePlatform.emergency.service.baseService.EmergencyDrillEvaluationInfoService; import com.gkhy.safePlatform.emergency.service.baseService.EmergencyDrillExecuteInfoService; @@ -232,42 +231,4 @@ } } - @Override - public ResultVO<EmergencyDrillExecuteCountRespDTO> countEmergencyDrillExecute(EmergencyDrillExecuteRPCQuery query) { - - EmergencyDrillExecuteCountRespDTO emergencyDrillExecuteCountRespDTO = new EmergencyDrillExecuteCountRespDTO(); - - // 根据应急演练实施的创建时间与当前时间 获取间隔天数 - Integer days = emergencyDrillExecuteInfoService.selectEmergencyDrillExecuteIntervalTime(); - emergencyDrillExecuteCountRespDTO.setDays(days); - - // 根据时间、级别获取统计 - List<EmergencyDrillExecuteCountData> list = new ArrayList<>(); - EmergencyDrillExecuteRPCDBQuery dbQuery = new EmergencyDrillExecuteRPCDBQuery(); - dbQuery.setLevel(query.getLevel()); - if (query.getType()==1){ - // 月 - int year = query.getYear(); - int month = query.getMonth(); - dbQuery.setStartTime(TimeUtils.getMonthFirst(year,month)); - dbQuery.setEndTime(TimeUtils.getMonthLast(year,month)); - list = emergencyDrillExecuteInfoService.selectByMouthTimeAndType(dbQuery); - } - if (query.getType()==2){ - // 年 - int year = query.getYear(); - dbQuery.setStartTime(TimeUtils.getYearFirst(year)); - dbQuery.setEndTime(TimeUtils.getYearLast(year)); - list = emergencyDrillExecuteInfoService.selectByYearTimeAndType(dbQuery); - } - - if (!CollectionUtils.isEmpty(list)){ - List<EmergencyDrillExecuteCountDataRespDTO> dataList = BeanCopyUtils.copyBeanList(list,EmergencyDrillExecuteCountDataRespDTO.class); - emergencyDrillExecuteCountRespDTO.setDataList(dataList); - }else{ - emergencyDrillExecuteCountRespDTO.setDataList(new ArrayList<>()); - } - - return new ResultVO<>(ResultCodes.OK,emergencyDrillExecuteCountRespDTO); - } } diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencySuppliesServiceImpl.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencySuppliesServiceImpl.java index ee0cac2..4144f5c 100644 --- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencySuppliesServiceImpl.java +++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencySuppliesServiceImpl.java @@ -13,6 +13,7 @@ import com.gkhy.safePlatform.emergency.excepiton.EmergencyException; import com.gkhy.safePlatform.emergency.model.dto.req.*; import com.gkhy.safePlatform.emergency.model.dto.resp.*; +import com.gkhy.safePlatform.emergency.query.EmergencySuppliesCountQuery; import com.gkhy.safePlatform.emergency.query.EmergencySuppliesQuery; import com.gkhy.safePlatform.emergency.query.db.EmergencySuppliesDBQuery; import com.gkhy.safePlatform.emergency.service.EmergencySuppliesMaintainService; diff --git a/emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencyDrillExecuteInfoMapper.xml b/emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencyDrillExecuteInfoMapper.xml index 8e603c8..cb840df 100644 --- a/emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencyDrillExecuteInfoMapper.xml +++ b/emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencyDrillExecuteInfoMapper.xml @@ -131,23 +131,7 @@ <result column="name" property="name"/> </resultMap> - <select id="selectByMouthTimeAndType" resultMap="emergencyDrillExecuteCountChart"> - SELECT - count( 0 ) AS num, - DATE_FORMAT( a.gmt_create, '%Y-%m-%d' ) AS `name` - FROM - `emergency_drill_execute` a - LEFT JOIN emergency_drill_plan b ON a.drill_plan_id = b.id - WHERE - a.del_flag = 0 - AND a.gmt_create <![CDATA[ >= ]]> #{query.startTime} - AND a.gmt_create <![CDATA[ <= ]]> #{query.endTime} - <if test="query.level != null and query.level != ''" >and b.drill_level = #{query.level}</if> - GROUP BY - DATE_FORMAT( a.gmt_create, '%Y-%m-%d' ) - </select> - - <select id="selectByYearTimeAndType" resultMap="emergencyDrillExecuteCountChart"> + <select id="selectByMonthAndDept" resultMap="emergencyDrillExecuteCountChart"> SELECT count( 0 ) AS num, DATE_FORMAT( a.gmt_create, '%Y-%m' ) AS `name` @@ -156,10 +140,36 @@ LEFT JOIN emergency_drill_plan b ON a.drill_plan_id = b.id WHERE a.del_flag = 0 - AND a.gmt_create <![CDATA[ >= ]]> #{query.startTime} - AND a.gmt_create <![CDATA[ <= ]]> #{query.endTime} - <if test="query.level != null and query.level != ''" >and b.drill_level = #{query.level}</if> + AND a.gmt_create <![CDATA[ >= ]]> #{startTime} + AND a.gmt_create <![CDATA[ <= ]]> #{endTime} + <if test="deptIds != null " > + and b.department_id in + <foreach item="id" collection="deptIds" open="(" separator="," close=")"> + #{id} + </foreach> + </if> GROUP BY DATE_FORMAT( a.gmt_create, '%Y-%m' ) </select> + + <select id="selectByYearAndDept" resultMap="emergencyDrillExecuteCountChart"> + SELECT + count( 0 ) AS num, + DATE_FORMAT( a.gmt_create, '%Y' ) AS `name` + FROM + `emergency_drill_execute` a + LEFT JOIN emergency_drill_plan b ON a.drill_plan_id = b.id + WHERE + a.del_flag = 0 + AND a.gmt_create <![CDATA[ >= ]]> #{startTime} + AND a.gmt_create <![CDATA[ <= ]]> #{endTime} + <if test="deptIds != null " > + and b.department_id in + <foreach item="id" collection="deptIds" open="(" separator="," close=")"> + #{id} + </foreach> + </if> + GROUP BY + DATE_FORMAT( a.gmt_create, '%Y' ) + </select> </mapper> diff --git a/emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencySuppliesInfoMapper.xml b/emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencySuppliesInfoMapper.xml index 9b4c5c5..f9d36cf 100644 --- a/emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencySuppliesInfoMapper.xml +++ b/emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencySuppliesInfoMapper.xml @@ -114,6 +114,11 @@ from emergency_supplies where del_flag = 0 and id = #{id} </select> + <select id="countEmergencySupplies" resultMap="emergencySuppliesInfoDetailDOResult"> + select id,`name`,`count`,`production_date`,`use_period`,classification from emergency_supplies where del_flag = 0 + <if test="query.classification != null and query.classification != ''">and `classification` = #{query.classification}</if> + </select> + <update id="updateEmergencySupplies" parameterType="com.gkhy.safePlatform.emergency.entity.EmergencySuppliesInfo"> update emergency_supplies <trim prefix="SET" suffixOverrides=","> 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 cdada2a..a7f0856 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 @@ -186,6 +186,7 @@ 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"); @@ -278,6 +279,7 @@ 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"); diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/entity/EquipmentInfo.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/entity/EquipmentInfo.java index edaed14..b67dbbc 100644 --- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/entity/EquipmentInfo.java +++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/entity/EquipmentInfo.java @@ -555,4 +555,15 @@ public void setAreaName(String areaName) { this.areaName = areaName; } + + //保养周期 + private String takecareCycle; + + public String getTakecareCycle() { + return takecareCycle; + } + + public void setTakecareCycle(String takecareCycle) { + this.takecareCycle = takecareCycle; + } } \ No newline at end of file diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/entity/KeypointEquipmentInfo.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/entity/KeypointEquipmentInfo.java index bf930bb..a191098 100644 --- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/entity/KeypointEquipmentInfo.java +++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/entity/KeypointEquipmentInfo.java @@ -216,4 +216,5 @@ public void setMemo(String memo) { this.memo = memo; } + } \ No newline at end of file diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/req/EquipmentInfoImportExcel.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/req/EquipmentInfoImportExcel.java index 5020ff6..94536de 100644 --- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/req/EquipmentInfoImportExcel.java +++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/req/EquipmentInfoImportExcel.java @@ -147,7 +147,18 @@ //实际报废日期 @ExcelCell(index = 47) private Timestamp actualDestoryDate; - + + //保养周期 + @ExcelCell(index = 48) + private String takecareCycle; + + public String getTakecareCycle() { + return takecareCycle; + } + + public void setTakecareCycle(String takecareCycle) { + this.takecareCycle = takecareCycle; + } //类型/类别外键 public Long getEquipmentTypeId() { diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/req/EquipmentInfoQueryCriteria.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/req/EquipmentInfoQueryCriteria.java index 0d8a8c2..a0d6a2c 100644 --- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/req/EquipmentInfoQueryCriteria.java +++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/req/EquipmentInfoQueryCriteria.java @@ -49,4 +49,4 @@ public void setPositionNum(String positionNum) { this.positionNum = positionNum; } -} +} \ No newline at end of file diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/req/EquipmentInfoSaveOrUpdate.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/req/EquipmentInfoSaveOrUpdate.java index 0e68549..c37834a 100644 --- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/req/EquipmentInfoSaveOrUpdate.java +++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/req/EquipmentInfoSaveOrUpdate.java @@ -164,6 +164,18 @@ //要删除的检查标准 private String delCheckStandardeDetails; + + //保养周期 + private String takecareCycle; + + public String getTakecareCycle() { + return takecareCycle; + } + + public void setTakecareCycle(String takecareCycle) { + this.takecareCycle = takecareCycle; + } + public String getLeadingPersonName() { return leadingPersonName; } diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/req/KeypointEquipmentInfoQueryCriteria.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/req/KeypointEquipmentInfoQueryCriteria.java index 1047f88..e51cf06 100644 --- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/req/KeypointEquipmentInfoQueryCriteria.java +++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/req/KeypointEquipmentInfoQueryCriteria.java @@ -27,4 +27,4 @@ public void setEquipmentTypeId(Integer equipmentTypeId) { this.equipmentTypeId = equipmentTypeId; } -} +} \ No newline at end of file diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/resp/EquipmentInfoDto.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/resp/EquipmentInfoDto.java index edc1e7f..401642c 100644 --- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/resp/EquipmentInfoDto.java +++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/resp/EquipmentInfoDto.java @@ -146,6 +146,18 @@ //区域名称 private String areaName; + + //保养周期 + private String takecareCycle; + + public String getTakecareCycle() { + return takecareCycle; + } + + public void setTakecareCycle(String takecareCycle) { + this.takecareCycle = takecareCycle; + } + public Long getAreaId() { return areaId; } diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/resp/EquipmentInfoExcel.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/resp/EquipmentInfoExcel.java index e140344..7046adc 100644 --- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/resp/EquipmentInfoExcel.java +++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/model/dto/resp/EquipmentInfoExcel.java @@ -150,7 +150,18 @@ //实际报废日期 @ExcelCell(index = 47) private Timestamp actualDestoryDate; - + + //保养周期 + @ExcelCell(index = 48) + private String takecareCycle; + + public String getTakecareCycle() { + return takecareCycle; + } + + public void setTakecareCycle(String takecareCycle) { + this.takecareCycle = takecareCycle; + } //ID public Long getId() { diff --git a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/repository/EquipmentInfoRepository.java b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/repository/EquipmentInfoRepository.java index 41cf464..a3b67b6 100644 --- a/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/repository/EquipmentInfoRepository.java +++ b/equipment/equipment-service/src/main/java/com/gkhy/safePlatform/equipment/repository/EquipmentInfoRepository.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.gkhy.safePlatform.equipment.entity.EquipmentInfo; +import org.apache.ibatis.annotations.Select; import org.springframework.stereotype.Repository; /** @@ -13,4 +14,8 @@ @Repository public interface EquipmentInfoRepository extends BaseMapper<EquipmentInfo> { + @Select("<script> select count(1) from equipment_info m INNER JOIN \n" + + "(select a.id,max(b.takecare_date) mdate from equipment_info a INNER JOIN equipment_takecare_detail b on a.id = b.equipment_id GROUP BY b.equipment_id) n \n" + + "on m.id = n.id where DATEDIFF(NOW(),n.mdate) >m.takecare_cycle</script> ") + Object countOverTime(); } \ 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 ba3e45f..9a5f690 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 @@ -302,7 +302,12 @@ .select("stop_status as stopStatus,count(0) as count") .groupBy("stop_status"); - return this.listMaps(wrapper); + List<Map<String, Object>> list = this.listMaps(wrapper); + + + Map<String, Object> map = new HashMap<>(); + map.put("-1",equipmentInfoRepository.countOverTime());//超时未保养 + return list; } @Override diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetDutyWorkApproveController.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetDutyWorkApproveController.java index 642d6c1..4ef3fe6 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetDutyWorkApproveController.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetDutyWorkApproveController.java @@ -9,6 +9,7 @@ import com.gkhy.safePlatform.commons.co.ContextCacheUser; import com.gkhy.safePlatform.targetDuty.entity.ExamineMng; import com.gkhy.safePlatform.targetDuty.entity.TargetDutyWorkApprove; +import com.gkhy.safePlatform.targetDuty.model.dto.resp.TargetDutyWorkApproveDto; import com.gkhy.safePlatform.targetDuty.service.TargetDutyWorkApproveService; import com.gkhy.safePlatform.targetDuty.utils.DateUtils; import org.springframework.security.core.Authentication; @@ -63,7 +64,8 @@ */ @GetMapping(value = "/selectOne/{id}") public ResultVO selectOne(@PathVariable Serializable id) { - return new ResultVO<>(ResultCodes.OK,this.targetDutyWorkApproveService.getById(id)); + TargetDutyWorkApproveDto dto = this.targetDutyWorkApproveService.selectOne(id); + return new ResultVO<>(ResultCodes.OK,dto); } /** diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetExamineController.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetExamineController.java index 4088452..768aebe 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetExamineController.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetExamineController.java @@ -1,37 +1,23 @@ package com.gkhy.safePlatform.targetDuty.controller; -import java.util.*; -import java.sql.Timestamp; - - -import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.gkhy.safePlatform.commons.utils.BeanCopyUtils; -import com.gkhy.safePlatform.targetDuty.entity.ExamineItem; -import com.gkhy.safePlatform.targetDuty.entity.TargetExamine; -import com.gkhy.safePlatform.targetDuty.entity.TargetMng; -import com.gkhy.safePlatform.targetDuty.model.dto.req.ExamineTemplateSaveOrUpdate; -import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetExamineSaveOrUpdate; -import com.gkhy.safePlatform.targetDuty.model.dto.resp.ExamineTemplateDto; -import com.gkhy.safePlatform.targetDuty.model.dto.resp.TargetExamineDivideDto; -import com.gkhy.safePlatform.targetDuty.model.dto.resp.TargetExamineDto; -import com.gkhy.safePlatform.targetDuty.service.CommonService; -import com.gkhy.safePlatform.targetDuty.service.TargetExamineService; -import com.gkhy.safePlatform.targetDuty.service.TargetMngService; -import com.google.common.collect.Lists; -import org.springframework.util.StringUtils; -import org.springframework.web.bind.annotation.*; +import com.gkhy.safePlatform.commons.enums.ResultCodes; import com.gkhy.safePlatform.commons.query.PageQuery; import com.gkhy.safePlatform.commons.utils.PageUtils; import com.gkhy.safePlatform.commons.vo.ResultVO; -import com.gkhy.safePlatform.commons.enums.ResultCodes; +import com.gkhy.safePlatform.targetDuty.entity.TargetExamine; import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetExamineQueryCriteria; +import com.gkhy.safePlatform.targetDuty.service.CommonService; +import com.gkhy.safePlatform.targetDuty.service.TargetExamineService; +import com.gkhy.safePlatform.targetDuty.service.TargetMngService; +import org.springframework.web.bind.annotation.*; -import java.util.stream.Collectors; import javax.annotation.Resource; import java.io.Serializable; +import java.sql.Timestamp; +import java.util.Arrays; +import java.util.Date; +import java.util.List; /** * (TargetExamine)表控制层 @@ -53,49 +39,75 @@ @Resource private CommonService commonService; +// /** +// * 通过主键查询单条数据 +// * +// * @param targetId 主键 +// * @return 单条数据 +// */ +// @GetMapping(value = "/selectOne/{targetId}") +// public ResultVO selectOne(@PathVariable Long targetId) { +// TargetExamineDto dto = new TargetExamineDto(); +// TargetMng targetMng = targetMngService.getById(targetId); +// if(targetMng == null) { +// return new ResultVO<>(ResultCodes.CLIENT_PROJECT_NOT_EXIST); +// } +// +// TargetExamineQueryCriteria criteria = new TargetExamineQueryCriteria(); +// criteria.setTargetId(targetId); +// +// List<TargetExamineDivideDto> respList = BeanCopyUtils.copyBeanList(this.targetExamineService.queryAll(criteria), TargetExamineDivideDto.class); +// +// +// // --------------------------- 获取部门信息----------------------- +// //收集所用到的部门ID +// Set<Long> collectDepIdSet = new HashSet(); +// respList.forEach(f->{ +// collectDepIdSet.add(f.getDutyDepartmentId()); +// collectDepIdSet.add(f.getMakerDepartmentId()); +// }); +// //获取部门名集合 +// Map<Long,String> depNameMap = commonService.getDepName(collectDepIdSet); +// +// respList.forEach(f->{ +// f.setDutyDepartmentName(depNameMap.get(f.getDutyDepartmentId())); +// f.setMakerDepartmentName(depNameMap.get(f.getMakerDepartmentId())); +// }); +// +// dto.setExamineList(respList); +// dto.setId(targetMng.getId()); +// dto.setIndexNum(targetMng.getIndexNum()); +// dto.setqName(targetMng.getqName()); +// dto.setValue(targetMng.getValue()); +// dto.setYear(targetMng.getYear()); +// return new ResultVO<>(ResultCodes.OK,dto); +// } + + + /** + * 分页查询所有数据 + * + * @param pageQuery 查询实体 + * @return 所有数据 + */ + @PostMapping(value = "/page/list") + public ResultVO selectAll(@RequestBody PageQuery<TargetExamineQueryCriteria> pageQuery){ + PageUtils.checkCheck(pageQuery); + return this.targetExamineService.queryAll(pageQuery); + } + + /** * 通过主键查询单条数据 * - * @param targetId 主键 + * @param id 主键 * @return 单条数据 */ - @GetMapping(value = "/selectOne/{targetId}") - public ResultVO selectOne(@PathVariable Long targetId) { - TargetExamineDto dto = new TargetExamineDto(); - TargetMng targetMng = targetMngService.getById(targetId); - if(targetMng == null) { - return new ResultVO<>(ResultCodes.CLIENT_PROJECT_NOT_EXIST); - } - - TargetExamineQueryCriteria criteria = new TargetExamineQueryCriteria(); - criteria.setTargetId(targetId); - - List<TargetExamineDivideDto> respList = BeanCopyUtils.copyBeanList(this.targetExamineService.queryAll(criteria), TargetExamineDivideDto.class); - - - // --------------------------- 获取部门信息----------------------- - //收集所用到的部门ID - Set<Long> collectDepIdSet = new HashSet(); - respList.forEach(f->{ - collectDepIdSet.add(f.getDutyDepartmentId()); - collectDepIdSet.add(f.getMakerDepartmentId()); - }); - //获取部门名集合 - Map<Long,String> depNameMap = commonService.getDepName(collectDepIdSet); - - respList.forEach(f->{ - f.setDutyDepartmentName(depNameMap.get(f.getDutyDepartmentId())); - f.setMakerDepartmentName(depNameMap.get(f.getMakerDepartmentId())); - }); - - dto.setExamineList(respList); - dto.setId(targetMng.getId()); - dto.setIndexNum(targetMng.getIndexNum()); - dto.setqName(targetMng.getqName()); - dto.setValue(targetMng.getValue()); - dto.setYear(targetMng.getYear()); - return new ResultVO<>(ResultCodes.OK,dto); + @GetMapping(value = "/selectOne/{id}") + public ResultVO selectOne(@PathVariable Serializable id) { + return new ResultVO<>(ResultCodes.OK,this.targetExamineService.getById(id)); } + /** * 新增或者修改数据 @@ -104,17 +116,14 @@ * @return 修改结果 */ @PostMapping(value = "/addOrUpdate") - public ResultVO update(@RequestBody TargetExamineSaveOrUpdate infoDto) { - if(infoDto.getId() == null) { - return new ResultVO<>(ResultCodes.CLIENT_PARAM_ERROR); + public ResultVO update(@RequestBody TargetExamine infoDto) { + infoDto.setExamineDate(new Timestamp(new Date().getTime())); + if (infoDto.getId() == null) { + return new ResultVO<>(ResultCodes.OK,targetExamineService.save(infoDto)); + } else { + targetExamineService.update(infoDto,new UpdateWrapper<TargetExamine>().eq("id",infoDto.getId())); + return new ResultVO<>(ResultCodes.OK); } - TargetMng targetMng = targetMngService.getById(infoDto.getId()); - if(targetMng == null) { - return new ResultVO<>(ResultCodes.CLIENT_PROJECT_NOT_EXIST); - } - - targetExamineService.addOrUpdate(infoDto); - return new ResultVO<>(ResultCodes.OK); } /** @@ -135,23 +144,20 @@ public static void main(String[] args) { - TargetExamineSaveOrUpdate saveOrUpdate = new TargetExamineSaveOrUpdate(); - saveOrUpdate.setDelIds("1,2"); - - - List<TargetExamine> examineList = Lists.newArrayList(); - TargetExamine item = new TargetExamine(); - item.setDutyDepartmentId(12L); - item.setExamineValue("3"); - item.setMakerDepartmentId(4L); - item.setMakeDate(new Timestamp(new java.util.Date().getTime())); - item.setUploadValue("2"); - item.setUploadDate(new Timestamp(new java.util.Date().getTime())); - item.setExamineResult(1); - item.setExaminePersonId(0L); - item.setExamineDate(new Timestamp(new java.util.Date().getTime())); - examineList.add(item); - saveOrUpdate.setExamineList(examineList); - System.out.println(JSONObject.toJSONString(saveOrUpdate)); +// TargetExamineSaveOrUpdate saveOrUpdate = new TargetExamineSaveOrUpdate(); +// saveOrUpdate.setDelIds("1,2"); +// +// +// List<TargetExamine> examineList = Lists.newArrayList(); +// TargetExamine item = new TargetExamine(); +// item.setTargetDivideDetailId(1L); +// item.setUploadValue("2"); +// item.setUploadDate(new Timestamp(new java.util.Date().getTime())); +// item.setExamineResult(1); +// item.setExaminePersonId(0L); +// item.setExamineDate(new Timestamp(new java.util.Date().getTime())); +// examineList.add(item); +// saveOrUpdate.setExamineList(examineList); +// System.out.println(JSONObject.toJSONString(saveOrUpdate)); } } \ No newline at end of file diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetMngController.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetMngController.java index d0e84d5..d7bfeff 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetMngController.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetMngController.java @@ -74,7 +74,7 @@ PageUtils.checkCheck(pageQuery); return this.targetMngService.queryAll(pageQuery); } - + /** * 通过主键查询单条数据 @@ -137,7 +137,7 @@ Map<String,String> map = new LinkedHashMap<>(); map.put("1","安全目标指标"); map.put("2","目标指标编号"); - map.put("3","指标类型 1:年指标 2:月指标"); + map.put("3","指标类型 1:年指标 2:月指标 3:半年 4:季度"); map.put("4","年度"); map.put("5","指标值"); map.put("6","指标级别 1:公司级 2:部门分厂级 3:工段班组级"); @@ -217,12 +217,22 @@ */ @PostMapping(value = "/checkAndSubimt/list") public ResultVO list(Authentication authentication, @RequestBody PageQuery<TargetCheckAndSubmitQueryCriteria> pageQuery){ - if(pageQuery.getSearchParams().getTargetType() == null){ + if(pageQuery.getSearchParams().getRelateType() == null){ return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL,"缺少targetType"); } PageUtils.checkCheck(pageQuery); ContextCacheUser currentUser = (ContextCacheUser) authentication.getPrincipal(); return this.targetMngService.queryAll(currentUser.getUid(),pageQuery); + } + + /** + * 统计 + * + * @return 删除结果 + */ + @GetMapping(value = "/statistics") + public ResultVO statistics(TargetMngQueryCriteria criteria) { + return new ResultVO<>(ResultCodes.OK,this.targetMngService.statistics(criteria)); } @@ -240,4 +250,4 @@ System.out.println(JSONObject.toJSONString(mng)); } -} \ No newline at end of file +} diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetTypeController.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetTypeController.java new file mode 100644 index 0000000..ddb716c --- /dev/null +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetTypeController.java @@ -0,0 +1,105 @@ +package com.gkhy.safePlatform.targetDuty.controller; + + + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.gkhy.safePlatform.targetDuty.entity.TargetType; +import com.gkhy.safePlatform.targetDuty.service.TargetTypeService; +import org.springframework.web.bind.annotation.*; +import com.gkhy.safePlatform.commons.query.PageQuery; +import com.gkhy.safePlatform.commons.utils.PageUtils; +import com.gkhy.safePlatform.commons.vo.ResultVO; +import com.gkhy.safePlatform.commons.enums.ResultCodes; +import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetTypeQueryCriteria; + +import java.util.Arrays; +import java.util.stream.Collectors; +import javax.annotation.Resource; +import java.io.Serializable; +import java.util.List; + +/** + * 目标分类(TargetType)表控制层 + * + * @author xurui + * @since 2022-08-17 10:20:01 + */ +@RestController +@RequestMapping("targetType") +public class TargetTypeController { + /** + * 服务对象 + */ + @Resource + private TargetTypeService targetTypeService; + + /** + * 分页查询所有数据 + * + * @param pageQuery 查询实体 + * @return 所有数据 + */ + @PostMapping(value = "/page/list") + public ResultVO selectAll(@RequestBody PageQuery<TargetTypeQueryCriteria> pageQuery){ + PageUtils.checkCheck(pageQuery); + return this.targetTypeService.queryAll(pageQuery); + } + + + + /** + * 查询所有数据 + * + * @param criteria 查询实体 + * @return 所有数据 + */ + @PostMapping(value = "/page/listAll") + public ResultVO listAll(@RequestBody TargetTypeQueryCriteria criteria){ + return new ResultVO<>(ResultCodes.OK,this.targetTypeService.queryAll(criteria)); + } + + /** + * 通过主键查询单条数据 + * + * @param id 主键 + * @return 单条数据 + */ + @GetMapping(value = "/selectOne/{id}") + public ResultVO selectOne(@PathVariable Serializable id) { + return new ResultVO<>(ResultCodes.OK,this.targetTypeService.getById(id)); + } + + /** + * 新增或者修改数据 + * + * @param targetType 实体对象 + * @return 修改结果 + */ + @PostMapping(value = "/addOrUpdate") + public ResultVO update(@RequestBody TargetType targetType) { + if (targetType.getId() == null) { + return new ResultVO<>(ResultCodes.OK,targetTypeService.save(targetType)); + } else { + targetTypeService.update(targetType,new UpdateWrapper<TargetType>().eq("id",targetType.getId())); + return new ResultVO<>(ResultCodes.OK); + } + } + + /** + * 删除数据 + * + * @param ids 主键结合 + * @return 删除结果 + */ + @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); + this.targetTypeService.removeByIds(idList); + return new ResultVO<>(ResultCodes.OK); + } +} \ No newline at end of file diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetDivideDetail.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetDivideDetail.java index 77f17d2..d28e720 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetDivideDetail.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetDivideDetail.java @@ -1,18 +1,17 @@ package com.gkhy.safePlatform.targetDuty.entity; import java.sql.Timestamp; - -import com.fasterxml.jackson.annotation.JsonFormat; import com.gkhy.safePlatform.targetDuty.entity.BaseDomain; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.IdType; +import com.fasterxml.jackson.annotation.JsonFormat; /** * 目标指标分解详情(TargetDivideDetail)表实体类 * * @author xurui - * @since 2022-08-03 09:25:40 + * @since 2022-08-17 11:22:35 */ @SuppressWarnings("serial") @TableName("target_divide_detail") @@ -30,7 +29,7 @@ } //关联的目标指标/外键 - private Long targetId; + private Long targetId; public Long getTargetId() { return targetId; @@ -40,7 +39,7 @@ this.targetId = targetId; } //考核指标值 - private String value; + private String value; public String getValue() { return value; @@ -50,8 +49,8 @@ this.value = value; } //制定日期 - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") - private Timestamp makeDate; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Timestamp makeDate; public Timestamp getMakeDate() { return makeDate; @@ -61,7 +60,7 @@ this.makeDate = makeDate; } //责任部门/外键 - private Long dutyDepartmentId; + private Long dutyDepartmentId; public Long getDutyDepartmentId() { return dutyDepartmentId; @@ -71,7 +70,7 @@ this.dutyDepartmentId = dutyDepartmentId; } //制定人部门/外键 - private Long makerDepartmentId; + private Long makerDepartmentId; public Long getMakerDepartmentId() { return makerDepartmentId; @@ -81,7 +80,7 @@ this.makerDepartmentId = makerDepartmentId; } //上报人/外键 - private Long commitPersonId; + private Long commitPersonId; public Long getCommitPersonId() { return commitPersonId; @@ -91,7 +90,7 @@ this.commitPersonId = commitPersonId; } //上报人名称 - private String commitPersonName; + private String commitPersonName; public String getCommitPersonName() { return commitPersonName; @@ -100,5 +99,45 @@ public void setCommitPersonName(String commitPersonName) { this.commitPersonName = commitPersonName; } + //目标分类/外键 + private Long targetTypeId; + + public Long getTargetTypeId() { + return targetTypeId; + } + + public void setTargetTypeId(Long targetTypeId) { + this.targetTypeId = targetTypeId; + } + //责任人/外键 + private Long dutyPersonId; + + public Long getDutyPersonId() { + return dutyPersonId; + } + + public void setDutyPersonId(Long dutyPersonId) { + this.dutyPersonId = dutyPersonId; + } + //责任人名称 + private String dutyPersonName; + + public String getDutyPersonName() { + return dutyPersonName; + } + + public void setDutyPersonName(String dutyPersonName) { + this.dutyPersonName = dutyPersonName; + } + //计划措施 + private String planDesc; + + public String getPlanDesc() { + return planDesc; + } + + public void setPlanDesc(String planDesc) { + this.planDesc = planDesc; + } } \ No newline at end of file diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetExamine.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetExamine.java index f9cbda8..069c1a2 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetExamine.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetExamine.java @@ -11,7 +11,7 @@ * 安全目标考核(TargetExamine)表实体类 * * @author xurui - * @since 2022-08-12 08:07:53 + * @since 2022-08-18 16:27:12 */ @SuppressWarnings("serial") @TableName("target_examine") @@ -28,56 +28,15 @@ this.id = id; } - //关联的目标指标/外键 - private Long targetId; + //关联的目标分解/外键 + private Long targetDivideDetailId; - public Long getTargetId() { - return targetId; + public Long getTargetDivideDetailId() { + return targetDivideDetailId; } - public void setTargetId(Long targetId) { - this.targetId = targetId; - } - //责任部门id/外键 - private Long dutyDepartmentId; - - public Long getDutyDepartmentId() { - return dutyDepartmentId; - } - - public void setDutyDepartmentId(Long dutyDepartmentId) { - this.dutyDepartmentId = dutyDepartmentId; - } - //考核指标 - private String examineValue; - - public String getExamineValue() { - return examineValue; - } - - public void setExamineValue(String examineValue) { - this.examineValue = examineValue; - } - //制定部门id/外键 - private Long makerDepartmentId; - - public Long getMakerDepartmentId() { - return makerDepartmentId; - } - - public void setMakerDepartmentId(Long makerDepartmentId) { - this.makerDepartmentId = makerDepartmentId; - } - //制定日期 - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") - private Timestamp makeDate; - - public Timestamp getMakeDate() { - return makeDate; - } - - public void setMakeDate(Timestamp makeDate) { - this.makeDate = makeDate; + public void setTargetDivideDetailId(Long targetDivideDetailId) { + this.targetDivideDetailId = targetDivideDetailId; } //上报值 private String uploadValue; diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetType.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetType.java new file mode 100644 index 0000000..0077802 --- /dev/null +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetType.java @@ -0,0 +1,52 @@ +package com.gkhy.safePlatform.targetDuty.entity; + +import java.sql.Timestamp; +import com.gkhy.safePlatform.targetDuty.entity.BaseDomain; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.IdType; +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * 目标分类(TargetType)表实体类 + * + * @author xurui + * @since 2022-08-17 10:26:39 + */ +@SuppressWarnings("serial") +@TableName("target_type") +public class TargetType extends BaseDomain { + + + @TableId(type = IdType.AUTO) + private Long id; + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + //分类名称 + private String typeName; + + public String getTypeName() { + return typeName; + } + + public void setTypeName(String typeName) { + this.typeName = typeName; + } + //说明 + private String memo; + + public String getMemo() { + return memo; + } + + public void setMemo(String memo) { + this.memo = memo; + } + +} \ No newline at end of file diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/enums/TargetDutyResultCodes.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/enums/TargetDutyResultCodes.java index 26dd754..e268017 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/enums/TargetDutyResultCodes.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/enums/TargetDutyResultCodes.java @@ -13,6 +13,7 @@ APPROVE_STATUS_NULL("A1004","审批状态不可为空"), APPROVE_NOT_EXIST("A1005" , "审批记录不存在"), + ERROR("A3000", "未知错误"); private String code; diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/excepiton/TargetDutyException.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/excepiton/TargetDutyException.java index 4968b0a..f92147f 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/excepiton/TargetDutyException.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/excepiton/TargetDutyException.java @@ -13,6 +13,11 @@ this.message = error.getDesc(); } + public TargetDutyException(String message) { + super(message); + this.code = "A3000"; + } + public TargetDutyException(String code, String message) { super(message); this.code = code; diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetExamineQueryCriteria.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetExamineQueryCriteria.java index f0c9021..60d22be 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetExamineQueryCriteria.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetExamineQueryCriteria.java @@ -4,15 +4,51 @@ import com.gkhy.safePlatform.targetDuty.annotation.Query; public class TargetExamineQueryCriteria { - //关联的目标指标/外键 + //安全目标指标 + @Query(type = Query.Type.INNER_LIKE) + private String qName; + //目标指标编号 + @Query(type = Query.Type.INNER_LIKE) + private String indexNum; + //指标类型 1:年指标 2:月指标 3:半年 4:季度 @Query() - private Long targetId; - //关联的目标指标/外键 - public Long getTargetId() { - return targetId; + private Integer targetType; + //分解状态 1:已分解 2:未分解 + @Query() + private Integer divideStatus; + + public Integer getDivideStatus() { + return divideStatus; } - public void setTargetId(Long targetId) { - this.targetId = targetId; + public void setDivideStatus(Integer divideStatus) { + this.divideStatus = divideStatus; + } + + //安全目标指标 + + public String getqName() { + return qName; + } + + public void setqName(String qName) { + this.qName = qName; + } + + //目标指标编号 + public String getIndexNum() { + return indexNum; + } + + public void setIndexNum(String indexNum) { + this.indexNum = indexNum; + } + //指标类型 1:年指标 2:月指标 + public Integer getTargetType() { + return targetType; + } + + public void setTargetType(Integer targetType) { + this.targetType = targetType; } } \ No newline at end of file diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetExamineSaveOrUpdate.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetExamineSaveOrUpdate.java index f295e23..41a2ec1 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetExamineSaveOrUpdate.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetExamineSaveOrUpdate.java @@ -2,16 +2,16 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; import com.gkhy.safePlatform.targetDuty.entity.ExamineItem; import com.gkhy.safePlatform.targetDuty.entity.TargetExamine; import java.io.Serializable; +import java.sql.Timestamp; import java.util.ArrayList; import java.util.List; public class TargetExamineSaveOrUpdate implements Serializable { - - @TableId(type = IdType.AUTO) private Long id; public Long getId() { @@ -22,25 +22,110 @@ this.id = id; } - //关联的考核数据列表 - private List<TargetExamine> examineList = new ArrayList<>(); + //关联的目标分解/外键 + private Long targetDivideDetailId; - public List<TargetExamine> getExamineList() { - return examineList; + public Long getTargetDivideDetailId() { + return targetDivideDetailId; } - public void setExamineList(List<TargetExamine> examineList) { - this.examineList = examineList; + public void setTargetDivideDetailId(Long targetDivideDetailId) { + this.targetDivideDetailId = targetDivideDetailId; + } + //上报值 + private String uploadValue; + + public String getUploadValue() { + return uploadValue; } - //要删除的id集合,多个用逗号隔开 - private String delIds; + public void setUploadValue(String uploadValue) { + this.uploadValue = uploadValue; + } + //上报时间 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Timestamp uploadDate; - public String getDelIds() { - return delIds; + public Timestamp getUploadDate() { + return uploadDate; } - public void setDelIds(String delIds) { - this.delIds = delIds; + public void setUploadDate(Timestamp uploadDate) { + this.uploadDate = uploadDate; } + //考核结果 1:合格 2:不合格 + private Integer examineResult; + + public Integer getExamineResult() { + return examineResult; + } + + public void setExamineResult(Integer examineResult) { + this.examineResult = examineResult; + } + //考核人ID/外键 + private Long examinePersonId; + + public Long getExaminePersonId() { + return examinePersonId; + } + + public void setExaminePersonId(Long examinePersonId) { + this.examinePersonId = examinePersonId; + } + //考核人名称 + private String examinePersonName; + + public String getExaminePersonName() { + return examinePersonName; + } + + public void setExaminePersonName(String examinePersonName) { + this.examinePersonName = examinePersonName; + } + //考核时间 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Timestamp examineDate; + + public Timestamp getExamineDate() { + return examineDate; + } + + public void setExamineDate(Timestamp examineDate) { + this.examineDate = examineDate; + } + + +// +// @TableId(type = IdType.AUTO) +// private Long id; +// public Long getId() { +// return id; +// } +// +// public void setId(Long id) { +// this.id = id; +// } +// +// //关联的考核数据列表 +// private List<TargetExamine> examineList = new ArrayList<>(); +// +// public List<TargetExamine> getExamineList() { +// return examineList; +// } +// +// public void setExamineList(List<TargetExamine> examineList) { +// this.examineList = examineList; +// } +// +// //要删除的id集合,多个用逗号隔开 +// private String delIds; +// +// public String getDelIds() { +// return delIds; +// } +// +// public void setDelIds(String delIds) { +// this.delIds = delIds; +// } } \ No newline at end of file diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetMngQueryCriteria.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetMngQueryCriteria.java index 19af780..6e49053 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetMngQueryCriteria.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetMngQueryCriteria.java @@ -10,7 +10,7 @@ //目标指标编号 @Query(type = Query.Type.INNER_LIKE) private String indexNum; - //指标类型 1:年指标 2:月指标 + //指标类型 1:年指标 2:月指标 3:半年 4:季度 @Query() private Integer targetType; //分解状态 1:已分解 2:未分解 diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetTypeQueryCriteria.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetTypeQueryCriteria.java new file mode 100644 index 0000000..289edee --- /dev/null +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetTypeQueryCriteria.java @@ -0,0 +1,63 @@ +package com.gkhy.safePlatform.targetDuty.model.dto.req; + +import java.sql.Timestamp; +import com.gkhy.safePlatform.targetDuty.annotation.Query; + +public class TargetTypeQueryCriteria { + + @Query() + private Long id; + //分类名称 + @Query(type = Query.Type.INNER_LIKE) + private String typeName; + //说明 + @Query() + private String memo; + + @Query() + private Timestamp createTime; + + @Query() + private Timestamp updateTime; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + //分类名称 + public String getTypeName() { + return typeName; + } + + public void setTypeName(String typeName) { + this.typeName = typeName; + } + //说明 + public String getMemo() { + return memo; + } + + public void setMemo(String memo) { + this.memo = memo; + } + + public Timestamp getCreateTime() { + return createTime; + } + + public void setCreateTime(Timestamp createTime) { + this.createTime = createTime; + } + + public Timestamp getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Timestamp updateTime) { + this.updateTime = updateTime; + } +} \ No newline at end of file diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetApproveDivideDetailDto.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetApproveDivideDetailDto.java new file mode 100644 index 0000000..3b0e4b9 --- /dev/null +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetApproveDivideDetailDto.java @@ -0,0 +1,160 @@ +package com.gkhy.safePlatform.targetDuty.model.dto.resp; + +import java.io.Serializable; +import java.sql.Timestamp; + +public class TargetApproveDivideDetailDto implements Serializable { + + private Long id; + //关联的目标指标/外键 + private Long targetId; + //考核指标值 + private String value; + //制定日期 + private Timestamp makeDate; + //责任部门/外键 + private Long dutyDepartmentId; + //制定人部门/外键 + private Long makerDepartmentId; + //上报人/外键 + private Long commitPersonId; + + private Timestamp createTime; + + private Timestamp updateTime; + + //上报人名称 + private String commitPersonName; + + //责任部门名称 + private String dutyDepartmentName; + //制定人部门名称 + private String makerDepartmentName; + + private String personId; + + private String personName; + + //上报值 + private String commitValue; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getTargetId() { + return targetId; + } + + public void setTargetId(Long targetId) { + this.targetId = targetId; + } + + public String getValue() { + return value; + } + + public void setValue(String value) { + this.value = value; + } + + public Timestamp getMakeDate() { + return makeDate; + } + + public void setMakeDate(Timestamp makeDate) { + this.makeDate = makeDate; + } + + public Long getDutyDepartmentId() { + return dutyDepartmentId; + } + + public void setDutyDepartmentId(Long dutyDepartmentId) { + this.dutyDepartmentId = dutyDepartmentId; + } + + public Long getMakerDepartmentId() { + return makerDepartmentId; + } + + public void setMakerDepartmentId(Long makerDepartmentId) { + this.makerDepartmentId = makerDepartmentId; + } + + public Long getCommitPersonId() { + return commitPersonId; + } + + public void setCommitPersonId(Long commitPersonId) { + this.commitPersonId = commitPersonId; + } + + public Timestamp getCreateTime() { + return createTime; + } + + public void setCreateTime(Timestamp createTime) { + this.createTime = createTime; + } + + public Timestamp getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Timestamp updateTime) { + this.updateTime = updateTime; + } + + public String getCommitPersonName() { + return commitPersonName; + } + + public void setCommitPersonName(String commitPersonName) { + this.commitPersonName = commitPersonName; + } + + public String getDutyDepartmentName() { + return dutyDepartmentName; + } + + public void setDutyDepartmentName(String dutyDepartmentName) { + this.dutyDepartmentName = dutyDepartmentName; + } + + public String getMakerDepartmentName() { + return makerDepartmentName; + } + + public void setMakerDepartmentName(String makerDepartmentName) { + this.makerDepartmentName = makerDepartmentName; + } + + public String getPersonId() { + return personId; + } + + public void setPersonId(String personId) { + this.personId = personId; + } + + public String getPersonName() { + return personName; + } + + public void setPersonName(String personName) { + this.personName = personName; + } + + public String getCommitValue() { + return commitValue; + } + + public void setCommitValue(String commitValue) { + this.commitValue = commitValue; + } +} \ No newline at end of file diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDivideDetailDto.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDivideDetailDto.java index f7e4147..3cca7bf 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDivideDetailDto.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDivideDetailDto.java @@ -1,5 +1,7 @@ package com.gkhy.safePlatform.targetDuty.model.dto.resp; +import com.fasterxml.jackson.annotation.JsonFormat; + import java.sql.Timestamp; import java.io.Serializable; @@ -30,6 +32,60 @@ private String dutyDepartmentName; //制定人部门名称 private String makerDepartmentName; + + //目标分类/外键 + private Long targetTypeId; + + public Long getTargetTypeId() { + return targetTypeId; + } + + public void setTargetTypeId(Long targetTypeId) { + this.targetTypeId = targetTypeId; + } + + //目标分类名称 + private String targetTypeName; + + public String getTargetTypeName() { + return targetTypeName; + } + + public void setTargetTypeName(String targetTypeName) { + this.targetTypeName = targetTypeName; + } + + //责任人/外键 + private Long dutyPersonId; + + public Long getDutyPersonId() { + return dutyPersonId; + } + + public void setDutyPersonId(Long dutyPersonId) { + this.dutyPersonId = dutyPersonId; + } + //责任人名称 + private String dutyPersonName; + + public String getDutyPersonName() { + return dutyPersonName; + } + + public void setDutyPersonName(String dutyPersonName) { + this.dutyPersonName = dutyPersonName; + } + //计划措施 + private String planDesc; + + public String getPlanDesc() { + return planDesc; + } + + public void setPlanDesc(String planDesc) { + this.planDesc = planDesc; + } + public String getDutyDepartmentName() { return dutyDepartmentName; @@ -126,4 +182,47 @@ public void setUpdateTime(Timestamp updateTime) { this.updateTime = updateTime; } + + //考核结果 1:合格 2:不合格 + private Integer examineResult; + + public Integer getExamineResult() { + return examineResult; + } + + public void setExamineResult(Integer examineResult) { + this.examineResult = examineResult; + } + + //考核人ID/外键 + private Long examinePersonId; + + public Long getExaminePersonId() { + return examinePersonId; + } + + public void setExaminePersonId(Long examinePersonId) { + this.examinePersonId = examinePersonId; + } + //考核人名称 + private String examinePersonName; + + public String getExaminePersonName() { + return examinePersonName; + } + + public void setExaminePersonName(String examinePersonName) { + this.examinePersonName = examinePersonName; + } + //考核时间 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Timestamp examineDate; + + public Timestamp getExamineDate() { + return examineDate; + } + + public void setExamineDate(Timestamp examineDate) { + this.examineDate = examineDate; + } } \ No newline at end of file diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDutyWorkApproveDto.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDutyWorkApproveDto.java index 7fe201d..2ff16d1 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDutyWorkApproveDto.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDutyWorkApproveDto.java @@ -4,6 +4,8 @@ import java.sql.Timestamp; import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; public class TargetDutyWorkApproveDto implements Serializable { @@ -47,6 +49,19 @@ //排序 private Integer sort; + + //目标指标分解列表 + private List<TargetApproveDivideDetailDto> targetDivideDetailList = new ArrayList<>(); + + public List<TargetApproveDivideDetailDto> getTargetDivideDetailList() { + return targetDivideDetailList; + } + + public void setTargetDivideDetailList(List<TargetApproveDivideDetailDto> targetDivideDetailList) { + this.targetDivideDetailList = targetDivideDetailList; + } + + public Long getId() { return id; diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetExamineDto.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetExamineDto.java index 2505295..9065579 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetExamineDto.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetExamineDto.java @@ -1,5 +1,8 @@ package com.gkhy.safePlatform.targetDuty.model.dto.resp; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; import com.gkhy.safePlatform.targetDuty.entity.TargetExamine; import java.sql.Timestamp; @@ -8,6 +11,7 @@ import java.util.List; public class TargetExamineDto implements Serializable { + private Long id; //安全目标指标 private String qName; @@ -17,8 +21,31 @@ private String year; //指标值 private String value; - //关联的考核数据列表 - private List<TargetExamineDivideDto> examineList = new ArrayList<>(); + //指标级别 1:公司级 2:部门分厂级 3:工段班组级 + private Integer level; + //完成期限 + private Timestamp completeDate; + //备注信息 + private String memo; + //指标类型 1:年指标 2:月指标 + private Integer targetType; + //分解状态 1:已分解 2:未分解 + private Integer divideStatus; + + private Timestamp createTime; + + private Timestamp updateTime; + + //目标指标分解列表 + private List<TargetDivideDetailDto> targetDivideDetailList = new ArrayList<>(); + + public List<TargetDivideDetailDto> getTargetDivideDetailList() { + return targetDivideDetailList; + } + + public void setTargetDivideDetailList(List<TargetDivideDetailDto> targetDivideDetailList) { + this.targetDivideDetailList = targetDivideDetailList; + } public Long getId() { return id; @@ -36,6 +63,7 @@ this.qName = qName; } + //目标指标编号 public String getIndexNum() { return indexNum; } @@ -43,7 +71,7 @@ public void setIndexNum(String indexNum) { this.indexNum = indexNum; } - + //年度 public String getYear() { return year; } @@ -51,7 +79,7 @@ public void setYear(String year) { this.year = year; } - + //指标值 public String getValue() { return value; } @@ -59,12 +87,60 @@ public void setValue(String value) { this.value = value; } - - public List<TargetExamineDivideDto> getExamineList() { - return examineList; + //指标级别 1:公司级 2:部门分厂级 3:工段班组级 + public Integer getLevel() { + return level; } - public void setExamineList(List<TargetExamineDivideDto> examineList) { - this.examineList = examineList; + public void setLevel(Integer level) { + this.level = level; + } + //完成期限 + public Timestamp getCompleteDate() { + return completeDate; + } + + public void setCompleteDate(Timestamp completeDate) { + this.completeDate = completeDate; + } + //备注信息 + public String getMemo() { + return memo; + } + + public void setMemo(String memo) { + this.memo = memo; + } + //指标类型 1:年指标 2:月指标 + public Integer getTargetType() { + return targetType; + } + + public void setTargetType(Integer targetType) { + this.targetType = targetType; + } + //分解状态 1:已分解 2:未分解 + public Integer getDivideStatus() { + return divideStatus; + } + + public void setDivideStatus(Integer divideStatus) { + this.divideStatus = divideStatus; + } + + public Timestamp getCreateTime() { + return createTime; + } + + public void setCreateTime(Timestamp createTime) { + this.createTime = createTime; + } + + public Timestamp getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Timestamp updateTime) { + this.updateTime = updateTime; } } \ No newline at end of file diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetTypeDto.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetTypeDto.java new file mode 100644 index 0000000..ea0219e --- /dev/null +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetTypeDto.java @@ -0,0 +1,62 @@ +package com.gkhy.safePlatform.targetDuty.model.dto.resp; + +import java.sql.Timestamp; +import java.io.Serializable; +import java.sql.Timestamp; +import com.fasterxml.jackson.annotation.JsonFormat; + +public class TargetTypeDto implements Serializable { + + private Long id; + //分类名称 + private String typeName; + //说明 + private String memo; + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Timestamp createTime; + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Timestamp updateTime; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + //分类名称 + public String getTypeName() { + return typeName; + } + + public void setTypeName(String typeName) { + this.typeName = typeName; + } + //说明 + public String getMemo() { + return memo; + } + + public void setMemo(String memo) { + this.memo = memo; + } + + public Timestamp getCreateTime() { + return createTime; + } + + public void setCreateTime(Timestamp createTime) { + this.createTime = createTime; + } + + public Timestamp getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Timestamp updateTime) { + this.updateTime = updateTime; + } +} \ No newline at end of file diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/WorkApproveRelateDesc.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/WorkApproveRelateDesc.java new file mode 100644 index 0000000..961dc8e --- /dev/null +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/WorkApproveRelateDesc.java @@ -0,0 +1,52 @@ +package com.gkhy.safePlatform.targetDuty.model.dto.resp; + +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.io.Serializable; +import java.sql.Timestamp; +import java.util.ArrayList; +import java.util.List; + +public class WorkApproveRelateDesc implements Serializable { + + private Long id; + + private String personId; + + private String personName; + + //上报值 + private String value; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getPersonId() { + return personId; + } + + public void setPersonId(String personId) { + this.personId = personId; + } + + public String getPersonName() { + return personName; + } + + public void setPersonName(String personName) { + this.personName = personName; + } + + public String getValue() { + return value; + } + + public void setValue(String value) { + this.value = value; + } +} \ No newline at end of file diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetMngRepository.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetMngRepository.java index 424f49b..45d375e 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetMngRepository.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetMngRepository.java @@ -2,7 +2,10 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.gkhy.safePlatform.targetDuty.entity.TargetMng; +import org.apache.ibatis.annotations.Select; import org.springframework.stereotype.Repository; + +import java.util.Map; /** * 目标指标(TargetMng)表数据库访问层 @@ -12,5 +15,20 @@ */ @Repository public interface TargetMngRepository extends BaseMapper<TargetMng> { + @Select("<script>select COUNT(1) from target_mng where 1=1 " + + "<if test =\"divideStatus !='' and divideStatus !=null\">and divide_status = #{divideStatus}</if> " + + "<if test =\"targetType !='' and targetType !=null\">and target_type = #{targetType}</if>" + + "<if test =\"qName !='' and qName !=null\">and q_name = #{qName}</if>" + + "<if test =\"indexNum !='' and indexNum !=null\">and index_num = #{indexNum}</if>" + + "</script> ") + Integer selectTotal(Map<String, Object> beanToMap); + @Select("<script>select COUNT(target_id) from target_divide_detail a INNER JOIN target_mng b on a.target_id = b.id \n" + + "WHERE a.id not in (select target_divide_detail_id from target_examine where examine_result = 1)\n" + + "<if test =\"divideStatus !='' and divideStatus !=null\">and b.divide_status = #{divideStatus}</if> " + + "<if test =\"targetType !='' and targetType !=null\">and b.target_type = #{targetType}</if>" + + "<if test =\"qName !='' and qName !=null\">and b.q_name = #{qName}</if>" + + "<if test =\"indexNum !='' and indexNum !=null\">and b.index_num = #{indexNum}</if>" + + "GROUP BY a.target_id</script> ") + Integer selectNoComplete(Map<String, Object> beanToMap); } \ No newline at end of file diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetTypeRepository.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetTypeRepository.java new file mode 100644 index 0000000..cdd5690 --- /dev/null +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetTypeRepository.java @@ -0,0 +1,16 @@ +package com.gkhy.safePlatform.targetDuty.repository; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.gkhy.safePlatform.targetDuty.entity.TargetType; +import org.springframework.stereotype.Repository; + +/** + * 目标分类(TargetType)表数据库访问层 + * + * @author xurui + * @since 2022-08-17 10:26:39 + */ +@Repository +public interface TargetTypeRepository extends BaseMapper<TargetType> { + +} \ No newline at end of file diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetDutyWorkApproveService.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetDutyWorkApproveService.java index aa76624..c82ea09 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetDutyWorkApproveService.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetDutyWorkApproveService.java @@ -6,7 +6,9 @@ import com.gkhy.safePlatform.commons.vo.ResultVO; import com.gkhy.safePlatform.commons.query.PageQuery; import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetDutyWorkApproveQueryCriteria; +import com.gkhy.safePlatform.targetDuty.model.dto.resp.TargetDutyWorkApproveDto; +import java.io.Serializable; import java.util.List; @@ -26,4 +28,6 @@ void addInfo(ContextCacheUser currentUser, TargetDutyWorkApprove targetDutyWorkApprove); ResultVO listCheckData(PageQuery<TargetDutyWorkApproveQueryCriteria> pageQuery); + + TargetDutyWorkApproveDto selectOne(Serializable id); } \ No newline at end of file diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetExamineService.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetExamineService.java index 1b8fa07..658b287 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetExamineService.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetExamineService.java @@ -21,5 +21,5 @@ List<TargetExamine> queryAll(TargetExamineQueryCriteria criteria); - void addOrUpdate(TargetExamineSaveOrUpdate infoDto); +// void addOrUpdate(TargetExamineSaveOrUpdate infoDto); } \ No newline at end of file diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetMngService.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetMngService.java index 4a78422..90e01db 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetMngService.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetMngService.java @@ -26,4 +26,6 @@ Object selectOne(Serializable id); ResultVO queryAll(Long uid, PageQuery<TargetCheckAndSubmitQueryCriteria> pageQuery); + + Object statistics(TargetMngQueryCriteria criteria); } \ No newline at end of file diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetTypeService.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetTypeService.java new file mode 100644 index 0000000..cbb7b85 --- /dev/null +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetTypeService.java @@ -0,0 +1,23 @@ +package com.gkhy.safePlatform.targetDuty.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.gkhy.safePlatform.targetDuty.entity.TargetType; +import com.gkhy.safePlatform.commons.vo.ResultVO; +import com.gkhy.safePlatform.commons.query.PageQuery; +import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetTypeQueryCriteria; + +import java.util.List; + + +/** + * 目标分类(TargetType)表服务接口 + * + * @author xurui + * @since 2022-08-17 10:20:01 + */ +public interface TargetTypeService extends IService<TargetType> { + ResultVO queryAll(PageQuery<TargetTypeQueryCriteria> pageQuery); + + List<TargetType> queryAll(TargetTypeQueryCriteria criteria); + +} \ No newline at end of file diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/ExamineMngServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/ExamineMngServiceImpl.java index 229f028..d4b353d 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/ExamineMngServiceImpl.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/ExamineMngServiceImpl.java @@ -16,6 +16,7 @@ import com.gkhy.safePlatform.targetDuty.service.CommonService; import com.gkhy.safePlatform.targetDuty.service.ExamineMngService; import com.gkhy.safePlatform.targetDuty.service.ExamineTemplateService; +import com.sun.org.apache.bcel.internal.generic.IF_ACMPEQ; import org.springframework.stereotype.Service; import org.springframework.beans.factory.annotation.Autowired; import com.gkhy.safePlatform.commons.enums.ResultCodes; @@ -55,8 +56,8 @@ @Resource private CommonService commonService; - - + + @Override public ResultVO queryAll(PageQuery<ExamineMngQueryCriteria> pageQuery) { Long pageIndex = pageQuery.getPageIndex(); @@ -87,19 +88,21 @@ List<CurrentExamineDto> list = JSONObject.parseArray( dto.getNumberDetailJson(), CurrentExamineDto.class); List<Long> idList = list.stream().map(CurrentExamineDto::getId).collect(Collectors.toList()); - List<ExamineItem> itemList = examineItemRepository.selectBatchIds(idList); - Map<Long,ExamineItem> itemMap = itemList.stream().collect( - Collectors.toMap(ExamineItem::getId, Function.identity(),(k1, k2)->k1)); + if (!idList.isEmpty()){ + List<ExamineItem> itemList = examineItemRepository.selectBatchIds(idList); + Map<Long,ExamineItem> itemMap = itemList.stream().collect( + Collectors.toMap(ExamineItem::getId, Function.identity(),(k1, k2)->k1)); - if(itemMap != null){ - list.forEach(f->{ - ExamineItem item = itemMap.get(f.getId()); - if(item != null){ - f.setItemDetail(item.getItemDetail()); - f.setContent(item.getContent()); - f.setJudgeStandard(item.getJudgeStandard()); - } - }); + if(itemMap != null){ + list.forEach(f->{ + ExamineItem item = itemMap.get(f.getId()); + if(item != null){ + f.setItemDetail(item.getItemDetail()); + f.setContent(item.getContent()); + f.setJudgeStandard(item.getJudgeStandard()); + } + }); + } } dto.setCurrentExamineDtoList(list); }); @@ -161,4 +164,4 @@ return dto; } -} \ No newline at end of file +} diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDivideDetailServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDivideDetailServiceImpl.java index 5c6b9c5..287af74 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDivideDetailServiceImpl.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDivideDetailServiceImpl.java @@ -5,6 +5,7 @@ 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.targetDuty.entity.ExamineItem; import com.gkhy.safePlatform.targetDuty.entity.TargetMng; import com.gkhy.safePlatform.targetDuty.enums.TargetDutyResultCodes; import com.gkhy.safePlatform.targetDuty.excepiton.TargetDutyException; @@ -96,8 +97,15 @@ list.forEach(f->{f.setTargetId(infoDto.getTargetId());}); this.saveOrUpdateBatch(list); - //设置状态为 《已分解》 - targetMng.setDivideStatus(1); + //查询最新的分解数量,如果>0,设置状态为 《已分解》,否则设置为未分解 + int divideStatus = 2; + if(infoDto.getTargetId() != null){ + long number = this.count(new QueryWrapper<TargetDivideDetail>().eq("target_id",infoDto.getTargetId())); + if(number > 0){ + divideStatus = 1; + } + } + targetMng.setDivideStatus(divideStatus); targetMngRepository.update(targetMng,new UpdateWrapper<TargetMng>().eq("id",targetMng.getId())); diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDutyWorkApproveServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDutyWorkApproveServiceImpl.java index f6594b6..14f41c7 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDutyWorkApproveServiceImpl.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDutyWorkApproveServiceImpl.java @@ -1,13 +1,19 @@ package com.gkhy.safePlatform.targetDuty.service.impl; +import com.alibaba.fastjson.JSONObject; 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.co.ContextCacheUser; +import com.gkhy.safePlatform.targetDuty.entity.ExamineItem; +import com.gkhy.safePlatform.targetDuty.entity.TargetDivideDetail; import com.gkhy.safePlatform.targetDuty.enums.TargetDutyResultCodes; import com.gkhy.safePlatform.targetDuty.excepiton.TargetDutyException; import com.gkhy.safePlatform.targetDuty.model.dto.resp.ListCheckDataDto; +import com.gkhy.safePlatform.targetDuty.model.dto.resp.TargetApproveDivideDetailDto; +import com.gkhy.safePlatform.targetDuty.model.dto.resp.WorkApproveRelateDesc; +import com.gkhy.safePlatform.targetDuty.repository.TargetDivideDetailRepository; import com.gkhy.safePlatform.targetDuty.repository.TargetDutyWorkApproveRepository; import com.gkhy.safePlatform.targetDuty.entity.TargetDutyWorkApprove; import com.gkhy.safePlatform.targetDuty.service.CommonService; @@ -23,10 +29,14 @@ import com.gkhy.safePlatform.targetDuty.model.dto.resp.TargetDutyWorkApproveDto; import com.gkhy.safePlatform.targetDuty.utils.QueryHelpPlus; import com.gkhy.safePlatform.commons.utils.BeanCopyUtils; +import org.springframework.util.StringUtils; import javax.annotation.Resource; +import java.io.Serializable; import java.sql.Timestamp; import java.util.*; +import java.util.function.Function; +import java.util.stream.Collectors; /** * 目标责任管理工作流审批表(TargetDutyWorkApprove)表服务实现类 @@ -42,6 +52,9 @@ @Resource private CommonService commonService; + + @Autowired + private TargetDivideDetailRepository targetDivideDetailRepository; @Override @@ -117,6 +130,10 @@ if (targetDutyWorkApprove.getRelateId()==null){ throw new TargetDutyException(TargetDutyResultCodes.APPROVE_RELATE_TYPE_NULL); } + // 关联业务json + if (!StringUtils.hasText(targetDutyWorkApprove.getRelateDesc())){ + throw new TargetDutyException("参数错误"); + } // 审批人 if (targetDutyWorkApprove.getApprovePersonId()==null){ throw new TargetDutyException(TargetDutyResultCodes.APPROVE_PERSON_NULL); @@ -174,4 +191,49 @@ ResultCodes.OK ); } + + @Override + public TargetDutyWorkApproveDto selectOne(Serializable id) { + TargetDutyWorkApprove targetDutyWorkApprove = this.getById(id); + if(targetDutyWorkApprove == null){ + return new TargetDutyWorkApproveDto(); + } + + TargetDutyWorkApproveDto dto = BeanCopyUtils.copyBean(targetDutyWorkApprove, TargetDutyWorkApproveDto.class); + + List<WorkApproveRelateDesc> relateDescList = JSONObject.parseArray(targetDutyWorkApprove.getRelateDesc(),WorkApproveRelateDesc.class); + Map<Long,WorkApproveRelateDesc> relateDescMap = relateDescList.stream() + .collect(Collectors.toMap(WorkApproveRelateDesc::getId, Function.identity(),(k1, k2)->k1)); + + // + List<TargetDivideDetail> dList = targetDivideDetailRepository.selectBatchIds(relateDescMap.keySet()); + List<TargetApproveDivideDetailDto> divideDetailList = BeanCopyUtils.copyBeanList(dList, TargetApproveDivideDetailDto.class); + + divideDetailList.forEach(f->{ + WorkApproveRelateDesc relateDesc = relateDescMap.get(f.getId()); + if(relateDesc != null){ + f.setPersonId(relateDesc.getPersonId()); + f.setPersonName(relateDesc.getPersonName()); + f.setCommitValue(relateDesc.getValue()); + } + }); + + // --------------------------- 获取部门信息----------------------- + //收集所用到的部门ID + Set<Long> collectDepIdSet = new HashSet(); + divideDetailList.forEach(f->{ + collectDepIdSet.add(f.getDutyDepartmentId()); + collectDepIdSet.add(f.getMakerDepartmentId()); + }); + //获取部门名集合 + Map<Long,String> depNameMap = commonService.getDepName(collectDepIdSet); + + divideDetailList.forEach(f->{ + f.setDutyDepartmentName(depNameMap.get(f.getDutyDepartmentId())); + f.setMakerDepartmentName(depNameMap.get(f.getMakerDepartmentId())); + }); + + dto.setTargetDivideDetailList(divideDetailList); + return dto; + } } \ No newline at end of file diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetExamineServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetExamineServiceImpl.java index 82c4d72..9031014 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetExamineServiceImpl.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetExamineServiceImpl.java @@ -4,9 +4,18 @@ 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.targetDuty.entity.TargetMng; +import com.gkhy.safePlatform.targetDuty.entity.TargetType; +import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetDivideDetailQueryCriteria; import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetExamineSaveOrUpdate; +import com.gkhy.safePlatform.targetDuty.model.dto.resp.TargetDivideDetailDto; +import com.gkhy.safePlatform.targetDuty.model.dto.resp.TargetMngDto; import com.gkhy.safePlatform.targetDuty.repository.TargetExamineRepository; import com.gkhy.safePlatform.targetDuty.entity.TargetExamine; +import com.gkhy.safePlatform.targetDuty.repository.TargetMngRepository; +import com.gkhy.safePlatform.targetDuty.repository.TargetTypeRepository; +import com.gkhy.safePlatform.targetDuty.service.CommonService; +import com.gkhy.safePlatform.targetDuty.service.TargetDivideDetailService; import com.gkhy.safePlatform.targetDuty.service.TargetExamineService; import org.springframework.stereotype.Service; import org.springframework.beans.factory.annotation.Autowired; @@ -20,8 +29,8 @@ import com.gkhy.safePlatform.commons.utils.BeanCopyUtils; import org.springframework.util.StringUtils; -import java.util.Arrays; -import java.util.List; +import javax.annotation.Resource; +import java.util.*; import java.util.stream.Collectors; /** @@ -35,18 +44,87 @@ @Autowired private TargetExamineRepository targetExamineRepository; - - - - @Override + + @Autowired + private TargetMngRepository targetMngRepository; + @Resource + private CommonService commonService; + + @Resource + private TargetDivideDetailService targetDivideDetailService; + + @Autowired + private TargetTypeRepository targetTypeRepository; + + @Override public ResultVO queryAll(PageQuery<TargetExamineQueryCriteria> pageQuery) { Long pageIndex = pageQuery.getPageIndex(); Long pageSize = pageQuery.getPageSize(); - IPage<TargetExamine> page = new Page<>(pageIndex, pageSize); + IPage<TargetMng> page = new Page<>(pageIndex, pageSize); - page = baseMapper.selectPage(page, - QueryHelpPlus.getPredicate(TargetExamine.class, pageQuery.getSearchParams())); + page = targetMngRepository.selectPage(page, + QueryHelpPlus.getPredicate(TargetMng.class, pageQuery.getSearchParams())); List<TargetExamineDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), TargetExamineDto.class); + respList.forEach(dto->{ + //查询关联分解信息 + TargetDivideDetailQueryCriteria criteria = new TargetDivideDetailQueryCriteria(); + criteria.setTargetId(dto.getId()); + List<TargetDivideDetailDto> respList1 = BeanCopyUtils.copyBeanList(targetDivideDetailService.queryAll(criteria), TargetDivideDetailDto.class); + + // --------------------------- 获取部门信息----------------------- + //收集所用到的部门ID + Set<Long> collectDepIdSet = new HashSet(); + respList1.forEach(f->{ + collectDepIdSet.add(f.getDutyDepartmentId()); + collectDepIdSet.add(f.getMakerDepartmentId()); + }); + //获取部门名集合 + Map<Long,String> depNameMap = commonService.getDepName(collectDepIdSet); + + respList1.forEach(f->{ + f.setDutyDepartmentName(depNameMap.get(f.getDutyDepartmentId())); + f.setMakerDepartmentName(depNameMap.get(f.getMakerDepartmentId())); + }); + + + // --------------------------- 获取目标分类名称----------------------- + //收集所用到的目标分类ID + Set<Long> collectTypeSet = new HashSet(); + respList1.forEach(f->{ + collectTypeSet.add(f.getTargetTypeId()); + }); + //获取目标分类名集合 + if(!collectTypeSet.isEmpty()){ + List<TargetType> typeList = targetTypeRepository.selectBatchIds(collectTypeSet); // TODO + Map<Long,String> typeNameMap = typeList.stream() + .collect(Collectors.toMap(TargetType::getId, TargetType::getTypeName,(k1, k2)->k1)); + + respList1.forEach(f->{ + f.setTargetTypeName(typeNameMap.get(f.getTargetTypeId())); + }); + } + + + // --------------------------- 获取考核结果----------------------- + //收集所用到的分解详情ID + Set<Long> collectExamResultSet = new HashSet(); + respList1.forEach(f->{ + collectExamResultSet.add(f.getId()); + }); + //获取核结果集合 + if(!collectTypeSet.isEmpty()){ + List<TargetExamine> typeList = targetExamineRepository.selectBatchIds(collectTypeSet); + Map<Long,Integer> examResultMap = typeList.stream() + .collect(Collectors.toMap(TargetExamine::getId, TargetExamine::getExamineResult,(k1, k2)->k1)); + + respList1.forEach(f->{ + f.setExamineResult(examResultMap.get(f.getId())); + }); + } + + + dto.setTargetDivideDetailList(respList1); + }); return new SearchResultVO<>( true, @@ -64,19 +142,19 @@ return baseMapper.selectList(QueryHelpPlus.getPredicate(TargetExamine.class, criteria)); } - @Override - public void addOrUpdate(TargetExamineSaveOrUpdate infoDto) { - - - if(StringUtils.hasText(infoDto.getDelIds())) { - List<Long> idList = Arrays.stream(infoDto.getDelIds().split(",")).map(s-> Long.parseLong(s.trim())) - .collect(Collectors.toList()); - this.removeByIds(idList); - } - - infoDto.getExamineList().forEach(f->{ - f.setTargetId(infoDto.getId()); - }); - this.saveOrUpdateBatch(infoDto.getExamineList()); - } +// @Override +// public void addOrUpdate(TargetExamineSaveOrUpdate infoDto) { +// +// +// if(StringUtils.hasText(infoDto.getDelIds())) { +// List<Long> idList = Arrays.stream(infoDto.getDelIds().split(",")).map(s-> Long.parseLong(s.trim())) +// .collect(Collectors.toList()); +// this.removeByIds(idList); +// } +// +// infoDto.getExamineList().forEach(f->{ +// f.setTargetId(infoDto.getId()); +// }); +// this.saveOrUpdateBatch(infoDto.getExamineList()); +// } } \ No newline at end of file diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetMngServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetMngServiceImpl.java index 7ed78cb..b9144f9 100644 --- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetMngServiceImpl.java +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetMngServiceImpl.java @@ -1,40 +1,39 @@ package com.gkhy.safePlatform.targetDuty.service.impl; -import java.sql.Timestamp; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.core.metadata.OrderItem; +import com.baomidou.mybatisplus.core.toolkit.BeanUtils; 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.targetDuty.entity.ExamineItem; -import com.gkhy.safePlatform.targetDuty.entity.TargetDutyWorkApprove; +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.targetDuty.entity.*; import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetCheckAndSubmitQueryCriteria; import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetDivideDetailQueryCriteria; +import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetMngQueryCriteria; import com.gkhy.safePlatform.targetDuty.model.dto.resp.TargetCheckAndSubmitDto; import com.gkhy.safePlatform.targetDuty.model.dto.resp.TargetDivideDetailDto; -import com.gkhy.safePlatform.targetDuty.repository.TargetDutyWorkApproveRepository; -import com.gkhy.safePlatform.targetDuty.repository.TargetMngRepository; -import com.gkhy.safePlatform.targetDuty.entity.TargetMng; +import com.gkhy.safePlatform.targetDuty.model.dto.resp.TargetMngDto; +import com.gkhy.safePlatform.targetDuty.repository.*; import com.gkhy.safePlatform.targetDuty.service.CommonService; import com.gkhy.safePlatform.targetDuty.service.TargetDivideDetailService; import com.gkhy.safePlatform.targetDuty.service.TargetMngService; -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.vo.ResultVO; -import com.gkhy.safePlatform.commons.vo.SearchResultVO; -import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetMngQueryCriteria; -import com.gkhy.safePlatform.targetDuty.model.dto.resp.TargetMngDto; +import com.gkhy.safePlatform.targetDuty.utils.BeanToMapUtil; import com.gkhy.safePlatform.targetDuty.utils.QueryHelpPlus; -import com.gkhy.safePlatform.commons.utils.BeanCopyUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import javax.annotation.Resource; +import java.beans.IntrospectionException; import java.io.Serializable; +import java.lang.reflect.InvocationTargetException; import java.util.*; +import java.util.function.Function; +import java.util.stream.Collectors; /** * 目标指标(TargetMng)表服务实现类 @@ -51,13 +50,22 @@ @Resource private TargetDivideDetailService targetDivideDetailService; + @Autowired + private TargetDivideDetailRepository targetDivideDetailRepository; + @Resource private TargetDutyWorkApproveRepository targetDutyWorkApproveRepository; @Resource private CommonService commonService; - @Override + @Autowired + private TargetTypeRepository targetTypeRepository; + + @Autowired + private TargetExamineRepository targetExamineRepository; + + @Override public ResultVO queryAll(PageQuery<TargetMngQueryCriteria> pageQuery) { Long pageIndex = pageQuery.getPageIndex(); Long pageSize = pageQuery.getPageSize(); @@ -87,6 +95,23 @@ f.setMakerDepartmentName(depNameMap.get(f.getMakerDepartmentId())); }); + + // --------------------------- 获取目标分类名称----------------------- + //收集所用到的目标分类ID + Set<Long> collectTypeSet = new HashSet(); + respList1.forEach(f->{ + collectTypeSet.add(f.getTargetTypeId()); + }); + //获取目标分类名集合 + if(!collectTypeSet.isEmpty()){ + List<TargetType> typeList = targetTypeRepository.selectBatchIds(collectTypeSet); // TODO + Map<Long,String> typeNameMap = typeList.stream() + .collect(Collectors.toMap(TargetType::getId, TargetType::getTypeName,(k1, k2)->k1)); + + respList1.forEach(f->{ + f.setTargetTypeName(typeNameMap.get(f.getDutyDepartmentId())); + }); + } dto.setTargetDivideDetailList(respList1); }); @@ -136,6 +161,32 @@ }); + + + // --------------------------- 获取考核结果----------------------- + //收集所用到的分解详情ID + Set<Long> collectExamResultSet = new HashSet(); + respList.forEach(f->{ + collectExamResultSet.add(f.getId()); + }); + //获取核结果集合 + if(!collectExamResultSet.isEmpty()){ + List<TargetExamine> typeList = targetExamineRepository.selectList(new QueryWrapper<TargetExamine>().in("target_divide_detail_id",collectExamResultSet)); + Map<Long,TargetExamine> examResultMap = typeList.stream() + .collect(Collectors.toMap(TargetExamine::getTargetDivideDetailId, Function.identity(),(k1, k2)->k1)); + + respList.forEach(f->{ + TargetExamine targetExamine = examResultMap.get(f.getId()); + if(targetExamine != null){ + f.setExamineResult(targetExamine.getExamineResult()); + f.setExamineDate(targetExamine.getExamineDate()); + f.setExaminePersonId(targetExamine.getExaminePersonId()); + f.setExaminePersonName(targetExamine.getExaminePersonName()); + } + + }); + } + targetMngDto.setTargetDivideDetailList(respList); return targetMngDto; } @@ -154,7 +205,7 @@ respList.forEach(dto->{ List<TargetDutyWorkApprove> list = targetDutyWorkApproveRepository.selectList( new QueryWrapper<TargetDutyWorkApprove>().eq("del_flag",0) - .eq("relate_type",pageQuery.getSearchParams().getTargetType()) + .eq("relate_type",pageQuery.getSearchParams().getRelateType()) .eq("relate_id",dto.getId()) .orderByDesc("sort")); @@ -179,5 +230,56 @@ ); } + @Override + public Object statistics(TargetMngQueryCriteria criteria) { + Map<String,String> map = new HashMap<>(); + // 查询总数 + Integer total = 0; + // 完成数量 + Integer complete=0; + + // 查询目标已分解且事件类型对一个的目标 + List<TargetMng> targetMngList = targetMngRepository.selectList( + new QueryWrapper<TargetMng>() + .eq("target_type",criteria.getTargetType()) + .eq("divide_status",1) + ); + if (!targetMngList.isEmpty()){ + total = targetMngList.size(); + // 查询目标下的所有分解项 + for (TargetMng targetMng : targetMngList){ + Boolean completeFlag = true; + List<TargetDivideDetail> targetDivideDetailList = targetDivideDetailRepository.selectList( + new QueryWrapper<TargetDivideDetail>() + .eq("target_id",targetMng.getId()) + ); + if (!targetDivideDetailList.isEmpty()){ + // 查询分解项 是否已经审核通过 + for (TargetDivideDetail targetDivideDetail :targetDivideDetailList){ + List<TargetExamine> targetExamineList = targetExamineRepository.selectList( + new QueryWrapper<TargetExamine>() + .eq("target_divide_detail_id",targetDivideDetail.getId()) + .eq("examine_result",1) + ); + if (targetExamineList.isEmpty()){ + completeFlag=false; + } + } + } + // 该目标中有未评价的或者不合格的 + if (completeFlag){ + complete++; + } + } + } + //未完成数 + int noComplete = total-complete; + map.put("total",total+""); + map.put("noComplete",noComplete+""); + map.put("complete",complete+""); + return map; + } + + } diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetTypeServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetTypeServiceImpl.java new file mode 100644 index 0000000..b49a247 --- /dev/null +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetTypeServiceImpl.java @@ -0,0 +1,61 @@ +package com.gkhy.safePlatform.targetDuty.service.impl; + +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.targetDuty.repository.TargetTypeRepository; +import com.gkhy.safePlatform.targetDuty.entity.TargetType; +import com.gkhy.safePlatform.targetDuty.service.TargetTypeService; +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.vo.ResultVO; +import com.gkhy.safePlatform.commons.vo.SearchResultVO; +import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetTypeQueryCriteria; +import com.gkhy.safePlatform.targetDuty.model.dto.resp.TargetTypeDto; +import com.gkhy.safePlatform.targetDuty.utils.QueryHelpPlus; +import com.gkhy.safePlatform.commons.utils.BeanCopyUtils; + +import java.util.List; + +/** + * 目标分类(TargetType)表服务实现类 + * + * @author xurui + * @since 2022-08-17 10:20:01 + */ +@Service("targetTypeService") +public class TargetTypeServiceImpl extends ServiceImpl<TargetTypeRepository, TargetType> implements TargetTypeService { + + @Autowired + private TargetTypeRepository targetTypeRepository; + + + + @Override + public ResultVO queryAll(PageQuery<TargetTypeQueryCriteria> pageQuery) { + Long pageIndex = pageQuery.getPageIndex(); + Long pageSize = pageQuery.getPageSize(); + IPage<TargetType> page = new Page<>(pageIndex, pageSize); + + page = baseMapper.selectPage(page, + QueryHelpPlus.getPredicate(TargetType.class, pageQuery.getSearchParams())); + List<TargetTypeDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), TargetTypeDto.class); + + return new SearchResultVO<>( + true, + pageIndex, + pageSize,page.getPages(), + page.getTotal(), + respList, + ResultCodes.OK + ); + } + + + @Override + public List<TargetType> queryAll(TargetTypeQueryCriteria criteria) { + return baseMapper.selectList(QueryHelpPlus.getPredicate(TargetType.class, criteria)); + } +} \ No newline at end of file diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/utils/BeanToMapUtil.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/utils/BeanToMapUtil.java new file mode 100644 index 0000000..35ac5d8 --- /dev/null +++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/utils/BeanToMapUtil.java @@ -0,0 +1,107 @@ +package com.gkhy.safePlatform.targetDuty.utils; + +/** + */ +import java.beans.BeanInfo; +import java.beans.IntrospectionException; +import java.beans.Introspector; +import java.beans.PropertyDescriptor; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.HashMap; +import java.util.Map; + +public class BeanToMapUtil { + + /** + * 将一个 Map 对象转化为一个 JavaBean + * @param type 要转化的类型 + * @param map 包含属性值的 map + * @return 转化出来的 JavaBean 对象 + * @throws IntrospectionException + * 如果分析类属性失败 + * @throws IllegalAccessException + * 如果实例化 JavaBean 失败 + * @throws InstantiationException + * 如果实例化 JavaBean 失败 + * @throws InvocationTargetException + * 如果调用属性的 setter 方法失败 + */ + public static Object convertMap(Class type, Map map) + throws IntrospectionException, IllegalAccessException, + InstantiationException, InvocationTargetException { + BeanInfo beanInfo = Introspector.getBeanInfo(type); // 获取类属性 + Object obj = type.newInstance(); // 创建 JavaBean 对象 + + // 给 JavaBean 对象的属性赋值 + PropertyDescriptor[] propertyDescriptors = beanInfo.getPropertyDescriptors(); + for (int i = 0; i< propertyDescriptors.length; i++) { + PropertyDescriptor descriptor = propertyDescriptors[i]; + String propertyName = descriptor.getName(); + + if (map.containsKey(propertyName)) { + // 下面一句可以 try 起来,这样当一个属性赋值失败的时候就不会影响其他属性赋值。 + Object value = map.get(propertyName); + + Object[] args = new Object[1]; + args[0] = value; + + descriptor.getWriteMethod().invoke(obj, args); + } + } + return obj; + } + + /** + * 将一个 JavaBean 对象转化为一个 Map + * @param bean 要转化的JavaBean 对象 + * @return 转化出来的 Map 对象 + * @throws IntrospectionException 如果分析类属性失败 + * @throws IllegalAccessException 如果实例化 JavaBean 失败 + * @throws InvocationTargetException 如果调用属性的 setter 方法失败 + */ + public static Map convertBean(Object bean) + throws IntrospectionException, IllegalAccessException, InvocationTargetException { + Class type = bean.getClass(); + Map returnMap = new HashMap(); + BeanInfo beanInfo = Introspector.getBeanInfo(type); + + PropertyDescriptor[] propertyDescriptors = beanInfo.getPropertyDescriptors(); + for (int i = 0; i< propertyDescriptors.length; i++) { + PropertyDescriptor descriptor = propertyDescriptors[i]; + String propertyName = descriptor.getName(); + if (!propertyName.equals("class")) { + Method readMethod = descriptor.getReadMethod(); + Object result = readMethod.invoke(bean, new Object[0]); + if (result != null) { + returnMap.put(propertyName, result); + } else { + returnMap.put(propertyName, ""); + } + } + } + return returnMap; + } + + + public static Map convertHaveDataBean(Object bean) + throws IntrospectionException, IllegalAccessException, InvocationTargetException { + Class type = bean.getClass(); + Map returnMap = new HashMap(); + BeanInfo beanInfo = Introspector.getBeanInfo(type); + + PropertyDescriptor[] propertyDescriptors = beanInfo.getPropertyDescriptors(); + for (int i = 0; i< propertyDescriptors.length; i++) { + PropertyDescriptor descriptor = propertyDescriptors[i]; + String propertyName = descriptor.getName(); + if (!propertyName.equals("class")) { + Method readMethod = descriptor.getReadMethod(); + Object result = readMethod.invoke(bean, new Object[0]); + if (result != null) { //有值得字段放入map中,其他的不要 + returnMap.put(propertyName, result); + } + } + } + return returnMap; + } +} \ No newline at end of file diff --git a/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/controller/AccidentCountController.java b/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/controller/AccidentCountController.java new file mode 100644 index 0000000..581eb80 --- /dev/null +++ b/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/controller/AccidentCountController.java @@ -0,0 +1,28 @@ +package com.gkhy.safePlatform.incidentManage.controller; + +import com.gkhy.safePlatform.commons.vo.ResultVO; +import com.gkhy.safePlatform.incidentManage.model.dto.resp.AccidentReportCountRespDTO; +import com.gkhy.safePlatform.incidentManage.query.AccidentReportCountQuery; +import com.gkhy.safePlatform.incidentManage.service.AccidentCountService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +@RestController +@RequestMapping("/accidentCount") +public class AccidentCountController { + + @Autowired + private AccidentCountService accidentCountService; + + + /** + * 事故报告统计的rpc接口 + */ + @RequestMapping(value = "/accidentReport/count",method = RequestMethod.POST) + public ResultVO<List<AccidentReportCountRespDTO>> countAccidentReport(@RequestBody AccidentReportCountQuery query){ + return accidentCountService.countAccidentReport(query); + } + +} diff --git a/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/controller/AccidentReportController.java b/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/controller/AccidentReportController.java index a037e86..ab0c764 100644 --- a/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/controller/AccidentReportController.java +++ b/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/controller/AccidentReportController.java @@ -5,11 +5,9 @@ import com.gkhy.safePlatform.commons.utils.PageUtils; import com.gkhy.safePlatform.commons.vo.ResultVO; import com.gkhy.safePlatform.incidentManage.model.dto.req.AccidentReportReqDTO; -import com.gkhy.safePlatform.incidentManage.model.dto.resp.AccidentReportCountRespDTO; import com.gkhy.safePlatform.incidentManage.model.dto.resp.AccidentReportDetailRespDTO; import com.gkhy.safePlatform.incidentManage.model.dto.resp.AccidentReportPageRespDTO; import com.gkhy.safePlatform.incidentManage.query.AccidentReportQuery; -import com.gkhy.safePlatform.incidentManage.query.AccidentReportRPCQuery; import com.gkhy.safePlatform.incidentManage.service.AccidentReportService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.core.Authentication; @@ -67,11 +65,4 @@ return accidentReportService.batchDeleteAccidentReport(ids); } - /** - * 事故报告统计的rpc接口 - */ - @RequestMapping(value = "/count",method = RequestMethod.POST) - public ResultVO<List<AccidentReportCountRespDTO>> countAccidentReport(@RequestBody AccidentReportRPCQuery query){ - return accidentReportService.countAccidentReport(query); - } } diff --git a/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/query/AccidentReportRPCQuery.java b/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/query/AccidentReportCountQuery.java similarity index 75% rename from incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/query/AccidentReportRPCQuery.java rename to incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/query/AccidentReportCountQuery.java index bc7008a..9e7189e 100644 --- a/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/query/AccidentReportRPCQuery.java +++ b/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/query/AccidentReportCountQuery.java @@ -1,6 +1,6 @@ package com.gkhy.safePlatform.incidentManage.query; -public class AccidentReportRPCQuery { +public class AccidentReportCountQuery { private String level; @@ -11,6 +11,16 @@ private int month; + private String realMonth; + + public String getRealMonth() { + return realMonth; + } + + public void setRealMonth(String realMonth) { + this.realMonth = realMonth; + } + public String getLevel() { return level; } diff --git a/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/AccidentCountService.java b/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/AccidentCountService.java new file mode 100644 index 0000000..dff27a0 --- /dev/null +++ b/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/AccidentCountService.java @@ -0,0 +1,12 @@ +package com.gkhy.safePlatform.incidentManage.service; + +import com.gkhy.safePlatform.commons.vo.ResultVO; +import com.gkhy.safePlatform.incidentManage.model.dto.resp.AccidentReportCountRespDTO; +import com.gkhy.safePlatform.incidentManage.query.AccidentReportCountQuery; + +import java.util.List; + +public interface AccidentCountService { + + ResultVO<List<AccidentReportCountRespDTO>> countAccidentReport(AccidentReportCountQuery query); +} diff --git a/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/AccidentReportService.java b/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/AccidentReportService.java index 77d07de..9f6b0ad 100644 --- a/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/AccidentReportService.java +++ b/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/AccidentReportService.java @@ -4,11 +4,9 @@ import com.gkhy.safePlatform.commons.vo.ResultVO; import com.gkhy.safePlatform.commons.vo.SearchResultVO; import com.gkhy.safePlatform.incidentManage.model.dto.req.AccidentReportReqDTO; -import com.gkhy.safePlatform.incidentManage.model.dto.resp.AccidentReportCountRespDTO; import com.gkhy.safePlatform.incidentManage.model.dto.resp.AccidentReportDetailRespDTO; import com.gkhy.safePlatform.incidentManage.model.dto.resp.AccidentReportPageRespDTO; import com.gkhy.safePlatform.incidentManage.query.AccidentReportQuery; -import com.gkhy.safePlatform.incidentManage.query.AccidentReportRPCQuery; import java.util.List; @@ -24,5 +22,4 @@ ResultVO batchDeleteAccidentReport(Long[] ids); - ResultVO<List<AccidentReportCountRespDTO>> countAccidentReport(AccidentReportRPCQuery query); } diff --git a/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/impl/AccidentCountServiceImpl.java b/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/impl/AccidentCountServiceImpl.java new file mode 100644 index 0000000..bcadd55 --- /dev/null +++ b/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/impl/AccidentCountServiceImpl.java @@ -0,0 +1,56 @@ +package com.gkhy.safePlatform.incidentManage.service.impl; + +import com.gkhy.safePlatform.commons.enums.ResultCodes; +import com.gkhy.safePlatform.commons.utils.BeanCopyUtils; +import com.gkhy.safePlatform.commons.vo.ResultVO; +import com.gkhy.safePlatform.incidentManage.entity.*; +import com.gkhy.safePlatform.incidentManage.model.dto.resp.*; +import com.gkhy.safePlatform.incidentManage.query.AccidentReportCountQuery; +import com.gkhy.safePlatform.incidentManage.query.db.AccidentReportRPCDBQuery; +import com.gkhy.safePlatform.incidentManage.service.AccidentCountService; +import com.gkhy.safePlatform.incidentManage.service.baseService.AccidentReportInfoService; +import com.gkhy.safePlatform.incidentManage.utils.TimeUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.*; + +@Service("accidentCountService") +public class AccidentCountServiceImpl implements AccidentCountService { + + @Autowired + private AccidentReportInfoService accidentReportInfoService; + + + @Override + public ResultVO<List<AccidentReportCountRespDTO>> countAccidentReport(AccidentReportCountQuery query) { + + List<AccidentReportCount> list = new ArrayList<>(); + AccidentReportRPCDBQuery dbQuery = new AccidentReportRPCDBQuery(); + if (query.getType() == 1) { + // 月 + int year = query.getYear(); + int month; + if (query.getMonth() == 0) { + Calendar date = Calendar.getInstance(); + month = date.get(Calendar.MONTH) + 1; + } else { + month = query.getMonth(); + } + dbQuery.setStartTime(TimeUtils.getMonthFirst(year, month)); + dbQuery.setEndTime(TimeUtils.getMonthLast(year, month)); + list = accidentReportInfoService.selectByTimeAndType(dbQuery); + } + if (query.getType() == 2) { + // 年 + int year = query.getYear(); + dbQuery.setStartTime(TimeUtils.getYearFirst(year)); + dbQuery.setEndTime(TimeUtils.getYearLast(year)); + list = accidentReportInfoService.selectByTimeAndType(dbQuery); + } + + List<AccidentReportCountRespDTO> accidentReportCountRespDTOList = BeanCopyUtils.copyBeanList(list, AccidentReportCountRespDTO.class); + return new ResultVO<>(ResultCodes.OK, accidentReportCountRespDTOList); + } + +} diff --git a/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/impl/AccidentReportServiceImpl.java b/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/impl/AccidentReportServiceImpl.java index 72b5683..69ee086 100644 --- a/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/impl/AccidentReportServiceImpl.java +++ b/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/service/impl/AccidentReportServiceImpl.java @@ -16,17 +16,13 @@ import com.gkhy.safePlatform.incidentManage.model.dto.req.AccidentReportReqDTO; import com.gkhy.safePlatform.incidentManage.model.dto.resp.*; import com.gkhy.safePlatform.incidentManage.query.AccidentReportQuery; -import com.gkhy.safePlatform.incidentManage.query.AccidentReportRPCQuery; import com.gkhy.safePlatform.incidentManage.query.db.AccidentReportDBQuery; -import com.gkhy.safePlatform.incidentManage.query.db.AccidentReportRPCDBQuery; import com.gkhy.safePlatform.incidentManage.service.AccidentReportService; import com.gkhy.safePlatform.incidentManage.service.baseService.AccidentExpressFileInfoService; import com.gkhy.safePlatform.incidentManage.service.baseService.AccidentExpressInfoService; import com.gkhy.safePlatform.incidentManage.service.baseService.AccidentReportFileInfoService; import com.gkhy.safePlatform.incidentManage.service.baseService.AccidentReportInfoService; -import com.gkhy.safePlatform.incidentManage.utils.TimeUtils; import org.apache.dubbo.config.annotation.DubboReference; -import org.checkerframework.checker.units.qual.A; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -310,31 +306,6 @@ if (AccidentReportReqDTO.getFillInTime() == null) { throw new AccidentException(AccidentResultCodes.REPORT_FILL_IN_TIME_NULL); } - } - - @Override - public ResultVO<List<AccidentReportCountRespDTO>> countAccidentReport(AccidentReportRPCQuery query) { - - List<AccidentReportCount> list = new ArrayList<>(); - AccidentReportRPCDBQuery dbQuery = new AccidentReportRPCDBQuery(); - if (query.getType()==1){ - // 月 - int year = query.getYear(); - int month = query.getMonth(); - dbQuery.setStartTime(TimeUtils.getMonthFirst(year,month)); - dbQuery.setEndTime(TimeUtils.getMonthLast(year,month)); - list = accidentReportInfoService.selectByTimeAndType(dbQuery); - } - if (query.getType()==2){ - // 年 - int year = query.getYear(); - dbQuery.setStartTime(TimeUtils.getYearFirst(year)); - dbQuery.setEndTime(TimeUtils.getYearLast(year)); - list = accidentReportInfoService.selectByTimeAndType(dbQuery); - } - - List<AccidentReportCountRespDTO> accidentReportCountRespDTOList = BeanCopyUtils.copyBeanList(list,AccidentReportCountRespDTO.class); - return new ResultVO<>(ResultCodes.OK,accidentReportCountRespDTOList); } } diff --git a/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/utils/TimeUtils.java b/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/utils/TimeUtils.java index 70d8f9d..e93eb27 100644 --- a/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/utils/TimeUtils.java +++ b/incident-manage/incident-manage-service/src/main/java/com/gkhy/safePlatform/incidentManage/utils/TimeUtils.java @@ -74,7 +74,7 @@ public static void main(String[] args) { Calendar date = Calendar.getInstance(); int year = date.get(Calendar.YEAR); - int month = date.get(Calendar.MONTH); - System.out.println(getMonthLast(year,2)); + int month = date.get(Calendar.MONTH) + 1; + System.out.println(month); } } -- Gitblit v1.9.2