From 299cad893e3018371a5be00f1f3bf1c80cb6f5d4 Mon Sep 17 00:00:00 2001 From: DELL Date: Tue, 19 Mar 2024 15:07:20 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=88=E5=AE=A1=E5=88=97=E8=A1=A8=E6=A3=80?= =?UTF-8?q?=E7=B4=A2=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/FlowTaskController.java | 98 ++++++++----------- .../mapper/oa/OcrTaskchildPictureMapper.xml | 77 ++++++++++++++- 2 files changed, 111 insertions(+), 64 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java index b9434df9..f27a4798 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java @@ -45,6 +45,7 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.io.InputStream; import java.math.BigDecimal; +import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; @@ -390,7 +391,6 @@ public class FlowTaskController extends BaseController { if (izupuser.contains(",")) { String[] userIds = izupuser.split(","); List arrayData = Arrays.asList(userIds); - SearchQueryForm searchQueryForm = new SearchQueryForm(); searchQuery.addIn("fromuserid", arrayData); } else { searchQuery.addEqual("fromuserid", izupuser); @@ -399,7 +399,9 @@ public class FlowTaskController extends BaseController { if (org.springframework.util.StringUtils.hasText(izproject)) { if (izproject.contains(",")) { String[] projectIds = izproject.split(","); // 以逗号拆分字符串 - searchQuery.addIn("fromprojectid", projectIds); + List arrayData = Arrays.asList(projectIds); + SearchQueryForm searchQueryForm = new SearchQueryForm(); + searchQuery.addIn("fromprojectid", arrayData); } else { searchQuery.addEqual("fromprojectid", izproject); } @@ -407,7 +409,9 @@ public class FlowTaskController extends BaseController { if (org.springframework.util.StringUtils.hasText(izplan)) { if (izplan.contains(",")) { String[] planIds = izplan.split(","); // 以逗号拆分字符串 - searchQuery.addIn("fromplanid", planIds); + List arrayData = Arrays.asList(planIds); + SearchQueryForm searchQueryForm = new SearchQueryForm(); + searchQuery.addIn("fromplanid", arrayData); } else { searchQuery.addEqual("fromplanid", izplan); } @@ -415,7 +419,9 @@ public class FlowTaskController extends BaseController { if (org.springframework.util.StringUtils.hasText(izstatus)) { if (izstatus.contains(",")) { String[] statusIds = izstatus.split(","); // 以逗号拆分字符串 - searchQuery.addIn("states", statusIds); + List arrayData = Arrays.asList(statusIds); + SearchQueryForm searchQueryForm = new SearchQueryForm(); + searchQuery.addIn("states", arrayData); } else { searchQuery.addEqual("states", izstatus); } @@ -423,81 +429,55 @@ public class FlowTaskController extends BaseController { if (org.springframework.util.StringUtils.hasText(iztaskrrom)) { if (iztaskrrom.contains(",")) { String[] taskrromIds = iztaskrrom.split(","); // 以逗号拆分字符串 - searchQuery.addIn("fromsourceid", taskrromIds); + List arrayData = Arrays.asList(taskrromIds); + SearchQueryForm searchQueryForm = new SearchQueryForm(); + searchQuery.addIn("fromsourceid", arrayData); } 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"); - - if(org.apache.commons.lang3.StringUtils.isBlank(tenantId)){ - return ResultVoUtil.error("租户主键不能为空"); - } - User user = this.userService.getSessionUser(request); - if(user.isUserIsSys(xiaoyaoConfig.getWebconfig().getSysLoginUser().split(","))){ - }else{ - searchQuery.addEqual("thisLoginUserid",user.getId().toString()); - searchQuery.addEqual("tenantid",tenantId); - } - - Map query = searchQuery.getQuery(); - - if(org.springframework.util.StringUtils.hasText(izuptime)){ - + if(org.springframework.util.StringUtils.hasText(izuptime)) { String[] dateRange = izuptime.split("-"); -// 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"); + SimpleDateFormat sdfInput = new SimpleDateFormat("yyyy/MM/dd"); // 解析开始时间 - long startTimeStamp = Long.parseLong(dateRange[0].trim()); - Date startDate = new Date(startTimeStamp); - String startDateString = sdf.format(startDate); + Long startTimeStamp = sdfInput.parse(dateRange[0].trim()).getTime(); // 解析结束时间 - long endTimeStamp = Long.parseLong(dateRange[1].trim()); - Date endDate = new Date(endTimeStamp); - String endDateString = sdf.format(endDate); + Long endTimeStamp = sdfInput.parse(dateRange[1].trim()).getTime(); // 如果开始时间不为空,则将其放入查询条件中 - if (!startDateString.isEmpty()) { - query.put("fromuptimeStart", startDateString); + if (startTimeStamp!=null) { + searchQuery.addGreater("createdateStart",startTimeStamp); } // 如果结束时间不为空,则将其放入查询条件中 - if (!endDateString.isEmpty()) { - query.put("fromuptimeEnd", endDateString); + if (endTimeStamp!=null) { + searchQuery.addLess("createdateEnd",endTimeStamp); } - } catch (NumberFormatException e) { - // 处理时间戳解析异常 + } catch (ParseException e) { + // 处理日期解析异常 e.printStackTrace(); } } } + //租户主键,由前端页面传送 + String tenantId = request.getHeader("X-Tenant-Id"); + + if(org.apache.commons.lang3.StringUtils.isBlank(tenantId)){ + return ResultVoUtil.error("租户主键不能为空"); + } + User user = this.userService.getSessionUser(request); + if(user.isUserIsSys(xiaoyaoConfig.getWebconfig().getSysLoginUser().split(","))){ + }else{ + searchQuery.addEqual("thisLoginUserid",user.getId().toString()); + searchQuery.addEqual("tenantid",tenantId); + } + + Map query = searchQuery.getQuery(); + + flowTaskService.getFinalProcessInstances(query,pageUtils); return ResultVoUtil.success(pageUtils); } diff --git a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskchildPictureMapper.xml b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskchildPictureMapper.xml index 3c939a09..ea05679b 100644 --- a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskchildPictureMapper.xml +++ b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskchildPictureMapper.xml @@ -139,7 +139,7 @@ and tcp.CATEGORYID ${categoryid.dataOp} ${categoryid.likestar}#{categoryid.value}${categoryid.likeend} and tcp.SPECIFICATION ${specification.dataOp} ${specification.likestar}#{specification.value}${specification.likeend} and tcp.BUESSINESSNO ${buessinessno.dataOp} ${buessinessno.likestar}#{buessinessno.value}${buessinessno.likeend} - and tcp.STATES ${states.dataOp} ${states.likestar}#{states.value}${states.likeend} + and tcp.PROCESSINSTANCEID ${processinstanceid.dataOp} ${processinstanceid.likestar}#{processinstanceid.value}${processinstanceid.likeend} and tcp.PROCESSDEFINITIONID ${processdefinitionid.dataOp} ${processdefinitionid.likestar}#{processdefinitionid.value}${processdefinitionid.likeend} and tcp.DEPLOYMENTID ${deploymentid.dataOp} ${deploymentid.likestar}#{deploymentid.value}${deploymentid.likeend} @@ -152,14 +152,81 @@ and tcp.CREATEUSER ${createuser.dataOp} ${createuser.likestar}#{createuser.value}${createuser.likeend} and tcp.CREATEUSERNAME ${createusername.dataOp} ${createusername.likestar}#{createusername.value}${createusername.likeend} and tcp.CREATEDATE ${createdate.dataOp} ${createdate.likestar}#{createdate.value}${createdate.likeend} + and tcp.CREATEDATE ${createdateStart.dataOp} ${createdateStart.likestar}#{createdateStart.value}${createdateStart.likeend} + and tcp.CREATEDATE ${createdateEnd.dataOp} ${createdateEnd.likestar}#{createdateEnd.value}${createdateEnd.likeend} and tcp.USERNAME ${username.dataOp} ${username.likestar}#{username.value}${username.likeend} and tcp.FROMTASKID ${fromtaskid.dataOp} ${fromtaskid.likestar}#{fromtaskid.value}${fromtaskid.likeend} and tcp.FROMTASKNAME ${fromtaskname.dataOp} ${fromtaskname.likestar}#{fromtaskname.value}${fromtaskname.likeend} - and tcp.FROMUSERID ${fromuserid.dataOp} ${fromuserid.likestar}#{fromuserid.value}${fromuserid.likeend} - and tcp.FROMPROJECTID ${fromprojectid.dataOp} ${fromprojectid.likestar}#{fromprojectid.value}${fromprojectid.likeend} - and tcp.FROMPLANID ${fromplanid.dataOp} ${fromplanid.likestar}#{fromplanid.value}${fromplanid.likeend} + + + and tcp.FROMUPTIME ${fromuptime.dataOp} ${fromuptime.likestar}#{fromuptime.value}${fromuptime.likeend} - and tcp.FROMSOURCEID ${fromsourceid.dataOp} ${fromsourceid.likestar}#{fromsourceid.value}${fromsourceid.likeend} + and tcp.FROMUSERID ${fromuserid.dataOp} ${fromuserid.likestar} + + + + #{item} + + + + #{fromuserid.value} + + ${fromuserid.likeend} + + and tcp.FROMPROJECTID ${fromprojectid.dataOp} ${fromprojectid.likestar} + + + + #{item} + + + + #{fromprojectid.value} + + ${fromprojectid.likeend} + + and tcp.FROMPLANID ${fromplanid.dataOp} ${fromplanid.likestar} + + + + #{item} + + + + #{fromplanid.value} + + ${fromplanid.likeend} + + and tcp.STATES ${states.dataOp} ${states.likestar} + + + + #{item} + + + + #{states.value} + + ${states.likeend} + + and tcp.FROMSOURCEID ${fromsourceid.dataOp} ${fromsourceid.likestar} + + + + #{item} + + + + #{fromsourceid.value} + + ${fromsourceid.likeend} + + + + + + + and tcp.HAVEPOINTS ${havepoints.dataOp} ${havepoints.likestar}#{havepoints.value}${havepoints.likeend} and tcp.TASKNAME ${taskname.dataOp} ${taskname.likestar}#{taskname.value}${taskname.likeend} and tcp.USERID ${userid.dataOp} ${userid.likestar}#{userid.value}${userid.likeend}