|
|
|
@ -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<String> 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<String> 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<String> 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<String> 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<String> 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<String,Object> 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<String,Object> query = searchQuery.getQuery();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
flowTaskService.getFinalProcessInstances(query,pageUtils);
|
|
|
|
|
return ResultVoUtil.success(pageUtils);
|
|
|
|
|
}
|
|
|
|
|