package cn.huge.module.cases.controller.web;
|
|
import cn.huge.base.common.utils.ReturnFailUtils;
|
import cn.huge.base.common.utils.ReturnSucUtils;
|
import cn.huge.base.config.CurrentUser;
|
import cn.huge.module.cases.domain.dto.AssignTaskDTO;
|
import cn.huge.module.cases.domain.po.CaseAppear;
|
import cn.huge.module.cases.domain.po.CaseReturn;
|
import cn.huge.module.cases.domain.po.CaseTask;
|
import cn.huge.module.cases.domain.po.CaseWindupApply;
|
import cn.huge.module.cases.service.CaseAppearService;
|
import cn.huge.module.cases.service.CaseReturnService;
|
import cn.huge.module.cases.service.CaseTaskService;
|
import cn.huge.module.cases.service.CaseWindupApplyService;
|
import cn.huge.module.client.api.SysClient;
|
import cn.huge.module.client.api.impl.SysClientImpl;
|
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.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;
|
|
/**
|
* @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;
|
|
/**
|
* web端-任务处理页面-初始化tab和按钮
|
* @url {ctx}/api/web/caseTask/getTabButton
|
* @param caseTaskId 纠纷任务编号
|
* @return Object
|
*/
|
@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端-结案申请
|
* @url {ctx}/api/web/caseTask/windupApply
|
* @param caseWindupApply 结案申请表单
|
* @return Object
|
*/
|
@PostMapping("/windupApply")
|
public Object windupApply(@RequestBody CaseWindupApply caseWindupApply, @CurrentUser String userId) {
|
try {
|
return ReturnSucUtils.getRepInfo();
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-结案审核-查询结案申请信息
|
* @url {ctx}/api/web/caseTask/getWindupApplyInfo
|
* @param caseTaskId 纠纷任务编号
|
* @return Object
|
*/
|
@GetMapping("/getWindupApplyInfo")
|
public Object getWindupApplyInfo(@RequestParam(value = "caseTaskId") String caseTaskId, @CurrentUser String userId) {
|
try {
|
return ReturnSucUtils.getRepInfo(caseWindupApplyService.getByCaseTaskId(caseTaskId));
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-结案审核
|
* @url {ctx}/api/web/caseTask/windupAudit
|
* @param caseWindupApply 结案审核表单
|
* @return Object
|
*/
|
@PostMapping("/windupAudit")
|
public Object windupAudit(@RequestBody CaseWindupApply caseWindupApply, @CurrentUser String userId) {
|
try {
|
return ReturnSucUtils.getRepInfo();
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-回退申请
|
* @url {ctx}/api/web/caseTask/returnApply
|
* @param caseReturn 回退申请表单
|
* @return Object
|
*/
|
@PostMapping("/returnApply")
|
public Object returnApply(@RequestBody CaseReturn caseReturn, @CurrentUser String userId) {
|
try {
|
return ReturnSucUtils.getRepInfo();
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-回退审核-查询回退申请信息
|
* @url {ctx}/api/web/caseTask/getReturnApplyInfo
|
* @param caseTaskId 纠纷任务编号
|
* @return Object
|
*/
|
@GetMapping("/getReturnApplyInfo")
|
public Object getReturnApplyInfo(@RequestParam(value = "caseTaskId") String caseTaskId, @CurrentUser String userId) {
|
try {
|
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();
|
}
|
}
|
|
/**
|
* web端-回退审核
|
* @url {ctx}/api/web/caseTask/returnAudit
|
* @param caseReturn 回退审核表单
|
* @return Object
|
*/
|
@PostMapping("/returnAudit")
|
public Object returnAudit(@RequestBody CaseReturn caseReturn, @CurrentUser String userId) {
|
try {
|
return ReturnSucUtils.getRepInfo();
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-上报申请
|
* @url {ctx}/api/web/caseTask/appearApply
|
* @param caseAppear 上报申请表单
|
* @return Object
|
*/
|
@PostMapping("/appearApply")
|
public Object appearApply(@RequestBody CaseAppear caseAppear, @CurrentUser String userId) {
|
try {
|
return ReturnSucUtils.getRepInfo();
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-上报审核-查询上报申请信息
|
* @url {ctx}/api/web/caseTask/getAppearApplyInfo
|
* @param caseTaskId 纠纷任务编号
|
* @return Object
|
*/
|
@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端-上报审核
|
* @url {ctx}/api/web/caseTask/appearAudit
|
* @param caseAppear 上报审核表单
|
* @return Object
|
*/
|
@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 {
|
return ReturnSucUtils.getRepInfo();
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-查询流程进度
|
* @url {ctx}/api/web/caseTask/listCaseFlow
|
* @param caseId 纠纷编号
|
* @return Object
|
*/
|
@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端-查询流程进度
|
* @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:已分派
|
* @return
|
*/
|
@GetMapping("/pageMyTaskFp")
|
public Object pageMyTaskFp(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size,
|
@RequestParam(value = "status") int status, @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("timeStart", timeStart);
|
terms.put("timeEnd", timeEnd);
|
}
|
// 查询申请方/被申请方关键词
|
String partyName = request.getParameter("partyName");
|
if (StringUtils.isNotBlank(partyName)){
|
terms.put("partyName", partyName);
|
}
|
return ReturnSucUtils.getRepInfo();
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-工作台-查询待办任务-签收任务
|
* @url {ctx}/api/web/caseTask/pageMyTaskQs
|
* @param page 页码
|
* @param size 每页数量
|
* @param status 状态,1:待签收,2:已签收
|
* @return
|
*/
|
@GetMapping("/pageMyTaskQs")
|
public Object pageMyTaskQs(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size,
|
@RequestParam(value = "status") int status, @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("timeStart", timeStart);
|
terms.put("timeEnd", timeEnd);
|
}
|
// 查询申请方/被申请方关键词
|
String partyName = request.getParameter("partyName");
|
if (StringUtils.isNotBlank(partyName)){
|
terms.put("partyName", partyName);
|
}
|
return ReturnSucUtils.getRepInfo();
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-工作台-查询待办任务-受理任务
|
* @url {ctx}/api/web/caseTask/pageMyTaskSl
|
* @param page 页码
|
* @param size 每页数量
|
* @param status 状态,1:待受理,2:已受理
|
* @return
|
*/
|
@GetMapping("/pageMyTaskSl")
|
public Object pageMyTaskSl(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size,
|
@RequestParam(value = "status") int status, @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("timeStart", timeStart);
|
terms.put("timeEnd", timeEnd);
|
}
|
// 查询申请方/被申请方关键词
|
String partyName = request.getParameter("partyName");
|
if (StringUtils.isNotBlank(partyName)){
|
terms.put("partyName", partyName);
|
}
|
return ReturnSucUtils.getRepInfo();
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-工作台-查询待办任务-办理任务
|
* @url {ctx}/api/web/caseTask/pageMyTaskBl
|
* @param page 页码
|
* @param size 每页数量
|
* @param status 状态,1:办理中,2:结案申请,3:已结案
|
* @return
|
*/
|
@GetMapping("/pageMyTaskBl")
|
public Object pageMyTaskBl(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size,
|
@RequestParam(value = "status") int status, @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("timeStart", timeStart);
|
terms.put("timeEnd", timeEnd);
|
}
|
// 查询申请方/被申请方关键词
|
String partyName = request.getParameter("partyName");
|
if (StringUtils.isNotBlank(partyName)){
|
terms.put("partyName", partyName);
|
}
|
return ReturnSucUtils.getRepInfo();
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* web端-工作台-查询待办任务-审核任务
|
* @url {ctx}/api/web/caseTask/pageMyTaskSh
|
* @param page 页码
|
* @param size 每页数量
|
* @param status 状态,1:待审核,2:已审核
|
* @param type 审核类型,1:回退审核,2:上报审核,3:结案审核,4:联合处置审核
|
* @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) {
|
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);
|
}
|
return ReturnSucUtils.getRepInfo();
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
}
|