Преглед изворни кода

[审批流][修改][init]

release_toaliyun_real
luozukai пре 7 година
родитељ
комит
ff636fd8d7
2 измењених фајлова са 50 додато и 21 уклоњено
  1. +1
    -1
      mallinkService/src/main/java/com/iformall/domain/po/WxFlowModel.java
  2. +49
    -20
      mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java

+ 1
- 1
mallinkService/src/main/java/com/iformall/domain/po/WxFlowModel.java Прегледај датотеку

@@ -42,6 +42,6 @@ public class WxFlowModel extends BaseEntity {
private Date updateDate; private Date updateDate;


@Transient @Transient
private List<UserTaskVo> taskList;
private List<UserTaskVo> lists;


} }

+ 49
- 20
mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java Прегледај датотеку

@@ -18,11 +18,13 @@ import com.iformall.mapper.*;
import com.iformall.mq.MqBaseProducer; import com.iformall.mq.MqBaseProducer;
import com.iformall.service.*; import com.iformall.service.*;
import com.iformall.utils.Constant; import com.iformall.utils.Constant;
import com.iformall.utils.JsonUtil;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.collections.map.HashedMap; import org.apache.commons.collections.map.HashedMap;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils; import org.apache.shiro.SecurityUtils;
import org.flowable.bpmn.model.BpmnModel;
import org.flowable.bpmn.model.*;
import org.flowable.bpmn.model.Process;
import org.flowable.common.engine.api.FlowableIllegalArgumentException; import org.flowable.common.engine.api.FlowableIllegalArgumentException;
import org.flowable.engine.*; import org.flowable.engine.*;
import org.flowable.engine.runtime.Execution; import org.flowable.engine.runtime.Execution;
@@ -1138,27 +1140,52 @@ public class WxFlowServiceImpl implements WxFlowService {


@Override @Override
public ResultData createModel(WxFlowModel wxFlowModel) { public ResultData createModel(WxFlowModel wxFlowModel) {
Process process = new Process();
BpmnModel bpmnModel = new BpmnModel();

StartEvent start = new StartEvent();
start.setId("start");
start.setName("开始节点");

// SequenceFlow sequenceFlow = new SequenceFlow();
// sequenceFlow.setId("sf1");
// sequenceFlow.setName("开始节点");
// sequenceFlow.setSourceRef("start");
// sequenceFlow.setTargetRef("userTask1");
//
// start.setOutgoingFlows(Arrays.asList(sequenceFlow));

process.addFlowElement(start);
// process.addFlowElement(sequenceFlow);

String sourceRef = "start";
String targetRef = "";
SequenceFlow sourceFlow;
SequenceFlow targetFlow ;

//todo 得用递归
// for (int i = 0; i < wxFlowModel.getLists().size()-1; i++) {
// //UserTaskVo taskVo = wxFlowModel.getLists().get(i);
//
// SequenceFlow sf = new SequenceFlow();
// sf.setId("sf"+i);
// sf.setName("节点"+i);
// sf.setSourceRef(sourceRef);
//
// UserTask userTask = new UserTask();
// userTask.setName((i+1)+"级审批");
// userTask.setId("userTask"+(i+1));
// userTask.setIncomingFlows(Arrays.asList(sf));
// userTask.setOutgoingFlows(Arrays.asList(sf));
//
// sf.setTargetRef(userTask.getId());
//
// sourceRef = userTask.getId();
// }

wxFlowModel.setFlow(JsonUtil.obj2Json(wxFlowModel));
final IdWorker idWorker = IdWorker.get(); final IdWorker idWorker = IdWorker.get();
wxFlowModel.setId(idWorker.nextId()); wxFlowModel.setId(idWorker.nextId());

String flow = "发起人-";
for (UserTaskVo taskVo:wxFlowModel.getTaskList()) {
List<FlowUserVo> userInfoList = taskVo.getUserList();
for (int i = 0; i < userInfoList.size()-1; i++) {
if(i == userInfoList.size()-1){
flow += userInfoList.get(i).getName();
}else{
flow += userInfoList.get(i).getName() + "、";
}
}
if(taskVo.getType().equals(EnumTaskType.AND.getCode())){
flow += "(会签)";
}else if(taskVo.getType().equals(EnumTaskType.OR.getCode())){
flow += "(或签)";
}
flow += "-";
}
flow += "结束";
wxFlowModelMapper.insertSelective(wxFlowModel); wxFlowModelMapper.insertSelective(wxFlowModel);
return new ResultData(); return new ResultData();
} }
@@ -1167,4 +1194,6 @@ public class WxFlowServiceImpl implements WxFlowService {
public PageInfo<WxFlowModel> modelList(WxFlowModel wxFlowModel,Integer pageIndex, Integer pageSize) { public PageInfo<WxFlowModel> modelList(WxFlowModel wxFlowModel,Integer pageIndex, Integer pageSize) {
return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxFlowModelMapper.findList(wxFlowModel)); return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxFlowModelMapper.findList(wxFlowModel));
} }


} }

Loading…
Откажи
Сачувај