From 0c40e0515f6661313e8ac4a14895860e8b4ebb69 Mon Sep 17 00:00:00 2001
From: zhouxiantao <1026371446@qq.com>
Date: Mon, 23 Sep 2024 16:33:51 +0800
Subject: [PATCH] 综合查询-条件
---
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java | 974 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 948 insertions(+), 26 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 daf365e..ac47c5e 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,35 @@
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.AcceptTaskDTO;
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.FrontPageListSLDTO;
+import cn.huge.module.cases.domain.dto.SignTaskDTO;
+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 +58,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 +76,106 @@
@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) {
+ 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);
+ }
+ 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 +190,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 +206,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 +222,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 +238,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 +254,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 +279,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 +295,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 +326,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();
@@ -231,4 +348,809 @@
}
}
+ /**
+ * web端-首页-查询待办数量
+ * @url {ctx}/api/web/caseTask/getCountList
+ * @return Object
+ */
+ @GetMapping("/getCountList")
+ public Object getCountList(@CurrentUser String userId) {
+ try {
+ return ReturnSucUtils.getRepInfo(service.getCountList(userId));
+ } catch (Exception e) {
+ 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.DESC, 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.DESC, 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.DESC, 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.DESC, 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 = "t1.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.DESC, 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) {
+ 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:
+ sortName = "t1.return_time";
+ break;
+ case 2:
+ sortName = "t1.appear_time";
+ break;
+ case 3:
+ sortName = "t1.apply_time";
+ break;
+ case 4:
+ sortName = "t1.apply_time";
+ break;
+ default:
+ sortName = "t1.return_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.DESC, 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 = "t2.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.DESC, 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 = "t1.case_level";
+ 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.DESC, 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<CaseSupervise> caseSupervisePage = 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());
+ }
+ caseSupervisePage = superviseService.pageMyTaskDb(pageRequest, terms);
+ }
+ return ReturnSucUtils.getRepInfo(caseSupervisePage);
+ } 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.DESC, 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