|
|
|
@ -2,12 +2,10 @@ package cn.jyjz.flowable.controller;
|
|
|
|
|
|
|
|
|
|
import cn.jyjz.flowable.common.SystemConstantsOa;
|
|
|
|
|
import cn.jyjz.flowable.domain.dto.HistoricTaskInstanceDto;
|
|
|
|
|
import cn.jyjz.flowable.domain.vo.FlowTaskVO;
|
|
|
|
|
import cn.jyjz.flowable.entity.FlowApprove;
|
|
|
|
|
import cn.jyjz.flowable.entity.FlowTaskInfo;
|
|
|
|
|
import cn.jyjz.flowable.service.IFlowTaskService;
|
|
|
|
|
import cn.jyjz.flowable.utils.PageUtils;
|
|
|
|
|
import cn.jyjz.flowable.utils.SysConstant;
|
|
|
|
|
import cn.jyjz.xiaoyao.abase.service.SeqManageService;
|
|
|
|
|
import cn.jyjz.xiaoyao.admin.dataobject.User;
|
|
|
|
|
import cn.jyjz.xiaoyao.admin.service.UserService;
|
|
|
|
@ -21,33 +19,28 @@ import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQueryForm;
|
|
|
|
|
import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
|
|
|
|
|
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
|
|
|
|
|
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
|
|
|
|
|
import cn.jyjz.xiaoyao.common.mybatisplus.util.SearchQueryFormat;
|
|
|
|
|
import cn.jyjz.xiaoyao.oa.from.dataobject.Category;
|
|
|
|
|
import cn.jyjz.xiaoyao.oa.from.dataobject.Userapprove;
|
|
|
|
|
import cn.jyjz.xiaoyao.oa.from.service.UserapproveService;
|
|
|
|
|
import cn.jyjz.xiaoyao.oa.from.vo.FlowUnionVo;
|
|
|
|
|
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicture;
|
|
|
|
|
import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture;
|
|
|
|
|
import cn.jyjz.xiaoyao.ocr.dataobject.OcrUsersearch;
|
|
|
|
|
import cn.jyjz.xiaoyao.ocr.dataobject.OcrUsersearchchild;
|
|
|
|
|
import cn.jyjz.xiaoyao.ocr.service.OcrSearchmanagerService;
|
|
|
|
|
import cn.jyjz.xiaoyao.ocr.service.OcrTaskchildPictureService;
|
|
|
|
|
import cn.jyjz.xiaoyao.ocr.service.OcrUsersearchService;
|
|
|
|
|
import cn.jyjz.xiaoyao.ocr.service.OcrUsersearchchildService;
|
|
|
|
|
import com.alanpoi.common.util.StringUtils;
|
|
|
|
|
import com.alibaba.fastjson.JSONArray;
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
|
|
import io.swagger.annotations.*;
|
|
|
|
|
import org.apache.commons.collections4.CollectionUtils;
|
|
|
|
|
import org.flowable.ui.common.model.RemoteUser;
|
|
|
|
|
import org.flowable.ui.common.service.idm.RemoteIdmService;
|
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
|
import org.springframework.http.MediaType;
|
|
|
|
|
import org.springframework.stereotype.Controller;
|
|
|
|
|
import org.springframework.ui.Model;
|
|
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
|
|
|
|
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.*;
|
|
|
|
@ -75,7 +68,7 @@ public class FlowTaskController extends BaseController {
|
|
|
|
|
private OcrTaskchildPictureService ocrTaskchildPictureService;
|
|
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
|
private UserapproveService userapproveService;
|
|
|
|
|
private OcrUsersearchchildService usersearchchildService;
|
|
|
|
|
// /**
|
|
|
|
|
// * 查询我的待办任务
|
|
|
|
|
// * @return
|
|
|
|
@ -147,7 +140,7 @@ public class FlowTaskController extends BaseController {
|
|
|
|
|
@ResponseBody
|
|
|
|
|
public ResultVo complete(@RequestBody FlowApprove approve, HttpServletRequest request) {
|
|
|
|
|
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
|
|
|
|
|
Integer flag = flowTaskService.complete(approve, userToken);
|
|
|
|
|
Integer flag = flowTaskService.complete(approve, userToken, Arrays.asList(approve.getFlowTaskInfoList().get(0).getFormId()));
|
|
|
|
|
return flag > 0 ? ResultVoUtil.success() : ResultVoUtil.error();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -168,14 +161,12 @@ public class FlowTaskController extends BaseController {
|
|
|
|
|
//判断当前任务审批人是否一致
|
|
|
|
|
List<String> formIds = ocrTaskchildPictureService.validateAssignee(formIdList, userToken);
|
|
|
|
|
// 判断当前任务是否审批完毕
|
|
|
|
|
List<String> formId = this.ocrTaskchildPictureService.validateApprove(formIdList);
|
|
|
|
|
formIds.addAll(formId);
|
|
|
|
|
if (CollectionUtils.isNotEmpty(formIds)) {
|
|
|
|
|
Integer success = flowTaskService.complete(approve, userToken);
|
|
|
|
|
return ResultVoUtil.success("审批成功" + success + "条," + "无权审核" + (flowTaskInfoList.size() - success) + "条","");
|
|
|
|
|
Integer success = flowTaskService.complete(approve, userToken, formIds);
|
|
|
|
|
return ResultVoUtil.success("审批成功" + success + "条," + "无权审核" + (flowTaskInfoList.size() - success) + "条", "");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return ResultVoUtil.success("审核成功0条," + "无权审核" + flowTaskInfoList.size() + "条","");
|
|
|
|
|
return ResultVoUtil.success("审核成功0条," + "无权审核" + flowTaskInfoList.size() + "条", "");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@GetMapping("/listhistore")
|
|
|
|
@ -309,14 +300,14 @@ public class FlowTaskController extends BaseController {
|
|
|
|
|
String tenantId = request.getHeader("X-Tenant-Id");
|
|
|
|
|
|
|
|
|
|
String taskName = request.getParameter("keyword");
|
|
|
|
|
|
|
|
|
|
if (org.apache.commons.lang3.StringUtils.isBlank(tenantId)) {
|
|
|
|
|
return ResultVoUtil.error("租户主键不能为空");
|
|
|
|
|
}
|
|
|
|
|
if(org.apache.commons.lang3.StringUtils.isNotBlank(taskName)){
|
|
|
|
|
searchQuery.addLike("fromtaskname",taskName);
|
|
|
|
|
if (org.apache.commons.lang3.StringUtils.isNotBlank(taskName)) {
|
|
|
|
|
searchQuery.addLike("fromtaskname", taskName);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
User user = this.userService.getSessionUser(request);
|
|
|
|
|
if (user.isUserIsSys(xiaoyaoConfig.getWebconfig().getSysLoginUser().split(","))) {
|
|
|
|
|
flowTaskService.getMyProcessInstances(searchQuery.getQuery(), pageUtils);
|
|
|
|
@ -342,6 +333,28 @@ public class FlowTaskController extends BaseController {
|
|
|
|
|
return ResultVoUtil.success(pageUtils);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void disSearchQuery(SearchQuery query, OcrUsersearchchild userSearch) {
|
|
|
|
|
if (userSearch.getSearchtype().equals("eq")) {
|
|
|
|
|
if (userSearch.getSearchvalue().contains(",")) {
|
|
|
|
|
String[] userIds = userSearch.getSearchvalue().split(",");
|
|
|
|
|
List<String> arrayData = Arrays.asList(userIds);
|
|
|
|
|
query.addIn(userSearch.getSearchfield(), arrayData);
|
|
|
|
|
} else {
|
|
|
|
|
query.addEqual(userSearch.getSearchfield(), userSearch.getSearchvalue());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (userSearch.getSearchtype().equals("noteq")) {
|
|
|
|
|
if (userSearch.getSearchvalue().contains(",")) {
|
|
|
|
|
String[] userIds = userSearch.getSearchvalue().split(",");
|
|
|
|
|
List<String> arrayData = Arrays.asList(userIds);
|
|
|
|
|
query.addNotIn(userSearch.getSearchfield(), arrayData);
|
|
|
|
|
} else {
|
|
|
|
|
query.addNotEqual(userSearch.getSearchfield(), userSearch.getSearchvalue());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 终审列表
|
|
|
|
@ -413,6 +426,7 @@ public class FlowTaskController extends BaseController {
|
|
|
|
|
searchQuery.addEqual("fromsourceid", iztaskrrom);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (org.springframework.util.StringUtils.hasText(izuptime)) {
|
|
|
|
|
String[] dateRange = izuptime.split("-");
|
|
|
|
|
if (dateRange.length == 2) {
|
|
|
|
@ -451,6 +465,14 @@ public class FlowTaskController extends BaseController {
|
|
|
|
|
searchQuery.addEqual("thisLoginUserid", user.getId().toString());
|
|
|
|
|
searchQuery.addEqual("tenantid", tenantId);
|
|
|
|
|
}
|
|
|
|
|
String searchId = request.getParameter("searchId");
|
|
|
|
|
|
|
|
|
|
if (StringUtils.isNotBlank(searchId)) {
|
|
|
|
|
List<OcrUsersearchchild> list = usersearchchildService.list(new LambdaQueryWrapper<OcrUsersearchchild>().eq(OcrUsersearchchild::getUsersearchid, searchId).orderByAsc(OcrUsersearchchild::getOrderNum));
|
|
|
|
|
for (OcrUsersearchchild userSearch : list) {
|
|
|
|
|
disSearchQuery(searchQuery, userSearch);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Map<String, Object> query = searchQuery.getQuery();
|
|
|
|
|
|
|
|
|
@ -648,7 +670,8 @@ public class FlowTaskController extends BaseController {
|
|
|
|
|
})
|
|
|
|
|
@GetMapping("/repetitionTaskList")
|
|
|
|
|
@ResponseBody
|
|
|
|
|
public ResultVo repetitionTaskList() {
|
|
|
|
|
return flowTaskService.repetitionTaskList();
|
|
|
|
|
public ResultVo repetitionTaskList(@RequestParam(name = "pageNo") Integer pageNo,
|
|
|
|
|
@RequestParam(name = "pageSize") Integer pageSize) {
|
|
|
|
|
return flowTaskService.repetitionTaskList(pageNo, pageSize);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|