dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java
@@ -4,10 +4,7 @@ import cn.huge.base.common.utils.ReturnFailUtils; import cn.huge.base.common.utils.ReturnSucUtils; import cn.huge.base.config.CurrentUser; import cn.huge.module.cases.domain.dto.AcceptTaskDTO; import cn.huge.module.cases.domain.dto.AssignTaskDTO; import cn.huge.module.cases.domain.dto.FrontPageListSLDTO; import cn.huge.module.cases.domain.dto.SignTaskDTO; import cn.huge.module.cases.domain.dto.*; import cn.huge.module.cases.domain.po.*; import cn.huge.module.cases.service.*; import cn.huge.module.client.api.SysClient; @@ -137,22 +134,21 @@ * @return Object */ @PostMapping("/allSign") public Object allSign(@CurrentUser String userId) { public Object allSign(@CurrentUser String userId, @RequestBody AllSignDTO allSignDTO) { try { // 条件 Map<String, Object> terms = Maps.newHashMap(); // 流程/签收时间区间 String timeStart = request.getParameter("timeStart"); String timeEnd = request.getParameter("timeEnd"); if(StringUtils.isNotBlank(timeStart) && StringUtils.isNotBlank(timeEnd)) { // 待签收,查询流转时间 terms.put("createTimeStart", timeStart); terms.put("createTimeEnd", timeEnd); } // 查询申请方/被申请方关键词 String partyName = request.getParameter("partyName"); if (StringUtils.isNotBlank(partyName)){ terms.put("partyName", partyName); if(ObjectUtils.isNotEmpty(allSignDTO)){ // 流程/签收时间区间 if(StringUtils.isNotBlank(allSignDTO.getTimeStart()) && StringUtils.isNotBlank(allSignDTO.getTimeEnd())) { // 待签收,查询流转时间 terms.put("createTimeStart", allSignDTO.getTimeStart()); terms.put("createTimeEnd", allSignDTO.getTimeEnd()); } // 查询申请方/被申请方关键词 if (StringUtils.isNotBlank(allSignDTO.getPartyName())){ terms.put("partyName", allSignDTO.getPartyName()); } } CtUserDTO loginUser = custClient.clientGetUserAll(userId); terms.put("candeUnitId",loginUser.getUnitId()); @@ -823,7 +819,8 @@ @GetMapping("/pageMyTaskSh") public Object pageMyTaskSh(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size, @RequestParam(value = "status") int status, @RequestParam(value = "type") int type, @CurrentUser String userId, @RequestParam(value = "sortType") int sortType) { @CurrentUser String userId, @RequestParam(value = "sortType") int sortType, @RequestParam(value = "sortColmn") int sortColmn) { try { Map<String, Object> terms = Maps.newHashMap(); // 回退/上报/结案申请/联合处置申请/审核时间区间 @@ -842,19 +839,43 @@ String sortName = null; switch (type){ case 1: sortName = "t1.return_time"; if(1 == sortColmn){ sortName = "t1.return_time"; }else if(2 == sortColmn){ sortName = "t2.case_level"; }else if(3 == sortColmn){ sortName = "t1.return_status"; } break; case 2: sortName = "t1.appear_time"; if(1 == sortColmn) { sortName = "t1.appear_time"; }else if(2 == sortColmn){ sortName = "t2.case_level"; }else if(3 == sortColmn){ sortName = "t1.apply_status"; } break; case 3: sortName = "t1.apply_time"; if(1 == sortColmn) { sortName = "t1.apply_time"; }else if(2 == sortColmn){ sortName = "t2.case_level"; }else if(3 == sortColmn){ sortName = "t1.apply_status"; } break; case 4: sortName = "t1.apply_time"; if(1 == sortColmn) { sortName = "t1.apply_time"; }else if(2 == sortColmn){ sortName = "t2.case_level"; }else if(3 == sortColmn){ sortName = "t1.apply_status"; } break; default: sortName = "t1.return_time"; sortName = "t1.create_time"; break; } switch (sortType){ @@ -928,7 +949,7 @@ sortName = "t1.auditTime"; break; case 3: sortName = "t2.caseGrade"; sortName = "caseGrade"; break; default: sortName = "t1.turnaroundTime"; @@ -992,10 +1013,16 @@ sortName = "t1.sup_time"; break; case 2: sortName = "timeLimit"; break; case 3: sortName = "t1.case_level"; break; case 4: sortName = "t1.case_level"; break; default: sortName = "t1.sup_time"; sortName = "t1.sup_status"; break; } switch (sortType){ @@ -1014,7 +1041,7 @@ } PageRequest pageRequest = PageRequest.of(page-1, size, sort); CtUserDTO loginUser = custClient.clientGetUserAll(userId); Page<CaseSupervise> caseSupervisePage = null; Page<FrontPageListDTO> frontPageListDTOPage = null; if(StringUtils.isNotBlank(loginUser.getUnitId())){ terms.put("type", status); if(3 != status){ @@ -1023,9 +1050,9 @@ }else{ terms.put("supUnitId",loginUser.getUnitId()); } caseSupervisePage = superviseService.pageMyTaskDb(pageRequest, terms); frontPageListDTOPage = superviseService.pageMyTaskDb(pageRequest, terms); } return ReturnSucUtils.getRepInfo(caseSupervisePage); return ReturnSucUtils.getRepInfo(frontPageListDTOPage); } catch (Exception e) { return ReturnFailUtils.getRepInfo(); } dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CaseSuperviseMapper.java
@@ -1,5 +1,6 @@ package cn.huge.module.cases.dao.mapper; import cn.huge.module.cases.domain.dto.FrontPageListDTO; import cn.huge.module.cases.domain.po.CaseSupervise; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; @@ -87,7 +88,7 @@ * @param terms 条件 * @return List<CaseSupervise> */ List<CaseSupervise> pageMyTaskDb(@Param("page") PageRequest page, @Param("terms") Map<String, Object> terms); List<FrontPageListDTO> pageMyTaskDb(@Param("page") PageRequest page, @Param("terms") Map<String, Object> terms); /** * 首页-督办数量 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/AllSignDTO.java
New file @@ -0,0 +1,21 @@ package cn.huge.module.cases.domain.dto; import lombok.Data; @Data public class AllSignDTO { /** * 开始时间 */ private String timeStart; /** * 结束时间 */ private String timeEnd; /** * 查询申请方/被申请方关键词 */ private String partyName; } dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/FrontPageCountDTO.java
@@ -33,6 +33,26 @@ private Long waitReview; /** * 待审核(回退审核) */ private Long returnReview; /** * 待审核(上报审核) */ private Long appearReview; /** * 待审核(结案申请审核) */ private Long windupReview; /** * 待审核(联合处置审核) */ private Long assistReview; /** * 督办 */ private Long supervise; dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseSupervise.java
@@ -166,4 +166,11 @@ */ @TableField(exist = false) private Integer caseGrade; /** * 回复时限 */ @JsonFormat(pattern="yyyy-MM-dd HH:mm", timezone="GMT+8") @TableField(exist = false) private Date timeLimit; } dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseSuperviseService.java
@@ -5,6 +5,7 @@ import cn.huge.base.common.utils.IdUtils; import cn.huge.base.common.utils.ObjectUtils; import cn.huge.module.cases.domain.dto.FileRelateDTO; import cn.huge.module.cases.domain.dto.FrontPageListDTO; import cn.huge.module.cases.domain.dto.QuiltUnitDTO; import cn.huge.module.cases.domain.po.CaseInfo; import cn.huge.module.cases.domain.po.CaseInfoUnfold; @@ -22,6 +23,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -235,27 +237,32 @@ long countSuperviseList = mapper.countCaseSupervise(terms); List<CaseSupervise> caseSuperviseList = mapper.pageCaseSupervise(terms, page); CaseInfo caseInfo = new CaseInfo(); if(1 != type && CollectionUtils.isNotEmpty(caseSuperviseList)){ QueryWrapper<CaseInfo>caseInfoQueryWrapper = new QueryWrapper<>(); caseInfoQueryWrapper.eq("id", caseId); caseInfo = caseInfoService.getOne(caseInfoQueryWrapper); for(CaseSupervise caseSupervise: caseSuperviseList){ if(ObjectUtils.isNotEmpty(caseInfo)){ caseSupervise.setCaseGrade(caseInfo.getCaseLevel()); if(CollectionUtils.isNotEmpty(caseSuperviseList)){ if(1 != type){ QueryWrapper<CaseInfo>caseInfoQueryWrapper = new QueryWrapper<>(); caseInfoQueryWrapper.eq("id", caseId); caseInfo = caseInfoService.getOne(caseInfoQueryWrapper); for(CaseSupervise caseSupervise: caseSuperviseList){ if(ObjectUtils.isNotEmpty(caseSupervise.getSupTime()) && ObjectUtils.isNotEmpty(caseSupervise.getReplyTerm())){ caseSupervise.setTimeLimit(DateUtils.addDay(caseSupervise.getSupTime(), caseSupervise.getReplyTerm())); } if(ObjectUtils.isNotEmpty(caseInfo)){ caseSupervise.setCaseGrade(caseInfo.getCaseLevel()); } } } } Map<String, Object>map = new HashMap<>(); map.put("mainId", caseId); map.put("ownerIds", "'" + caseSuperviseList.stream().map(CaseSupervise::getId).collect(Collectors.joining("','"))+ "'"); map.put("types", "'"+ FileOwnerTypeBaseEnum.OWNER_TYPE_506.getIndex()+ "','" +FileOwnerTypeBaseEnum.OWNER_TYPE_507.getIndex()+"'"); List<FileIdTypeInfoBaseDTO> fileIdTypeInfoBaseDTOList = sysClient.listIdTypeInfoByOwnerIdList(map); for(CaseSupervise caseSupervise: caseSuperviseList){ for(FileIdTypeInfoBaseDTO fileIdTypeInfoBaseDTO: fileIdTypeInfoBaseDTOList){ if(caseSupervise.getId().equals(fileIdTypeInfoBaseDTO.getOwnerId())){ caseSupervise.setFileInfoList(fileIdTypeInfoBaseDTO.getFileList()); }else{ Map<String, Object>map = new HashMap<>(); map.put("mainId", caseId); map.put("ownerIds", "'" + caseSuperviseList.stream().map(CaseSupervise::getId).collect(Collectors.joining("','"))+ "'"); map.put("types", "'"+ FileOwnerTypeBaseEnum.OWNER_TYPE_506.getIndex()+ "','" +FileOwnerTypeBaseEnum.OWNER_TYPE_507.getIndex()+"'"); List<FileIdTypeInfoBaseDTO> fileIdTypeInfoBaseDTOList = sysClient.listIdTypeInfoByOwnerIdList(map); for(CaseSupervise caseSupervise: caseSuperviseList){ for(FileIdTypeInfoBaseDTO fileIdTypeInfoBaseDTO: fileIdTypeInfoBaseDTOList){ if(caseSupervise.getId().equals(fileIdTypeInfoBaseDTO.getOwnerId())){ caseSupervise.setFileInfoList(fileIdTypeInfoBaseDTO.getFileList()); } } } } } @@ -271,11 +278,11 @@ * @param page * @param terms */ public Page<CaseSupervise> pageMyTaskDb(PageRequest page, Map<String, Object> terms){ public Page<FrontPageListDTO> pageMyTaskDb(PageRequest page, Map<String, Object> terms){ try{ long countSuperviseList = mapper.countMyTaskDb(terms); List<CaseSupervise> caseSuperviseList = mapper.pageMyTaskDb(page, terms); return new PageImpl<CaseSupervise>(caseSuperviseList, page, countSuperviseList); List<FrontPageListDTO> caseSuperviseList = mapper.pageMyTaskDb(page, terms); return new PageImpl<FrontPageListDTO>(caseSuperviseList, page, countSuperviseList); }catch (Exception e){ log.error("[CaseSuperviseService.pageReplied]调用失败,异常信息:"+e, e); throw new ServiceException("CaseSuperviseService.pageReplied", e); dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java
@@ -768,6 +768,10 @@ long countReturnReview = caseReturnService.countReturnReview(loginUser.getUnitId()); long countAppearReview = caseAppearService.countAppearReview(loginUser.getUnitId()); long countAssistReview = caseAssistApplyService.countAssistReview(loginUser.getUnitId()); frontPageCountDTO.setReturnReview(countReturnReview); frontPageCountDTO.setAppearReview(countAppearReview); frontPageCountDTO.setWindupReview(countApplyReview); frontPageCountDTO.setAssistReview(countAssistReview); frontPageCountDTO.setWaitReview(countApplyReview+countReturnReview+countAppearReview+countAssistReview); // 已办 Map<String, Object> ybTerms = new HashMap<>();