Commit 8a66fd97 by chenweisong

更新

parent 5475c19a
...@@ -59,9 +59,11 @@ public class ExcelController { ...@@ -59,9 +59,11 @@ public class ExcelController {
String processId = mission.getProcess().getProcessId(); String processId = mission.getProcess().getProcessId();
String taskId = mission.getTaskId(); String taskId = mission.getTaskId();
// 发起人把流程发送到下一个人 // 发起人把流程发送到下一个人
Task task = taskService.createTaskQuery().processInstanceId(processId).taskId(taskId) Task task = taskService.createTaskQuery().processInstanceId(processId).taskId(taskId)
.singleResult(); .singleResult();
Map vars = new HashMap<>(); Map vars = new HashMap<>();
if (template.getNeedAudit() == Template.NEED_AUDIT) { if (template.getNeedAudit() == Template.NEED_AUDIT) {
vars.put("sign", true); vars.put("sign", true);
......
...@@ -98,44 +98,35 @@ public class TaskController { ...@@ -98,44 +98,35 @@ public class TaskController {
// TwinkleValidator.notNull(user, "用户不存在"); // TwinkleValidator.notNull(user, "用户不存在");
List<Map> missions = new ArrayList<>(); List<Map> missions = new ArrayList<>();
List<User> userList = userService.findAll(); List<User> userList = userService.findAll();
StringBuilder assigneesBuilder = new StringBuilder();
assigneesBuilder.append("(");
userList.forEach(user -> { userList.forEach(user -> {
assigneesBuilder.append("'" + user.getUsername() + "'").append(","); // 查找当前用户所有的activiti task
String sql = "SELECT * FROM " + managementService.getTableName(Task.class) + " T WHERE T.ASSIGNEE_ like #{assignee}";
List<Task> tasks = taskService.createNativeTaskQuery()
.sql(sql)
.parameter("assignee", user.getUsername() + ":templateId:")
.list();
tasks.forEach(task -> {
String assignee = task.getAssignee();
long templateId = Long.parseLong(assignee.split(":templateId:")[1]);
String processId = task.getProcessInstanceId();
Mission mission = missionService.findByProcessIdAndUsernameAndTemplateIdAndStatus(processId, user.getUsername(), templateId, Mission.STATUS_BEGIN);
mission.setTaskId(task.getId());
missionService.save(mission);
Map map = new HashMap();
map.put("id", mission.getId());
map.put("userId", mission.getUser().getId());
map.put("username", mission.getUser().getUsername());
map.put("excelList", Arrays.asList(mission.getTemplate()));
if (task.getTaskDefinitionKey().equals("dataEntrySubTask")) {
map.put("kind", 1);
} else {
map.put("kind", 2);
}
missions.add(map);
});
}); });
String assignees = assigneesBuilder.substring(0, assigneesBuilder.length() - 1) + ")";
// 获取任务
String sql = "SELECT * FROM " + managementService.getTableName(Task.class) + " T WHERE T.ASSIGNEE_ in " + assignees;
List<Task> tasks = taskService.createNativeTaskQuery()
.sql(sql)
.list();
for (Task task : tasks) {
String processId = task.getProcessInstanceId();
Process process = processService.findByProcessId(processId);
List<Mission> missionList = process.getMissionList();
if (process != null && missionList.size() > 0) {
missionList.forEach(mission -> {
// 只能查看得时候更新这个人属于这个进行得任务id
mission.setTaskId(task.getId());
missionService.save(mission);
Map map = new HashMap();
map.put("id", mission.getId());
map.put("userId", mission.getUser().getId());
map.put("username", mission.getUser().getUsername());
map.put("excelList", Arrays.asList(mission.getTemplate()));
if (task.getTaskDefinitionKey().equals("dataEntrySubTask")) {
map.put("kind", 1);
} else {
map.put("kind", 2);
}
missions.add(map);
});
}
}
return ApiResponse.ok(missions); return ApiResponse.ok(missions);
} }
...@@ -256,7 +247,7 @@ public class TaskController { ...@@ -256,7 +247,7 @@ public class TaskController {
// 更新mission // 更新mission
missionService.save(mission); missionService.save(mission);
User user = mission.getUser(); User user = mission.getUser();
userNameList.add(user.getUsername()); userNameList.add(user.getUsername() + ":template:" + template.getId());
}); });
allMissions.addAll(missionList); allMissions.addAll(missionList);
}); });
......
...@@ -77,10 +77,12 @@ public class UserController { ...@@ -77,10 +77,12 @@ public class UserController {
User user = userService.findById(userId); User user = userService.findById(userId);
TwinkleValidator.notNull(user, "所选用户不存在"); TwinkleValidator.notNull(user, "所选用户不存在");
TwinkleValidator.isTrue(scope.getGroup().getId() == user.getGroup().getId(), "所选用户与所选范围不属于同一机构"); TwinkleValidator.isTrue(scope.getGroup().getId() == user.getGroup().getId(), "所选用户与所选范围不属于同一机构");
List<User> userList = new ArrayList<>(); List<User> userList = scope.getUserList();
userList.add(user); if (!userList.contains(user)) {
scope.setUserList(userList); userList.add(user);
recordScopeService.save(scope); scope.setUserList(userList);
recordScopeService.save(scope);
}
return ApiResponse.ok(); return ApiResponse.ok();
} }
......
...@@ -10,4 +10,5 @@ public interface MissionDao extends JpaRepository<Mission, Long> { ...@@ -10,4 +10,5 @@ public interface MissionDao extends JpaRepository<Mission, Long> {
List<Mission> findAllByTemplateIdAndStatus(long templateId, int status); List<Mission> findAllByTemplateIdAndStatus(long templateId, int status);
Mission findByProcessIdAndUserUsernameAndTemplateIdAndStatus(String processId, String username, long templateId, int status);
} }
...@@ -38,6 +38,10 @@ public class MissionService { ...@@ -38,6 +38,10 @@ public class MissionService {
return missionDao.getOne(missionId); return missionDao.getOne(missionId);
} }
public Mission findByProcessIdAndUsernameAndTemplateIdAndStatus(String processId, String username, long templateId, int status) {
return missionDao.findByProcessIdAndUserUsernameAndTemplateIdAndStatus(processId, username, templateId, status);
}
public List<Mission> findAllByTemplateIdAndStatus(long templateId, int status) { public List<Mission> findAllByTemplateIdAndStatus(long templateId, int status) {
return missionDao.findAllByTemplateIdAndStatus(templateId, status); return missionDao.findAllByTemplateIdAndStatus(templateId, status);
} }
......
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:activiti="http://activiti.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" xmlns:tns="http://www.activiti.org/test" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" expressionLanguage="http://www.w3.org/1999/XPath" id="m1585034942112" name="" targetNamespace="http://www.activiti.org/test" typeLanguage="http://www.w3.org/2001/XMLSchema"> <definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:activiti="http://activiti.org/bpmn"
<process id="moreSubProcess" isClosed="false" isExecutable="true" name="moreSubProcess" processType="None"> xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI"
<startEvent id="startevent1" name="Start"/> xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI"
<userTask activiti:assignee="${inputUser}" activiti:exclusive="true" id="startEntry" name="开始录入"/> xmlns:tns="http://www.activiti.org/test" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
<userTask activiti:candidateUsers="${groupDataStandardServiceImpl.findAssigneesForProcess(execution,&quot;group5&quot;)}" activiti:exclusive="true" id="headApply" name="负责人审核"/> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" expressionLanguage="http://www.w3.org/1999/XPath"
<exclusiveGateway gatewayDirection="Unspecified" id="exclusivegateway2" name="Exclusive Gateway"/> id="m1585034942112" name="" targetNamespace="http://www.activiti.org/test"
<endEvent id="endevent2" name="End"/> typeLanguage="http://www.w3.org/2001/XMLSchema">
<userTask activiti:candidateUsers="${groupDataStandardServiceImpl.findAssigneesForProcess(execution,&quot;group4&quot;)}" activiti:exclusive="true" id="dataBackFlow" name="数据回流"/> <process id="moreSubProcess" isClosed="false" isExecutable="true" name="moreSubProcess" processType="None">
<sequenceFlow id="flow1" sourceRef="startevent1" targetRef="startEntry"/> <startEvent id="startevent1" name="Start"/>
<sequenceFlow id="flow11" sourceRef="headApply" targetRef="exclusivegateway2"/> <userTask activiti:assignee="${inputUser}" activiti:exclusive="true" id="startEntry" name="开始录入"/>
<sequenceFlow id="flow12" name="N" skipExpression="${sign=='false'}" sourceRef="exclusivegateway2" targetRef="endevent2"/> <userTask
<sequenceFlow id="flow13" name="Y" skipExpression="${sign=='true'}" sourceRef="exclusivegateway2" targetRef="dataBackFlow"/> activiti:candidateUsers="${groupDataStandardServiceImpl.findAssigneesForProcess(execution,&quot;group5&quot;)}"
<sequenceFlow id="flow14" sourceRef="dataBackFlow" targetRef="endevent2"/> activiti:exclusive="true" id="headApply" name="负责人审核"/>
<subProcess activiti:exclusive="true" id="entrySubprocess" name="录入子流程" triggeredByEvent="false"> <exclusiveGateway gatewayDirection="Unspecified" id="exclusivegateway2" name="Exclusive Gateway"/>
<multiInstanceLoopCharacteristics activiti:collection="candiateUserList" activiti:elementVariable="candiateUser" isSequential="false"> <endEvent id="endevent2" name="End"/>
<completionCondition> <userTask
<!-- 这里表示当完成数和总数相等的时候到下一步 --> activiti:candidateUsers="${groupDataStandardServiceImpl.findAssigneesForProcess(execution,&quot;group4&quot;)}"
<![CDATA[${nrOfCompletedInstances/nrOfInstances == 1}]]> activiti:exclusive="true" id="dataBackFlow" name="数据回流"/>
</completionCondition> <sequenceFlow id="flow1" sourceRef="startevent1" targetRef="startEntry"/>
</multiInstanceLoopCharacteristics> <sequenceFlow id="flow11" sourceRef="headApply" targetRef="exclusivegateway2"/>
<startEvent id="startevent2" name="Start"/> <sequenceFlow id="flow12" name="N" skipExpression="${sign=='false'}" sourceRef="exclusivegateway2"
<userTask activiti:assignee="${candiateUser}" activiti:async="true" activiti:exclusive="true" id="dataEntrySubTask" name="数据录入子任务"/> targetRef="endevent2"/>
<userTask activiti:assignee="${inputDataApply}" activiti:exclusive="true" id="dataApply" name="数据审核人员"/> <sequenceFlow id="flow13" name="Y" skipExpression="${sign=='true'}" sourceRef="exclusivegateway2"
<endEvent id="endevent3" name="End"/> targetRef="dataBackFlow"/>
<exclusiveGateway gatewayDirection="Unspecified" id="exclusivegateway3" name="Exclusive Gateway"/> <sequenceFlow id="flow14" sourceRef="dataBackFlow" targetRef="endevent2"/>
<sequenceFlow id="flow17" sourceRef="startevent2" targetRef="dataEntrySubTask"/> <subProcess activiti:exclusive="true" id="entrySubprocess" name="录入子流程" triggeredByEvent="false">
<sequenceFlow id="flow21" sourceRef="dataApply" targetRef="exclusivegateway3"/> <multiInstanceLoopCharacteristics activiti:collection="candiateUserList"
<sequenceFlow id="flow22" name="N" skipExpression="${sign=='false'}" sourceRef="exclusivegateway3" targetRef="dataEntrySubTask"/> activiti:elementVariable="candiateUser" isSequential="false">
<sequenceFlow id="flow23" name="Y" skipExpression="${sign=='true'}" sourceRef="exclusivegateway3" targetRef="endevent3"/> <completionCondition>
<exclusiveGateway gatewayDirection="Unspecified" id="exclusivegateway4" name="Exclusive Gateway"/> <!-- 这里表示当完成数和总数相等的时候到下一步 -->
<sequenceFlow id="flow24" sourceRef="dataEntrySubTask" targetRef="exclusivegateway4"/> <![CDATA[${nrOfCompletedInstances/nrOfInstances == 1}]]>
<sequenceFlow id="flow25" name="Y" skipExpression="${sign=='true'}" sourceRef="exclusivegateway4" targetRef="dataApply"/> </completionCondition>
<sequenceFlow id="flow26" name="N" skipExpression="${sign=='false'}" sourceRef="exclusivegateway4" targetRef="endevent3"/> </multiInstanceLoopCharacteristics>
</subProcess> <startEvent id="startevent2" name="Start"/>
<sequenceFlow id="flow15" sourceRef="startEntry" targetRef="entrySubprocess"/> <userTask activiti:assignee="${candiateUser}" activiti:async="true" activiti:exclusive="true"
<exclusiveGateway gatewayDirection="Unspecified" id="exclusivegateway5" name="Exclusive Gateway"/> id="dataEntrySubTask" name="数据录入子任务"/>
<sequenceFlow id="flow27" name="Y" skipExpression="${applySign=='true'}" sourceRef="exclusivegateway5" targetRef="headApply"/> <userTask activiti:assignee="${inputDataApply}" activiti:exclusive="true" id="dataApply" name="数据审核人员"/>
<sequenceFlow id="flow28" sourceRef="entrySubprocess" targetRef="exclusivegateway5"/> <endEvent id="endevent3" name="End"/>
<sequenceFlow id="flow29" name="N" skipExpression="${applySign=='false'}" sourceRef="exclusivegateway5" targetRef="dataBackFlow"/> <exclusiveGateway gatewayDirection="Unspecified" id="exclusivegateway3" name="Exclusive Gateway"/>
</process> <sequenceFlow id="flow17" sourceRef="startevent2" targetRef="dataEntrySubTask"/>
<bpmndi:BPMNDiagram documentation="background=#3C3F41;count=1;horizontalcount=1;orientation=0;width=842.4;height=1195.2;imageableWidth=832.4;imageableHeight=1185.2;imageableX=5.0;imageableY=5.0" id="Diagram-_1" name="New Diagram"> <sequenceFlow id="flow21" sourceRef="dataApply" targetRef="exclusivegateway3"/>
<bpmndi:BPMNPlane bpmnElement="moreSubProcess"> <sequenceFlow id="flow22" name="N" skipExpression="${sign=='false'}" sourceRef="exclusivegateway3"
<bpmndi:BPMNShape bpmnElement="startevent1" id="Shape-startevent1"> targetRef="dataEntrySubTask"/>
<omgdc:Bounds height="32.0" width="32.0" x="40.0" y="5.0"/> <sequenceFlow id="flow23" name="Y" skipExpression="${sign=='true'}" sourceRef="exclusivegateway3"
<bpmndi:BPMNLabel> targetRef="endevent3"/>
<omgdc:Bounds height="32.0" width="32.0" x="0.0" y="0.0"/> <exclusiveGateway gatewayDirection="Unspecified" id="exclusivegateway4" name="Exclusive Gateway"/>
</bpmndi:BPMNLabel> <sequenceFlow id="flow24" sourceRef="dataEntrySubTask" targetRef="exclusivegateway4"/>
</bpmndi:BPMNShape> <sequenceFlow id="flow25" name="Y" skipExpression="${sign=='true'}" sourceRef="exclusivegateway4"
<bpmndi:BPMNShape bpmnElement="startEntry" id="Shape-startEntry"> targetRef="dataApply"/>
<omgdc:Bounds height="55.0" width="105.0" x="15.0" y="150.0"/> <sequenceFlow id="flow26" name="N" skipExpression="${sign=='false'}" sourceRef="exclusivegateway4"
<bpmndi:BPMNLabel> targetRef="endevent3"/>
<omgdc:Bounds height="55.0" width="105.0" x="0.0" y="0.0"/> </subProcess>
</bpmndi:BPMNLabel> <sequenceFlow id="flow15" sourceRef="startEntry" targetRef="entrySubprocess"/>
</bpmndi:BPMNShape> <exclusiveGateway gatewayDirection="Unspecified" id="exclusivegateway5" name="Exclusive Gateway"/>
<bpmndi:BPMNShape bpmnElement="headApply" id="Shape-headApply"> <sequenceFlow id="flow27" name="Y" skipExpression="${applySign=='true'}" sourceRef="exclusivegateway5"
<omgdc:Bounds height="55.0" width="105.0" x="710.0" y="310.0"/> targetRef="headApply"/>
<bpmndi:BPMNLabel> <sequenceFlow id="flow28" sourceRef="entrySubprocess" targetRef="exclusivegateway5"/>
<omgdc:Bounds height="55.0" width="105.0" x="0.0" y="0.0"/> <sequenceFlow id="flow29" name="N" skipExpression="${applySign=='false'}" sourceRef="exclusivegateway5"
</bpmndi:BPMNLabel> targetRef="dataBackFlow"/>
</bpmndi:BPMNShape> </process>
<bpmndi:BPMNShape bpmnElement="exclusivegateway2" id="Shape-exclusivegateway2" isMarkerVisible="false"> <bpmndi:BPMNDiagram
<omgdc:Bounds height="32.0" width="32.0" x="916.0" y="167.0"/> documentation="background=#3C3F41;count=1;horizontalcount=1;orientation=0;width=842.4;height=1195.2;imageableWidth=832.4;imageableHeight=1185.2;imageableX=5.0;imageableY=5.0"
<bpmndi:BPMNLabel> id="Diagram-_1" name="New Diagram">
<omgdc:Bounds height="32.0" width="32.0" x="0.0" y="0.0"/> <bpmndi:BPMNPlane bpmnElement="moreSubProcess">
</bpmndi:BPMNLabel> <bpmndi:BPMNShape bpmnElement="startevent1" id="Shape-startevent1">
</bpmndi:BPMNShape> <omgdc:Bounds height="32.0" width="32.0" x="40.0" y="5.0"/>
<bpmndi:BPMNShape bpmnElement="endevent2" id="Shape-endevent2"> <bpmndi:BPMNLabel>
<omgdc:Bounds height="32.0" width="32.0" x="1040.0" y="168.0"/> <omgdc:Bounds height="32.0" width="32.0" x="0.0" y="0.0"/>
<bpmndi:BPMNLabel> </bpmndi:BPMNLabel>
<omgdc:Bounds height="32.0" width="32.0" x="0.0" y="0.0"/> </bpmndi:BPMNShape>
</bpmndi:BPMNLabel> <bpmndi:BPMNShape bpmnElement="startEntry" id="Shape-startEntry">
</bpmndi:BPMNShape> <omgdc:Bounds height="55.0" width="105.0" x="15.0" y="150.0"/>
<bpmndi:BPMNShape bpmnElement="dataBackFlow" id="Shape-dataBackFlow"> <bpmndi:BPMNLabel>
<omgdc:Bounds height="55.0" width="105.0" x="880.0" y="-5.0"/> <omgdc:Bounds height="55.0" width="105.0" x="0.0" y="0.0"/>
<bpmndi:BPMNLabel> </bpmndi:BPMNLabel>
<omgdc:Bounds height="55.0" width="105.0" x="0.0" y="0.0"/> </bpmndi:BPMNShape>
</bpmndi:BPMNLabel> <bpmndi:BPMNShape bpmnElement="headApply" id="Shape-headApply">
</bpmndi:BPMNShape> <omgdc:Bounds height="55.0" width="105.0" x="710.0" y="310.0"/>
<bpmndi:BPMNShape bpmnElement="entrySubprocess" id="Shape-entrySubprocess" isExpanded="true"> <bpmndi:BPMNLabel>
<omgdc:Bounds height="205.0" width="421.0" x="200.0" y="77.0"/> <omgdc:Bounds height="55.0" width="105.0" x="0.0" y="0.0"/>
<bpmndi:BPMNLabel> </bpmndi:BPMNLabel>
<omgdc:Bounds height="205.0" width="421.0" x="0.0" y="0.0"/> </bpmndi:BPMNShape>
</bpmndi:BPMNLabel> <bpmndi:BPMNShape bpmnElement="exclusivegateway2" id="Shape-exclusivegateway2" isMarkerVisible="false">
</bpmndi:BPMNShape> <omgdc:Bounds height="32.0" width="32.0" x="916.0" y="167.0"/>
<bpmndi:BPMNShape bpmnElement="exclusivegateway5" id="Shape-exclusivegateway5" isMarkerVisible="false"> <bpmndi:BPMNLabel>
<omgdc:Bounds height="32.0" width="32.0" x="760.0" y="160.0"/> <omgdc:Bounds height="32.0" width="32.0" x="0.0" y="0.0"/>
<bpmndi:BPMNLabel> </bpmndi:BPMNLabel>
<omgdc:Bounds height="32.0" width="32.0" x="0.0" y="0.0"/> </bpmndi:BPMNShape>
</bpmndi:BPMNLabel> <bpmndi:BPMNShape bpmnElement="endevent2" id="Shape-endevent2">
</bpmndi:BPMNShape> <omgdc:Bounds height="32.0" width="32.0" x="1040.0" y="168.0"/>
<bpmndi:BPMNShape bpmnElement="startevent2" id="Shape-startevent2"> <bpmndi:BPMNLabel>
<omgdc:Bounds height="32.0" width="32.0" x="210.0" y="200.0"/> <omgdc:Bounds height="32.0" width="32.0" x="0.0" y="0.0"/>
<bpmndi:BPMNLabel> </bpmndi:BPMNLabel>
<omgdc:Bounds height="32.0" width="32.0" x="0.0" y="0.0"/> </bpmndi:BPMNShape>
</bpmndi:BPMNLabel> <bpmndi:BPMNShape bpmnElement="dataBackFlow" id="Shape-dataBackFlow">
</bpmndi:BPMNShape> <omgdc:Bounds height="55.0" width="105.0" x="880.0" y="-5.0"/>
<bpmndi:BPMNShape bpmnElement="dataEntrySubTask" id="Shape-dataEntrySubTask"> <bpmndi:BPMNLabel>
<omgdc:Bounds height="55.0" width="105.0" x="270.0" y="190.0"/> <omgdc:Bounds height="55.0" width="105.0" x="0.0" y="0.0"/>
<bpmndi:BPMNLabel> </bpmndi:BPMNLabel>
<omgdc:Bounds height="55.0" width="105.0" x="0.0" y="0.0"/> </bpmndi:BPMNShape>
</bpmndi:BPMNLabel> <bpmndi:BPMNShape bpmnElement="entrySubprocess" id="Shape-entrySubprocess" isExpanded="true">
</bpmndi:BPMNShape> <omgdc:Bounds height="205.0" width="421.0" x="200.0" y="77.0"/>
<bpmndi:BPMNShape bpmnElement="dataApply" id="Shape-dataApply"> <bpmndi:BPMNLabel>
<omgdc:Bounds height="55.0" width="105.0" x="380.0" y="120.0"/> <omgdc:Bounds height="205.0" width="421.0" x="0.0" y="0.0"/>
<bpmndi:BPMNLabel> </bpmndi:BPMNLabel>
<omgdc:Bounds height="55.0" width="105.0" x="0.0" y="0.0"/> </bpmndi:BPMNShape>
</bpmndi:BPMNLabel> <bpmndi:BPMNShape bpmnElement="exclusivegateway5" id="Shape-exclusivegateway5" isMarkerVisible="false">
</bpmndi:BPMNShape> <omgdc:Bounds height="32.0" width="32.0" x="760.0" y="160.0"/>
<bpmndi:BPMNShape bpmnElement="endevent3" id="Shape-endevent3"> <bpmndi:BPMNLabel>
<omgdc:Bounds height="32.0" width="32.0" x="570.0" y="200.0"/> <omgdc:Bounds height="32.0" width="32.0" x="0.0" y="0.0"/>
<bpmndi:BPMNLabel> </bpmndi:BPMNLabel>
<omgdc:Bounds height="32.0" width="32.0" x="0.0" y="0.0"/> </bpmndi:BPMNShape>
</bpmndi:BPMNLabel> <bpmndi:BPMNShape bpmnElement="startevent2" id="Shape-startevent2">
</bpmndi:BPMNShape> <omgdc:Bounds height="32.0" width="32.0" x="210.0" y="200.0"/>
<bpmndi:BPMNShape bpmnElement="exclusivegateway3" id="Shape-exclusivegateway3" isMarkerVisible="false"> <bpmndi:BPMNLabel>
<omgdc:Bounds height="32.0" width="32.0" x="510.0" y="127.0"/> <omgdc:Bounds height="32.0" width="32.0" x="0.0" y="0.0"/>
<bpmndi:BPMNLabel> </bpmndi:BPMNLabel>
<omgdc:Bounds height="32.0" width="32.0" x="0.0" y="0.0"/> </bpmndi:BPMNShape>
</bpmndi:BPMNLabel> <bpmndi:BPMNShape bpmnElement="dataEntrySubTask" id="Shape-dataEntrySubTask">
</bpmndi:BPMNShape> <omgdc:Bounds height="55.0" width="105.0" x="270.0" y="190.0"/>
<bpmndi:BPMNShape bpmnElement="exclusivegateway4" id="Shape-exclusivegateway4" isMarkerVisible="false"> <bpmndi:BPMNLabel>
<omgdc:Bounds height="32.0" width="32.0" x="412.0" y="200.0"/> <omgdc:Bounds height="55.0" width="105.0" x="0.0" y="0.0"/>
<bpmndi:BPMNLabel> </bpmndi:BPMNLabel>
<omgdc:Bounds height="32.0" width="32.0" x="0.0" y="0.0"/> </bpmndi:BPMNShape>
</bpmndi:BPMNLabel> <bpmndi:BPMNShape bpmnElement="dataApply" id="Shape-dataApply">
</bpmndi:BPMNShape> <omgdc:Bounds height="55.0" width="105.0" x="380.0" y="120.0"/>
<bpmndi:BPMNEdge bpmnElement="flow28" id="BPMNEdge_flow28" sourceElement="entrySubprocess" targetElement="exclusivegateway5"> <bpmndi:BPMNLabel>
<omgdi:waypoint x="621.0" y="179.5"/> <omgdc:Bounds height="55.0" width="105.0" x="0.0" y="0.0"/>
<omgdi:waypoint x="760.0" y="176.0"/> </bpmndi:BPMNLabel>
<bpmndi:BPMNLabel> </bpmndi:BPMNShape>
<omgdc:Bounds height="-1.0" width="-1.0" x="-1.0" y="-1.0"/> <bpmndi:BPMNShape bpmnElement="endevent3" id="Shape-endevent3">
</bpmndi:BPMNLabel> <omgdc:Bounds height="32.0" width="32.0" x="570.0" y="200.0"/>
</bpmndi:BPMNEdge> <bpmndi:BPMNLabel>
<bpmndi:BPMNEdge bpmnElement="flow29" id="BPMNEdge_flow29" sourceElement="exclusivegateway5" targetElement="dataBackFlow"> <omgdc:Bounds height="32.0" width="32.0" x="0.0" y="0.0"/>
<omgdi:waypoint x="775.0" y="161.0"/> </bpmndi:BPMNLabel>
<omgdi:waypoint x="775.0" y="90.0"/> </bpmndi:BPMNShape>
<omgdi:waypoint x="880.0" y="22.5"/> <bpmndi:BPMNShape bpmnElement="exclusivegateway3" id="Shape-exclusivegateway3" isMarkerVisible="false">
<bpmndi:BPMNLabel> <omgdc:Bounds height="32.0" width="32.0" x="510.0" y="127.0"/>
<omgdc:Bounds height="14.0" width="7.0" x="700.0" y="166.0"/> <bpmndi:BPMNLabel>
</bpmndi:BPMNLabel> <omgdc:Bounds height="32.0" width="32.0" x="0.0" y="0.0"/>
</bpmndi:BPMNEdge> </bpmndi:BPMNLabel>
<bpmndi:BPMNEdge bpmnElement="flow24" id="BPMNEdge_flow24" sourceElement="dataEntrySubTask" targetElement="exclusivegateway4"> </bpmndi:BPMNShape>
<omgdi:waypoint x="375.0" y="217.5"/> <bpmndi:BPMNShape bpmnElement="exclusivegateway4" id="Shape-exclusivegateway4" isMarkerVisible="false">
<omgdi:waypoint x="412.0" y="216.0"/> <omgdc:Bounds height="32.0" width="32.0" x="412.0" y="200.0"/>
<bpmndi:BPMNLabel> <bpmndi:BPMNLabel>
<omgdc:Bounds height="-1.0" width="-1.0" x="-1.0" y="-1.0"/> <omgdc:Bounds height="32.0" width="32.0" x="0.0" y="0.0"/>
</bpmndi:BPMNLabel> </bpmndi:BPMNLabel>
</bpmndi:BPMNEdge> </bpmndi:BPMNShape>
<bpmndi:BPMNEdge bpmnElement="flow25" id="BPMNEdge_flow25" sourceElement="exclusivegateway4" targetElement="dataApply"> <bpmndi:BPMNEdge bpmnElement="flow28" id="BPMNEdge_flow28" sourceElement="entrySubprocess"
<omgdi:waypoint x="428.0" y="200.0"/> targetElement="exclusivegateway5">
<omgdi:waypoint x="428.0" y="175.0"/> <omgdi:waypoint x="621.0" y="179.5"/>
<bpmndi:BPMNLabel> <omgdi:waypoint x="760.0" y="176.0"/>
<omgdc:Bounds height="14.0" width="8.0" x="432.0" y="200.0"/> <bpmndi:BPMNLabel>
</bpmndi:BPMNLabel> <omgdc:Bounds height="-1.0" width="-1.0" x="-1.0" y="-1.0"/>
</bpmndi:BPMNEdge> </bpmndi:BPMNLabel>
<bpmndi:BPMNEdge bpmnElement="flow26" id="BPMNEdge_flow26" sourceElement="exclusivegateway4" targetElement="endevent3"> </bpmndi:BPMNEdge>
<omgdi:waypoint x="444.0" y="216.0"/> <bpmndi:BPMNEdge bpmnElement="flow29" id="BPMNEdge_flow29" sourceElement="exclusivegateway5"
<omgdi:waypoint x="570.0" y="216.0"/> targetElement="dataBackFlow">
<bpmndi:BPMNLabel> <omgdi:waypoint x="775.0" y="161.0"/>
<omgdc:Bounds height="14.0" width="7.0" x="452.0" y="220.0"/> <omgdi:waypoint x="775.0" y="90.0"/>
</bpmndi:BPMNLabel> <omgdi:waypoint x="880.0" y="22.5"/>
</bpmndi:BPMNEdge> <bpmndi:BPMNLabel>
<bpmndi:BPMNEdge bpmnElement="flow27" id="BPMNEdge_flow27" sourceElement="exclusivegateway5" targetElement="headApply"> <omgdc:Bounds height="14.0" width="7.0" x="700.0" y="166.0"/>
<omgdi:waypoint x="776.0" y="192.0"/> </bpmndi:BPMNLabel>
<omgdi:waypoint x="776.0" y="310.0"/> </bpmndi:BPMNEdge>
<bpmndi:BPMNLabel> <bpmndi:BPMNEdge bpmnElement="flow24" id="BPMNEdge_flow24" sourceElement="dataEntrySubTask"
<omgdc:Bounds height="14.0" width="8.0" x="720.0" y="186.0"/> targetElement="exclusivegateway4">
</bpmndi:BPMNLabel> <omgdi:waypoint x="375.0" y="217.5"/>
</bpmndi:BPMNEdge> <omgdi:waypoint x="412.0" y="216.0"/>
<bpmndi:BPMNEdge bpmnElement="flow1" id="BPMNEdge_flow1" sourceElement="startevent1" targetElement="startEntry"> <bpmndi:BPMNLabel>
<omgdi:waypoint x="56.0" y="37.0"/> <omgdc:Bounds height="-1.0" width="-1.0" x="-1.0" y="-1.0"/>
<omgdi:waypoint x="56.0" y="150.0"/> </bpmndi:BPMNLabel>
<bpmndi:BPMNLabel> </bpmndi:BPMNEdge>
<omgdc:Bounds height="-1.0" width="-1.0" x="-1.0" y="-1.0"/> <bpmndi:BPMNEdge bpmnElement="flow25" id="BPMNEdge_flow25" sourceElement="exclusivegateway4"
</bpmndi:BPMNLabel> targetElement="dataApply">
</bpmndi:BPMNEdge> <omgdi:waypoint x="428.0" y="200.0"/>
<bpmndi:BPMNEdge bpmnElement="flow21" id="BPMNEdge_flow21" sourceElement="dataApply" targetElement="exclusivegateway3"> <omgdi:waypoint x="428.0" y="175.0"/>
<omgdi:waypoint x="485.0" y="147.5"/> <bpmndi:BPMNLabel>
<omgdi:waypoint x="510.0" y="143.0"/> <omgdc:Bounds height="14.0" width="8.0" x="432.0" y="200.0"/>
<bpmndi:BPMNLabel> </bpmndi:BPMNLabel>
<omgdc:Bounds height="-1.0" width="-1.0" x="-1.0" y="-1.0"/> </bpmndi:BPMNEdge>
</bpmndi:BPMNLabel> <bpmndi:BPMNEdge bpmnElement="flow26" id="BPMNEdge_flow26" sourceElement="exclusivegateway4"
</bpmndi:BPMNEdge> targetElement="endevent3">
<bpmndi:BPMNEdge bpmnElement="flow22" id="BPMNEdge_flow22" sourceElement="exclusivegateway3" targetElement="dataEntrySubTask"> <omgdi:waypoint x="444.0" y="216.0"/>
<omgdi:waypoint x="529.0" y="130.0"/> <omgdi:waypoint x="570.0" y="216.0"/>
<omgdi:waypoint x="529.0" y="89.0"/> <bpmndi:BPMNLabel>
<omgdi:waypoint x="452.0" y="89.0"/> <omgdc:Bounds height="14.0" width="7.0" x="452.0" y="220.0"/>
<omgdi:waypoint x="322.0" y="89.0"/> </bpmndi:BPMNLabel>
<omgdi:waypoint x="322.5" y="190.0"/> </bpmndi:BPMNEdge>
<bpmndi:BPMNLabel> <bpmndi:BPMNEdge bpmnElement="flow27" id="BPMNEdge_flow27" sourceElement="exclusivegateway5"
<omgdc:Bounds height="14.0" width="7.0" x="530.0" y="127.0"/> targetElement="headApply">
</bpmndi:BPMNLabel> <omgdi:waypoint x="776.0" y="192.0"/>
</bpmndi:BPMNEdge> <omgdi:waypoint x="776.0" y="310.0"/>
<bpmndi:BPMNEdge bpmnElement="flow23" id="BPMNEdge_flow23" sourceElement="exclusivegateway3" targetElement="endevent3"> <bpmndi:BPMNLabel>
<omgdi:waypoint x="538.0" y="147.0"/> <omgdc:Bounds height="14.0" width="8.0" x="720.0" y="186.0"/>
<omgdi:waypoint x="587.0" y="147.0"/> </bpmndi:BPMNLabel>
<omgdi:waypoint x="587.0" y="200.0312805773287"/> </bpmndi:BPMNEdge>
<bpmndi:BPMNLabel> <bpmndi:BPMNEdge bpmnElement="flow1" id="BPMNEdge_flow1" sourceElement="startevent1"
<omgdc:Bounds height="14.0" width="8.0" x="550.0" y="147.0"/> targetElement="startEntry">
</bpmndi:BPMNLabel> <omgdi:waypoint x="56.0" y="37.0"/>
</bpmndi:BPMNEdge> <omgdi:waypoint x="56.0" y="150.0"/>
<bpmndi:BPMNEdge bpmnElement="flow17" id="BPMNEdge_flow17" sourceElement="startevent2" targetElement="dataEntrySubTask"> <bpmndi:BPMNLabel>
<omgdi:waypoint x="242.0" y="216.0"/> <omgdc:Bounds height="-1.0" width="-1.0" x="-1.0" y="-1.0"/>
<omgdi:waypoint x="270.0" y="217.5"/> </bpmndi:BPMNLabel>
<bpmndi:BPMNLabel> </bpmndi:BPMNEdge>
<omgdc:Bounds height="-1.0" width="-1.0" x="-1.0" y="-1.0"/> <bpmndi:BPMNEdge bpmnElement="flow21" id="BPMNEdge_flow21" sourceElement="dataApply"
</bpmndi:BPMNLabel> targetElement="exclusivegateway3">
</bpmndi:BPMNEdge> <omgdi:waypoint x="485.0" y="147.5"/>
<bpmndi:BPMNEdge bpmnElement="flow13" id="BPMNEdge_flow13" sourceElement="exclusivegateway2" targetElement="dataBackFlow"> <omgdi:waypoint x="510.0" y="143.0"/>
<omgdi:waypoint x="935.0" y="170.0"/> <bpmndi:BPMNLabel>
<omgdi:waypoint x="935.0" y="95.0"/> <omgdc:Bounds height="-1.0" width="-1.0" x="-1.0" y="-1.0"/>
<omgdi:waypoint x="935.0" y="50.0"/> </bpmndi:BPMNLabel>
<bpmndi:BPMNLabel> </bpmndi:BPMNEdge>
<omgdc:Bounds height="14.0" width="8.0" x="936.0" y="167.0"/> <bpmndi:BPMNEdge bpmnElement="flow22" id="BPMNEdge_flow22" sourceElement="exclusivegateway3"
</bpmndi:BPMNLabel> targetElement="dataEntrySubTask">
</bpmndi:BPMNEdge> <omgdi:waypoint x="529.0" y="130.0"/>
<bpmndi:BPMNEdge bpmnElement="flow14" id="BPMNEdge_flow14" sourceElement="dataBackFlow" targetElement="endevent2"> <omgdi:waypoint x="529.0" y="89.0"/>
<omgdi:waypoint x="985.0" y="30.0"/> <omgdi:waypoint x="452.0" y="89.0"/>
<omgdi:waypoint x="1060.0" y="30.0"/> <omgdi:waypoint x="322.0" y="89.0"/>
<omgdi:waypoint x="1060.0" y="-32.0"/> <omgdi:waypoint x="322.5" y="190.0"/>
<omgdi:waypoint x="1240.0" y="-32.0"/> <bpmndi:BPMNLabel>
<omgdi:waypoint x="1060.0" y="168.50806661517032"/> <omgdc:Bounds height="14.0" width="7.0" x="530.0" y="127.0"/>
<bpmndi:BPMNLabel> </bpmndi:BPMNLabel>
<omgdc:Bounds height="-1.0" width="-1.0" x="-1.0" y="-1.0"/> </bpmndi:BPMNEdge>
</bpmndi:BPMNLabel> <bpmndi:BPMNEdge bpmnElement="flow23" id="BPMNEdge_flow23" sourceElement="exclusivegateway3"
</bpmndi:BPMNEdge> targetElement="endevent3">
<bpmndi:BPMNEdge bpmnElement="flow15" id="BPMNEdge_flow15" sourceElement="startEntry" targetElement="entrySubprocess"> <omgdi:waypoint x="538.0" y="147.0"/>
<omgdi:waypoint x="120.0" y="177.5"/> <omgdi:waypoint x="587.0" y="147.0"/>
<omgdi:waypoint x="200.0" y="179.5"/> <omgdi:waypoint x="587.0" y="200.0312805773287"/>
<bpmndi:BPMNLabel> <bpmndi:BPMNLabel>
<omgdc:Bounds height="-1.0" width="-1.0" x="-1.0" y="-1.0"/> <omgdc:Bounds height="14.0" width="8.0" x="550.0" y="147.0"/>
</bpmndi:BPMNLabel> </bpmndi:BPMNLabel>
</bpmndi:BPMNEdge> </bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow11" id="BPMNEdge_flow11" sourceElement="headApply" targetElement="exclusivegateway2"> <bpmndi:BPMNEdge bpmnElement="flow17" id="BPMNEdge_flow17" sourceElement="startevent2"
<omgdi:waypoint x="815.0" y="337.5"/> targetElement="dataEntrySubTask">
<omgdi:waypoint x="916.0" y="183.0"/> <omgdi:waypoint x="242.0" y="216.0"/>
<bpmndi:BPMNLabel> <omgdi:waypoint x="270.0" y="217.5"/>
<omgdc:Bounds height="-1.0" width="-1.0" x="-1.0" y="-1.0"/> <bpmndi:BPMNLabel>
</bpmndi:BPMNLabel> <omgdc:Bounds height="-1.0" width="-1.0" x="-1.0" y="-1.0"/>
</bpmndi:BPMNEdge> </bpmndi:BPMNLabel>
<bpmndi:BPMNEdge bpmnElement="flow12" id="BPMNEdge_flow12" sourceElement="exclusivegateway2" targetElement="endevent2"> </bpmndi:BPMNEdge>
<omgdi:waypoint x="948.0" y="183.0"/> <bpmndi:BPMNEdge bpmnElement="flow13" id="BPMNEdge_flow13" sourceElement="exclusivegateway2"
<omgdi:waypoint x="1040.0" y="184.0"/> targetElement="dataBackFlow">
<bpmndi:BPMNLabel> <omgdi:waypoint x="935.0" y="170.0"/>
<omgdc:Bounds height="14.0" width="7.0" x="956.0" y="187.0"/> <omgdi:waypoint x="935.0" y="95.0"/>
</bpmndi:BPMNLabel> <omgdi:waypoint x="935.0" y="50.0"/>
</bpmndi:BPMNEdge> <bpmndi:BPMNLabel>
</bpmndi:BPMNPlane> <omgdc:Bounds height="14.0" width="8.0" x="936.0" y="167.0"/>
</bpmndi:BPMNDiagram> </bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow14" id="BPMNEdge_flow14" sourceElement="dataBackFlow"
targetElement="endevent2">
<omgdi:waypoint x="985.0" y="30.0"/>
<omgdi:waypoint x="1060.0" y="30.0"/>
<omgdi:waypoint x="1060.0" y="-32.0"/>
<omgdi:waypoint x="1240.0" y="-32.0"/>
<omgdi:waypoint x="1060.0" y="168.50806661517032"/>
<bpmndi:BPMNLabel>
<omgdc:Bounds height="-1.0" width="-1.0" x="-1.0" y="-1.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow15" id="BPMNEdge_flow15" sourceElement="startEntry"
targetElement="entrySubprocess">
<omgdi:waypoint x="120.0" y="177.5"/>
<omgdi:waypoint x="200.0" y="179.5"/>
<bpmndi:BPMNLabel>
<omgdc:Bounds height="-1.0" width="-1.0" x="-1.0" y="-1.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow11" id="BPMNEdge_flow11" sourceElement="headApply"
targetElement="exclusivegateway2">
<omgdi:waypoint x="815.0" y="337.5"/>
<omgdi:waypoint x="916.0" y="183.0"/>
<bpmndi:BPMNLabel>
<omgdc:Bounds height="-1.0" width="-1.0" x="-1.0" y="-1.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow12" id="BPMNEdge_flow12" sourceElement="exclusivegateway2"
targetElement="endevent2">
<omgdi:waypoint x="948.0" y="183.0"/>
<omgdi:waypoint x="1040.0" y="184.0"/>
<bpmndi:BPMNLabel>
<omgdc:Bounds height="14.0" width="7.0" x="956.0" y="187.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</definitions> </definitions>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment