终审列表查询

pull/1/head
DELL 1 year ago
parent 4c0df12a73
commit 1d7adfefb0

@ -15,6 +15,7 @@ import cn.jyjz.xiaoyao.common.base.param.ParamterPage;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService; import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil; import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil;
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery; import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery;
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQueryForm;
import cn.jyjz.xiaoyao.common.base.vo.ResultVo; import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil; import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import cn.jyjz.xiaoyao.common.base.vo.UserToken; import cn.jyjz.xiaoyao.common.base.vo.UserToken;
@ -44,10 +45,8 @@ import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import java.io.InputStream; import java.io.InputStream;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date; import java.text.SimpleDateFormat;
import java.util.HashMap; import java.util.*;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@Api(tags="ocr_流程接口") @Api(tags="ocr_流程接口")
@ -57,10 +56,10 @@ public class FlowTaskController extends BaseController {
@Resource @Resource
IFlowTaskService flowTaskService; IFlowTaskService flowTaskService;
@Resource @Resource
private UserTokenService userTokenService; private UserTokenService userTokenService;
@Resource @Resource
private UserService userService; private UserService userService;
@Resource @Resource
@ -114,7 +113,7 @@ public class FlowTaskController extends BaseController {
diagram.read(bytes); diagram.read(bytes);
return bytes; return bytes;
} }
/** /**
* *
* @return * @return
@ -122,7 +121,7 @@ public class FlowTaskController extends BaseController {
@PostMapping("/viewFormid") @PostMapping("/viewFormid")
@ResponseBody @ResponseBody
public ResultVo viewFormid(@RequestParam("processId") String processId, HttpServletRequest request){ public ResultVo viewFormid(@RequestParam("processId") String processId, HttpServletRequest request){
//查询业务主键 //查询业务主键
Category category = flowTaskService.viewForm(processId,request); Category category = flowTaskService.viewForm(processId,request);
if(null != category){ if(null != category){
@ -142,7 +141,7 @@ public class FlowTaskController extends BaseController {
Boolean flag = flowTaskService.complete(taskVO,request); Boolean flag = flowTaskService.complete(taskVO,request);
return flag?ResultVoUtil.success():ResultVoUtil.error(); return flag?ResultVoUtil.success():ResultVoUtil.error();
} }
/** /**
* *
* @return * @return
@ -151,34 +150,34 @@ public class FlowTaskController extends BaseController {
@PostMapping("/completeBatchFlow") @PostMapping("/completeBatchFlow")
@ResponseBody @ResponseBody
public ResultVo completeBatch(HttpServletRequest request){ public ResultVo completeBatch(HttpServletRequest request){
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
//任务ID //任务ID
String[] taskId = request.getParameterValues("taskId"); String[] taskId = request.getParameterValues("taskId");
//审批的任务主键 //审批的任务主键
String[] formid = request.getParameterValues("formid"); String[] formid = request.getParameterValues("formid");
String[] taskname = request.getParameterValues("taskname"); String[] taskname = request.getParameterValues("taskname");
//是否同意true同意false拒绝 //是否同意true同意false拒绝
boolean approvd = Boolean.valueOf(request.getParameter("approvd")); boolean approvd = Boolean.valueOf(request.getParameter("approvd"));
//审批意见") //审批意见")
String taskComment = request.getParameter("taskComment"); String taskComment = request.getParameter("taskComment");
//判断当前任务审批人是否一致 //判断当前任务审批人是否一致
if(!this.ocrTaskchildPictureService.validateAssignee(formid,userToken)){ if(!this.ocrTaskchildPictureService.validateAssignee(formid,userToken)){
return ResultVoUtil.error("审批人不一致,请到任务审批中处理。"); return ResultVoUtil.error("审批人不一致,请到任务审批中处理。");
} }
//TODO 判断当前任务是否审批完毕 //TODO 判断当前任务是否审批完毕
if(!this.ocrTaskchildPictureService.validateApprove(formid)){ if(!this.ocrTaskchildPictureService.validateApprove(formid)){
return ResultVoUtil.error("存在已经审批的任务。"); return ResultVoUtil.error("存在已经审批的任务。");
} }
//TODO 判断taskid是否为非法空置、taskid是否存在 //TODO 判断taskid是否为非法空置、taskid是否存在
//判断当前任务是否存在历史任务--暂时不做,生成任务时直接保存历史任务的审批工具中 //判断当前任务是否存在历史任务--暂时不做,生成任务时直接保存历史任务的审批工具中
StringBuffer smg = new StringBuffer(); StringBuffer smg = new StringBuffer();
@ -190,9 +189,9 @@ public class FlowTaskController extends BaseController {
taskVO.setFormid(fi); taskVO.setFormid(fi);
taskVO.setApprovd(approvd); taskVO.setApprovd(approvd);
taskVO.setTaskComment(taskComment); taskVO.setTaskComment(taskComment);
Boolean flag = flowTaskService.complete(taskVO,request); Boolean flag = flowTaskService.complete(taskVO,request);
if(!flag){ if(!flag){
if(StringUtils.isNotBlank(smg.toString())){ if(StringUtils.isNotBlank(smg.toString())){
smg.append(""); smg.append("");
@ -205,12 +204,12 @@ public class FlowTaskController extends BaseController {
} }
} }
return (StringUtils.isNotBlank(smg.toString()))?ResultVoUtil.error(smg.toString()):ResultVoUtil.success(); return (StringUtils.isNotBlank(smg.toString()))?ResultVoUtil.error(smg.toString()):ResultVoUtil.success();
} }
@GetMapping("/listhistore") @GetMapping("/listhistore")
@ResponseBody @ResponseBody
public ResultVo listhistore(PageUtils vo, Model model, HttpServletRequest request){ public ResultVo listhistore(PageUtils vo, Model model, HttpServletRequest request){
@ -226,18 +225,18 @@ public class FlowTaskController extends BaseController {
@GetMapping("/finishedList") @GetMapping("/finishedList")
@ResponseBody @ResponseBody
public ResultVo getFinishedList(PageUtils pageUtils, HttpServletRequest request){ public ResultVo getFinishedList(PageUtils pageUtils, HttpServletRequest request){
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request,"search_"); SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request,"search_");
User user = this.userService.getSessionUser(request); User user = this.userService.getSessionUser(request);
if(user.isUserIsSys(xiaoyaoConfig.getWebconfig().getSysLoginUser().split(","))){ if(user.isUserIsSys(xiaoyaoConfig.getWebconfig().getSysLoginUser().split(","))){
flowTaskService.getMyProcessInstances(searchQuery.getQuery(),pageUtils); flowTaskService.getMyProcessInstances(searchQuery.getQuery(),pageUtils);
}else{ }else{
searchQuery.addEqual("approveUserid",user.getId().toString()); searchQuery.addEqual("approveUserid",user.getId().toString());
flowTaskService.getMyProcessInstances(searchQuery.getQuery(),pageUtils); flowTaskService.getMyProcessInstances(searchQuery.getQuery(),pageUtils);
} }
return ResultVoUtil.success(pageUtils); return ResultVoUtil.success(pageUtils);
} }
/** /**
@ -253,7 +252,7 @@ public class FlowTaskController extends BaseController {
@ResponseBody @ResponseBody
public ResultVo<FlowUnionVo> listdata(PageUtils<FlowUnionVo> pageUtils, HttpServletRequest request){ public ResultVo<FlowUnionVo> listdata(PageUtils<FlowUnionVo> pageUtils, HttpServletRequest request){
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request,"search_"); SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request,"search_");
//租户主键,由前端页面传送 //租户主键,由前端页面传送
String tenantId = request.getHeader("X-Tenant-Id"); String tenantId = request.getHeader("X-Tenant-Id");
String taskid = request.getParameter("taskid"); String taskid = request.getParameter("taskid");
@ -289,7 +288,7 @@ public class FlowTaskController extends BaseController {
// List<String> collect = userApprove.stream().map(Userapprove::getFormid).map(Object::toString).collect(Collectors.toList()); // List<String> collect = userApprove.stream().map(Userapprove::getFormid).map(Object::toString).collect(Collectors.toList());
// searchQuery.addIn("formid",collect); // searchQuery.addIn("formid",collect);
if(user.isUserIsSys(xiaoyaoConfig.getWebconfig().getSysLoginUser().split(","))){ if(user.isUserIsSys(xiaoyaoConfig.getWebconfig().getSysLoginUser().split(","))){
flowTaskService.getMyProcessInstances(searchQuery.getQuery(),pageUtils); flowTaskService.getMyProcessInstances(searchQuery.getQuery(),pageUtils);
}else{ }else{
String assigneeId = request.getParameter("assigneeId"); String assigneeId = request.getParameter("assigneeId");
@ -304,7 +303,7 @@ public class FlowTaskController extends BaseController {
flowTaskService.getMyProcessInstances(searchQuery.getQuery(),pageUtils); flowTaskService.getMyProcessInstances(searchQuery.getQuery(),pageUtils);
//待办信息,增加是否查看标记 //待办信息,增加是否查看标记
if(StringUtils.isNotBlank(assigneeId) && assigneeId.equals(user.getId().toString())){ if(StringUtils.isNotBlank(assigneeId) && assigneeId.equals(user.getId().toString())){
List list = pageUtils.getList(); List list = pageUtils.getList();
if(null != list && !list.isEmpty()){ if(null != list && !list.isEmpty()){
int count = list.size(); int count = list.size();
@ -315,7 +314,7 @@ public class FlowTaskController extends BaseController {
} }
} }
} }
return ResultVoUtil.success(pageUtils); return ResultVoUtil.success(pageUtils);
} }
@ -332,22 +331,22 @@ public class FlowTaskController extends BaseController {
@ResponseBody @ResponseBody
public ResultVo listAlldata(PageUtils pageUtils, HttpServletRequest request){ public ResultVo listAlldata(PageUtils pageUtils, HttpServletRequest request){
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request,"search_"); SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request,"search_");
//租户主键,由前端页面传送 //租户主键,由前端页面传送
String tenantId = request.getHeader("X-Tenant-Id"); String tenantId = request.getHeader("X-Tenant-Id");
if(org.apache.commons.lang3.StringUtils.isBlank(tenantId)){ if(org.apache.commons.lang3.StringUtils.isBlank(tenantId)){
return ResultVoUtil.error("租户主键不能为空"); return ResultVoUtil.error("租户主键不能为空");
} }
User user = this.userService.getSessionUser(request); User user = this.userService.getSessionUser(request);
if(user.isUserIsSys(xiaoyaoConfig.getWebconfig().getSysLoginUser().split(","))){ if(user.isUserIsSys(xiaoyaoConfig.getWebconfig().getSysLoginUser().split(","))){
flowTaskService.getMyProcessInstances(searchQuery.getQuery(),pageUtils); flowTaskService.getMyProcessInstances(searchQuery.getQuery(),pageUtils);
}else{ }else{
flowTaskService.getMyProcessInstances(user,tenantId,searchQuery.getQuery(),pageUtils); flowTaskService.getMyProcessInstances(user,tenantId,searchQuery.getQuery(),pageUtils);
//待办信息,增加是否查看标记 //待办信息,增加是否查看标记
// if(StringUtils.isNotBlank(assigneeId) && assigneeId.equals(user.getId().toString())){ // if(StringUtils.isNotBlank(assigneeId) && assigneeId.equals(user.getId().toString())){
// //
@ -361,10 +360,12 @@ public class FlowTaskController extends BaseController {
// } // }
// //
// } // }
} }
return ResultVoUtil.success(pageUtils); return ResultVoUtil.success(pageUtils);
} }
/** /**
* *
* @return * @return
@ -376,30 +377,70 @@ public class FlowTaskController extends BaseController {
@GetMapping("/listfinal") @GetMapping("/listfinal")
@ResponseBody @ResponseBody
public ResultVo<OcrTaskchildPicture> listFinalData(PageUtils<OcrTaskchildPicture> pageUtils, public ResultVo<OcrTaskchildPicture> listFinalData(PageUtils<OcrTaskchildPicture> pageUtils,
@RequestParam(name="search_fromuserid", defaultValue="",required = false) String searchFromuserid, @RequestParam(name="izupuser", defaultValue="",required = false) String izupuser,
@RequestParam(name="search_fromprojectid", defaultValue="",required = false) String searchFromprojectid, @RequestParam(name="izproject", defaultValue="",required = false) String izproject,
@RequestParam(name="search_fromplanid", defaultValue="",required = false) String searchFromplanid, @RequestParam(name="izplan", defaultValue="",required = false) String izplan,
@RequestParam(name="search_states", defaultValue="",required = false) String searchStates, @RequestParam(name="izstatus", defaultValue="",required = false) String izstatus,
@RequestParam(name="search_fromsourceid", defaultValue="",required = false) String searchFromsourceid, @RequestParam(name="iztaskrrom", defaultValue="",required = false) String iztaskrrom,
@RequestParam(name="fromuptime_start", defaultValue="",required = false) BigDecimal fromuptimeStart, @RequestParam(name="izuptime", defaultValue="",required = false) String izuptime,
@RequestParam(name="fromuptime_end", defaultValue="",required = false) BigDecimal fromuptimeEnd,
HttpServletRequest request){ HttpServletRequest request){
SearchQuery searchQuery = new SearchQuery(); SearchQuery searchQuery = new SearchQuery();
if(org.springframework.util.StringUtils.hasText(searchFromuserid)){ if(org.springframework.util.StringUtils.hasText(izupuser)){
searchQuery.addEqual("fromuserid",searchFromuserid); // searchQuery.addEqual("fromuserid",izupuser);
if (izupuser.contains(",")) {
String[] userIds = izupuser.split(",");
List<String> arrayData = Arrays.asList(userIds);
SearchQueryForm searchQueryForm = new SearchQueryForm();
searchQuery.addIn("fromuserid", arrayData);
} else {
searchQuery.addEqual("fromuserid", izupuser);
}
} }
if(org.springframework.util.StringUtils.hasText(searchFromprojectid)){ if (org.springframework.util.StringUtils.hasText(izproject)) {
searchQuery.addEqual("fromprojectid",searchFromprojectid); if (izproject.contains(",")) {
String[] projectIds = izproject.split(","); // 以逗号拆分字符串
searchQuery.addIn("fromprojectid", projectIds);
} else {
searchQuery.addEqual("fromprojectid", izproject);
}
} }
if(org.springframework.util.StringUtils.hasText(searchFromplanid)){ if (org.springframework.util.StringUtils.hasText(izplan)) {
searchQuery.addEqual("fromplanid",searchFromplanid); if (izplan.contains(",")) {
String[] planIds = izplan.split(","); // 以逗号拆分字符串
searchQuery.addIn("fromplanid", planIds);
} else {
searchQuery.addEqual("fromplanid", izplan);
}
} }
if(org.springframework.util.StringUtils.hasText(searchStates)){ if (org.springframework.util.StringUtils.hasText(izstatus)) {
searchQuery.addEqual("states",searchStates); if (izstatus.contains(",")) {
String[] statusIds = izstatus.split(","); // 以逗号拆分字符串
searchQuery.addIn("states", statusIds);
} else {
searchQuery.addEqual("states", izstatus);
}
} }
if(org.springframework.util.StringUtils.hasText(searchFromsourceid)){ if (org.springframework.util.StringUtils.hasText(iztaskrrom)) {
searchQuery.addEqual("fromsourceid",searchFromsourceid); if (iztaskrrom.contains(",")) {
String[] taskrromIds = iztaskrrom.split(","); // 以逗号拆分字符串
searchQuery.addIn("fromsourceid", taskrromIds);
} else {
searchQuery.addEqual("fromsourceid", iztaskrrom);
}
} }
//
// if(org.springframework.util.StringUtils.hasText(izproject)){
// searchQuery.addEqual("fromprojectid",izproject);
// }
// if(org.springframework.util.StringUtils.hasText(izplan)){
// searchQuery.addEqual("fromplanid",izplan);
// }
// if(org.springframework.util.StringUtils.hasText(izstatus)){
// searchQuery.addEqual("states",izstatus);
// }
// if(org.springframework.util.StringUtils.hasText(iztaskrrom)){
// searchQuery.addEqual("fromsourceid",iztaskrrom);
// }
//租户主键,由前端页面传送 //租户主键,由前端页面传送
String tenantId = request.getHeader("X-Tenant-Id"); String tenantId = request.getHeader("X-Tenant-Id");
@ -414,11 +455,48 @@ public class FlowTaskController extends BaseController {
} }
Map<String,Object> query = searchQuery.getQuery(); Map<String,Object> query = searchQuery.getQuery();
if(fromuptimeStart != null){
query.put("fromuptimeStart",fromuptimeStart); if(org.springframework.util.StringUtils.hasText(izuptime)){
}
if(fromuptimeEnd != null) { String[] dateRange = izuptime.split("-");
query.put("fromuptimeEnd", fromuptimeEnd); // if (dateRange.length == 2) {
// try {
// long startTimeStamp = Long.parseLong(dateRange[0].trim());
// long endTimeStamp = Long.parseLong(dateRange[1].trim());
// query.put("fromuptimeStart", startTimeStamp);
// query.put("fromuptimeEnd", endTimeStamp);
// } catch (NumberFormatException e) {
// e.printStackTrace();
// }
// }
if (dateRange.length == 2) {
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
// 解析开始时间
long startTimeStamp = Long.parseLong(dateRange[0].trim());
Date startDate = new Date(startTimeStamp);
String startDateString = sdf.format(startDate);
// 解析结束时间
long endTimeStamp = Long.parseLong(dateRange[1].trim());
Date endDate = new Date(endTimeStamp);
String endDateString = sdf.format(endDate);
// 如果开始时间不为空,则将其放入查询条件中
if (!startDateString.isEmpty()) {
query.put("fromuptimeStart", startDateString);
}
// 如果结束时间不为空,则将其放入查询条件中
if (!endDateString.isEmpty()) {
query.put("fromuptimeEnd", endDateString);
}
} catch (NumberFormatException e) {
// 处理时间戳解析异常
e.printStackTrace();
}
}
} }
flowTaskService.getFinalProcessInstances(query,pageUtils); flowTaskService.getFinalProcessInstances(query,pageUtils);
return ResultVoUtil.success(pageUtils); return ResultVoUtil.success(pageUtils);
@ -468,11 +546,11 @@ public class FlowTaskController extends BaseController {
List<FlowUnionVo> flowUnionVoList = null; List<FlowUnionVo> flowUnionVoList = null;
String categoryid = request.getParameter("categoryid"); String categoryid = request.getParameter("categoryid");
String buessinessno = request.getParameter("buessinessno"); String buessinessno = request.getParameter("buessinessno");
//业务表id //业务表id
String formid = request.getParameter("viewformid"); String formid = request.getParameter("viewformid");
if (StringUtils.isNotBlank(categoryid)) { if (StringUtils.isNotBlank(categoryid)) {
User user = this.userService.getSessionUser(request); User user = this.userService.getSessionUser(request);
if (user.isUserIsSys(xiaoyaoConfig.getWebconfig().getSysLoginUser().split(","))) { if (user.isUserIsSys(xiaoyaoConfig.getWebconfig().getSysLoginUser().split(","))) {
flowUnionVoList = flowTaskService.getMyProcessInstances(searchQuery.getQuery()); flowUnionVoList = flowTaskService.getMyProcessInstances(searchQuery.getQuery());
@ -486,8 +564,8 @@ public class FlowTaskController extends BaseController {
if(StringUtils.isNotBlank(formid)){ if(StringUtils.isNotBlank(formid)){
searchQuery.addEqual("id", formid); searchQuery.addEqual("id", formid);
} }
searchQuery.addEqual("states", SystemConstantsOa.OA_STATUS_TYPE_END.toString()); searchQuery.addEqual("states", SystemConstantsOa.OA_STATUS_TYPE_END.toString());
flowUnionVoList = flowTaskService.getMyProcessInstances(searchQuery.getQuery()); flowUnionVoList = flowTaskService.getMyProcessInstances(searchQuery.getQuery());
} }
@ -505,11 +583,11 @@ public class FlowTaskController extends BaseController {
public ResultVo listdatacc(ParamterPage paramterPage,PageUtils pageUtils, HttpServletRequest request){ public ResultVo listdatacc(ParamterPage paramterPage,PageUtils pageUtils, HttpServletRequest request){
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_"); SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
Map<String, Object> query = searchQuery.getQuery(); Map<String, Object> query = searchQuery.getQuery();
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
flowTaskService.getMyListCc(query,userToken,paramterPage); flowTaskService.getMyListCc(query,userToken,paramterPage);
return ResultVoUtil.success(pageUtils); return ResultVoUtil.success(pageUtils);
} }
/** /**
@ -524,7 +602,7 @@ public class FlowTaskController extends BaseController {
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_"); SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
Map<String, Object> query = searchQuery.getQuery(); Map<String, Object> query = searchQuery.getQuery();
IPage<FlowUnionVo> flowableccIPage = flowTaskService.getMyListCc(query,userToken,paramterPage); IPage<FlowUnionVo> flowableccIPage = flowTaskService.getMyListCc(query,userToken,paramterPage);
return ResultVoUtil.success(flowableccIPage); return ResultVoUtil.success(flowableccIPage);
} }
/** /**
@ -540,7 +618,7 @@ public class FlowTaskController extends BaseController {
return ResultVoUtil.success(); return ResultVoUtil.success();
} }
/** /**
* *
* @return * @return
@ -556,7 +634,7 @@ public class FlowTaskController extends BaseController {
String fromid = request.getParameter("fromid"); String fromid = request.getParameter("fromid");
String taskid = request.getParameter("taskid"); String taskid = request.getParameter("taskid");
return flowTaskService.removeTask(fromid,taskid); return flowTaskService.removeTask(fromid,taskid);
//return ResultVoUtil.success(); //return ResultVoUtil.success();
} }

@ -1281,6 +1281,11 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
for(OcrTaskchildPictureAppro taskchildPicture:list){ for(OcrTaskchildPictureAppro taskchildPicture:list){
//审批节点 当前如果没有历史操作,则将当前节点赋值到历史审批节点中.
if(StringUtils.isBlank(taskchildPicture.getTasknamehis())){
taskchildPicture.setTasknamehis(taskchildPicture.getTaskname());
}
if(taskchildPicture.getStatshis() != null){ if(taskchildPicture.getStatshis() != null){
String stateText; String stateText;
switch (taskchildPicture.getStatshis()) { switch (taskchildPicture.getStatshis()) {

Loading…
Cancel
Save