package cn.huge.module.cases.controller.web;
|
|
import cn.huge.base.common.utils.DateUtils;
|
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.analysis.service.AnalysisService;
|
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.CtUnitDTO;
|
import cn.huge.module.cust.dto.CtUserDTO;
|
import cn.huge.module.mediate.constant.AuditBaseConstsEnum;
|
import cn.huge.module.sys.dto.FileIdTypeInfoBaseDTO;
|
import com.alibaba.excel.EasyExcel;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
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.BeanUtils;
|
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.ServletOutputStream;
|
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletResponse;
|
import java.net.URLEncoder;
|
import java.util.*;
|
import java.util.stream.Collectors;
|
import java.util.stream.Stream;
|
|
/**
|
* @title: 纠纷任务表接口api-web端
|
* @description: 纠纷任务表接口api-web端
|
* @company: hugeinfo
|
* @author: liyj
|
* @time: 2024-09-06 15:50:06
|
* @version: 1.0.0
|
*/
|
@Slf4j
|
@RestController
|
@RequestMapping("/api/web/caseTask")
|
public class CaseTaskWebController {
|
|
@Autowired(required = false)
|
private HttpServletRequest request;
|
|
@Autowired
|
private CaseTaskService service;
|
@Autowired
|
private CaseWindupApplyService caseWindupApplyService;
|
@Autowired
|
private CaseReturnService caseReturnService;
|
@Autowired
|
private CaseAppearService caseAppearService;
|
@Autowired
|
private SysClientImpl sysClient;
|
@Autowired
|
private CustClientImpl custClient;
|
@Autowired
|
private CaseSuperviseService superviseService;
|
@Autowired
|
private CaseDismissService caseDismissService;
|
@Autowired
|
private AnalysisService analysisService;
|
@Autowired
|
private CaseInfoUnfoldService caseInfoUnfoldService;
|
|
/**
|
* web端-任务处理页面-初始化tab和按钮
|
*
|
* @param caseTaskId 纠纷任务编号
|
* @return Object
|
* @url {ctx}/api/web/caseTask/getTabButton
|
*/
|
@GetMapping("/getTabButton")
|
public Object getTabButton(@RequestParam(value = "caseTaskId") String caseTaskId, @CurrentUser String userId) {
|
try {
|
return ReturnSucUtils.getRepInfo(service.webGetTabButton(caseTaskId, userId));
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-不予受理
|
*
|
* @param caseDismiss 不予受理表单
|
* @return Object
|
* @url {ctx}/api/web/caseTask/dismiss
|
*/
|
@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端-交办
|
*
|
* @param assignTaskDTO 交办表单
|
* @return Object
|
* @url {ctx}/api/web/caseTask/assign
|
*/
|
@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端-签收
|
*
|
* @param signTaskDTOList 签收表单数组
|
* @return Object
|
* @url {ctx}/api/web/caseTask/sign
|
*/
|
@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端-全部签收
|
*
|
* @param
|
* @return Object
|
* @url {ctx}/api/web/caseTask/allSign
|
*/
|
@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("readStatus", 0);
|
|
List<SignTaskDTO> signTaskDTOList = service.listIdByTerms(terms);
|
service.webSign(signTaskDTOList, userId);
|
return ReturnSucUtils.getRepInfo();
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-受理
|
*
|
* @param acceptTaskDTO 受理表单
|
* @return Object
|
* @url {ctx}/api/web/caseTask/accept
|
*/
|
@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();
|
}
|
}
|
|
/**
|
* web端-结案申请
|
*
|
* @param caseWindupApply 结案申请表单
|
* @return Object
|
* @url {ctx}/api/web/caseTask/windupApply
|
*/
|
@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();
|
}
|
}
|
|
/**
|
* web端-结案审核-查询结案申请信息
|
*
|
* @param caseTaskId 纠纷任务编号
|
* @return Object
|
* @url {ctx}/api/web/caseTask/getWindupApplyInfo
|
*/
|
@GetMapping("/getWindupApplyInfo")
|
public Object getWindupApplyInfo(@RequestParam(value = "caseTaskId") String caseTaskId, @CurrentUser String userId) {
|
try {
|
CaseWindupApply caseWindupApply = caseWindupApplyService.getByCaseTaskId(caseTaskId);
|
return ReturnSucUtils.getRepInfo(caseWindupApply);
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-结案审核
|
*
|
* @param caseWindupApply 结案审核表单
|
* @return Object
|
* @url {ctx}/api/web/caseTask/windupAudit
|
*/
|
@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();
|
}
|
}
|
|
/**
|
* web端-回退申请
|
*
|
* @param caseReturn 回退申请表单
|
* @return Object
|
* @url {ctx}/api/web/caseTask/returnApply
|
*/
|
@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();
|
}
|
}
|
|
/**
|
* web端-回退审核-查询回退申请信息
|
*
|
* @param caseTaskId 纠纷任务编号
|
* @return Object
|
* @url {ctx}/api/web/caseTask/getReturnApplyInfo
|
*/
|
@GetMapping("/getReturnApplyInfo")
|
public Object getReturnApplyInfo(@RequestParam(value = "caseTaskId") String caseTaskId, @CurrentUser String userId) {
|
try {
|
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();
|
}
|
}
|
|
/**
|
* web端-回退审核
|
*
|
* @param caseReturn 回退审核表单
|
* @return Object
|
* @url {ctx}/api/web/caseTask/returnAudit
|
*/
|
@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();
|
}
|
}
|
|
/**
|
* web端-上报申请
|
*
|
* @param caseAppear 上报申请表单
|
* @return Object
|
* @url {ctx}/api/web/caseTask/appearApply
|
*/
|
@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();
|
}
|
}
|
|
/**
|
* web端-上报审核-查询上报申请信息
|
*
|
* @param caseTaskId 纠纷任务编号
|
* @return Object
|
* @url {ctx}/api/web/caseTask/getAppearApplyInfo
|
*/
|
@GetMapping("/getAppearApplyInfo")
|
public Object getAppearApplyInfo(@RequestParam(value = "caseTaskId") String caseTaskId, @CurrentUser String userId) {
|
try {
|
return ReturnSucUtils.getRepInfo(caseAppearService.getByCaseTaskId(caseTaskId));
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-上报审核
|
*
|
* @param caseAppear 上报审核表单
|
* @return Object
|
* @url {ctx}/api/web/caseTask/appearAudit
|
*/
|
@PostMapping("/appearAudit")
|
public Object appearAudit(@RequestBody CaseAppear caseAppear, @CurrentUser String userId) {
|
try {
|
service.webAppearAudit(caseAppear, userId);
|
return ReturnSucUtils.getRepInfo();
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-查询流程进度
|
*
|
* @param caseId 纠纷编号
|
* @return Object
|
* @url {ctx}/api/web/caseTask/listCaseFlow
|
*/
|
@GetMapping("/listCaseFlow")
|
public Object listCaseFlow(@RequestParam(value = "caseId") String caseId, @CurrentUser String userId) {
|
try {
|
return ReturnSucUtils.getRepInfo(service.webListCaseFlow(caseId, userId));
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-首页-查询待办数量
|
*
|
* @return Object
|
* @url {ctx}/api/web/caseTask/getCountList
|
*/
|
@GetMapping("/getCountList")
|
public Object getCountList(@CurrentUser String userId) {
|
try {
|
return ReturnSucUtils.getRepInfo(service.getCountList(userId));
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-工作台-查询待办任务-分派任务
|
*
|
* @param page 页码
|
* @param size 每页数量
|
* @param status 状态,1:待分派,2:已分派
|
* @param sortType 排序方式(1:正序;2:倒序)
|
* @param sortColmn 排序字段(1:流转时间;2:分派时限/分派时间;3:事项等级;4:督办次数)
|
* @return
|
* @url {ctx}/api/web/caseTask/pageMyTaskFp
|
*/
|
@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端-工作台-查询待办任务-已读未读任务
|
*
|
* @param page 页码
|
* @param size 每页数量
|
* @param status 状态,0:未读,1:已读
|
* @param sortType 排序方式(1:正序;2:倒序)
|
* @param sortColmn 排序字段(1:流转时间;2:签收时限/签收时间;3:事项等级;4:督办次数)
|
* @return
|
* @url {ctx}/api/web/caseTask/pageMyTaskQs
|
*/
|
@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("readTimeStart", timeStart);
|
terms.put("readTimeEnd", 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("readStatus", status);
|
// 排序
|
Sort sort = null;
|
String sortName = null;
|
switch (sortColmn) {
|
case 1:
|
sortName = "t1.create_time";
|
break;
|
case 2:
|
if (status == 1) {
|
sortName = "t1.read_expire_time";
|
} else {
|
sortName = "t1.read_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端-工作台-查询待办任务-受理任务
|
*
|
* @param page 页码
|
* @param size 每页数量
|
* @param status 状态,1:待受理,2:已受理,3:不予受理
|
* @param sortType 排序方式(1:正序;2:倒序)
|
* @param sortColmn 排序字段(1:流转时间;2:受理时限/受理时间/不予受理时间;3:事项等级;4:督办次数)
|
* @return
|
* @url {ctx}/api/web/caseTask/pageMyTaskSl
|
*/
|
@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端-工作台-查询待办任务-办理中
|
*
|
* @param page 页码
|
* @param size 每页数量
|
* @param caseTaskType 纠纷任务类型(1:我承办的;2:我配合的)
|
* @param sortType 排序方式(1:正序;2:倒序)
|
* @param sortColmn 排序字段(1:流转时间/已办天数;2:分派时限;3:事项等级;4:督办次数)
|
* @return
|
* @url {ctx}/api/web/caseTask/pageMyTaskBlz
|
*/
|
@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());
|
|
String mediatorType = request.getParameter("mediatorType");
|
if(ObjectUtils.isNotEmpty(mediatorType)){
|
terms.put("mediatorType", mediatorType);
|
terms.put("mediatorId", loginUser.getId());
|
}
|
|
// 排序
|
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端-工作台-查询待办任务-已办理任务
|
*
|
* @param page 页码
|
* @param size 每页数量
|
* @param status 状态,0:结案申请,1:已结案
|
* @param caseTaskType 纠纷任务类型(1:我承办的;2:我配合的)
|
* @param sortType 排序方式(1:正序;2:倒序)
|
* @param sortColmn 排序字段(1:结案申请时间;2:事项等级;3:督办次数)
|
* @return
|
* @url {ctx}/api/web/caseTask/pageMyTaskBl
|
*/
|
@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);
|
}
|
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 == 1) {
|
sortName = "t2.close_time";
|
} else {
|
sortName = "t1.audit_time";
|
}
|
break;
|
case 2:
|
if (status == 1) {
|
sortName = "t1.case_level";
|
} else {
|
sortName = "t2.case_level";
|
}
|
break;
|
case 3:
|
sortName = "superviseCount";
|
break;
|
default:
|
if (status == 1) {
|
sortName = "t2.close_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);
|
if (status == 1) {
|
return ReturnSucUtils.getRepInfo(service.pageMyTaskYja(pageRequest, terms));
|
} else {
|
return ReturnSucUtils.getRepInfo(service.pageMyTaskJasq(pageRequest, terms));
|
}
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-工作台-查询待办任务-审核任务
|
*
|
* @param page 页码
|
* @param size 每页数量
|
* @param status 状态,0:待审核,1:已审核
|
* @param type 审核类型,1:回退审核,2:上报审核,3:结案审核,4:联合处置审核
|
* @param sortType 排序方式(1:正序;2:倒序)
|
* @return
|
* @url {ctx}/api/web/caseTask/pageMyTaskSh
|
*/
|
@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端-工作台-查询待办任务-审核任务-我申请的
|
*
|
* @param page 页码
|
* @param size 每页数量
|
* @param sortType 排序方式(1:正序;2:倒序)
|
* @param sortColmn 排序字段(1:申请时间;2:审核时间;3:事项等级)
|
* @return
|
* @url {ctx}/api/web/caseTask/pageMyTaskShWSQD
|
*/
|
@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端-工作台-查询待办任务-督办
|
*
|
* @param page 页码
|
* @param size 每页数量
|
* @param status 状态,0:未回复,1:已回复, 3:我发起的
|
* @param sortType 排序方式(1:正序;2:倒序)
|
* @param sortColmn 排序字段(1:督办时间/回复时限;2:事项等级)
|
* @return
|
* @url {ctx}/api/web/caseTask/pageMyTaskDb
|
*/
|
@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;
|
case 5:
|
sortName = "t1.reply_time";
|
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端-工作台-查询极端案件
|
*
|
* @param page 页码
|
* @param size 每页数量
|
* @param sortType 排序方式(1:正序;2:倒序)
|
* @param sortColmn 排序字段(1:登记时间;2:事项状态;3:督办次数;)
|
* @return
|
* @url {ctx}/api/web/caseTask/pageExtremeCase
|
*/
|
@GetMapping("/pageExtremeCase")
|
public Object pageExtremeCase(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size,
|
@CurrentUser String userId, @RequestParam(value = "sortType") int sortType,
|
@RequestParam(value = "sortColmn") int sortColmn) {
|
try {
|
CtUserDTO loginUser = custClient.clientGetUserAll(userId);
|
CtUnitDTO ctUnitDTO = custClient.getUnitByUserId(userId);
|
// 条件
|
Map<String, Object> terms = Maps.newHashMap();
|
// 流程/分派时间区间
|
String timeStart = request.getParameter("createStart");
|
String timeEnd = request.getParameter("createEnd");
|
if (StringUtils.isNotBlank(timeStart) && StringUtils.isNotBlank(timeEnd)) {
|
terms.put("createTimeStart", timeStart);
|
terms.put("createTimeEnd", timeEnd);
|
}
|
// 承办部门
|
String mediateUnitId = request.getParameter("mediateUnitId");
|
if (StringUtils.isNotBlank(mediateUnitId)) {
|
terms.put("mediateUnitId", mediateUnitId);
|
}
|
// 配合部门
|
String assistUnitId = request.getParameter("assistUnitId");
|
if (StringUtils.isNotBlank(assistUnitId)) {
|
terms.put("assistUnitId", assistUnitId);
|
}
|
// 查询申请方/被申请方关键词筛选
|
String partyName = request.getParameter("partyName");
|
if (StringUtils.isNotBlank(partyName)) {
|
terms.put("partyName", partyName);
|
}
|
//事项状态筛选(1:未办结;2:已办结)
|
String caseStatus = request.getParameter("caseStatus");
|
if (StringUtils.isNotBlank(caseStatus)) {
|
if ("1".equals(caseStatus)) {
|
terms.put("status", "1,2,3,4,5");
|
} else if ("2".equals(caseStatus)) {
|
terms.put("status", "6,7");
|
} else if ("3".equals(caseStatus)) {
|
terms.put("status", "8");
|
}
|
}
|
// 组织编号
|
String unitId = request.getParameter("unitId");
|
if (StringUtils.isNotBlank(unitId)) {
|
terms.put("unitId", unitId);
|
} else {
|
// 市
|
String city = request.getParameter("queCity");
|
if (StringUtils.isNotBlank(city)) {
|
terms.put("city", city);
|
}
|
// 区
|
String area = request.getParameter("queArea");
|
if (StringUtils.isNotBlank(area)) {
|
terms.put("area", area);
|
}
|
// 街道
|
String road = request.getParameter("queRoad");
|
if (StringUtils.isNotBlank(road)) {
|
terms.put("road", road);
|
}
|
// 社区
|
String village = request.getParameter("queVillage");
|
if (StringUtils.isNotBlank(village)) {
|
terms.put("village", village);
|
}
|
}
|
|
List<String> unitIdList = new ArrayList<>();
|
String unitIds = new String();
|
//判断是否是解纷态势查询,当没有传入查询条件时,根据登录用户组织级别来查询
|
if (!terms.containsKey("city") && !terms.containsKey("area") && !terms.containsKey("road")
|
&& !terms.containsKey("village") && !terms.containsKey("unitId")) {
|
//首页查询时
|
terms.put("unitIds", "'" + ctUnitDTO.getId() + "'");
|
} else {
|
//当解纷态势查询
|
if (terms.containsKey("unitId")) {
|
//查询条件中包含组织编号时,只查该组织及同级部门
|
unitIdList = analysisService.getAllDeptParentUnit((String) terms.get("unitId"));
|
unitIds = unitIdList.stream().map(String::valueOf).collect(Collectors.joining("','"));
|
if (StringUtils.isNotBlank(unitIds)) {
|
unitIds = "'" + unitIds + "'";
|
}
|
terms.put("unitIds", unitIds);
|
}
|
}
|
|
// 排序
|
Sort sort = null;
|
String sortName = null;
|
switch (sortColmn) {
|
case 1:
|
sortName = "t1.create_time";
|
break;
|
case 2:
|
sortName = "t1.status";
|
break;
|
case 3:
|
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(caseInfoUnfoldService.pageExtremeCase(pageRequest, terms));
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-申请记录
|
*
|
* @return
|
* @url {ctx}/api/web/caseTask/listMyApplyRecord
|
*/
|
@GetMapping("/listMyApplyRecord")
|
public Object listMyApplyRecord(@RequestParam(value = "caseId") String caseId) {
|
try {
|
return ReturnSucUtils.getRepInfo(service.listMyApplyRecord(caseId));
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-工作台-已办事项
|
*
|
* @param page 页码
|
* @param size 每页数量
|
* sortColmn 排序字段(1:办理时间;2:事项等级;3:督办次数)
|
* sortType 排序方式(1:正序;2:倒序)
|
* @return
|
* @url {ctx}/api/web/caseTask/pageMyTaskYb
|
*/
|
@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);
|
}
|
// flowStatus 流程状态 1-已受理,2-已交班。3-已上报,4已回退
|
String flowStatus = request.getParameter("flowStatus");
|
if (StringUtils.isNotBlank(flowStatus)) {
|
if ("1".equals(flowStatus)) {
|
terms.put("nodeIdList", Arrays.asList("DSL", "ZJ_DSL", "QJ_DSL", "SJ_DSL", "BLFK", "JASQ", "JASH", "JASH_YJ", "JASH_EJ", "DSRPJ", "JAGD"));
|
} else if ("2".equals(flowStatus)) {
|
terms.put("nodeIdList", Arrays.asList("DFP", "ZJ_DFP", "QJ_DFP", "SJ_DFP"));
|
} else if ("3".equals(flowStatus)) {
|
terms.put("nodeIdList", Arrays.asList("QJ_S", "SJ_SBSH", "QJ_SBSH"));
|
} else if ("4".equals(flowStatus)) {
|
terms.put("nodeIdList", Arrays.asList("HTSH", "ZJ_HTSH", "QJ_HTSH", "SJ_HTSH"));
|
}
|
} else {
|
terms.put("nodeIdList", Arrays.asList("DSL", "ZJ_DSL", "QJ_DSL", "SJ_DSL", "BLFK", "JASQ", "JASH", "JASH_YJ", "JASH_EJ", "DSRPJ", "JAGD"
|
, "DFP", "ZJ_DFP", "QJ_DFP", "SJ_DFP"
|
, "QJ_S", "SJ_SBSH", "QJ_SBSH"
|
, "HTSH", "ZJ_HTSH", "QJ_HTSH", "SJ_HTSH"));
|
}
|
|
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) {
|
log.error("[CaseTaskWebController.pageMyTaskYb]调用失败,异常信息:" + e, e);
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* 极端扬言-导出
|
*
|
* @return Object
|
* @url {ctx}/api/web/caseTask/exportListExtremeCase
|
*/
|
@RequestMapping("/exportListExtremeCase")
|
public void exportListExtremeCase(HttpServletResponse response, @RequestParam(value = "userId") String userId, @RequestParam(value = "sortType") int sortType,
|
@RequestParam(value = "sortColmn") int sortColmn) {
|
|
|
try {
|
CtUnitDTO ctUnitDTO = custClient.getUnitByUserId(userId);
|
// 条件
|
Map<String, Object> terms = Maps.newHashMap();
|
// 流程/分派时间区间
|
String timeStart = request.getParameter("createStart");
|
String timeEnd = request.getParameter("createEnd");
|
if (StringUtils.isNotBlank(timeStart) && StringUtils.isNotBlank(timeEnd)) {
|
terms.put("createTimeStart", timeStart);
|
terms.put("createTimeEnd", timeEnd);
|
}
|
// 承办部门
|
String mediateUnitId = request.getParameter("mediateUnitId");
|
if (StringUtils.isNotBlank(mediateUnitId)) {
|
terms.put("mediateUnitId", mediateUnitId);
|
}
|
// 配合部门
|
String assistUnitId = request.getParameter("assistUnitId");
|
if (StringUtils.isNotBlank(assistUnitId)) {
|
terms.put("assistUnitId", assistUnitId);
|
}
|
// 查询申请方/被申请方关键词筛选
|
String partyName = request.getParameter("partyName");
|
if (StringUtils.isNotBlank(partyName)) {
|
terms.put("partyName", partyName);
|
}
|
//事项状态筛选(1:未办结;2:已办结)
|
String caseStatus = request.getParameter("caseStatus");
|
if (StringUtils.isNotBlank(caseStatus)) {
|
if ("1".equals(caseStatus)) {
|
terms.put("status", "1,2,3,4,5");
|
} else if ("2".equals(caseStatus)) {
|
terms.put("status", "6,7");
|
} else if ("3".equals(caseStatus)) {
|
terms.put("status", "8");
|
}
|
}
|
terms.put("unitIds", "'" + ctUnitDTO.getId() + "'");
|
// 排序
|
Sort sort = null;
|
String sortName = null;
|
switch (sortColmn) {
|
case 1:
|
sortName = "t1.create_time";
|
break;
|
case 2:
|
sortName = "t1.status";
|
break;
|
case 3:
|
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(0, 100000, sort);
|
List<FrontPageListYYJDDTO> frontPageListYYJDDTOList = caseInfoUnfoldService.listExtremeCase(pageRequest, terms);
|
String fileName = "扬言极端.xlsx";
|
response.setCharacterEncoding("UTF-8");
|
response.setHeader("content-Type", "application/vnd.ms-excel;charset=UTF-8");
|
response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(fileName, "UTF-8"));
|
ServletOutputStream outputStream = response.getOutputStream();
|
EasyExcel.write(outputStream, FrontPageListYYJDDTO.class).sheet("扬言极端").doWrite(frontPageListYYJDDTOList);
|
} catch (Exception e) {
|
log.error("Controller接口[CaseInfoWebController.exportQueryAll]请求异常:" + e, e);
|
}
|
|
}
|
|
/**
|
* 测试接口
|
* @url {ctx}/api/web/caseTask/test
|
* @return Object
|
*/
|
@GetMapping("/test")
|
public Object test(@RequestParam(value = "caseId") String caseId,
|
@RequestParam(value = "oldTaskId") String oldTaskId, @RequestParam(value = "newTaskId") String newTaskId,
|
@RequestParam(value = "oldProcess") String oldProcess,@RequestParam(value = "newProcess") String newProcess,
|
@RequestParam(value = "ownerIds") String ownerIds, @RequestParam(value = "userId") String userId,
|
@RequestParam(value = "handleStatus") String handleStatus) {
|
try {
|
CaseTask oldTask = null;
|
if(StringUtils.isNotBlank(oldTaskId)){
|
oldTask = service.getById(oldTaskId);
|
}
|
CaseTask newTask = null;
|
if(StringUtils.isNotBlank(newTaskId)){
|
newTask = service.getById(newTaskId);
|
}
|
List<String> ownerIdList = Arrays.asList(ownerIds.split(","));
|
service.AsynUpdateCaseEventNodeLink(caseId, oldTask, newTask, oldProcess, newProcess, ownerIdList, userId, handleStatus);
|
return ReturnSucUtils.getRepInfo();
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-根据纠纷编号获取最新任务编号
|
*
|
* @param caseId 纠纷编号
|
* @return Object
|
* @url {ctx}/api/web/caseTask/getLatestTaskId
|
*/
|
@GetMapping("/getLatestTaskId")
|
public Object getLatestTaskId(@RequestParam(value = "caseId") String caseId) {
|
try {
|
return ReturnSucUtils.getRepInfo(service.getLatestTaskId(caseId));
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
}
|