From fd3d6d30afb9041c2cc3099833b7683e12c7daff Mon Sep 17 00:00:00 2001
From: wangwh <2397901735@qq.com>
Date: Sun, 22 Sep 2024 10:00:36 +0800
Subject: [PATCH] 督办信息兼容新需求 查询待办任务-督办 首页-督办-我发起的 功能兼容 添加督办逻辑修改 新增全部签收接口 首页-待审核-我申请的 新增接口 办理反馈新增承办/配合部门判断 新增查询督办详情接口 查询时限接口bug修复
---
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java | 767 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 740 insertions(+), 27 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..e3dca49 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,15 @@
@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);
+ 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 +277,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 +293,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 +324,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 +347,7 @@
}
/**
- * web端-查询流程进度
+ * web端-首页-查询待办数量
* @url {ctx}/api/web/caseTask/getCountList
* @return Object
*/
@@ -244,4 +359,602 @@
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:事项等级)
+ * @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);
+ terms.put("candeUnitId",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;
+ }
+ switch (sortType){
+ case 1:
+ sort = Sort.by(Sort.Direction.ASC, sortName);
+ break;
+ case 2:
+ 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:事项等级)
+ * @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);
+ terms.put("candeUnitId",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;
+ }
+ switch (sortType){
+ case 1:
+ sort = Sort.by(Sort.Direction.ASC, sortName);
+ break;
+ case 2:
+ 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:事项等级)
+ * @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;
+ }
+ switch (sortType){
+ case 1:
+ sort = Sort.by(Sort.Direction.ASC, sortName);
+ break;
+ case 2:
+ 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);
+ terms.put("candeUnitId", 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:事项等级)
+ * @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;
+ }
+ switch (sortType){
+ case 1:
+ sort = Sort.by(Sort.Direction.ASC, sortName);
+ break;
+ case 2:
+ 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:事项等级)
+ * @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;
+ }
+ switch (sortType){
+ case 1:
+ sort = Sort.by(Sort.Direction.ASC, sortName);
+ break;
+ case 2:
+ 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;
+ }
+ switch (sortType){
+ case 1:
+ sort = Sort.by(Sort.Direction.ASC, sortName);
+ break;
+ case 2:
+ 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;
+ }
+ switch (sortType){
+ case 1:
+ sort = Sort.by(Sort.Direction.ASC, sortName);
+ break;
+ case 2:
+ 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;
+ }
+ switch (sortType){
+ case 1:
+ sort = Sort.by(Sort.Direction.ASC, sortName);
+ break;
+ case 2:
+ 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())){
+ 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();
+ }
+ }
}
--
Gitblit v1.8.0