Merge branch 'dev_2024325_LCZGF_39' into 'master'
Dev 2024325 lczgf 39 See merge request laws-foton-slrs/foton-wkflow-rest!82
This commit is contained in:
@@ -27,6 +27,7 @@ import com.ydw.bat.wkflow.business_oa.webService.service.impl.WebServiceOAServic
|
||||
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 com.ydw.bat.wkflow.util.enums.TaskStatusEnum;
|
||||
import org.activiti.engine.*;
|
||||
import org.activiti.engine.history.*;
|
||||
import org.activiti.engine.repository.ProcessDefinition;
|
||||
@@ -112,6 +113,9 @@ public class TodoTaskController extends BaseAction {
|
||||
@Autowired
|
||||
private IZchgxxmscCpghbDataEOService zchgxxmscCpghbDataEOService;
|
||||
|
||||
@Autowired
|
||||
private IBusProcessHistoryService busProcessHistoryService;
|
||||
|
||||
@ApiOperation(value = "我的待办任务列表")
|
||||
@ApiImplicitParams({@ApiImplicitParam(name = "name", value = "名称"),
|
||||
@ApiImplicitParam(name = "current", value = "当前页"),
|
||||
@@ -424,6 +428,8 @@ public class TodoTaskController extends BaseAction {
|
||||
} else if (StringUtils.equals(one.getPrcType(), FlowTypeEnum.ZCHGXXMSCLC.getValue())) {
|
||||
this.changeZchgxxmscFlowAssignee(assignee, userId, pId, str);
|
||||
}
|
||||
|
||||
this.busProcessHistoryService.changeUserIdByTaskId(str,assignee,userId);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -650,6 +656,8 @@ public class TodoTaskController extends BaseAction {
|
||||
}catch (Exception e){
|
||||
logger.error(e.toString());
|
||||
}
|
||||
this.busProcessHistoryService.complete(busMes);
|
||||
|
||||
taskService.complete(busMes.getTaskId());
|
||||
} else {
|
||||
return WrapMapper.error("当前任务不存在");
|
||||
@@ -682,6 +690,9 @@ public class TodoTaskController extends BaseAction {
|
||||
}catch (Exception e){
|
||||
logger.error(e.toString());
|
||||
}
|
||||
busMes.setTaskId(taskId);
|
||||
this.busProcessHistoryService.complete(busMes);
|
||||
|
||||
taskService.complete(taskId);
|
||||
} else {
|
||||
return WrapMapper.error("当前任务不存在");
|
||||
@@ -896,6 +907,11 @@ public class TodoTaskController extends BaseAction {
|
||||
updateWrapper.in(BusProcessNew::getTaskId,taskIdList);
|
||||
updateWrapper.set(BusProcessNew::getReceiveStatus,"已接收");
|
||||
iBusProcessNewService.update(updateWrapper);
|
||||
|
||||
LambdaUpdateWrapper<BusProcessHistory> bphUpdateWrapper = new LambdaUpdateWrapper<>();
|
||||
bphUpdateWrapper.in(BusProcessHistory::getTaskId,taskIdList);
|
||||
bphUpdateWrapper.set(BusProcessHistory::getTaskStatus, TaskStatusEnum.RECEIVED.getValue());
|
||||
this.busProcessHistoryService.update(bphUpdateWrapper);
|
||||
return processNew;
|
||||
|
||||
}
|
||||
|
||||
+49
@@ -0,0 +1,49 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.controller;
|
||||
|
||||
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessHistoryService;
|
||||
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.RestController;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/datas/bus-process-history")
|
||||
public class BusProcessHistoryController {
|
||||
|
||||
@Autowired
|
||||
private IBusProcessHistoryService busProcessHistoryService;
|
||||
|
||||
/**
|
||||
* 查询流程历史列表
|
||||
* @param actiProcInstId
|
||||
* @param flowType
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/queryFlowHistoryList")
|
||||
public List<BusProcessHistory> queryFlowHistoryList(String actiProcInstId,String flowType) {
|
||||
BusProcessHistory busProcessHistory = new BusProcessHistory();
|
||||
busProcessHistory.setActiProcInstId(actiProcInstId);
|
||||
busProcessHistory.setFlowType(flowType);
|
||||
return this.busProcessHistoryService.queryFlowHistoryList(busProcessHistory);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询流程图数据
|
||||
* @param actiProcInstId
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/getImgDataList")
|
||||
public List<Map<String,Object>> getImgDataList(String actiProcInstId, String flowType) {
|
||||
BusProcessHistory busProcessHistory = new BusProcessHistory();
|
||||
busProcessHistory.setActiProcInstId(actiProcInstId);
|
||||
busProcessHistory.setFlowType(flowType);
|
||||
return this.busProcessHistoryService.getImgDataList(busProcessHistory);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,122 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.entity;
|
||||
|
||||
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;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 流程历史
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@Accessors(chain = true)
|
||||
@TableName("bus_process_history")
|
||||
@ApiModel(value="BusProcessHistory对象", description="")
|
||||
public class BusProcessHistory {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty(value = "主键")
|
||||
@TableId(value = "id")
|
||||
private String id;
|
||||
|
||||
@ApiModelProperty(value = "流程实例id")
|
||||
@TableField("acti_proc_inst_id")
|
||||
private String actiProcInstId;
|
||||
|
||||
@ApiModelProperty(value = "任务id")
|
||||
@TableField("task_id")
|
||||
private String taskId;
|
||||
|
||||
@ApiModelProperty(value = "用户id")
|
||||
@TableField("user_id")
|
||||
private String userId;
|
||||
|
||||
@ApiModelProperty(value = "任务节点key")
|
||||
@TableField("task_key")
|
||||
private String taskKey;
|
||||
|
||||
@ApiModelProperty(value = "流程类型")
|
||||
@TableField("flow_type")
|
||||
private String flowType;
|
||||
|
||||
@ApiModelProperty(value = "是否是子流程:1是 2否")
|
||||
@TableField("is_sub")
|
||||
private String isSub;
|
||||
|
||||
@ApiModelProperty(value = "排序号")
|
||||
@TableField("order_num")
|
||||
private Integer orderNum;
|
||||
|
||||
@ApiModelProperty(value = "任务状态")
|
||||
@TableField("task_status")
|
||||
private String taskStatus;
|
||||
|
||||
@ApiModelProperty(value = "审批意见")
|
||||
@TableField("commit_text")
|
||||
private String commitText;
|
||||
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
@TableField("create_time")
|
||||
private Date createTime;
|
||||
|
||||
@ApiModelProperty(value = "完成时间")
|
||||
@TableField("end_time")
|
||||
private Date endTime;
|
||||
|
||||
@ApiModelProperty(value = "父级id(仅限于子流程任务节点有)")
|
||||
@TableField("p_id")
|
||||
private String pId;
|
||||
|
||||
@ApiModelProperty(value = "是否是多实例任务节点:1是 2否")
|
||||
@TableField("is_many")
|
||||
private String isMany;
|
||||
|
||||
@ApiModelProperty(value = "多实例父节点id")
|
||||
@TableField("many_p_id")
|
||||
private String manyPId;
|
||||
|
||||
// 子流程数据数组
|
||||
@TableField(exist = false)
|
||||
private List<BusProcessHistory> children;
|
||||
|
||||
@TableField(exist = false)
|
||||
private String userName;
|
||||
|
||||
@TableField(exist = false)
|
||||
private String taskStatusShow;
|
||||
@TableField(exist = false)
|
||||
private String taskKeyShow;
|
||||
@TableField(exist = false)
|
||||
private String bpnId;
|
||||
@TableField(exist = false)
|
||||
private String prcId;
|
||||
@TableField(exist = false)
|
||||
private String prcName;
|
||||
@TableField(exist = false)
|
||||
private String prcNum;
|
||||
|
||||
@ApiModelProperty(value = "图片中展示标识,0 未办白色,1 待办浅绿色 2 已办 蓝色")
|
||||
@TableField("img_show_color")
|
||||
private String imgShowColor;
|
||||
|
||||
@ApiModelProperty(value = "图片中是否展示:1 默认展示 2 不展示")
|
||||
@TableField("img_show_flag")
|
||||
private String imgShowFlag;
|
||||
|
||||
@ApiModelProperty(value = "分发用户id")
|
||||
@TableField("parent_user_id")
|
||||
private String parentUserId;
|
||||
|
||||
// 分发用户名称
|
||||
@TableField(exist = false)
|
||||
private String parentUserName;
|
||||
}
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
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.BusProcessHistory;
|
||||
|
||||
public interface BusProcessHistoryMapper extends BaseMapper<BusProcessHistory> {
|
||||
|
||||
}
|
||||
+54
@@ -0,0 +1,54 @@
|
||||
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.BusMes;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public interface IBusProcessHistoryService extends IService<BusProcessHistory> {
|
||||
|
||||
List<BusProcessHistory> queryFlowHistoryList(BusProcessHistory busProcessHistory);
|
||||
|
||||
List<BusProcessHistory> queryByList(BusProcessHistory busProcessHistory);
|
||||
|
||||
void insertBatch(List<BusProcessHistory> busProcessHistoryList);
|
||||
|
||||
void updateBatch(List<BusProcessHistory> busProcessHistoryList);
|
||||
|
||||
// 更新任务信息
|
||||
void updateTaskInfo(DelegateTask delegateTask);
|
||||
|
||||
void complete(BusMes busMes);
|
||||
|
||||
// 获取最大排序号
|
||||
int getMaxOrderNum(String actiProcInstId, String taskKey);
|
||||
|
||||
// 更新排序号
|
||||
void updateOrderNum(String actiProcInstId, int orderNum,int dataNum);
|
||||
|
||||
List<Map<String,Object>> getImgDataList(BusProcessHistory busProcessHistory);
|
||||
|
||||
// 根据taskId修改用户id
|
||||
void changeUserIdByTaskId(String taskId,String afterUserId,String frontUserId);
|
||||
|
||||
/**
|
||||
* 更新某一个流程下 任务在流程图中展示颜色。
|
||||
* @param actiProcInstId 流程示例id
|
||||
* @param inTaskKeyList in的流程定义key
|
||||
* @param notInTaskKeyList notIn的流程定义key
|
||||
* @param imgShowColor 更新成什么颜色 : 图片中展示标识,0 未办白色,1 待办浅绿色 2 已办 蓝色
|
||||
*/
|
||||
void updateImgShowColor(String actiProcInstId,List<String> inTaskKeyList, List<String> notInTaskKeyList,String imgShowColor);
|
||||
|
||||
/**
|
||||
* 更新某一个流程下 任务是否展示。
|
||||
* @param actiProcInstId 流程示例id
|
||||
* @param inTaskKeyList in的流程定义key
|
||||
* @param notInTaskKeyList notIn的流程定义key
|
||||
* @param imgShowFlag 1展示 2不展示
|
||||
*/
|
||||
void updateImgShowFlag(String actiProcInstId, List<String> inTaskKeyList, List<String> notInTaskKeyList, String imgShowFlag);
|
||||
}
|
||||
+511
@@ -0,0 +1,511 @@
|
||||
package com.ydw.bat.wkflow.business_main.datas.service.impl;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
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.BusProcessHistoryMapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessEntrustService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessHistoryService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
|
||||
import com.ydw.bat.wkflow.util.enums.BussLibraryNodeKeyEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.StandardCommentNewProcessNodeKeyEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.TaskStatusEnum;
|
||||
import org.activiti.engine.ActivitiException;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Service
|
||||
public class IBusProcessHistoryServiceImpl extends ServiceImpl<BusProcessHistoryMapper, BusProcessHistory> implements IBusProcessHistoryService {
|
||||
|
||||
|
||||
@Autowired
|
||||
LawsUserInfoService lawsUserInfoService;
|
||||
|
||||
@Autowired
|
||||
private IBusProcessNameService busProcessNameService;
|
||||
|
||||
@Autowired
|
||||
private IBusProcessEntrustService iBusProcessEntrustService;
|
||||
|
||||
@Override
|
||||
public List<BusProcessHistory> queryFlowHistoryList(BusProcessHistory busProcessHistory) {
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
this.setQueryCondition(busProcessHistory, bphQueryWrap);
|
||||
bphQueryWrap.orderByAsc("order_num","create_time");
|
||||
bphQueryWrap.lambda().and(
|
||||
query -> query.isNull(BusProcessHistory::getTaskId).isNull(BusProcessHistory::getUserId).eq(BusProcessHistory::getIsMany,"1").or().isNotNull(BusProcessHistory::getTaskId)
|
||||
);
|
||||
// bphQueryWrap.isNotNull("task_id");
|
||||
List<BusProcessHistory> bphList = this.list(bphQueryWrap);
|
||||
this.disposeData(bphList,busProcessHistory.getActiProcInstId());
|
||||
List<BusProcessHistory> firstBphList = bphList.stream().filter(bph -> StringUtils.isEmpty(bph.getManyPId())).distinct().collect(Collectors.toList());
|
||||
for (BusProcessHistory processHistory : firstBphList) {
|
||||
if (StringUtils.equals(processHistory.getIsMany(),"1")) {
|
||||
List<BusProcessHistory> childList = bphList.stream().filter(bph -> StringUtils.equals(processHistory.getId(), bph.getManyPId())).distinct().collect(Collectors.toList());
|
||||
if (CollectionUtils.isNotEmpty(childList)) {
|
||||
String taskStatus = TaskStatusEnum.DONE.getValue();
|
||||
for (BusProcessHistory history : childList) {
|
||||
if (StringUtils.equals(history.getTaskStatus(),TaskStatusEnum.TODO.getValue()) || StringUtils.equals(history.getTaskStatus(),TaskStatusEnum.RECEIVED.getValue())) {
|
||||
taskStatus = TaskStatusEnum.TODO.getValue();
|
||||
break;
|
||||
}
|
||||
}
|
||||
Date endTime = null;
|
||||
if (StringUtils.equals(taskStatus,TaskStatusEnum.DONE.getValue())) {
|
||||
// Collections.sort(childList,new Comparator<BusProcessHistory>(){
|
||||
// @Override
|
||||
// public int compare(BusProcessHistory o1, BusProcessHistory o2) {
|
||||
// return o2.getEndTime().compareTo(o1.getEndTime());
|
||||
// }
|
||||
// });
|
||||
|
||||
endTime = childList.get(childList.size()-1).getEndTime();
|
||||
}
|
||||
|
||||
String userNames = childList.stream().map(BusProcessHistory::getUserName).distinct().collect(Collectors.joining(","));
|
||||
|
||||
processHistory.setUserName(userNames);
|
||||
processHistory.setCreateTime(childList.get(0).getCreateTime());
|
||||
processHistory.setEndTime(endTime);
|
||||
processHistory.setTaskStatus(taskStatus);
|
||||
processHistory.setTaskStatusShow(TaskStatusEnum.getLabelByValue(taskStatus));
|
||||
processHistory.setChildren(childList);
|
||||
}
|
||||
}
|
||||
}
|
||||
List<BusProcessHistory> results = new ArrayList<>();
|
||||
if (CollectionUtils.isNotEmpty(firstBphList)) {
|
||||
results = firstBphList.stream().filter(bph -> {
|
||||
boolean flag = false;
|
||||
if (StringUtils.equals(bph.getIsMany(),"2") || (StringUtils.equals(bph.getIsMany(),"1") && CollectionUtils.isNotEmpty(bph.getChildren()))) {
|
||||
flag = true;
|
||||
}
|
||||
return flag;
|
||||
}).distinct().collect(Collectors.toList());
|
||||
}
|
||||
return results;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<BusProcessHistory> queryByList(BusProcessHistory busProcessHistory) {
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
this.setQueryCondition(busProcessHistory, bphQueryWrap);
|
||||
List<BusProcessHistory> results = this.list(bphQueryWrap);
|
||||
return results;
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置查询条件
|
||||
* @param busProcessHistory
|
||||
* @param bphQueryWrap
|
||||
*/
|
||||
private void setQueryCondition(BusProcessHistory busProcessHistory, QueryWrapper<BusProcessHistory> bphQueryWrap) {
|
||||
if (StringUtils.isNotEmpty(busProcessHistory.getActiProcInstId())) {
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId, busProcessHistory.getActiProcInstId());
|
||||
}
|
||||
if (StringUtils.isNotEmpty(busProcessHistory.getTaskId())) {
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskId, busProcessHistory.getTaskId());
|
||||
}
|
||||
if (StringUtils.isNotEmpty(busProcessHistory.getUserId())) {
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId, busProcessHistory.getUserId());
|
||||
}
|
||||
if (StringUtils.isNotEmpty(busProcessHistory.getTaskKey())) {
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, busProcessHistory.getTaskKey());
|
||||
}
|
||||
if (StringUtils.isNotEmpty(busProcessHistory.getFlowType())) {
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getFlowType, busProcessHistory.getFlowType());
|
||||
}
|
||||
if (StringUtils.isNotEmpty(busProcessHistory.getTaskStatus())) {
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskStatus, busProcessHistory.getTaskStatus());
|
||||
}
|
||||
if (StringUtils.isNotEmpty(busProcessHistory.getPId())) {
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getPId, busProcessHistory.getPId());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 处理数据
|
||||
*
|
||||
* @param datas
|
||||
*/
|
||||
private List<BusProcessHistory> disposeData(List<BusProcessHistory> datas,String actiProcInstId) {
|
||||
List<BusProcessHistory> results = new ArrayList<>();
|
||||
if (CollectionUtils.isNotEmpty(datas)) {
|
||||
BusProcessName bpn = null;
|
||||
if (StringUtils.isNotEmpty(actiProcInstId)) {
|
||||
QueryWrapper<BusProcessName> bpnQueryWrap = new QueryWrapper<>();
|
||||
bpnQueryWrap.lambda().eq(BusProcessName::getPrcId,actiProcInstId);
|
||||
bpn = this.busProcessNameService.getOne(bpnQueryWrap);
|
||||
}
|
||||
|
||||
for (BusProcessHistory data : datas) {
|
||||
if (StringUtils.isNotEmpty(data.getUserId())) {
|
||||
ResponseMessage<UserVO> assignee = lawsUserInfoService.getByIdFeignClientWithDisabled(data.getUserId());
|
||||
String userName = "";
|
||||
if (assignee.getData() != null) {
|
||||
if (assignee.getData().getDisableFlag() == 1) {
|
||||
userName = assignee.getData().getUname() + "(" + assignee.getData().getUsid() + ")" + "(已禁用)";
|
||||
} else {
|
||||
userName = assignee.getData().getUname() + "(" + assignee.getData().getUsid() + ")";
|
||||
}
|
||||
|
||||
QueryWrapper queryWrapper2 = new QueryWrapper();
|
||||
queryWrapper2.eq("TASK_ID",data.getTaskId());
|
||||
queryWrapper2.orderByDesc("CREATE_TIME");
|
||||
List<BusProcessEntrust> list1 = iBusProcessEntrustService.list(queryWrapper2);
|
||||
if(list1.size()>0){
|
||||
ResponseMessage<UserVO> assignee1 = lawsUserInfoService.getByIdFeignClientWithDisabled(list1.get(0).getUserId());
|
||||
userName = assignee.getData().getUname()+"("+assignee1.getData().getUname()+" 转办)";
|
||||
}
|
||||
} else {
|
||||
userName = data.getUserId();
|
||||
}
|
||||
data.setUserName(userName);
|
||||
}
|
||||
|
||||
data.setTaskStatusShow(TaskStatusEnum.getLabelByValue(data.getTaskStatus()));
|
||||
String taskKeyShow = "";
|
||||
if (StringUtils.equals(data.getFlowType(),FlowTypeEnum.BZZQYJLC.getValue())) {
|
||||
taskKeyShow = StandardCommentNewProcessNodeKeyEnum.getLableByValue(data.getTaskKey());
|
||||
} else if (StringUtils.equals(data.getFlowType(),FlowTypeEnum.QBZXD_JSBZ.getValue())) {
|
||||
taskKeyShow = BussLibraryNodeKeyEnum.getLableByValue(data.getTaskKey());
|
||||
}
|
||||
data.setTaskKeyShow(taskKeyShow);
|
||||
|
||||
if (ObjectUtils.isNotEmpty(bpn)) {
|
||||
data.setPrcName(bpn.getPrcName());
|
||||
data.setPrcId(bpn.getPrcId());
|
||||
data.setPrcNum(bpn.getPrcNum());
|
||||
data.setBpnId(bpn.getId());
|
||||
}
|
||||
}
|
||||
}
|
||||
return results;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void insertBatch(List<BusProcessHistory> busProcessHistoryList) {
|
||||
if (CollectionUtils.isNotEmpty(busProcessHistoryList)) {
|
||||
for (BusProcessHistory busProcessHistory : busProcessHistoryList) {
|
||||
if (StringUtils.isEmpty(busProcessHistory.getId())) {
|
||||
busProcessHistory.setId(UUID.randomUUID().toString());
|
||||
}
|
||||
|
||||
String imgShowColor = "0";
|
||||
if (StringUtils.isNotEmpty(busProcessHistory.getTaskStatus())) {
|
||||
if (StringUtils.equals(busProcessHistory.getTaskStatus(),TaskStatusEnum.DONE.getValue())) {
|
||||
imgShowColor = "2";
|
||||
}
|
||||
}
|
||||
busProcessHistory.setImgShowColor(imgShowColor);
|
||||
busProcessHistory.setImgShowFlag("1");
|
||||
busProcessHistory.setCreateTime(new Date());
|
||||
}
|
||||
this.saveBatch(busProcessHistoryList);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateBatch(List<BusProcessHistory> busProcessHistoryList) {
|
||||
if (CollectionUtils.isNotEmpty(busProcessHistoryList)) {
|
||||
this.updateBatchById(busProcessHistoryList);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateTaskInfo(DelegateTask delegateTask) {
|
||||
BusProcessHistory bph = new BusProcessHistory();
|
||||
bph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
bph.setTaskKey(delegateTask.getTaskDefinitionKey());
|
||||
bph.setUserId(delegateTask.getAssignee());
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
this.setQueryCondition(bph, bphQueryWrap);
|
||||
bphQueryWrap.isNull("task_id");
|
||||
List<BusProcessHistory> bphList = this.list(bphQueryWrap);
|
||||
if (CollectionUtils.isNotEmpty(bphList)) {
|
||||
BusProcessHistory busProcessHistory = bphList.get(0);
|
||||
busProcessHistory.setTaskId(delegateTask.getId());
|
||||
busProcessHistory.setTaskStatus(TaskStatusEnum.TODO.getValue());
|
||||
busProcessHistory.setImgShowColor("1");
|
||||
super.updateById(busProcessHistory);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void complete(BusMes busMes) {
|
||||
BusProcessHistory bph = new BusProcessHistory();
|
||||
bph.setTaskId(busMes.getTaskId());
|
||||
List<BusProcessHistory> bphList = this.queryByList(bph);
|
||||
if (CollectionUtils.isNotEmpty(bphList)) {
|
||||
JSONObject jsonObject = JSONObject.parseObject(busMes.getJson());
|
||||
bphList.forEach(busProcessHistory -> {
|
||||
busProcessHistory.setTaskStatus(TaskStatusEnum.DONE.getValue());
|
||||
busProcessHistory.setEndTime(new Date());
|
||||
busProcessHistory.setCommitText(jsonObject.getString("commentText"));
|
||||
busProcessHistory.setImgShowColor("2");
|
||||
});
|
||||
this.updateBatch(bphList);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMaxOrderNum(String actiProcInstId, String taskKey) {
|
||||
int result = 0;
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,actiProcInstId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey,taskKey);
|
||||
bphQueryWrap.orderByDesc("order_num");
|
||||
List<BusProcessHistory> list = this.list(bphQueryWrap);
|
||||
if (CollectionUtils.isNotEmpty(list)) {
|
||||
result = list.get(0).getOrderNum();
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param actiProcInstId 流程实例id
|
||||
* @param orderNum 排序号
|
||||
* @param dataNum 数据数量
|
||||
*/
|
||||
@Override
|
||||
public void updateOrderNum(String actiProcInstId, int orderNum ,int dataNum) {
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,actiProcInstId);
|
||||
bphQueryWrap.lambda().gt(BusProcessHistory::getOrderNum,orderNum);
|
||||
bphQueryWrap.isNull("task_id");
|
||||
List<BusProcessHistory> list = this.list(bphQueryWrap);
|
||||
if (CollectionUtils.isNotEmpty(list)) {
|
||||
for (BusProcessHistory busProcessHistory : list) {
|
||||
busProcessHistory.setOrderNum(busProcessHistory.getOrderNum() + dataNum);
|
||||
}
|
||||
this.updateBatch(list);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String,Object>> getImgDataList(BusProcessHistory busProcessHistory) {
|
||||
List<Map<String, Object>> result = new ArrayList<>();
|
||||
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
this.setQueryCondition(busProcessHistory, bphQueryWrap);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getImgShowFlag,"1");
|
||||
bphQueryWrap.orderByAsc("order_num", "create_time");
|
||||
List<BusProcessHistory> bphList = this.list(bphQueryWrap);
|
||||
this.disposeData(bphList,busProcessHistory.getActiProcInstId());
|
||||
|
||||
FlowTypeEnum flowTypeEnum = FlowTypeEnum.getFlowTypeEnumByValue(busProcessHistory.getFlowType());
|
||||
switch (flowTypeEnum) {
|
||||
case BZZQYJLC:
|
||||
result = this.getBzzqyjlcImgDataList(bphList);
|
||||
break;
|
||||
case QBZXD_JSBZ:
|
||||
result = this.getQbzxdJsbzImgDataList(bphList);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void changeUserIdByTaskId(String taskId,String afterUserId,String frontUserId) {
|
||||
if (StringUtils.isNotEmpty(taskId) && StringUtils.isNotEmpty(afterUserId) && StringUtils.isNotEmpty(frontUserId)) {
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskId, taskId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,frontUserId);
|
||||
BusProcessHistory bph = this.getOne(bphQueryWrap);
|
||||
if (ObjectUtils.isNotEmpty(bph)) {
|
||||
bph.setUserId(afterUserId);
|
||||
this.updateById(bph);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateImgShowColor(String actiProcInstId, List<String> inTaskKeyList, List<String> notInTaskKeyList,String imgShowColor) {
|
||||
if (CollectionUtils.isEmpty(inTaskKeyList) && CollectionUtils.isEmpty(notInTaskKeyList)) {
|
||||
throw new ActivitiException("参数有误!");
|
||||
}
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId, actiProcInstId);
|
||||
if (CollectionUtils.isNotEmpty(inTaskKeyList)) {
|
||||
bphQueryWrap.lambda().in(BusProcessHistory::getTaskKey,inTaskKeyList);
|
||||
}
|
||||
if (CollectionUtils.isNotEmpty(notInTaskKeyList)) {
|
||||
bphQueryWrap.lambda().notIn(BusProcessHistory::getTaskKey,notInTaskKeyList);
|
||||
}
|
||||
List<BusProcessHistory> bphList = this.list(bphQueryWrap);
|
||||
if (CollectionUtils.isNotEmpty(bphList)) {
|
||||
for (BusProcessHistory bph : bphList) {
|
||||
bph.setImgShowColor(imgShowColor);
|
||||
}
|
||||
this.updateBatchById(bphList);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateImgShowFlag(String actiProcInstId, List<String> inTaskKeyList, List<String> notInTaskKeyList, String imgShowFlag) {
|
||||
if (CollectionUtils.isEmpty(inTaskKeyList) && CollectionUtils.isEmpty(notInTaskKeyList)) {
|
||||
throw new ActivitiException("参数有误!");
|
||||
}
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId, actiProcInstId);
|
||||
if (CollectionUtils.isNotEmpty(inTaskKeyList)) {
|
||||
bphQueryWrap.lambda().in(BusProcessHistory::getTaskKey,inTaskKeyList);
|
||||
}
|
||||
if (CollectionUtils.isNotEmpty(notInTaskKeyList)) {
|
||||
bphQueryWrap.lambda().notIn(BusProcessHistory::getTaskKey,notInTaskKeyList);
|
||||
}
|
||||
List<BusProcessHistory> bphList = this.list(bphQueryWrap);
|
||||
if (CollectionUtils.isNotEmpty(bphList)) {
|
||||
for (BusProcessHistory bph : bphList) {
|
||||
bph.setImgShowFlag(imgShowFlag);
|
||||
}
|
||||
this.updateBatchById(bphList);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取标准征求意见流程图数据
|
||||
* @param bphList
|
||||
* @return
|
||||
*/
|
||||
private List<Map<String, Object>> getBzzqyjlcImgDataList(List<BusProcessHistory> bphList) {
|
||||
List<Map<String, Object>> result = new ArrayList<>();
|
||||
|
||||
List<StandardCommentNewProcessNodeKeyEnum> standardCommentNewProcessNodeKeyEnum = StandardCommentNewProcessNodeKeyEnum.getStandardCommentNewProcessNodeKeyEnum();
|
||||
for (StandardCommentNewProcessNodeKeyEnum nodeKeyEnum : standardCommentNewProcessNodeKeyEnum) {
|
||||
Map<String, Object> tasksMap = this.getTasksMap(
|
||||
bphList,
|
||||
nodeKeyEnum.getValue(),
|
||||
nodeKeyEnum.getLable()
|
||||
);
|
||||
if (ObjectUtils.isNotEmpty(tasksMap)) {
|
||||
result.add(tasksMap);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
/**
|
||||
* 获取企标制修订-技术标准流程图数据
|
||||
* @param bphList
|
||||
* @return
|
||||
*/
|
||||
private List<Map<String, Object>> getQbzxdJsbzImgDataList(List<BusProcessHistory> bphList) {
|
||||
List<Map<String, Object>> result = new ArrayList<>();
|
||||
List<BussLibraryNodeKeyEnum> bussLibraryNodeKeyEnum = BussLibraryNodeKeyEnum.getBussLibraryNodeKeyEnum();
|
||||
for (BussLibraryNodeKeyEnum nodeKeyEnum : bussLibraryNodeKeyEnum) {
|
||||
Map<String, Object> tasksMap = this.getTasksMap(
|
||||
bphList,
|
||||
nodeKeyEnum.getValue(),
|
||||
nodeKeyEnum.getLable()
|
||||
);
|
||||
if (ObjectUtils.isNotEmpty(tasksMap)) {
|
||||
result.add(tasksMap);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
private Map<String, Object> getTasksMap(List<BusProcessHistory> bphList,String taskKey,String taskKeyName) {
|
||||
Map<String, Object> tasksMap = new HashMap<>();
|
||||
if (CollectionUtils.isNotEmpty(bphList)) {
|
||||
List<BusProcessHistory> bphListByTaskKey = bphList.stream().filter(bph -> {
|
||||
boolean flag = false;
|
||||
if (StringUtils.equals(bph.getTaskKey(), taskKey)) {
|
||||
flag = true;
|
||||
}
|
||||
return flag;
|
||||
}).distinct().collect(Collectors.toList());
|
||||
String taskStatus = "";
|
||||
String userNames = "";
|
||||
if (CollectionUtils.isNotEmpty(bphListByTaskKey)) {
|
||||
userNames = bphListByTaskKey.stream().filter(bph -> {
|
||||
boolean flag = false;
|
||||
if (StringUtils.isNotEmpty(bph.getUserName())) {
|
||||
flag = true;
|
||||
}
|
||||
return flag;
|
||||
}).map(BusProcessHistory::getUserName).distinct().collect(Collectors.joining(","));
|
||||
taskStatus = TaskStatusEnum.DONE.getValue();
|
||||
for (BusProcessHistory busProcessHistory : bphListByTaskKey) {
|
||||
|
||||
if (StringUtils.equals(busProcessHistory.getIsMany(),"1")) {
|
||||
List<BusProcessHistory> childList = bphList.stream().filter(bph -> StringUtils.equals(busProcessHistory.getId(), bph.getManyPId())).distinct().collect(Collectors.toList());
|
||||
if (CollectionUtils.isNotEmpty(childList)) {
|
||||
for (BusProcessHistory history : childList) {
|
||||
busProcessHistory.setTaskId(busProcessHistory.getId());
|
||||
busProcessHistory.setTaskStatus(TaskStatusEnum.DONE.getValue());
|
||||
// if (StringUtils.equals(history.getTaskStatus(),TaskStatusEnum.TODO.getValue()) || StringUtils.equals(history.getTaskStatus(),TaskStatusEnum.RECEIVED.getValue())) {
|
||||
// busProcessHistory.setTaskStatus(TaskStatusEnum.TODO.getValue());
|
||||
// busProcessHistory.setTaskId(null);
|
||||
// break;
|
||||
// }
|
||||
|
||||
if (StringUtils.equals(history.getImgShowColor(), "2")) {
|
||||
busProcessHistory.setImgShowColor(history.getImgShowColor());
|
||||
} else if (StringUtils.equals(history.getImgShowColor(), "1")) {
|
||||
busProcessHistory.setImgShowColor(history.getImgShowColor());
|
||||
break;
|
||||
} else if (StringUtils.equals(history.getImgShowColor(), "0")) {
|
||||
busProcessHistory.setImgShowColor(history.getImgShowColor());
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// if (StringUtils.isEmpty(busProcessHistory.getTaskId())
|
||||
// || StringUtils.equals(busProcessHistory.getTaskStatus(), TaskStatusEnum.TODO.getValue())
|
||||
// || StringUtils.equals(busProcessHistory.getTaskStatus(), TaskStatusEnum.RECEIVED.getValue())) {
|
||||
// taskStatus = TaskStatusEnum.TODO.getValue();
|
||||
// break;
|
||||
// }
|
||||
// 如果是蓝色,设置为已办,接着往下循环,如果是绿色,设置为待办,直接终止循环,如果是白色,接着往下循环。
|
||||
// if (StringUtils.equals(busProcessHistory.getImgShowColor(), "2")) {
|
||||
// taskStatus = TaskStatusEnum.DONE.getValue();
|
||||
// } else if (StringUtils.equals(busProcessHistory.getImgShowColor(), "1")) {
|
||||
// taskStatus = TaskStatusEnum.TODO.getValue();
|
||||
// break;
|
||||
// } else if (StringUtils.equals(busProcessHistory.getImgShowColor(), "0")) {
|
||||
// taskStatus = "";
|
||||
// continue;
|
||||
// }
|
||||
}
|
||||
|
||||
Map<String, List<BusProcessHistory>> map = bphListByTaskKey.stream().collect(Collectors.groupingBy(BusProcessHistory::getImgShowColor));
|
||||
if (map.containsKey("0")) {
|
||||
taskStatus = "";
|
||||
}
|
||||
|
||||
// 如果该节点数据,存在绿色展示数据,则设置为绿色。
|
||||
if (map.containsKey("2")) {
|
||||
taskStatus = TaskStatusEnum.DONE.getValue();
|
||||
}
|
||||
|
||||
// 如果该节点数据,存在绿色展示数据,则设置为绿色。
|
||||
if (map.containsKey("1")) {
|
||||
taskStatus = TaskStatusEnum.TODO.getValue();
|
||||
}
|
||||
}
|
||||
tasksMap.put("taskKey", taskKey);
|
||||
tasksMap.put("taskKeyName", taskKeyName);
|
||||
tasksMap.put("userNames", userNames);
|
||||
// 任务状态
|
||||
tasksMap.put("taskStatus", taskStatus);
|
||||
tasksMap.put("taskList", bphListByTaskKey);
|
||||
}
|
||||
return tasksMap;
|
||||
}
|
||||
}
|
||||
+10
@@ -24,6 +24,7 @@ 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_oa.webService.service.WebServiceOAService;
|
||||
import com.ydw.bat.wkflow.business_oa.webService.todoContent.NotifyTodoSendContext;
|
||||
import com.ydw.bat.wkflow.business_oa.webService.todoContent.SendOAContent;
|
||||
import com.ydw.bat.wkflow.business_oa.webService.todoResult.NotifyTodoAppResult;
|
||||
import com.ydw.bat.wkflow.business_wkflow.form.dto.FormSubmitDto;
|
||||
import com.ydw.bat.wkflow.business_wkflow.form.service.FormValsService;
|
||||
@@ -73,4 +74,13 @@ public class WebServiceOAController extends BaseAction {
|
||||
return webServiceOAService.sendTodo(new BusProcessNew());
|
||||
}
|
||||
|
||||
@ApiOperation("代主服务发送OA请求")
|
||||
@PostMapping("/replaceSendOA")
|
||||
public Wrapper<String> replaceSendOA(@RequestBody SendOAContent sendOAContent) {
|
||||
logger.info("收到主服务请求------------------------------------");
|
||||
logger.info("请求参数:{}", JSON.toJSONString(sendOAContent));
|
||||
String result = webServiceOAService.replaceSendOA(sendOAContent);
|
||||
return WrapMapper.ok(result);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+2
-2
@@ -2,12 +2,11 @@ package com.ydw.bat.wkflow.business_oa.webService.service;
|
||||
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_oa.webService.todoContent.NotifyTodoSendContext;
|
||||
import com.ydw.bat.wkflow.business_oa.webService.todoContent.SendOAContent;
|
||||
import com.ydw.bat.wkflow.business_oa.webService.todoResult.NotifyTodoAppDeleteResult;
|
||||
import com.ydw.bat.wkflow.business_oa.webService.todoResult.NotifyTodoAppResult;
|
||||
import org.activiti.engine.task.Task;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface WebServiceOAService {
|
||||
|
||||
void deleteOAByPid(String pId);
|
||||
@@ -26,4 +25,5 @@ public interface WebServiceOAService {
|
||||
|
||||
NotifyTodoAppResult sendToBeRead(BusProcessNew busProcessNew) throws Exception;
|
||||
|
||||
String replaceSendOA(SendOAContent sendOAContent);
|
||||
}
|
||||
|
||||
+6
@@ -16,6 +16,7 @@ import com.ydw.bat.wkflow.business_oa.webService.service.WebServiceOAService;
|
||||
import com.ydw.bat.wkflow.business_oa.webService.todoContent.HEAD;
|
||||
import com.ydw.bat.wkflow.business_oa.webService.todoContent.JsonSend;
|
||||
import com.ydw.bat.wkflow.business_oa.webService.todoContent.NotifyTodoSendContext;
|
||||
import com.ydw.bat.wkflow.business_oa.webService.todoContent.SendOAContent;
|
||||
import com.ydw.bat.wkflow.business_oa.webService.todoResult.NotifyTodoAppDeleteResult;
|
||||
import com.ydw.bat.wkflow.business_oa.webService.todoResult.NotifyTodoAppResult;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
@@ -560,5 +561,10 @@ public class WebServiceOAServiceImpl implements WebServiceOAService {
|
||||
}
|
||||
return notifyTodoAppResult;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String replaceSendOA(SendOAContent sendOAContent) {
|
||||
return okHttpUtil.postForJson(sendOAContent.getUrl(), sendOAContent.getJson(), sendOAContent.getHeaderParams());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
package com.ydw.bat.wkflow.business_oa.webService.todoContent;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @author wxyclub
|
||||
* @description
|
||||
* @date 2024-03-31
|
||||
*/
|
||||
@Data
|
||||
public class SendOAContent implements Serializable {
|
||||
|
||||
String url;
|
||||
|
||||
String json;
|
||||
|
||||
Map<String, String> headerParams;
|
||||
}
|
||||
+153
@@ -5,18 +5,24 @@ import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.tmsps.fk.common.util.JsonUtil;
|
||||
import com.ydw.bat.wkflow.business_auth.LawsUserInfoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
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.IBusProcessHistoryService;
|
||||
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_slrs.dao.SarPublicIdea;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.StandardCommentNewProcessNodeKeyEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.TaskStatusEnum;
|
||||
import com.ydw.bat.wkflow.util.http.ResponseMessage;
|
||||
import org.activiti.engine.ActivitiException;
|
||||
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.text.SimpleDateFormat;
|
||||
@@ -160,5 +166,152 @@ public class StartSurveyAfter implements TaskListener {
|
||||
if(!result.isOk()){
|
||||
throw new ActivitiException("发起公开征求意见失败");
|
||||
}
|
||||
this.addBusProcessHistory(object,delegateTask);
|
||||
}
|
||||
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask){
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
|
||||
// 起草
|
||||
BusProcessHistory qcBph = new BusProcessHistory();
|
||||
qcBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
qcBph.setUserId(delegateTask.getAssignee());
|
||||
qcBph.setTaskId(delegateTask.getId());
|
||||
qcBph.setTaskKey(delegateTask.getTaskDefinitionKey());
|
||||
qcBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
qcBph.setIsSub("2");
|
||||
qcBph.setTaskStatus(TaskStatusEnum.DONE.getValue());
|
||||
qcBph.setEndTime(new Date());
|
||||
qcBph.setCommitText(json.getString("commentText"));
|
||||
qcBph.setIsMany("2");
|
||||
qcBph.setOrderNum(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION1.getOrderNum());
|
||||
bphList.add(qcBph);
|
||||
|
||||
// 子流程
|
||||
// 子流程主键id
|
||||
// String subId = UUID.randomUUID().toString();
|
||||
// delegateTask.setVariable("subId",subId);
|
||||
//
|
||||
// BusProcessHistory zlcBph = new BusProcessHistory();
|
||||
// zlcBph.setId(subId);
|
||||
// zlcBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
// zlcBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
// zlcBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.SUB_PROCESS.getValue());
|
||||
// zlcBph.setIsSub("1");
|
||||
// bphList.add(zlcBph);
|
||||
|
||||
List<String> zrUserIdList = new ArrayList<>();
|
||||
if (json.getString("dockUserList").contains(",")){
|
||||
zrUserIdList.addAll(new ArrayList<>(Arrays.asList(json.getString("dockUserList").split(","))));
|
||||
}else {
|
||||
zrUserIdList.add(json.getString("dockUserList"));
|
||||
}
|
||||
|
||||
if (CollectionUtils.isNotEmpty(zrUserIdList)) {
|
||||
for (String zrUserId : zrUserIdList) {
|
||||
// 任务分发
|
||||
BusProcessHistory rwffBph = new BusProcessHistory();
|
||||
rwffBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
rwffBph.setUserId(zrUserId);
|
||||
rwffBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION2.getValue());
|
||||
rwffBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
rwffBph.setOrderNum(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION2.getOrderNum());
|
||||
rwffBph.setIsSub("2");
|
||||
rwffBph.setIsMany("2");
|
||||
bphList.add(rwffBph);
|
||||
|
||||
// // 意见汇总审批
|
||||
// BusProcessHistory yjhzspBph = new BusProcessHistory();
|
||||
// yjhzspBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
// yjhzspBph.setUserId(zrUserId);
|
||||
// yjhzspBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION4.getValue());
|
||||
// yjhzspBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
// yjhzspBph.setOrderNum(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION4.getOrderNum());
|
||||
// yjhzspBph.setIsSub("2");
|
||||
// yjhzspBph.setIsMany("2");
|
||||
// bphList.add(yjhzspBph);
|
||||
|
||||
/*// 意见审批
|
||||
String spId = json.getString("spId");
|
||||
BusProcessHistory yjspBph = new BusProcessHistory();
|
||||
yjspBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
yjspBph.setUserId(spId);
|
||||
yjspBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION5.getValue());
|
||||
yjspBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
yjspBph.setOrderNum(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION5.getOrderNum());
|
||||
yjspBph.setIsSub("2");
|
||||
yjspBph.setIsMany("2");
|
||||
bphList.add(yjspBph);
|
||||
|
||||
// 管理员
|
||||
String bzfgId = json.getString("bzfgId");
|
||||
BusProcessHistory glyBph = new BusProcessHistory();
|
||||
glyBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
glyBph.setUserId(bzfgId);
|
||||
glyBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION6.getValue());
|
||||
glyBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
glyBph.setOrderNum(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION6.getOrderNum());
|
||||
glyBph.setIsSub("2");
|
||||
glyBph.setIsMany("2");
|
||||
bphList.add(glyBph);*/
|
||||
}
|
||||
}
|
||||
|
||||
// 意见处理
|
||||
String bzfgIdSum = json.getString("startUser");
|
||||
BusProcessHistory yjclBph = new BusProcessHistory();
|
||||
yjclBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
yjclBph.setUserId(bzfgIdSum);
|
||||
yjclBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION7.getValue());
|
||||
yjclBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
yjclBph.setOrderNum(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION7.getOrderNum());
|
||||
yjclBph.setIsSub("2");
|
||||
yjclBph.setIsMany("2");
|
||||
bphList.add(yjclBph);
|
||||
|
||||
// 批准
|
||||
String presidentUser = json.getString("presidentUser");
|
||||
BusProcessHistory pzBph = new BusProcessHistory();
|
||||
pzBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
pzBph.setUserId(presidentUser);
|
||||
pzBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION11.getValue());
|
||||
pzBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
pzBph.setOrderNum(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION11.getOrderNum());
|
||||
pzBph.setIsSub("2");
|
||||
pzBph.setIsMany("2");
|
||||
bphList.add(pzBph);
|
||||
|
||||
// 审定
|
||||
if (StringUtils.isNotEmpty(json.getString("directorUser"))) {
|
||||
// 审定节点父节点信息
|
||||
BusProcessHistory sdPBph = new BusProcessHistory();
|
||||
String sdPBphId = UUID.randomUUID().toString();
|
||||
sdPBph.setId(sdPBphId);
|
||||
sdPBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
sdPBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION10.getValue());
|
||||
sdPBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
sdPBph.setOrderNum(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION10.getOrderNum());
|
||||
sdPBph.setIsSub("2");
|
||||
sdPBph.setIsMany("1");
|
||||
bphList.add(sdPBph);
|
||||
|
||||
List<String> directorUserList = Arrays.asList(json.getString("directorUser").split(","));
|
||||
for (String sdUserId : directorUserList) {
|
||||
BusProcessHistory sdBph = new BusProcessHistory();
|
||||
sdBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
sdBph.setUserId(sdUserId);
|
||||
sdBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION10.getValue());
|
||||
sdBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
sdBph.setOrderNum(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION10.getOrderNum());
|
||||
sdBph.setIsSub("2");
|
||||
sdBph.setIsMany("1");
|
||||
sdBph.setManyPId(sdPBphId);
|
||||
bphList.add(sdBph);
|
||||
}
|
||||
}
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
}
|
||||
}
|
||||
|
||||
+46
-4
@@ -3,18 +3,21 @@ package com.ydw.bat.wkflow.listener.StandardCommentNewProcess;
|
||||
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_auth.LawsUserInfoService;
|
||||
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.entity.ResponseMessage;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.*;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessHistoryService;
|
||||
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_slrs.dao.SarPublicIdeaAll;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.StandardCommentNewProcessNodeKeyEnum;
|
||||
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 org.springframework.beans.BeanUtils;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
@@ -168,5 +171,44 @@ public class Step10After implements TaskListener {
|
||||
busProcessNewNext.setPrcName(prcName);
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
this.addBusProcessHistory(object,delegateTask);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加节点流程历史
|
||||
* @param json
|
||||
* @param delegateTask
|
||||
*/
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
String presidentFlag = (String) delegateTask.getVariable("presidentFlag");
|
||||
// 如果是驳回,流程走向意见处理节点,否则流程结束
|
||||
if (StringUtils.equals(presidentFlag,"1")) {
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION11.getValue());
|
||||
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 流程走向意见处理节点
|
||||
String bzfgIdSum = json.getString("startUser");
|
||||
BusProcessHistory yjclBph = new BusProcessHistory();
|
||||
yjclBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
yjclBph.setUserId(bzfgIdSum);
|
||||
yjclBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION7.getValue());
|
||||
yjclBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
yjclBph.setOrderNum(orderNum);
|
||||
yjclBph.setIsSub("2");
|
||||
yjclBph.setIsMany("2");
|
||||
bphList.add(yjclBph);
|
||||
bphService.insertBatch(bphList);
|
||||
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size());
|
||||
|
||||
// 退回到了 意见处理,将会签、审核、审定、批准 节点 设置为在流程图展示空白
|
||||
List<String> taskKeyList = new ArrayList<>();
|
||||
taskKeyList.add(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION8.getValue());
|
||||
taskKeyList.add(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION9.getValue());
|
||||
taskKeyList.add(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION10.getValue());
|
||||
taskKeyList.add(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION11.getValue());
|
||||
bphService.updateImgShowColor(delegateTask.getProcessInstanceId(),taskKeyList,null,"0");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.ydw.bat.wkflow.listener.StandardCommentNewProcess;
|
||||
|
||||
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.IBusProcessHistoryService;
|
||||
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;
|
||||
@@ -30,5 +31,8 @@ public class Step10Before implements TaskListener {
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,18 +3,24 @@ package com.ydw.bat.wkflow.listener.StandardCommentNewProcess;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_auth.LawsUserInfoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
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.IBusProcessHistoryService;
|
||||
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_slrs.dao.SarPublicIdea;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.StandardCommentNewProcessNodeKeyEnum;
|
||||
import com.ydw.bat.wkflow.util.http.ResponseMessage;
|
||||
import org.activiti.engine.ActivitiException;
|
||||
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.text.SimpleDateFormat;
|
||||
import java.util.*;
|
||||
@@ -121,5 +127,48 @@ public class Step1After implements TaskListener {
|
||||
busProcessNewNext.setUserId(delegateTask.getVariable("dockUser",String.class));
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
|
||||
this.addBusProcessHistory(object,delegateTask);
|
||||
}
|
||||
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
List<String> yjfkUserIdList = Arrays.asList(json.getString("responUserList").split(","));
|
||||
// 意见反馈
|
||||
if (CollectionUtils.isNotEmpty(yjfkUserIdList)) {
|
||||
String yjfkPBphId = (String) delegateTask.getVariable("yjfkPBphId");
|
||||
if (StringUtils.isEmpty(yjfkPBphId)) {
|
||||
BusProcessHistory yjfkPBph = new BusProcessHistory();
|
||||
yjfkPBphId = UUID.randomUUID().toString();
|
||||
yjfkPBph.setId(yjfkPBphId);
|
||||
yjfkPBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
yjfkPBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION3.getValue());
|
||||
yjfkPBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
yjfkPBph.setOrderNum(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION3.getOrderNum());
|
||||
yjfkPBph.setIsSub("2");
|
||||
yjfkPBph.setIsMany("1");
|
||||
bphList.add(yjfkPBph);
|
||||
}
|
||||
|
||||
for (String yjfkUserId : yjfkUserIdList) {
|
||||
BusProcessHistory yjfkBph = new BusProcessHistory();
|
||||
yjfkBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
yjfkBph.setUserId(yjfkUserId);
|
||||
yjfkBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION3.getValue());
|
||||
yjfkBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
yjfkBph.setOrderNum(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION3.getOrderNum());
|
||||
yjfkBph.setIsSub("2");
|
||||
yjfkBph.setIsMany("1");
|
||||
yjfkBph.setManyPId(yjfkPBphId);
|
||||
yjfkBph.setParentUserId(delegateTask.getAssignee());
|
||||
bphList.add(yjfkBph);
|
||||
}
|
||||
|
||||
delegateTask.setVariable("yjfkPBphId",yjfkPBphId);
|
||||
}
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,12 +1,16 @@
|
||||
package com.ydw.bat.wkflow.listener.StandardCommentNewProcess;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessHistoryService;
|
||||
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.TaskStatusEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -32,5 +36,9 @@ public class Step1Before implements TaskListener {
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,13 +4,18 @@ import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_auth.LawsUserInfoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
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.IBusProcessHistoryService;
|
||||
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 com.ydw.bat.wkflow.util.enums.StandardCommentNewProcessNodeKeyEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.TaskStatusEnum;
|
||||
import org.activiti.engine.ActivitiException;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
@@ -111,5 +116,43 @@ public class Step2After implements TaskListener {
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
}
|
||||
|
||||
this.addBusProcessHistory(object,delegateTask);
|
||||
}
|
||||
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask){
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
// 根据当前taskId
|
||||
QueryWrapper<BusProcessHistory> queryWrapByTaskId = new QueryWrapper<>();
|
||||
queryWrapByTaskId.lambda().eq(BusProcessHistory::getTaskId,delegateTask.getId());
|
||||
queryWrapByTaskId.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId());
|
||||
BusProcessHistory bphByTaskId = bphService.list(queryWrapByTaskId).get(0);
|
||||
|
||||
// 根据分发人用户id、流程实例id,流程节点定义key,任务状态为待办 查询 , 如果存在待办,则不做任何操作,如果不存在,则给分发人创建一条意见汇总审批的任务。
|
||||
String parentUserId = bphByTaskId.getParentUserId();
|
||||
QueryWrapper<BusProcessHistory> queryWrap = new QueryWrapper<>();
|
||||
queryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId());
|
||||
queryWrap.lambda().eq(BusProcessHistory::getParentUserId,parentUserId);
|
||||
queryWrap.lambda().eq(BusProcessHistory::getTaskKey,StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION3.getValue());
|
||||
queryWrap.lambda().eq(BusProcessHistory::getTaskStatus, TaskStatusEnum.TODO.getValue());
|
||||
queryWrap.lambda().ne(BusProcessHistory::getTaskId,delegateTask.getId());
|
||||
|
||||
int count = bphService.count(queryWrap);
|
||||
if (count == 0) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
|
||||
// 意见汇总审批
|
||||
BusProcessHistory yjhzspBph = new BusProcessHistory();
|
||||
yjhzspBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
yjhzspBph.setUserId(parentUserId);
|
||||
yjhzspBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION4.getValue());
|
||||
yjhzspBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
yjhzspBph.setOrderNum(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION4.getOrderNum());
|
||||
yjhzspBph.setIsSub("2");
|
||||
yjhzspBph.setIsMany("2");
|
||||
bphList.add(yjhzspBph);
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.ydw.bat.wkflow.listener.StandardCommentNewProcess;
|
||||
|
||||
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.IBusProcessHistoryService;
|
||||
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;
|
||||
@@ -32,5 +33,7 @@ public class Step2Before implements TaskListener {
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,15 +3,20 @@ package com.ydw.bat.wkflow.listener.StandardCommentNewProcess;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_auth.LawsUserInfoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
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.IBusProcessHistoryService;
|
||||
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 com.ydw.bat.wkflow.util.enums.StandardCommentNewProcessNodeKeyEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
@@ -87,5 +92,38 @@ public class Step3After implements TaskListener {
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
}
|
||||
this.addBusProcessHistory(object,delegateTask);
|
||||
}
|
||||
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
String spId = json.getString("spId");
|
||||
|
||||
// 如果存在批准节点的数据,taskId为空。 不用添加,否则就是退回过 需要添加。
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,spId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION5.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 意见审批
|
||||
BusProcessHistory pzBph = new BusProcessHistory();
|
||||
pzBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
pzBph.setUserId(spId);
|
||||
pzBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION5.getValue());
|
||||
pzBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
pzBph.setIsSub("2");
|
||||
pzBph.setIsMany("2");
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION4.getValue());
|
||||
pzBph.setOrderNum(orderNum + 1);
|
||||
|
||||
bphList.add(pzBph);
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.ydw.bat.wkflow.listener.StandardCommentNewProcess;
|
||||
|
||||
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.IBusProcessHistoryService;
|
||||
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;
|
||||
@@ -31,5 +32,7 @@ public class Step3Before implements TaskListener {
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,15 +3,22 @@ package com.ydw.bat.wkflow.listener.StandardCommentNewProcess;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_auth.LawsUserInfoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
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.IBusProcessHistoryService;
|
||||
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.BussLibraryNodeKeyEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.StandardCommentNewProcessNodeKeyEnum;
|
||||
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.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
@@ -93,5 +100,66 @@ public class Step4After implements TaskListener {
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
}
|
||||
this.addBusProcessHistory(object,delegateTask);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加节点流程历史
|
||||
* @param json
|
||||
* @param delegateTask
|
||||
*/
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
String spFlag = json.getString("spFlag");
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
|
||||
// 如果是驳回,流程走向意见处理节点,否则流程结束
|
||||
if (!StringUtils.equals(spFlag,"0")) {
|
||||
String zrUserId = json.getString("SKS");
|
||||
// 意见汇总审批
|
||||
BusProcessHistory yjhzspBph = new BusProcessHistory();
|
||||
yjhzspBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
yjhzspBph.setUserId(zrUserId);
|
||||
yjhzspBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION4.getValue());
|
||||
yjhzspBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION5.getValue());
|
||||
yjhzspBph.setOrderNum(orderNum + 1);
|
||||
yjhzspBph.setIsSub("2");
|
||||
yjhzspBph.setIsMany("2");
|
||||
bphList.add(yjhzspBph);
|
||||
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size());
|
||||
|
||||
// 退回到了 意见汇总报批,将意见审批节点 设置为在流程图展示空白
|
||||
List<String> taskKeyList = new ArrayList<>();
|
||||
taskKeyList.add(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION5.getValue());
|
||||
bphService.updateImgShowColor(delegateTask.getProcessInstanceId(),taskKeyList,null,"0");
|
||||
} else {
|
||||
String bzfgId = json.getString("bzfgId");
|
||||
// 如果存在批准节点的数据,taskId为空。 不用添加,否则就是退回过 需要添加。
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,bzfgId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey,StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION6.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
// 管理员
|
||||
BusProcessHistory glyBph = new BusProcessHistory();
|
||||
glyBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
glyBph.setUserId(bzfgId);
|
||||
glyBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION6.getValue());
|
||||
glyBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION5.getValue());
|
||||
glyBph.setOrderNum(orderNum + 1);
|
||||
glyBph.setIsSub("2");
|
||||
glyBph.setIsMany("2");
|
||||
glyBph.setParentUserId(delegateTask.getAssignee());
|
||||
bphList.add(glyBph);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size());
|
||||
}
|
||||
}
|
||||
bphService.insertBatch(bphList);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.ydw.bat.wkflow.listener.StandardCommentNewProcess;
|
||||
|
||||
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.IBusProcessHistoryService;
|
||||
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;
|
||||
@@ -31,5 +32,8 @@ public class Step4Before implements TaskListener {
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,15 +4,20 @@ import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_auth.LawsUserInfoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
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.IBusProcessHistoryService;
|
||||
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 com.ydw.bat.wkflow.util.enums.StandardCommentNewProcessNodeKeyEnum;
|
||||
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;
|
||||
@@ -121,5 +126,40 @@ public class Step5After implements TaskListener {
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
}
|
||||
this.addBusProcessHistory(object,delegateTask);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加节点流程历史
|
||||
* @param json
|
||||
* @param delegateTask
|
||||
*/
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
String bzFlag = json.getString("bzFlag");
|
||||
// 如果是驳回,流程走向意见处理节点
|
||||
if (!StringUtils.equals(bzFlag,"0")) {
|
||||
String zrUserId = json.getString("SKS");
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 意见汇总审批
|
||||
BusProcessHistory yjhzspBph = new BusProcessHistory();
|
||||
yjhzspBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
yjhzspBph.setUserId(zrUserId);
|
||||
yjhzspBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION4.getValue());
|
||||
yjhzspBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION6.getValue());
|
||||
yjhzspBph.setOrderNum(orderNum + 1);
|
||||
yjhzspBph.setIsSub("2");
|
||||
yjhzspBph.setIsMany("2");
|
||||
bphList.add(yjhzspBph);
|
||||
bphService.insertBatch(bphList);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size());
|
||||
|
||||
// 退回到了 意见汇总报批,将意见审批、管理员节点 设置为在流程图展示空白
|
||||
List<String> taskKeyList = new ArrayList<>();
|
||||
taskKeyList.add(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION5.getValue());
|
||||
taskKeyList.add(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION6.getValue());
|
||||
bphService.updateImgShowColor(delegateTask.getProcessInstanceId(),taskKeyList,null,"0");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.ydw.bat.wkflow.listener.StandardCommentNewProcess;
|
||||
|
||||
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.IBusProcessHistoryService;
|
||||
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;
|
||||
@@ -32,5 +33,8 @@ public class Step5Before implements TaskListener {
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,15 +3,20 @@ package com.ydw.bat.wkflow.listener.StandardCommentNewProcess;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_auth.LawsUserInfoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
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.IBusProcessHistoryService;
|
||||
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 com.ydw.bat.wkflow.util.enums.StandardCommentNewProcessNodeKeyEnum;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
@@ -87,5 +92,43 @@ public class Step6After implements TaskListener {
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
}
|
||||
|
||||
this.addBusProcessHistory(object,delegateTask);
|
||||
}
|
||||
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 会签
|
||||
List<String> hqUserIdList = delegateTask.getVariable("Step6", List.class);
|
||||
if (CollectionUtils.isNotEmpty(hqUserIdList)) {
|
||||
// 会签节点父节点信息
|
||||
BusProcessHistory hqPBph = new BusProcessHistory();
|
||||
String hqPBphId = UUID.randomUUID().toString();
|
||||
hqPBph.setId(hqPBphId);
|
||||
hqPBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
hqPBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION8.getValue());
|
||||
hqPBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION7.getValue());
|
||||
hqPBph.setOrderNum(orderNum + 1);
|
||||
hqPBph.setIsSub("2");
|
||||
hqPBph.setIsMany("1");
|
||||
bphList.add(hqPBph);
|
||||
|
||||
for (String hqUsserId : hqUserIdList) {
|
||||
BusProcessHistory hqBph = new BusProcessHistory();
|
||||
hqBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
hqBph.setUserId(hqUsserId);
|
||||
hqBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION8.getValue());
|
||||
hqBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
hqBph.setOrderNum(orderNum + 1);
|
||||
hqBph.setIsSub("2");
|
||||
hqBph.setIsMany("1");
|
||||
hqBph.setManyPId(hqPBphId);
|
||||
bphList.add(hqBph);
|
||||
}
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size());
|
||||
}
|
||||
bphService.insertBatch(bphList);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.ydw.bat.wkflow.listener.StandardCommentNewProcess;
|
||||
|
||||
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.IBusProcessHistoryService;
|
||||
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;
|
||||
@@ -31,5 +32,8 @@ public class Step6Before implements TaskListener {
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,16 +2,23 @@ package com.ydw.bat.wkflow.listener.StandardCommentNewProcess;
|
||||
|
||||
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_auth.LawsUserInfoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
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.IBusProcessHistoryService;
|
||||
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 com.ydw.bat.wkflow.util.enums.StandardCommentNewProcessNodeKeyEnum;
|
||||
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;
|
||||
@@ -126,5 +133,78 @@ public class Step7After implements TaskListener {
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
}
|
||||
this.addBusProcessHistory(object,delegateTask,nextUserList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加节点流程历史
|
||||
* @param json
|
||||
* @param delegateTask
|
||||
* @param shUserIdList
|
||||
*/
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask,List<String> shUserIdList) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
TaskTodoService taskTodoService = SpringContextUtil.getBean(TaskTodoService.class);
|
||||
boolean existTaskFlag = taskTodoService.whetherExistTaskByTaskDefinitionKey(
|
||||
delegateTask.getProcessInstanceId(),
|
||||
delegateTask.getTaskDefinitionKey(),
|
||||
delegateTask.getId()
|
||||
);
|
||||
// 如果当前会签节点不存在任务了。
|
||||
if (!existTaskFlag) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION8.getValue());
|
||||
|
||||
String hqFlag = (String) delegateTask.getVariable("hqFlag");
|
||||
if (StringUtils.equals(hqFlag,"0")) {
|
||||
// 审核
|
||||
if (CollectionUtils.isNotEmpty(shUserIdList)) {
|
||||
// 审核节点父节点信息
|
||||
BusProcessHistory shPBph = new BusProcessHistory();
|
||||
String shPBphId = UUID.randomUUID().toString();
|
||||
shPBph.setId(shPBphId);
|
||||
shPBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
shPBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION9.getValue());
|
||||
shPBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
shPBph.setOrderNum(orderNum + 1);
|
||||
shPBph.setIsSub("2");
|
||||
shPBph.setIsMany("1");
|
||||
bphList.add(shPBph);
|
||||
|
||||
for (String shUserId : shUserIdList) {
|
||||
BusProcessHistory shBph = new BusProcessHistory();
|
||||
shBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
shBph.setUserId(shUserId);
|
||||
shBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION9.getValue());
|
||||
shBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
shBph.setOrderNum(orderNum + 1);
|
||||
shBph.setIsSub("2");
|
||||
shBph.setIsMany("1");
|
||||
shBph.setManyPId(shPBphId);
|
||||
bphList.add(shBph);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// 流程走向意见处理节点
|
||||
String bzfgIdSum = json.getString("startUser");
|
||||
BusProcessHistory yjclBph = new BusProcessHistory();
|
||||
yjclBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
yjclBph.setUserId(bzfgIdSum);
|
||||
yjclBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION7.getValue());
|
||||
yjclBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
yjclBph.setOrderNum(orderNum + 1);
|
||||
yjclBph.setIsSub("2");
|
||||
yjclBph.setIsMany("2");
|
||||
bphList.add(yjclBph);
|
||||
|
||||
// 退回到了 意见处理,将会签节点 设置为在流程图展示空白
|
||||
List<String> taskKeyList = new ArrayList<>();
|
||||
taskKeyList.add(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION8.getValue());
|
||||
bphService.updateImgShowColor(delegateTask.getProcessInstanceId(),taskKeyList,null,"0");
|
||||
}
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size());
|
||||
bphService.insertBatch(bphList);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.ydw.bat.wkflow.listener.StandardCommentNewProcess;
|
||||
|
||||
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.IBusProcessHistoryService;
|
||||
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;
|
||||
@@ -31,5 +32,8 @@ public class Step7Before implements TaskListener {
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,20 +2,29 @@ package com.ydw.bat.wkflow.listener.StandardCommentNewProcess;
|
||||
|
||||
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_auth.LawsUserInfoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
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.IBusProcessHistoryService;
|
||||
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 com.ydw.bat.wkflow.util.enums.StandardCommentNewProcessNodeKeyEnum;
|
||||
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.UUID;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
//新征求意见流程!!!!!
|
||||
public class Step8After implements TaskListener {
|
||||
@@ -114,5 +123,91 @@ public class Step8After implements TaskListener {
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
}
|
||||
this.addBusProcessHistory(object,delegateTask,nextUserList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加节点流程历史
|
||||
* @param json
|
||||
* @param delegateTask
|
||||
* @param sdUserIdList
|
||||
*/
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask,List<String> sdUserIdList) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
TaskTodoService taskTodoService = SpringContextUtil.getBean(TaskTodoService.class);
|
||||
boolean existTaskFlag = taskTodoService.whetherExistTaskByTaskDefinitionKey(
|
||||
delegateTask.getProcessInstanceId(),
|
||||
delegateTask.getTaskDefinitionKey(),
|
||||
delegateTask.getId()
|
||||
);
|
||||
// 如果当前审核节点不存在任务了。
|
||||
if (!existTaskFlag) {
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION9.getValue());
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
|
||||
String bdFlag = (String) delegateTask.getVariable("bdFlag");
|
||||
if (StringUtils.equals(bdFlag,"0")) {
|
||||
// 审定
|
||||
if (CollectionUtils.isNotEmpty(sdUserIdList)) {
|
||||
// 删除之前审定节点的信息。
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey,StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION10.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
List<BusProcessHistory> oldSdBphList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isNotEmpty(oldSdBphList)) {
|
||||
if (oldSdBphList.size() > 1) {
|
||||
List<String> oldSdBphIdList = oldSdBphList.stream().map(BusProcessHistory::getId).distinct().collect(Collectors.toList());
|
||||
bphService.removeByIds(oldSdBphIdList);
|
||||
}
|
||||
}
|
||||
|
||||
// 审定节点父节点信息
|
||||
BusProcessHistory sdPBph = new BusProcessHistory();
|
||||
String sdPBphId = UUID.randomUUID().toString();
|
||||
sdPBph.setId(sdPBphId);
|
||||
sdPBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
sdPBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION10.getValue());
|
||||
sdPBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
sdPBph.setOrderNum(orderNum + 1);
|
||||
sdPBph.setIsSub("2");
|
||||
sdPBph.setIsMany("1");
|
||||
bphList.add(sdPBph);
|
||||
|
||||
for (String sdUserId : sdUserIdList) {
|
||||
BusProcessHistory sdBph = new BusProcessHistory();
|
||||
sdBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
sdBph.setUserId(sdUserId);
|
||||
sdBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION10.getValue());
|
||||
sdBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
sdBph.setOrderNum(orderNum + 1);
|
||||
sdBph.setIsSub("2");
|
||||
sdBph.setIsMany("1");
|
||||
sdBph.setManyPId(sdPBphId);
|
||||
bphList.add(sdBph);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// 流程走向意见处理节点
|
||||
String bzfgIdSum = json.getString("startUser");
|
||||
BusProcessHistory yjclBph = new BusProcessHistory();
|
||||
yjclBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
yjclBph.setUserId(bzfgIdSum);
|
||||
yjclBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION7.getValue());
|
||||
yjclBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
yjclBph.setOrderNum(orderNum + 1);
|
||||
yjclBph.setIsSub("2");
|
||||
yjclBph.setIsMany("2");
|
||||
bphList.add(yjclBph);
|
||||
|
||||
// 退回到了 意见处理,将会签、审核节点 设置为在流程图展示空白
|
||||
List<String> taskKeyList = new ArrayList<>();
|
||||
taskKeyList.add(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION8.getValue());
|
||||
taskKeyList.add(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION9.getValue());
|
||||
bphService.updateImgShowColor(delegateTask.getProcessInstanceId(),taskKeyList,null,"0");
|
||||
}
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size());
|
||||
bphService.insertBatch(bphList);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.ydw.bat.wkflow.listener.StandardCommentNewProcess;
|
||||
|
||||
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.IBusProcessHistoryService;
|
||||
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;
|
||||
@@ -32,5 +33,8 @@ public class Step8Before implements TaskListener {
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,20 +2,28 @@ package com.ydw.bat.wkflow.listener.StandardCommentNewProcess;
|
||||
|
||||
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_auth.LawsUserInfoService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
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.IBusProcessHistoryService;
|
||||
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 com.ydw.bat.wkflow.util.enums.StandardCommentNewProcessNodeKeyEnum;
|
||||
import io.swagger.models.auth.In;
|
||||
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.List;
|
||||
import java.util.UUID;
|
||||
|
||||
//新征求意见流程!!!!!
|
||||
public class Step9After implements TaskListener {
|
||||
@@ -110,5 +118,74 @@ public class Step9After implements TaskListener {
|
||||
}
|
||||
}
|
||||
}
|
||||
this.addBusProcessHistory(object,delegateTask);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加节点流程历史
|
||||
* @param json
|
||||
* @param delegateTask
|
||||
*/
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
TaskTodoService taskTodoService = SpringContextUtil.getBean(TaskTodoService.class);
|
||||
boolean existTaskFlag = taskTodoService.whetherExistTaskByTaskDefinitionKey(
|
||||
delegateTask.getProcessInstanceId(),
|
||||
delegateTask.getTaskDefinitionKey(),
|
||||
delegateTask.getId()
|
||||
);
|
||||
// 如果当前审定节点不存在任务了。
|
||||
if (!existTaskFlag) {
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION10.getValue());
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
|
||||
String directorFlag = (String) delegateTask.getVariable("directorFlag");
|
||||
// 如果是通过,流程走向批准节点
|
||||
if (StringUtils.equals(directorFlag,"0")) {
|
||||
String presidentUser = json.getString("presidentUser");
|
||||
|
||||
// 如果存在批准节点的数据,taskId为空。 不用添加,否则就是退回过 需要添加。
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,presidentUser);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey,StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION11.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
// 批准
|
||||
BusProcessHistory pzBph = new BusProcessHistory();
|
||||
pzBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
pzBph.setUserId(presidentUser);
|
||||
pzBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION11.getValue());
|
||||
pzBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
pzBph.setOrderNum(orderNum + 1);
|
||||
pzBph.setIsSub("2");
|
||||
pzBph.setIsMany("2");
|
||||
bphList.add(pzBph);
|
||||
}
|
||||
} else {
|
||||
// 流程走向意见处理节点
|
||||
String bzfgIdSum = json.getString("startUser");
|
||||
BusProcessHistory yjclBph = new BusProcessHistory();
|
||||
yjclBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
yjclBph.setUserId(bzfgIdSum);
|
||||
yjclBph.setTaskKey(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION7.getValue());
|
||||
yjclBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue());
|
||||
yjclBph.setOrderNum(orderNum + 1);
|
||||
yjclBph.setIsSub("2");
|
||||
yjclBph.setIsMany("2");
|
||||
bphList.add(yjclBph);
|
||||
|
||||
// 退回到了 意见处理,将会签、审核、审定节点 设置为在流程图展示空白
|
||||
List<String> taskKeyList = new ArrayList<>();
|
||||
taskKeyList.add(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION8.getValue());
|
||||
taskKeyList.add(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION9.getValue());
|
||||
taskKeyList.add(StandardCommentNewProcessNodeKeyEnum.STAND_ASK_FOR_OPINION10.getValue());
|
||||
bphService.updateImgShowColor(delegateTask.getProcessInstanceId(),taskKeyList,null,"0");
|
||||
}
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size());
|
||||
bphService.insertBatch(bphList);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.ydw.bat.wkflow.listener.StandardCommentNewProcess;
|
||||
|
||||
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.IBusProcessHistoryService;
|
||||
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;
|
||||
@@ -30,5 +31,8 @@ public class Step9Before implements TaskListener {
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,6 +8,10 @@ import com.ydw.bat.wkflow.business_main.datas.mapper.EsTechRelationMapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.*;
|
||||
import com.ydw.bat.wkflow.listener.bussLibrary.Utils.FlowFinishEnum;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.BussLibraryNodeKeyEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.StandardCommentNewProcessNodeKeyEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.TaskStatusEnum;
|
||||
import net.sf.json.JSONArray;
|
||||
import net.sf.json.util.JSONTokener;
|
||||
import org.activiti.engine.ActivitiException;
|
||||
@@ -16,13 +20,12 @@ import org.activiti.engine.TaskService;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.activiti.engine.task.Task;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.apache.tomcat.util.digester.ArrayStack;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Arrays;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* 发起企标制修订流程后
|
||||
@@ -44,8 +47,12 @@ public class BLApplicantAfter implements TaskListener{
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
queryWrapper.orderByDesc("CREATE_TIME");
|
||||
List<Datas> datasList = datasService.list(queryWrapper);
|
||||
if (CollectionUtils.isEmpty(datasList)) {
|
||||
throw new ActivitiException("t_datas表中ACTI_TASK_ID为"+delegateTask.getId()+"的数据不存在");
|
||||
}
|
||||
Datas datas = datasList.get(0);
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
delegateTask.setVariable("objectJson",object);
|
||||
|
||||
@@ -191,9 +198,211 @@ public class BLApplicantAfter implements TaskListener{
|
||||
}
|
||||
}
|
||||
|
||||
this.addBusProcessHistory(object,delegateTask);
|
||||
}
|
||||
|
||||
private String verifyObj(String str){
|
||||
return (str == null || str.equals("")) ? "" : str;
|
||||
}
|
||||
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask){
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
|
||||
// 起草
|
||||
BusProcessHistory qcBph = new BusProcessHistory();
|
||||
qcBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
qcBph.setUserId(delegateTask.getAssignee());
|
||||
qcBph.setTaskId(delegateTask.getId());
|
||||
qcBph.setTaskKey(delegateTask.getTaskDefinitionKey());
|
||||
qcBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
qcBph.setIsSub("2");
|
||||
qcBph.setTaskStatus(TaskStatusEnum.DONE.getValue());
|
||||
qcBph.setEndTime(new Date());
|
||||
qcBph.setCommitText(json.getString("commentText"));
|
||||
qcBph.setIsMany("2");
|
||||
qcBph.setOrderNum(BussLibraryNodeKeyEnum.BUSS_LIBRARY1.getOrderNum());
|
||||
bphList.add(qcBph);
|
||||
|
||||
List<String> qcUserIdList = Arrays.asList(json.getString("qcUserId").split(","));
|
||||
if (CollectionUtils.isNotEmpty(qcUserIdList)) {
|
||||
// 企标编写节点父节点信息
|
||||
BusProcessHistory qbbxPBph = new BusProcessHistory();
|
||||
String qbbxPBphId = UUID.randomUUID().toString();
|
||||
qbbxPBph.setId(qbbxPBphId);
|
||||
qbbxPBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
qbbxPBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY2.getValue());
|
||||
qbbxPBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
qbbxPBph.setOrderNum(BussLibraryNodeKeyEnum.BUSS_LIBRARY2.getOrderNum());
|
||||
qbbxPBph.setIsSub("2");
|
||||
qbbxPBph.setIsMany("1");
|
||||
bphList.add(qbbxPBph);
|
||||
|
||||
for (String qcUserId : qcUserIdList) {
|
||||
// 企标编写子节点信息
|
||||
BusProcessHistory qbbxBph = new BusProcessHistory();
|
||||
qbbxBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
qbbxBph.setUserId(qcUserId);
|
||||
qbbxBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY2.getValue());
|
||||
qbbxBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
qbbxBph.setOrderNum(BussLibraryNodeKeyEnum.BUSS_LIBRARY2.getOrderNum());
|
||||
qbbxBph.setIsSub("2");
|
||||
qbbxBph.setIsMany("1");
|
||||
qbbxBph.setManyPId(qbbxPBphId);
|
||||
bphList.add(qbbxBph);
|
||||
}
|
||||
}
|
||||
|
||||
// 企标编写汇总
|
||||
String hzUserId = json.getString("hzUserId");
|
||||
BusProcessHistory qbbxhzBph = new BusProcessHistory();
|
||||
qbbxhzBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
qbbxhzBph.setUserId(hzUserId);
|
||||
qbbxhzBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY3.getValue());
|
||||
qbbxhzBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
qbbxhzBph.setOrderNum(BussLibraryNodeKeyEnum.BUSS_LIBRARY3.getOrderNum());
|
||||
qbbxhzBph.setIsSub("2");
|
||||
qbbxhzBph.setIsMany("2");
|
||||
bphList.add(qbbxhzBph);
|
||||
|
||||
// 标准化初审
|
||||
String bzhUserId = json.getString("bzhUserId");
|
||||
BusProcessHistory bzhcsBph = new BusProcessHistory();
|
||||
bzhcsBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
bzhcsBph.setUserId(bzhUserId);
|
||||
bzhcsBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY4.getValue());
|
||||
bzhcsBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
bzhcsBph.setOrderNum(BussLibraryNodeKeyEnum.BUSS_LIBRARY4.getOrderNum());
|
||||
bzhcsBph.setIsSub("2");
|
||||
bzhcsBph.setIsMany("2");
|
||||
bphList.add(bzhcsBph);
|
||||
|
||||
// 征求意见
|
||||
List<String> hqUserIdList = Arrays.asList(json.getString("hqUserId").split(","));
|
||||
if (CollectionUtils.isNotEmpty(hqUserIdList)) {
|
||||
// 企标编写节点父节点信息
|
||||
BusProcessHistory zqyjPBph = new BusProcessHistory();
|
||||
String zqyjPBphId = UUID.randomUUID().toString();
|
||||
zqyjPBph.setId(zqyjPBphId);
|
||||
zqyjPBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
zqyjPBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY5.getValue());
|
||||
zqyjPBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
zqyjPBph.setOrderNum(BussLibraryNodeKeyEnum.BUSS_LIBRARY5.getOrderNum());
|
||||
zqyjPBph.setIsSub("2");
|
||||
zqyjPBph.setIsMany("1");
|
||||
bphList.add(zqyjPBph);
|
||||
|
||||
for (String hqUserId : hqUserIdList) {
|
||||
BusProcessHistory zqyjBph = new BusProcessHistory();
|
||||
zqyjBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
zqyjBph.setUserId(hqUserId);
|
||||
zqyjBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY5.getValue());
|
||||
zqyjBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
zqyjBph.setOrderNum(BussLibraryNodeKeyEnum.BUSS_LIBRARY5.getOrderNum());
|
||||
zqyjBph.setIsSub("2");
|
||||
zqyjBph.setIsMany("1");
|
||||
zqyjBph.setManyPId(zqyjPBphId);
|
||||
bphList.add(zqyjBph);
|
||||
}
|
||||
}
|
||||
|
||||
// 技术委员会评审、评审意见修改
|
||||
String xdUserId = json.getString("xdUserId");
|
||||
BusProcessHistory psyjxgBph = new BusProcessHistory();
|
||||
psyjxgBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
psyjxgBph.setUserId(xdUserId);
|
||||
psyjxgBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY6.getValue());
|
||||
psyjxgBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
psyjxgBph.setOrderNum(BussLibraryNodeKeyEnum.BUSS_LIBRARY6.getOrderNum());
|
||||
psyjxgBph.setIsSub("2");
|
||||
psyjxgBph.setIsMany("2");
|
||||
bphList.add(psyjxgBph);
|
||||
|
||||
// 标准化复审
|
||||
String fggcsUserId = json.getString("fggcsUserId");
|
||||
BusProcessHistory hzhfsBph = new BusProcessHistory();
|
||||
hzhfsBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
hzhfsBph.setUserId(fggcsUserId);
|
||||
hzhfsBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY7.getValue());
|
||||
hzhfsBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
hzhfsBph.setOrderNum(BussLibraryNodeKeyEnum.BUSS_LIBRARY7.getOrderNum());
|
||||
hzhfsBph.setIsSub("2");
|
||||
hzhfsBph.setIsMany("2");
|
||||
bphList.add(hzhfsBph);
|
||||
|
||||
// 起草单位高级经理审核
|
||||
String jsfzrUserId = json.getString("jsfzrUserId");
|
||||
BusProcessHistory qcdwgjjlshBph = new BusProcessHistory();
|
||||
qcdwgjjlshBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
qcdwgjjlshBph.setUserId(jsfzrUserId);
|
||||
qcdwgjjlshBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY8.getValue());
|
||||
qcdwgjjlshBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
qcdwgjjlshBph.setOrderNum(BussLibraryNodeKeyEnum.BUSS_LIBRARY8.getOrderNum());
|
||||
qcdwgjjlshBph.setIsSub("2");
|
||||
qcdwgjjlshBph.setIsMany("2");
|
||||
bphList.add(qcdwgjjlshBph);
|
||||
|
||||
// 标准法规部高级经理审核
|
||||
String bzUserId = json.getString("bzUserId");
|
||||
BusProcessHistory bzfgbgjjlshBph = new BusProcessHistory();
|
||||
bzfgbgjjlshBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
bzfgbgjjlshBph.setUserId(bzUserId);
|
||||
bzfgbgjjlshBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY9.getValue());
|
||||
bzfgbgjjlshBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
bzfgbgjjlshBph.setOrderNum(BussLibraryNodeKeyEnum.BUSS_LIBRARY9.getOrderNum());
|
||||
bzfgbgjjlshBph.setIsSub("2");
|
||||
bzfgbgjjlshBph.setIsMany("2");
|
||||
bphList.add(bzfgbgjjlshBph);
|
||||
|
||||
// 审定-起草单位中心主任
|
||||
String fzrUserId = json.getString("fzrUserId");
|
||||
BusProcessHistory sdBph = new BusProcessHistory();
|
||||
sdBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
sdBph.setUserId(fzrUserId);
|
||||
sdBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY10.getValue());
|
||||
sdBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
sdBph.setOrderNum(BussLibraryNodeKeyEnum.BUSS_LIBRARY10.getOrderNum());
|
||||
sdBph.setIsSub("2");
|
||||
sdBph.setIsMany("2");
|
||||
bphList.add(sdBph);
|
||||
|
||||
// 批准
|
||||
String zhrUserId = json.getString("zhrUserId");
|
||||
BusProcessHistory pzBph = new BusProcessHistory();
|
||||
pzBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
pzBph.setUserId(zhrUserId);
|
||||
pzBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY11.getValue());
|
||||
pzBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
pzBph.setOrderNum(BussLibraryNodeKeyEnum.BUSS_LIBRARY11.getOrderNum());
|
||||
pzBph.setIsSub("2");
|
||||
pzBph.setIsMany("2");
|
||||
bphList.add(pzBph);
|
||||
|
||||
// 培训
|
||||
String pxUserId = json.getString("pxUserId");
|
||||
BusProcessHistory pxBph = new BusProcessHistory();
|
||||
pxBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
pxBph.setUserId(pxUserId);
|
||||
pxBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY12.getValue());
|
||||
pxBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
pxBph.setOrderNum(BussLibraryNodeKeyEnum.BUSS_LIBRARY12.getOrderNum());
|
||||
pxBph.setIsSub("2");
|
||||
pxBph.setIsMany("2");
|
||||
bphList.add(pxBph);
|
||||
|
||||
// 发布
|
||||
String fbUserId = json.getString("fbUserId");
|
||||
BusProcessHistory fbBph = new BusProcessHistory();
|
||||
fbBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
fbBph.setUserId(fbUserId);
|
||||
fbBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY13.getValue());
|
||||
fbBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
fbBph.setOrderNum(BussLibraryNodeKeyEnum.BUSS_LIBRARY13.getOrderNum());
|
||||
fbBph.setIsSub("2");
|
||||
fbBph.setIsMany("2");
|
||||
bphList.add(fbBph);
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,24 +3,23 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
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.IBusProcessModelHisService;
|
||||
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.*;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.BussLibraryNodeKeyEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.ActivitiException;
|
||||
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 org.apache.tomcat.util.digester.ArrayStack;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Arrays;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* 重新发起企标制修订流程后
|
||||
@@ -36,7 +35,12 @@ public class BLApplicantC1After implements TaskListener{
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
queryWrapper.orderByDesc("CREATE_TIME");
|
||||
List<Datas> datasList = datasService.list(queryWrapper);
|
||||
if (CollectionUtils.isEmpty(datasList)) {
|
||||
throw new ActivitiException("t_datas表中ACTI_TASK_ID为"+delegateTask.getId()+"的数据不存在");
|
||||
}
|
||||
Datas datas = datasList.get(0);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
delegateTask.setVariable("objectJson",object);
|
||||
@@ -139,6 +143,46 @@ public class BLApplicantC1After implements TaskListener{
|
||||
|
||||
// 生成 模板
|
||||
// busProcessModelHisService.saveBussTemplateFile(object,delegateTask.getProcessInstanceId());
|
||||
|
||||
this.addBusProcessHistory(object,delegateTask);
|
||||
}
|
||||
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
List<String> qcUserIdList = Arrays.asList(json.getString("qcUserId").split(","));
|
||||
if (CollectionUtils.isNotEmpty(qcUserIdList)) {
|
||||
// 企标编写节点父节点信息
|
||||
BusProcessHistory qbbxPBph = new BusProcessHistory();
|
||||
String qbbxPBphId = UUID.randomUUID().toString();
|
||||
qbbxPBph.setId(qbbxPBphId);
|
||||
qbbxPBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
qbbxPBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY2.getValue());
|
||||
qbbxPBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(), BussLibraryNodeKeyEnum.BUSS_LIBRARY_C1.getValue());
|
||||
qbbxPBph.setOrderNum(orderNum + 1);
|
||||
qbbxPBph.setIsSub("2");
|
||||
qbbxPBph.setIsMany("1");
|
||||
bphList.add(qbbxPBph);
|
||||
|
||||
for (String qcUserId : qcUserIdList) {
|
||||
// 企标编写子节点信息
|
||||
BusProcessHistory qbbxBph = new BusProcessHistory();
|
||||
qbbxBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
qbbxBph.setUserId(qcUserId);
|
||||
qbbxBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY2.getValue());
|
||||
qbbxBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
qbbxBph.setOrderNum(orderNum + 1);
|
||||
qbbxBph.setIsSub("2");
|
||||
qbbxBph.setIsMany("1");
|
||||
qbbxBph.setManyPId(qbbxPBphId);
|
||||
bphList.add(qbbxBph);
|
||||
}
|
||||
|
||||
delegateTask.setVariable("qcUserList",qcUserIdList);
|
||||
}
|
||||
bphService.insertBatch(bphList);
|
||||
}
|
||||
|
||||
private String verifyObj(String str){
|
||||
|
||||
@@ -2,11 +2,14 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
|
||||
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.IBusProcessHistoryService;
|
||||
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 org.activiti.engine.ProcessEngine;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.activiti.engine.history.HistoricProcessInstance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -30,10 +33,21 @@ public class BLApplicantC1Before implements TaskListener{
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
|
||||
ProcessEngine processEngine = SpringContextUtil.getBean(ProcessEngine.class);
|
||||
HistoricProcessInstance pi = processEngine.getHistoryService()//与历史数据(历史表)相关的Service
|
||||
.createHistoricProcessInstanceQuery()//创建历史流程实例查询
|
||||
.processInstanceId(delegateTask.getProcessInstanceId())//使用流程实例ID查询
|
||||
.singleResult();
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink("bussLibraryC1?prcType=buss1");
|
||||
String link = "bussLibraryC1?prcType=buss1";
|
||||
if (pi != null && pi.getStartTime().after(BussUtils.oldAndNew)) {
|
||||
link = link + "&taskDefinitionKey=bussLibraryC1&oldAndNew=new";
|
||||
}
|
||||
one1.setLink(link);
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,16 +3,21 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
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.IBusProcessHistoryService;
|
||||
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.BussLibraryNodeKeyEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.ActivitiException;
|
||||
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;
|
||||
@@ -30,7 +35,12 @@ public class BussLibrary10After implements TaskListener{
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
queryWrapper.orderByDesc("CREATE_TIME");
|
||||
List<Datas> datasList = datasService.list(queryWrapper);
|
||||
if (CollectionUtils.isEmpty(datasList)) {
|
||||
throw new ActivitiException("t_datas表中ACTI_TASK_ID为"+delegateTask.getId()+"的数据不存在");
|
||||
}
|
||||
Datas datas = datasList.get(0);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
delegateTask.setVariable("objectJson",object);
|
||||
@@ -94,9 +104,79 @@ public class BussLibrary10After implements TaskListener{
|
||||
}else {
|
||||
throw new ActivitiException("1#2 提交OR驳回参数不存在");
|
||||
}
|
||||
this.addBusProcessHistory(object,delegateTask);
|
||||
}
|
||||
|
||||
private String verifyObj(String str){
|
||||
return (str == null || str.equals("")) ? "" : str;
|
||||
}
|
||||
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
|
||||
Integer fzrFlag = (Integer) delegateTask.getVariable("fzrFlag");
|
||||
if (fzrFlag == 0) {
|
||||
String zhrUserId = json.getString("zhrUserId");
|
||||
// 如果存在 批准 节点的数据,taskId为空。 不用添加,否则需要添加。
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId, delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId, zhrUserId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY11.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 批准
|
||||
BusProcessHistory pzBph = new BusProcessHistory();
|
||||
pzBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
pzBph.setUserId(zhrUserId);
|
||||
pzBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY11.getValue());
|
||||
pzBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
pzBph.setIsSub("2");
|
||||
pzBph.setIsMany("2");
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(), BussLibraryNodeKeyEnum.BUSS_LIBRARY10.getValue());
|
||||
pzBph.setOrderNum(orderNum + 1);
|
||||
bphList.add(pzBph);
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(), orderNum + 1, bphList.size());
|
||||
}
|
||||
} else if (fzrFlag == 1) {
|
||||
String cxdUserId = (String) delegateTask.getVariable("cxdUserId");
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId, delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId, cxdUserId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 重新技术委员会评审、评审意见修改
|
||||
BusProcessHistory psyjxgBph = new BusProcessHistory();
|
||||
psyjxgBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
psyjxgBph.setUserId(cxdUserId);
|
||||
psyjxgBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue());
|
||||
psyjxgBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
psyjxgBph.setIsSub("2");
|
||||
psyjxgBph.setIsMany("2");
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(), BussLibraryNodeKeyEnum.BUSS_LIBRARY10.getValue());
|
||||
psyjxgBph.setOrderNum(orderNum + 1);
|
||||
bphList.add(psyjxgBph);
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(), orderNum + 1, bphList.size());
|
||||
}
|
||||
|
||||
// 退回到了 重新技术委员会评审 标准化复审、起草单位高级经理审核、标准法规部高级经理审核、审定 节点,设置为在流程图展示空白
|
||||
List<String> qczhTaskKeyList = new ArrayList<>();
|
||||
qczhTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY7.getValue());
|
||||
qczhTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY8.getValue());
|
||||
qczhTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY9.getValue());
|
||||
qczhTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY10.getValue());
|
||||
bphService.updateImgShowColor(delegateTask.getProcessInstanceId(),qczhTaskKeyList,null,"0");
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,11 +2,14 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
|
||||
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.IBusProcessHistoryService;
|
||||
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 org.activiti.engine.ProcessEngine;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.activiti.engine.history.HistoricProcessInstance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -30,10 +33,21 @@ public class BussLibrary10Before implements TaskListener{
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
|
||||
ProcessEngine processEngine = SpringContextUtil.getBean(ProcessEngine.class);
|
||||
HistoricProcessInstance pi = processEngine.getHistoryService()//与历史数据(历史表)相关的Service
|
||||
.createHistoricProcessInstanceQuery()//创建历史流程实例查询
|
||||
.processInstanceId(delegateTask.getProcessInstanceId())//使用流程实例ID查询
|
||||
.singleResult();
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink("bussLibrary10?prcType=buss1");
|
||||
String link = "bussLibrary10?prcType=buss1";
|
||||
if (pi != null && pi.getStartTime().after(BussUtils.oldAndNew)) {
|
||||
link = link + "&taskDefinitionKey=bussLibrary10&oldAndNew=new";
|
||||
}
|
||||
one1.setLink(link);
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,16 +3,21 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
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.IBusProcessHistoryService;
|
||||
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.BussLibraryNodeKeyEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.ActivitiException;
|
||||
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;
|
||||
@@ -30,7 +35,12 @@ public class BussLibrary11After implements TaskListener{
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
queryWrapper.orderByDesc("CREATE_TIME");
|
||||
List<Datas> datasList = datasService.list(queryWrapper);
|
||||
if (CollectionUtils.isEmpty(datasList)) {
|
||||
throw new ActivitiException("t_datas表中ACTI_TASK_ID为"+delegateTask.getId()+"的数据不存在");
|
||||
}
|
||||
Datas datas = datasList.get(0);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
delegateTask.setVariable("objectJson",object);
|
||||
@@ -95,9 +105,79 @@ public class BussLibrary11After implements TaskListener{
|
||||
}else {
|
||||
throw new ActivitiException("1#2 提交OR驳回参数不存在");
|
||||
}
|
||||
this.addBusProcessHistory(object,delegateTask);
|
||||
}
|
||||
|
||||
private String verifyObj(String str){
|
||||
return (str == null || str.equals("")) ? "" : str;
|
||||
}
|
||||
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
|
||||
Integer zrFlag = (Integer) delegateTask.getVariable("zrFlag");
|
||||
if (zrFlag == 0) {
|
||||
String pxUserId = json.getString("pxUserId");
|
||||
// 如果存在 批准 节点的数据,taskId为空。 不用添加,否则需要添加。
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId, delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId, pxUserId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY12.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 培训
|
||||
BusProcessHistory pxBph = new BusProcessHistory();
|
||||
pxBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
pxBph.setUserId(pxUserId);
|
||||
pxBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY12.getValue());
|
||||
pxBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
pxBph.setIsSub("2");
|
||||
pxBph.setIsMany("2");
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(), BussLibraryNodeKeyEnum.BUSS_LIBRARY11.getValue());
|
||||
pxBph.setOrderNum(orderNum + 1);
|
||||
bphList.add(pxBph);
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(), orderNum + 1, bphList.size());
|
||||
}
|
||||
} else if (zrFlag == 1) {
|
||||
String cxdUserId = (String) delegateTask.getVariable("cxdUserId");
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId, delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId, cxdUserId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 重新技术委员会评审、评审意见修改
|
||||
BusProcessHistory psyjxgBph = new BusProcessHistory();
|
||||
psyjxgBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
psyjxgBph.setUserId(cxdUserId);
|
||||
psyjxgBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue());
|
||||
psyjxgBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
psyjxgBph.setIsSub("2");
|
||||
psyjxgBph.setIsMany("2");
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(), BussLibraryNodeKeyEnum.BUSS_LIBRARY11.getValue());
|
||||
psyjxgBph.setOrderNum(orderNum + 1);
|
||||
bphList.add(psyjxgBph);
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(), orderNum + 1, bphList.size());
|
||||
}
|
||||
|
||||
// 退回到了 重新技术委员会评审 标准化复审、起草单位高级经理审核、标准法规部高级经理审核、审定、批准 节点,设置为在流程图展示空白
|
||||
List<String> qczhTaskKeyList = new ArrayList<>();
|
||||
qczhTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY7.getValue());
|
||||
qczhTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY8.getValue());
|
||||
qczhTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY9.getValue());
|
||||
qczhTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY10.getValue());
|
||||
qczhTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY11.getValue());
|
||||
bphService.updateImgShowColor(delegateTask.getProcessInstanceId(),qczhTaskKeyList,null,"0");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,11 +2,14 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
|
||||
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.IBusProcessHistoryService;
|
||||
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 org.activiti.engine.ProcessEngine;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.activiti.engine.history.HistoricProcessInstance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -30,10 +33,21 @@ public class BussLibrary11Before implements TaskListener{
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
|
||||
ProcessEngine processEngine = SpringContextUtil.getBean(ProcessEngine.class);
|
||||
HistoricProcessInstance pi = processEngine.getHistoryService()//与历史数据(历史表)相关的Service
|
||||
.createHistoricProcessInstanceQuery()//创建历史流程实例查询
|
||||
.processInstanceId(delegateTask.getProcessInstanceId())//使用流程实例ID查询
|
||||
.singleResult();
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink("bussLibrary11?prcType=buss1");
|
||||
String link = "bussLibrary11?prcType=buss1";
|
||||
if (pi != null && pi.getStartTime().after(BussUtils.oldAndNew)) {
|
||||
link = link + "&taskDefinitionKey=bussLibrary11&oldAndNew=new";
|
||||
}
|
||||
one1.setLink(link);
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -13,6 +13,7 @@ import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import org.activiti.engine.ActivitiException;
|
||||
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;
|
||||
@@ -30,7 +31,12 @@ public class BussLibrary12After implements TaskListener{
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
queryWrapper.orderByDesc("CREATE_TIME");
|
||||
List<Datas> datasList = datasService.list(queryWrapper);
|
||||
if (CollectionUtils.isEmpty(datasList)) {
|
||||
throw new ActivitiException("t_datas表中ACTI_TASK_ID为"+delegateTask.getId()+"的数据不存在");
|
||||
}
|
||||
Datas datas = datasList.get(0);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
delegateTask.setVariable("objectJson",object);
|
||||
|
||||
@@ -5,11 +5,14 @@ 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.service.IBusProcessHistoryService;
|
||||
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 org.activiti.engine.ProcessEngine;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.activiti.engine.history.HistoricProcessInstance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -33,10 +36,21 @@ public class BussLibrary12Before implements TaskListener{
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
|
||||
ProcessEngine processEngine = SpringContextUtil.getBean(ProcessEngine.class);
|
||||
HistoricProcessInstance pi = processEngine.getHistoryService()//与历史数据(历史表)相关的Service
|
||||
.createHistoricProcessInstanceQuery()//创建历史流程实例查询
|
||||
.processInstanceId(delegateTask.getProcessInstanceId())//使用流程实例ID查询
|
||||
.singleResult();
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink("bussLibrary12?prcType=buss1");
|
||||
String link = "bussLibrary12?prcType=buss1";
|
||||
if (pi != null && pi.getStartTime().after(BussUtils.oldAndNew)) {
|
||||
link = link + "&taskDefinitionKey=bussLibrary12&oldAndNew=new";
|
||||
}
|
||||
one1.setLink(link);
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,6 +18,7 @@ import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import org.activiti.engine.ActivitiException;
|
||||
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.text.SimpleDateFormat;
|
||||
@@ -39,7 +40,12 @@ public class BussLibrary13After implements TaskListener{
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
queryWrapper.orderByDesc("CREATE_TIME");
|
||||
List<Datas> datasList = datasService.list(queryWrapper);
|
||||
if (CollectionUtils.isEmpty(datasList)) {
|
||||
throw new ActivitiException("t_datas表中ACTI_TASK_ID为"+delegateTask.getId()+"的数据不存在");
|
||||
}
|
||||
Datas datas = datasList.get(0);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
delegateTask.setVariable("objectJson",object);
|
||||
|
||||
@@ -2,11 +2,14 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
|
||||
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.IBusProcessHistoryService;
|
||||
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 org.activiti.engine.ProcessEngine;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.activiti.engine.history.HistoricProcessInstance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -30,10 +33,21 @@ public class BussLibrary13Before implements TaskListener{
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
|
||||
ProcessEngine processEngine = SpringContextUtil.getBean(ProcessEngine.class);
|
||||
HistoricProcessInstance pi = processEngine.getHistoryService()//与历史数据(历史表)相关的Service
|
||||
.createHistoricProcessInstanceQuery()//创建历史流程实例查询
|
||||
.processInstanceId(delegateTask.getProcessInstanceId())//使用流程实例ID查询
|
||||
.singleResult();
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink("bussLibrary13?prcType=buss1");
|
||||
String link = "bussLibrary13?prcType=buss1";
|
||||
if (pi != null && pi.getStartTime().after(BussUtils.oldAndNew)) {
|
||||
link = link + "&taskDefinitionKey=bussLibrary13&oldAndNew=new";
|
||||
}
|
||||
one1.setLink(link);
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,16 +4,22 @@ import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
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.IBusProcessHistoryService;
|
||||
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.BussLibraryNodeKeyEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.StandardCommentNewProcessNodeKeyEnum;
|
||||
import org.activiti.engine.ActivitiException;
|
||||
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.text.SimpleDateFormat;
|
||||
@@ -34,8 +40,12 @@ public class BussLibrary2After implements TaskListener{
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
queryWrapper.orderByDesc("CREATE_TIME");
|
||||
List<Datas> datasList = datasService.list(queryWrapper);
|
||||
if (CollectionUtils.isEmpty(datasList)) {
|
||||
throw new ActivitiException("t_datas表中ACTI_TASK_ID为"+delegateTask.getId()+"的数据不存在");
|
||||
}
|
||||
Datas datas = datasList.get(0);
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
delegateTask.setVariable("objectJson",object);
|
||||
|
||||
@@ -107,9 +117,41 @@ public class BussLibrary2After implements TaskListener{
|
||||
busProcessNewNext.setPrcName(prcName);
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
this.addBusProcessHistory(object,delegateTask);
|
||||
}
|
||||
|
||||
private String verifyObj(String str){
|
||||
return (str == null || str.equals("")) ? "" : str;
|
||||
}
|
||||
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
String hzUserId = json.getString("hzUserId");
|
||||
|
||||
// 如果存在企标编写汇总节点的数据,taskId为空。 不用添加,否则需要添加。
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,hzUserId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY3.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 企标编写汇总
|
||||
BusProcessHistory qbbxhzBph = new BusProcessHistory();
|
||||
qbbxhzBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
qbbxhzBph.setUserId(hzUserId);
|
||||
qbbxhzBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY3.getValue());
|
||||
qbbxhzBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
qbbxhzBph.setIsSub("2");
|
||||
qbbxhzBph.setIsMany("2");
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY_C1.getValue());
|
||||
qbbxhzBph.setOrderNum(orderNum + 1);
|
||||
bphList.add(qbbxhzBph);
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,12 +3,16 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
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.IBusProcessHistoryService;
|
||||
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 org.activiti.engine.ProcessEngine;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.activiti.engine.history.HistoricProcessInstance;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
@@ -38,8 +42,17 @@ public class BussLibrary2Before implements TaskListener{
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
|
||||
ProcessEngine processEngine = SpringContextUtil.getBean(ProcessEngine.class);
|
||||
HistoricProcessInstance pi = processEngine.getHistoryService()//与历史数据(历史表)相关的Service
|
||||
.createHistoricProcessInstanceQuery()//创建历史流程实例查询
|
||||
.processInstanceId(delegateTask.getProcessInstanceId())//使用流程实例ID查询
|
||||
.singleResult();
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink("bussLibrary2?prcType=buss1");
|
||||
String link = "bussLibrary2?prcType=buss1";
|
||||
if (pi != null && pi.getStartTime().after(BussUtils.oldAndNew)) {
|
||||
link = link + "&taskDefinitionKey=bussLibrary2&oldAndNew=new";
|
||||
}
|
||||
one1.setLink(link);
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
@@ -63,5 +76,8 @@ public class BussLibrary2Before implements TaskListener{
|
||||
// hisService.saveOrUpdate(modelHis);
|
||||
// }
|
||||
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,16 +3,21 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
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.IBusProcessHistoryService;
|
||||
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.BussLibraryNodeKeyEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.ActivitiException;
|
||||
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.text.SimpleDateFormat;
|
||||
@@ -32,7 +37,12 @@ public class BussLibrary3After implements TaskListener{
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
queryWrapper.orderByDesc("CREATE_TIME");
|
||||
List<Datas> datasList = datasService.list(queryWrapper);
|
||||
if (CollectionUtils.isEmpty(datasList)) {
|
||||
throw new ActivitiException("t_datas表中ACTI_TASK_ID为"+delegateTask.getId()+"的数据不存在");
|
||||
}
|
||||
Datas datas = datasList.get(0);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
delegateTask.setVariable("objectJson",object);
|
||||
@@ -95,9 +105,41 @@ public class BussLibrary3After implements TaskListener{
|
||||
busProcessNewNext.setPrcName(prcName);
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
this.addBusProcessHistory(object,delegateTask);
|
||||
}
|
||||
|
||||
private String verifyObj(String str){
|
||||
return (str == null || str.equals("")) ? "" : str;
|
||||
}
|
||||
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
String bzhUserId = json.getString("bzhUserId");
|
||||
|
||||
// 如果存在标准化初审节点的数据,taskId为空。 不用添加,否则需要添加。
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,bzhUserId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY4.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 标准化初审
|
||||
BusProcessHistory bzhcsBph = new BusProcessHistory();
|
||||
bzhcsBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
bzhcsBph.setUserId(bzhUserId);
|
||||
bzhcsBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY4.getValue());
|
||||
bzhcsBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
bzhcsBph.setIsSub("2");
|
||||
bzhcsBph.setIsMany("2");
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY3.getValue());
|
||||
bzhcsBph.setOrderNum(orderNum + 1);
|
||||
bphList.add(bzhcsBph);
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,11 +5,14 @@ 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.service.IBusProcessHistoryService;
|
||||
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 org.activiti.engine.ProcessEngine;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.activiti.engine.history.HistoricProcessInstance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -42,8 +45,17 @@ public class BussLibrary3Before implements TaskListener{
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
|
||||
ProcessEngine processEngine = SpringContextUtil.getBean(ProcessEngine.class);
|
||||
HistoricProcessInstance pi = processEngine.getHistoryService()//与历史数据(历史表)相关的Service
|
||||
.createHistoricProcessInstanceQuery()//创建历史流程实例查询
|
||||
.processInstanceId(delegateTask.getProcessInstanceId())//使用流程实例ID查询
|
||||
.singleResult();
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink("bussLibrary3?prcType=buss1");
|
||||
String link = "bussLibrary3?prcType=buss1";
|
||||
if (pi != null && pi.getStartTime().after(BussUtils.oldAndNew)) {
|
||||
link = link + "&taskDefinitionKey=bussLibrary3&oldAndNew=new";
|
||||
}
|
||||
one1.setLink(link);
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
|
||||
@@ -66,5 +78,8 @@ public class BussLibrary3Before implements TaskListener{
|
||||
// modelHis.setEditFilePath(fileUrl);
|
||||
// hisService.save(modelHis);
|
||||
}
|
||||
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,21 +3,27 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
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.IBusProcessHistoryService;
|
||||
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.BussLibraryNodeKeyEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.ActivitiException;
|
||||
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.UUID;
|
||||
|
||||
/**
|
||||
* 初审,标准化员审批后
|
||||
@@ -31,7 +37,12 @@ public class BussLibrary4After implements TaskListener{
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
queryWrapper.orderByDesc("CREATE_TIME");
|
||||
List<Datas> datasList = datasService.list(queryWrapper);
|
||||
if (CollectionUtils.isEmpty(datasList)) {
|
||||
throw new ActivitiException("t_datas表中ACTI_TASK_ID为"+delegateTask.getId()+"的数据不存在");
|
||||
}
|
||||
Datas datas = datasList.get(0);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
delegateTask.setVariable("objectJson",object);
|
||||
@@ -123,9 +134,95 @@ public class BussLibrary4After implements TaskListener{
|
||||
}else {
|
||||
throw new ActivitiException("1#2 提交OR驳回参数不存在");
|
||||
}
|
||||
this.addBusProcessHistory(object,delegateTask);
|
||||
}
|
||||
|
||||
private String verifyObj(String str){
|
||||
return (str == null || str.equals("")) ? "" : str;
|
||||
}
|
||||
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
|
||||
Integer bzhFlag = (Integer) delegateTask.getVariable("bzhFlag");
|
||||
if (bzhFlag == 1) {
|
||||
String hzUserId = json.getString("hzUserId");
|
||||
|
||||
// 如果存在 重新企标编写汇总 节点的数据,taskId为空。 不用添加,否则需要添加。
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,hzUserId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY_C3.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 重新企标编写汇总
|
||||
BusProcessHistory cxqbbzhzBph = new BusProcessHistory();
|
||||
cxqbbzhzBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
cxqbbzhzBph.setUserId(hzUserId);
|
||||
cxqbbzhzBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY_C3.getValue());
|
||||
cxqbbzhzBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
cxqbbzhzBph.setIsSub("2");
|
||||
cxqbbzhzBph.setIsMany("2");
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY4.getValue());
|
||||
cxqbbzhzBph.setOrderNum(orderNum + 1);
|
||||
|
||||
bphList.add(cxqbbzhzBph);
|
||||
bphService.insertBatch(bphList);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size());
|
||||
}
|
||||
|
||||
// 将标准化初审节点 设置为白色节点。
|
||||
List<String> bzhcsTaskKeyList = new ArrayList<>();
|
||||
bzhcsTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY4.getValue());
|
||||
bphService.updateImgShowColor(delegateTask.getProcessInstanceId(),bzhcsTaskKeyList,null,"0");
|
||||
} else {
|
||||
// 征求意见
|
||||
List<String> hqUserIdList = Arrays.asList(json.getString("hqUserId").split(","));
|
||||
if (CollectionUtils.isNotEmpty(hqUserIdList)) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY4.getValue());
|
||||
String zqyjPBphId = UUID.randomUUID().toString();
|
||||
for (String userId : hqUserIdList) {
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,userId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY5.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
BusProcessHistory zqyjBph = new BusProcessHistory();
|
||||
zqyjBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
zqyjBph.setUserId(userId);
|
||||
zqyjBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY5.getValue());
|
||||
zqyjBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
zqyjBph.setOrderNum(BussLibraryNodeKeyEnum.BUSS_LIBRARY5.getOrderNum());
|
||||
zqyjBph.setIsSub("2");
|
||||
zqyjBph.setIsMany("1");
|
||||
zqyjBph.setManyPId(zqyjPBphId);
|
||||
zqyjBph.setOrderNum(orderNum + 1);
|
||||
bphList.add(zqyjBph);
|
||||
}
|
||||
}
|
||||
|
||||
if (CollectionUtils.isNotEmpty(bphList)) {
|
||||
BusProcessHistory zqyjPBph = new BusProcessHistory();
|
||||
zqyjPBph.setId(zqyjPBphId);
|
||||
zqyjPBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
zqyjPBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY5.getValue());
|
||||
zqyjPBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
zqyjPBph.setOrderNum(BussLibraryNodeKeyEnum.BUSS_LIBRARY5.getOrderNum());
|
||||
zqyjPBph.setIsSub("2");
|
||||
zqyjPBph.setIsMany("1");
|
||||
zqyjPBph.setOrderNum(orderNum + 1);
|
||||
bphList.add(zqyjPBph);
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,11 +2,14 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
|
||||
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.IBusProcessHistoryService;
|
||||
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 org.activiti.engine.ProcessEngine;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.activiti.engine.history.HistoricProcessInstance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -30,10 +33,21 @@ public class BussLibrary4Before implements TaskListener{
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
|
||||
ProcessEngine processEngine = SpringContextUtil.getBean(ProcessEngine.class);
|
||||
HistoricProcessInstance pi = processEngine.getHistoryService()//与历史数据(历史表)相关的Service
|
||||
.createHistoricProcessInstanceQuery()//创建历史流程实例查询
|
||||
.processInstanceId(delegateTask.getProcessInstanceId())//使用流程实例ID查询
|
||||
.singleResult();
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink("bussLibrary4?prcType=buss1");
|
||||
String link = "bussLibrary4?prcType=buss1";
|
||||
if (pi != null && pi.getStartTime().after(BussUtils.oldAndNew)) {
|
||||
link = link + "&taskDefinitionKey=bussLibrary4&oldAndNew=new";
|
||||
}
|
||||
one1.setLink(link);
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,18 +4,15 @@ import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessEvaluationHis;
|
||||
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.IBusProcessEvaluationHisService;
|
||||
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.entity.*;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.*;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.BussLibraryNodeKeyEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.ActivitiException;
|
||||
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.text.SimpleDateFormat;
|
||||
@@ -119,9 +116,41 @@ public class BussLibrary5After implements TaskListener{
|
||||
busProcessNewNext.setPrcName(prcName);
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
this.addBusProcessHistory(object,delegateTask);
|
||||
}
|
||||
|
||||
private String verifyObj(String str){
|
||||
return (str == null || str.equals("")) ? "" : str;
|
||||
}
|
||||
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
String xdUserId = json.getString("xdUserId");
|
||||
|
||||
// 如果存在 技术委员会评审、评审意见修改 节点的数据,taskId为空。 不用添加,否则需要添加。
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,xdUserId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY6.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 技术委员会评审、评审意见修改
|
||||
BusProcessHistory psyjxgBph = new BusProcessHistory();
|
||||
psyjxgBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
psyjxgBph.setUserId(xdUserId);
|
||||
psyjxgBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY6.getValue());
|
||||
psyjxgBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
psyjxgBph.setIsSub("2");
|
||||
psyjxgBph.setIsMany("2");
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY5.getValue());
|
||||
psyjxgBph.setOrderNum(orderNum + 1);
|
||||
bphList.add(psyjxgBph);
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,11 +3,14 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
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.IBusProcessHistoryService;
|
||||
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 org.activiti.engine.ProcessEngine;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.activiti.engine.history.HistoricProcessInstance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -37,10 +40,21 @@ public class BussLibrary5Before implements TaskListener{
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
|
||||
ProcessEngine processEngine = SpringContextUtil.getBean(ProcessEngine.class);
|
||||
HistoricProcessInstance pi = processEngine.getHistoryService()//与历史数据(历史表)相关的Service
|
||||
.createHistoricProcessInstanceQuery()//创建历史流程实例查询
|
||||
.processInstanceId(delegateTask.getProcessInstanceId())//使用流程实例ID查询
|
||||
.singleResult();
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink("bussLibrary5?prcType=buss1");
|
||||
String link = "bussLibrary5?prcType=buss1";
|
||||
if (pi != null && pi.getStartTime().after(BussUtils.oldAndNew)) {
|
||||
link = link + "&taskDefinitionKey=bussLibrary5&oldAndNew=new";
|
||||
}
|
||||
one1.setLink(link);
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,16 +3,21 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
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.IBusProcessHistoryService;
|
||||
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.BussLibraryNodeKeyEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.ActivitiException;
|
||||
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;
|
||||
@@ -30,7 +35,12 @@ public class BussLibrary6After implements TaskListener{
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
queryWrapper.orderByDesc("CREATE_TIME");
|
||||
List<Datas> datasList = datasService.list(queryWrapper);
|
||||
if (CollectionUtils.isEmpty(datasList)) {
|
||||
throw new ActivitiException("t_datas表中ACTI_TASK_ID为"+delegateTask.getId()+"的数据不存在");
|
||||
}
|
||||
Datas datas = datasList.get(0);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
delegateTask.setVariable("objectJson",object);
|
||||
@@ -100,6 +110,7 @@ public class BussLibrary6After implements TaskListener{
|
||||
busProcessNewNext.setPrcName(prcName);
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
this.addBusProcessHistory(object,delegateTask);
|
||||
// 评分存储
|
||||
BussUtils.evalSave(delegateTask, object, prcName, delegateTask.getAssignee());
|
||||
}
|
||||
@@ -107,4 +118,35 @@ public class BussLibrary6After implements TaskListener{
|
||||
private String verifyObj(String str){
|
||||
return (str == null || str.equals("")) ? "" : str;
|
||||
}
|
||||
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
String fggcsUserId = json.getString("fggcsUserId");
|
||||
|
||||
// 如果存在 技术委员会评审、评审意见修改 节点的数据,taskId为空。 不用添加,否则需要添加。
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,fggcsUserId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY7.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 标准化复审
|
||||
BusProcessHistory hzhfsBph = new BusProcessHistory();
|
||||
hzhfsBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
hzhfsBph.setUserId(fggcsUserId);
|
||||
hzhfsBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY7.getValue());
|
||||
hzhfsBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
hzhfsBph.setIsSub("2");
|
||||
hzhfsBph.setIsMany("2");
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY6.getValue());
|
||||
hzhfsBph.setOrderNum(orderNum + 1);
|
||||
bphList.add(hzhfsBph);
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,11 +5,14 @@ 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.service.IBusProcessHistoryService;
|
||||
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 org.activiti.engine.ProcessEngine;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.activiti.engine.history.HistoricProcessInstance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -43,10 +46,21 @@ public class BussLibrary6Before implements TaskListener{
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
|
||||
ProcessEngine processEngine = SpringContextUtil.getBean(ProcessEngine.class);
|
||||
HistoricProcessInstance pi = processEngine.getHistoryService()//与历史数据(历史表)相关的Service
|
||||
.createHistoricProcessInstanceQuery()//创建历史流程实例查询
|
||||
.processInstanceId(delegateTask.getProcessInstanceId())//使用流程实例ID查询
|
||||
.singleResult();
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink("bussLibrary5?prcType=buss1");
|
||||
String link = "bussLibrary6?prcType=buss1";
|
||||
if (pi != null && pi.getStartTime().after(BussUtils.oldAndNew)) {
|
||||
link = link + "&taskDefinitionKey=bussLibrary6&oldAndNew=new";
|
||||
}
|
||||
one1.setLink(link);
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,18 +4,15 @@ import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessEvaluationHis;
|
||||
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.IBusProcessEvaluationHisService;
|
||||
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.entity.*;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.*;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import com.ydw.bat.wkflow.util.enums.BussLibraryNodeKeyEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.ActivitiException;
|
||||
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.text.SimpleDateFormat;
|
||||
@@ -38,7 +35,12 @@ public class BussLibrary7After implements TaskListener{
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
queryWrapper.orderByDesc("CREATE_TIME");
|
||||
List<Datas> datasList = datasService.list(queryWrapper);
|
||||
if (CollectionUtils.isEmpty(datasList)) {
|
||||
throw new ActivitiException("t_datas表中ACTI_TASK_ID为"+delegateTask.getId()+"的数据不存在");
|
||||
}
|
||||
Datas datas = datasList.get(0);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
delegateTask.setVariable("objectJson",object);
|
||||
@@ -118,6 +120,8 @@ public class BussLibrary7After implements TaskListener{
|
||||
throw new ActivitiException("1#2 提交OR驳回参数不存在");
|
||||
}
|
||||
|
||||
this.addBusProcessHistory(object,delegateTask);
|
||||
|
||||
// 存储当前节点意见
|
||||
// BusProcessNew busProcessNew = new BusProcessNew();
|
||||
// busProcessNew.setMsgType("clause");
|
||||
@@ -154,4 +158,69 @@ public class BussLibrary7After implements TaskListener{
|
||||
private String verifyObj(String str){
|
||||
return (str == null || str.equals("")) ? "" : str;
|
||||
}
|
||||
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
|
||||
Integer fs7Flag = (Integer) delegateTask.getVariable("fs7Flag");
|
||||
if (fs7Flag == 0) {
|
||||
String jsfzrUserId = json.getString("jsfzrUserId");
|
||||
// 如果存在 起草单位高级经理审核 节点的数据,taskId为空。 不用添加,否则需要添加。
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,jsfzrUserId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY8.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 起草单位高级经理审核
|
||||
BusProcessHistory qcdwgjjlshBph = new BusProcessHistory();
|
||||
qcdwgjjlshBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
qcdwgjjlshBph.setUserId(jsfzrUserId);
|
||||
qcdwgjjlshBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY8.getValue());
|
||||
qcdwgjjlshBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
qcdwgjjlshBph.setIsSub("2");
|
||||
qcdwgjjlshBph.setIsMany("2");
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY7.getValue());
|
||||
qcdwgjjlshBph.setOrderNum(orderNum + 1);
|
||||
bphList.add(qcdwgjjlshBph);
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size());
|
||||
}
|
||||
}else {
|
||||
String cxdUserId = (String) delegateTask.getVariable("cxdUserId");
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,cxdUserId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 重新技术委员会评审、评审意见修改
|
||||
BusProcessHistory psyjxgBph = new BusProcessHistory();
|
||||
psyjxgBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
psyjxgBph.setUserId(cxdUserId);
|
||||
psyjxgBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue());
|
||||
psyjxgBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
psyjxgBph.setIsSub("2");
|
||||
psyjxgBph.setIsMany("2");
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY7.getValue());
|
||||
psyjxgBph.setOrderNum(orderNum + 1);
|
||||
bphList.add(psyjxgBph);
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size());
|
||||
}
|
||||
|
||||
// 将 标准化复审 节点 设置为白色节点。
|
||||
List<String> bzhfsTaskKeyList = new ArrayList<>();
|
||||
bzhfsTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY7.getValue());
|
||||
bphService.updateImgShowColor(delegateTask.getProcessInstanceId(),bzhfsTaskKeyList,null,"0");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,11 +2,14 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
|
||||
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.IBusProcessHistoryService;
|
||||
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 org.activiti.engine.ProcessEngine;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.activiti.engine.history.HistoricProcessInstance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -31,9 +34,23 @@ public class BussLibrary7Before implements TaskListener{
|
||||
busBean.saveOrUpdate(one1);
|
||||
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink("bussLibrary7?prcType=buss1");
|
||||
String link = "bussLibrary7?prcType=buss1";
|
||||
ProcessEngine processEngine = SpringContextUtil.getBean(ProcessEngine.class);
|
||||
HistoricProcessInstance pi = processEngine.getHistoryService()//与历史数据(历史表)相关的Service
|
||||
.createHistoricProcessInstanceQuery()//创建历史流程实例查询
|
||||
.processInstanceId(delegateTask.getProcessInstanceId())//使用流程实例ID查询
|
||||
.singleResult();
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
if (pi != null && pi.getStartTime().after(BussUtils.oldAndNew)) {
|
||||
link = link + "&taskDefinitionKey=bussLibrary7&oldAndNew=new";
|
||||
one1.setLink(link);
|
||||
} else {
|
||||
one1.setLink(link);
|
||||
}
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,16 +3,21 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
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.IBusProcessHistoryService;
|
||||
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.BussLibraryNodeKeyEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.ActivitiException;
|
||||
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;
|
||||
@@ -30,7 +35,12 @@ public class BussLibrary8After implements TaskListener{
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
queryWrapper.orderByDesc("CREATE_TIME");
|
||||
List<Datas> datasList = datasService.list(queryWrapper);
|
||||
if (CollectionUtils.isEmpty(datasList)) {
|
||||
throw new ActivitiException("t_datas表中ACTI_TASK_ID为"+delegateTask.getId()+"的数据不存在");
|
||||
}
|
||||
Datas datas = datasList.get(0);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
delegateTask.setVariable("objectJson",object);
|
||||
@@ -95,9 +105,77 @@ public class BussLibrary8After implements TaskListener{
|
||||
}else {
|
||||
throw new ActivitiException("1#2 提交OR驳回参数不存在");
|
||||
}
|
||||
|
||||
this.addBusProcessHistory(object,delegateTask);
|
||||
}
|
||||
|
||||
private String verifyObj(String str){
|
||||
return (str == null || str.equals("")) ? "" : str;
|
||||
}
|
||||
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
|
||||
Integer jsfzrFlag = (Integer) delegateTask.getVariable("jsfzrFlag");
|
||||
if (jsfzrFlag == 0) {
|
||||
String bzUserId = json.getString("bzUserId");
|
||||
// 如果存在 标准法规部高级经理审核 节点的数据,taskId为空。 不用添加,否则需要添加。
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,bzUserId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY9.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 标准法规部高级经理审核
|
||||
BusProcessHistory bzfgbgjjlshBph = new BusProcessHistory();
|
||||
bzfgbgjjlshBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
bzfgbgjjlshBph.setUserId(bzUserId);
|
||||
bzfgbgjjlshBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY9.getValue());
|
||||
bzfgbgjjlshBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
bzfgbgjjlshBph.setIsSub("2");
|
||||
bzfgbgjjlshBph.setIsMany("2");
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY8.getValue());
|
||||
bzfgbgjjlshBph.setOrderNum(orderNum + 1);
|
||||
bphList.add(bzfgbgjjlshBph);
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size());
|
||||
}
|
||||
}else {
|
||||
String cxdUserId = (String) delegateTask.getVariable("cxdUserId");
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,cxdUserId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 重新技术委员会评审、评审意见修改
|
||||
BusProcessHistory psyjxgBph = new BusProcessHistory();
|
||||
psyjxgBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
psyjxgBph.setUserId(cxdUserId);
|
||||
psyjxgBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue());
|
||||
psyjxgBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
psyjxgBph.setIsSub("2");
|
||||
psyjxgBph.setIsMany("2");
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY8.getValue());
|
||||
psyjxgBph.setOrderNum(orderNum + 1);
|
||||
bphList.add(psyjxgBph);
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size());
|
||||
}
|
||||
|
||||
// 将 标准化复审、起草单位高级经理审核 节点 设置为白色节点。
|
||||
List<String> bzhfsTaskKeyList = new ArrayList<>();
|
||||
bzhfsTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY7.getValue());
|
||||
bzhfsTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY8.getValue());
|
||||
bphService.updateImgShowColor(delegateTask.getProcessInstanceId(),bzhfsTaskKeyList,null,"0");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,11 +2,14 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
|
||||
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.IBusProcessHistoryService;
|
||||
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 org.activiti.engine.ProcessEngine;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.activiti.engine.history.HistoricProcessInstance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -30,10 +33,21 @@ public class BussLibrary8Before implements TaskListener{
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
|
||||
ProcessEngine processEngine = SpringContextUtil.getBean(ProcessEngine.class);
|
||||
HistoricProcessInstance pi = processEngine.getHistoryService()//与历史数据(历史表)相关的Service
|
||||
.createHistoricProcessInstanceQuery()//创建历史流程实例查询
|
||||
.processInstanceId(delegateTask.getProcessInstanceId())//使用流程实例ID查询
|
||||
.singleResult();
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink("bussLibrary8?prcType=buss1");
|
||||
String link = "bussLibrary8?prcType=buss1";
|
||||
if (pi != null && pi.getStartTime().after(BussUtils.oldAndNew)) {
|
||||
link = link + "&taskDefinitionKey=bussLibrary8&oldAndNew=new";
|
||||
}
|
||||
one1.setLink(link);
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,16 +3,21 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
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.IBusProcessHistoryService;
|
||||
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.BussLibraryNodeKeyEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.ActivitiException;
|
||||
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;
|
||||
@@ -30,7 +35,12 @@ public class BussLibrary9After implements TaskListener{
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
queryWrapper.orderByDesc("CREATE_TIME");
|
||||
List<Datas> datasList = datasService.list(queryWrapper);
|
||||
if (CollectionUtils.isEmpty(datasList)) {
|
||||
throw new ActivitiException("t_datas表中ACTI_TASK_ID为"+delegateTask.getId()+"的数据不存在");
|
||||
}
|
||||
Datas datas = datasList.get(0);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
delegateTask.setVariable("objectJson",object);
|
||||
@@ -149,9 +159,111 @@ public class BussLibrary9After implements TaskListener{
|
||||
}else {
|
||||
throw new ActivitiException("1#2 提交OR驳回参数不存在");
|
||||
}
|
||||
this.addBusProcessHistory(object,delegateTask);
|
||||
}
|
||||
|
||||
private String verifyObj(String str){
|
||||
return (str == null || str.equals("")) ? "" : str;
|
||||
}
|
||||
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
|
||||
Integer bzFlag = (Integer) delegateTask.getVariable("bzFlag");
|
||||
if (bzFlag == 0) {
|
||||
String fzrUserId = json.getString("fzrUserId");
|
||||
// 如果存在 审定-起草单位中心主任 节点的数据,taskId为空。 不用添加,否则需要添加。
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId, delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId, fzrUserId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY10.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 审定-起草单位中心主任
|
||||
BusProcessHistory sdBph = new BusProcessHistory();
|
||||
sdBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
sdBph.setUserId(fzrUserId);
|
||||
sdBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY10.getValue());
|
||||
sdBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
sdBph.setIsSub("2");
|
||||
sdBph.setIsMany("2");
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(), BussLibraryNodeKeyEnum.BUSS_LIBRARY9.getValue());
|
||||
sdBph.setOrderNum(orderNum + 1);
|
||||
bphList.add(sdBph);
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(), orderNum + 1, bphList.size());
|
||||
}
|
||||
} else if (bzFlag == 1) {
|
||||
// 用户退回时 选择了其他问题
|
||||
String cxdUserId = (String) delegateTask.getVariable("cxdUserId");
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId, delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId, cxdUserId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 重新技术委员会评审、评审意见修改
|
||||
BusProcessHistory psyjxgBph = new BusProcessHistory();
|
||||
psyjxgBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
psyjxgBph.setUserId(cxdUserId);
|
||||
psyjxgBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue());
|
||||
psyjxgBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
psyjxgBph.setIsSub("2");
|
||||
psyjxgBph.setIsMany("2");
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(), BussLibraryNodeKeyEnum.BUSS_LIBRARY9.getValue());
|
||||
psyjxgBph.setOrderNum(orderNum + 1);
|
||||
bphList.add(psyjxgBph);
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(), orderNum + 1, bphList.size());
|
||||
}
|
||||
|
||||
// 退回到了 重新技术委员会评审 标准化复审、起草单位高级经理审核、标准法规部高级经理审核 节点,设置为在流程图展示空白
|
||||
List<String> qczhTaskKeyList = new ArrayList<>();
|
||||
qczhTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY7.getValue());
|
||||
qczhTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY8.getValue());
|
||||
qczhTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY9.getValue());
|
||||
bphService.updateImgShowColor(delegateTask.getProcessInstanceId(),qczhTaskKeyList,null,"0");
|
||||
} else if (bzFlag == 2) {
|
||||
// 用户退回时 选择了质量问题
|
||||
String cfqUserId = (String) delegateTask.getVariable("cfqUserId");
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId, delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId, cfqUserId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY_C1.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 重新起草
|
||||
BusProcessHistory cxqcBph = new BusProcessHistory();
|
||||
cxqcBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
cxqcBph.setUserId(cfqUserId);
|
||||
cxqcBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY_C1.getValue());
|
||||
cxqcBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
cxqcBph.setIsSub("2");
|
||||
cxqcBph.setIsMany("2");
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(), BussLibraryNodeKeyEnum.BUSS_LIBRARY9.getValue());
|
||||
cxqcBph.setOrderNum(orderNum + 1);
|
||||
bphList.add(cxqcBph);
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(), orderNum + 1, bphList.size());
|
||||
}
|
||||
|
||||
// 退回到了重新起草节点,需要将除了起草、重新起草其他的节点,全部设置为 流程图中展示空。
|
||||
List<String> qczhTaskKeyList = new ArrayList<>();
|
||||
qczhTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY1.getValue());
|
||||
qczhTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY_C1.getValue());
|
||||
bphService.updateImgShowColor(delegateTask.getProcessInstanceId(),null,qczhTaskKeyList,"0");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,11 +2,14 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
|
||||
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.IBusProcessHistoryService;
|
||||
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 org.activiti.engine.ProcessEngine;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.activiti.engine.history.HistoricProcessInstance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -30,10 +33,21 @@ public class BussLibrary9Before implements TaskListener{
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
|
||||
ProcessEngine processEngine = SpringContextUtil.getBean(ProcessEngine.class);
|
||||
HistoricProcessInstance pi = processEngine.getHistoryService()//与历史数据(历史表)相关的Service
|
||||
.createHistoricProcessInstanceQuery()//创建历史流程实例查询
|
||||
.processInstanceId(delegateTask.getProcessInstanceId())//使用流程实例ID查询
|
||||
.singleResult();
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink("bussLibrary9?prcType=buss1");
|
||||
String link = "bussLibrary9?prcType=buss1";
|
||||
if (pi != null && pi.getStartTime().after(BussUtils.oldAndNew)) {
|
||||
link = link + "&taskDefinitionKey=bussLibrary9&oldAndNew=new";
|
||||
}
|
||||
one1.setLink(link);
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,16 +3,21 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
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.IBusProcessHistoryService;
|
||||
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.BussLibraryNodeKeyEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.ActivitiException;
|
||||
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.text.SimpleDateFormat;
|
||||
@@ -32,7 +37,12 @@ public class BussLibraryC3After implements TaskListener {
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
queryWrapper.orderByDesc("CREATE_TIME");
|
||||
List<Datas> datasList = datasService.list(queryWrapper);
|
||||
if (CollectionUtils.isEmpty(datasList)) {
|
||||
throw new ActivitiException("t_datas表中ACTI_TASK_ID为"+delegateTask.getId()+"的数据不存在");
|
||||
}
|
||||
Datas datas = datasList.get(0);
|
||||
|
||||
JSONObject objectNew = JSONObject.parseObject(datas.getFormValsJson());
|
||||
// delegateTask.setVariable("objectJson",object);
|
||||
@@ -100,9 +110,43 @@ public class BussLibraryC3After implements TaskListener {
|
||||
busProcessNewNext.setPrcName(prcName);
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
|
||||
this.addBusProcessHistory(objectNew,delegateTask);
|
||||
}
|
||||
|
||||
private String verifyObj(String str) {
|
||||
return (str == null || str.equals("")) ? "" : str;
|
||||
}
|
||||
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
String bzhUserId = json.getString("bzhUserId");
|
||||
|
||||
// 如果存在标准化初审节点的数据,taskId为空。 不用添加,否则需要添加。
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,bzhUserId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY4.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 标准化初审
|
||||
BusProcessHistory pzBph = new BusProcessHistory();
|
||||
pzBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
pzBph.setUserId(bzhUserId);
|
||||
pzBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY4.getValue());
|
||||
pzBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
pzBph.setIsSub("2");
|
||||
pzBph.setIsMany("2");
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY_C3.getValue());
|
||||
pzBph.setOrderNum(orderNum + 1);
|
||||
|
||||
bphList.add(pzBph);
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,12 +2,17 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
|
||||
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.IBusProcessHistoryService;
|
||||
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.BussLibraryNodeKeyEnum;
|
||||
import org.activiti.engine.ProcessEngine;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.activiti.engine.history.HistoricProcessInstance;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
@@ -30,10 +35,26 @@ public class BussLibraryC3Before implements TaskListener{
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
|
||||
ProcessEngine processEngine = SpringContextUtil.getBean(ProcessEngine.class);
|
||||
HistoricProcessInstance pi = processEngine.getHistoryService()//与历史数据(历史表)相关的Service
|
||||
.createHistoricProcessInstanceQuery()//创建历史流程实例查询
|
||||
.processInstanceId(delegateTask.getProcessInstanceId())//使用流程实例ID查询
|
||||
.singleResult();
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink("bussLibraryC3?prcType=buss1");
|
||||
String link = "bussLibraryC3?prcType=buss1";
|
||||
if (pi != null && pi.getStartTime().after(BussUtils.oldAndNew)) {
|
||||
link = link + "&taskDefinitionKey=bussLibraryC3&oldAndNew=new";
|
||||
}
|
||||
one1.setLink(link);
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
|
||||
// // 标准化初审节点,设置为在流程图展示空白
|
||||
// List<String> qczhTaskKeyList = new ArrayList<>();
|
||||
// qczhTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY4.getValue());
|
||||
// bphService.updateImgShowColor(delegateTask.getProcessInstanceId(),qczhTaskKeyList,null,"0");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,16 +2,21 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory;
|
||||
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.IBusProcessHistoryService;
|
||||
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.BussLibraryNodeKeyEnum;
|
||||
import com.ydw.bat.wkflow.util.enums.FlowTypeEnum;
|
||||
import org.activiti.engine.ActivitiException;
|
||||
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.text.SimpleDateFormat;
|
||||
@@ -31,7 +36,12 @@ public class BussLibraryC6After implements TaskListener{
|
||||
|
||||
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
queryWrapper.orderByDesc("CREATE_TIME");
|
||||
List<Datas> datasList = datasService.list(queryWrapper);
|
||||
if (CollectionUtils.isEmpty(datasList)) {
|
||||
throw new ActivitiException("t_datas表中ACTI_TASK_ID为"+delegateTask.getId()+"的数据不存在");
|
||||
}
|
||||
Datas datas = datasList.get(0);
|
||||
|
||||
JSONObject objectNew = JSONObject.parseObject(datas.getFormValsJson());
|
||||
// delegateTask.setVariable("objectJson",object);
|
||||
@@ -108,9 +118,42 @@ public class BussLibraryC6After implements TaskListener{
|
||||
BussUtils.evalSave(delegateTask, objectNew, prcName, delegateTask.getAssignee());
|
||||
}
|
||||
}
|
||||
|
||||
this.addBusProcessHistory(objectNew,delegateTask);
|
||||
}
|
||||
|
||||
private String verifyObj(String str){
|
||||
return (str == null || str.equals("")) ? "" : str;
|
||||
}
|
||||
|
||||
public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) {
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
String fggcsUserId = json.getString("fggcsUserId");
|
||||
|
||||
// 如果存在 技术委员会评审、评审意见修改 节点的数据,taskId为空。 不用添加,否则需要添加。
|
||||
QueryWrapper<BusProcessHistory> bphQueryWrap = new QueryWrapper<>();
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId());
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,fggcsUserId);
|
||||
bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY7.getValue());
|
||||
bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId);
|
||||
|
||||
List<BusProcessHistory> busProcessHistoryList = bphService.list(bphQueryWrap);
|
||||
if (CollectionUtils.isEmpty(busProcessHistoryList)) {
|
||||
List<BusProcessHistory> bphList = new ArrayList<>();
|
||||
// 标准化复审
|
||||
BusProcessHistory hzhfsBph = new BusProcessHistory();
|
||||
hzhfsBph.setActiProcInstId(delegateTask.getProcessInstanceId());
|
||||
hzhfsBph.setUserId(fggcsUserId);
|
||||
hzhfsBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY7.getValue());
|
||||
hzhfsBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue());
|
||||
hzhfsBph.setIsSub("2");
|
||||
hzhfsBph.setIsMany("2");
|
||||
int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue());
|
||||
hzhfsBph.setOrderNum(orderNum + 1);
|
||||
bphList.add(hzhfsBph);
|
||||
|
||||
bphService.insertBatch(bphList);
|
||||
bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,12 +2,17 @@ package com.ydw.bat.wkflow.listener.bussLibrary;
|
||||
|
||||
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.IBusProcessHistoryService;
|
||||
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.BussLibraryNodeKeyEnum;
|
||||
import org.activiti.engine.ProcessEngine;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
import org.activiti.engine.history.HistoricProcessInstance;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
@@ -30,10 +35,30 @@ public class BussLibraryC6Before implements TaskListener{
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
|
||||
ProcessEngine processEngine = SpringContextUtil.getBean(ProcessEngine.class);
|
||||
HistoricProcessInstance pi = processEngine.getHistoryService()//与历史数据(历史表)相关的Service
|
||||
.createHistoricProcessInstanceQuery()//创建历史流程实例查询
|
||||
.processInstanceId(delegateTask.getProcessInstanceId())//使用流程实例ID查询
|
||||
.singleResult();
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink("bussLibraryC6?prcType=buss1");
|
||||
String link = "bussLibraryC6?prcType=buss1";
|
||||
if (pi != null && pi.getStartTime().after(BussUtils.oldAndNew)) {
|
||||
link = link + "&taskDefinitionKey=bussLibraryC6&oldAndNew=new";
|
||||
}
|
||||
one1.setLink(link);
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class);
|
||||
bphService.updateTaskInfo(delegateTask);
|
||||
//
|
||||
// // 标准化复审节点,设置为在流程图展示空白
|
||||
// List<String> qczhTaskKeyList = new ArrayList<>();
|
||||
// qczhTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY7.getValue());
|
||||
// qczhTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY8.getValue());
|
||||
// qczhTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY9.getValue());
|
||||
// qczhTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY10.getValue());
|
||||
// qczhTaskKeyList.add(BussLibraryNodeKeyEnum.BUSS_LIBRARY11.getValue());
|
||||
// bphService.updateImgShowColor(delegateTask.getProcessInstanceId(),qczhTaskKeyList,null,"0");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,6 +24,9 @@ import java.util.List;
|
||||
*/
|
||||
public class BussUtils {
|
||||
|
||||
// 初始化一个时间,用于判断数据是否为新数据,2024-04-01 00:00:00后的数据为新数据
|
||||
public static final Date oldAndNew = new Date(1711900800000L);
|
||||
|
||||
public static void evalSave(DelegateTask delegateTask, JSONObject object, String prcName, String localUser) {
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyy-MM-dd HH:mm:ss");
|
||||
IBusProcessEvaluationHisService evaluationHisService = SpringContextUtil.getBean(IBusProcessEvaluationHisService.class);
|
||||
|
||||
@@ -0,0 +1,73 @@
|
||||
package com.ydw.bat.wkflow.util.enums;
|
||||
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
/**
|
||||
* 企标制修订-技术标准-任务节点定义key
|
||||
*/
|
||||
public enum BussLibraryNodeKeyEnum {
|
||||
BUSS_LIBRARY1("BussLibrary1","起草",1,true),
|
||||
BUSS_LIBRARY2("BussLibrary2","企标编写",2,true),
|
||||
BUSS_LIBRARY3("BussLibrary3","企标编写汇总",3,true),
|
||||
BUSS_LIBRARY4("BussLibrary4","标准化初审",4,true),
|
||||
BUSS_LIBRARY_C3("BussLibraryC3","重新企标编写汇总",5,false),
|
||||
BUSS_LIBRARY5("BussLibrary5","征求意见",6,true),
|
||||
BUSS_LIBRARY6("BussLibrary6","技术委员会评审、评审意见修改",7,true),
|
||||
BUSS_LIBRARY7("BussLibrary7","标准化复审",8,true),
|
||||
BUSS_LIBRARY_C6("BussLibraryC6","重新技术委员会评审、评审意见修改",9,false),
|
||||
BUSS_LIBRARY8("BussLibrary8","起草单位高级经理审核",10,true),
|
||||
BUSS_LIBRARY9("BussLibrary9","标准法规部高级经理审核",11,true),
|
||||
BUSS_LIBRARY_C1("BussLibraryC1","重新起草",12,false),
|
||||
BUSS_LIBRARY10("BussLibrary10","审定",13,true),
|
||||
BUSS_LIBRARY11("BussLibrary11","批准",14,true),
|
||||
BUSS_LIBRARY12("BussLibrary12","主起草人培训",15,true),
|
||||
BUSS_LIBRARY13("BussLibrary13","发布",16,true),
|
||||
;
|
||||
|
||||
private String value;
|
||||
private String lable;
|
||||
private Integer orderNum;
|
||||
private boolean showFlag; // 节点是否展示,true展示,false
|
||||
|
||||
private BussLibraryNodeKeyEnum(String value, String lable, Integer orderNum,boolean showFlag) {
|
||||
this.value = value;
|
||||
this.lable = lable;
|
||||
this.orderNum = orderNum;
|
||||
this.showFlag = showFlag;
|
||||
}
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
public String getLable() {
|
||||
return lable;
|
||||
}
|
||||
public Integer getOrderNum() {
|
||||
return orderNum;
|
||||
}
|
||||
|
||||
public static String getLableByValue(String value){
|
||||
String result = "";
|
||||
for (BussLibraryNodeKeyEnum nodeKeyEnum : BussLibraryNodeKeyEnum.values()) {
|
||||
if (StringUtils.equals(nodeKeyEnum.getValue(),value)) {
|
||||
result = nodeKeyEnum.getLable();
|
||||
break;
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
public static List<BussLibraryNodeKeyEnum> getBussLibraryNodeKeyEnum(){
|
||||
List<BussLibraryNodeKeyEnum> results = new ArrayList<>();
|
||||
for (BussLibraryNodeKeyEnum nodeKeyEnum : BussLibraryNodeKeyEnum.values()) {
|
||||
if (nodeKeyEnum.showFlag) {
|
||||
results.add(nodeKeyEnum);
|
||||
}
|
||||
}
|
||||
return results;
|
||||
}
|
||||
}
|
||||
@@ -1,9 +1,13 @@
|
||||
package com.ydw.bat.wkflow.util.enums;
|
||||
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
/**
|
||||
* 流程类型枚举类
|
||||
*/
|
||||
public enum FlowTypeEnum {
|
||||
BZZQYJLC("3","标准征求意见流程",""),
|
||||
QBZXD_JSBZ("buss1","企标制修订-技术标准",""),
|
||||
ZCZQYJLC("33","政策征求意见流程","policyConsultation"),
|
||||
ZCHGXXMSCLC("34","重点认证标准/政策合规性项目审查流程","policyComplianceReview"),
|
||||
;
|
||||
@@ -27,4 +31,15 @@ public enum FlowTypeEnum {
|
||||
public String getRoute() {
|
||||
return route;
|
||||
}
|
||||
|
||||
public static FlowTypeEnum getFlowTypeEnumByValue(String value){
|
||||
FlowTypeEnum result = null;
|
||||
for (FlowTypeEnum flowTypeEnum : FlowTypeEnum.values()) {
|
||||
if (StringUtils.equals(flowTypeEnum.getValue(),value)) {
|
||||
result = flowTypeEnum;
|
||||
break;
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,68 @@
|
||||
package com.ydw.bat.wkflow.util.enums;
|
||||
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 标准征求意见流程-任务节点定义key
|
||||
*/
|
||||
public enum StandardCommentNewProcessNodeKeyEnum {
|
||||
STAND_ASK_FOR_OPINION1("StandAskForOpinion1","起草",0,true),
|
||||
// SUB_PROCESS("subProcess","子流程",1),
|
||||
STAND_ASK_FOR_OPINION2("StandAskForOpinion2","任务分发",2,true),
|
||||
STAND_ASK_FOR_OPINION3("StandAskForOpinion3","意见反馈",3,true),
|
||||
STAND_ASK_FOR_OPINION4("StandAskForOpinion4","意见汇总审批",4,true),
|
||||
STAND_ASK_FOR_OPINION5("StandAskForOpinion5","意见审批",5,true),
|
||||
STAND_ASK_FOR_OPINION6("StandAskForOpinion6","管理员",6,true),
|
||||
STAND_ASK_FOR_OPINION7("StandAskForOpinion7","意见处理",7,true),
|
||||
STAND_ASK_FOR_OPINION8("StandAskForOpinion8","会签",8,true),
|
||||
STAND_ASK_FOR_OPINION9("StandAskForOpinion9","审核",9,true),
|
||||
STAND_ASK_FOR_OPINION10("StandAskForOpinion10","审定",10,true),
|
||||
STAND_ASK_FOR_OPINION11("StandAskForOpinion11","批准",11,true),
|
||||
;
|
||||
|
||||
private String value;
|
||||
private String lable;
|
||||
private Integer orderNum;
|
||||
private boolean showFlag;
|
||||
|
||||
private StandardCommentNewProcessNodeKeyEnum(String value, String lable,Integer orderNum,boolean showFlag) {
|
||||
this.value = value;
|
||||
this.lable = lable;
|
||||
this.orderNum = orderNum;
|
||||
this.showFlag = showFlag;
|
||||
}
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
public String getLable() {
|
||||
return lable;
|
||||
}
|
||||
public Integer getOrderNum() {
|
||||
return orderNum;
|
||||
}
|
||||
|
||||
public static String getLableByValue(String value){
|
||||
String result = "";
|
||||
for (StandardCommentNewProcessNodeKeyEnum nodeKeyEnum : StandardCommentNewProcessNodeKeyEnum.values()) {
|
||||
if (StringUtils.equals(nodeKeyEnum.getValue(),value)) {
|
||||
result = nodeKeyEnum.getLable();
|
||||
break;
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
public static List<StandardCommentNewProcessNodeKeyEnum> getStandardCommentNewProcessNodeKeyEnum(){
|
||||
List<StandardCommentNewProcessNodeKeyEnum> results = new ArrayList<>();
|
||||
for (StandardCommentNewProcessNodeKeyEnum nodeKeyEnum : StandardCommentNewProcessNodeKeyEnum.values()) {
|
||||
if (nodeKeyEnum.showFlag) {
|
||||
results.add(nodeKeyEnum);
|
||||
}
|
||||
}
|
||||
return results;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
package com.ydw.bat.wkflow.util.enums;
|
||||
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
/**
|
||||
* 任务状态枚举类
|
||||
*/
|
||||
public enum TaskStatusEnum {
|
||||
|
||||
TODO("未完成","todo"), // 待办
|
||||
RECEIVED("已接收","received"), // 已接收
|
||||
DONE("已完成","done"), // 已办
|
||||
;
|
||||
|
||||
TaskStatusEnum(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;
|
||||
}
|
||||
|
||||
public static String getLabelByValue(String value) {
|
||||
String result = "";
|
||||
for (TaskStatusEnum taskStatusEnum : TaskStatusEnum.values()) {
|
||||
if (StringUtils.equals(taskStatusEnum.getValue(), value)) {
|
||||
result = taskStatusEnum.getLabel();
|
||||
break;
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
@@ -36,7 +36,7 @@ spring:
|
||||
datasource:
|
||||
type: com.alibaba.druid.pool.DruidDataSource
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
url: jdbc:mysql://121.36.69.172:3307/foton-bat-wkflow-test?nullCatalogMeansCurrent=true&serverTimezone=Asia/Shanghai&useSSL=false&characterEncoding=utf-8
|
||||
url: jdbc:mysql://39.98.140.126:3306/foton-bat-wkflow?nullCatalogMeansCurrent=true&serverTimezone=Asia/Shanghai&useSSL=false&characterEncoding=utf-8
|
||||
username: root
|
||||
password: hzwlsoft.com
|
||||
initialSize: 5
|
||||
@@ -74,10 +74,10 @@ spring:
|
||||
active: dev
|
||||
# 相关服务配置同业务系统
|
||||
rabbitmq:
|
||||
host: 121.36.69.172
|
||||
host: 39.98.140.126
|
||||
port: 5672
|
||||
username: admin
|
||||
password: hzwlsoft.com
|
||||
username: guest
|
||||
password: guest
|
||||
listener:
|
||||
direct:
|
||||
# 默认加载 发版 需改为 true
|
||||
@@ -146,4 +146,4 @@ buss:
|
||||
down:
|
||||
file:
|
||||
path: https://srms.foton.com.cn/file/
|
||||
# path: http://foton.natapp1.cc/file/
|
||||
# path: http://foton.natapp1.cc/file/
|
||||
|
||||
@@ -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.BusProcessHistoryMapper">
|
||||
|
||||
</mapper>
|
||||
Reference in New Issue
Block a user