From 18972bdf9899089cf04b2ba299c16c0dfe43a232 Mon Sep 17 00:00:00 2001 From: songhuangfeng123 <shf18767906695@163.com> Date: 星期一, 15 八月 2022 18:06:52 +0800 Subject: [PATCH] fix --- goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/WorkApproveRelateDesc.java | 52 +++++++++++++++++ goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/excepiton/TargetDutyException.java | 5 + 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 +++++ goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetDutyWorkApproveController.java | 4 + goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetMngServiceImpl.java | 4 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDutyWorkApproveServiceImpl.java | 62 ++++++++++++++++++++ 7 files changed, 143 insertions(+), 3 deletions(-) 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/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/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/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/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/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/TargetMngServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetMngServiceImpl.java index 7ed78cb..07b804e 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 @@ -56,7 +56,7 @@ @Resource private CommonService commonService; - + @Override public ResultVO queryAll(PageQuery<TargetMngQueryCriteria> pageQuery) { Long pageIndex = pageQuery.getPageIndex(); @@ -180,4 +180,4 @@ } -} +} \ No newline at end of file -- Gitblit v1.9.2