Merge branch 'dev_20231013_ZC' into 'dev_20230829_change'
Dev 20231013 zc See merge request laws-foton-slrs/foton-wkflow-rest!64
This commit is contained in:
@@ -1,9 +1,13 @@
|
||||
package com.ydw.bat.wkflow.business_activiti.service;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import org.activiti.engine.TaskService;
|
||||
import org.activiti.engine.task.NativeTaskQuery;
|
||||
import org.activiti.engine.task.Task;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
@@ -81,4 +85,35 @@ public class TaskTodoService {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据任务定义key,判断是否还存在该节点的待办任务。(排除当前操作的待办任务)
|
||||
*
|
||||
* @param prcId
|
||||
* @param taskDefinitionKey
|
||||
* @return
|
||||
*/
|
||||
public boolean whetherExistTaskByTaskDefinitionKey(String prcId, String taskDefinitionKey,String taskId) {
|
||||
boolean result = false;
|
||||
List<Task> taskList = taskService.createTaskQuery().processInstanceId(prcId).active().list().stream().filter(task-> {
|
||||
boolean flag = false;
|
||||
if (StringUtils.isNotEmpty(taskId)) {
|
||||
if (!StringUtils.equals(task.getId(),taskId)) {
|
||||
flag = true;
|
||||
}
|
||||
} else {
|
||||
flag = true;
|
||||
}
|
||||
return flag;
|
||||
}).distinct().collect(Collectors.toList());
|
||||
if (CollectionUtils.isNotEmpty(taskList)) {
|
||||
for (Task task : taskList) {
|
||||
if (StringUtils.equals(task.getTaskDefinitionKey(),taskDefinitionKey)) {
|
||||
result = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -223,6 +223,8 @@ public class TaskController {
|
||||
typeData.put("25","起草");//企标制修订计划管控
|
||||
typeData.put("26","起草");//企标制修订立项计划
|
||||
typeData.put("23","汇总");//企标复审
|
||||
typeData.put("29","管理员");//政策征求意见
|
||||
typeData.put("30","管理员");//重点认证标准/政策合规性项目审查
|
||||
BusProcessName one = iBusProcessNameService.getOne(queryWrapper);
|
||||
HistoricTaskInstanceQuery historicTaskInstanceQuery = historyService.createHistoricTaskInstanceQuery()
|
||||
.processInstanceId(one.getPrcId()).orderByHistoricTaskInstanceEndTime().asc();
|
||||
|
||||
@@ -20,15 +20,13 @@ import java.util.Map;
|
||||
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessEntrustService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IOaTaskExecService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.*;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.business_oa.webService.service.WebServiceOAService;
|
||||
import com.ydw.bat.wkflow.business_oa.webService.service.impl.WebServiceOAServiceImpl;
|
||||
import com.ydw.bat.wkflow.business_wkflow.form.dto.FormSubmitDto;
|
||||
import com.ydw.bat.wkflow.business_wkflow.form.service.FormValsService;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.*;
|
||||
import org.activiti.engine.history.*;
|
||||
import org.activiti.engine.repository.ProcessDefinition;
|
||||
@@ -36,6 +34,7 @@ import org.activiti.engine.runtime.ProcessInstance;
|
||||
import org.activiti.engine.runtime.ProcessInstanceQuery;
|
||||
import org.activiti.engine.task.NativeTaskQuery;
|
||||
import org.activiti.engine.task.Task;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -101,6 +100,18 @@ public class TodoTaskController extends BaseAction {
|
||||
@Autowired
|
||||
private CreateMQService mqService;
|
||||
|
||||
@Autowired
|
||||
private IFlowUserRelInfoService flowUserRelInfoService;
|
||||
|
||||
@Autowired
|
||||
private IPolicySolicitOpinionEOService policySolicitOpinionEOService;
|
||||
|
||||
@Autowired
|
||||
private IZchgxxmscSybDataEOService zchgxxmscSybDataEOService;
|
||||
|
||||
@Autowired
|
||||
private IZchgxxmscCpghbDataEOService zchgxxmscCpghbDataEOService;
|
||||
|
||||
@ApiOperation(value = "我的待办任务列表")
|
||||
@ApiImplicitParams({@ApiImplicitParam(name = "name", value = "名称"),
|
||||
@ApiImplicitParam(name = "current", value = "当前页"),
|
||||
@@ -242,6 +253,7 @@ public class TodoTaskController extends BaseAction {
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
String data = sdf.format(entry.getValue().get(0).get("createTime"));
|
||||
res.setAcceptTime(data);
|
||||
res.setTaskDefinitionKey(entry.getValue().get(0).get("taskDefinitionKey").toString());
|
||||
// //获取新的流程名称
|
||||
// QueryWrapper<BusProcessNew> queryWrapper1=new QueryWrapper<>();
|
||||
// queryWrapper1.eq("P_ID",res.getPrcId());
|
||||
@@ -329,6 +341,7 @@ public class TodoTaskController extends BaseAction {
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
String data = sdf.format(entry.getValue().get(0).get("createTime"));
|
||||
res.setAcceptTime(data);
|
||||
res.setTaskDefinitionKey(entry.getValue().get(0).get("taskDefinitionKey").toString());
|
||||
// //获取新的流程名称
|
||||
// QueryWrapper<BusProcessNew> queryWrapper1=new QueryWrapper<>();
|
||||
// queryWrapper1.eq("P_ID",res.getPrcId());
|
||||
@@ -404,6 +417,13 @@ public class TodoTaskController extends BaseAction {
|
||||
busProcessEntrust.setPrcName(one.getPrcName());
|
||||
busProcessEntrust.setTaskId(str);
|
||||
iBusProcessEntrustService.save(busProcessEntrust);
|
||||
|
||||
if (StringUtils.equals(one.getPrcType(), FlowTypeEnum.ZCZQYJLC.getValue())) {
|
||||
this.changeZczqyjFlowAssignee(assignee, userId, pId, str);
|
||||
|
||||
} else if (StringUtils.equals(one.getPrcType(), FlowTypeEnum.ZCHGXXMSCLC.getValue())) {
|
||||
this.changeZchgxxmscFlowAssignee(assignee, userId, pId, str);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -490,7 +510,110 @@ public class TodoTaskController extends BaseAction {
|
||||
// logger.info("task {} find " + taskId);
|
||||
return WrapMapper.ok("改派成功");
|
||||
}
|
||||
/**
|
||||
* @Description: 变更流程人员关系
|
||||
* @author: wangzhijiang
|
||||
* @date: 2023-10-18
|
||||
* @Param:
|
||||
* @return:
|
||||
*/
|
||||
private void changeFlowUserRelInfoAssignee(String assignee, String userId, String pId, String str,String flowType,Task task) {
|
||||
QueryWrapper<FlowUserRelInfo> furQueryWrap = new QueryWrapper<>();
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getActiProcInstId, pId);
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getFlowType,flowType);
|
||||
// 责任人任务处理。
|
||||
if (StringUtils.equals(task.getTaskDefinitionKey(),"PolicySolicitOpinionProcessKey8") || StringUtils.equals(task.getTaskDefinitionKey(),"PolicyComplianceProgramReviewProcessKey8")) {
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getDataType,"zrdjrfpzrr");
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getUserId, userId);
|
||||
List<FlowUserRelInfo> furInfoList = this.flowUserRelInfoService.list(furQueryWrap);
|
||||
if (CollectionUtils.isNotEmpty(furInfoList)) {
|
||||
furInfoList.forEach(furInfo -> {furInfo.setUserId(assignee);});
|
||||
this.flowUserRelInfoService.updateBatchById(furInfoList);
|
||||
}
|
||||
}
|
||||
// 责任对接人汇总
|
||||
if (StringUtils.equals(task.getTaskDefinitionKey(),"PolicySolicitOpinionProcessKey9") || StringUtils.equals(task.getTaskDefinitionKey(),"PolicyComplianceProgramReviewProcessKey9")) {
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getDataType,"zrdjrfpzrr");
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getParentUserId, userId);
|
||||
List<FlowUserRelInfo> furInfoList = this.flowUserRelInfoService.list(furQueryWrap);
|
||||
if (CollectionUtils.isNotEmpty(furInfoList)) {
|
||||
furInfoList.forEach(furInfo -> {furInfo.setParentUserId(assignee);});
|
||||
this.flowUserRelInfoService.updateBatchById(furInfoList);
|
||||
}
|
||||
}
|
||||
// 责任单位审批
|
||||
if (StringUtils.equals(task.getTaskDefinitionKey(),"PolicySolicitOpinionProcessKey10") || StringUtils.equals(task.getTaskDefinitionKey(),"PolicyComplianceProgramReviewProcessKey10")) {
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getDataType,"zrdjrfpzrdw");
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getUserId, userId);
|
||||
List<FlowUserRelInfo> furInfoList = this.flowUserRelInfoService.list(furQueryWrap);
|
||||
if (CollectionUtils.isNotEmpty(furInfoList)) {
|
||||
furInfoList.forEach(furInfo -> {furInfo.setUserId(assignee);});
|
||||
this.flowUserRelInfoService.updateBatchById(furInfoList);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void changeZczqyjFlowAssignee(String assignee, String userId, String pId, String str){
|
||||
Task task = this.taskService.createTaskQuery().taskId(str).singleResult();
|
||||
if (StringUtils.equals(task.getTaskDefinitionKey(),"PolicySolicitOpinionProcessKey8")) {
|
||||
Map<String,Object> params = new HashMap<>();
|
||||
params.put("taskDefinitionKey",task.getTaskDefinitionKey());
|
||||
params.put("currentUserId",userId);
|
||||
params.put("prcId",task.getProcessInstanceId());
|
||||
List<PolicySolicitOpinionEO> policySolicitOpinionEOList = this.policySolicitOpinionEOService.queryPolicitOpinionEOList(params);
|
||||
if (CollectionUtils.isNotEmpty(policySolicitOpinionEOList)) {
|
||||
policySolicitOpinionEOList.forEach(policySolicitOpinionEO -> {policySolicitOpinionEO.setCreateUserId(assignee);});
|
||||
this.policySolicitOpinionEOService.updateBatchById(policySolicitOpinionEOList);
|
||||
}
|
||||
} else if (StringUtils.equals(task.getTaskDefinitionKey(),"PolicySolicitOpinionProcessKey9")) {
|
||||
Map<String,Object> params = new HashMap<>();
|
||||
params.put("taskDefinitionKey","PolicySolicitOpinionProcessKey8");
|
||||
params.put("currentUserId",userId);
|
||||
params.put("prcId",task.getProcessInstanceId());
|
||||
List<PolicySolicitOpinionEO> policySolicitOpinionEOList = this.policySolicitOpinionEOService.queryPolicitOpinionEOList(params);
|
||||
if (CollectionUtils.isNotEmpty(policySolicitOpinionEOList)) {
|
||||
policySolicitOpinionEOList.forEach(policySolicitOpinionEO -> {policySolicitOpinionEO.setCreateUserId(assignee);});
|
||||
this.policySolicitOpinionEOService.updateBatchById(policySolicitOpinionEOList);
|
||||
}
|
||||
}
|
||||
this.changeFlowUserRelInfoAssignee(assignee, userId, pId, str, FlowTypeEnum.ZCZQYJLC.getValue(),task);
|
||||
}
|
||||
|
||||
public void changeZchgxxmscFlowAssignee(String assignee, String userId, String pId, String str){
|
||||
Task task = this.taskService.createTaskQuery().taskId(str).singleResult();
|
||||
|
||||
if (StringUtils.equals(task.getTaskDefinitionKey(),"PolicyComplianceProgramReviewProcessKey8")) {
|
||||
// 如果是责任人任务处理,修改当前责任人被分配的事业部数据
|
||||
Map<String,Object> params = new HashMap<>();
|
||||
params.put("taskDefinitionKey",task.getTaskDefinitionKey());
|
||||
params.put("currentUserId",userId);
|
||||
params.put("pId",task.getProcessInstanceId());
|
||||
List<ZchgxxmscSybDataEO> zchgxxmscSybDataEOList = this.zchgxxmscSybDataEOService.queryZchgxxmscSybDataEOList(params);
|
||||
if (CollectionUtils.isNotEmpty(zchgxxmscSybDataEOList)) {
|
||||
zchgxxmscSybDataEOList.forEach(sybDataEO -> {sybDataEO.setZrrUserId(assignee);});
|
||||
this.zchgxxmscSybDataEOService.updateBatchById(zchgxxmscSybDataEOList);
|
||||
}
|
||||
|
||||
List<ZchgxxmscCpghbDataEO> zchgxxmscCpghbDataEOList = this.zchgxxmscCpghbDataEOService.queryZchgxxmscCpghbDataEOList(params);
|
||||
if (CollectionUtils.isNotEmpty(zchgxxmscCpghbDataEOList)) {
|
||||
zchgxxmscCpghbDataEOList.forEach(cpghbDataEO -> {cpghbDataEO.setZrrUserId(assignee);});
|
||||
this.zchgxxmscCpghbDataEOService.updateBatchById(zchgxxmscCpghbDataEOList);
|
||||
}
|
||||
} else if (StringUtils.equals(task.getTaskDefinitionKey(),"PolicyComplianceProgramReviewProcessKey9")){
|
||||
Map<String,Object> params = new HashMap<>();
|
||||
params.put("taskDefinitionKey","PolicyComplianceProgramReviewProcessKey8");
|
||||
params.put("currentUserId",userId);
|
||||
params.put("pId",task.getProcessInstanceId());
|
||||
|
||||
List<ZchgxxmscCpghbDataEO> zchgxxmscCpghbDataEOList = this.zchgxxmscCpghbDataEOService.queryZchgxxmscCpghbDataEOList(params);
|
||||
if (CollectionUtils.isNotEmpty(zchgxxmscCpghbDataEOList)) {
|
||||
zchgxxmscCpghbDataEOList.forEach(cpghbDataEO -> {cpghbDataEO.setZrrUserId(assignee);});
|
||||
this.zchgxxmscCpghbDataEOService.updateBatchById(zchgxxmscCpghbDataEOList);
|
||||
}
|
||||
}
|
||||
|
||||
this.changeFlowUserRelInfoAssignee(assignee, userId, pId, str, FlowTypeEnum.ZCHGXXMSCLC.getValue(),task);
|
||||
}
|
||||
@ApiOperation(value = "完成任务", notes = "流程单个节点任务,直接完成任务")
|
||||
@ApiImplicitParams({@ApiImplicitParam(name = "taskId", value = "任务id"),
|
||||
@ApiImplicitParam(name = "userId", value = "完成任务用户Id")})
|
||||
@@ -1870,6 +1993,34 @@ public class TodoTaskController extends BaseAction {
|
||||
BusProcessNew one = busProcessNewList.get(0);
|
||||
one.setMesg(object.toString());
|
||||
iBusProcessNewService.saveOrUpdate(one);
|
||||
|
||||
QueryWrapper<BusProcessName> bpnQueryWrap = new QueryWrapper<>();
|
||||
bpnQueryWrap.lambda().eq(BusProcessName::getPrcId,one.getPId());
|
||||
BusProcessName busProcessName = this.iBusProcessNameService.getOne(bpnQueryWrap);
|
||||
if (StringUtils.equals(busProcessName.getPrcType(),FlowTypeEnum.ZCZQYJLC.getValue())) {
|
||||
object.put("prcId",busProcessName.getPrcId());
|
||||
this.policySolicitOpinionEOService.batchInsert(object);
|
||||
} else if (StringUtils.equals(busProcessName.getPrcType(),FlowTypeEnum.ZCHGXXMSCLC.getValue())) {
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
// departmentType字段: value: undertaking 事业部 productPlanning 产品规划部
|
||||
String departmentType = jsonForm.getString("departmentType");
|
||||
if (StringUtils.equals(departmentType,"undertaking") && jsonForm.containsKey("sybDataList")) {
|
||||
JSONArray sybDataListArr = jsonForm.getJSONArray("sybDataList");
|
||||
List<ZchgxxmscSybDataEO> zchgxxmscSybDataEOList = new ArrayList<>();
|
||||
ZchgxxmscSybDataEO zchgxxmscSybDataEO = null;
|
||||
for (Object sybData : sybDataListArr) {
|
||||
zchgxxmscSybDataEO = JSONObject.parseObject(JSONObject.toJSONString(sybData),ZchgxxmscSybDataEO.class);
|
||||
zchgxxmscSybDataEO.setModifyTime(new Date());
|
||||
zchgxxmscSybDataEOList.add(zchgxxmscSybDataEO);
|
||||
}
|
||||
this.zchgxxmscSybDataEOService.updateBatchById(zchgxxmscSybDataEOList);
|
||||
} else if (StringUtils.equals(departmentType,"productPlanning") && jsonForm.containsKey("cpghbDataList")) {
|
||||
// 保存产品规划部的责任人填写的信息
|
||||
object.put("currentUserId",one.getUserId());
|
||||
object.put("prcId",busProcessName.getPrcId());
|
||||
this.zchgxxmscCpghbDataEOService.batchInsert(object);
|
||||
}
|
||||
}
|
||||
return WrapMapper.ok("保存成功");
|
||||
}
|
||||
}
|
||||
@@ -3109,4 +3260,57 @@ public class TodoTaskController extends BaseAction {
|
||||
return "1";
|
||||
}
|
||||
|
||||
/**
|
||||
* 本接口仅提供法规系统调用
|
||||
*/
|
||||
@ApiOperation(value = "查询重点认证标准/政策合规性项目审查任务明细")
|
||||
@GetMapping("/queryZchgxxmscTaskDetail")
|
||||
public BusProcessNew queryZchgxxmscTaskDetail(@RequestParam Map<String,Object> params) {
|
||||
String taskIds = (String) params.get("taskIds");
|
||||
String prcId = (String) params.get("pId");
|
||||
List<String> taskIdList = new ArrayList<>(Arrays.asList(taskIds.split(",")));
|
||||
|
||||
List<BusProcessNew> list = iBusProcessNewService.findNoExecuteBusProcessNewForEnd(taskIdList);
|
||||
if (list.isEmpty()) {
|
||||
return null;
|
||||
}
|
||||
BusProcessNew processNew = new BusProcessNew();
|
||||
BeanUtils.copyProperties(list.get(0), processNew);
|
||||
|
||||
if(StringUtils.isNotBlank(prcId)){
|
||||
List<Task> list2 = taskService.createTaskQuery().processInstanceId(prcId).active().list();
|
||||
if(!list2.isEmpty()){
|
||||
processNew.setNowTaskInfo(list2.get(0).getName());
|
||||
}
|
||||
}
|
||||
|
||||
JSONObject object3 = JSONObject.parseObject(list.get(0).getMesg());
|
||||
|
||||
List<ZchgxxmscSybDataEO> zchgxxmscSybDataEOList = this.zchgxxmscSybDataEOService.queryZchgxxmscSybDataEOList(params);
|
||||
if (CollectionUtils.isNotEmpty(zchgxxmscSybDataEOList)) {
|
||||
JSONObject jsonForm = object3.getJSONObject("form");
|
||||
jsonForm.put("sybDataList",zchgxxmscSybDataEOList);
|
||||
}
|
||||
|
||||
List<ZchgxxmscCpghbDataEO> zchgxxmscCpghbDataEOList = this.zchgxxmscCpghbDataEOService.queryZchgxxmscCpghbDataEOList(params);
|
||||
if (CollectionUtils.isNotEmpty(zchgxxmscCpghbDataEOList)) {
|
||||
JSONObject jsonForm = object3.getJSONObject("form");
|
||||
jsonForm.put("cpghbDataList",zchgxxmscCpghbDataEOList);
|
||||
}
|
||||
|
||||
processNew.setMesg(object3.toJSONString());
|
||||
QueryWrapper wrapper = new QueryWrapper();
|
||||
wrapper.eq("TODO_ID",processNew.getId());
|
||||
wrapper.eq("EXEC_TYPE",2);
|
||||
wrapper.eq("EXEC_STATUS",0);
|
||||
long count = oaTaskExecService.count(wrapper);
|
||||
processNew.setCommitStatus(count);
|
||||
// 设置processNew表流程状态为已接收
|
||||
LambdaUpdateWrapper<BusProcessNew> updateWrapper = new LambdaUpdateWrapper<>();
|
||||
updateWrapper.in(BusProcessNew::getTaskId,taskIdList);
|
||||
updateWrapper.set(BusProcessNew::getReceiveStatus,"已接收");
|
||||
iBusProcessNewService.update(updateWrapper);
|
||||
return processNew;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
+32
@@ -0,0 +1,32 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.controller;
|
||||
|
||||
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.PolicySolicitOpinionEO;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IPolicySolicitOpinionEOService;
|
||||
import com.ydw.bat.wkflow.util.http.ResponseMessage;
|
||||
import com.ydw.bat.wkflow.util.http.Result;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/datas/policySolicitOpinion")
|
||||
public class PolicySolicitOpinionEOController {
|
||||
|
||||
@Autowired
|
||||
private IPolicySolicitOpinionEOService policySolicitOpinionEOService;
|
||||
|
||||
@ApiOperation(value = "查询政策征求意见列表")
|
||||
@GetMapping("/queryPolicitOpinionEOList")
|
||||
public ResponseMessage<List<PolicySolicitOpinionEO>> queryPolicitOpinionEOList(@RequestParam Map<String,Object> params) {
|
||||
List<PolicySolicitOpinionEO> policySolicitOpinionEOList = this.policySolicitOpinionEOService.queryPolicitOpinionEOList(params);
|
||||
return Result.success(policySolicitOpinionEOList);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
@@ -91,4 +92,9 @@ public class BusProcessName implements Serializable {
|
||||
@TableField(exist = false)
|
||||
private String startTaskTime;
|
||||
|
||||
@TableField("RESPONSIBLE_UNIT_DEADLINE_DATE")
|
||||
private Date responsibleUnitDeadlineDate;
|
||||
|
||||
@TableField(exist = false)
|
||||
private String taskDefinitionKey;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,67 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 流程用户关系信息表 :流程中,存储用户上下级关系
|
||||
* 作用:记录流程中,用户分配的上下级关系。
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@Accessors(chain = true)
|
||||
@TableName("T_FLOW_USER_REL_INFO")
|
||||
@ApiModel(value="FlowUserRelInfo对象", description="")
|
||||
public class FlowUserRelInfo {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty(value = "主键")
|
||||
@TableId(value = "id", type = IdType.UUID)
|
||||
private String id;
|
||||
|
||||
@ApiModelProperty(value = "流程类型")
|
||||
@TableField("flow_type")
|
||||
private String flowType;
|
||||
|
||||
@ApiModelProperty(value = "数据类型")
|
||||
@TableField("data_type")
|
||||
private String dataType;
|
||||
|
||||
@ApiModelProperty(value = "用户id")
|
||||
@TableField("user_id")
|
||||
private String userId;
|
||||
|
||||
@ApiModelProperty(value = "上级用户id")
|
||||
@TableField("parent_user_id")
|
||||
private String parentUserId;
|
||||
|
||||
@ApiModelProperty(value = "标准id")
|
||||
@TableField("stand_id")
|
||||
private String standId;
|
||||
|
||||
@ApiModelProperty(value = "待办id")
|
||||
@TableField("task_id")
|
||||
private String taskId;
|
||||
|
||||
@ApiModelProperty(value = "流程实例id")
|
||||
@TableField("acti_proc_inst_id")
|
||||
private String actiProcInstId;
|
||||
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
@TableField("create_time")
|
||||
private Date createTime;
|
||||
|
||||
@ApiModelProperty(value = "创建人")
|
||||
@TableField("create_by")
|
||||
private String createBy;
|
||||
|
||||
}
|
||||
+88
@@ -0,0 +1,88 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @Description: 政策征求意见列表
|
||||
* @author: wangzhijiang
|
||||
* @date: 2023-10-18
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@Accessors(chain = true)
|
||||
@TableName("POLICY_SOLICIT_OPINION")
|
||||
@ApiModel(value="PolicySolicitOpinion对象", description="")
|
||||
public class PolicySolicitOpinionEO {
|
||||
private static final long serialVersionUID=1L;
|
||||
|
||||
@TableId(value = "ID", type = IdType.UUID)
|
||||
private String id;
|
||||
|
||||
@TableField("PRC_ID")
|
||||
private String prcId;
|
||||
|
||||
@TableField("SAR_LAWS_INFO_ID")
|
||||
private String sarLawsInfoId;
|
||||
|
||||
// 章节编号
|
||||
@TableField("CHAPTER_NUMBER")
|
||||
private String chapterNumber;
|
||||
|
||||
// 章节条目
|
||||
@TableField("CHAPTER_ENTRIES")
|
||||
private String chapterEntries;
|
||||
|
||||
// 修改前
|
||||
@TableField("MODIFY_BEFORE")
|
||||
private String modifyBefore;
|
||||
|
||||
// 修改后
|
||||
@TableField("MODIFY_AFTER")
|
||||
private String modifyAfter;
|
||||
|
||||
// 修改理由
|
||||
@TableField("MODIFY_REASON")
|
||||
private String modifyReason;
|
||||
|
||||
// 原因
|
||||
@TableField("CAUSE")
|
||||
private String cause;
|
||||
|
||||
// 附件id
|
||||
@TableField("ANNEX_FILE_ID")
|
||||
private String annexFileId;
|
||||
|
||||
// 处理意见
|
||||
@TableField("HANDLING_OPINIONS")
|
||||
private String handlingOpinions;
|
||||
|
||||
// 处理原因
|
||||
@TableField("HANDLING_CAUSE")
|
||||
private String handlingCause;
|
||||
|
||||
// 提出人/创建人
|
||||
@TableField("CREATE_USER_ID")
|
||||
private String createUserId;
|
||||
|
||||
// 创建时间
|
||||
@TableField("CREATE_TIME")
|
||||
private Date createTime;
|
||||
|
||||
// 更新人
|
||||
@TableField("MODIFY_USER_ID")
|
||||
private String modifyUserId;
|
||||
|
||||
// 更新时间
|
||||
@TableField("MODIFY_TIME")
|
||||
private Date modifyTime;
|
||||
|
||||
}
|
||||
+43
@@ -0,0 +1,43 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
/**
|
||||
* @Description: 重点认证标准/政策合规性项目审查-产品规划部数据明细表
|
||||
* @author: wangzhijiang
|
||||
* @date: 2023-10-26
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@Accessors(chain = true)
|
||||
@TableName("ZCHGXXMSC_CPGHB_DATA_DETAIL")
|
||||
@ApiModel(value="ZchgxxmscCpghbDataDetail对象", description="")
|
||||
public class ZchgxxmscCpghbDataDetailEO {
|
||||
private static final long serialVersionUID=1L;
|
||||
|
||||
@TableId(value = "ID", type = IdType.UUID)
|
||||
private String id;
|
||||
|
||||
// 流程实例id
|
||||
@TableField("PRC_ID")
|
||||
private String prcId;
|
||||
|
||||
// 产品规划部数据id
|
||||
@TableField("ZCHGXXMSC_CPGHB_DATA_ID")
|
||||
private String zchgxxmscCpghbDataId;
|
||||
|
||||
// 标准/政策id
|
||||
@TableField("LAW_ID")
|
||||
private String lawId;
|
||||
|
||||
// 输入值
|
||||
@TableField("INPUT_VALUE")
|
||||
private String inputValue;
|
||||
}
|
||||
+185
@@ -0,0 +1,185 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 重点认证标准/政策合规性项目审查-产品规划部数据表
|
||||
* @author: wangzhijiang
|
||||
* @date: 2023-10-26
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@Accessors(chain = true)
|
||||
@TableName("ZCHGXXMSC_CPGHB_DATA")
|
||||
@ApiModel(value="ZchgxxmscCpghbData对象", description="")
|
||||
public class ZchgxxmscCpghbDataEO {
|
||||
private static final long serialVersionUID=1L;
|
||||
|
||||
@TableId(value = "ID", type = IdType.UUID)
|
||||
private String id;
|
||||
|
||||
// 流程实例id
|
||||
@TableField("PRC_ID")
|
||||
private String prcId;
|
||||
|
||||
// 责任人用户id
|
||||
@TableField("ZRR_USER_ID")
|
||||
private String zrrUserId;
|
||||
|
||||
// 业务
|
||||
@TableField("BUSINESS")
|
||||
private String business;
|
||||
|
||||
// 平台
|
||||
@TableField("PLATFORM")
|
||||
private String platform;
|
||||
|
||||
// 项目
|
||||
@TableField("PROJECT")
|
||||
private String project;
|
||||
|
||||
// 项目描述
|
||||
@TableField("PROJECT_DESCRIPTION")
|
||||
private String projectDescription;
|
||||
|
||||
// 当前节点
|
||||
@TableField("CURRENT_NODE")
|
||||
private String currentNode;
|
||||
|
||||
// G0
|
||||
@TableField("G_ZERO_DATE")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date gZeroDate;
|
||||
|
||||
// G1
|
||||
@TableField("G_ONE_DATE")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date gOneDate;
|
||||
|
||||
// G2
|
||||
@TableField("G_TWO_DATE")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date gTwoDate;
|
||||
|
||||
// G3
|
||||
@TableField("G_THREE_DATE")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date gThreeDate;
|
||||
|
||||
// G4
|
||||
@TableField("G_FOUR_DATE")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date gFourDate;
|
||||
|
||||
// G5
|
||||
@TableField("G_FIVE_DATE")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date gFiveDate;
|
||||
|
||||
// G6
|
||||
@TableField("G_SIX_DATE")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date gSixDate;
|
||||
|
||||
// G7
|
||||
@TableField("G_SEVEN_DATE")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date gSevenDate;
|
||||
|
||||
// G8
|
||||
@TableField("G_EIGHT_DATE")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date gEightDate;
|
||||
|
||||
// G9
|
||||
@TableField("G_NINE_DATE")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date gNineDate;
|
||||
|
||||
// G10
|
||||
@TableField("G_TEN_DATE")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date gTenDate;
|
||||
|
||||
// G11
|
||||
@TableField("G_ELEVEN_DATE")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date gElevenDate;
|
||||
|
||||
// G12
|
||||
@TableField("G_TWELVE_DATE")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date gTwelveDate;
|
||||
|
||||
// G13
|
||||
@TableField("G_THIRTEEN_DATE")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date gThirteenDate;
|
||||
|
||||
// 提出人/创建人
|
||||
@TableField("CREATE_USER_ID")
|
||||
private String createUserId;
|
||||
|
||||
// 标准填写信息
|
||||
@TableField("INFO_TABLE_DATA")
|
||||
private String infoTableData;
|
||||
|
||||
// 概念状态
|
||||
@TableField("CONCEPTUAL_STATE")
|
||||
private String conceptualState;
|
||||
|
||||
// 概念计划下发时间
|
||||
@TableField("CONCEPT_PLAN_RELEASE_TIME")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date conceptPlanReleaseTime;
|
||||
|
||||
// 概念修订计划
|
||||
@TableField("CONCEPT_REVISION_PLAN")
|
||||
private String conceptRevisionPlan;
|
||||
|
||||
// 其它说明
|
||||
@TableField("ADDITIONAL_NOTES")
|
||||
private String additionalNotes;
|
||||
|
||||
// 创建时间
|
||||
@TableField("CREATE_TIME")
|
||||
private Date createTime;
|
||||
|
||||
// 更新人
|
||||
@TableField("MODIFY_USER_ID")
|
||||
private String modifyUserId;
|
||||
|
||||
// 更新时间
|
||||
@TableField("MODIFY_TIME")
|
||||
private Date modifyTime;
|
||||
|
||||
// @TableField(exist = false)
|
||||
// private List<ZchgxxmscCpghbDataDetailEO> zchgxxmscCpghbDataDetailEOList;
|
||||
}
|
||||
@@ -0,0 +1,101 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @Description: 重点认证标准/政策合规性项目审查-事业部数据表
|
||||
* @author: wangzhijiang
|
||||
* @date: 2023-10-25
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@Accessors(chain = true)
|
||||
@TableName("ZCHGXXMSC_SYB_DATA")
|
||||
@ApiModel(value="ZchgxxmscSybData对象", description="")
|
||||
public class ZchgxxmscSybDataEO {
|
||||
private static final long serialVersionUID=1L;
|
||||
|
||||
@TableId(value = "ID", type = IdType.UUID)
|
||||
private String id;
|
||||
|
||||
// 标准/政策id
|
||||
@TableField("LAW_ID")
|
||||
private String lawId;
|
||||
|
||||
// 流程实例id
|
||||
@TableField("PRC_ID")
|
||||
private String prcId;
|
||||
|
||||
// 责任人用户id
|
||||
@TableField("ZRR_USER_ID")
|
||||
private String zrrUserId;
|
||||
|
||||
// 数据来源
|
||||
@TableField("DATA_SOURCE")
|
||||
private String dataSource;
|
||||
|
||||
// 标准/政策编号
|
||||
@TableField("LAW_CODE")
|
||||
private String lawCode;
|
||||
|
||||
// 标准/政策名称
|
||||
@TableField("LAW_NAME")
|
||||
private String lawName;
|
||||
|
||||
// 产品类型
|
||||
@TableField("PRODUCT_TYPE")
|
||||
private String productType;
|
||||
|
||||
// 实施日期
|
||||
@TableField("IMPL_TIME")
|
||||
private String implTime;
|
||||
|
||||
// 实施要求
|
||||
@TableField("IMPL_REQUIRE")
|
||||
private String implRequire;
|
||||
|
||||
// 资源符合情况
|
||||
@TableField("RESOURCE_ACCORDWITH_CIRCUMSTANCE")
|
||||
private String resourceAccordwithCircumstance;
|
||||
|
||||
// 开发计划
|
||||
@TableField("DEV_PLAN")
|
||||
private String devPlan;
|
||||
|
||||
// sop时间
|
||||
@TableField("SOP_DATE")
|
||||
private String sopDate;
|
||||
|
||||
// 完成情况
|
||||
@TableField("FINISH_CIRCUMSTANCE")
|
||||
private String finishCircumstance;
|
||||
|
||||
// sop时间超过法规时限的空挡期的业务应对方案
|
||||
@TableField("SOP_DATE_SOLUTIONS")
|
||||
private String sopDateSolutions;
|
||||
|
||||
// 提出人/创建人
|
||||
@TableField("CREATE_USER_ID")
|
||||
private String createUserId;
|
||||
|
||||
// 创建时间
|
||||
@TableField("CREATE_TIME")
|
||||
private Date createTime;
|
||||
|
||||
// 更新人
|
||||
@TableField("MODIFY_USER_ID")
|
||||
private String modifyUserId;
|
||||
|
||||
// 更新时间
|
||||
@TableField("MODIFY_TIME")
|
||||
private Date modifyTime;
|
||||
}
|
||||
+11
@@ -0,0 +1,11 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.FlowUserRelInfo;
|
||||
|
||||
/**
|
||||
* 流程用户关系信息表 :流程中,存储用户上下级关系
|
||||
* 作用:记录流程中,用户分配的上下级关系。
|
||||
*/
|
||||
public interface FlowUserRelInfoMapper extends BaseMapper<FlowUserRelInfo> {
|
||||
}
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.PolicySolicitOpinionEO;
|
||||
|
||||
public interface PolicySolicitOpinionEOMapper extends BaseMapper<PolicySolicitOpinionEO> {
|
||||
}
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.ZchgxxmscCpghbDataDetailEO;
|
||||
|
||||
public interface ZchgxxmscCpghbDataDetailEOMapper extends BaseMapper<ZchgxxmscCpghbDataDetailEO> {
|
||||
}
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.ZchgxxmscCpghbDataEO;
|
||||
|
||||
public interface ZchgxxmscCpghbDataEOMapper extends BaseMapper<ZchgxxmscCpghbDataEO> {
|
||||
}
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.ZchgxxmscSybDataEO;
|
||||
|
||||
public interface ZchgxxmscSybDataEOMapper extends BaseMapper<ZchgxxmscSybDataEO> {
|
||||
}
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.FlowUserRelInfo;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 流程用户信息:流程中,存储用户上下级关系
|
||||
*/
|
||||
public interface IFlowUserRelInfoService extends IService<FlowUserRelInfo> {
|
||||
/**
|
||||
* 批量新增流程用户上下级关系
|
||||
* @param flowUserRelInfoList
|
||||
*/
|
||||
void saveBatchFlowUserRelInfo(List<FlowUserRelInfo> flowUserRelInfoList);
|
||||
}
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.service;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.PolicySolicitOpinionEO;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public interface IPolicySolicitOpinionEOService extends IService<PolicySolicitOpinionEO> {
|
||||
|
||||
void batchInsert(JSONObject json);
|
||||
|
||||
List<PolicySolicitOpinionEO> queryPolicitOpinionEOList(Map<String,Object> params);
|
||||
}
|
||||
+13
@@ -0,0 +1,13 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.ZchgxxmscCpghbDataDetailEO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface IZchgxxmscCpghbDataDetailEOService extends IService<ZchgxxmscCpghbDataDetailEO> {
|
||||
|
||||
void batchInsert(List<ZchgxxmscCpghbDataDetailEO> zchgxxmscCpghbDataDetailEOList);
|
||||
|
||||
List<ZchgxxmscCpghbDataDetailEO> queryZchgxxmscCpghbDataDetailEOList(List<String> zchgxxmscCpghbDataIdList);
|
||||
}
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.service;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.ZchgxxmscCpghbDataEO;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public interface IZchgxxmscCpghbDataEOService extends IService<ZchgxxmscCpghbDataEO> {
|
||||
|
||||
void batchInsert(JSONObject json);
|
||||
|
||||
List<ZchgxxmscCpghbDataEO> queryZchgxxmscCpghbDataEOList(Map<String,Object> params);
|
||||
}
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.ZchgxxmscSybDataEO;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public interface IZchgxxmscSybDataEOService extends IService<ZchgxxmscSybDataEO> {
|
||||
|
||||
void batchInsert(List<ZchgxxmscSybDataEO> zchgxxmscSybDataEOList);
|
||||
|
||||
List<ZchgxxmscSybDataEO> queryZchgxxmscSybDataEOList(Map<String,Object> params);
|
||||
}
|
||||
+42
@@ -0,0 +1,42 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.FlowUserRelInfo;
|
||||
import com.ydw.bat.wkflow.business_main.datas.mapper.FlowUserRelInfoMapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IFlowUserRelInfoService;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Propagation;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 流程用户信息:流程中,存储用户上下级关系
|
||||
* 作用:记录流程每一个节点的用户id
|
||||
*/
|
||||
@Service
|
||||
@Transactional(value = "transactionManager", propagation = Propagation.REQUIRED, rollbackFor = Throwable.class)
|
||||
public class FlowUserRelInfoServiceImpl extends ServiceImpl<FlowUserRelInfoMapper, FlowUserRelInfo> implements IFlowUserRelInfoService {
|
||||
|
||||
@Autowired
|
||||
private FlowUserRelInfoMapper flowUserRelInfoMapper;
|
||||
|
||||
@Override
|
||||
public void saveBatchFlowUserRelInfo(List<FlowUserRelInfo> flowUserRelInfoList) {
|
||||
if(CollectionUtils.isNotEmpty(flowUserRelInfoList)){
|
||||
FlowUserRelInfo flowUserRelInfo = flowUserRelInfoList.get(0);
|
||||
|
||||
QueryWrapper<FlowUserRelInfo> deleteWrap = new QueryWrapper<>();
|
||||
deleteWrap.lambda().eq(FlowUserRelInfo::getParentUserId,flowUserRelInfo.getParentUserId());
|
||||
deleteWrap.lambda().eq(FlowUserRelInfo::getDataType,flowUserRelInfo.getDataType());
|
||||
deleteWrap.lambda().eq(FlowUserRelInfo::getFlowType,flowUserRelInfo.getFlowType());
|
||||
deleteWrap.lambda().eq(FlowUserRelInfo::getActiProcInstId,flowUserRelInfo.getActiProcInstId());
|
||||
this.flowUserRelInfoMapper.delete(deleteWrap);
|
||||
|
||||
this.saveBatch(flowUserRelInfoList);
|
||||
}
|
||||
}
|
||||
}
|
||||
+130
@@ -0,0 +1,130 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.service.impl;
|
||||
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.netflix.discovery.converters.Auto;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.FlowUserRelInfo;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.PolicySolicitOpinionEO;
|
||||
import com.ydw.bat.wkflow.business_main.datas.mapper.PolicySolicitOpinionEOMapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IFlowUserRelInfoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IPolicySolicitOpinionEOService;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Service
|
||||
public class PolicySolicitOpinionEOServiceImpl extends ServiceImpl<PolicySolicitOpinionEOMapper, PolicySolicitOpinionEO> implements IPolicySolicitOpinionEOService {
|
||||
|
||||
@Autowired
|
||||
private IFlowUserRelInfoService flowUserRelInfoService;
|
||||
|
||||
@Override
|
||||
public void batchInsert(JSONObject json) {
|
||||
String currentUserId = json.getString("currentUserId");
|
||||
String prcId = json.getString("prcId");
|
||||
String removeIds = json.getString("removeIds");
|
||||
|
||||
JSONObject jsonForm = json.getJSONObject("form");
|
||||
if (StringUtils.isNotEmpty(removeIds)) {
|
||||
List<String> removeIdList = Arrays.asList(removeIds.split(","));
|
||||
this.removeByIds(removeIdList);
|
||||
}
|
||||
JSONArray policySolicitOpinionEOArr = json.getJSONArray("policySolicitOpinionEOList");
|
||||
List<PolicySolicitOpinionEO> addPolicySolicitOpinionEOList = new ArrayList<>();
|
||||
List<PolicySolicitOpinionEO> updatePolicySolicitOpinionEOList = new ArrayList<>();
|
||||
PolicySolicitOpinionEO policySolicitOpinionEO = null;
|
||||
for (Object policySolicitOpinion : policySolicitOpinionEOArr) {
|
||||
policySolicitOpinionEO = JSONObject.parseObject(JSONObject.toJSONString(policySolicitOpinion), PolicySolicitOpinionEO.class);
|
||||
|
||||
policySolicitOpinionEO.setPrcId(prcId);
|
||||
policySolicitOpinionEO.setSarLawsInfoId(jsonForm.getString("lawsId"));
|
||||
if (StringUtils.isEmpty(policySolicitOpinionEO.getId())) {
|
||||
policySolicitOpinionEO.setCreateUserId(currentUserId);
|
||||
policySolicitOpinionEO.setCreateTime(new Date());
|
||||
addPolicySolicitOpinionEOList.add(policySolicitOpinionEO);
|
||||
} else {
|
||||
policySolicitOpinionEO.setModifyUserId(currentUserId);
|
||||
policySolicitOpinionEO.setModifyTime(new Date());
|
||||
updatePolicySolicitOpinionEOList.add(policySolicitOpinionEO);
|
||||
}
|
||||
}
|
||||
|
||||
if (CollectionUtils.isNotEmpty(addPolicySolicitOpinionEOList)) {
|
||||
this.saveBatch(addPolicySolicitOpinionEOList);
|
||||
}
|
||||
if (CollectionUtils.isNotEmpty(updatePolicySolicitOpinionEOList)) {
|
||||
this.updateBatchById(updatePolicySolicitOpinionEOList);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<PolicySolicitOpinionEO> queryPolicitOpinionEOList(Map<String, Object> params) {
|
||||
|
||||
List<PolicySolicitOpinionEO> result = new ArrayList<>();
|
||||
String taskDefinitionKey = (String) params.get("taskDefinitionKey");
|
||||
String currentUserId = (String) params.get("currentUserId");
|
||||
String prcId = (String) params.get("prcId");
|
||||
|
||||
QueryWrapper<PolicySolicitOpinionEO> psoEoQueryWrap = new QueryWrapper<>();
|
||||
psoEoQueryWrap.lambda().eq(PolicySolicitOpinionEO::getPrcId, prcId);
|
||||
|
||||
if (StringUtils.equals(taskDefinitionKey, "PolicySolicitOpinionProcessKey8")) {
|
||||
// 责任人处理
|
||||
psoEoQueryWrap.lambda().eq(PolicySolicitOpinionEO::getCreateUserId, currentUserId);
|
||||
} else if (StringUtils.equals(taskDefinitionKey, "PolicySolicitOpinionProcessKey9")) {
|
||||
// 责任对接人汇总
|
||||
// 查询当前责任对接人分配出去的责任人,获取这些责任人填写的征求意见列表
|
||||
List<String> userIdList = new ArrayList<>();
|
||||
userIdList.add(currentUserId);
|
||||
|
||||
QueryWrapper<FlowUserRelInfo> furQueryWrap = new QueryWrapper<>();
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getActiProcInstId, prcId);
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getFlowType, FlowTypeEnum.ZCZQYJLC.getValue());
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getDataType, "zrdjrfpzrr"); // 责任对接人分配责任人
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getParentUserId, currentUserId);
|
||||
List<FlowUserRelInfo> zrdjrFlowUserRelInfoList = this.flowUserRelInfoService.list(furQueryWrap);
|
||||
if (CollectionUtils.isNotEmpty(zrdjrFlowUserRelInfoList)) {
|
||||
userIdList.addAll(zrdjrFlowUserRelInfoList.stream().map(FlowUserRelInfo::getUserId).distinct().collect(Collectors.toList()));
|
||||
}
|
||||
psoEoQueryWrap.lambda().in(PolicySolicitOpinionEO::getCreateUserId, userIdList);
|
||||
} else if (StringUtils.equals(taskDefinitionKey, "PolicySolicitOpinionProcessKey10")) {
|
||||
// 责任单位审批
|
||||
// 查询当前责任单位被分配出去的责任人对接人,根据责任对接人获取分配出去的责任人,获取这些责任人填写的征求意见列表
|
||||
List<String> userIdList = new ArrayList<>();
|
||||
|
||||
QueryWrapper<FlowUserRelInfo> furQueryWrap = new QueryWrapper<>();
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getActiProcInstId, prcId);
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getFlowType, FlowTypeEnum.ZCZQYJLC.getValue());
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getDataType, "zrdjrfpzrdw"); // 责任对接人分配责任单位审批
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getUserId, currentUserId);
|
||||
List<FlowUserRelInfo> zrdwflowUserRelInfoList = this.flowUserRelInfoService.list(furQueryWrap);
|
||||
if (CollectionUtils.isNotEmpty(zrdwflowUserRelInfoList)) {
|
||||
List<String> zrdjrUserIdList = zrdwflowUserRelInfoList.stream().map(FlowUserRelInfo::getParentUserId).distinct().collect(Collectors.toList());
|
||||
userIdList.addAll(zrdjrUserIdList);
|
||||
|
||||
QueryWrapper<FlowUserRelInfo> zrdjrQueryWrap = new QueryWrapper<>();
|
||||
zrdjrQueryWrap.lambda().eq(FlowUserRelInfo::getActiProcInstId, prcId);
|
||||
zrdjrQueryWrap.lambda().eq(FlowUserRelInfo::getFlowType, FlowTypeEnum.ZCZQYJLC.getValue());
|
||||
zrdjrQueryWrap.lambda().eq(FlowUserRelInfo::getDataType, "zrdjrfpzrr"); // 责任对接人分配责任人
|
||||
zrdjrQueryWrap.lambda().in(FlowUserRelInfo::getParentUserId, zrdjrUserIdList);
|
||||
List<FlowUserRelInfo> zrdjrFlowUserRelInfoList = this.flowUserRelInfoService.list(zrdjrQueryWrap);
|
||||
if (CollectionUtils.isNotEmpty(zrdjrFlowUserRelInfoList)) {
|
||||
userIdList.addAll(zrdjrFlowUserRelInfoList.stream().map(FlowUserRelInfo::getUserId).distinct().collect(Collectors.toList()));
|
||||
}
|
||||
} else {
|
||||
userIdList.add("设置一个无法满足的条件");
|
||||
}
|
||||
psoEoQueryWrap.lambda().in(PolicySolicitOpinionEO::getCreateUserId, userIdList);
|
||||
}
|
||||
psoEoQueryWrap.orderByAsc("create_time");
|
||||
result = this.list(psoEoQueryWrap);
|
||||
return result;
|
||||
}
|
||||
}
|
||||
+36
@@ -0,0 +1,36 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.ZchgxxmscCpghbDataDetailEO;
|
||||
import com.ydw.bat.wkflow.business_main.datas.mapper.ZchgxxmscCpghbDataDetailEOMapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IZchgxxmscCpghbDataDetailEOService;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Service
|
||||
public class ZchgxxmscCpghbDataDetailEOServiceImpl extends ServiceImpl<ZchgxxmscCpghbDataDetailEOMapper, ZchgxxmscCpghbDataDetailEO> implements IZchgxxmscCpghbDataDetailEOService {
|
||||
|
||||
@Override
|
||||
public void batchInsert(List<ZchgxxmscCpghbDataDetailEO> zchgxxmscCpghbDataDetailEOList) {
|
||||
if (CollectionUtils.isNotEmpty(zchgxxmscCpghbDataDetailEOList)) {
|
||||
this.saveBatch(zchgxxmscCpghbDataDetailEOList);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ZchgxxmscCpghbDataDetailEO> queryZchgxxmscCpghbDataDetailEOList(List<String> zchgxxmscCpghbDataIdList) {
|
||||
List<ZchgxxmscCpghbDataDetailEO> result = new ArrayList<>();
|
||||
if (CollectionUtils.isNotEmpty(zchgxxmscCpghbDataIdList)) {
|
||||
zchgxxmscCpghbDataIdList = zchgxxmscCpghbDataIdList.stream().distinct().collect(Collectors.toList());
|
||||
QueryWrapper<ZchgxxmscCpghbDataDetailEO> cpghbDataDetailQueryWrap = new QueryWrapper<>();
|
||||
cpghbDataDetailQueryWrap.lambda().in(ZchgxxmscCpghbDataDetailEO::getZchgxxmscCpghbDataId,zchgxxmscCpghbDataIdList);
|
||||
result = this.list(cpghbDataDetailQueryWrap);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
+134
@@ -0,0 +1,134 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.service.impl;
|
||||
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.FlowUserRelInfo;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.ZchgxxmscCpghbDataEO;
|
||||
import com.ydw.bat.wkflow.business_main.datas.mapper.ZchgxxmscCpghbDataEOMapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IFlowUserRelInfoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IZchgxxmscCpghbDataDetailEOService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IZchgxxmscCpghbDataEOService;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Service
|
||||
public class ZchgxxmscCpghbDataEOServiceImpl extends ServiceImpl<ZchgxxmscCpghbDataEOMapper, ZchgxxmscCpghbDataEO> implements IZchgxxmscCpghbDataEOService {
|
||||
|
||||
@Autowired
|
||||
private IFlowUserRelInfoService flowUserRelInfoService;
|
||||
@Autowired
|
||||
private IZchgxxmscCpghbDataDetailEOService zchgxxmscCpghbDataDetailEOService;
|
||||
|
||||
@Override
|
||||
public void batchInsert(JSONObject json) {
|
||||
String currentUserId = json.getString("currentUserId");
|
||||
String prcId = json.getString("prcId");
|
||||
String removeIds = json.getString("removeIds");
|
||||
|
||||
JSONObject jsonForm = json.getJSONObject("form");
|
||||
if (StringUtils.isNotEmpty(removeIds)) {
|
||||
List<String> removeIdList = Arrays.asList(removeIds.split(","));
|
||||
this.removeByIds(removeIdList);
|
||||
}
|
||||
JSONArray cpghbDataListArr = jsonForm.getJSONArray("cpghbDataList");
|
||||
List<ZchgxxmscCpghbDataEO> addZchgxxmscCpghbDataEOList = new ArrayList<>();
|
||||
List<ZchgxxmscCpghbDataEO> updateZchgxxmscCpghbDataEOList = new ArrayList<>();
|
||||
ZchgxxmscCpghbDataEO zchgxxmscCpghbDataEO = null;
|
||||
|
||||
for (Object cpghbData : cpghbDataListArr) {
|
||||
zchgxxmscCpghbDataEO = JSONObject.parseObject(JSONObject.toJSONString(cpghbData), ZchgxxmscCpghbDataEO.class);
|
||||
|
||||
zchgxxmscCpghbDataEO.setPrcId(prcId);
|
||||
if (StringUtils.isEmpty(zchgxxmscCpghbDataEO.getId())) {
|
||||
zchgxxmscCpghbDataEO.setId(UUID.randomUUID().toString());
|
||||
zchgxxmscCpghbDataEO.setZrrUserId(currentUserId);
|
||||
zchgxxmscCpghbDataEO.setCreateUserId(currentUserId);
|
||||
zchgxxmscCpghbDataEO.setCreateTime(new Date());
|
||||
addZchgxxmscCpghbDataEOList.add(zchgxxmscCpghbDataEO);
|
||||
} else {
|
||||
zchgxxmscCpghbDataEO.setModifyUserId(currentUserId);
|
||||
zchgxxmscCpghbDataEO.setModifyTime(new Date());
|
||||
updateZchgxxmscCpghbDataEOList.add(zchgxxmscCpghbDataEO);
|
||||
}
|
||||
}
|
||||
|
||||
if (CollectionUtils.isNotEmpty(addZchgxxmscCpghbDataEOList)) {
|
||||
this.saveBatch(addZchgxxmscCpghbDataEOList);
|
||||
}
|
||||
if (CollectionUtils.isNotEmpty(updateZchgxxmscCpghbDataEOList)) {
|
||||
this.updateBatchById(updateZchgxxmscCpghbDataEOList);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ZchgxxmscCpghbDataEO> queryZchgxxmscCpghbDataEOList(Map<String, Object> params) {
|
||||
|
||||
List<ZchgxxmscCpghbDataEO> result = new ArrayList<>();
|
||||
String taskDefinitionKey = (String) params.get("taskDefinitionKey");
|
||||
String currentUserId = (String) params.get("currentUserId");
|
||||
String prcId = (String) params.get("pId");
|
||||
|
||||
QueryWrapper<ZchgxxmscCpghbDataEO> cpghbEoQueryWrap = new QueryWrapper<>();
|
||||
cpghbEoQueryWrap.lambda().eq(ZchgxxmscCpghbDataEO::getPrcId, prcId);
|
||||
|
||||
if (StringUtils.equals(taskDefinitionKey, "PolicyComplianceProgramReviewProcessKey8")) {
|
||||
// 责任人处理
|
||||
cpghbEoQueryWrap.lambda().eq(ZchgxxmscCpghbDataEO::getZrrUserId, currentUserId);
|
||||
} else if (StringUtils.equals(taskDefinitionKey, "PolicyComplianceProgramReviewProcessKey9")) {
|
||||
// 责任对接人汇总
|
||||
// 查询当前责任对接人分配出去的责任人,获取这些责任人填写的数据列表
|
||||
List<String> userIdList = new ArrayList<>();
|
||||
userIdList.add(currentUserId);
|
||||
|
||||
QueryWrapper<FlowUserRelInfo> furQueryWrap = new QueryWrapper<>();
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getActiProcInstId, prcId);
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getFlowType, FlowTypeEnum.ZCHGXXMSCLC.getValue());
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getDataType, "zrdjrfpzrr"); // 责任对接人分配责任人
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getParentUserId, currentUserId);
|
||||
List<FlowUserRelInfo> zrdjrFlowUserRelInfoList = this.flowUserRelInfoService.list(furQueryWrap);
|
||||
if (CollectionUtils.isNotEmpty(zrdjrFlowUserRelInfoList)) {
|
||||
userIdList.addAll(zrdjrFlowUserRelInfoList.stream().map(FlowUserRelInfo::getUserId).distinct().collect(Collectors.toList()));
|
||||
}
|
||||
cpghbEoQueryWrap.lambda().in(ZchgxxmscCpghbDataEO::getZrrUserId, userIdList);
|
||||
} else if (StringUtils.equals(taskDefinitionKey, "PolicyComplianceProgramReviewProcessKey10")) {
|
||||
// 责任单位审批
|
||||
// 查询当前责任单位被分配出去的责任人对接人,根据责任对接人获取分配出去的责任人,获取这些责任人填写的数据列表
|
||||
List<String> userIdList = new ArrayList<>();
|
||||
|
||||
QueryWrapper<FlowUserRelInfo> furQueryWrap = new QueryWrapper<>();
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getActiProcInstId, prcId);
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getFlowType, FlowTypeEnum.ZCHGXXMSCLC.getValue());
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getDataType, "zrdjrfpzrdw"); // 责任对接人分配责任单位审批
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getUserId, currentUserId);
|
||||
List<FlowUserRelInfo> zrdwflowUserRelInfoList = this.flowUserRelInfoService.list(furQueryWrap);
|
||||
if (CollectionUtils.isNotEmpty(zrdwflowUserRelInfoList)) {
|
||||
List<String> zrdjrUserIdList = zrdwflowUserRelInfoList.stream().map(FlowUserRelInfo::getParentUserId).distinct().collect(Collectors.toList());
|
||||
userIdList.addAll(zrdjrUserIdList);
|
||||
|
||||
QueryWrapper<FlowUserRelInfo> zrdjrQueryWrap = new QueryWrapper<>();
|
||||
zrdjrQueryWrap.lambda().eq(FlowUserRelInfo::getActiProcInstId, prcId);
|
||||
zrdjrQueryWrap.lambda().eq(FlowUserRelInfo::getFlowType, FlowTypeEnum.ZCHGXXMSCLC.getValue());
|
||||
zrdjrQueryWrap.lambda().eq(FlowUserRelInfo::getDataType, "zrdjrfpzrr"); // 责任对接人分配责任人
|
||||
zrdjrQueryWrap.lambda().in(FlowUserRelInfo::getParentUserId, zrdjrUserIdList);
|
||||
List<FlowUserRelInfo> zrdjrFlowUserRelInfoList = this.flowUserRelInfoService.list(zrdjrQueryWrap);
|
||||
if (CollectionUtils.isNotEmpty(zrdjrFlowUserRelInfoList)) {
|
||||
userIdList.addAll(zrdjrFlowUserRelInfoList.stream().map(FlowUserRelInfo::getUserId).distinct().collect(Collectors.toList()));
|
||||
}
|
||||
} else {
|
||||
userIdList.add("设置一个无法满足的条件");
|
||||
}
|
||||
cpghbEoQueryWrap.lambda().in(ZchgxxmscCpghbDataEO::getZrrUserId, userIdList);
|
||||
}
|
||||
cpghbEoQueryWrap.orderByAsc("create_time");
|
||||
result = this.list(cpghbEoQueryWrap);
|
||||
return result;
|
||||
}
|
||||
}
|
||||
+95
@@ -0,0 +1,95 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.FlowUserRelInfo;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.ZchgxxmscSybDataEO;
|
||||
import com.ydw.bat.wkflow.business_main.datas.mapper.ZchgxxmscSybDataEOMapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IFlowUserRelInfoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IZchgxxmscSybDataEOService;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Service
|
||||
public class ZchgxxmscSybDataEOServiceImpl extends ServiceImpl<ZchgxxmscSybDataEOMapper, ZchgxxmscSybDataEO> implements IZchgxxmscSybDataEOService {
|
||||
|
||||
@Autowired
|
||||
private IFlowUserRelInfoService flowUserRelInfoService;
|
||||
|
||||
@Override
|
||||
public void batchInsert(List<ZchgxxmscSybDataEO> zchgxxmscSybDataEOList) {
|
||||
if (CollectionUtils.isNotEmpty(zchgxxmscSybDataEOList)) {
|
||||
this.saveBatch(zchgxxmscSybDataEOList);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ZchgxxmscSybDataEO> queryZchgxxmscSybDataEOList(Map<String, Object> params) {
|
||||
|
||||
List<ZchgxxmscSybDataEO> result = new ArrayList<>();
|
||||
String taskDefinitionKey = (String) params.get("taskDefinitionKey");
|
||||
String currentUserId = (String) params.get("currentUserId");
|
||||
String prcId = (String) params.get("pId");
|
||||
|
||||
QueryWrapper<ZchgxxmscSybDataEO> sybEoQueryWrap = new QueryWrapper<>();
|
||||
sybEoQueryWrap.lambda().eq(ZchgxxmscSybDataEO::getPrcId, prcId);
|
||||
|
||||
if (StringUtils.equals(taskDefinitionKey, "PolicyComplianceProgramReviewProcessKey8")) {
|
||||
// 责任人处理
|
||||
sybEoQueryWrap.lambda().eq(ZchgxxmscSybDataEO::getZrrUserId, currentUserId);
|
||||
} else if (StringUtils.equals(taskDefinitionKey, "PolicyComplianceProgramReviewProcessKey9")) {
|
||||
// 责任对接人汇总
|
||||
// 查询当前责任对接人分配出去的责任人,获取这些责任人填写的数据列表
|
||||
List<String> userIdList = new ArrayList<>();
|
||||
userIdList.add(currentUserId);
|
||||
|
||||
QueryWrapper<FlowUserRelInfo> furQueryWrap = new QueryWrapper<>();
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getActiProcInstId, prcId);
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getFlowType, FlowTypeEnum.ZCHGXXMSCLC.getValue());
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getDataType, "zrdjrfpzrr"); // 责任对接人分配责任人
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getParentUserId, currentUserId);
|
||||
List<FlowUserRelInfo> zrdjrFlowUserRelInfoList = this.flowUserRelInfoService.list(furQueryWrap);
|
||||
if (CollectionUtils.isNotEmpty(zrdjrFlowUserRelInfoList)) {
|
||||
userIdList.addAll(zrdjrFlowUserRelInfoList.stream().map(FlowUserRelInfo::getUserId).distinct().collect(Collectors.toList()));
|
||||
}
|
||||
sybEoQueryWrap.lambda().in(ZchgxxmscSybDataEO::getZrrUserId, userIdList);
|
||||
} else if (StringUtils.equals(taskDefinitionKey, "PolicyComplianceProgramReviewProcessKey10")) {
|
||||
// 责任单位审批
|
||||
// 查询当前责任单位被分配出去的责任人对接人,根据责任对接人获取分配出去的责任人,获取这些责任人填写的数据列表
|
||||
List<String> userIdList = new ArrayList<>();
|
||||
|
||||
QueryWrapper<FlowUserRelInfo> furQueryWrap = new QueryWrapper<>();
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getActiProcInstId, prcId);
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getFlowType, FlowTypeEnum.ZCHGXXMSCLC.getValue());
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getDataType, "zrdjrfpzrdw"); // 责任对接人分配责任单位审批
|
||||
furQueryWrap.lambda().eq(FlowUserRelInfo::getUserId, currentUserId);
|
||||
List<FlowUserRelInfo> zrdwflowUserRelInfoList = this.flowUserRelInfoService.list(furQueryWrap);
|
||||
if (CollectionUtils.isNotEmpty(zrdwflowUserRelInfoList)) {
|
||||
List<String> zrdjrUserIdList = zrdwflowUserRelInfoList.stream().map(FlowUserRelInfo::getParentUserId).distinct().collect(Collectors.toList());
|
||||
userIdList.addAll(zrdjrUserIdList);
|
||||
|
||||
QueryWrapper<FlowUserRelInfo> zrdjrQueryWrap = new QueryWrapper<>();
|
||||
zrdjrQueryWrap.lambda().eq(FlowUserRelInfo::getActiProcInstId, prcId);
|
||||
zrdjrQueryWrap.lambda().eq(FlowUserRelInfo::getFlowType, FlowTypeEnum.ZCHGXXMSCLC.getValue());
|
||||
zrdjrQueryWrap.lambda().eq(FlowUserRelInfo::getDataType, "zrdjrfpzrr"); // 责任对接人分配责任人
|
||||
zrdjrQueryWrap.lambda().in(FlowUserRelInfo::getParentUserId, zrdjrUserIdList);
|
||||
List<FlowUserRelInfo> zrdjrFlowUserRelInfoList = this.flowUserRelInfoService.list(zrdjrQueryWrap);
|
||||
if (CollectionUtils.isNotEmpty(zrdjrFlowUserRelInfoList)) {
|
||||
userIdList.addAll(zrdjrFlowUserRelInfoList.stream().map(FlowUserRelInfo::getUserId).distinct().collect(Collectors.toList()));
|
||||
}
|
||||
} else {
|
||||
userIdList.add("设置一个无法满足的条件");
|
||||
}
|
||||
sybEoQueryWrap.lambda().in(ZchgxxmscSybDataEO::getZrrUserId, userIdList);
|
||||
}
|
||||
sybEoQueryWrap.orderByAsc("create_time");
|
||||
result = this.list(sybEoQueryWrap);
|
||||
return result;
|
||||
}
|
||||
}
|
||||
@@ -59,4 +59,19 @@ public class CreateMQService {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @Description: 发送OA待阅
|
||||
* @author: wangzhijiang
|
||||
* @date: 2023-10-27
|
||||
* @Param: @param busProcessNew
|
||||
* @return:
|
||||
*/
|
||||
public void sendToBeReadMq(BusProcessNew busProcessNew) {
|
||||
|
||||
if (oaFlag) {
|
||||
//发送消息队列
|
||||
this.rabbitTemplate.convertAndSend("sendToBeRead-exchange_MQ_GSAR_RELEASE", "sendToBeRead-key_MQ_GSAR_RELEASE", busProcessNew);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,171 @@
|
||||
package com.ydw.bat.wkflow.business_mq.service;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.rabbitmq.client.Channel;
|
||||
import com.ydw.bat.wkflow.business_auth.LawsUserInfoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.*;
|
||||
import com.ydw.bat.wkflow.business_main.datas.mapper.SendTodoLogMapper;
|
||||
import com.ydw.bat.wkflow.business_oa.utils.EmailUtils;
|
||||
import com.ydw.bat.wkflow.business_oa.webService.service.WebServiceOAService;
|
||||
import com.ydw.bat.wkflow.business_oa.webService.todoResult.NotifyTodoAppResult;
|
||||
import net.sf.json.JSONObject;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.amqp.rabbit.annotation.Exchange;
|
||||
import org.springframework.amqp.rabbit.annotation.Queue;
|
||||
import org.springframework.amqp.rabbit.annotation.QueueBinding;
|
||||
import org.springframework.amqp.rabbit.annotation.RabbitListener;
|
||||
import org.springframework.amqp.support.AmqpHeaders;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.messaging.Message;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@Component
|
||||
public class SendToBeReadMQService {
|
||||
|
||||
private static final Logger logger = LoggerFactory.getLogger(SendToBeReadMQService.class);
|
||||
|
||||
@Autowired
|
||||
private CreateMQService convertMq;
|
||||
|
||||
@Autowired
|
||||
private EmailUtils emailUtils;
|
||||
|
||||
@Autowired
|
||||
private WebServiceOAService webServiceOAService;
|
||||
|
||||
@Autowired
|
||||
private SendTodoLogMapper sendTodoLogMapper;
|
||||
|
||||
@Autowired
|
||||
private LawsUserInfoService lawsUserInfoService;
|
||||
|
||||
@RabbitListener(bindings = @QueueBinding(
|
||||
value = @Queue(value = "createMQToBeRead_SQ_GSAR_RELEASE", durable = "true"),
|
||||
exchange = @Exchange(value = "sendToBeRead-exchange_MQ_GSAR_RELEASE", ignoreDeclarationExceptions = "true"),
|
||||
key = "sendToBeRead-key_MQ_GSAR_RELEASE"))
|
||||
public void createMQ(BusProcessNew object, Message message, Channel channel) throws Exception {
|
||||
try {
|
||||
try {
|
||||
Thread.sleep(5000);
|
||||
// 发送OA待阅
|
||||
insertOrUpdateInfo(object);
|
||||
} catch (InterruptedException e) {
|
||||
logger.error(e.toString());
|
||||
Thread.currentThread().interrupt();
|
||||
}
|
||||
} catch (Exception e) {
|
||||
logger.error("消息队列进入添加数据方法前失败!");
|
||||
logger.error(e.getMessage(), e);
|
||||
} finally {
|
||||
Long tag = (Long) message.getHeaders().get(AmqpHeaders.DELIVERY_TAG);
|
||||
channel.basicAck(tag, false);
|
||||
logger.debug("消息确认成功!!!!!!!!!");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void insertOrUpdateInfo(BusProcessNew object) throws Exception {
|
||||
try {
|
||||
NotifyTodoAppResult todoAppResult = webServiceOAService.sendToBeRead(object);
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyy-MM-dd HH:mm:ss");
|
||||
|
||||
if (todoAppResult.getSIGN().equals("0") || todoAppResult.getMASSAGE().equals("操作成功")) {
|
||||
QueryWrapper wrapper = new QueryWrapper();
|
||||
wrapper.eq("TODO_ID", object.getId());
|
||||
wrapper.eq("MSG_TYPE", "0");
|
||||
List<SendTodoLog> list = sendTodoLogMapper.selectList(wrapper);
|
||||
if (!list.isEmpty()) {
|
||||
SendTodoLog sendTodoLog = list.get(0);
|
||||
sendTodoLog.setMsgStatus("2");
|
||||
sendTodoLog.setOperMesg(todoAppResult.getMASSAGE());
|
||||
sendTodoLog.setCreateTime(sdf.format(new Date()));
|
||||
sendTodoLog.setUpdateTime(sdf.format(new Date()));
|
||||
sendTodoLogMapper.updateById(sendTodoLog);
|
||||
} else {
|
||||
sendTodoSave(object, sdf, "2", todoAppResult.getMASSAGE());
|
||||
}
|
||||
} else {
|
||||
// 重试发送待办
|
||||
logger.info("重试发送待办");
|
||||
this.restartSendMq(object, todoAppResult.getMASSAGE());
|
||||
}
|
||||
|
||||
} catch (Exception e) {
|
||||
logger.error(e.getMessage(), e);
|
||||
this.restartSendMq(object, e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
public void restartSendMq(BusProcessNew object, String operMesg) throws Exception {
|
||||
QueryWrapper wrapper = new QueryWrapper();
|
||||
wrapper.eq("TODO_ID", object.getId());
|
||||
wrapper.eq("MSG_TYPE", "0");
|
||||
List<SendTodoLog> list = sendTodoLogMapper.selectList(wrapper);
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyy-MM-dd HH:mm:ss");
|
||||
if (!list.isEmpty()) {
|
||||
SendTodoLog sendTodoLog = list.get(0);
|
||||
int againNumNew = Integer.valueOf(sendTodoLog.getErrNum());
|
||||
if (againNumNew >= 6) {
|
||||
ResponseMessage<UserVO> byId = lawsUserInfoService.getById("WY8J26MH23");
|
||||
// 发送待办 或 发送给管理员邮箱
|
||||
List<String> emailList = new ArrayList<>();
|
||||
// 占时指定admin用户邮箱
|
||||
emailList.add(byId == null ? "" : (byId.getData().getEmail() == null ? "" : byId.getData().getEmail()));
|
||||
String[] arr = emailList.toArray(new String[emailList.size()]);
|
||||
String title = "OA请求发送失败6次";
|
||||
String countText = "<div style=\"font-size:16px\" ><div><p>您好:</p></div>" +
|
||||
"<span style=\"color:blue;\" >" + "OA请求发送失败6次,请线下协调处理" + "</span></div>";
|
||||
emailUtils.sendMsgFeign(arr, title, countText);
|
||||
logger.info("发送失败6次,发送给管理员邮箱");
|
||||
} else {
|
||||
restSendTodo(object, sdf, sendTodoLog, againNumNew, operMesg);
|
||||
}
|
||||
} else {
|
||||
sendTodoSave(object, sdf, "3", operMesg);
|
||||
}
|
||||
}
|
||||
|
||||
private void restSendTodo(BusProcessNew object, SimpleDateFormat sdf, SendTodoLog sendTodoLog, int againNumNew, String operMesg) throws Exception {
|
||||
// 失败次数小于6次,放入失败队列延迟消费
|
||||
if ((againNumNew < 6)) {
|
||||
Thread.sleep(3000);
|
||||
logger.info("发送失败连续持续" + againNumNew + "次,存入延迟重试队列!!!!!!!!!");
|
||||
} else {
|
||||
logger.info("发送失败连续持续" + againNumNew + "次!!");
|
||||
}
|
||||
sendTodoLog.setErrNum(sendTodoLog.getErrNum() + 1);
|
||||
sendTodoLog.setUpdateTime(sdf.format(new Date()));
|
||||
sendTodoLog.setOperMesg(operMesg);
|
||||
sendTodoLogMapper.updateById(sendTodoLog);
|
||||
convertMq.sendTodoMq(object);
|
||||
logger.info("已重新加入延迟队列");
|
||||
}
|
||||
|
||||
private void sendTodoSave(BusProcessNew object, SimpleDateFormat sdf, String s, String operMesg) {
|
||||
SendTodoLog sendTodoLog = new SendTodoLog();
|
||||
sendTodoLog.setMsgType("0");
|
||||
sendTodoLog.setTodoId(object.getId());
|
||||
sendTodoLog.setUserId(object.getUserId());
|
||||
JSONObject json = JSONObject.fromObject(object);
|
||||
sendTodoLog.setMesg(json.toString());
|
||||
sendTodoLog.setMsgStatus(s);
|
||||
sendTodoLog.setErrNum(1);
|
||||
sendTodoLog.setOperMesg(operMesg);
|
||||
sendTodoLog.setCreateTime(sdf.format(new Date()));
|
||||
sendTodoLog.setUpdateTime(sdf.format(new Date()));
|
||||
sendTodoLogMapper.insert(sendTodoLog);
|
||||
if (s.equals("2")) {
|
||||
logger.info("发送成功,存入OA日志");
|
||||
} else {
|
||||
convertMq.sendToBeReadMq(object);
|
||||
logger.info("已重新加入延迟队列");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
+2
@@ -24,4 +24,6 @@ public interface WebServiceOAService {
|
||||
|
||||
NotifyTodoAppDeleteResult setTodoDelete(String object) throws Exception;
|
||||
|
||||
NotifyTodoAppResult sendToBeRead(BusProcessNew busProcessNew) throws Exception;
|
||||
|
||||
}
|
||||
|
||||
+64
@@ -492,5 +492,69 @@ public class WebServiceOAServiceImpl implements WebServiceOAService {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Async
|
||||
public NotifyTodoAppResult sendToBeRead(BusProcessNew busProcessNew) throws Exception {
|
||||
NotifyTodoAppResult notifyTodoAppResult = new NotifyTodoAppResult();
|
||||
String result = "";
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyy-MM-dd HH:mm:ss");
|
||||
JsonSend jsonSend = new JsonSend();
|
||||
HEAD head = new HEAD();
|
||||
head.setACCOUNT("OA");
|
||||
head.setBIZTRANSACTIONID("SYC_161320210206133219");
|
||||
head.setCONSUMER("SPRS");
|
||||
head.setCOUNT("1");
|
||||
head.setPASSWORD("oa201611241710");
|
||||
head.setSRVLEVEL("1");
|
||||
List<Object> list = new ArrayList<>();
|
||||
NotifyTodoSendContext notifyTodoSendContext = new NotifyTodoSendContext();
|
||||
// 待办来源的系统
|
||||
notifyTodoSendContext.setAppName("SPRS");
|
||||
//创建时间
|
||||
notifyTodoSendContext.setCreateTime(sdf.format(new Date()));
|
||||
// 待办在原系统唯一标识
|
||||
notifyTodoSendContext.setModelId(busProcessNew.getId());
|
||||
//模块名称
|
||||
notifyTodoSendContext.setModelName(busProcessNew.getTaskInfo());
|
||||
//标题
|
||||
notifyTodoSendContext.setSubject(busProcessNew.getPrcName());
|
||||
//地址
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.eq("PRC_ID", busProcessNew.getPId());
|
||||
BusProcessName busProcessName = iBusProcessNameService.getOne(queryWrapper);
|
||||
String linkParam = "&taskIds=" + busProcessNew.getTaskId() + "&prcId=" + busProcessNew.getPId() + "&prcNum=" + busProcessName.getPrcNum() + "&prcName=" + busProcessName.getPrcName();
|
||||
notifyTodoSendContext.setLink(webUrl + busProcessNew.getLink() + linkParam);
|
||||
//待办类型
|
||||
notifyTodoSendContext.setType("2");
|
||||
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
ResponseMessage<UserVO> byId = lawsUserInfoService.getById(busProcessNew.getUserId());
|
||||
map.put("LoginName", byId == null ? "" : byId.getData().getAccount());
|
||||
JSONObject jsonLoginName = new JSONObject(map);
|
||||
notifyTodoSendContext.setTargets(jsonLoginName.toJSONString());
|
||||
list.add(notifyTodoSendContext);
|
||||
jsonSend.setHEAD(head);
|
||||
jsonSend.setLIST(list);
|
||||
net.sf.json.JSONObject json = net.sf.json.JSONObject.fromObject(jsonSend);
|
||||
Map<String, String> mapCtr = new TreeMap<>();
|
||||
mapCtr.put("Authorization", credentials);
|
||||
log.info("处理完文件数据,开始请求发送待办接口数据:【" + sdf.format(new Date()) + "】");
|
||||
log.info("sendTodo当前处理的文件数据(josnSend):" + jsonSend.toString());
|
||||
log.info("sendTodo当前处理的文件数据(notifyTodoSendContext):" + notifyTodoSendContext.toString());
|
||||
result = okHttpUtil.postForJson("https://fesbnew.foton.com.cn/WP_FOTON_FSOA/APP_DOC_SERVICES/Proxy_Services/TA_OA/DOC_SYC_1019_SendTodo_PS", json.toString(), mapCtr);
|
||||
log.info("请求发送待办接口完毕,返回响应状态:【" + sdf.format(new Date()) + "】");
|
||||
if (!result.contains("操作成功")) {
|
||||
log.error("请求发送待办接口出现异常:" + result);
|
||||
log.info("sendTodo当前处理的文件数据(josnSend):" + jsonSend.toString());
|
||||
log.info("sendTodo当前处理的文件数据(notifyTodoSendContext):" + notifyTodoSendContext.toString());
|
||||
notifyTodoAppResult.setSIGN("1");
|
||||
notifyTodoAppResult.setMASSAGE(result);
|
||||
} else {
|
||||
log.info("okHttp请求发送待办接口成功结果:" + result);
|
||||
notifyTodoAppResult = (NotifyTodoAppResult) net.sf.json.JSONObject.toBean(net.sf.json.JSONObject.fromObject(result), NotifyTodoAppResult.class);
|
||||
}
|
||||
return notifyTodoAppResult;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+78
@@ -0,0 +1,78 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.ApprovalFlagEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess10After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
String approvalFlag = jsonForm.getString("approvalFlag");
|
||||
if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.PASS.getValue())) {
|
||||
// 责任部门 子流程总数
|
||||
int zrSubProcessCount = (int) delegateTask.getVariable("zrSubProcessCount");
|
||||
// 责任部门 子流程完成总数
|
||||
int zrSubProcessFinishCount = (int) delegateTask.getVariable("zrSubProcessFinishCount");
|
||||
zrSubProcessFinishCount = zrSubProcessFinishCount + 1;
|
||||
delegateTask.setVariable("zrSubProcessFinishCount",zrSubProcessFinishCount);
|
||||
|
||||
// 如果该流程中的 责任部门子流程都已完成,给管理员节点分配数据。
|
||||
if (zrSubProcessCount == zrSubProcessFinishCount) {
|
||||
String glyUserId = jsonForm.getString("glyUserId");
|
||||
delegateTask.setVariable("glyUserId",glyUserId);
|
||||
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(glyUserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
} else if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.OVERRULE.getValue())) {
|
||||
String djrUserId = (String) delegateTask.getVariable("djrUserId");
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(djrUserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("approvalFlag",approvalFlag);
|
||||
}
|
||||
}
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess10Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCHGXXMSCLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCHGXXMSCLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+86
@@ -0,0 +1,86 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.ApprovalFlagEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess11After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
String approvalFlag = jsonForm.getString("approvalFlag");
|
||||
if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.PASS.getValue())) {
|
||||
String shr2UserIds = jsonForm.getString("shr2UserIds");
|
||||
List<String> nextUserList = Arrays.asList(shr2UserIds.split(","));
|
||||
if (CollectionUtils.isNotEmpty(nextUserList)) {
|
||||
List<BusProcessNew> addBusProcessNewList = new ArrayList<>();
|
||||
for (String nextUser : nextUserList) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(nextUser);
|
||||
addBusProcessNewList.add(busProcessNewNext);
|
||||
}
|
||||
busBean.saveBatch(addBusProcessNewList);
|
||||
|
||||
// 配置多实例
|
||||
delegateTask.setVariable("shr2UserIdList", nextUserList);
|
||||
delegateTask.setVariable("shr2UserCount", nextUserList.size());
|
||||
delegateTask.setVariable("shr2UserPassCount", 0);
|
||||
delegateTask.setVariable("shr2UserOverruleCount", 0);
|
||||
}
|
||||
} else if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.OVERRULE.getValue())) {
|
||||
String pzr1UserId = jsonForm.getString("pzr1UserId");
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(pzr1UserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
|
||||
delegateTask.setVariable("pzr1UserId", pzr1UserId);
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("approvalFlag", approvalFlag);
|
||||
}
|
||||
}
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess11Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCHGXXMSCLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCHGXXMSCLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+108
@@ -0,0 +1,108 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_activiti.service.TaskTodoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IPolicySolicitOpinionEOService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.ApprovalFlagEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess12After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
TaskTodoService taskTodoService = SpringContextUtil.getBean(TaskTodoService.class);
|
||||
IPolicySolicitOpinionEOService policySolicitOpinionEOService = SpringContextUtil.getBean(IPolicySolicitOpinionEOService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
String approvalFlag = jsonForm.getString("approvalFlag");
|
||||
if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.PASS.getValue())) {
|
||||
int shr2UserPassCount = (int) delegateTask.getVariable("shr2UserPassCount");
|
||||
delegateTask.setVariable("shr2UserPassCount", shr2UserPassCount + 1);
|
||||
|
||||
String sdr2UserIds = jsonForm.getString("sdr2UserIds");
|
||||
List<String> nextUserList = Arrays.asList(sdr2UserIds.split(","));
|
||||
delegateTask.setVariable("sdr2UserIdList", nextUserList);
|
||||
|
||||
boolean existTaskFlag = taskTodoService.whetherExistTaskByTaskDefinitionKey(
|
||||
delegateTask.getProcessInstanceId(),
|
||||
delegateTask.getTaskDefinitionKey(),
|
||||
delegateTask.getId()
|
||||
);
|
||||
if (!existTaskFlag) {
|
||||
if (CollectionUtils.isNotEmpty(nextUserList)) {
|
||||
List<BusProcessNew> addBusProcessNewList = new ArrayList<>();
|
||||
for (String nextUser : nextUserList) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(nextUser);
|
||||
addBusProcessNewList.add(busProcessNewNext);
|
||||
}
|
||||
busBean.saveBatch(addBusProcessNewList);
|
||||
|
||||
// 配置多实例
|
||||
delegateTask.setVariable("sdr2UserCount", nextUserList.size());
|
||||
delegateTask.setVariable("sdr2UserPassCount", 0);
|
||||
delegateTask.setVariable("sdr2UserOverruleCount", 0);
|
||||
}
|
||||
}
|
||||
} else if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.OVERRULE.getValue())) {
|
||||
String pzr1UserId = jsonForm.getString("pzr1UserId");
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(pzr1UserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
|
||||
delegateTask.setVariable("pzr1UserId", pzr1UserId);
|
||||
delegateTask.setVariable("shr2UserOverruleCount", 1);
|
||||
}
|
||||
|
||||
// 保存责任人填写的征求意见信息
|
||||
// object.put("currentUserId",delegateTask.getAssignee());
|
||||
// object.put("prcId",delegateTask.getProcessInstanceId());
|
||||
// policySolicitOpinionEOService.batchInsert(object);
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("approvalFlag", approvalFlag);
|
||||
}
|
||||
}
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess12Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCHGXXMSCLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCHGXXMSCLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+87
@@ -0,0 +1,87 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_activiti.service.TaskTodoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.ApprovalFlagEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess13After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
TaskTodoService taskTodoService = SpringContextUtil.getBean(TaskTodoService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
String approvalFlag = jsonForm.getString("approvalFlag");
|
||||
if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.PASS.getValue())) {
|
||||
int sdr2UserPassCount = (int) delegateTask.getVariable("sdr2UserPassCount");
|
||||
delegateTask.setVariable("sdr2UserPassCount", sdr2UserPassCount + 1);
|
||||
boolean existTaskFlag = taskTodoService.whetherExistTaskByTaskDefinitionKey(
|
||||
delegateTask.getProcessInstanceId(),
|
||||
delegateTask.getTaskDefinitionKey(),
|
||||
delegateTask.getId()
|
||||
);
|
||||
if (!existTaskFlag) {
|
||||
String pzr2UserId = jsonForm.getString("pzr2UserId");
|
||||
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(pzr2UserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
delegateTask.setVariable("pzr2UserId", pzr2UserId);
|
||||
}
|
||||
} else if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.OVERRULE.getValue())) {
|
||||
String pzr1UserId = jsonForm.getString("pzr1UserId");
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(pzr1UserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
|
||||
delegateTask.setVariable("pzr1UserId", pzr1UserId);
|
||||
delegateTask.setVariable("sdr2UserOverruleCount", 1);
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("approvalFlag", approvalFlag);
|
||||
}
|
||||
}
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess13Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCHGXXMSCLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCHGXXMSCLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+85
@@ -0,0 +1,85 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_activiti.service.TaskTodoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.ApprovalFlagEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess14After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
TaskTodoService taskTodoService = SpringContextUtil.getBean(TaskTodoService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
String approvalFlag = jsonForm.getString("approvalFlag");
|
||||
if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.PASS.getValue())) {
|
||||
String csrUserIds = jsonForm.getString("csrUserIds");
|
||||
List<String> nextUserList = Arrays.asList(csrUserIds.split(","));
|
||||
if (CollectionUtils.isNotEmpty(nextUserList)) {
|
||||
List<BusProcessNew> addBusProcessNewList = new ArrayList<>();
|
||||
for (String nextUser : nextUserList) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(nextUser);
|
||||
addBusProcessNewList.add(busProcessNewNext);
|
||||
}
|
||||
busBean.saveBatch(addBusProcessNewList);
|
||||
|
||||
// 配置多实例
|
||||
delegateTask.setVariable("csrUserIdList", nextUserList);
|
||||
}
|
||||
} else if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.OVERRULE.getValue())) {
|
||||
String pzr1UserId = jsonForm.getString("pzr1UserId");
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(pzr1UserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
|
||||
delegateTask.setVariable("pzr1UserId", pzr1UserId);
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("approvalFlag",approvalFlag);
|
||||
}
|
||||
}
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess14Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCHGXXMSCLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCHGXXMSCLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+95
@@ -0,0 +1,95 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_activiti.service.TaskTodoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Arrays;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess15After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
TaskTodoService taskTodoService = SpringContextUtil.getBean(TaskTodoService.class);
|
||||
IBusProcessNameService busProcessNameService = SpringContextUtil.getBean(IBusProcessNameService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
|
||||
// TODO 等需求确认,提交后需要做什么操作。
|
||||
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
String csr2UserIds = jsonForm.getString("csr2UserIds");
|
||||
if (StringUtils.isNotEmpty(csr2UserIds)) {
|
||||
List<String> csr2UserIdList = Arrays.asList(csr2UserIds.split(","));
|
||||
for (String csr2UserId : csr2UserIdList) {
|
||||
// 发送 oa 待阅
|
||||
BusProcessNew sendToBeReadBpn = new BusProcessNew();
|
||||
sendToBeReadBpn.setId(UUID.randomUUID().toString().substring(0, 20));
|
||||
sendToBeReadBpn.setTaskId(delegateTask.getId());
|
||||
sendToBeReadBpn.setTaskInfo(delegateTask.getName());
|
||||
sendToBeReadBpn.setLink(
|
||||
FlowTypeEnum.ZCHGXXMSCLC.getRoute() + "?prcType=" +
|
||||
FlowTypeEnum.ZCHGXXMSCLC.getValue() +
|
||||
"&taskDefinitionKey=PolicyComplianceProgramReviewProcessKey11" +
|
||||
"&operate=view"
|
||||
);
|
||||
sendToBeReadBpn.setTaskInfo(delegateTask.getName());
|
||||
sendToBeReadBpn.setUserId(csr2UserId);
|
||||
sendToBeReadBpn.setPrcName("重点认证标准/政策合规性项目审查流程");
|
||||
sendToBeReadBpn.setPId(delegateTask.getProcessInstanceId());
|
||||
|
||||
oaService.sendToBeReadMq(sendToBeReadBpn);
|
||||
}
|
||||
}
|
||||
|
||||
boolean existTaskFlag = taskTodoService.whetherExistTaskByTaskDefinitionKey(
|
||||
delegateTask.getProcessInstanceId(),
|
||||
delegateTask.getTaskDefinitionKey(),
|
||||
delegateTask.getId()
|
||||
);
|
||||
if (!existTaskFlag) {
|
||||
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
|
||||
QueryWrapper bpnQueryWrap = new QueryWrapper();
|
||||
bpnQueryWrap.eq("PRC_ID", delegateTask.getProcessInstanceId());
|
||||
BusProcessName bpn = busProcessNameService.getOne(bpnQueryWrap);
|
||||
if (bpn != null) {
|
||||
bpn.setOverTime(OVERTIME);
|
||||
busProcessNameService.saveOrUpdate(bpn);
|
||||
}
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
}
|
||||
}
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess15Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCHGXXMSCLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCHGXXMSCLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+97
@@ -0,0 +1,97 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess1After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
IBusProcessNameService busProcessNameService = SpringContextUtil.getBean(IBusProcessNameService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
delegateTask.setVariable("objectJson", object);
|
||||
|
||||
// 审核人1用户ids
|
||||
String shr1UserIds = jsonForm.getString("shr1UserIds");
|
||||
List<String> nextUserList = Arrays.asList(shr1UserIds.split(","));
|
||||
|
||||
//截止时间 流程描述 创建人
|
||||
String user = object.getString("prcCreateUser");
|
||||
String username = object.getString("prcCreateUserName");
|
||||
|
||||
String prcName = "重点认证标准/政策合规性项目审查流程";
|
||||
QueryWrapper bpnQueryWrap = new QueryWrapper();
|
||||
bpnQueryWrap.eq("PRC_ID", delegateTask.getProcessInstanceId());
|
||||
BusProcessName bpn = busProcessNameService.getOne(bpnQueryWrap);
|
||||
if (bpn != null) {
|
||||
bpn.setPrcType(FlowTypeEnum.ZCHGXXMSCLC.getValue());
|
||||
bpn.setPrcName(prcName);
|
||||
bpn.setCreatUser(user);
|
||||
bpn.setCreatUserName(username);
|
||||
|
||||
Date approvalUnitDeadline = jsonForm.getDate("approvalUnitDeadline");
|
||||
bpn.setResponsibleUnitDeadlineDate(approvalUnitDeadline);
|
||||
busProcessNameService.saveOrUpdate(bpn);
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
if (CollectionUtils.isNotEmpty(nextUserList)) {
|
||||
List<BusProcessNew> addBusProcessNewList = new ArrayList<>();
|
||||
for (String nextUser : nextUserList) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(nextUser);
|
||||
addBusProcessNewList.add(busProcessNewNext);
|
||||
}
|
||||
busBean.saveBatch(addBusProcessNewList);
|
||||
|
||||
// 配置多实例
|
||||
delegateTask.setVariable("shr1UserIdList", nextUserList);
|
||||
delegateTask.setVariable("shr1UserCount", nextUserList.size());
|
||||
delegateTask.setVariable("shr1UserPassCount", 0);
|
||||
delegateTask.setVariable("shr1UserOverruleCount", 0);
|
||||
}
|
||||
|
||||
delegateTask.setVariable("fqrUserId", delegateTask.getAssignee());
|
||||
}
|
||||
}
|
||||
+35
@@ -0,0 +1,35 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess1Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper queryWrapper1 = new QueryWrapper();
|
||||
queryWrapper1.isNull("TASK_ID");
|
||||
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper1);
|
||||
if(!list.isEmpty()){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCHGXXMSCLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCHGXXMSCLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+97
@@ -0,0 +1,97 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_activiti.service.TaskTodoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.ApprovalFlagEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess2After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
TaskTodoService taskTodoService = SpringContextUtil.getBean(TaskTodoService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
|
||||
String approvalFlag = jsonForm.getString("approvalFlag");
|
||||
if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.PASS.getValue())) {
|
||||
int shr1UserPassCount = (int) delegateTask.getVariable("shr1UserPassCount");
|
||||
delegateTask.setVariable("shr1UserPassCount", shr1UserPassCount + 1);
|
||||
|
||||
boolean existTaskFlag = taskTodoService.whetherExistTaskByTaskDefinitionKey(
|
||||
delegateTask.getProcessInstanceId(),
|
||||
delegateTask.getTaskDefinitionKey(),
|
||||
delegateTask.getId()
|
||||
);
|
||||
if (!existTaskFlag) {
|
||||
// 审定人1用户ids
|
||||
String sdr1UserIds = jsonForm.getString("sdr1UserIds");
|
||||
List<String> nextUserList = Arrays.asList(sdr1UserIds.split(","));
|
||||
if (CollectionUtils.isNotEmpty(nextUserList)) {
|
||||
List<BusProcessNew> addBusProcessNewList = new ArrayList<>();
|
||||
for (String nextUser : nextUserList) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(nextUser);
|
||||
addBusProcessNewList.add(busProcessNewNext);
|
||||
}
|
||||
busBean.saveBatch(addBusProcessNewList);
|
||||
|
||||
// 配置多实例
|
||||
delegateTask.setVariable("sdr1UserIdList", nextUserList);
|
||||
delegateTask.setVariable("sdr1UserCount",nextUserList.size());
|
||||
delegateTask.setVariable("sdr1UserPassCount",0);
|
||||
delegateTask.setVariable("sdr1UserOverruleCount",0);
|
||||
}
|
||||
}
|
||||
} else if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.OVERRULE.getValue())) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNewNext);
|
||||
|
||||
delegateTask.setVariable("shr1UserOverruleCount", 1);
|
||||
}
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("approvalFlag",approvalFlag);
|
||||
}
|
||||
}
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess2Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCHGXXMSCLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCHGXXMSCLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+81
@@ -0,0 +1,81 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_activiti.service.TaskTodoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.ApprovalFlagEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess4After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
TaskTodoService taskTodoService = SpringContextUtil.getBean(TaskTodoService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
String approvalFlag = jsonForm.getString("approvalFlag");
|
||||
if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.PASS.getValue())) {
|
||||
int sdr1UserPassCount = (int) delegateTask.getVariable("sdr1UserPassCount");
|
||||
delegateTask.setVariable("sdr1UserPassCount", sdr1UserPassCount + 1);
|
||||
|
||||
boolean existTaskFlag = taskTodoService.whetherExistTaskByTaskDefinitionKey(
|
||||
delegateTask.getProcessInstanceId(),
|
||||
delegateTask.getTaskDefinitionKey(),
|
||||
delegateTask.getId()
|
||||
);
|
||||
if (!existTaskFlag) {
|
||||
String pzr1UserId = jsonForm.getString("pzr1UserId");
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(pzr1UserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
|
||||
delegateTask.setVariable("pzr1UserId",pzr1UserId);
|
||||
}
|
||||
} else if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.OVERRULE.getValue())) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNewNext);
|
||||
|
||||
delegateTask.setVariable("sdr1UserOverruleCount", 1);
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("approvalFlag",approvalFlag);
|
||||
}
|
||||
}
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess4Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCHGXXMSCLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCHGXXMSCLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+107
@@ -0,0 +1,107 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.ApprovalFlagEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess5After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
String approvalFlag = jsonForm.getString("approvalFlag");
|
||||
if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.PASS.getValue())) {
|
||||
Date approvalUnitDeadline = jsonForm.getDate("approvalUnitDeadline");
|
||||
String endFlag = "";
|
||||
// 如果当前日期大于审批单位截止日期,则不走责任对接人子流程
|
||||
if (new Date().after(approvalUnitDeadline)) {
|
||||
endFlag = "0";
|
||||
// 管理员用户id
|
||||
String glyUserId = jsonForm.getString("glyUserId");
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(glyUserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
|
||||
delegateTask.setVariable("glyUserId",glyUserId);
|
||||
} else {
|
||||
endFlag = "1";
|
||||
|
||||
// 责任对接人用户id
|
||||
String djrUserIds = jsonForm.getString("djrUserIds");
|
||||
List<String> nextUserList = Arrays.asList(djrUserIds.split(","));
|
||||
if (CollectionUtils.isNotEmpty(nextUserList)) {
|
||||
List<BusProcessNew> addBusProcessNewList = new ArrayList<>();
|
||||
for (String nextUser : nextUserList) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(nextUser);
|
||||
addBusProcessNewList.add(busProcessNewNext);
|
||||
}
|
||||
busBean.saveBatch(addBusProcessNewList);
|
||||
|
||||
// 配置多实例
|
||||
delegateTask.setVariable("djrUserIdList", nextUserList);
|
||||
|
||||
delegateTask.setVariable("zrSubProcessCount",nextUserList.size());
|
||||
delegateTask.setVariable("zrSubProcessFinishCount",0);
|
||||
}
|
||||
}
|
||||
delegateTask.setVariable("endFlag",endFlag);
|
||||
} else if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.OVERRULE.getValue())) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("approvalFlag",approvalFlag);
|
||||
}
|
||||
}
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess5Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCHGXXMSCLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCHGXXMSCLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+137
@@ -0,0 +1,137 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.FlowUserRelInfo;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.ZchgxxmscSybDataEO;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IFlowUserRelInfoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IZchgxxmscSybDataEOService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess7After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
IFlowUserRelInfoService flowUserRelInfoService = SpringContextUtil.getBean(IFlowUserRelInfoService.class);
|
||||
IZchgxxmscSybDataEOService zchgxxmscSybDataEOService = SpringContextUtil.getBean(IZchgxxmscSybDataEOService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
// 提交方式,如果该字段不为空,则是定时器自动提交 定时器自动提交value:timerAutoSubmit
|
||||
String submitMethod = object.getString("submitMethod");
|
||||
if (StringUtils.isEmpty(submitMethod)) {
|
||||
String zrrUserIds = jsonForm.getString("zrrUserIds");
|
||||
if (StringUtils.isNotEmpty(zrrUserIds)) {
|
||||
List<String> nextUserList = Arrays.asList(zrrUserIds.split(","));
|
||||
if (CollectionUtils.isNotEmpty(nextUserList)) {
|
||||
// departmentType字段: value: undertaking 事业部 productPlanning 产品规划部
|
||||
String departmentType = jsonForm.getString("departmentType");
|
||||
if (StringUtils.equals(departmentType,"undertaking")) {
|
||||
JSONArray sybDataList = jsonForm.getJSONArray("infoTableDatas");
|
||||
|
||||
List<ZchgxxmscSybDataEO> zchgxxmscSybDataEOList = new ArrayList<>();
|
||||
for (String nextUser : nextUserList) {
|
||||
ZchgxxmscSybDataEO zchgxxmscSybDataEO = null;
|
||||
for (Object sybData : sybDataList) {
|
||||
zchgxxmscSybDataEO = JSONObject.parseObject(JSONObject.toJSONString(sybData),ZchgxxmscSybDataEO.class);
|
||||
zchgxxmscSybDataEO.setId(UUID.randomUUID().toString());
|
||||
zchgxxmscSybDataEO.setZrrUserId(nextUser);
|
||||
zchgxxmscSybDataEO.setPrcId(delegateTask.getProcessInstanceId());
|
||||
zchgxxmscSybDataEO.setCreateTime(new Date());
|
||||
zchgxxmscSybDataEOList.add(zchgxxmscSybDataEO);
|
||||
}
|
||||
}
|
||||
|
||||
zchgxxmscSybDataEOService.batchInsert(zchgxxmscSybDataEOList);
|
||||
}
|
||||
|
||||
List<FlowUserRelInfo> flowUserRelInfoList = new ArrayList<>();
|
||||
|
||||
List<BusProcessNew> addBusProcessNewList = new ArrayList<>();
|
||||
for (String nextUser : nextUserList) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(nextUser);
|
||||
addBusProcessNewList.add(busProcessNewNext);
|
||||
|
||||
FlowUserRelInfo flowUserRelInfo = new FlowUserRelInfo();
|
||||
flowUserRelInfo.setParentUserId(delegateTask.getAssignee());
|
||||
flowUserRelInfo.setUserId(nextUser);
|
||||
flowUserRelInfo.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
flowUserRelInfo.setFlowType(FlowTypeEnum.ZCHGXXMSCLC.getValue());
|
||||
flowUserRelInfo.setDataType("zrdjrfpzrr"); // 责任对接人分配责任人
|
||||
flowUserRelInfoList.add(flowUserRelInfo);
|
||||
}
|
||||
busBean.saveBatch(addBusProcessNewList);
|
||||
|
||||
// 配置多实例
|
||||
delegateTask.setVariable("zrrUserIdList", nextUserList);
|
||||
|
||||
flowUserRelInfoService.saveBatchFlowUserRelInfo(flowUserRelInfoList);
|
||||
}
|
||||
}
|
||||
|
||||
submitMethod = "pageSubmit";
|
||||
} else {
|
||||
// 责任部门 子流程总数
|
||||
int zrSubProcessCount = (int) delegateTask.getVariable("zrSubProcessCount");
|
||||
int zrSubProcessFinishCount = (int) delegateTask.getVariable("zrSubProcessFinishCount");
|
||||
zrSubProcessFinishCount = zrSubProcessFinishCount + 1;
|
||||
delegateTask.setVariable("zrSubProcessFinishCount", zrSubProcessFinishCount);
|
||||
|
||||
// 如果该流程中的 责任部门子流程都已完成,给管理员节点分配数据。
|
||||
if (zrSubProcessCount == zrSubProcessFinishCount) {
|
||||
String glyUserId = jsonForm.getString("glyUserId");
|
||||
delegateTask.setVariable("glyUserId", glyUserId);
|
||||
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(glyUserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
|
||||
submitMethod = "timerAutoSubmit";
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("submitMethod",submitMethod);
|
||||
}
|
||||
}
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess7Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCHGXXMSCLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCHGXXMSCLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+108
@@ -0,0 +1,108 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_activiti.service.TaskTodoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.ZchgxxmscSybDataEO;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.*;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess8After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
IZchgxxmscSybDataEOService zchgxxmscSybDataEOService = SpringContextUtil.getBean(IZchgxxmscSybDataEOService.class);
|
||||
IZchgxxmscCpghbDataEOService zchgxxmscCpghbDataEOService = SpringContextUtil.getBean(IZchgxxmscCpghbDataEOService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
// 提交方式,如果该字段不为空,则是定时器自动提交 定时器自动提交value:timerAutoSubmit
|
||||
String submitMethod = object.getString("submitMethod");
|
||||
if (StringUtils.isEmpty(submitMethod)) {
|
||||
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId((String) delegateTask.getVariable("djrUserId"));
|
||||
busBean.save(busProcessNewNext);
|
||||
|
||||
// 保存责任人填写的数据信息
|
||||
// departmentType字段: value: undertaking 事业部 productPlanning 产品规划部
|
||||
String departmentType = jsonForm.getString("departmentType");
|
||||
if (StringUtils.equals(departmentType,"undertaking") && jsonForm.containsKey("sybDataList")) {
|
||||
JSONArray sybDataListArr = jsonForm.getJSONArray("sybDataList");
|
||||
List<ZchgxxmscSybDataEO> zchgxxmscSybDataEOList = new ArrayList<>();
|
||||
ZchgxxmscSybDataEO zchgxxmscSybDataEO = null;
|
||||
for (Object sybData : sybDataListArr) {
|
||||
zchgxxmscSybDataEO = JSONObject.parseObject(JSONObject.toJSONString(sybData),ZchgxxmscSybDataEO.class);
|
||||
zchgxxmscSybDataEO.setModifyTime(new Date());
|
||||
zchgxxmscSybDataEOList.add(zchgxxmscSybDataEO);
|
||||
}
|
||||
zchgxxmscSybDataEOService.updateBatchById(zchgxxmscSybDataEOList);
|
||||
} else if (StringUtils.equals(departmentType,"productPlanning")) {
|
||||
// 保存产品规划部的责任人填写的信息
|
||||
object.put("currentUserId",delegateTask.getAssignee());
|
||||
object.put("prcId",delegateTask.getProcessInstanceId());
|
||||
zchgxxmscCpghbDataEOService.batchInsert(object);
|
||||
}
|
||||
|
||||
submitMethod = "pageSubmit";
|
||||
} else {
|
||||
// 责任部门 子流程总数
|
||||
int zrSubProcessCount = (int) delegateTask.getVariable("zrSubProcessCount");
|
||||
int zrSubProcessFinishCount = (int) delegateTask.getVariable("zrSubProcessFinishCount");
|
||||
zrSubProcessFinishCount = zrSubProcessFinishCount + 1;
|
||||
delegateTask.setVariable("zrSubProcessFinishCount", zrSubProcessFinishCount);
|
||||
|
||||
// 如果该流程中的 责任部门子流程都已完成,给管理员节点分配数据。
|
||||
if (zrSubProcessCount == zrSubProcessFinishCount) {
|
||||
String glyUserId = jsonForm.getString("glyUserId");
|
||||
delegateTask.setVariable("glyUserId", glyUserId);
|
||||
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(glyUserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
submitMethod = "timerAutoSubmit";
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("submitMethod",submitMethod);
|
||||
}
|
||||
}
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess8Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCHGXXMSCLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCHGXXMSCLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+140
@@ -0,0 +1,140 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.FlowUserRelInfo;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.ZchgxxmscSybDataEO;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.*;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.ApprovalFlagEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess9After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
IFlowUserRelInfoService flowUserRelInfoService = SpringContextUtil.getBean(IFlowUserRelInfoService.class);
|
||||
IZchgxxmscSybDataEOService zchgxxmscSybDataEOService = SpringContextUtil.getBean(IZchgxxmscSybDataEOService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
String approvalFlag = jsonForm.getString("approvalFlag");
|
||||
|
||||
// 提交方式,如果该字段不为空,则是定时器自动提交 定时器自动提交value:timerAutoSubmit
|
||||
String submitMethod = object.getString("submitMethod");
|
||||
if (StringUtils.isEmpty(submitMethod)) {
|
||||
if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.PASS.getValue())) {
|
||||
String zrdwUserId = jsonForm.getString("zrdwUserId");
|
||||
delegateTask.setVariable("zrdwUserId", zrdwUserId);
|
||||
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(zrdwUserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
|
||||
List<FlowUserRelInfo> flowUserRelInfoList = new ArrayList<>();
|
||||
FlowUserRelInfo flowUserRelInfo = new FlowUserRelInfo();
|
||||
flowUserRelInfo.setParentUserId(delegateTask.getAssignee());
|
||||
flowUserRelInfo.setUserId(zrdwUserId);
|
||||
flowUserRelInfo.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
flowUserRelInfo.setFlowType(FlowTypeEnum.ZCHGXXMSCLC.getValue());
|
||||
flowUserRelInfo.setDataType("zrdjrfpzrdw"); // 责任对接人分配责任单位审批
|
||||
flowUserRelInfoList.add(flowUserRelInfo);
|
||||
flowUserRelInfoService.saveBatchFlowUserRelInfo(flowUserRelInfoList);
|
||||
|
||||
jsonForm.put("zrdwUserId","");
|
||||
submitMethod = "pageSubmit";
|
||||
} else if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.OVERRULE.getValue())) {
|
||||
List<String> zrrUserIdList = (List<String>) delegateTask.getVariable("zrrUserIdList");
|
||||
List<BusProcessNew> addBusProcessNewList = new ArrayList<>();
|
||||
for (String nextUser : zrrUserIdList) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(nextUser);
|
||||
addBusProcessNewList.add(busProcessNewNext);
|
||||
}
|
||||
busBean.saveBatch(addBusProcessNewList);
|
||||
}
|
||||
} else {
|
||||
// 责任部门 子流程总数
|
||||
int zrSubProcessCount = (int) delegateTask.getVariable("zrSubProcessCount");
|
||||
int zrSubProcessFinishCount = (int) delegateTask.getVariable("zrSubProcessFinishCount");
|
||||
zrSubProcessFinishCount = zrSubProcessFinishCount + 1;
|
||||
delegateTask.setVariable("zrSubProcessFinishCount", zrSubProcessFinishCount);
|
||||
|
||||
// 如果该流程中的 责任部门子流程都已完成,给管理员节点分配数据。
|
||||
if (zrSubProcessCount == zrSubProcessFinishCount) {
|
||||
String glyUserId = jsonForm.getString("glyUserId");
|
||||
delegateTask.setVariable("glyUserId", glyUserId);
|
||||
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(glyUserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
submitMethod = "timerAutoSubmit";
|
||||
}
|
||||
|
||||
// 保存责任人对接人修改的数据信息
|
||||
// departmentType字段: value: undertaking 事业部 productPlanning 产品规划部
|
||||
String departmentType = jsonForm.getString("departmentType");
|
||||
if (StringUtils.equals(departmentType,"undertaking") && jsonForm.containsKey("sybDataList")) {
|
||||
JSONArray sybDataListArr = jsonForm.getJSONArray("sybDataList");
|
||||
List<ZchgxxmscSybDataEO> zchgxxmscSybDataEOList = new ArrayList<>();
|
||||
ZchgxxmscSybDataEO zchgxxmscSybDataEO = null;
|
||||
for (Object sybData : sybDataListArr) {
|
||||
zchgxxmscSybDataEO = JSONObject.parseObject(JSONObject.toJSONString(sybData),ZchgxxmscSybDataEO.class);
|
||||
zchgxxmscSybDataEO.setModifyTime(new Date());
|
||||
zchgxxmscSybDataEOList.add(zchgxxmscSybDataEO);
|
||||
}
|
||||
zchgxxmscSybDataEOService.updateBatchById(zchgxxmscSybDataEOList);
|
||||
} else if (StringUtils.equals(departmentType,"productPlanning")) {
|
||||
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("approvalFlag", approvalFlag);
|
||||
delegateTask.setVariable("submitMethod", submitMethod);
|
||||
}
|
||||
}
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicyComplianceProgramReviewProcess9Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCHGXXMSCLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCHGXXMSCLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+143
@@ -0,0 +1,143 @@
|
||||
package com.ydw.bat.wkflow.listener.policyComplianceProgramReviewProcess.timer;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_wkflow.form.dto.FormSubmitDto;
|
||||
import com.ydw.bat.wkflow.business_wkflow.form.service.FormValsService;
|
||||
import com.ydw.bat.wkflow.util.enums.ApprovalFlagEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.activiti.engine.TaskService;
|
||||
import org.activiti.engine.task.Task;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.scheduling.annotation.EnableScheduling;
|
||||
import org.springframework.scheduling.annotation.Scheduled;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @Description: 重点认证标准/政策合规性项目审查流程定时器
|
||||
* @author: wangzhijiang
|
||||
* @date: 2023-10-26
|
||||
*/
|
||||
@Component
|
||||
@EnableScheduling
|
||||
@Slf4j
|
||||
public class PolicyComplianceProgramReviewProcessTimer {
|
||||
|
||||
@Autowired
|
||||
private IBusProcessNameService busProcessNameService;
|
||||
@Autowired
|
||||
private TaskService taskService;
|
||||
@Autowired
|
||||
private IBusProcessNewService busProcessNewService;
|
||||
@Autowired
|
||||
private FormValsService formValsService;
|
||||
|
||||
/**
|
||||
* @Description: 自动提交待办任务
|
||||
* @author: wangzhijiang
|
||||
* @date: 2023-10-23
|
||||
* @Param:
|
||||
* @return:
|
||||
*/
|
||||
@Scheduled(cron = "10 0 0 * * ? ")//每天凌晨12点10分执行
|
||||
public void autoSubmitZrbmTask() {
|
||||
QueryWrapper<BusProcessName> bpnQueryWrap = new QueryWrapper<>();
|
||||
bpnQueryWrap.lambda().eq(BusProcessName::getPrcType, FlowTypeEnum.ZCHGXXMSCLC.getValue());
|
||||
bpnQueryWrap.lambda().lt(BusProcessName::getResponsibleUnitDeadlineDate, new Date());
|
||||
List<BusProcessName> busProcessNameList = this.busProcessNameService.list(bpnQueryWrap);
|
||||
|
||||
if (CollectionUtils.isNotEmpty(busProcessNameList)) {
|
||||
List<String> actiProcInstIdList = busProcessNameList.stream().map(BusProcessName::getPrcId).distinct().collect(Collectors.toList());
|
||||
this.recursionComplteZrbmTask(actiProcInstIdList);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 递归提交待办任务
|
||||
*
|
||||
* @param actiProcInstIdList
|
||||
*/
|
||||
public void recursionComplteZrbmTask(List<String> actiProcInstIdList) {
|
||||
for (String actiProcInstId : actiProcInstIdList) {
|
||||
List<Task> taskList = this.taskService.createTaskQuery().processInstanceId(actiProcInstId).list().stream().filter(task -> {
|
||||
boolean flag = false;
|
||||
if (StringUtils.equals(task.getTaskDefinitionKey(), "PolicyComplianceProgramReviewProcessKey7")
|
||||
|| StringUtils.equals(task.getTaskDefinitionKey(), "PolicyComplianceProgramReviewProcessKey8")
|
||||
|| StringUtils.equals(task.getTaskDefinitionKey(), "PolicyComplianceProgramReviewProcessKey9")
|
||||
|| StringUtils.equals(task.getTaskDefinitionKey(), "PolicyComplianceProgramReviewProcessKey10")) {
|
||||
flag = true;
|
||||
}
|
||||
return flag;
|
||||
}).distinct().collect(Collectors.toList());
|
||||
if (CollectionUtils.isNotEmpty(taskList)) {
|
||||
for (Task task : taskList) {
|
||||
JSONObject formJson = new JSONObject();
|
||||
|
||||
QueryWrapper<BusProcessNew> newQueryWrapper = new QueryWrapper<>();
|
||||
newQueryWrapper.lambda().eq(BusProcessNew::getTaskId, task.getId());
|
||||
BusProcessNew busProcessNew = this.busProcessNewService.getOne(newQueryWrapper);
|
||||
if (ObjectUtils.isNotEmpty(busProcessNew)) {
|
||||
formJson = JSONObject.parseObject(busProcessNew.getMesg());
|
||||
JSONObject jsonForm = formJson.getJSONObject("form");
|
||||
jsonForm.put("approvalFlag",ApprovalFlagEnum.PASS.getValue());
|
||||
jsonForm.put("internalReviewFlag", "1");
|
||||
formJson.put("commentText","");
|
||||
}
|
||||
formJson.put("submitMethod", "timerAutoSubmit");
|
||||
formJson.put("approvalFlag", ApprovalFlagEnum.PASS.getValue());
|
||||
formJson.put("internalReviewFlag", "1");
|
||||
|
||||
FormSubmitDto formSubmitDto = new FormSubmitDto();
|
||||
formSubmitDto.setForm(formJson.toString());
|
||||
formSubmitDto.setTask_id(task.getId());
|
||||
this.formValsService.saveFormVals(formSubmitDto, task.getTaskDefinitionKey());
|
||||
|
||||
this.taskService.complete(task.getId());
|
||||
}
|
||||
}
|
||||
}
|
||||
List<String> actiProcInstIds = this.queryZrbmTaskByActiProcInstId(actiProcInstIdList);
|
||||
if (CollectionUtils.isNotEmpty(actiProcInstIds)) {
|
||||
this.recursionComplteZrbmTask(actiProcInstIds);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据流程实例id,查询还有待办任务的流程。
|
||||
*
|
||||
* @param actiProcInstIdList
|
||||
* @return
|
||||
*/
|
||||
public List<String> queryZrbmTaskByActiProcInstId(List<String> actiProcInstIdList) {
|
||||
List<String> result = new ArrayList<>();
|
||||
for (String actiProcInstId : actiProcInstIdList) {
|
||||
List<Task> taskList = this.taskService.createTaskQuery().processInstanceId(actiProcInstId).list().stream().filter(task -> {
|
||||
boolean flag = false;
|
||||
if (StringUtils.equals(task.getTaskDefinitionKey(), "PolicyComplianceProgramReviewProcessKey7")
|
||||
|| StringUtils.equals(task.getTaskDefinitionKey(), "PolicyComplianceProgramReviewProcessKey8")
|
||||
|| StringUtils.equals(task.getTaskDefinitionKey(), "PolicyComplianceProgramReviewProcessKey9")
|
||||
|| StringUtils.equals(task.getTaskDefinitionKey(), "PolicyComplianceProgramReviewProcessKey10")) {
|
||||
flag = true;
|
||||
}
|
||||
return flag;
|
||||
}).distinct().collect(Collectors.toList());
|
||||
if (taskList.size() != 0) {
|
||||
result.add(actiProcInstId);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
+79
@@ -0,0 +1,79 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.ApprovalFlagEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
public class PolicySolicitOpinionProcess10After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
String approvalFlag = jsonForm.getString("approvalFlag");
|
||||
if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.PASS.getValue())) {
|
||||
// 责任部门 子流程总数
|
||||
int zrSubProcessCount = (int) delegateTask.getVariable("zrSubProcessCount");
|
||||
// 责任部门 子流程完成总数
|
||||
int zrSubProcessFinishCount = (int) delegateTask.getVariable("zrSubProcessFinishCount");
|
||||
zrSubProcessFinishCount = zrSubProcessFinishCount + 1;
|
||||
delegateTask.setVariable("zrSubProcessFinishCount",zrSubProcessFinishCount);
|
||||
|
||||
// 如果该流程中的 责任部门子流程都已完成,给管理员节点分配数据。
|
||||
if (zrSubProcessCount == zrSubProcessFinishCount) {
|
||||
String glyUserId = jsonForm.getString("glyUserId");
|
||||
delegateTask.setVariable("glyUserId",glyUserId);
|
||||
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(glyUserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
} else if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.OVERRULE.getValue())) {
|
||||
String djrUserId = (String) delegateTask.getVariable("djrUserId");
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(djrUserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("approvalFlag",approvalFlag);
|
||||
}
|
||||
}
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess10Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCZQYJLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCZQYJLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+87
@@ -0,0 +1,87 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.ApprovalFlagEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess11After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
String approvalFlag = jsonForm.getString("approvalFlag");
|
||||
if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.PASS.getValue())) {
|
||||
String shr2UserIds = jsonForm.getString("shr2UserIds");
|
||||
List<String> nextUserList = Arrays.asList(shr2UserIds.split(","));
|
||||
if (CollectionUtils.isNotEmpty(nextUserList)) {
|
||||
List<BusProcessNew> addBusProcessNewList = new ArrayList<>();
|
||||
for (String nextUser : nextUserList) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(nextUser);
|
||||
addBusProcessNewList.add(busProcessNewNext);
|
||||
}
|
||||
busBean.saveBatch(addBusProcessNewList);
|
||||
|
||||
// 配置多实例
|
||||
delegateTask.setVariable("shr2UserIdList", nextUserList);
|
||||
delegateTask.setVariable("shr2UserCount", nextUserList.size());
|
||||
delegateTask.setVariable("shr2UserPassCount", 0);
|
||||
delegateTask.setVariable("shr2UserOverruleCount", 0);
|
||||
}
|
||||
} else if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.OVERRULE.getValue())) {
|
||||
String pzr1UserId = jsonForm.getString("pzr1UserId");
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(pzr1UserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
|
||||
delegateTask.setVariable("pzr1UserId", pzr1UserId);
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("approvalFlag", approvalFlag);
|
||||
}
|
||||
}
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess11Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCZQYJLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCZQYJLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+119
@@ -0,0 +1,119 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_activiti.service.TaskTodoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IPolicySolicitOpinionEOService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.ApprovalFlagEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class PolicySolicitOpinionProcess12After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
TaskTodoService taskTodoService = SpringContextUtil.getBean(TaskTodoService.class);
|
||||
IPolicySolicitOpinionEOService policySolicitOpinionEOService = SpringContextUtil.getBean(IPolicySolicitOpinionEOService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
String approvalFlag = jsonForm.getString("approvalFlag");
|
||||
if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.PASS.getValue())) {
|
||||
int shr2UserPassCount = (int) delegateTask.getVariable("shr2UserPassCount");
|
||||
delegateTask.setVariable("shr2UserPassCount", shr2UserPassCount + 1);
|
||||
|
||||
List<String> nextUserList = new ArrayList<>();
|
||||
String hqrUserIds = jsonForm.getString("hqrUserIds");
|
||||
if (StringUtils.isNotEmpty(hqrUserIds)) {
|
||||
nextUserList.addAll(Arrays.asList(hqrUserIds.split(",")));
|
||||
}
|
||||
|
||||
List<String> hqrUserIdList = (List<String>) delegateTask.getVariable("hqrUserIdList");
|
||||
if (CollectionUtils.isNotEmpty(hqrUserIdList)) {
|
||||
nextUserList.addAll(hqrUserIdList);
|
||||
}
|
||||
nextUserList = nextUserList.stream().distinct().collect(Collectors.toList());
|
||||
delegateTask.setVariable("hqrUserIdList", nextUserList);
|
||||
|
||||
boolean existTaskFlag = taskTodoService.whetherExistTaskByTaskDefinitionKey(
|
||||
delegateTask.getProcessInstanceId(),
|
||||
delegateTask.getTaskDefinitionKey(),
|
||||
delegateTask.getId()
|
||||
);
|
||||
if (!existTaskFlag) {
|
||||
if (CollectionUtils.isNotEmpty(nextUserList)) {
|
||||
List<BusProcessNew> addBusProcessNewList = new ArrayList<>();
|
||||
for (String nextUser : nextUserList) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(nextUser);
|
||||
addBusProcessNewList.add(busProcessNewNext);
|
||||
}
|
||||
busBean.saveBatch(addBusProcessNewList);
|
||||
|
||||
// 配置多实例
|
||||
delegateTask.setVariable("hqrUserCount", nextUserList.size());
|
||||
delegateTask.setVariable("hqrUserPassCount", 0);
|
||||
delegateTask.setVariable("hqrUserOverruleCount", 0);
|
||||
}
|
||||
}
|
||||
} else if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.OVERRULE.getValue())) {
|
||||
String pzr1UserId = jsonForm.getString("pzr1UserId");
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(pzr1UserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
|
||||
delegateTask.setVariable("pzr1UserId", pzr1UserId);
|
||||
delegateTask.setVariable("hqrUserIdList", new ArrayList<String>());
|
||||
delegateTask.setVariable("shr2UserOverruleCount", 1);
|
||||
}
|
||||
|
||||
// 保存责任人填写的征求意见信息
|
||||
object.put("currentUserId",delegateTask.getAssignee());
|
||||
object.put("prcId",delegateTask.getProcessInstanceId());
|
||||
policySolicitOpinionEOService.batchInsert(object);
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("approvalFlag", approvalFlag);
|
||||
}
|
||||
}
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess12Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCZQYJLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCZQYJLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+99
@@ -0,0 +1,99 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_activiti.service.TaskTodoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.ApprovalFlagEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess13After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
TaskTodoService taskTodoService = SpringContextUtil.getBean(TaskTodoService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
String approvalFlag = jsonForm.getString("approvalFlag");
|
||||
if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.PASS.getValue())) {
|
||||
int hqrUserPassCount = (int) delegateTask.getVariable("hqrUserPassCount");
|
||||
delegateTask.setVariable("hqrUserPassCount", hqrUserPassCount + 1);
|
||||
boolean existTaskFlag = taskTodoService.whetherExistTaskByTaskDefinitionKey(
|
||||
delegateTask.getProcessInstanceId(),
|
||||
delegateTask.getTaskDefinitionKey(),
|
||||
delegateTask.getId()
|
||||
);
|
||||
if (!existTaskFlag) {
|
||||
String sdr2UserIds = jsonForm.getString("sdr2UserIds");
|
||||
List<String> nextUserList = Arrays.asList(sdr2UserIds.split(","));
|
||||
if (CollectionUtils.isNotEmpty(nextUserList)) {
|
||||
List<BusProcessNew> addBusProcessNewList = new ArrayList<>();
|
||||
for (String nextUser : nextUserList) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(nextUser);
|
||||
addBusProcessNewList.add(busProcessNewNext);
|
||||
}
|
||||
busBean.saveBatch(addBusProcessNewList);
|
||||
|
||||
// 配置多实例
|
||||
delegateTask.setVariable("sdr2UserIdList", nextUserList);
|
||||
delegateTask.setVariable("sdr2UserCount", nextUserList.size());
|
||||
delegateTask.setVariable("sdr2UserPassCount", 0);
|
||||
delegateTask.setVariable("sdr2UserOverruleCount", 0);
|
||||
}
|
||||
}
|
||||
} else if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.OVERRULE.getValue())) {
|
||||
String pzr1UserId = jsonForm.getString("pzr1UserId");
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(pzr1UserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
|
||||
delegateTask.setVariable("pzr1UserId", pzr1UserId);
|
||||
delegateTask.setVariable("hqrUserOverruleCount", 1);
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("approvalFlag", approvalFlag);
|
||||
}
|
||||
}
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess13Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCZQYJLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCZQYJLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+83
@@ -0,0 +1,83 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_activiti.service.TaskTodoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.ApprovalFlagEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
public class PolicySolicitOpinionProcess14After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
TaskTodoService taskTodoService = SpringContextUtil.getBean(TaskTodoService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
String approvalFlag = jsonForm.getString("approvalFlag");
|
||||
if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.PASS.getValue())) {
|
||||
int sdr2UserPassCount = (int) delegateTask.getVariable("sdr2UserPassCount");
|
||||
delegateTask.setVariable("sdr2UserPassCount", sdr2UserPassCount + 1);
|
||||
boolean existTaskFlag = taskTodoService.whetherExistTaskByTaskDefinitionKey(
|
||||
delegateTask.getProcessInstanceId(),
|
||||
delegateTask.getTaskDefinitionKey(),
|
||||
delegateTask.getId()
|
||||
);
|
||||
if (!existTaskFlag) {
|
||||
String pzr2UserId = jsonForm.getString("pzr2UserId");
|
||||
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(pzr2UserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
delegateTask.setVariable("pzr2UserId", pzr2UserId);
|
||||
}
|
||||
} else if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.OVERRULE.getValue())) {
|
||||
String pzr1UserId = jsonForm.getString("pzr1UserId");
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(pzr1UserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
|
||||
delegateTask.setVariable("pzr1UserId", pzr1UserId);
|
||||
delegateTask.setVariable("sdr2UserOverruleCount", 1);
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("approvalFlag",approvalFlag);
|
||||
}
|
||||
}
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess14Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCZQYJLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCZQYJLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+84
@@ -0,0 +1,84 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.ApprovalFlagEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess15After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
String approvalFlag = jsonForm.getString("approvalFlag");
|
||||
if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.PASS.getValue())) {
|
||||
String csrUserIds = jsonForm.getString("csrUserIds");
|
||||
List<String> nextUserList = Arrays.asList(csrUserIds.split(","));
|
||||
if (CollectionUtils.isNotEmpty(nextUserList)) {
|
||||
List<BusProcessNew> addBusProcessNewList = new ArrayList<>();
|
||||
for (String nextUser : nextUserList) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(nextUser);
|
||||
addBusProcessNewList.add(busProcessNewNext);
|
||||
}
|
||||
busBean.saveBatch(addBusProcessNewList);
|
||||
|
||||
// 配置多实例
|
||||
delegateTask.setVariable("csrUserIdList", nextUserList);
|
||||
}
|
||||
} else if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.OVERRULE.getValue())) {
|
||||
String pzr1UserId = jsonForm.getString("pzr1UserId");
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(pzr1UserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
|
||||
delegateTask.setVariable("pzr1UserId", pzr1UserId);
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("approvalFlag", approvalFlag);
|
||||
}
|
||||
}
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess15Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCZQYJLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCZQYJLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+97
@@ -0,0 +1,97 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_activiti.service.TaskTodoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Arrays;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
public class PolicySolicitOpinionProcess16After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
TaskTodoService taskTodoService = SpringContextUtil.getBean(TaskTodoService.class);
|
||||
IBusProcessNameService busProcessNameService = SpringContextUtil.getBean(IBusProcessNameService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
|
||||
// TODO 等需求确认,提交后需要做什么操作。
|
||||
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
String csr2UserIds = jsonForm.getString("csr2UserIds");
|
||||
if (StringUtils.isNotEmpty(csr2UserIds)) {
|
||||
List<String> csr2UserIdList = Arrays.asList(csr2UserIds.split(","));
|
||||
for (String csr2UserId : csr2UserIdList) {
|
||||
// 发送 oa 待阅
|
||||
BusProcessNew sendToBeReadBpn = new BusProcessNew();
|
||||
sendToBeReadBpn.setId(UUID.randomUUID().toString().substring(0, 20));
|
||||
sendToBeReadBpn.setTaskId(delegateTask.getId());
|
||||
sendToBeReadBpn.setTaskInfo(delegateTask.getName());
|
||||
sendToBeReadBpn.setLink(
|
||||
FlowTypeEnum.ZCZQYJLC.getRoute() +
|
||||
"?prcType=" + FlowTypeEnum.ZCZQYJLC.getValue() +
|
||||
"&taskDefinitionKey=PolicySolicitOpinionProcessKey11" +
|
||||
"&operate=view"
|
||||
);
|
||||
sendToBeReadBpn.setTaskInfo(delegateTask.getName());
|
||||
sendToBeReadBpn.setUserId(csr2UserId);
|
||||
sendToBeReadBpn.setTaskInfo(delegateTask.getName());
|
||||
sendToBeReadBpn.setUserId(csr2UserId);
|
||||
sendToBeReadBpn.setPrcName("政策征求意见流程");
|
||||
sendToBeReadBpn.setPId(delegateTask.getProcessInstanceId());
|
||||
|
||||
oaService.sendToBeReadMq(sendToBeReadBpn);
|
||||
}
|
||||
}
|
||||
|
||||
boolean existTaskFlag = taskTodoService.whetherExistTaskByTaskDefinitionKey(
|
||||
delegateTask.getProcessInstanceId(),
|
||||
delegateTask.getTaskDefinitionKey(),
|
||||
delegateTask.getId()
|
||||
);
|
||||
if (!existTaskFlag) {
|
||||
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
|
||||
QueryWrapper bpnQueryWrap = new QueryWrapper();
|
||||
bpnQueryWrap.eq("PRC_ID", delegateTask.getProcessInstanceId());
|
||||
BusProcessName bpn = busProcessNameService.getOne(bpnQueryWrap);
|
||||
if (bpn != null) {
|
||||
bpn.setOverTime(OVERTIME);
|
||||
busProcessNameService.saveOrUpdate(bpn);
|
||||
}
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
}
|
||||
}
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess16Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCZQYJLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCZQYJLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+106
@@ -0,0 +1,106 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess1After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
IBusProcessNameService busProcessNameService = SpringContextUtil.getBean(IBusProcessNameService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
delegateTask.setVariable("objectJson",object);
|
||||
|
||||
// 审核人1用户ids
|
||||
String shr1UserIds = jsonForm.getString("shr1UserIds");
|
||||
List<String> nextUserList = Arrays.asList(shr1UserIds.split(","));
|
||||
|
||||
//截止时间 流程描述 创建人
|
||||
String user = object.getString("prcCreateUser");
|
||||
String username = object.getString("prcCreateUserName");
|
||||
Object lawsName = jsonForm.get("lawsName");
|
||||
Object lawsNumber = jsonForm.get("lawsNumber");
|
||||
String lawsInfoName = "";
|
||||
if(lawsName != null && lawsNumber != null){
|
||||
String name = lawsName.toString()+"-";
|
||||
String number = lawsNumber.toString()+"-";
|
||||
if(StringUtils.isNotBlank(name) && StringUtils.isNotBlank(number)){
|
||||
lawsInfoName = number+name;
|
||||
}
|
||||
}
|
||||
String prcName = lawsInfoName+"政策征求意见流程";
|
||||
QueryWrapper queryWrapper2 = new QueryWrapper();
|
||||
queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId());
|
||||
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
|
||||
if(one1!=null){
|
||||
one1.setPrcType(FlowTypeEnum.ZCZQYJLC.getValue());
|
||||
one1.setPrcName(prcName);
|
||||
one1.setCreatUser(user);
|
||||
one1.setCreatUserName(username);
|
||||
|
||||
Date responsibleUnitDeadlineDate = jsonForm.getDate("responsibleUnitDeadline");
|
||||
one1.setResponsibleUnitDeadlineDate(responsibleUnitDeadlineDate);
|
||||
busProcessNameService.saveOrUpdate(one1);
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
if(CollectionUtils.isNotEmpty(nextUserList)){
|
||||
List<BusProcessNew> addBusProcessNewList = new ArrayList<>();
|
||||
for(String nextUser : nextUserList){
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(nextUser);
|
||||
addBusProcessNewList.add(busProcessNewNext);
|
||||
}
|
||||
busBean.saveBatch(addBusProcessNewList);
|
||||
|
||||
// 配置多实例
|
||||
delegateTask.setVariable("shr1UserIdList",nextUserList);
|
||||
delegateTask.setVariable("shr1UserCount",nextUserList.size());
|
||||
delegateTask.setVariable("shr1UserPassCount",0);
|
||||
delegateTask.setVariable("shr1UserOverruleCount",0);
|
||||
}
|
||||
|
||||
delegateTask.setVariable("fqrUserId",delegateTask.getAssignee());
|
||||
}
|
||||
}
|
||||
+35
@@ -0,0 +1,35 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess1Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper queryWrapper1 = new QueryWrapper();
|
||||
queryWrapper1.isNull("TASK_ID");
|
||||
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper1);
|
||||
if(!list.isEmpty()){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCZQYJLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCZQYJLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+97
@@ -0,0 +1,97 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_activiti.service.TaskTodoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.ApprovalFlagEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess2After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
TaskTodoService taskTodoService = SpringContextUtil.getBean(TaskTodoService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
|
||||
String approvalFlag = jsonForm.getString("approvalFlag");
|
||||
if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.PASS.getValue())) {
|
||||
int shr1UserPassCount = (int) delegateTask.getVariable("shr1UserPassCount");
|
||||
delegateTask.setVariable("shr1UserPassCount", shr1UserPassCount + 1);
|
||||
|
||||
boolean existTaskFlag = taskTodoService.whetherExistTaskByTaskDefinitionKey(
|
||||
delegateTask.getProcessInstanceId(),
|
||||
delegateTask.getTaskDefinitionKey(),
|
||||
delegateTask.getId()
|
||||
);
|
||||
if (!existTaskFlag) {
|
||||
// 审定人1用户ids
|
||||
String sdr1UserIds = jsonForm.getString("sdr1UserIds");
|
||||
List<String> nextUserList = Arrays.asList(sdr1UserIds.split(","));
|
||||
if (CollectionUtils.isNotEmpty(nextUserList)) {
|
||||
List<BusProcessNew> addBusProcessNewList = new ArrayList<>();
|
||||
for (String nextUser : nextUserList) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(nextUser);
|
||||
addBusProcessNewList.add(busProcessNewNext);
|
||||
}
|
||||
busBean.saveBatch(addBusProcessNewList);
|
||||
|
||||
// 配置多实例
|
||||
delegateTask.setVariable("sdr1UserIdList", nextUserList);
|
||||
delegateTask.setVariable("sdr1UserCount",nextUserList.size());
|
||||
delegateTask.setVariable("sdr1UserPassCount",0);
|
||||
delegateTask.setVariable("sdr1UserOverruleCount",0);
|
||||
}
|
||||
}
|
||||
} else if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.OVERRULE.getValue())) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNewNext);
|
||||
|
||||
delegateTask.setVariable("shr1UserOverruleCount", 1);
|
||||
}
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("approvalFlag",approvalFlag);
|
||||
}
|
||||
}
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess2Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCZQYJLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCZQYJLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+82
@@ -0,0 +1,82 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_activiti.service.TaskTodoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.ApprovalFlagEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
public class PolicySolicitOpinionProcess4After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
TaskTodoService taskTodoService = SpringContextUtil.getBean(TaskTodoService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
String approvalFlag = jsonForm.getString("approvalFlag");
|
||||
if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.PASS.getValue())) {
|
||||
int sdr1UserPassCount = (int) delegateTask.getVariable("sdr1UserPassCount");
|
||||
delegateTask.setVariable("sdr1UserPassCount", sdr1UserPassCount + 1);
|
||||
|
||||
boolean existTaskFlag = taskTodoService.whetherExistTaskByTaskDefinitionKey(
|
||||
delegateTask.getProcessInstanceId(),
|
||||
delegateTask.getTaskDefinitionKey(),
|
||||
delegateTask.getId()
|
||||
);
|
||||
if (!existTaskFlag) {
|
||||
String pzr1UserId = jsonForm.getString("pzr1UserId");
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(pzr1UserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
|
||||
delegateTask.setVariable("pzr1UserId",pzr1UserId);
|
||||
}
|
||||
} else if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.OVERRULE.getValue())) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNewNext);
|
||||
|
||||
delegateTask.setVariable("sdr1UserOverruleCount", 1);
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("approvalFlag",approvalFlag);
|
||||
}
|
||||
}
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess4Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCZQYJLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCZQYJLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+107
@@ -0,0 +1,107 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.ApprovalFlagEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess5After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
String approvalFlag = jsonForm.getString("approvalFlag");
|
||||
if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.PASS.getValue())) {
|
||||
Date responsibleUnitDeadlineDate = jsonForm.getDate("responsibleUnitDeadline");
|
||||
String endFlag = "";
|
||||
// 如果当前日期大于责任单位截止日期,则不走责任对接人子流程 RESPONSIBLE_UNIT_DEADLINE_DATE
|
||||
if (new Date().after(responsibleUnitDeadlineDate)) {
|
||||
endFlag = "0";
|
||||
// 管理员用户id
|
||||
String glyUserId = jsonForm.getString("glyUserId");
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(glyUserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
|
||||
delegateTask.setVariable("glyUserId",glyUserId);
|
||||
} else {
|
||||
endFlag = "1";
|
||||
|
||||
// 责任对接人用户id
|
||||
String djrUserIds = jsonForm.getString("djrUserIds");
|
||||
List<String> nextUserList = Arrays.asList(djrUserIds.split(","));
|
||||
if (CollectionUtils.isNotEmpty(nextUserList)) {
|
||||
List<BusProcessNew> addBusProcessNewList = new ArrayList<>();
|
||||
for (String nextUser : nextUserList) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(nextUser);
|
||||
addBusProcessNewList.add(busProcessNewNext);
|
||||
}
|
||||
busBean.saveBatch(addBusProcessNewList);
|
||||
|
||||
// 配置多实例
|
||||
delegateTask.setVariable("djrUserIdList", nextUserList);
|
||||
|
||||
delegateTask.setVariable("zrSubProcessCount",nextUserList.size());
|
||||
delegateTask.setVariable("zrSubProcessFinishCount",0);
|
||||
}
|
||||
}
|
||||
delegateTask.setVariable("endFlag",endFlag);
|
||||
} else if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.OVERRULE.getValue())) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("approvalFlag",approvalFlag);
|
||||
}
|
||||
}
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess5Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCZQYJLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCZQYJLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+115
@@ -0,0 +1,115 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.FlowUserRelInfo;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IFlowUserRelInfoService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess7After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
IFlowUserRelInfoService flowUserRelInfoService = SpringContextUtil.getBean(IFlowUserRelInfoService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
// 提交方式,如果该字段不为空,则是定时器自动提交 定时器自动提交value:timerAutoSubmit
|
||||
String submitMethod = object.getString("submitMethod");
|
||||
if (StringUtils.isEmpty(submitMethod)) {
|
||||
String zrrUserIds = jsonForm.getString("zrrUserIds");
|
||||
if (StringUtils.isNotEmpty(zrrUserIds)) {
|
||||
List<String> nextUserList = Arrays.asList(zrrUserIds.split(","));
|
||||
if (CollectionUtils.isNotEmpty(nextUserList)) {
|
||||
List<FlowUserRelInfo> flowUserRelInfoList = new ArrayList<>();
|
||||
|
||||
List<BusProcessNew> addBusProcessNewList = new ArrayList<>();
|
||||
for (String nextUser : nextUserList) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(nextUser);
|
||||
addBusProcessNewList.add(busProcessNewNext);
|
||||
|
||||
FlowUserRelInfo flowUserRelInfo = new FlowUserRelInfo();
|
||||
flowUserRelInfo.setParentUserId(delegateTask.getAssignee());
|
||||
flowUserRelInfo.setUserId(nextUser);
|
||||
flowUserRelInfo.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
flowUserRelInfo.setFlowType(FlowTypeEnum.ZCZQYJLC.getValue());
|
||||
flowUserRelInfo.setDataType("zrdjrfpzrr"); // 责任对接人分配责任人
|
||||
flowUserRelInfoList.add(flowUserRelInfo);
|
||||
}
|
||||
busBean.saveBatch(addBusProcessNewList);
|
||||
|
||||
// 配置多实例
|
||||
delegateTask.setVariable("zrrUserIdList", nextUserList);
|
||||
|
||||
flowUserRelInfoService.saveBatchFlowUserRelInfo(flowUserRelInfoList);
|
||||
}
|
||||
}
|
||||
|
||||
submitMethod = "pageSubmit";
|
||||
} else {
|
||||
// 责任部门 子流程总数
|
||||
int zrSubProcessCount = (int) delegateTask.getVariable("zrSubProcessCount");
|
||||
int zrSubProcessFinishCount = (int) delegateTask.getVariable("zrSubProcessFinishCount");
|
||||
zrSubProcessFinishCount = zrSubProcessFinishCount + 1;
|
||||
delegateTask.setVariable("zrSubProcessFinishCount", zrSubProcessFinishCount);
|
||||
|
||||
// 如果该流程中的 责任部门子流程都已完成,给管理员节点分配数据。
|
||||
if (zrSubProcessCount == zrSubProcessFinishCount) {
|
||||
String glyUserId = jsonForm.getString("glyUserId");
|
||||
delegateTask.setVariable("glyUserId", glyUserId);
|
||||
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(glyUserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
|
||||
submitMethod = "timerAutoSubmit";
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("submitMethod",submitMethod);
|
||||
}
|
||||
}
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess7Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCZQYJLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCZQYJLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+90
@@ -0,0 +1,90 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_activiti.service.TaskTodoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IPolicySolicitOpinionEOService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
public class PolicySolicitOpinionProcess8After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
TaskTodoService taskTodoService = SpringContextUtil.getBean(TaskTodoService.class);
|
||||
IPolicySolicitOpinionEOService policySolicitOpinionEOService = SpringContextUtil.getBean(IPolicySolicitOpinionEOService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
// 提交方式,如果该字段不为空,则是定时器自动提交 定时器自动提交value:timerAutoSubmit
|
||||
String submitMethod = object.getString("submitMethod");
|
||||
if (StringUtils.isEmpty(submitMethod)) {
|
||||
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId((String) delegateTask.getVariable("djrUserId"));
|
||||
busBean.save(busProcessNewNext);
|
||||
|
||||
// 保存责任人填写的征求意见信息
|
||||
object.put("currentUserId",delegateTask.getAssignee());
|
||||
object.put("prcId",delegateTask.getProcessInstanceId());
|
||||
policySolicitOpinionEOService.batchInsert(object);
|
||||
|
||||
submitMethod = "pageSubmit";
|
||||
} else {
|
||||
// 责任部门 子流程总数
|
||||
int zrSubProcessCount = (int) delegateTask.getVariable("zrSubProcessCount");
|
||||
int zrSubProcessFinishCount = (int) delegateTask.getVariable("zrSubProcessFinishCount");
|
||||
zrSubProcessFinishCount = zrSubProcessFinishCount + 1;
|
||||
delegateTask.setVariable("zrSubProcessFinishCount", zrSubProcessFinishCount);
|
||||
|
||||
// 如果该流程中的 责任部门子流程都已完成,给管理员节点分配数据。
|
||||
if (zrSubProcessCount == zrSubProcessFinishCount) {
|
||||
String glyUserId = jsonForm.getString("glyUserId");
|
||||
delegateTask.setVariable("glyUserId", glyUserId);
|
||||
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(glyUserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
submitMethod = "timerAutoSubmit";
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("submitMethod",submitMethod);
|
||||
}
|
||||
}
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess8Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCZQYJLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCZQYJLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+124
@@ -0,0 +1,124 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.FlowUserRelInfo;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.*;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.ApprovalFlagEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess9After implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
IFlowUserRelInfoService flowUserRelInfoService = SpringContextUtil.getBean(IFlowUserRelInfoService.class);
|
||||
IPolicySolicitOpinionEOService policySolicitOpinionEOService = SpringContextUtil.getBean(IPolicySolicitOpinionEOService.class);
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
JSONObject jsonForm = object.getJSONObject("form");
|
||||
|
||||
String approvalFlag = jsonForm.getString("approvalFlag");
|
||||
if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.PASS.getValue())) {
|
||||
// 内部审查 0 是,1 否
|
||||
String internalReviewFlag = jsonForm.getString("internalReviewFlag");
|
||||
if (StringUtils.equals(internalReviewFlag, "0")) {
|
||||
String zrdwUserId = jsonForm.getString("zrdwUserId");
|
||||
delegateTask.setVariable("zrdwUserId", zrdwUserId);
|
||||
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(zrdwUserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
|
||||
List<FlowUserRelInfo> flowUserRelInfoList = new ArrayList<>();
|
||||
FlowUserRelInfo flowUserRelInfo = new FlowUserRelInfo();
|
||||
flowUserRelInfo.setParentUserId(delegateTask.getAssignee());
|
||||
flowUserRelInfo.setUserId(zrdwUserId);
|
||||
flowUserRelInfo.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
flowUserRelInfo.setFlowType(FlowTypeEnum.ZCZQYJLC.getValue());
|
||||
flowUserRelInfo.setDataType("zrdjrfpzrdw"); // 责任对接人分配责任单位审批
|
||||
flowUserRelInfoList.add(flowUserRelInfo);
|
||||
flowUserRelInfoService.saveBatchFlowUserRelInfo(flowUserRelInfoList);
|
||||
} else if (StringUtils.equals(internalReviewFlag, "1")) {
|
||||
// 责任部门 子流程总数
|
||||
int zrSubProcessCount = (int) delegateTask.getVariable("zrSubProcessCount");
|
||||
int zrSubProcessFinishCount = (int) delegateTask.getVariable("zrSubProcessFinishCount");
|
||||
zrSubProcessFinishCount = zrSubProcessFinishCount + 1;
|
||||
delegateTask.setVariable("zrSubProcessFinishCount", zrSubProcessFinishCount);
|
||||
|
||||
// 如果该流程中的 责任部门子流程都已完成,给管理员节点分配数据。
|
||||
if (zrSubProcessCount == zrSubProcessFinishCount) {
|
||||
String glyUserId = jsonForm.getString("glyUserId");
|
||||
delegateTask.setVariable("glyUserId", glyUserId);
|
||||
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(glyUserId);
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
}
|
||||
|
||||
jsonForm.put("internalReviewFlag","");
|
||||
jsonForm.put("zrdwUserId","");
|
||||
delegateTask.setVariable("internalReviewFlag", internalReviewFlag);
|
||||
} else if (StringUtils.equals(approvalFlag, ApprovalFlagEnum.OVERRULE.getValue())) {
|
||||
List<String> zrrUserIdList = (List<String>) delegateTask.getVariable("zrrUserIdList");
|
||||
List<BusProcessNew> addBusProcessNewList = new ArrayList<>();
|
||||
for (String nextUser : zrrUserIdList) {
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(nextUser);
|
||||
addBusProcessNewList.add(busProcessNewNext);
|
||||
}
|
||||
busBean.saveBatch(addBusProcessNewList);
|
||||
}
|
||||
|
||||
// 保存责任人填写的征求意见信息
|
||||
object.put("currentUserId",delegateTask.getAssignee());
|
||||
object.put("prcId",delegateTask.getProcessInstanceId());
|
||||
policySolicitOpinionEOService.batchInsert(object);
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
delegateTask.setVariable("approvalFlag", approvalFlag);
|
||||
}
|
||||
}
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PolicySolicitOpinionProcess9Before implements TaskListener {
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
|
||||
QueryWrapper queryWrapper = new QueryWrapper();
|
||||
queryWrapper.isNull("TASK_ID");
|
||||
queryWrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink(FlowTypeEnum.ZCZQYJLC.getRoute() + "?prcType=" + FlowTypeEnum.ZCZQYJLC.getValue() + "&taskDefinitionKey="+delegateTask.getTaskDefinitionKey());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+141
@@ -0,0 +1,141 @@
|
||||
package com.ydw.bat.wkflow.listener.policySolicitOpinionProcess.timer;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_wkflow.form.dto.FormSubmitDto;
|
||||
import com.ydw.bat.wkflow.business_wkflow.form.service.FormValsService;
|
||||
import com.ydw.bat.wkflow.util.enums.ApprovalFlagEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.activiti.engine.TaskService;
|
||||
import org.activiti.engine.task.Task;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.scheduling.annotation.EnableScheduling;
|
||||
import org.springframework.scheduling.annotation.Scheduled;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @Description: 政策征求意见流程定时器
|
||||
* @author: wangzhijiang
|
||||
* @date: 2023-10-23
|
||||
*/
|
||||
@Component
|
||||
@EnableScheduling
|
||||
@Slf4j
|
||||
public class PolicySolicitOpinionProcessTimer {
|
||||
|
||||
@Autowired
|
||||
private IBusProcessNameService busProcessNameService;
|
||||
@Autowired
|
||||
private TaskService taskService;
|
||||
@Autowired
|
||||
private IBusProcessNewService busProcessNewService;
|
||||
@Autowired
|
||||
private FormValsService formValsService;
|
||||
|
||||
/**
|
||||
* @Description: 自动提交待办任务
|
||||
* @author: wangzhijiang
|
||||
* @date: 2023-10-23
|
||||
* @Param:
|
||||
* @return:
|
||||
*/
|
||||
@Scheduled(cron = "5 0 0 * * ? ")//每天凌晨12点05分执行
|
||||
public void autoSubmitZrbmTask() {
|
||||
QueryWrapper<BusProcessName> bpnQueryWrap = new QueryWrapper<>();
|
||||
bpnQueryWrap.lambda().eq(BusProcessName::getPrcType, FlowTypeEnum.ZCZQYJLC.getValue());
|
||||
bpnQueryWrap.lambda().lt(BusProcessName::getResponsibleUnitDeadlineDate, new Date());
|
||||
List<BusProcessName> busProcessNameList = this.busProcessNameService.list(bpnQueryWrap);
|
||||
|
||||
if (CollectionUtils.isNotEmpty(busProcessNameList)) {
|
||||
List<String> actiProcInstIdList = busProcessNameList.stream().map(BusProcessName::getPrcId).distinct().collect(Collectors.toList());
|
||||
this.recursionComplteZrbmTask(actiProcInstIdList);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 递归提交待办任务
|
||||
*
|
||||
* @param actiProcInstIdList
|
||||
*/
|
||||
public void recursionComplteZrbmTask(List<String> actiProcInstIdList) {
|
||||
for (String actiProcInstId : actiProcInstIdList) {
|
||||
List<Task> taskList = this.taskService.createTaskQuery().processInstanceId(actiProcInstId).list().stream().filter(task -> {
|
||||
boolean flag = false;
|
||||
if (StringUtils.equals(task.getTaskDefinitionKey(), "PolicySolicitOpinionProcessKey7")
|
||||
|| StringUtils.equals(task.getTaskDefinitionKey(), "PolicySolicitOpinionProcessKey8")
|
||||
|| StringUtils.equals(task.getTaskDefinitionKey(), "PolicySolicitOpinionProcessKey9")
|
||||
|| StringUtils.equals(task.getTaskDefinitionKey(), "PolicySolicitOpinionProcessKey10")) {
|
||||
flag = true;
|
||||
}
|
||||
return flag;
|
||||
}).distinct().collect(Collectors.toList());
|
||||
if (CollectionUtils.isNotEmpty(taskList)) {
|
||||
for (Task task : taskList) {
|
||||
JSONObject formJson = new JSONObject();
|
||||
|
||||
QueryWrapper<BusProcessNew> newQueryWrapper = new QueryWrapper<>();
|
||||
newQueryWrapper.lambda().eq(BusProcessNew::getTaskId, task.getId());
|
||||
BusProcessNew busProcessNew = this.busProcessNewService.getOne(newQueryWrapper);
|
||||
if (ObjectUtils.isNotEmpty(busProcessNew)) {
|
||||
formJson = JSONObject.parseObject(busProcessNew.getMesg());
|
||||
JSONObject jsonForm = formJson.getJSONObject("form");
|
||||
jsonForm.put("approvalFlag",ApprovalFlagEnum.PASS.getValue());
|
||||
jsonForm.put("internalReviewFlag", "1");
|
||||
formJson.put("commentText","");
|
||||
}
|
||||
formJson.put("submitMethod", "timerAutoSubmit");
|
||||
formJson.put("approvalFlag", ApprovalFlagEnum.PASS.getValue());
|
||||
formJson.put("internalReviewFlag", "1");
|
||||
|
||||
FormSubmitDto formSubmitDto = new FormSubmitDto();
|
||||
formSubmitDto.setForm(formJson.toString());
|
||||
formSubmitDto.setTask_id(task.getId());
|
||||
this.formValsService.saveFormVals(formSubmitDto, task.getTaskDefinitionKey());
|
||||
|
||||
this.taskService.complete(task.getId());
|
||||
}
|
||||
}
|
||||
}
|
||||
List<String> actiProcInstIds = this.queryZrbmTaskByActiProcInstId(actiProcInstIdList);
|
||||
if (CollectionUtils.isNotEmpty(actiProcInstIds)) {
|
||||
this.recursionComplteZrbmTask(actiProcInstIds);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据流程实例id,查询还有待办任务的流程。
|
||||
*
|
||||
* @param actiProcInstIdList
|
||||
* @return
|
||||
*/
|
||||
public List<String> queryZrbmTaskByActiProcInstId(List<String> actiProcInstIdList) {
|
||||
List<String> result = new ArrayList<>();
|
||||
for (String actiProcInstId : actiProcInstIdList) {
|
||||
List<Task> taskList = this.taskService.createTaskQuery().processInstanceId(actiProcInstId).list().stream().filter(task -> {
|
||||
boolean flag = false;
|
||||
if (StringUtils.equals(task.getTaskDefinitionKey(), "PolicySolicitOpinionProcessKey7")
|
||||
|| StringUtils.equals(task.getTaskDefinitionKey(), "PolicySolicitOpinionProcessKey8")
|
||||
|| StringUtils.equals(task.getTaskDefinitionKey(), "PolicySolicitOpinionProcessKey9")
|
||||
|| StringUtils.equals(task.getTaskDefinitionKey(), "PolicySolicitOpinionProcessKey10")) {
|
||||
flag = true;
|
||||
}
|
||||
return flag;
|
||||
}).distinct().collect(Collectors.toList());
|
||||
if (taskList.size() != 0) {
|
||||
result.add(actiProcInstId);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
package com.ydw.bat.wkflow.util.enums;
|
||||
|
||||
/**
|
||||
* 审批标志枚举类
|
||||
*/
|
||||
public enum ApprovalFlagEnum {
|
||||
|
||||
PASS("通过","0"),
|
||||
OVERRULE("驳回","1"),
|
||||
;
|
||||
|
||||
ApprovalFlagEnum(String label, String value) {
|
||||
this.label = label;
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
String label;
|
||||
String value;
|
||||
|
||||
public String getLabel() {
|
||||
return label;
|
||||
}
|
||||
|
||||
public void setLabel(String label) {
|
||||
this.label = label;
|
||||
}
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(String value) {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package com.ydw.bat.wkflow.util.enums;
|
||||
|
||||
/**
|
||||
* 流程类型枚举类
|
||||
*/
|
||||
public enum FlowTypeEnum {
|
||||
ZCZQYJLC("29","政策征求意见流程","policyConsultation"),
|
||||
ZCHGXXMSCLC("30","重点认证标准/政策合规性项目审查流程","policyComplianceReview"),
|
||||
;
|
||||
|
||||
private String value;
|
||||
private String lable;
|
||||
private String route;
|
||||
|
||||
private FlowTypeEnum(String value, String lable,String route) {
|
||||
this.value = value;
|
||||
this.lable = lable;
|
||||
this.route = route;
|
||||
}
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
public String getLable() {
|
||||
return lable;
|
||||
}
|
||||
|
||||
public String getRoute() {
|
||||
return route;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.ydw.bat.wkflow.business_main.datas.mapper.PolicySolicitOpinionEOMapper">
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.ydw.bat.wkflow.business_main.datas.mapper.ZchgxxmscCpghbDataDetailEOMapper">
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.ydw.bat.wkflow.business_main.datas.mapper.ZchgxxmscCpghbDataEOMapper">
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.ydw.bat.wkflow.business_main.datas.mapper.ZchgxxmscSybDataEOMapper">
|
||||
|
||||
</mapper>
|
||||
Reference in New Issue
Block a user