first commit
79
resources/diagrams/dispatch/dispatch.bpmn
Normal file
@ -0,0 +1,79 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/test">
|
||||
<process id="dispatch" name="发文会签" isExecutable="true">
|
||||
<documentation>会签</documentation>
|
||||
<startEvent id="startevent1" name="Start" activiti:initiator="applyUser">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="rate" name="投票比例" type="enum" required="true">
|
||||
<activiti:value id="100" name="100%"></activiti:value>
|
||||
<activiti:value id="70" name="70%"></activiti:value>
|
||||
<activiti:value id="50" name="50%"></activiti:value>
|
||||
</activiti:formProperty>
|
||||
<activiti:formProperty id="incept" name="发送至" type="string" required="true"></activiti:formProperty>
|
||||
<activiti:formProperty id="content" name="发文内容" type="string" required="true"></activiti:formProperty>
|
||||
<activiti:formProperty id="countersignUsers" name="会签参与人" type="users" required="true"></activiti:formProperty>
|
||||
</extensionElements>
|
||||
</startEvent>
|
||||
<userTask id="countersign" name="发文会签" activiti:assignee="${countersignUser}">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="rate" name="投票比例" type="enum" writable="false">
|
||||
<activiti:value id="100" name="100%"></activiti:value>
|
||||
<activiti:value id="70" name="70%"></activiti:value>
|
||||
<activiti:value id="50" name="50%"></activiti:value>
|
||||
</activiti:formProperty>
|
||||
<activiti:formProperty id="incept" name="发送至" type="string" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="content" name="发文内容" type="string" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="countersignUsers" name="会签参与人" type="users" writable="false"></activiti:formProperty>
|
||||
</extensionElements>
|
||||
<multiInstanceLoopCharacteristics isSequential="false" activiti:collection="${countersignUsers}" activiti:elementVariable="countersignUser">
|
||||
<completionCondition>${dispatchWorkflowService.canComplete(execution, rate, nrOfInstances, nrOfActiveInstances,
|
||||
nrOfCompletedInstances, loopCounter)}</completionCondition>
|
||||
</multiInstanceLoopCharacteristics>
|
||||
</userTask>
|
||||
<userTask id="send" name="下发文件" activiti:assignee="${applyUser}">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="incept" name="发送至" type="string" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="rate" name="投票比例" type="enum" writable="false">
|
||||
<activiti:value id="100" name="100%"></activiti:value>
|
||||
<activiti:value id="70" name="70%"></activiti:value>
|
||||
<activiti:value id="50" name="50%"></activiti:value>
|
||||
</activiti:formProperty>
|
||||
<activiti:formProperty id="incept" name="发送至" type="string" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="content" name="发文内容" type="string" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="countersignUsers" name="会签参与人" type="users" writable="false"></activiti:formProperty>
|
||||
</extensionElements>
|
||||
</userTask>
|
||||
<endEvent id="endevent1" name="End"></endEvent>
|
||||
<sequenceFlow id="flow1" sourceRef="startevent1" targetRef="countersign"></sequenceFlow>
|
||||
<sequenceFlow id="flow2" sourceRef="countersign" targetRef="send"></sequenceFlow>
|
||||
<sequenceFlow id="flow3" sourceRef="send" targetRef="endevent1"></sequenceFlow>
|
||||
</process>
|
||||
<bpmndi:BPMNDiagram id="BPMNDiagram_dispatch">
|
||||
<bpmndi:BPMNPlane bpmnElement="dispatch" id="BPMNPlane_dispatch">
|
||||
<bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1">
|
||||
<omgdc:Bounds height="35.0" width="35.0" x="30.0" y="120.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="countersign" id="BPMNShape_countersign">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="110.0" y="110.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="send" id="BPMNShape_send">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="270.0" y="110.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1">
|
||||
<omgdc:Bounds height="35.0" width="35.0" x="430.0" y="120.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow1" id="BPMNEdge_flow1">
|
||||
<omgdi:waypoint x="65.0" y="137.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="110.0" y="137.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2">
|
||||
<omgdi:waypoint x="215.0" y="137.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="270.0" y="137.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow3" id="BPMNEdge_flow3">
|
||||
<omgdi:waypoint x="375.0" y="137.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="430.0" y="137.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
</bpmndi:BPMNPlane>
|
||||
</bpmndi:BPMNDiagram>
|
||||
</definitions>
|
||||
BIN
resources/diagrams/dispatch/dispatch.png
Normal file
|
After Width: | Height: | Size: 9.1 KiB |
176
resources/diagrams/leave-dynamic-from/leave-dynamic-from.bpmn
Normal file
@ -0,0 +1,176 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.kafeitu.me/demo/activiti/leave">
|
||||
<process id="leave-dynamic-from" name="请假流程-动态表单">
|
||||
<documentation>请假流程演示-动态表单</documentation>
|
||||
<startEvent id="startevent1" name="Start" activiti:initiator="applyUserId">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="startDate" name="请假开始日期" type="date" datePattern="yyyy-MM-dd" required="true" readable="true" writable="true"></activiti:formProperty>
|
||||
<activiti:formProperty id="endDate" name="请假结束日期" type="date" datePattern="yyyy-MM-dd" required="true" readable="true" writable="true"></activiti:formProperty>
|
||||
<activiti:formProperty id="reason" name="请假原因" type="string" required="true" readable="true" writable="true"></activiti:formProperty>
|
||||
</extensionElements>
|
||||
</startEvent>
|
||||
<userTask id="deptLeaderAudit" name="部门领导审批" activiti:candidateGroups="deptLeader">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="startDate" name="请假开始日期" type="date" value="${startDate}" datePattern="yyyy-MM-dd" readable="true" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="endDate" name="请假结束日期" type="date" value="${endDAte}" datePattern="yyyy-MM-dd" readable="true" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="reason" name="请假原因" type="string" value="${reason}" readable="true" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="deptLeaderPass" name="审批意见" type="enum" required="true" writable="true">
|
||||
<activiti:value id="true" name="同意"></activiti:value>
|
||||
<activiti:value id="false" name="不同意"></activiti:value>
|
||||
</activiti:formProperty>
|
||||
</extensionElements>
|
||||
</userTask>
|
||||
<exclusiveGateway id="exclusivegateway5" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<userTask id="modifyApply" name="调整申请" activiti:assignee="${applyUserId}">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="startDate" name="请假开始日期" type="date" value="${startDate}" datePattern="yyyy-MM-dd" required="true" readable="true" writable="true"></activiti:formProperty>
|
||||
<activiti:formProperty id="endDate" name="请假结束日期" type="date" value="${endDAte}" datePattern="yyyy-MM-dd" required="true" readable="true" writable="true"></activiti:formProperty>
|
||||
<activiti:formProperty id="reason" name="请假原因" type="string" value="${reason}" required="true" readable="true" writable="true"></activiti:formProperty>
|
||||
<activiti:formProperty id="reApply" name="重新申请" type="enum" required="true" writable="true">
|
||||
<activiti:value id="true" name="重新申请"></activiti:value>
|
||||
<activiti:value id="false" name="取消申请"></activiti:value>
|
||||
</activiti:formProperty>
|
||||
</extensionElements>
|
||||
</userTask>
|
||||
<userTask id="hrAudit" name="人事审批" activiti:candidateGroups="hr">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="startDate" name="请假开始日期" type="date" value="${startDate}" datePattern="yyyy-MM-dd" readable="true" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="endDate" name="请假结束日期" type="date" value="${endDAte}" datePattern="yyyy-MM-dd" readable="true" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="reason" name="请假原因" type="string" value="${reason}" readable="true" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="hrPass" name="审批意见" type="enum" required="true" writable="true">
|
||||
<activiti:value id="true" name="同意"></activiti:value>
|
||||
<activiti:value id="false" name="不同意"></activiti:value>
|
||||
</activiti:formProperty>
|
||||
</extensionElements>
|
||||
</userTask>
|
||||
<exclusiveGateway id="exclusivegateway6" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<userTask id="reportBack" name="销假" activiti:assignee="${applyUserId}">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="startDate" name="请假开始日期" type="date" value="${startDate}" datePattern="yyyy-MM-dd" readable="true" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="endDate" name="请假结束日期" type="date" value="${endDAte}" datePattern="yyyy-MM-dd" readable="true" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="reason" name="请假原因" type="string" value="${reason}" readable="true" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="reportBackDate" name="销假日期" type="date" datePattern="yyyy-MM-dd" required="true" readable="true" writable="true"></activiti:formProperty>
|
||||
</extensionElements>
|
||||
</userTask>
|
||||
<endEvent id="endevent1" name="End"></endEvent>
|
||||
<exclusiveGateway id="exclusivegateway7" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<sequenceFlow id="flow2" name="" sourceRef="startevent1" targetRef="deptLeaderAudit"></sequenceFlow>
|
||||
<sequenceFlow id="flow3" name="" sourceRef="deptLeaderAudit" targetRef="exclusivegateway5"></sequenceFlow>
|
||||
<sequenceFlow id="flow4" name="不同意" sourceRef="exclusivegateway5" targetRef="modifyApply">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${deptLeaderPass == 'false'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow5" name="同意" sourceRef="exclusivegateway5" targetRef="hrAudit">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${deptLeaderPass == 'true'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow6" name="" sourceRef="hrAudit" targetRef="exclusivegateway6"></sequenceFlow>
|
||||
<sequenceFlow id="flow7" name="同意" sourceRef="exclusivegateway6" targetRef="reportBack">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${hrPass == 'true'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow8" name="" sourceRef="reportBack" targetRef="endevent1"></sequenceFlow>
|
||||
<sequenceFlow id="flow9" name="不同意" sourceRef="exclusivegateway6" targetRef="modifyApply">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${hrPass == 'false'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow10" name="重新申请" sourceRef="exclusivegateway7" targetRef="deptLeaderAudit">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${reApply == 'true'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow11" name="" sourceRef="modifyApply" targetRef="exclusivegateway7"></sequenceFlow>
|
||||
<sequenceFlow id="flow12" name="结束流程" sourceRef="exclusivegateway7" targetRef="endevent1">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${reApply == 'false'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
</process>
|
||||
<bpmndi:BPMNDiagram id="BPMNDiagram_leave-dynamic-from">
|
||||
<bpmndi:BPMNPlane bpmnElement="leave-dynamic-from" id="BPMNPlane_leave-dynamic-from">
|
||||
<bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1">
|
||||
<omgdc:Bounds height="35" width="35" x="10" y="90"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="deptLeaderAudit" id="BPMNShape_deptLeaderAudit">
|
||||
<omgdc:Bounds height="55" width="105" x="90" y="80"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway5" id="BPMNShape_exclusivegateway5">
|
||||
<omgdc:Bounds height="40" width="40" x="250" y="87"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="modifyApply" id="BPMNShape_modifyApply">
|
||||
<omgdc:Bounds height="55" width="105" x="218" y="190"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="hrAudit" id="BPMNShape_hrAudit">
|
||||
<omgdc:Bounds height="55" width="105" x="358" y="80"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway6" id="BPMNShape_exclusivegateway6">
|
||||
<omgdc:Bounds height="40" width="40" x="495" y="87"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="reportBack" id="BPMNShape_reportBack">
|
||||
<omgdc:Bounds height="55" width="105" x="590" y="80"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1">
|
||||
<omgdc:Bounds height="35" width="35" x="625" y="283"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway7" id="BPMNShape_exclusivegateway7">
|
||||
<omgdc:Bounds height="40" width="40" x="250" y="280"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2">
|
||||
<omgdi:waypoint x="45" y="107"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="90" y="107"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow3" id="BPMNEdge_flow3">
|
||||
<omgdi:waypoint x="195" y="107"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="250" y="107"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow4" id="BPMNEdge_flow4">
|
||||
<omgdi:waypoint x="270" y="127"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="270" y="190"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11" width="100" x="10" y="0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow5" id="BPMNEdge_flow5">
|
||||
<omgdi:waypoint x="290" y="107"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="358" y="107"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11" width="100" x="-24" y="-17"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow6" id="BPMNEdge_flow6">
|
||||
<omgdi:waypoint x="463" y="107"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="495" y="107"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow7" id="BPMNEdge_flow7">
|
||||
<omgdi:waypoint x="535" y="107"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="590" y="107"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11" width="100" x="-27" y="-17"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow8" id="BPMNEdge_flow8">
|
||||
<omgdi:waypoint x="642" y="135"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="642" y="283"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow9" id="BPMNEdge_flow9">
|
||||
<omgdi:waypoint x="515" y="127"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="514" y="217"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="323" y="217"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11" width="100" x="10" y="0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow10" id="BPMNEdge_flow10">
|
||||
<omgdi:waypoint x="250" y="300"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="142" y="299"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="142" y="135"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11" width="100" x="10" y="0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow11" id="BPMNEdge_flow11">
|
||||
<omgdi:waypoint x="270" y="245"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="270" y="280"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow12" id="BPMNEdge_flow12">
|
||||
<omgdi:waypoint x="290" y="300"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="625" y="300"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11" width="100" x="10" y="0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
</bpmndi:BPMNPlane>
|
||||
</bpmndi:BPMNDiagram>
|
||||
</definitions>
|
||||
BIN
resources/diagrams/leave-dynamic-from/leave-dynamic-from.png
Normal file
|
After Width: | Height: | Size: 21 KiB |
37
resources/diagrams/leave-formkey/dept-leader-audit.form
Normal file
@ -0,0 +1,37 @@
|
||||
<table class='view-info'>
|
||||
<tr>
|
||||
<td width="100" class="label">申请人:</td>
|
||||
<td name="userId">${applyUserId}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">假种:</td>
|
||||
<td name="leaveType">${leaveType}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">请假<font color="red">开始</font>时间:</td>
|
||||
<td name="startTime">${startTime}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">请假<font color="red">结束</font>时间:</td>
|
||||
<td name="endTime">${endTime}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">请假事由:</td>
|
||||
<td name="reason">${reason}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">是否同意申请:</td>
|
||||
<td>
|
||||
<select id="deptLeaderPass" name="fp_deptLeaderPass">
|
||||
<option value="true">同意</option>
|
||||
<option value="false">驳回</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr id="leaderBackReasonTr">
|
||||
<td class="label">驳回理由:</td>
|
||||
<td>
|
||||
<textarea id="leaderBackReason" name="fp_leaderBackReason"></textarea>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
37
resources/diagrams/leave-formkey/hr-audit.form
Normal file
@ -0,0 +1,37 @@
|
||||
<table class='view-info'>
|
||||
<tr>
|
||||
<td width="100" class="label">申请人:</td>
|
||||
<td name="userId">${applyUserId}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">假种:</td>
|
||||
<td name="leaveType">${leaveType}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">请假<font color="red">开始</font>时间:</td>
|
||||
<td name="startTime">${startTime}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">请假<font color="red">结束</font>时间:</td>
|
||||
<td name="endTime">${endTime}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">请假事由:</td>
|
||||
<td name="reason">${reason}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">是否同意申请:</td>
|
||||
<td>
|
||||
<select id="hrPass" name="fp_hrPass">
|
||||
<option value="true">同意</option>
|
||||
<option value="false">驳回</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr id="hrBackReasonTr">
|
||||
<td class="label">驳回理由:</td>
|
||||
<td>
|
||||
<textarea id="hrBackReason" name="fp_hrBackReason"></textarea>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
133
resources/diagrams/leave-formkey/leave-formkey.bpmn
Normal file
@ -0,0 +1,133 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.kafeitu.me/demo/activiti/leave">
|
||||
<process id="leave-formkey" name="请假流程-外置表单">
|
||||
<documentation>请假流程演示</documentation>
|
||||
<startEvent id="startevent1" name="Start" activiti:formKey="start.form" activiti:initiator="applyUserId"></startEvent>
|
||||
<userTask id="deptLeaderAudit" name="部门领导审批" activiti:candidateGroups="deptLeader" activiti:formKey="dept-leader-audit.form"></userTask>
|
||||
<exclusiveGateway id="exclusivegateway5" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<userTask id="modifyApply" name="调整申请" activiti:assignee="${applyUserId}" activiti:formKey="modify-apply.form"></userTask>
|
||||
<userTask id="hrAudit" name="人事审批" activiti:candidateGroups="hr" activiti:formKey="hr-audit.form"></userTask>
|
||||
<exclusiveGateway id="exclusivegateway6" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<userTask id="reportBack" name="销假" activiti:assignee="${applyUserId}" activiti:formKey="report-back.form"></userTask>
|
||||
<endEvent id="endevent1" name="End"></endEvent>
|
||||
<exclusiveGateway id="exclusivegateway7" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<sequenceFlow id="flow2" name="" sourceRef="startevent1" targetRef="deptLeaderAudit"></sequenceFlow>
|
||||
<sequenceFlow id="flow3" name="" sourceRef="deptLeaderAudit" targetRef="exclusivegateway5"></sequenceFlow>
|
||||
<sequenceFlow id="flow4" name="不同意" sourceRef="exclusivegateway5" targetRef="modifyApply">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${deptLeaderPass == 'false'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow5" name="同意" sourceRef="exclusivegateway5" targetRef="hrAudit">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${deptLeaderPass == 'true'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow6" name="" sourceRef="hrAudit" targetRef="exclusivegateway6"></sequenceFlow>
|
||||
<sequenceFlow id="flow7" name="同意" sourceRef="exclusivegateway6" targetRef="reportBack">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${hrPass == 'true'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow8" name="" sourceRef="reportBack" targetRef="endevent1"></sequenceFlow>
|
||||
<sequenceFlow id="flow9" name="不同意" sourceRef="exclusivegateway6" targetRef="modifyApply">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${hrPass == 'false'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow10" name="重新申请" sourceRef="exclusivegateway7" targetRef="deptLeaderAudit">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${reApply == 'true'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow11" name="" sourceRef="modifyApply" targetRef="exclusivegateway7"></sequenceFlow>
|
||||
<sequenceFlow id="flow12" name="结束流程" sourceRef="exclusivegateway7" targetRef="endevent1">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${reApply == 'false'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
</process>
|
||||
<bpmndi:BPMNDiagram id="BPMNDiagram_leave-formkey">
|
||||
<bpmndi:BPMNPlane bpmnElement="leave-formkey" id="BPMNPlane_leave-formkey">
|
||||
<bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1">
|
||||
<omgdc:Bounds height="35" width="35" x="10" y="90"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="deptLeaderAudit" id="BPMNShape_deptLeaderAudit">
|
||||
<omgdc:Bounds height="55" width="105" x="90" y="80"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway5" id="BPMNShape_exclusivegateway5">
|
||||
<omgdc:Bounds height="40" width="40" x="250" y="87"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="modifyApply" id="BPMNShape_modifyApply">
|
||||
<omgdc:Bounds height="55" width="105" x="218" y="190"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="hrAudit" id="BPMNShape_hrAudit">
|
||||
<omgdc:Bounds height="55" width="105" x="358" y="80"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway6" id="BPMNShape_exclusivegateway6">
|
||||
<omgdc:Bounds height="40" width="40" x="495" y="87"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="reportBack" id="BPMNShape_reportBack">
|
||||
<omgdc:Bounds height="55" width="105" x="590" y="80"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1">
|
||||
<omgdc:Bounds height="35" width="35" x="625" y="283"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway7" id="BPMNShape_exclusivegateway7">
|
||||
<omgdc:Bounds height="40" width="40" x="250" y="280"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2">
|
||||
<omgdi:waypoint x="45" y="107"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="90" y="107"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow3" id="BPMNEdge_flow3">
|
||||
<omgdi:waypoint x="195" y="107"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="250" y="107"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow4" id="BPMNEdge_flow4">
|
||||
<omgdi:waypoint x="270" y="127"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="270" y="190"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11" width="100" x="10" y="0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow5" id="BPMNEdge_flow5">
|
||||
<omgdi:waypoint x="290" y="107"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="358" y="107"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11" width="100" x="-24" y="-17"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow6" id="BPMNEdge_flow6">
|
||||
<omgdi:waypoint x="463" y="107"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="495" y="107"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow7" id="BPMNEdge_flow7">
|
||||
<omgdi:waypoint x="535" y="107"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="590" y="107"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11" width="100" x="-22" y="-17"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow8" id="BPMNEdge_flow8">
|
||||
<omgdi:waypoint x="642" y="135"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="642" y="283"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow9" id="BPMNEdge_flow9">
|
||||
<omgdi:waypoint x="515" y="127"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="514" y="217"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="323" y="217"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11" width="100" x="10" y="0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow10" id="BPMNEdge_flow10">
|
||||
<omgdi:waypoint x="250" y="300"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="142" y="299"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="142" y="135"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11" width="100" x="10" y="0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow11" id="BPMNEdge_flow11">
|
||||
<omgdi:waypoint x="270" y="245"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="270" y="280"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow12" id="BPMNEdge_flow12">
|
||||
<omgdi:waypoint x="290" y="300"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="625" y="300"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11" width="100" x="10" y="0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
</bpmndi:BPMNPlane>
|
||||
</bpmndi:BPMNDiagram>
|
||||
</definitions>
|
||||
BIN
resources/diagrams/leave-formkey/leave-formkey.png
Normal file
|
After Width: | Height: | Size: 21 KiB |
38
resources/diagrams/leave-formkey/modify-apply.form
Normal file
@ -0,0 +1,38 @@
|
||||
<h2 id="error" class="alert alert-error">申请被驳回!!!</h2>
|
||||
<table border="1">
|
||||
<tr>
|
||||
<td>请假类型:</td>
|
||||
<td>
|
||||
<select id="leaveType" name="fp_leaveType">
|
||||
<option>公休</option>
|
||||
<option>病假</option>
|
||||
<option>调休</option>
|
||||
<option>事假</option>
|
||||
<option>婚假</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>开始时间:</td>
|
||||
<td><input type="text" id="startTime" value="${startTime}" name="fp_startTime" class="datetime required" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>结束时间:</td>
|
||||
<td><input type="text" id="endTime" value="${endTime}" name="fp_endTime" class="datetime required" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>请假原因:</td>
|
||||
<td>
|
||||
<textarea id="reason" name="fp_reason">${reason}</textarea>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>是否继续申请:</td>
|
||||
<td>
|
||||
<select id="reApply" name="fp_reApply">
|
||||
<option value='true'>重新申请</option>
|
||||
<option value='false'>结束流程</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
30
resources/diagrams/leave-formkey/report-back.form
Normal file
@ -0,0 +1,30 @@
|
||||
<table class='view-info'>
|
||||
<tr>
|
||||
<td width="100" class="label">申请人:</td>
|
||||
<td name="userId">${applyUserId}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">假种:</td>
|
||||
<td name="leaveType">${leaveType}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">请假<font color="red">开始</font>时间:</td>
|
||||
<td name="startTime">${startTime}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">请假<font color="red">结束</font>时间:</td>
|
||||
<td name="endTime">${endTime}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="label">请假事由:</td>
|
||||
<td name="reason">${reason}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>开始时间:</td>
|
||||
<td><input type="text" id="startTime" name="fp_startTime" class="datetime" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>结束时间:</td>
|
||||
<td><input type="text" id="endTime" name="fp_endTime" class="datetime" /></td>
|
||||
</tr>
|
||||
</table>
|
||||
28
resources/diagrams/leave-formkey/start.form
Normal file
@ -0,0 +1,28 @@
|
||||
<table border="1">
|
||||
<tr>
|
||||
<td>请假类型:</td>
|
||||
<td>
|
||||
<select id="leaveType" name="fp_leaveType">
|
||||
<option>公休</option>
|
||||
<option>病假</option>
|
||||
<option>调休</option>
|
||||
<option>事假</option>
|
||||
<option>婚假</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>开始时间:</td>
|
||||
<td><input type="text" id="startTime" name="fp_startTime" class="datetime required" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>结束时间:</td>
|
||||
<td><input type="text" id="endTime" name="fp_endTime" class="datetime required" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>请假原因:</td>
|
||||
<td>
|
||||
<textarea id="reason" name="fp_reason"></textarea>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
216
resources/diagrams/leave-jpa/leave-jpa.bpmn
Normal file
@ -0,0 +1,216 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.kafeitu.me/activiti/leave-jpa">
|
||||
<process id="leave-jpa" name="请假流程-JPA" isExecutable="true">
|
||||
<documentation>请假流程演示-JPA,把变量保存在独立的表中</documentation>
|
||||
<extensionElements>
|
||||
<activiti:executionListener event="start" expression="${execution.setVariable('leave', leaveEntityManager.newLeave(execution))}"></activiti:executionListener>
|
||||
<activiti:executionListener event="end" delegateExpression="${leaveProcessEndListener}"></activiti:executionListener>
|
||||
</extensionElements>
|
||||
<startEvent id="startevent1" name="Start" activiti:initiator="applyUserId">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="leaveType" name="请假类型" type="enum" required="true">
|
||||
<activiti:value id="公休" name="公休"></activiti:value>
|
||||
<activiti:value id="病假" name="病假"></activiti:value>
|
||||
<activiti:value id="调休" name="调休"></activiti:value>
|
||||
<activiti:value id="事假" name="事假"></activiti:value>
|
||||
<activiti:value id="婚假" name="婚假"></activiti:value>
|
||||
</activiti:formProperty>
|
||||
<activiti:formProperty id="startTime" name="请假开始日期" type="date" datePattern="yyyy-MM-dd" required="true"></activiti:formProperty>
|
||||
<activiti:formProperty id="endTime" name="请假结束日期" type="date" datePattern="yyyy-MM-dd" required="true"></activiti:formProperty>
|
||||
<activiti:formProperty id="reason" name="请假原因" type="string" required="true"></activiti:formProperty>
|
||||
</extensionElements>
|
||||
</startEvent>
|
||||
<userTask id="deptLeaderAudit" name="部门领导审批" activiti:candidateGroups="deptLeader">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="leaveType" name="请假类型" type="string" expression="${leave.leaveType}" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="startTime" name="请假开始日期" type="date" expression="${leave.startTime}" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="endTime" name="请假结束日期" type="date" expression="${leave.endTime}" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="reason" name="请假原因" type="string" expression="${leave.reason}" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="deptLeaderApproved" name="审批意见" type="enum" required="true">
|
||||
<activiti:value id="true" name="同意"></activiti:value>
|
||||
<activiti:value id="false" name="拒绝"></activiti:value>
|
||||
</activiti:formProperty>
|
||||
<activiti:taskListener event="complete" expression="${leave.setDeptLeaderApproved(deptLeaderApproved)}"></activiti:taskListener>
|
||||
</extensionElements>
|
||||
</userTask>
|
||||
<exclusiveGateway id="exclusivegateway5" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<userTask id="modifyApply" name="调整申请" activiti:assignee="${leave.userId}">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="leaveType" name="请假类型" type="string" expression="${leave.leaveType}" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="startTime" name="请假开始日期" type="date" expression="${leave.startTime}" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="endTime" name="请假结束日期" type="date" expression="${leave.endTime}" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="reason" name="请假原因" type="string" expression="${leave.reason}" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="reApply" name="重新申请" type="enum" required="true">
|
||||
<activiti:value id="true" name="重新申请"></activiti:value>
|
||||
<activiti:value id="false" name="取消申请"></activiti:value>
|
||||
</activiti:formProperty>
|
||||
</extensionElements>
|
||||
</userTask>
|
||||
<userTask id="hrAudit" name="人事审批" activiti:candidateGroups="hr">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="leaveType" name="请假类型" type="string" expression="${leave.leaveType}" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="startTime" name="请假开始日期" type="date" expression="${leave.startTime}" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="endTime" name="请假结束日期" type="date" expression="${leave.endTime}" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="reason" name="请假原因" type="string" expression="${leave.reason}" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="hrApproved" name="审批意见" type="enum" required="true">
|
||||
<activiti:value id="true" name="同意"></activiti:value>
|
||||
<activiti:value id="false" name="拒绝"></activiti:value>
|
||||
</activiti:formProperty>
|
||||
<activiti:taskListener event="complete" expression="${leave.setHrApproved(hrApproved)}"></activiti:taskListener>
|
||||
</extensionElements>
|
||||
</userTask>
|
||||
<exclusiveGateway id="exclusivegateway6" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<userTask id="reportBack" name="销假" activiti:assignee="${leave.userId}">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="leaveType" name="请假类型" type="string" expression="${leave.leaveType}" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="startTime" name="请假开始日期" type="date" expression="${leave.startTime}" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="endTime" name="请假结束日期" type="date" expression="${leave.endTime}" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="reason" name="请假原因" type="string" expression="${leave.reason}" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="realityStartTime" name="(实际)请假开始日期" type="date" datePattern="yyyy-MM-dd" required="true"></activiti:formProperty>
|
||||
<activiti:formProperty id="realityEndTime" name="(实际)请假结束日期" type="date" datePattern="yyyy-MM-dd" required="true"></activiti:formProperty>
|
||||
<activiti:formProperty id="reportBackDate" name="销假日期" type="date" default="${leave.endTime}" datePattern="yyyy-MM-dd" required="true"></activiti:formProperty>
|
||||
<activiti:taskListener event="complete" expression="${leave.setReportBackDate(reportBackDate)}"></activiti:taskListener>
|
||||
<activiti:taskListener event="complete" expression="${leave.setRealityStartTime(realityStartTime)}"></activiti:taskListener>
|
||||
<activiti:taskListener event="complete" expression="${leave.setRealityEndTime(realityEndTime)}"></activiti:taskListener>
|
||||
</extensionElements>
|
||||
</userTask>
|
||||
<endEvent id="endevent1" name="End"></endEvent>
|
||||
<exclusiveGateway id="exclusivegateway7" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<sequenceFlow id="flow2" sourceRef="startevent1" targetRef="deptLeaderAudit"></sequenceFlow>
|
||||
<sequenceFlow id="flow3" sourceRef="deptLeaderAudit" targetRef="exclusivegateway5"></sequenceFlow>
|
||||
<sequenceFlow id="flow4" name="拒绝" sourceRef="exclusivegateway5" targetRef="modifyApply">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${deptLeaderApproved == 'false'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow5" name="同意" sourceRef="exclusivegateway5" targetRef="hrAudit">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${deptLeaderApproved == 'true'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow6" sourceRef="hrAudit" targetRef="exclusivegateway6"></sequenceFlow>
|
||||
<sequenceFlow id="flow7" name="同意" sourceRef="exclusivegateway6" targetRef="reportBack">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${hrApproved == 'true'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow8" name="销假" sourceRef="reportBack" targetRef="endevent1">
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow9" name="拒绝" sourceRef="exclusivegateway6" targetRef="modifyApply">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${hrApproved == 'false'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow10" name="重新申请" sourceRef="exclusivegateway7" targetRef="deptLeaderAudit">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${reApply == 'true'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow11" sourceRef="modifyApply" targetRef="exclusivegateway7"></sequenceFlow>
|
||||
<sequenceFlow id="flow12" name="结束流程" sourceRef="exclusivegateway7" targetRef="endevent1">
|
||||
<extensionElements>
|
||||
<activiti:executionListener event="take" expression="${execution.setVariable('result', 'canceled')}"></activiti:executionListener>
|
||||
</extensionElements>
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${reApply == 'false'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<textAnnotation id="textannotation1" textFormat="text/plain">
|
||||
<text>请求被驳回后员工可以选择继续申请,或者取消本次申请</text>
|
||||
</textAnnotation>
|
||||
<association id="association1" sourceRef="modifyApply" targetRef="textannotation1"></association>
|
||||
</process>
|
||||
<bpmndi:BPMNDiagram id="BPMNDiagram_leave-jpa">
|
||||
<bpmndi:BPMNPlane bpmnElement="leave-jpa" id="BPMNPlane_leave-jpa">
|
||||
<bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1">
|
||||
<omgdc:Bounds height="35.0" width="35.0" x="10.0" y="30.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="deptLeaderAudit" id="BPMNShape_deptLeaderAudit">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="90.0" y="20.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway5" id="BPMNShape_exclusivegateway5">
|
||||
<omgdc:Bounds height="40.0" width="40.0" x="250.0" y="27.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="modifyApply" id="BPMNShape_modifyApply">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="218.0" y="108.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="hrAudit" id="BPMNShape_hrAudit">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="358.0" y="20.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway6" id="BPMNShape_exclusivegateway6">
|
||||
<omgdc:Bounds height="40.0" width="40.0" x="495.0" y="27.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="reportBack" id="BPMNShape_reportBack">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="590.0" y="20.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1">
|
||||
<omgdc:Bounds height="35.0" width="35.0" x="625.0" y="223.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway7" id="BPMNShape_exclusivegateway7">
|
||||
<omgdc:Bounds height="40.0" width="40.0" x="250.0" y="220.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="textannotation1" id="BPMNShape_textannotation1">
|
||||
<omgdc:Bounds height="57.0" width="120.0" x="361.0" y="174.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2">
|
||||
<omgdi:waypoint x="45.0" y="47.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="90.0" y="47.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow3" id="BPMNEdge_flow3">
|
||||
<omgdi:waypoint x="195.0" y="47.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="250.0" y="47.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow4" id="BPMNEdge_flow4">
|
||||
<omgdi:waypoint x="270.0" y="67.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="270.0" y="108.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="22.0" x="280.0" y="67.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow5" id="BPMNEdge_flow5">
|
||||
<omgdi:waypoint x="290.0" y="47.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="358.0" y="47.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="22.0" x="300.0" y="30.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow6" id="BPMNEdge_flow6">
|
||||
<omgdi:waypoint x="463.0" y="47.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="495.0" y="47.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow7" id="BPMNEdge_flow7">
|
||||
<omgdi:waypoint x="535.0" y="47.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="590.0" y="47.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="22.0" x="534.0" y="30.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow8" id="BPMNEdge_flow8">
|
||||
<omgdi:waypoint x="642.0" y="75.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="642.0" y="223.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="22.0" x="652.0" y="75.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow9" id="BPMNEdge_flow9">
|
||||
<omgdi:waypoint x="515.0" y="67.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="514.0" y="135.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="323.0" y="135.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="22.0" x="525.0" y="67.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow10" id="BPMNEdge_flow10">
|
||||
<omgdi:waypoint x="250.0" y="240.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="142.0" y="239.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="142.0" y="75.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="44.0" x="186.0" y="221.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow11" id="BPMNEdge_flow11">
|
||||
<omgdi:waypoint x="270.0" y="163.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="270.0" y="220.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow12" id="BPMNEdge_flow12">
|
||||
<omgdi:waypoint x="290.0" y="240.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="625.0" y="240.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="44.0" x="300.0" y="223.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="association1" id="BPMNEdge_association1">
|
||||
<omgdi:waypoint x="323.0" y="135.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="421.0" y="174.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
</bpmndi:BPMNPlane>
|
||||
</bpmndi:BPMNDiagram>
|
||||
</definitions>
|
||||
BIN
resources/diagrams/leave-jpa/leave-jpa.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
237
resources/diagrams/leave-mail/leave-mail.bpmn
Normal file
@ -0,0 +1,237 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/test">
|
||||
<process id="leave-mail" name="请假流程-邮件任务" isExecutable="true">
|
||||
<documentation>请假流程演示-邮件任务</documentation>
|
||||
<startEvent id="startevent1" name="Start" activiti:initiator="applyUserId">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="startDate" name="请假开始日期" type="date" datePattern="yyyy-MM-dd" required="true"></activiti:formProperty>
|
||||
<activiti:formProperty id="endDate" name="请假结束日期" type="date" datePattern="yyyy-MM-dd" required="true"></activiti:formProperty>
|
||||
<activiti:formProperty id="reason" name="请假原因" type="string" required="true"></activiti:formProperty>
|
||||
</extensionElements>
|
||||
</startEvent>
|
||||
<userTask id="deptLeaderAudit" name="部门领导审批" activiti:candidateGroups="deptLeader">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="startDate" name="请假开始日期" type="date" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="endDate" name="请假结束日期" type="date" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="reason" name="请假原因" type="string" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="deptLeaderApproved" name="审批意见" type="enum" required="true">
|
||||
<activiti:value id="true" name="同意"></activiti:value>
|
||||
<activiti:value id="false" name="拒绝"></activiti:value>
|
||||
</activiti:formProperty>
|
||||
</extensionElements>
|
||||
</userTask>
|
||||
<exclusiveGateway id="exclusivegateway5" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<userTask id="modifyApply" name="调整申请" activiti:assignee="${applyUserId}">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="startDate" name="请假开始日期" type="date" datePattern="yyyy-MM-dd" required="true"></activiti:formProperty>
|
||||
<activiti:formProperty id="endDate" name="请假结束日期" type="date" datePattern="yyyy-MM-dd" required="true"></activiti:formProperty>
|
||||
<activiti:formProperty id="reason" name="请假原因" type="string" required="true"></activiti:formProperty>
|
||||
<activiti:formProperty id="reApply" name="重新申请" type="enum" required="true">
|
||||
<activiti:value id="true" name="重新申请"></activiti:value>
|
||||
<activiti:value id="false" name="取消申请"></activiti:value>
|
||||
</activiti:formProperty>
|
||||
</extensionElements>
|
||||
</userTask>
|
||||
<userTask id="hrAudit" name="人事审批" activiti:candidateGroups="hr">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="startDate" name="请假开始日期" type="date" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="endDate" name="请假结束日期" type="date" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="reason" name="请假原因" type="string" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="hrApproved" name="审批意见" type="enum" required="true">
|
||||
<activiti:value id="true" name="同意"></activiti:value>
|
||||
<activiti:value id="false" name="拒绝"></activiti:value>
|
||||
</activiti:formProperty>
|
||||
</extensionElements>
|
||||
</userTask>
|
||||
<exclusiveGateway id="exclusivegateway6" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<userTask id="reportBack" name="销假" activiti:assignee="${applyUserId}">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="startDate" name="请假开始日期" type="date" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="endDate" name="请假结束日期" type="date" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="reason" name="请假原因" type="string" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="reportBackDate" name="销假日期" type="date" default="${endDate}" datePattern="yyyy-MM-dd" required="true"></activiti:formProperty>
|
||||
</extensionElements>
|
||||
</userTask>
|
||||
<endEvent id="endevent1" name="End"></endEvent>
|
||||
<exclusiveGateway id="exclusivegateway7" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<sequenceFlow id="flow2" sourceRef="startevent1" targetRef="deptLeaderAudit"></sequenceFlow>
|
||||
<sequenceFlow id="flow3" sourceRef="deptLeaderAudit" targetRef="exclusivegateway5"></sequenceFlow>
|
||||
<sequenceFlow id="flow4" name="拒绝" sourceRef="exclusivegateway5" targetRef="modifyApply">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${deptLeaderApproved == 'false'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow5" name="同意" sourceRef="exclusivegateway5" targetRef="hrAudit">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${deptLeaderApproved == 'true'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow6" sourceRef="hrAudit" targetRef="exclusivegateway6"></sequenceFlow>
|
||||
<sequenceFlow id="flow7" name="同意" sourceRef="exclusivegateway6" targetRef="sendMailForApproved">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${hrApproved == 'true'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow8" name="销假" sourceRef="reportBack" targetRef="endevent1">
|
||||
<extensionElements>
|
||||
<activiti:executionListener event="take" expression="${execution.setVariable('result', 'ok')}"></activiti:executionListener>
|
||||
</extensionElements>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow9" name="拒绝" sourceRef="exclusivegateway6" targetRef="modifyApply">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${hrApproved == 'false'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow10" name="重新申请" sourceRef="exclusivegateway7" targetRef="deptLeaderAudit">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${reApply == 'true'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow11" sourceRef="modifyApply" targetRef="exclusivegateway7"></sequenceFlow>
|
||||
<sequenceFlow id="flow12" name="结束流程" sourceRef="exclusivegateway7" targetRef="endevent1">
|
||||
<extensionElements>
|
||||
<activiti:executionListener event="take" expression="${execution.setVariable('result', 'canceled')}"></activiti:executionListener>
|
||||
</extensionElements>
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${reApply == 'false'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<serviceTask id="sendMailForApproved" name="审批通过通知申请人" activiti:type="mail">
|
||||
<extensionElements>
|
||||
<activiti:field name="to">
|
||||
<activiti:expression>${to}</activiti:expression>
|
||||
</activiti:field>
|
||||
<activiti:field name="from">
|
||||
<activiti:string>noreply@localhost</activiti:string>
|
||||
</activiti:field>
|
||||
<activiti:field name="subject">
|
||||
<activiti:string>请假申请已审批通过</activiti:string>
|
||||
</activiti:field>
|
||||
<activiti:field name="charset">
|
||||
<activiti:string>UTF-8</activiti:string>
|
||||
</activiti:field>
|
||||
<activiti:field name="html">
|
||||
<activiti:expression><![CDATA[
|
||||
<html>
|
||||
<body>
|
||||
你好 ${name},<br/><br/>
|
||||
<p>您申请的请假已经审批通过。</p>
|
||||
<hr/>
|
||||
<div>开始时间:${startDate}</div>
|
||||
<div>结束时间:${endDate}</div>
|
||||
<div>请假原因:${reason}</div>
|
||||
</body>
|
||||
</html>
|
||||
]]>
|
||||
</activiti:expression>
|
||||
</activiti:field>
|
||||
<activiti:executionListener event="start" class="me.kafeitu.demo.activiti.service.SetMailInfo"></activiti:executionListener>
|
||||
</extensionElements>
|
||||
</serviceTask>
|
||||
<sequenceFlow id="flow13" sourceRef="sendMailForApproved" targetRef="reportBack"></sequenceFlow>
|
||||
<textAnnotation id="textannotation1" textFormat="text/plain">
|
||||
<text>请求被驳回后员工可以选择继续申请,或者取消本次申请</text>
|
||||
</textAnnotation>
|
||||
<association id="association1" sourceRef="modifyApply" targetRef="textannotation1"></association>
|
||||
</process>
|
||||
<bpmndi:BPMNDiagram id="BPMNDiagram_leave-mail">
|
||||
<bpmndi:BPMNPlane bpmnElement="leave-mail" id="BPMNPlane_leave-mail">
|
||||
<bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1">
|
||||
<omgdc:Bounds height="35.0" width="35.0" x="10.0" y="30.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="deptLeaderAudit" id="BPMNShape_deptLeaderAudit">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="90.0" y="20.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway5" id="BPMNShape_exclusivegateway5">
|
||||
<omgdc:Bounds height="40.0" width="40.0" x="250.0" y="27.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="modifyApply" id="BPMNShape_modifyApply">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="218.0" y="108.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="hrAudit" id="BPMNShape_hrAudit">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="358.0" y="20.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway6" id="BPMNShape_exclusivegateway6">
|
||||
<omgdc:Bounds height="40.0" width="40.0" x="495.0" y="27.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="reportBack" id="BPMNShape_reportBack">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="590.0" y="108.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1">
|
||||
<omgdc:Bounds height="35.0" width="35.0" x="625.0" y="223.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway7" id="BPMNShape_exclusivegateway7">
|
||||
<omgdc:Bounds height="40.0" width="40.0" x="250.0" y="220.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="textannotation1" id="BPMNShape_textannotation1">
|
||||
<omgdc:Bounds height="57.0" width="120.0" x="361.0" y="174.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="sendMailForApproved" id="BPMNShape_sendMailForApproved">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="590.0" y="20.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2">
|
||||
<omgdi:waypoint x="45.0" y="47.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="90.0" y="47.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow3" id="BPMNEdge_flow3">
|
||||
<omgdi:waypoint x="195.0" y="47.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="250.0" y="47.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow4" id="BPMNEdge_flow4">
|
||||
<omgdi:waypoint x="270.0" y="67.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="270.0" y="108.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="100.0" x="10.0" y="0.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow5" id="BPMNEdge_flow5">
|
||||
<omgdi:waypoint x="290.0" y="47.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="358.0" y="47.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="100.0" x="-24.0" y="-17.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow6" id="BPMNEdge_flow6">
|
||||
<omgdi:waypoint x="463.0" y="47.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="495.0" y="47.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow7" id="BPMNEdge_flow7">
|
||||
<omgdi:waypoint x="535.0" y="47.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="590.0" y="47.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="100.0" x="-27.0" y="-17.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow8" id="BPMNEdge_flow8">
|
||||
<omgdi:waypoint x="642.0" y="163.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="642.0" y="223.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="100.0" x="10.0" y="0.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow9" id="BPMNEdge_flow9">
|
||||
<omgdi:waypoint x="515.0" y="67.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="514.0" y="135.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="323.0" y="135.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="100.0" x="10.0" y="0.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow10" id="BPMNEdge_flow10">
|
||||
<omgdi:waypoint x="250.0" y="240.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="142.0" y="239.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="142.0" y="75.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="100.0" x="10.0" y="0.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow11" id="BPMNEdge_flow11">
|
||||
<omgdi:waypoint x="270.0" y="163.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="270.0" y="220.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow12" id="BPMNEdge_flow12">
|
||||
<omgdi:waypoint x="290.0" y="240.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="625.0" y="240.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="100.0" x="10.0" y="0.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow13" id="BPMNEdge_flow13">
|
||||
<omgdi:waypoint x="642.0" y="75.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="642.0" y="108.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="association1" id="BPMNEdge_association1">
|
||||
<omgdi:waypoint x="323.0" y="135.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="421.0" y="174.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
</bpmndi:BPMNPlane>
|
||||
</bpmndi:BPMNDiagram>
|
||||
</definitions>
|
||||
BIN
resources/diagrams/leave-mail/leave-mail.png
Normal file
|
After Width: | Height: | Size: 27 KiB |
385
resources/diagrams/leave-webservice/leave-webservice.bpmn
Normal file
@ -0,0 +1,385 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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="me.kafeitu.demo.activiti.webservice"
|
||||
xmlns:leave="http://webservice.kafeitu.me/" typeLanguage="http://www.w3.org/2001/XMLSchema"
|
||||
expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="me.kafeitu.demo.activiti.webservice">
|
||||
|
||||
<import importType="http://schemas.xmlsoap.org/wsdl/" location="http://localhost:8080/kft-activiti-demo/services/leave?wsdl"
|
||||
namespace="http://webservice.kafeitu.me/" />
|
||||
|
||||
<!-- interface: implementationRef属性的值要与WSDL(wsdl:portType)中的保持一致,即@WebService中的serviceName属性 -->
|
||||
<interface name="Leave Audit Interface" implementationRef="leave:LeaveWebservice">
|
||||
<!-- operation: implementationRef属性的值也要与WSDL中保持一致(wsdl:operation) -->
|
||||
<operation id="auditOperation" name="General Manager Audit Operation"
|
||||
implementationRef="leave:generalManagerAudit">
|
||||
<inMessageRef>tns:generalManagerAuditRequestMessage</inMessageRef>
|
||||
<outMessageRef>tns:generalManagerAuditResponseMessage</outMessageRef>
|
||||
</operation>
|
||||
</interface>
|
||||
|
||||
<!-- 定义message,参考wsdl文件中的wsdl:message的定义 -->
|
||||
<message id="generalManagerAuditRequestMessage" itemRef="tns:generalManagerAuditRequestItem"></message>
|
||||
<message id="generalManagerAuditResponseMessage" itemRef="tns:generalManagerAuditResponseItem"></message>
|
||||
|
||||
<!-- 定义变量 -->
|
||||
<itemDefinition id="needed" structureRef="boolean" />
|
||||
<itemDefinition id="startDate" structureRef="string" />
|
||||
<itemDefinition id="endDate" structureRef="string" />
|
||||
|
||||
<!-- 参考wsdl:input -->
|
||||
<itemDefinition id="generalManagerAuditRequestItem"
|
||||
structureRef="leave:generalManagerAudit" />
|
||||
<!-- 参考wsdl:output -->
|
||||
<itemDefinition id="generalManagerAuditResponseItem"
|
||||
structureRef="leave:generalManagerAuditResponse" />
|
||||
|
||||
<process id="leave-webservice" name="请假流程-动态表单-Webservice"
|
||||
isExecutable="true">
|
||||
<documentation>请假流程演示-动态表单-Webservice</documentation>
|
||||
<startEvent id="startevent1" name="Start"
|
||||
activiti:initiator="applyUserId">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="startDate" name="请假开始日期"
|
||||
required="true" type="date" datePattern="yyyy-MM-dd"></activiti:formProperty>
|
||||
<activiti:formProperty id="endDate" name="请假结束日期"
|
||||
required="true" type="date" datePattern="yyyy-MM-dd"></activiti:formProperty>
|
||||
<activiti:formProperty id="reason" name="请假原因"
|
||||
type="string" required="true"></activiti:formProperty>
|
||||
</extensionElements>
|
||||
</startEvent>
|
||||
<userTask id="deptLeaderAudit" name="部门领导审批"
|
||||
activiti:candidateGroups="deptLeader">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="startDate" name="请假开始日期"
|
||||
type="date" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="endDate" name="请假结束日期"
|
||||
type="date" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="reason" name="请假原因"
|
||||
type="string" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="deptLeaderApproved"
|
||||
name="审批意见" type="enum" required="true">
|
||||
<activiti:value id="true" name="同意"></activiti:value>
|
||||
<activiti:value id="false" name="拒绝"></activiti:value>
|
||||
</activiti:formProperty>
|
||||
</extensionElements>
|
||||
</userTask>
|
||||
<exclusiveGateway id="exclusivegateway5" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<userTask id="modifyApply" name="调整申请" activiti:assignee="${applyUserId}">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="startDate" name="请假开始日期"
|
||||
type="date" datePattern="yyyy-MM-dd" required="true"></activiti:formProperty>
|
||||
<activiti:formProperty id="endDate" name="请假结束日期"
|
||||
type="date" datePattern="yyyy-MM-dd" required="true"></activiti:formProperty>
|
||||
<activiti:formProperty id="reason" name="请假原因"
|
||||
type="string" required="true"></activiti:formProperty>
|
||||
<activiti:formProperty id="reApply" name="重新申请"
|
||||
type="enum" required="true">
|
||||
<activiti:value id="true" name="重新申请"></activiti:value>
|
||||
<activiti:value id="false" name="取消申请"></activiti:value>
|
||||
</activiti:formProperty>
|
||||
</extensionElements>
|
||||
</userTask>
|
||||
<userTask id="hrAudit" name="人事审批" activiti:candidateGroups="hr">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="startDate" name="请假开始日期"
|
||||
type="date" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="endDate" name="请假结束日期"
|
||||
type="date" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="reason" name="请假原因"
|
||||
type="string" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="hrApproved" name="审批意见"
|
||||
type="enum" required="true">
|
||||
<activiti:value id="true" name="同意"></activiti:value>
|
||||
<activiti:value id="false" name="拒绝"></activiti:value>
|
||||
</activiti:formProperty>
|
||||
</extensionElements>
|
||||
</userTask>
|
||||
<exclusiveGateway id="exclusivegateway6" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<userTask id="reportBack" name="销假" activiti:assignee="${applyUserId}">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="startDate" name="请假开始日期"
|
||||
type="date" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="endDate" name="请假结束日期"
|
||||
type="date" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="reason" name="请假原因"
|
||||
type="string" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="reportBackDate"
|
||||
name="销假日期" required="true" type="date" datePattern="yyyy-MM-dd"></activiti:formProperty>
|
||||
<activiti:taskListener event="complete"
|
||||
expression="${execution.setVariable('result', 'ok')}"></activiti:taskListener>
|
||||
</extensionElements>
|
||||
</userTask>
|
||||
<endEvent id="endevent1" name="End"></endEvent>
|
||||
<exclusiveGateway id="exclusivegateway7" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<sequenceFlow id="flow2" sourceRef="startevent1"
|
||||
targetRef="deptLeaderAudit"></sequenceFlow>
|
||||
<sequenceFlow id="flow3" sourceRef="deptLeaderAudit"
|
||||
targetRef="exclusivegateway5"></sequenceFlow>
|
||||
<sequenceFlow id="flow4" name="拒绝" sourceRef="exclusivegateway5"
|
||||
targetRef="modifyApply">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${deptLeaderApproved == 'false'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow5" name="同意" sourceRef="exclusivegateway5"
|
||||
targetRef="hrAudit">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${deptLeaderApproved == 'true'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow6" sourceRef="hrAudit" targetRef="exclusivegateway6"></sequenceFlow>
|
||||
<sequenceFlow id="flow7" name="同意" sourceRef="exclusivegateway6"
|
||||
targetRef="checkGeneralManagerAudit">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${hrApproved == 'true'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow9" name="拒绝" sourceRef="exclusivegateway6"
|
||||
targetRef="modifyApply">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${hrApproved == 'false'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow10" name="重新申请" sourceRef="exclusivegateway7"
|
||||
targetRef="deptLeaderAudit">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${reApply == 'true'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow11" sourceRef="modifyApply"
|
||||
targetRef="exclusivegateway7"></sequenceFlow>
|
||||
<sequenceFlow id="flow12" name="结束流程" sourceRef="exclusivegateway7"
|
||||
targetRef="endevent1">
|
||||
<extensionElements>
|
||||
<activiti:executionListener event="take"
|
||||
expression="${execution.setVariable('result', 'canceled')}"></activiti:executionListener>
|
||||
</extensionElements>
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${reApply == 'false'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<serviceTask id="checkGeneralManagerAudit" name="是否需要总经理审批"
|
||||
implementation="##WebService" operationRef="tns:auditOperation">
|
||||
<ioSpecification>
|
||||
<dataInput itemSubjectRef="tns:generalManagerAuditRequestItem"
|
||||
id="dataInput" />
|
||||
<dataOutput itemSubjectRef="tns:generalManagerAuditResponseItem"
|
||||
id="dataOutput" />
|
||||
<inputSet>
|
||||
<dataInputRefs>dataInput</dataInputRefs>
|
||||
</inputSet>
|
||||
<outputSet>
|
||||
<dataOutputRefs>dataOutput</dataOutputRefs>
|
||||
</outputSet>
|
||||
</ioSpecification>
|
||||
<!-- 属性名称必须映射,否则报异常 https://gist.github.com/5994803 -->
|
||||
<dataInputAssociation>
|
||||
<sourceRef>startDate</sourceRef>
|
||||
<targetRef>startDate</targetRef>
|
||||
</dataInputAssociation>
|
||||
<dataInputAssociation>
|
||||
<sourceRef>endDate</sourceRef>
|
||||
<targetRef>endDate</targetRef>
|
||||
</dataInputAssociation>
|
||||
<dataOutputAssociation>
|
||||
<sourceRef>needed</sourceRef>
|
||||
<targetRef>needed</targetRef>
|
||||
</dataOutputAssociation>
|
||||
</serviceTask>
|
||||
<userTask id="generalManagerAudit" name="总经理审批"
|
||||
activiti:candidateGroups="generalManager">
|
||||
<extensionElements>
|
||||
<activiti:formProperty id="startDate" name="请假开始日期"
|
||||
type="date" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="endDate" name="请假结束日期"
|
||||
type="date" datePattern="yyyy-MM-dd" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="reason" name="请假原因"
|
||||
type="string" writable="false"></activiti:formProperty>
|
||||
<activiti:formProperty id="generalManagerApproved"
|
||||
name="审批意见" type="enum" required="true">
|
||||
<activiti:value id="true" name="同意"></activiti:value>
|
||||
<activiti:value id="false" name="拒绝"></activiti:value>
|
||||
</activiti:formProperty>
|
||||
</extensionElements>
|
||||
</userTask>
|
||||
<sequenceFlow id="flow16" name="拒绝" sourceRef="generalManagerAudit"
|
||||
targetRef="modifyApply">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${generalManagerApproved == 'false'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow17" name="同意" sourceRef="generalManagerAudit"
|
||||
targetRef="reportBack">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${generalManagerApproved == 'true'}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow18" name="需要" sourceRef="checkGeneralManagerAudit"
|
||||
targetRef="generalManagerAudit">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${needed}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow19" name="不需要" sourceRef="checkGeneralManagerAudit"
|
||||
targetRef="reportBack">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${!needed}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow20" sourceRef="reportBack"
|
||||
targetRef="endevent1">
|
||||
<extensionElements>
|
||||
<activiti:executionListener event="take"
|
||||
expression="${execution.setVariable('result', 'ok')}"></activiti:executionListener>
|
||||
</extensionElements>
|
||||
</sequenceFlow>
|
||||
<textAnnotation id="textannotation1" textFormat="text/plain">
|
||||
<text>请求被驳回后员工可以选择继续申请,或者取消本次申请</text>
|
||||
</textAnnotation>
|
||||
<association id="association1" sourceRef="modifyApply"
|
||||
targetRef="textannotation1"></association>
|
||||
<textAnnotation id="textannotation2">
|
||||
<text>请假天数大于3天</text>
|
||||
</textAnnotation>
|
||||
<association id="association2" sourceRef="textannotation2"
|
||||
targetRef="checkGeneralManagerAudit"></association>
|
||||
</process>
|
||||
<bpmndi:BPMNDiagram id="BPMNDiagram_leave-webservice">
|
||||
<bpmndi:BPMNPlane bpmnElement="leave-webservice"
|
||||
id="BPMNPlane_leave-webservice">
|
||||
<bpmndi:BPMNShape bpmnElement="startevent1"
|
||||
id="BPMNShape_startevent1">
|
||||
<omgdc:Bounds height="35.0" width="35.0" x="10.0" y="30.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="deptLeaderAudit"
|
||||
id="BPMNShape_deptLeaderAudit">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="90.0" y="20.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway5"
|
||||
id="BPMNShape_exclusivegateway5">
|
||||
<omgdc:Bounds height="40.0" width="40.0" x="250.0" y="27.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="modifyApply"
|
||||
id="BPMNShape_modifyApply">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="218.0" y="108.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="hrAudit" id="BPMNShape_hrAudit">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="358.0" y="20.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway6"
|
||||
id="BPMNShape_exclusivegateway6">
|
||||
<omgdc:Bounds height="40.0" width="40.0" x="495.0" y="27.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="reportBack" id="BPMNShape_reportBack">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="659.0" y="176.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1">
|
||||
<omgdc:Bounds height="35.0" width="35.0" x="472.0" y="243.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway7"
|
||||
id="BPMNShape_exclusivegateway7">
|
||||
<omgdc:Bounds height="40.0" width="40.0" x="250.0" y="240.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="checkGeneralManagerAudit"
|
||||
id="BPMNShape_checkGeneralManagerAudit">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="580.0" y="20.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="generalManagerAudit"
|
||||
id="BPMNShape_generalManagerAudit">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="470.0" y="174.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="textannotation1"
|
||||
id="BPMNShape_textannotation1">
|
||||
<omgdc:Bounds height="57.0" width="120.0" x="301.0" y="198.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="textannotation2"
|
||||
id="BPMNShape_textannotation2">
|
||||
<omgdc:Bounds height="50.0" width="100.0" x="752.0" y="100.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2">
|
||||
<omgdi:waypoint x="45.0" y="47.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="90.0" y="47.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow3" id="BPMNEdge_flow3">
|
||||
<omgdi:waypoint x="195.0" y="47.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="250.0" y="47.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow4" id="BPMNEdge_flow4">
|
||||
<omgdi:waypoint x="270.0" y="67.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="270.0" y="108.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="22.0" x="280.0" y="67.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow5" id="BPMNEdge_flow5">
|
||||
<omgdi:waypoint x="290.0" y="47.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="358.0" y="47.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="22.0" x="311.0" y="30.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow6" id="BPMNEdge_flow6">
|
||||
<omgdi:waypoint x="463.0" y="47.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="495.0" y="47.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow7" id="BPMNEdge_flow7">
|
||||
<omgdi:waypoint x="535.0" y="47.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="580.0" y="47.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="22.0" x="534.0" y="30.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow9" id="BPMNEdge_flow9">
|
||||
<omgdi:waypoint x="515.0" y="67.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="514.0" y="135.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="323.0" y="135.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="22.0" x="525.0" y="67.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow10" id="BPMNEdge_flow10">
|
||||
<omgdi:waypoint x="250.0" y="260.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="142.0" y="259.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="142.0" y="75.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="44.0" x="163.0" y="244.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow11" id="BPMNEdge_flow11">
|
||||
<omgdi:waypoint x="270.0" y="163.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="270.0" y="240.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow12" id="BPMNEdge_flow12">
|
||||
<omgdi:waypoint x="290.0" y="260.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="472.0" y="260.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="44.0" x="300.0" y="267.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow16" id="BPMNEdge_flow16">
|
||||
<omgdi:waypoint x="470.0" y="201.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="270.0" y="163.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="22.0" x="441.0" y="178.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow17" id="BPMNEdge_flow17">
|
||||
<omgdi:waypoint x="575.0" y="201.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="659.0" y="203.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="22.0" x="576.0" y="208.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow18" id="BPMNEdge_flow18">
|
||||
<omgdi:waypoint x="632.0" y="75.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="522.0" y="174.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="22.0" x="617.0" y="108.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow19" id="BPMNEdge_flow19">
|
||||
<omgdi:waypoint x="685.0" y="47.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="711.0" y="48.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="711.0" y="176.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="11.0" width="33.0" x="719.0" y="74.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow20" id="BPMNEdge_flow20">
|
||||
<omgdi:waypoint x="711.0" y="231.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="711.0" y="260.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="507.0" y="260.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="association1" id="BPMNEdge_association1">
|
||||
<omgdi:waypoint x="270.0" y="163.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="361.0" y="198.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="association2" id="BPMNEdge_association2">
|
||||
<omgdi:waypoint x="802.0" y="100.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="632.0" y="75.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
</bpmndi:BPMNPlane>
|
||||
</bpmndi:BPMNDiagram>
|
||||
</definitions>
|
||||
BIN
resources/diagrams/leave-webservice/leave-webservice.png
Normal file
|
After Width: | Height: | Size: 40 KiB |
158
resources/diagrams/leave/System_Maintenance.bpmn
Normal file
@ -0,0 +1,158 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" 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" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://com.sipai.activiti">
|
||||
<process id="System_Maintenance" name="运维流程" isExecutable="true">
|
||||
<documentation>运维流程</documentation>
|
||||
<startEvent id="startevent1" name="Start" activiti:initiator="applyUserId"></startEvent>
|
||||
<userTask id="ApplicantSubmit" name="负责人审核发布" activiti:assignee="${applicantId}" activiti:candidateUsers="#{userIds}"></userTask>
|
||||
<exclusiveGateway id="exclusivegateway5" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<userTask id="MaintainerConfirm" name="运维商接单确认" activiti:candidateUsers="#{userIds}"></userTask>
|
||||
<endEvent id="endevent1" name="End"></endEvent>
|
||||
<sequenceFlow id="flow3" sourceRef="ApplicantSubmit" targetRef="exclusivegateway5"></sequenceFlow>
|
||||
<userTask id="LaunchProblem" name="问题调整" activiti:assignee="${applyUserId}"></userTask>
|
||||
<sequenceFlow id="flow14" sourceRef="LaunchProblem" targetRef="ApplicantSubmit"></sequenceFlow>
|
||||
<userTask id="MaintainerSubmit" name="运维商执行" activiti:assignee="${managerId}" activiti:candidateUsers="#{userIds}"></userTask>
|
||||
<userTask id="ApplicantFinish" name="负责人完成确认" activiti:assignee="${applicantId}"></userTask>
|
||||
<sequenceFlow id="flow22" name="同意" sourceRef="exclusivegateway5" targetRef="MaintainerConfirm">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${target==1}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow23" sourceRef="startevent1" targetRef="ApplicantSubmit"></sequenceFlow>
|
||||
<sequenceFlow id="flow25" name="驳回" sourceRef="exclusivegateway5" targetRef="LaunchProblem">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${target==0}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<exclusiveGateway id="exclusivegateway7" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<sequenceFlow id="flow26" name="退回" sourceRef="exclusivegateway7" targetRef="ApplicantSubmit">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${!pass}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow27" sourceRef="MaintainerSubmit" targetRef="exclusivegateway7"></sequenceFlow>
|
||||
<sequenceFlow id="flow28" name="完成提交" sourceRef="exclusivegateway7" targetRef="ApplicantFinish">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${pass}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow29" sourceRef="MaintainerConfirm" targetRef="MaintainerSubmit"></sequenceFlow>
|
||||
<exclusiveGateway id="exclusivegateway8" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<sequenceFlow id="flow30" sourceRef="ApplicantFinish" targetRef="exclusivegateway8"></sequenceFlow>
|
||||
<sequenceFlow id="flow31" name="退回" sourceRef="exclusivegateway8" targetRef="MaintainerSubmit">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${!pass}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow32" name="确认完成" sourceRef="exclusivegateway8" targetRef="endevent1">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${pass}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<endEvent id="endevent2" name="End"></endEvent>
|
||||
<sequenceFlow id="flow33" name="作废" sourceRef="exclusivegateway5" targetRef="endevent2">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${target==-1}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
</process>
|
||||
<bpmndi:BPMNDiagram id="BPMNDiagram_System_Maintenance">
|
||||
<bpmndi:BPMNPlane bpmnElement="System_Maintenance" id="BPMNPlane_System_Maintenance">
|
||||
<bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1">
|
||||
<omgdc:Bounds height="35.0" width="35.0" x="50.0" y="140.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="ApplicantSubmit" id="BPMNShape_ApplicantSubmit">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="120.0" y="130.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway5" id="BPMNShape_exclusivegateway5">
|
||||
<omgdc:Bounds height="40.0" width="40.0" x="261.0" y="137.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="MaintainerConfirm" id="BPMNShape_MaintainerConfirm">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="350.0" y="130.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1">
|
||||
<omgdc:Bounds height="35.0" width="35.0" x="432.0" y="247.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="LaunchProblem" id="BPMNShape_LaunchProblem">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="229.0" y="237.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="MaintainerSubmit" id="BPMNShape_MaintainerSubmit">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="490.0" y="130.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="ApplicantFinish" id="BPMNShape_ApplicantFinish">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="594.0" y="237.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway7" id="BPMNShape_exclusivegateway7">
|
||||
<omgdc:Bounds height="40.0" width="40.0" x="626.0" y="137.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway8" id="BPMNShape_exclusivegateway8">
|
||||
<omgdc:Bounds height="40.0" width="40.0" x="522.0" y="244.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="endevent2" id="BPMNShape_endevent2">
|
||||
<omgdc:Bounds height="35.0" width="35.0" x="264.0" y="60.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow3" id="BPMNEdge_flow3">
|
||||
<omgdi:waypoint x="225.0" y="157.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="261.0" y="157.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow14" id="BPMNEdge_flow14">
|
||||
<omgdi:waypoint x="229.0" y="264.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="172.0" y="264.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="172.0" y="185.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow22" id="BPMNEdge_flow22">
|
||||
<omgdi:waypoint x="301.0" y="157.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="350.0" y="157.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="14.0" width="100.0" x="309.0" y="140.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow23" id="BPMNEdge_flow23">
|
||||
<omgdi:waypoint x="85.0" y="157.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="120.0" y="157.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow25" id="BPMNEdge_flow25">
|
||||
<omgdi:waypoint x="281.0" y="177.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="281.0" y="237.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="14.0" width="100.0" x="287.0" y="190.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow26" id="BPMNEdge_flow26">
|
||||
<omgdi:waypoint x="646.0" y="137.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="646.0" y="45.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="409.0" y="45.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="172.0" y="45.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="172.0" y="130.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="14.0" width="24.0" x="650.0" y="111.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow27" id="BPMNEdge_flow27">
|
||||
<omgdi:waypoint x="595.0" y="157.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="626.0" y="157.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow28" id="BPMNEdge_flow28">
|
||||
<omgdi:waypoint x="646.0" y="177.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="646.0" y="237.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="14.0" width="48.0" x="656.0" y="177.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow29" id="BPMNEdge_flow29">
|
||||
<omgdi:waypoint x="455.0" y="157.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="490.0" y="157.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow30" id="BPMNEdge_flow30">
|
||||
<omgdi:waypoint x="594.0" y="264.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="562.0" y="264.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow31" id="BPMNEdge_flow31">
|
||||
<omgdi:waypoint x="542.0" y="244.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="542.0" y="185.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="14.0" width="24.0" x="507.0" y="211.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow32" id="BPMNEdge_flow32">
|
||||
<omgdi:waypoint x="522.0" y="264.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="467.0" y="264.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="14.0" width="48.0" x="471.0" y="271.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow33" id="BPMNEdge_flow33">
|
||||
<omgdi:waypoint x="281.0" y="137.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="281.0" y="95.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="14.0" width="100.0" x="287.0" y="111.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
</bpmndi:BPMNPlane>
|
||||
</bpmndi:BPMNDiagram>
|
||||
</definitions>
|
||||
BIN
resources/diagrams/leave/System_Maintenance.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
32
resources/diagrams/leave/leaveHrAudit.bpmn
Normal file
@ -0,0 +1,32 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" 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" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/test">
|
||||
<process id="leavehraudit" name="leavehraudit" isExecutable="true">
|
||||
<documentation>hr审批子流程</documentation>
|
||||
<startEvent id="startevent1" name="Start" activiti:initiator="applyUserId"></startEvent>
|
||||
<userTask id="hrAuditCA" name="hr审批-CallActivity" activiti:candidateGroups="hr"></userTask>
|
||||
<endEvent id="endevent1" name="End"></endEvent>
|
||||
<sequenceFlow id="flow4" sourceRef="hrAuditCA" targetRef="endevent1"></sequenceFlow>
|
||||
<sequenceFlow id="flow5" sourceRef="startevent1" targetRef="hrAuditCA"></sequenceFlow>
|
||||
</process>
|
||||
<bpmndi:BPMNDiagram id="BPMNDiagram_leavehraudit">
|
||||
<bpmndi:BPMNPlane bpmnElement="leavehraudit" id="BPMNPlane_leavehraudit">
|
||||
<bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1">
|
||||
<omgdc:Bounds height="35.0" width="35.0" x="80.0" y="61.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="hrAuditCA" id="BPMNShape_hrAuditCA">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="200.0" y="51.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1">
|
||||
<omgdc:Bounds height="35.0" width="35.0" x="350.0" y="61.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow4" id="BPMNEdge_flow4">
|
||||
<omgdi:waypoint x="305.0" y="78.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="350.0" y="78.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow5" id="BPMNEdge_flow5">
|
||||
<omgdi:waypoint x="115.0" y="78.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="200.0" y="78.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
</bpmndi:BPMNPlane>
|
||||
</bpmndi:BPMNDiagram>
|
||||
</definitions>
|
||||
BIN
resources/diagrams/leave/leaveHrAudit.png
Normal file
|
After Width: | Height: | Size: 5.3 KiB |
110
resources/diagrams/leave/leavesub-callactivity.bpmn
Normal file
@ -0,0 +1,110 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" 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" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.sipai.com">
|
||||
<process id="leavesub-callactivity" name="并发子流程+callactivity" isExecutable="true">
|
||||
<documentation>请假并发子流程+callactivity</documentation>
|
||||
<startEvent id="startevent1" name="Start" activiti:initiator="applyUserId"></startEvent>
|
||||
<userTask id="deptLeaderAuditToCA" name="部门领导审批2" activiti:candidateGroups="deptLeader"></userTask>
|
||||
<sequenceFlow id="flow1" sourceRef="startevent1" targetRef="deptLeaderAuditToCA"></sequenceFlow>
|
||||
<exclusiveGateway id="exclusivegateway1" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<sequenceFlow id="flow2" sourceRef="deptLeaderAuditToCA" targetRef="exclusivegateway1"></sequenceFlow>
|
||||
<endEvent id="endevent1" name="End"></endEvent>
|
||||
<userTask id="modifyApply" name="调整申请2" activiti:assignee="${applyUserId}"></userTask>
|
||||
<sequenceFlow id="flow5" name="不同意" sourceRef="exclusivegateway1" targetRef="modifyApply">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${!deptLeaderPass}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<exclusiveGateway id="exclusivegateway2" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<sequenceFlow id="flow6" sourceRef="modifyApply" targetRef="exclusivegateway2"></sequenceFlow>
|
||||
<sequenceFlow id="flow7" name="取消申请" sourceRef="exclusivegateway2" targetRef="endevent1">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${!reApply}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow8" name="重新申请" sourceRef="exclusivegateway2" targetRef="deptLeaderAuditToCA">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${reApply}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<userTask id="SelfConfirm" name="个人最终确认" activiti:assignee="${applyUserId}"></userTask>
|
||||
<sequenceFlow id="flow15" sourceRef="SelfConfirm" targetRef="endevent1"></sequenceFlow>
|
||||
<callActivity id="callActivityHR" name="HR审批" calledElement="leavehraudit">
|
||||
<extensionElements>
|
||||
<activiti:in source="leaveId" target="businessKey"></activiti:in>
|
||||
<activiti:out source="advice" target="advice"></activiti:out>
|
||||
</extensionElements>
|
||||
</callActivity>
|
||||
<sequenceFlow id="flow16" sourceRef="exclusivegateway1" targetRef="callActivityHR"></sequenceFlow>
|
||||
<sequenceFlow id="flow17" sourceRef="callActivityHR" targetRef="SelfConfirm"></sequenceFlow>
|
||||
</process>
|
||||
<bpmndi:BPMNDiagram id="BPMNDiagram_leavesub-callactivity">
|
||||
<bpmndi:BPMNPlane bpmnElement="leavesub-callactivity" id="BPMNPlane_leavesub-callactivity">
|
||||
<bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1">
|
||||
<omgdc:Bounds height="35.0" width="35.0" x="25.0" y="65.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="deptLeaderAuditToCA" id="BPMNShape_deptLeaderAuditToCA">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="105.0" y="55.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway1" id="BPMNShape_exclusivegateway1">
|
||||
<omgdc:Bounds height="40.0" width="40.0" x="255.0" y="63.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1">
|
||||
<omgdc:Bounds height="35.0" width="35.0" x="710.0" y="66.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="modifyApply" id="BPMNShape_modifyApply">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="223.0" y="180.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway2" id="BPMNShape_exclusivegateway2">
|
||||
<omgdc:Bounds height="40.0" width="40.0" x="255.0" y="310.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="SelfConfirm" id="BPMNShape_SelfConfirm">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="570.0" y="55.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="callActivityHR" id="BPMNShape_callActivityHR">
|
||||
<omgdc:Bounds height="55.0" width="131.0" x="374.0" y="55.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow1" id="BPMNEdge_flow1">
|
||||
<omgdi:waypoint x="60.0" y="82.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="105.0" y="82.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2">
|
||||
<omgdi:waypoint x="210.0" y="82.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="255.0" y="83.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow5" id="BPMNEdge_flow5">
|
||||
<omgdi:waypoint x="275.0" y="103.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="275.0" y="180.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="14.0" width="36.0" x="284.0" y="114.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow6" id="BPMNEdge_flow6">
|
||||
<omgdi:waypoint x="275.0" y="235.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="275.0" y="310.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow7" id="BPMNEdge_flow7">
|
||||
<omgdi:waypoint x="295.0" y="330.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="727.0" y="329.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="727.0" y="101.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="14.0" width="48.0" x="326.0" y="330.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow8" id="BPMNEdge_flow8">
|
||||
<omgdi:waypoint x="255.0" y="330.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="154.0" y="330.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="154.0" y="269.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="157.0" y="110.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="14.0" width="48.0" x="173.0" y="331.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow15" id="BPMNEdge_flow15">
|
||||
<omgdi:waypoint x="675.0" y="82.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="710.0" y="83.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow16" id="BPMNEdge_flow16">
|
||||
<omgdi:waypoint x="295.0" y="83.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="374.0" y="82.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow17" id="BPMNEdge_flow17">
|
||||
<omgdi:waypoint x="505.0" y="82.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="570.0" y="82.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
</bpmndi:BPMNPlane>
|
||||
</bpmndi:BPMNDiagram>
|
||||
</definitions>
|
||||
BIN
resources/diagrams/leave/leavesub-callactivity.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
131
resources/diagrams/leave/leavesub.bpmn
Normal file
@ -0,0 +1,131 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" 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" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.sipai.com">
|
||||
<process id="leavesub" name="请假并发子流程" isExecutable="true">
|
||||
<documentation>请假并发子流程</documentation>
|
||||
<startEvent id="startevent1" name="Start" activiti:initiator="applyUserId"></startEvent>
|
||||
<userTask id="deptLeaderAuditToSub" name="部门领导审批2" activiti:candidateGroups="deptLeader"></userTask>
|
||||
<sequenceFlow id="flow1" sourceRef="startevent1" targetRef="deptLeaderAuditToSub"></sequenceFlow>
|
||||
<exclusiveGateway id="exclusivegateway1" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<sequenceFlow id="flow2" sourceRef="deptLeaderAuditToSub" targetRef="exclusivegateway1"></sequenceFlow>
|
||||
<endEvent id="endevent1" name="End"></endEvent>
|
||||
<userTask id="modifyApply" name="调整申请2" activiti:assignee="${applyUserId}"></userTask>
|
||||
<sequenceFlow id="flow5" name="不同意" sourceRef="exclusivegateway1" targetRef="modifyApply">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${!deptLeaderPass}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<exclusiveGateway id="exclusivegateway2" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<sequenceFlow id="flow6" sourceRef="modifyApply" targetRef="exclusivegateway2"></sequenceFlow>
|
||||
<sequenceFlow id="flow7" name="取消申请" sourceRef="exclusivegateway2" targetRef="endevent1">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${!reApply}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow8" name="重新申请" sourceRef="exclusivegateway2" targetRef="deptLeaderAuditToSub">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${reApply}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<subProcess id="subprocess1" name="hr审批流程">
|
||||
<multiInstanceLoopCharacteristics isSequential="false" activiti:collection="CodeList" activiti:elementVariable="code">
|
||||
<completionCondition>${nrOfCompletedInstances/nrOfInstances==1}</completionCondition>
|
||||
</multiInstanceLoopCharacteristics>
|
||||
<userTask id="hrAudit" name="hr审批2" activiti:candidateGroups="hr"></userTask>
|
||||
<endEvent id="endevent2" name="End"></endEvent>
|
||||
<startEvent id="startevent2" name="Start"></startEvent>
|
||||
<sequenceFlow id="flow11" sourceRef="startevent2" targetRef="hrAudit"></sequenceFlow>
|
||||
<sequenceFlow id="flow14" sourceRef="hrAudit" targetRef="endevent2"></sequenceFlow>
|
||||
</subProcess>
|
||||
<sequenceFlow id="flow12" sourceRef="exclusivegateway1" targetRef="subprocess1"></sequenceFlow>
|
||||
<userTask id="SelfConfirm" name="个人最终确认" activiti:assignee="${applyUserId}"></userTask>
|
||||
<sequenceFlow id="flow15" sourceRef="SelfConfirm" targetRef="endevent1"></sequenceFlow>
|
||||
<sequenceFlow id="flow16" sourceRef="subprocess1" targetRef="SelfConfirm"></sequenceFlow>
|
||||
</process>
|
||||
<bpmndi:BPMNDiagram id="BPMNDiagram_leavesub">
|
||||
<bpmndi:BPMNPlane bpmnElement="leavesub" id="BPMNPlane_leavesub">
|
||||
<bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1">
|
||||
<omgdc:Bounds height="35.0" width="35.0" x="25.0" y="65.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="deptLeaderAuditToSub" id="BPMNShape_deptLeaderAuditToSub">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="105.0" y="55.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway1" id="BPMNShape_exclusivegateway1">
|
||||
<omgdc:Bounds height="40.0" width="40.0" x="255.0" y="63.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1">
|
||||
<omgdc:Bounds height="35.0" width="35.0" x="910.0" y="65.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="modifyApply" id="BPMNShape_modifyApply">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="223.0" y="180.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway2" id="BPMNShape_exclusivegateway2">
|
||||
<omgdc:Bounds height="40.0" width="40.0" x="255.0" y="310.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="subprocess1" id="BPMNShape_subprocess1">
|
||||
<omgdc:Bounds height="137.0" width="290.0" x="371.0" y="15.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="hrAudit" id="BPMNShape_hrAudit">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="466.0" y="57.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="endevent2" id="BPMNShape_endevent2">
|
||||
<omgdc:Bounds height="35.0" width="35.0" x="590.0" y="67.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="startevent2" id="BPMNShape_startevent2">
|
||||
<omgdc:Bounds height="35.0" width="35.0" x="400.0" y="67.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="SelfConfirm" id="BPMNShape_SelfConfirm">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="730.0" y="56.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow1" id="BPMNEdge_flow1">
|
||||
<omgdi:waypoint x="60.0" y="82.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="105.0" y="82.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2">
|
||||
<omgdi:waypoint x="210.0" y="82.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="255.0" y="83.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow5" id="BPMNEdge_flow5">
|
||||
<omgdi:waypoint x="275.0" y="103.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="275.0" y="180.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="14.0" width="36.0" x="284.0" y="114.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow6" id="BPMNEdge_flow6">
|
||||
<omgdi:waypoint x="275.0" y="235.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="275.0" y="310.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow7" id="BPMNEdge_flow7">
|
||||
<omgdi:waypoint x="295.0" y="330.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="927.0" y="329.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="927.0" y="100.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="14.0" width="48.0" x="326.0" y="330.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow8" id="BPMNEdge_flow8">
|
||||
<omgdi:waypoint x="255.0" y="330.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="154.0" y="330.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="154.0" y="269.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="157.0" y="110.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="14.0" width="48.0" x="173.0" y="331.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow11" id="BPMNEdge_flow11">
|
||||
<omgdi:waypoint x="435.0" y="84.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="466.0" y="84.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow14" id="BPMNEdge_flow14">
|
||||
<omgdi:waypoint x="571.0" y="84.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="590.0" y="84.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow12" id="BPMNEdge_flow12">
|
||||
<omgdi:waypoint x="295.0" y="83.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="371.0" y="83.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow15" id="BPMNEdge_flow15">
|
||||
<omgdi:waypoint x="835.0" y="83.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="910.0" y="82.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow16" id="BPMNEdge_flow16">
|
||||
<omgdi:waypoint x="661.0" y="83.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="730.0" y="83.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
</bpmndi:BPMNPlane>
|
||||
</bpmndi:BPMNDiagram>
|
||||
</definitions>
|
||||
BIN
resources/diagrams/leave/leavesub.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
100
resources/diagrams/leave/leavew.bpmn
Normal file
@ -0,0 +1,100 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" 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" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/test">
|
||||
<process id="leavew" name="自定义请假" isExecutable="true">
|
||||
<documentation>自己定义的请假案例</documentation>
|
||||
<startEvent id="startevent1" name="Start" activiti:initiator="applyUserId"></startEvent>
|
||||
<userTask id="deptLeaderAudit" name="部门领导审批2" activiti:candidateGroups="deptLeader"></userTask>
|
||||
<sequenceFlow id="flow1" sourceRef="startevent1" targetRef="deptLeaderAudit"></sequenceFlow>
|
||||
<exclusiveGateway id="exclusivegateway1" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<sequenceFlow id="flow2" sourceRef="deptLeaderAudit" targetRef="exclusivegateway1"></sequenceFlow>
|
||||
<userTask id="hrAudit" name="hr审批2" activiti:candidateGroups="hr"></userTask>
|
||||
<sequenceFlow id="flow3" name="同意" sourceRef="exclusivegateway1" targetRef="hrAudit">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${deptLeaderPass}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<endEvent id="endevent1" name="End"></endEvent>
|
||||
<sequenceFlow id="flow4" sourceRef="hrAudit" targetRef="endevent1"></sequenceFlow>
|
||||
<userTask id="modifyApply" name="调整申请2" activiti:assignee="${applyUserId}"></userTask>
|
||||
<sequenceFlow id="flow5" name="不同意" sourceRef="exclusivegateway1" targetRef="modifyApply">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${!deptLeaderPass}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<exclusiveGateway id="exclusivegateway2" name="Exclusive Gateway"></exclusiveGateway>
|
||||
<sequenceFlow id="flow6" sourceRef="modifyApply" targetRef="exclusivegateway2"></sequenceFlow>
|
||||
<sequenceFlow id="flow7" name="取消申请" sourceRef="exclusivegateway2" targetRef="endevent1">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${!reApply}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
<sequenceFlow id="flow8" name="重新申请" sourceRef="exclusivegateway2" targetRef="deptLeaderAudit">
|
||||
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${reApply}]]></conditionExpression>
|
||||
</sequenceFlow>
|
||||
</process>
|
||||
<bpmndi:BPMNDiagram id="BPMNDiagram_leavew">
|
||||
<bpmndi:BPMNPlane bpmnElement="leavew" id="BPMNPlane_leavew">
|
||||
<bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1">
|
||||
<omgdc:Bounds height="35.0" width="35.0" x="22.0" y="60.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="deptLeaderAudit" id="BPMNShape_deptLeaderAudit">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="102.0" y="50.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway1" id="BPMNShape_exclusivegateway1">
|
||||
<omgdc:Bounds height="40.0" width="40.0" x="252.0" y="58.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="hrAudit" id="BPMNShape_hrAudit">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="337.0" y="51.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1">
|
||||
<omgdc:Bounds height="35.0" width="35.0" x="487.0" y="61.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="modifyApply" id="BPMNShape_modifyApply">
|
||||
<omgdc:Bounds height="55.0" width="105.0" x="220.0" y="150.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="exclusivegateway2" id="BPMNShape_exclusivegateway2">
|
||||
<omgdc:Bounds height="40.0" width="40.0" x="252.0" y="250.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow1" id="BPMNEdge_flow1">
|
||||
<omgdi:waypoint x="57.0" y="77.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="102.0" y="77.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2">
|
||||
<omgdi:waypoint x="207.0" y="77.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="252.0" y="78.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow3" id="BPMNEdge_flow3">
|
||||
<omgdi:waypoint x="292.0" y="78.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="337.0" y="78.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="14.0" width="24.0" x="291.0" y="58.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow4" id="BPMNEdge_flow4">
|
||||
<omgdi:waypoint x="442.0" y="78.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="487.0" y="78.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow5" id="BPMNEdge_flow5">
|
||||
<omgdi:waypoint x="272.0" y="98.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="272.0" y="150.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="14.0" width="36.0" x="281.0" y="109.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow6" id="BPMNEdge_flow6">
|
||||
<omgdi:waypoint x="272.0" y="205.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="272.0" y="250.0"></omgdi:waypoint>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow7" id="BPMNEdge_flow7">
|
||||
<omgdi:waypoint x="292.0" y="270.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="504.0" y="270.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="504.0" y="96.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="14.0" width="100.0" x="323.0" y="270.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="flow8" id="BPMNEdge_flow8">
|
||||
<omgdi:waypoint x="252.0" y="270.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="154.0" y="269.0"></omgdi:waypoint>
|
||||
<omgdi:waypoint x="154.0" y="105.0"></omgdi:waypoint>
|
||||
<bpmndi:BPMNLabel>
|
||||
<omgdc:Bounds height="14.0" width="48.0" x="170.0" y="271.0"></omgdc:Bounds>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNEdge>
|
||||
</bpmndi:BPMNPlane>
|
||||
</bpmndi:BPMNDiagram>
|
||||
</definitions>
|
||||
BIN
resources/diagrams/leave/leavew.png
Normal file
|
After Width: | Height: | Size: 11 KiB |