diff --git a/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFApproveAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFApproveAfter.java new file mode 100644 index 00000000..0a272fba --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFApproveAfter.java @@ -0,0 +1,95 @@ +package com.ydw.bat.wkflow.listener.JoinStandardFiling; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName; +import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew; +import com.ydw.bat.wkflow.business_main.datas.entity.Datas; +import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService; +import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService; +import com.ydw.bat.wkflow.business_main.datas.service.IDatasService; +import com.ydw.bat.wkflow.util.SpringContextUtil; +import org.activiti.engine.delegate.DelegateTask; +import org.activiti.engine.delegate.TaskListener; +import org.apache.commons.lang.StringUtils; + +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Date; +import java.util.List; + +public class JSFApproveAfter implements TaskListener { + @Override + public void notify(DelegateTask delegateTask) { + //默认流程数据接口 + IDatasService datasService = SpringContextUtil.getBean(IDatasService.class); + //流程节点信息 + IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); + //流程信息 + IBusProcessNameService busProcessNameService = SpringContextUtil.getBean(IBusProcessNameService.class); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId()); + Datas datas = datasService.getOne(queryWrapper); + + JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); + delegateTask.setVariable("objectJson", object); + + String approvalOpinion = object.get("approvalOpinion") == null ? "" : object.get("approvalOpinion").toString(); + + if ("1".equalsIgnoreCase(approvalOpinion)) { + delegateTask.setVariable("Standardizer2", object.getString("Standardizer2User")); + + BusProcessNew busProcessNew = new BusProcessNew(); + busProcessNew.setMsgType("clause"); + busProcessNew.setPId(delegateTask.getProcessInstanceId()); + busProcessNew.setMesg(object.toJSONString()); + busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey()); + busProcessNew.setFinishFlag("0"); + busProcessNew.setTaskInfo(delegateTask.getName()); + busProcessNew.setUserId(object.getString("Standardizer2User")); + busProcessNew.setPrcName(delegateTask.getVariable("prcs",String.class)); + busBean.save(busProcessNew); + + func1(delegateTask, busBean, object, "1"); + delegateTask.setVariable("bzFlag", 2); + } else { + delegateTask.setVariable("bzFlag", 1); + func2(delegateTask, busBean, object, "0", busProcessNameService); + } + } + + private void func1(DelegateTask delegateTask, IBusProcessNewService busBean, JSONObject object, String commitFlag) { + QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.eq("TASK_ID", delegateTask.getId()); + BusProcessNew one1 = busBean.getOne(queryWrapper1); + if (one1 != null) { + one1.setCommitFlag(commitFlag); + one1.setCommitText(object.getString("commentText")); + busBean.saveOrUpdate(one1); + } + } + + private void func2(DelegateTask delegateTask, IBusProcessNewService busBean, JSONObject object, String commitFlag, IBusProcessNameService busProcessNameService) { + QueryWrapper queryWrapper2 = new QueryWrapper(); + queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId()); + BusProcessName one2 = busProcessNameService.getOne(queryWrapper2); + String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); + if (one2 != null) { + //one2.setPrcName("入库流程结束"); + one2.setOverTime(OVERTIME); + one2.setPrcType("1"); + busProcessNameService.saveOrUpdate(one2); + } + + QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.eq("TASK_ID", delegateTask.getId()); + BusProcessNew one1 = busBean.getOne(queryWrapper1); + if (one1 != null) { + one1.setCommitFlag(commitFlag); + one1.setCommitText(object.getString("commentText")); + busBean.saveOrUpdate(one1); + } + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFApproveBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFApproveBefore.java new file mode 100644 index 00000000..7d29b130 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFApproveBefore.java @@ -0,0 +1,34 @@ +package com.ydw.bat.wkflow.listener.JoinStandardFiling; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew; +import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService; +import com.ydw.bat.wkflow.business_mq.service.CreateMQService; +import com.ydw.bat.wkflow.util.SpringContextUtil; +import org.activiti.engine.delegate.DelegateTask; +import org.activiti.engine.delegate.TaskListener; + +import java.util.List; + +public class JSFApproveBefore implements TaskListener { + @Override + public void notify(DelegateTask delegateTask) { + IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); + QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); + queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); + queryWrapper1.isNull("TASK_ID"); + List list = busBean.list(queryWrapper1); + if(!list.isEmpty()){ + BusProcessNew one1 = list.get(0); + one1.setTaskId(delegateTask.getId()); + busBean.saveOrUpdate(one1); + + CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class); + // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 + one1.setLink("bzqdfbStep5?prcType=15"); + one1.setTaskInfo(delegateTask.getName()); + oaService.sendTodoMq(one1); + } + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFAuditAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFAuditAfter.java new file mode 100644 index 00000000..62ceb391 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFAuditAfter.java @@ -0,0 +1,106 @@ +package com.ydw.bat.wkflow.listener.JoinStandardFiling; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName; +import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew; +import com.ydw.bat.wkflow.business_main.datas.entity.Datas; +import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService; +import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService; +import com.ydw.bat.wkflow.business_main.datas.service.IDatasService; +import com.ydw.bat.wkflow.util.SpringContextUtil; +import org.activiti.engine.delegate.DelegateTask; +import org.activiti.engine.delegate.TaskListener; +import org.apache.commons.lang.StringUtils; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +public class JSFAuditAfter implements TaskListener { + @Override + public void notify(DelegateTask delegateTask) { + //默认流程数据接口 + IDatasService datasService = SpringContextUtil.getBean(IDatasService.class); + //流程节点信息 + IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); + //流程信息 + IBusProcessNameService busProcessNameService = SpringContextUtil.getBean(IBusProcessNameService.class); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId()); + Datas datas = datasService.getOne(queryWrapper); + + JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); + delegateTask.setVariable("objectJson", object); + + List nextUserList = new ArrayList(); +// 赋值 + delegateTask.setVariable("statuteminister", object.getString("statuteministerUser")); + nextUserList.add(object.getString("statuteministerUser")); + delegateTask.setVariable("Standardizer2", object.getString("Standardizer2User")); + nextUserList.add(object.getString("Standardizer2User")); + +// 逻辑判断是否会签 signFlag + + if(object.getString("signFlag").equals("1")) { + delegateTask.setVariable("gcsFlag", 1); + if (StringUtils.isNotBlank(object.getString("statuteministerUser"))) { + + if (object.getString("statuteministerUser").contains(",")) { + nextUserList = Arrays.asList(object.getString("statuteministerUser").split(",")); + } else { + nextUserList.add(object.getString("statuteministerUser")); + } + } + } else { + delegateTask.setVariable("gcsFlag", 2); + if (StringUtils.isNotBlank(object.getString("Standardizer2User"))) { + delegateTask.setVariable("Standardizer2", object.getString("Standardizer2User")); + nextUserList.add(object.getString("Standardizer2User")); + } + } + + //截止时间 流程描述 创建人 + String user = object.getString("prcCreateUser"); + String username = object.getString("prcCreateUserName"); + delegateTask.setVariable("prcCreateUser", user); + delegateTask.setVariable("prcCreateUserName", username); + String standName = object.getString("listName"); + delegateTask.setVariable("listName",standName); + String prcName=""; + if(object.getString("signFlag").equals("1")) { + prcName = standName + "-加入标准化协会信息备案-批准"; + }else { + prcName = standName + "-加入标准化协会信息备案-填写入会信息"; + } + + + QueryWrapper queryWrapper2 = new QueryWrapper(); + queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId()); + BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); + + if(one1!=null){ + one1.setPrcType("15"); + one1.setPrcName(prcName); + one1.setCreatUser(user); + one1.setCreatUserName(username); + busProcessNameService.saveOrUpdate(one1); + } + + if (nextUserList != null && !nextUserList.isEmpty()) { + for (String nextUser : nextUserList) { + BusProcessNew busProcessNewNext = new BusProcessNew(); + busProcessNewNext.setMsgType("clause"); + busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); + busProcessNewNext.setMesg(object.toJSONString()); + busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey()); + busProcessNewNext.setFinishFlag("0"); + busProcessNewNext.setTaskInfo(delegateTask.getName()); + busProcessNewNext.setUserId(nextUser); + busProcessNewNext.setPrcName(prcName); + busBean.save(busProcessNewNext); + } + } + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFAuditBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFAuditBefore.java new file mode 100644 index 00000000..43f2cc14 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFAuditBefore.java @@ -0,0 +1,34 @@ +package com.ydw.bat.wkflow.listener.JoinStandardFiling; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew; +import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService; +import com.ydw.bat.wkflow.business_mq.service.CreateMQService; +import com.ydw.bat.wkflow.util.SpringContextUtil; +import org.activiti.engine.delegate.DelegateTask; +import org.activiti.engine.delegate.TaskListener; + +import java.util.List; + +public class JSFAuditBefore implements TaskListener { + @Override + public void notify(DelegateTask delegateTask) { + IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); + QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); + queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); + queryWrapper1.isNull("TASK_ID"); + List list = busBean.list(queryWrapper1); + if(!list.isEmpty()){ + BusProcessNew one1 = list.get(0); + one1.setTaskId(delegateTask.getId()); + busBean.saveOrUpdate(one1); + + CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class); + // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 + one1.setLink("bzqdfbStep4?prcType=15"); + one1.setTaskInfo(delegateTask.getName()); + oaService.sendTodoMq(one1); + } + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFFillinformationAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFFillinformationAfter.java new file mode 100644 index 00000000..947ebfad --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFFillinformationAfter.java @@ -0,0 +1,100 @@ +package com.ydw.bat.wkflow.listener.JoinStandardFiling; + +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.dto.DetailedUpDto; +import com.ydw.bat.wkflow.business_main.datas.dto.SarLawsDetailedList; +import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName; +import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew; +import com.ydw.bat.wkflow.business_main.datas.entity.Datas; +import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService; +import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService; +import com.ydw.bat.wkflow.business_main.datas.service.IDatasService; +import com.ydw.bat.wkflow.util.SpringContextUtil; +import org.activiti.engine.ActivitiException; +import org.activiti.engine.delegate.DelegateTask; +import org.activiti.engine.delegate.TaskListener; +import org.apache.commons.lang.StringUtils; + +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Date; +import java.util.List; + +public class JSFFillinformationAfter implements TaskListener { + @Override + public void notify(DelegateTask delegateTask) { + //默认流程数据接口 + IDatasService datasService = SpringContextUtil.getBean(IDatasService.class); + //流程节点信息 + IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); + //流程信息 + IBusProcessNameService busProcessNameService = SpringContextUtil.getBean(IBusProcessNameService.class); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId()); + Datas datas = datasService.getOne(queryWrapper); + + JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); + delegateTask.setVariable("objectJson", object); + + String approvalOpinion = object.get("approvalOpinion") == null ? "" : object.get("approvalOpinion").toString(); + + if ("1".equalsIgnoreCase(approvalOpinion)) { + delegateTask.setVariable("statuteengineer", object.getString("statuteengineerUser")); + + BusProcessNew busProcessNew = new BusProcessNew(); + busProcessNew.setMsgType("clause"); + busProcessNew.setPId(delegateTask.getProcessInstanceId()); + busProcessNew.setMesg(object.toJSONString()); + busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey()); + busProcessNew.setFinishFlag("0"); + busProcessNew.setTaskInfo(delegateTask.getName()); + busProcessNew.setUserId(object.getString("statuteengineerUser")); + busProcessNew.setPrcName(delegateTask.getVariable("prcs",String.class)); + busBean.save(busProcessNew); + + func1(delegateTask, busBean, object, "1"); + delegateTask.setVariable("dlFlag", 1); + } else { + delegateTask.setVariable("dlFlag", 0); + func2(delegateTask, busBean, object, "0", busProcessNameService); + } + } + + private void func1(DelegateTask delegateTask, IBusProcessNewService busBean, JSONObject object, String commitFlag) { + QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.eq("TASK_ID", delegateTask.getId()); + BusProcessNew one1 = busBean.getOne(queryWrapper1); + if (one1 != null) { + one1.setCommitFlag(commitFlag); + one1.setCommitText(object.getString("commentText")); + busBean.saveOrUpdate(one1); + } + } + + private void func2(DelegateTask delegateTask, IBusProcessNewService busBean, JSONObject object, String commitFlag, IBusProcessNameService busProcessNameService) { + QueryWrapper queryWrapper2 = new QueryWrapper(); + queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId()); + BusProcessName one2 = busProcessNameService.getOne(queryWrapper2); + String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); + if (one2 != null) { + //one2.setPrcName("入库流程结束"); + one2.setOverTime(OVERTIME); + one2.setPrcType("1"); + busProcessNameService.saveOrUpdate(one2); + } + + QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.eq("TASK_ID", delegateTask.getId()); + BusProcessNew one1 = busBean.getOne(queryWrapper1); + if (one1 != null) { + one1.setCommitFlag(commitFlag); + one1.setCommitText(object.getString("commentText")); + busBean.saveOrUpdate(one1); + } + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFFillinformationBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFFillinformationBefore.java new file mode 100644 index 00000000..29b80451 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFFillinformationBefore.java @@ -0,0 +1,34 @@ +package com.ydw.bat.wkflow.listener.JoinStandardFiling; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew; +import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService; +import com.ydw.bat.wkflow.business_mq.service.CreateMQService; +import com.ydw.bat.wkflow.util.SpringContextUtil; +import org.activiti.engine.delegate.DelegateTask; +import org.activiti.engine.delegate.TaskListener; + +import java.util.List; + +public class JSFFillinformationBefore implements TaskListener { + @Override + public void notify(DelegateTask delegateTask) { + IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); + QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); + queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); + queryWrapper1.isNull("TASK_ID"); + List list = busBean.list(queryWrapper1); + if(!list.isEmpty()){ + BusProcessNew one1 = list.get(0); + one1.setTaskId(delegateTask.getId()); + busBean.saveOrUpdate(one1); + + CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class); + // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 + one1.setLink("bzqdfbStep3?prcType=15"); + one1.setTaskInfo(delegateTask.getName()); + oaService.sendTodoMq(one1); + } + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFIssuedAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFIssuedAfter.java index 8c60c8b2..0061a8b3 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFIssuedAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFIssuedAfter.java @@ -34,10 +34,10 @@ public class JSFIssuedAfter implements TaskListener { List nextUserList = new ArrayList(); // 配置多实例 - delegateTask.setVariable("Standardizerlist",nextUserList); + delegateTask.setVariable("Standardizer2list",nextUserList); // 赋值署名领导 - delegateTask.setVariable("Standardizerlist", object.getString("sonUser")); + delegateTask.setVariable("Standardizer2", object.getString("sonUser")); nextUserList.add(object.getString("sonUser")); diff --git a/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFstartAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFstartAfter.java index e145c81d..02b4cb67 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFstartAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/JoinStandardFiling/JSFstartAfter.java @@ -34,9 +34,9 @@ public class JSFstartAfter implements TaskListener { List nextUserList = new ArrayList(); // 配置多实例 - delegateTask.setVariable("Standardizerlist",nextUserList); + delegateTask.setVariable("Standardizer1list",nextUserList); -// 赋值署名领导 +// 赋值 delegateTask.setVariable("Standardizer1", object.getString("creatUser")); nextUserList.add(object.getString("creatUser"));