From 2c0b07b09ab772646e973983e4fb6cddbd3664dc Mon Sep 17 00:00:00 2001 From: wangwh <2397901735@qq.com> Date: Tue, 24 Sep 2024 17:28:05 +0800 Subject: [PATCH] 督办列表修改新增字段、新增排序 待审核列表修改新增字段、新增排序 --- dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java | 992 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 964 insertions(+), 28 deletions(-) diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java index 086f454..d390c3a 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java @@ -1,27 +1,32 @@ package cn.huge.module.cases.controller.web; +import cn.huge.base.common.utils.ObjectUtils; 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.AssignTaskDTO; -import cn.huge.module.cases.domain.po.CaseAppear; -import cn.huge.module.cases.domain.po.CaseReturn; -import cn.huge.module.cases.domain.po.CaseTask; -import cn.huge.module.cases.domain.po.CaseWindupApply; -import cn.huge.module.cases.service.CaseAppearService; -import cn.huge.module.cases.service.CaseReturnService; -import cn.huge.module.cases.service.CaseTaskService; -import cn.huge.module.cases.service.CaseWindupApplyService; +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; +import cn.huge.module.client.api.impl.CustClientImpl; +import cn.huge.module.client.api.impl.SysClientImpl; +import cn.huge.module.cust.dto.CtUserDTO; +import cn.huge.module.mediate.constant.AuditBaseConstsEnum; +import cn.huge.module.sys.dto.FileIdTypeInfoBaseDTO; import com.google.common.collect.Maps; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Page; +import org.springframework.data.domain.PageImpl; import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Sort; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; +import java.util.HashMap; +import java.util.List; import java.util.Map; import java.util.stream.Collectors; import java.util.stream.Stream; @@ -50,6 +55,14 @@ private CaseReturnService caseReturnService; @Autowired private CaseAppearService caseAppearService; + @Autowired + private SysClientImpl sysClient; + @Autowired + private CustClientImpl custClient; + @Autowired + private CaseSuperviseService superviseService; + @Autowired + private CaseDismissService caseDismissService; /** * web端-任务处理页面-初始化tab和按钮 @@ -60,7 +73,105 @@ @GetMapping("/getTabButton") public Object getTabButton(@RequestParam(value = "caseTaskId") String caseTaskId, @CurrentUser String userId) { try { - return ReturnSucUtils.getRepInfo(service.webGetTabButton("caseTaskId", userId)); + return ReturnSucUtils.getRepInfo(service.webGetTabButton(caseTaskId, userId)); + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } + + /** + * web端-不予受理 + * @url {ctx}/api/web/caseTask/dismiss + * @param caseDismiss 不予受理表单 + * @return Object + */ + @PostMapping("/dismiss") + public Object dismiss(@RequestBody CaseDismiss caseDismiss, @CurrentUser String userId) { + try { + service.webDismiss(caseDismiss, userId); + return ReturnSucUtils.getRepInfo(); + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } + + /** + * web端-交办 + * @url {ctx}/api/web/caseTask/assign + * @param assignTaskDTO 交办表单 + * @return Object + */ + @PostMapping("/assign") + public Object assign(@RequestBody AssignTaskDTO assignTaskDTO, @CurrentUser String userId) { + try { + service.webAssign(assignTaskDTO, userId); + return ReturnSucUtils.getRepInfo(); + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } + + /** + * web端-签收 + * @url {ctx}/api/web/caseTask/sign + * @param signTaskDTOList 签收表单数组 + * @return Object + */ + @PostMapping("/sign") + public Object sign(@RequestBody List<SignTaskDTO> signTaskDTOList, @CurrentUser String userId) { + try { + service.webSign(signTaskDTOList, userId); + return ReturnSucUtils.getRepInfo(); + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } + + /** + * web端-全部签收 + * @url {ctx}/api/web/caseTask/allSign + * @param + * @return Object + */ + @PostMapping("/allSign") + public Object allSign(@CurrentUser String userId, @RequestBody AllSignDTO allSignDTO) { + try { + // 条件 + Map<String, Object> terms = Maps.newHashMap(); + 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()); + terms.put("signStatus", 1); + + List<SignTaskDTO>signTaskDTOList = service.listIdByTerms(terms); + service.webSign(signTaskDTOList, userId); + return ReturnSucUtils.getRepInfo(); + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } + + /** + * web端-受理 + * @url {ctx}/api/web/caseTask/accept + * @param acceptTaskDTO 受理表单 + * @return Object + */ + @PostMapping("/accept") + public Object accept(@RequestBody AcceptTaskDTO acceptTaskDTO, @CurrentUser String userId) { + try { + return ReturnSucUtils.getRepInfo(service.webAccept(acceptTaskDTO, userId)); } catch (Exception e) { return ReturnFailUtils.getRepInfo(); } @@ -75,6 +186,7 @@ @PostMapping("/windupApply") public Object windupApply(@RequestBody CaseWindupApply caseWindupApply, @CurrentUser String userId) { try { + service.webWindupApply(caseWindupApply, userId); return ReturnSucUtils.getRepInfo(); } catch (Exception e) { return ReturnFailUtils.getRepInfo(); @@ -90,7 +202,8 @@ @GetMapping("/getWindupApplyInfo") public Object getWindupApplyInfo(@RequestParam(value = "caseTaskId") String caseTaskId, @CurrentUser String userId) { try { - return ReturnSucUtils.getRepInfo(caseWindupApplyService.getByCaseTaskId(caseTaskId)); + CaseWindupApply caseWindupApply = caseWindupApplyService.getByCaseTaskId(caseTaskId); + return ReturnSucUtils.getRepInfo(caseWindupApply); } catch (Exception e) { return ReturnFailUtils.getRepInfo(); } @@ -105,6 +218,7 @@ @PostMapping("/windupAudit") public Object windupAudit(@RequestBody CaseWindupApply caseWindupApply, @CurrentUser String userId) { try { + service.webWindupAudit(caseWindupApply, userId); return ReturnSucUtils.getRepInfo(); } catch (Exception e) { return ReturnFailUtils.getRepInfo(); @@ -120,6 +234,7 @@ @PostMapping("/returnApply") public Object returnApply(@RequestBody CaseReturn caseReturn, @CurrentUser String userId) { try { + service.webReturnApply(caseReturn, userId); return ReturnSucUtils.getRepInfo(); } catch (Exception e) { return ReturnFailUtils.getRepInfo(); @@ -135,7 +250,17 @@ @GetMapping("/getReturnApplyInfo") public Object getReturnApplyInfo(@RequestParam(value = "caseTaskId") String caseTaskId, @CurrentUser String userId) { try { - return ReturnSucUtils.getRepInfo(caseReturnService.getByCaseTaskId(caseTaskId)); + CaseReturn caseReturn = caseReturnService.getByCaseTaskId(caseTaskId); + if (ObjectUtils.isNotEmpty(caseReturn)) { + Map<String, Object> term = new HashMap<>(); + term.put("mainId", caseReturn.getCaseId()); + term.put("ownerIds", "'" + caseReturn.getId() + "'"); + List<FileIdTypeInfoBaseDTO> fileInfoList = sysClient.listIdTypeInfoByOwnerIdList(term); + if (CollectionUtils.isNotEmpty(fileInfoList)) { + caseReturn.setFileInfoList(fileInfoList.get(0).getFileList().get(0).getFileList()); + } + } + return ReturnSucUtils.getRepInfo(caseReturn); } catch (Exception e) { return ReturnFailUtils.getRepInfo(); } @@ -150,6 +275,7 @@ @PostMapping("/returnAudit") public Object returnAudit(@RequestBody CaseReturn caseReturn, @CurrentUser String userId) { try { + service.webReturnAudit(caseReturn, userId); return ReturnSucUtils.getRepInfo(); } catch (Exception e) { return ReturnFailUtils.getRepInfo(); @@ -165,6 +291,7 @@ @PostMapping("/appearApply") public Object appearApply(@RequestBody CaseAppear caseAppear, @CurrentUser String userId) { try { + service.webAppearApply(caseAppear, userId); return ReturnSucUtils.getRepInfo(); } catch (Exception e) { return ReturnFailUtils.getRepInfo(); @@ -195,21 +322,7 @@ @PostMapping("/appearAudit") public Object appearAudit(@RequestBody CaseAppear caseAppear, @CurrentUser String userId) { try { - return ReturnSucUtils.getRepInfo(); - } catch (Exception e) { - return ReturnFailUtils.getRepInfo(); - } - } - - /** - * web端-交办 - * @url {ctx}/api/web/caseTask/assign - * @param assignTaskDTO 交办表单 - * @return Object - */ - @PostMapping("/assign") - public Object assign(@RequestBody AssignTaskDTO assignTaskDTO, @CurrentUser String userId) { - try { + service.webAppearAudit(caseAppear, userId); return ReturnSucUtils.getRepInfo(); } catch (Exception e) { return ReturnFailUtils.getRepInfo(); @@ -232,7 +345,7 @@ } /** - * web端-查询流程进度 + * web端-首页-查询待办数量 * @url {ctx}/api/web/caseTask/getCountList * @return Object */ @@ -244,4 +357,827 @@ return ReturnFailUtils.getRepInfo(); } } + + /** + * web端-工作台-查询待办任务-分派任务 + * @url {ctx}/api/web/caseTask/pageMyTaskFp + * @param page 页码 + * @param size 每页数量 + * @param status 状态,1:待分派,2:已分派 + * @param sortType 排序方式(1:正序;2:倒序) + * @param sortColmn 排序字段(1:流转时间;2:分派时限/分派时间;3:事项等级;4:督办次数) + * @return + */ + @GetMapping("/pageMyTaskFp") + public Object pageMyTaskFp(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size, + @RequestParam(value = "status") int status, @CurrentUser String userId, + @RequestParam(value = "sortType") int sortType, @RequestParam(value = "sortColmn") int sortColmn) { + try { + // 条件 + Map<String, Object> terms = Maps.newHashMap(); + // 流程/分派时间区间 + String timeStart = request.getParameter("timeStart"); + String timeEnd = request.getParameter("timeEnd"); + if(StringUtils.isNotBlank(timeStart) && StringUtils.isNotBlank(timeEnd)) { + // 待分派,查询流转时间 + if (status == 1){ + terms.put("createTimeStart", timeStart); + terms.put("createTimeEnd", timeEnd); + }else { + // 已分派,查询分派时间 + terms.put("handleTimeStart", timeStart); + terms.put("handleTimeEnd", timeEnd); + } + } + // 查询申请方/被申请方关键词 + String partyName = request.getParameter("partyName"); + if (StringUtils.isNotBlank(partyName)){ + terms.put("partyName", partyName); + } + CtUserDTO loginUser = custClient.clientGetUserAll(userId); + if (status == 1) { + terms.put("candeUnitId", loginUser.getUnitId()); + }else { + terms.put("handleUnitId", loginUser.getUnitId()); + } + terms.put("status", status); + // 排序 + Sort sort = null; + String sortName = null; + switch (sortColmn){ + case 1: + sortName = "t1.create_time"; + break; + case 2: + if (status == 1){ + sortName = "t1.expire_time"; + }else { + sortName = "t1.handle_time"; + } + break; + case 3: + sortName = "t2.case_level"; + break; + case 4: + sortName = "superviseCount"; + break; + default: + sortName = "t1.create_time"; + break; + } + switch (sortType){ + case 1: + sort = Sort.by(Sort.Direction.ASC, sortName); + break; + case 2: + sort = Sort.by(Sort.Direction.DESC, sortName); + break; + default: + sort = Sort.by(Sort.Direction.ASC, sortName); + break; + } + if(ObjectUtils.isEmpty(sort)){ + sort = Sort.by(Sort.Direction.DESC, "t1.create_time"); + } + PageRequest pageRequest = PageRequest.of(page-1, size, sort); + return ReturnSucUtils.getRepInfo(service.pageMyTaskFp(pageRequest, terms)); + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } + + /** + * web端-工作台-查询待办任务-签收任务 + * @url {ctx}/api/web/caseTask/pageMyTaskQs + * @param page 页码 + * @param size 每页数量 + * @param status 状态,1:待签收,2:已签收 + * @param sortType 排序方式(1:正序;2:倒序) + * @param sortColmn 排序字段(1:流转时间;2:签收时限/签收时间;3:事项等级;4:督办次数) + * @return + */ + @GetMapping("/pageMyTaskQs") + public Object pageMyTaskQs(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size, + @RequestParam(value = "status") int status, @CurrentUser String userId, + @RequestParam(value = "sortType") int sortType, @RequestParam(value = "sortColmn") int sortColmn) { + try { + // 条件 + Map<String, Object> terms = Maps.newHashMap(); + // 流程/签收时间区间 + String timeStart = request.getParameter("timeStart"); + String timeEnd = request.getParameter("timeEnd"); + if(StringUtils.isNotBlank(timeStart) && StringUtils.isNotBlank(timeEnd)) { + // 待签收,查询流转时间 + if (status == 1){ + terms.put("createTimeStart", timeStart); + terms.put("createTimeEnd", timeEnd); + }else { + // 已签收,查询签收时间 + terms.put("signTimeStart", timeStart); + terms.put("signTimeEnd", timeEnd); + } + } + // 查询申请方/被申请方关键词 + String partyName = request.getParameter("partyName"); + if (StringUtils.isNotBlank(partyName)){ + terms.put("partyName", partyName); + } + CtUserDTO loginUser = custClient.clientGetUserAll(userId); + if (status == 1) { + terms.put("candeUnitId", loginUser.getUnitId()); + }else { + terms.put("handleUnitId", loginUser.getUnitId()); + } + terms.put("signStatus", status); + // 排序 + Sort sort = null; + String sortName = null; + switch (sortColmn){ + case 1: + sortName = "t1.create_time"; + break; + case 2: + if (status == 1){ + sortName = "t1.sign_expire_time"; + }else { + sortName = "t1.sign_time"; + } + break; + case 3: + sortName = "t2.case_level"; + break; + case 4: + sortName = "superviseCount"; + break; + default: + sortName = "t1.create_time"; + break; + } + switch (sortType){ + case 1: + sort = Sort.by(Sort.Direction.ASC, sortName); + break; + case 2: + sort = Sort.by(Sort.Direction.DESC, sortName); + break; + default: + sort = Sort.by(Sort.Direction.ASC, sortName); + break; + } + if(ObjectUtils.isEmpty(sort)){ + sort = Sort.by(Sort.Direction.DESC, "t1.create_time"); + } + PageRequest pageRequest = PageRequest.of(page-1, size, sort); + return ReturnSucUtils.getRepInfo(service.pageMyTaskQs(pageRequest, terms)); + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } + + /** + * web端-工作台-查询待办任务-受理任务 + * @url {ctx}/api/web/caseTask/pageMyTaskSl + * @param page 页码 + * @param size 每页数量 + * @param status 状态,1:待受理,2:已受理,3:不予受理 + * @param sortType 排序方式(1:正序;2:倒序) + * @param sortColmn 排序字段(1:流转时间;2:受理时限/受理时间/不予受理时间;3:事项等级;4:督办次数) + * @return + */ + @GetMapping("/pageMyTaskSl") + public Object pageMyTaskSl(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size, + @RequestParam(value = "sortType") int sortType, @RequestParam(value = "sortColmn") int sortColmn, + @RequestParam(value = "status") int status, @CurrentUser String userId) { + try { + // 排序 + Sort sort = null; + String sortName = null; + switch (sortColmn){ + case 1: + // 不予受理 + if (status == 3){ + sortName = "t1.case_task_time"; + }else { + sortName = "t1.create_time"; + } + break; + case 2: + // 待受理 + if (status == 1){ + sortName = "t1.expire_time"; + }else if (status == 2){ + // 已受理 + sortName = "t1.handle_time"; + }else { + // 不予受理 + sortName = "t1.dis_time"; + } + break; + case 3: + sortName = "t2.case_level"; + break; + case 4: + sortName = "superviseCount"; + break; + default: + // 不予受理 + if (status == 3){ + sortName = "t1.case_task_time"; + }else { + sortName = "t1.create_time"; + } + break; + } + switch (sortType){ + case 1: + sort = Sort.by(Sort.Direction.ASC, sortName); + break; + case 2: + sort = Sort.by(Sort.Direction.DESC, sortName); + break; + default: + sort = Sort.by(Sort.Direction.ASC, sortName); + break; + } + if(ObjectUtils.isEmpty(sort)){ + sort = Sort.by(Sort.Direction.DESC, "t1.create_time"); + } + PageRequest pageRequest = PageRequest.of(page-1, size, sort); + // 条件 + Map<String, Object> terms = Maps.newHashMap(); + // 流程/受理时间区间 + String timeStart = request.getParameter("timeStart"); + String timeEnd = request.getParameter("timeEnd"); + if(StringUtils.isNotBlank(timeStart) && StringUtils.isNotBlank(timeEnd)) { + // 待受理,查询流转时间 + if (status == 1){ + terms.put("createTimeStart", timeStart); + terms.put("createTimeEnd", timeEnd); + }else if (status == 2){ + // 已受理,查询受理时间 + terms.put("handleTimeStart", timeStart); + terms.put("handleTimeEnd", timeEnd); + }else { + // 不予受理,查询不予受理时间 + terms.put("disTimeStart", timeStart); + terms.put("disTimeEnd", timeEnd); + } + } + // 查询申请方/被申请方关键词 + String partyName = request.getParameter("partyName"); + if (StringUtils.isNotBlank(partyName)){ + terms.put("partyName", partyName); + } + CtUserDTO loginUser = custClient.clientGetUserAll(userId); + // 不予受理,查询case_dismiss表 + if (status == 3){ + terms.put("disUnitId", loginUser.getUnitId()); + return ReturnSucUtils.getRepInfo(caseDismissService.pageMyTaskBysl(pageRequest, terms)); + }else { + terms.put("status", status); + if (status == 1){ + terms.put("candeUnitId", loginUser.getUnitId()); + }else { + terms.put("handleUnitId", loginUser.getUnitId()); + } + return ReturnSucUtils.getRepInfo(service.pageMyTaskSl(pageRequest, terms)); + } + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } + + /** + * web端-工作台-查询待办任务-办理中 + * @url {ctx}/api/web/caseTask/pageMyTaskBlz + * @param page 页码 + * @param size 每页数量 + * @param caseTaskType 纠纷任务类型(1:我承办的;2:我配合的) + * @param sortType 排序方式(1:正序;2:倒序) + * @param sortColmn 排序字段(1:流转时间/已办天数;2:分派时限;3:事项等级;4:督办次数) + * @return + */ + @GetMapping("/pageMyTaskBlz") + public Object pageMyTaskBlz(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size, + @RequestParam(value = "caseTaskType") int caseTaskType, @RequestParam(value = "sortType") int sortType, + @RequestParam(value = "sortColmn") int sortColmn, @CurrentUser String userId) { + 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); + } + terms.put("caseTaskType", caseTaskType); + CtUserDTO loginUser = custClient.clientGetUserAll(userId); + terms.put("candeUnitId", loginUser.getUnitId()); + // 排序 + Sort sort = null; + String sortName = null; + switch (sortColmn){ + case 1: + sortName = "t1.create_time"; + break; + case 2: + sortName = "t1.expire_time"; + break; + case 3: + sortName = "t2.case_level"; + break; + case 4: + sortName = "superviseCount"; + break; + default: + sortName = "t1.create_time"; + break; + } + switch (sortType){ + case 1: + sort = Sort.by(Sort.Direction.ASC, sortName); + break; + case 2: + sort = Sort.by(Sort.Direction.DESC, sortName); + break; + default: + sort = Sort.by(Sort.Direction.ASC, sortName); + break; + } + if(ObjectUtils.isEmpty(sort)){ + sort = Sort.by(Sort.Direction.DESC, "t1.create_time"); + } + PageRequest pageRequest = PageRequest.of(page-1, size, sort); + return ReturnSucUtils.getRepInfo(service.pageMyTaskBlz(pageRequest, terms)); + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } + + /** + * web端-工作台-查询待办任务-已办理任务 + * @url {ctx}/api/web/caseTask/pageMyTaskBl + * @param page 页码 + * @param size 每页数量 + * @param status 状态,0:结案申请,1:已结案 + * @param caseTaskType 纠纷任务类型(1:我承办的;2:我配合的) + * @param sortType 排序方式(1:正序;2:倒序) + * @param sortColmn 排序字段(1:结案申请时间;2:事项等级;3:督办次数) + * @return + */ + @GetMapping("/pageMyTaskBl") + public Object pageMyTaskBl(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size, + @RequestParam(value = "status") int status, @RequestParam(value = "caseTaskType") int caseTaskType, + @RequestParam(value = "sortType") int sortType, @RequestParam(value = "sortColmn") int sortColmn, + @CurrentUser String userId) { + 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("applyTimeStart", timeStart); + terms.put("applyTimeStart", timeEnd); + } + // 查询申请方/被申请方关键词 + String partyName = request.getParameter("partyName"); + if (StringUtils.isNotBlank(partyName)){ + terms.put("partyName", partyName); + } + terms.put("applyStatus", status); + if (status == 1){ + terms.put("auditResult", AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex()); + } + CtUserDTO loginUser = custClient.clientGetUserAll(userId); + if (caseTaskType == 1){ + terms.put("applyUnitId", loginUser.getUnitId()); + }else { + terms.put("assistUnitId", loginUser.getUnitId()); + } + // 排序 + Sort sort = null; + String sortName = null; + switch (sortColmn){ + case 1: + if (status == 0) { + sortName = "t1.apply_time"; + }else { + sortName = "t1.audit_time"; + } + break; + case 2: + sortName = "t2.case_level"; + break; + case 3: + sortName = "superviseCount"; + break; + default: + if (status == 0) { + sortName = "t1.apply_time"; + }else { + sortName = "t1.audit_time"; + } + break; + } + switch (sortType){ + case 1: + sort = Sort.by(Sort.Direction.ASC, sortName); + break; + case 2: + sort = Sort.by(Sort.Direction.DESC, sortName); + break; + default: + sort = Sort.by(Sort.Direction.ASC, sortName); + break; + } + if(ObjectUtils.isEmpty(sort)){ + sort = Sort.by(Sort.Direction.DESC, "t1.create_time"); + } + PageRequest pageRequest = PageRequest.of(page-1, size, sort); + return ReturnSucUtils.getRepInfo(service.pageMyTaskJa(pageRequest, terms)); + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } + + /** + * web端-工作台-查询待办任务-审核任务 + * @url {ctx}/api/web/caseTask/pageMyTaskSh + * @param page 页码 + * @param size 每页数量 + * @param status 状态,0:待审核,1:已审核 + * @param type 审核类型,1:回退审核,2:上报审核,3:结案审核,4:联合处置审核 + * @param sortType 排序方式(1:正序;2:倒序) + * @return + */ + @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, + @RequestParam(value = "sortColmn") int sortColmn) { + 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("timeStart", timeStart); + terms.put("timeEnd", timeEnd); + } + // 查询申请方/被申请方关键词 + String partyName = request.getParameter("partyName"); + if (StringUtils.isNotBlank(partyName)){ + terms.put("partyName", partyName); + } + Sort sort = null; + String sortName = null; + switch (type){ + case 1: + if(1 == sortColmn){ + sortName = "t1.return_time"; + }else if(2 == sortColmn){ + sortName = "t2.case_level"; + }else if(3 == sortColmn){ + sortName = "t1.audit_time"; + } + break; + case 2: + if(1 == sortColmn) { + sortName = "t1.appear_time"; + }else if(2 == sortColmn){ + sortName = "t2.case_level"; + }else if(3 == sortColmn){ + sortName = "t1.audit_time"; + } + break; + case 3: + if(1 == sortColmn) { + sortName = "t1.apply_time"; + }else if(2 == sortColmn){ + sortName = "t2.case_level"; + }else if(3 == sortColmn){ + sortName = "t1.audit_time"; + } + break; + case 4: + if(1 == sortColmn) { + sortName = "t1.apply_time"; + }else if(2 == sortColmn){ + sortName = "t2.case_level"; + }else if(3 == sortColmn){ + sortName = "t1.audit_time"; + } + break; + default: + sortName = "t1.create_time"; + break; + } + switch (sortType){ + case 1: + sort = Sort.by(Sort.Direction.ASC, sortName); + break; + case 2: + sort = Sort.by(Sort.Direction.DESC, sortName); + break; + default: + sort = Sort.by(Sort.Direction.ASC, sortName); + break; + } + if(ObjectUtils.isEmpty(sort)){ + sort = Sort.by(Sort.Direction.DESC, "t1.create_time"); + } + PageRequest pageRequest = PageRequest.of(page-1, size, sort); + CtUserDTO loginUser = custClient.clientGetUserAll(userId); + terms.put("auditUnitId",loginUser.getUnitId()); + terms.put("applyStatus", status); + return ReturnSucUtils.getRepInfo(service.pageMyTaskSh(pageRequest, type, terms)); + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } + + /** + * web端-工作台-查询待办任务-审核任务-我申请的 + * @url {ctx}/api/web/caseTask/pageMyTaskShWSQD + * @param page 页码 + * @param size 每页数量 + * @param sortType 排序方式(1:正序;2:倒序) + * @param sortColmn 排序字段(1:申请时间;2:审核时间;3:事项等级) + * @return + */ + @GetMapping("/pageMyTaskShWSQD") + public Object pageMyTaskShWSQD(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size, + @CurrentUser String userId,@RequestParam(value = "sortType") int sortType, + @RequestParam(value = "sortColmn") int sortColmn) { + 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("timeStart", timeStart); + terms.put("timeEnd", timeEnd); + } + // 查询申请方/被申请方关键词 + String partyName = request.getParameter("partyName"); + if (StringUtils.isNotBlank(partyName)){ + terms.put("partyName", partyName); + } + // 申请类型 + String applyType = request.getParameter("applyType"); + if (StringUtils.isNotBlank(applyType)){ + terms.put("applyType", applyType); + } + // 审核结果 + String auditResult = request.getParameter("auditResult"); + if (StringUtils.isNotBlank(auditResult)){ + terms.put("auditResult", auditResult); + } + Sort sort = null; + String sortName = null; + switch (sortColmn){ + case 1: + sortName = "t1.turnaroundTime"; + break; + case 2: + sortName = "t1.auditTime"; + break; + case 3: + sortName = "caseGrade"; + break; + default: + sortName = "t1.turnaroundTime"; + break; + } + switch (sortType){ + case 1: + sort = Sort.by(Sort.Direction.ASC, sortName); + break; + case 2: + sort = Sort.by(Sort.Direction.DESC, sortName); + break; + default: + sort = Sort.by(Sort.Direction.ASC, sortName); + break; + } + if(ObjectUtils.isEmpty(sort)){ + sort = Sort.by(Sort.Direction.DESC, "t1.create_time"); + } + PageRequest pageRequest = PageRequest.of(page-1, size, sort); + CtUserDTO loginUser = custClient.clientGetUserAll(userId); + terms.put("applyUnitId",loginUser.getUnitId()); + return ReturnSucUtils.getRepInfo(service.pageMyTaskShWSQD(pageRequest, terms)); + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } + + /** + * web端-工作台-查询待办任务-督办 + * @url {ctx}/api/web/caseTask/pageMyTaskDb + * @param page 页码 + * @param size 每页数量 + * @param status 状态,0:未回复,1:已回复, 3:我发起的 + * @param sortType 排序方式(1:正序;2:倒序) + * @param sortColmn 排序字段(1:督办时间/回复时限;2:事项等级) + * @return + */ + @GetMapping("/pageMyTaskDb") + public Object pageMyTaskDb(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size, + @RequestParam(value = "status") int status, @CurrentUser String userId, + @RequestParam(value = "sortType") int sortType, @RequestParam(value = "sortColmn") int sortColmn) { + 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("timeStart", timeStart); + terms.put("timeEnd", timeEnd); + } + // 查询申请方/被申请方关键词 + String partyName = request.getParameter("partyName"); + if (StringUtils.isNotBlank(partyName)){ + terms.put("partyName", partyName); + } + Sort sort = null; + String sortName = null; + switch (sortColmn){ + case 1: + sortName = "t1.sup_time"; + break; + case 2: + sortName = "timeLimit"; + break; + case 3: + sortName = "t2.case_level"; + break; + case 4: + sortName = "t1.sup_status"; + break; + default: + sortName = "t1.sup_time"; + break; + } + switch (sortType){ + case 1: + sort = Sort.by(Sort.Direction.ASC, sortName); + break; + case 2: + sort = Sort.by(Sort.Direction.DESC, sortName); + break; + default: + sort = Sort.by(Sort.Direction.ASC, sortName); + break; + } + if(ObjectUtils.isEmpty(sort)){ + sort = Sort.by(Sort.Direction.DESC, "t1.create_time"); + } + PageRequest pageRequest = PageRequest.of(page-1, size, sort); + CtUserDTO loginUser = custClient.clientGetUserAll(userId); + Page<FrontPageListDTO> frontPageListDTOPage = null; + if(StringUtils.isNotBlank(loginUser.getUnitId())){ + terms.put("type", status); + if(3 != status){ + terms.put("quiltUnitId",loginUser.getUnitId()); + terms.put("supStatus", status); + }else{ + terms.put("supUnitId",loginUser.getUnitId()); + } + frontPageListDTOPage = superviseService.pageMyTaskDb(pageRequest, terms); + } + return ReturnSucUtils.getRepInfo(frontPageListDTOPage); + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } + + /** + * web端-申请记录 + * @url {ctx}/api/web/caseTask/listMyApplyRecord + * @return + */ + @GetMapping("/listMyApplyRecord") + public Object listMyApplyRecord(@RequestParam(value = "caseId") String caseId) { + try { + return ReturnSucUtils.getRepInfo(service.listMyApplyRecord(caseId)); + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } + + /** + * web端-工作台-已办事项 + * @url {ctx}/api/web/caseTask/pageMyTaskYb + * @param page 页码 + * @param size 每页数量 + * sortColmn 排序字段(1:办理时间;2:事项等级;3:督办次数) + * sortType 排序方式(1:正序;2:倒序) + * @return + */ + @GetMapping("/pageMyTaskYb") + public Object pageMyTaskYb(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size, + @CurrentUser String userId) { + try { + // 条件 + Map<String, Object> terms = Maps.newHashMap(); + // 受理时间 + String createTimeStart = request.getParameter("createTimeStart"); + String createTimeEnd = request.getParameter("createTimeEnd"); + if(StringUtils.isNotBlank(createTimeStart) && StringUtils.isNotBlank(createTimeEnd)) { + terms.put("createTimeStart", createTimeStart); + terms.put("createTimeEnd", createTimeEnd); + } + // 办结时间 + String handleTimeStart = request.getParameter("handleTimeStart"); + String handleTimeEnd = request.getParameter("handleTimeEnd"); + if(StringUtils.isNotBlank(handleTimeStart) && StringUtils.isNotBlank(handleTimeEnd)) { + terms.put("handleTimeStart", handleTimeStart); + terms.put("handleTimeEnd", handleTimeEnd); + } + // 经办人 + String mediator = request.getParameter("mediator"); + if (StringUtils.isNotBlank(mediator)){ + terms.put("mediator", mediator); + } + // 事项来源 + String canal = request.getParameter("canal"); + if (StringUtils.isNotBlank(canal)){ + terms.put("canal", canal); + } + // 化解结果 + String mediResult = request.getParameter("mediResult"); + if (StringUtils.isNotBlank(mediResult)){ + terms.put("mediResult", mediResult); + } + // 事项等级 + String caseLevel = request.getParameter("caseLevel"); + if (StringUtils.isNotBlank(caseLevel)){ + terms.put("caseLevel", caseLevel); + } + // 纠纷类型 + String caseType = request.getParameter("caseType"); + if (StringUtils.isNotBlank(caseType)){ + terms.put("caseType", caseType); + } + // 事项状态 + String status = request.getParameter("status"); + if (StringUtils.isNotBlank(status)){ + terms.put("status", status); + } + CtUserDTO loginUser = custClient.clientGetUserAll(userId); + terms.put("handleUnitId", loginUser.getUnitId()); + // 排序 + Sort sort = null; + String sortName = null; + String sortColmnStr = request.getParameter("sortColmn"); + String sortTypeStr = request.getParameter("sortType"); + int sortColmn = 1; + int sortType = 1; + if(StringUtils.isNotBlank(sortColmnStr)){ + sortColmn = Integer.valueOf(sortColmnStr); + } + if(StringUtils.isNotBlank(sortTypeStr)){ + sortType = Integer.valueOf(sortTypeStr); + } + switch (sortColmn){ + case 1: + sortName = "t1.handle_time"; + break; + case 2: + sortName = "t2.case_level"; + break; + case 3: + sortName = "superviseCount"; + break; + default: + sortName = "t1.handle_time"; + break; + } + switch (sortType){ + case 1: + sort = Sort.by(Sort.Direction.ASC, sortName); + break; + case 2: + sort = Sort.by(Sort.Direction.DESC, sortName); + break; + default: + sort = Sort.by(Sort.Direction.ASC, sortName); + break; + } + if(ObjectUtils.isEmpty(sort)){ + sort = Sort.by(Sort.Direction.DESC, "t1.create_time"); + } + PageRequest pageRequest = PageRequest.of(page-1, size, sort); + return ReturnSucUtils.getRepInfo(service.pageMyTaskYb(pageRequest, terms)); + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } } -- Gitblit v1.8.0