Merge remote-tracking branch 'origin/develop' into develop
This commit is contained in:
+52
@@ -9,6 +9,7 @@ import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_activiti.dto.ProcessRollBackEO;
|
||||
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.ResponseMessage;
|
||||
@@ -25,6 +26,8 @@ import org.activiti.engine.runtime.ProcessInstance;
|
||||
import org.activiti.engine.task.Task;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import com.tmsps.fk.common.base.action.BaseAction;
|
||||
@@ -195,6 +198,55 @@ public class ActivitDefineController extends BaseAction {
|
||||
return WrapMapper.ok(task.getId());
|
||||
}
|
||||
|
||||
@ApiOperation(value = "启动流程-以流程定义id")
|
||||
@ApiImplicitParams({ @ApiImplicitParam(name = "id", value = "流程定义Id"),
|
||||
@ApiImplicitParam(name = "userId", value = "流程发起人Id") })
|
||||
@PostMapping("/activiti_define_start_user_rollBack")
|
||||
public Wrapper<String> activiti_define_start_user_rollBack(@RequestBody ProcessRollBackEO processRollBackEO) {
|
||||
// 创建查询对象
|
||||
ProcessDefinitionQuery processDefinitionQuery = repositoryService.createProcessDefinitionQuery();
|
||||
// 使用流程定义的名称模糊查询
|
||||
processDefinitionQuery.processDefinitionCategory("e05707228fa5ed7b549198208ab19d97");
|
||||
long total = processDefinitionQuery.count();
|
||||
List<ProcessDefinition> list = processDefinitionQuery.orderByProcessDefinitionKey().asc().list();
|
||||
List<Map<String, Object>> definitions = ActivitiTools.turnProcessDefinitions(list);
|
||||
String pid = "";
|
||||
for(Map<String, Object> map:definitions){
|
||||
if(map.get("key").toString().equals(processRollBackEO.getId())){
|
||||
pid = map.get("id").toString();
|
||||
}
|
||||
}
|
||||
|
||||
ProcessDefinition pd = repositoryService.createProcessDefinitionQuery().processDefinitionId(pid).singleResult();
|
||||
|
||||
ProcessInstance pi = runtimeService.startProcessInstanceById(pid);
|
||||
Task task = taskService.createTaskQuery().processInstanceId(pi.getId()).singleResult();
|
||||
task.setAssignee(processRollBackEO.getUserId());
|
||||
taskService.saveTask(task);
|
||||
|
||||
if(processRollBackEO.getBpnId() == null) {
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
BusProcessName busProcessName = new BusProcessName();
|
||||
busProcessName.setPrcId(pi.getId());
|
||||
busProcessName.setCreatTime(sdf.format(new Date()));
|
||||
busProcessName.setCreatUser(processRollBackEO.getUserId());
|
||||
ResponseMessage<UserVO> byId = lawsUserInfoService.getById(processRollBackEO.getUserId());
|
||||
busProcessName.setCreatUserName(byId.getData().getUname());
|
||||
busProcessName.setPrcNum(new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date()));
|
||||
busProcessName.setMes(processRollBackEO.getJson());
|
||||
ibusprocessnameService.save(busProcessName);
|
||||
}else {
|
||||
QueryWrapper<BusProcessName> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("ID", processRollBackEO.getBpnId());
|
||||
BusProcessName one = ibusprocessnameService.getOne(queryWrapper);
|
||||
one.setPrcNum(new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date()));
|
||||
one.setPrcId(pi.getId());
|
||||
ibusprocessnameService.saveOrUpdate(one);
|
||||
}
|
||||
logger.info("启动流程实例,获取id-->{},实例名称-->{}", pi.getId(), pd.getName());
|
||||
return WrapMapper.ok(task.getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* 企标复审流程专用
|
||||
* @param id
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
package com.ydw.bat.wkflow.business_activiti.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class ProcessRollBackEO {
|
||||
|
||||
private String json;
|
||||
|
||||
private String type;
|
||||
|
||||
private String id;
|
||||
|
||||
private String userId;
|
||||
|
||||
private String bpnId;
|
||||
}
|
||||
@@ -102,6 +102,9 @@ public interface LawsUserInfoService {
|
||||
@PostMapping("slrs/sar-public-idea/addSarPublicIdea")
|
||||
public com.ydw.bat.wkflow.util.http.ResponseMessage addSarPublicIdea(@RequestBody SarPublicIdea sarPublicIdea);
|
||||
|
||||
@PostMapping("slrs/sar-public-idea-all/saveBatch")
|
||||
public com.ydw.bat.wkflow.util.http.ResponseMessage savePublicIdeaBatch(@RequestBody List<SarPublicIdeaAll> sarPublicIdea);
|
||||
|
||||
|
||||
|
||||
@PostMapping("/SarStandItems/sar-stand-items/saveBatch")
|
||||
|
||||
@@ -34,5 +34,7 @@ public class SarPublicIdea{
|
||||
|
||||
private String filesName;
|
||||
|
||||
private String wkfiles;
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,72 @@
|
||||
package com.ydw.bat.wkflow.business_slrs.dao;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
*
|
||||
* </p>
|
||||
*
|
||||
* @author super_liu
|
||||
* @since 2021-06-02
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
@TableName("sar_public_idea_all")
|
||||
@ApiModel(value="SarPublicIdeaAll对象", description="")
|
||||
public class SarPublicIdeaAll {
|
||||
|
||||
@TableId
|
||||
private String id;
|
||||
|
||||
@TableField("cid")
|
||||
private String cid;
|
||||
|
||||
@TableField("part_code")
|
||||
private String partCode;
|
||||
|
||||
@TableField("content")
|
||||
private String content;
|
||||
|
||||
@TableField("user_id")
|
||||
private String userId;
|
||||
|
||||
@TableField("user_name")
|
||||
private String userName;
|
||||
|
||||
@TableField("dept_id")
|
||||
private String deptId;
|
||||
|
||||
@TableField("dept_name")
|
||||
private String deptName;
|
||||
|
||||
@TableField("reason")
|
||||
private String reason;
|
||||
|
||||
@TableField("old_text")
|
||||
private String oldText;
|
||||
|
||||
@TableField("new_text")
|
||||
private String newText;
|
||||
|
||||
@TableField("idea_id")
|
||||
private String ideaId;
|
||||
|
||||
public static final String CID = "cid";
|
||||
|
||||
@TableField("chapter_name")
|
||||
private String chapterName;
|
||||
|
||||
@TableField(exist = false)
|
||||
private String department;
|
||||
|
||||
@TableField("wk_flag")
|
||||
private String wkFlag;
|
||||
|
||||
}
|
||||
+6
@@ -15,6 +15,7 @@ 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.lang.StringUtils;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.*;
|
||||
@@ -91,7 +92,9 @@ public class StartSurveyAfter implements TaskListener {
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
if(nextUserList != null && !nextUserList.isEmpty()){
|
||||
int i=0;
|
||||
for(String nextUser : nextUserList){
|
||||
object.put("onlyKey", i);
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
@@ -102,6 +105,7 @@ public class StartSurveyAfter implements TaskListener {
|
||||
busProcessNewNext.setUserId(nextUser);
|
||||
busProcessNewNext.setPrcName(prcName);
|
||||
busBean.save(busProcessNewNext);
|
||||
i++;
|
||||
}
|
||||
}else{
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
@@ -139,7 +143,9 @@ public class StartSurveyAfter implements TaskListener {
|
||||
.uniques(uniques)
|
||||
.files(object.getString("filesId"))
|
||||
.filesName(object.getString("filesName"))
|
||||
.wkfiles(object.getJSONArray("modelList").toJSONString())
|
||||
.build();
|
||||
delegateTask.setVariable("YJID",sarPublicIdea.getId());
|
||||
ResponseMessage result = lawsUserInfoService.addSarPublicIdea(sarPublicIdea);
|
||||
if(!result.isOk()){
|
||||
throw new ActivitiException("发起公开征求意见失败");
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
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_auth.LawsUserInfoService;
|
||||
@@ -9,6 +10,7 @@ import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.business_slrs.dao.SarPublicIdeaAll;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
@@ -17,6 +19,7 @@ import java.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
//新征求意见流程!!!!!
|
||||
public class Step10After implements TaskListener {
|
||||
@@ -40,6 +43,31 @@ public class Step10After implements TaskListener {
|
||||
String prcName ="";
|
||||
if ("0".equals(object.getString("presidentFlag"))){
|
||||
delegateTask.setVariable("presidentFlag","0");
|
||||
//加一个入库逻辑解决一些
|
||||
List<SarPublicIdeaAll> sarPublicIdeaAlls=new ArrayList<>();
|
||||
JSONArray jsonArray=JSONArray.parseArray(object.getString("info"));
|
||||
if (!jsonArray.isEmpty()){
|
||||
jsonArray.forEach(o -> {
|
||||
JSONObject object1=JSONObject.parseObject(o.toString());
|
||||
if ("1".equals(object1.getString("state"))) {
|
||||
SarPublicIdeaAll sarPublicIdeaAll = new SarPublicIdeaAll();
|
||||
sarPublicIdeaAll.setId(String.valueOf(UUID.randomUUID()));
|
||||
sarPublicIdeaAll.setChapterName(object1.getString("chapterName"));
|
||||
sarPublicIdeaAll.setOldText(object1.getString("oldText"));
|
||||
sarPublicIdeaAll.setNewText(object1.getString("newText"));
|
||||
sarPublicIdeaAll.setReason(object1.getString("reason"));
|
||||
sarPublicIdeaAll.setUserId(object1.getString(""));
|
||||
sarPublicIdeaAll.setPartCode(object1.getString("chapterNumber"));
|
||||
sarPublicIdeaAll.setCid(object.getString("cid"));
|
||||
sarPublicIdeaAll.setUserName(object1.getString("responUserName"));
|
||||
sarPublicIdeaAll.setUserId(object1.getString("responUser"));
|
||||
sarPublicIdeaAll.setWkFlag("1");
|
||||
sarPublicIdeaAll.setIdeaId(delegateTask.getVariable("YJID", String.class));
|
||||
sarPublicIdeaAlls.add(sarPublicIdeaAll);
|
||||
}
|
||||
});
|
||||
}
|
||||
lawsUserInfoService.savePublicIdeaBatch(sarPublicIdeaAlls);
|
||||
prcName=delegateTask.getVariable("cid")+"-标准征求意见流程-流程结束";
|
||||
}else {
|
||||
delegateTask.setVariable("presidentFlag","1");
|
||||
|
||||
+15
-5
@@ -44,19 +44,29 @@ public class Step1After implements TaskListener {
|
||||
nextUserList.add(object.getString("responUserList"));
|
||||
}
|
||||
delegateTask.setVariable("zrIdList",nextUserList);
|
||||
if (null==delegateTask.getVariable("zrList")){
|
||||
delegateTask.setVariable("zrList",nextUserList);
|
||||
if (null==delegateTask.getVariable("zrList"+object.getString("onlyKey"))){
|
||||
delegateTask.setVariable("zrList"+object.getString("onlyKey"),nextUserList);
|
||||
}else {
|
||||
List<String> strings=delegateTask.getVariable("zrList",List.class);
|
||||
List<String> strings=delegateTask.getVariable("zrList"+object.getString("onlyKey"),List.class);
|
||||
strings.addAll(nextUserList);
|
||||
delegateTask.setVariable("zrList"+object.getString("onlyKey"),strings);
|
||||
}
|
||||
|
||||
if (null==delegateTask.getVariable("Step6")){
|
||||
delegateTask.setVariable("Step6",nextUserList);
|
||||
}else {
|
||||
List<String> strings=delegateTask.getVariable("Step6",List.class);
|
||||
List<String> middle=new ArrayList<>();
|
||||
nextUserList.forEach(s -> {
|
||||
if (!strings.contains(s)){
|
||||
middle.add(s);
|
||||
}
|
||||
});
|
||||
strings.addAll(middle);
|
||||
delegateTask.setVariable("zrList",strings);
|
||||
delegateTask.getVariable("Step6",List.class).addAll(middle);
|
||||
}
|
||||
|
||||
|
||||
|
||||
//截止时间 流程描述 创建人
|
||||
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
|
||||
String user = delegateTask.getVariable("user",String.class);
|
||||
|
||||
@@ -37,16 +37,16 @@ public class Step2After implements TaskListener {
|
||||
|
||||
List<String> nextUserList = new ArrayList();
|
||||
//整备数据
|
||||
if (null==delegateTask.getVariable("count")){
|
||||
delegateTask.setVariable("count",1);
|
||||
if (null==delegateTask.getVariable("count"+object.getString("onlyKey"))){
|
||||
delegateTask.setVariable("count"+object.getString("onlyKey"),1);
|
||||
}else {
|
||||
delegateTask.setVariable("count",delegateTask.getVariable("count",Integer.class)+1);
|
||||
delegateTask.setVariable("count"+object.getString("onlyKey"),delegateTask.getVariable("count"+object.getString("onlyKey"),Integer.class)+1);
|
||||
}
|
||||
|
||||
if (delegateTask.getVariable("count",Integer.class) == delegateTask.getVariable("zrIdList",List.class).size()){
|
||||
if (delegateTask.getVariable("count"+object.getString("onlyKey"),Integer.class) == delegateTask.getVariable("zrList"+object.getString("onlyKey"),List.class).size()){
|
||||
//对数据进行合并归属
|
||||
QueryWrapper<BusProcessNew> wrapper=new QueryWrapper<>();
|
||||
wrapper.eq("TASK_ID","SCN");
|
||||
wrapper.eq("TASK_ID",object.getString("onlyKey"));
|
||||
wrapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
List<BusProcessNew> busProcessNews= busBean.list(wrapper);
|
||||
|
||||
@@ -101,8 +101,8 @@ public class Step2After implements TaskListener {
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
if (delegateTask.getVariable("count",Integer.class) < delegateTask.getVariable("zrIdList",List.class).size()){
|
||||
busProcessNewNext.setTaskId("SCN");
|
||||
if (delegateTask.getVariable("count"+object.getString("onlyKey"),Integer.class) < delegateTask.getVariable("zrList"+object.getString("onlyKey"),List.class).size()){
|
||||
busProcessNewNext.setTaskId(object.getString("onlyKey"));
|
||||
}
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(nextUser);
|
||||
|
||||
@@ -40,8 +40,8 @@ public class Step4After implements TaskListener {
|
||||
String prcName = "";
|
||||
//整备数据
|
||||
if ("0".equals(object.getString("spFlag"))) {
|
||||
nextUserList.add(delegateTask.getVariable("user",String.class));
|
||||
delegateTask.setVariable("bzfgId", delegateTask.getVariable("user",String.class));
|
||||
nextUserList.add(object.getString("bzfgId"));
|
||||
delegateTask.setVariable("bzfgId", object.getString("bzfgId"));
|
||||
prcName = delegateTask.getVariable("cid")+"-标准征求意见流程-标准法规工程师分线审核";
|
||||
delegateTask.setVariable("spFlag","0");
|
||||
}else {
|
||||
|
||||
@@ -39,8 +39,8 @@ public class Step6After implements TaskListener {
|
||||
String prcName = delegateTask.getVariable("cid")+"-标准征求意见流程-责任人会签";;
|
||||
|
||||
//整备数据
|
||||
nextUserList.addAll(delegateTask.getVariable("zrList",List.class));
|
||||
delegateTask.setVariable("responUserList",delegateTask.getVariable("zrList",List.class));
|
||||
nextUserList.addAll(delegateTask.getVariable("Step6",List.class));
|
||||
delegateTask.setVariable("responUserList",nextUserList);
|
||||
delegateTask.setVariable("hqMark",0);
|
||||
delegateTask.setVariable("bdMark",0);
|
||||
delegateTask.setVariable("hqCount",null);
|
||||
|
||||
@@ -147,6 +147,7 @@ public class StartSurveyAfter implements TaskListener {
|
||||
.uniques(uniques)
|
||||
.files(object.getString("filesId"))
|
||||
.filesName(object.getString("filesName"))
|
||||
.wkfiles("")
|
||||
.build();
|
||||
ResponseMessage result = lawsUserInfoService.addSarPublicIdea(sarPublicIdea);
|
||||
if(!result.isOk()){
|
||||
|
||||
Reference in New Issue
Block a user