reserveInvoice.bpmn 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <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">
  3. <process id="reserveInvoice" name="预约开票审批流程" isExecutable="true">
  4. <startEvent id="start" name="开始" activiti:initiator="${applyUserId}"></startEvent>
  5. <userTask id="yhzgtask" name="用户主管签字确认" activiti:assignee="#{yhzgusers}">
  6. <extensionElements>
  7. <activiti:taskListener event="create" delegateExpression="${yhzgTaskCreateListener}"></activiti:taskListener>
  8. </extensionElements>
  9. </userTask>
  10. <userTask id="zzzgtask" name="装置主管签字确认" activiti:candidateUsers="#{zzzgusers}">
  11. <extensionElements>
  12. <activiti:taskListener event="create" delegateExpression="${zzzgTaskCreateListener}"></activiti:taskListener>
  13. </extensionElements>
  14. </userTask>
  15. <sequenceFlow id="flow2" name="通过" sourceRef="yhzgtask" targetRef="zzzgtask">
  16. <conditionExpression xsi:type="tFormalExpression"><![CDATA[${condition == 1}]]></conditionExpression>
  17. </sequenceFlow>
  18. <userTask id="zzgcstask" name="装置工程师签字确认" activiti:candidateUsers="#{zzgcsusers}">
  19. <extensionElements>
  20. <activiti:taskListener event="create" delegateExpression="${zzgcsTaskCreateListener}"></activiti:taskListener>
  21. </extensionElements>
  22. </userTask>
  23. <userTask id="zzjltask" name="装置经理签字确认" activiti:candidateUsers="#{zzjlusers}">
  24. <extensionElements>
  25. <activiti:taskListener event="create" delegateExpression="${zzjlTaskCreateListener}"></activiti:taskListener>
  26. </extensionElements>
  27. </userTask>
  28. <sequenceFlow id="flow11" name="通过" sourceRef="zzjltask" targetRef="end">
  29. <conditionExpression xsi:type="tFormalExpression"><![CDATA[${condition == 1}]]></conditionExpression>
  30. </sequenceFlow>
  31. <endEvent id="end" name="结束">
  32. <extensionElements>
  33. <activiti:executionListener event="start" delegateExpression="${invoiceEndSuccessListener}"></activiti:executionListener>
  34. </extensionElements>
  35. </endEvent>
  36. <sequenceFlow id="flow13" sourceRef="start" targetRef="yhzgtask"></sequenceFlow>
  37. <exclusiveGateway id="istoday" name="作业开始时间是否为预约当天"></exclusiveGateway>
  38. <sequenceFlow id="flow18" name="通过" sourceRef="zzzgtask" targetRef="istoday">
  39. <conditionExpression xsi:type="tFormalExpression"><![CDATA[${condition == 1}]]></conditionExpression>
  40. </sequenceFlow>
  41. <sequenceFlow id="flow19" name="是" sourceRef="istoday" targetRef="zzgcstask">
  42. <conditionExpression xsi:type="tFormalExpression"><![CDATA[${istoday == 1}]]></conditionExpression>
  43. </sequenceFlow>
  44. <exclusiveGateway id="isspecial" name="是否涉及特技动火、受限空间"></exclusiveGateway>
  45. <sequenceFlow id="flow20" name="否" sourceRef="istoday" targetRef="isspecial">
  46. <conditionExpression xsi:type="tFormalExpression"><![CDATA[${istoday == 0}]]></conditionExpression>
  47. </sequenceFlow>
  48. <sequenceFlow id="flow21" name="否" sourceRef="isspecial" targetRef="end">
  49. <conditionExpression xsi:type="tFormalExpression"><![CDATA[${isspecial == 0}]]></conditionExpression>
  50. </sequenceFlow>
  51. <sequenceFlow id="flow22" name="是" sourceRef="isspecial" targetRef="zzjltask">
  52. <conditionExpression xsi:type="tFormalExpression"><![CDATA[${isspecial == 1}]]></conditionExpression>
  53. </sequenceFlow>
  54. <sequenceFlow id="flow23" name="通过" sourceRef="zzgcstask" targetRef="isspecial">
  55. <conditionExpression xsi:type="tFormalExpression"><![CDATA[${condition == 1}]]></conditionExpression>
  56. </sequenceFlow>
  57. <endEvent id="end1" name="结束">
  58. <extensionElements>
  59. <activiti:executionListener event="start" delegateExpression="${invoiceEndFailListener}"></activiti:executionListener>
  60. </extensionElements>
  61. </endEvent>
  62. <sequenceFlow id="flow25" name="不通过" sourceRef="zzzgtask" targetRef="end1">
  63. <conditionExpression xsi:type="tFormalExpression"><![CDATA[${condition == 0}]]></conditionExpression>
  64. </sequenceFlow>
  65. <sequenceFlow id="flow26" name="不通过" sourceRef="zzgcstask" targetRef="end1">
  66. <conditionExpression xsi:type="tFormalExpression"><![CDATA[${condition == 0}]]></conditionExpression>
  67. </sequenceFlow>
  68. <sequenceFlow id="flow27" name="不通过" sourceRef="zzjltask" targetRef="end1">
  69. <conditionExpression xsi:type="tFormalExpression"><![CDATA[${condition == 0}]]></conditionExpression>
  70. </sequenceFlow>
  71. <boundaryEvent id="boundarytimer3" name=" " attachedToRef="zzzgtask" cancelActivity="true">
  72. <timerEventDefinition>
  73. <timeDuration>PT2M</timeDuration>
  74. </timerEventDefinition>
  75. </boundaryEvent>
  76. <sequenceFlow id="flow30" sourceRef="boundarytimer3" targetRef="end1"></sequenceFlow>
  77. <boundaryEvent id="boundarytimer4" name=" " attachedToRef="zzgcstask" cancelActivity="true">
  78. <timerEventDefinition>
  79. <timeDuration>PT2M</timeDuration>
  80. </timerEventDefinition>
  81. </boundaryEvent>
  82. <boundaryEvent id="boundarytimer5" name=" " attachedToRef="zzjltask" cancelActivity="true">
  83. <timerEventDefinition>
  84. <timeDuration>PT2M</timeDuration>
  85. </timerEventDefinition>
  86. </boundaryEvent>
  87. <sequenceFlow id="flow32" sourceRef="boundarytimer5" targetRef="end1"></sequenceFlow>
  88. <boundaryEvent id="boundarytimer6" name=" " attachedToRef="yhzgtask" cancelActivity="true">
  89. <timerEventDefinition>
  90. <timeDuration>PT2M</timeDuration>
  91. </timerEventDefinition>
  92. </boundaryEvent>
  93. <sequenceFlow id="flow35" sourceRef="boundarytimer6" targetRef="end1"></sequenceFlow>
  94. <sequenceFlow id="flow36" name="不通过" sourceRef="yhzgtask" targetRef="end1">
  95. <conditionExpression xsi:type="tFormalExpression"><![CDATA[${condition == 0}]]></conditionExpression>
  96. </sequenceFlow>
  97. </process>
  98. <bpmndi:BPMNDiagram id="BPMNDiagram_reserveInvoice">
  99. <bpmndi:BPMNPlane bpmnElement="reserveInvoice" id="BPMNPlane_reserveInvoice">
  100. <bpmndi:BPMNShape bpmnElement="start" id="BPMNShape_start">
  101. <omgdc:Bounds height="35.0" width="35.0" x="520.0" y="41.0"></omgdc:Bounds>
  102. </bpmndi:BPMNShape>
  103. <bpmndi:BPMNShape bpmnElement="yhzgtask" id="BPMNShape_yhzgtask">
  104. <omgdc:Bounds height="55.0" width="145.0" x="465.0" y="121.0"></omgdc:Bounds>
  105. </bpmndi:BPMNShape>
  106. <bpmndi:BPMNShape bpmnElement="boundarytimer6" id="BPMNShape_boundarytimer6">
  107. <omgdc:Bounds height="30.0" width="30.0" x="450.0" y="160.0"></omgdc:Bounds>
  108. </bpmndi:BPMNShape>
  109. <bpmndi:BPMNShape bpmnElement="zzzgtask" id="BPMNShape_zzzgtask">
  110. <omgdc:Bounds height="55.0" width="145.0" x="465.0" y="211.0"></omgdc:Bounds>
  111. </bpmndi:BPMNShape>
  112. <bpmndi:BPMNShape bpmnElement="boundarytimer3" id="BPMNShape_boundarytimer3">
  113. <omgdc:Bounds height="30.0" width="30.0" x="450.0" y="250.0"></omgdc:Bounds>
  114. </bpmndi:BPMNShape>
  115. <bpmndi:BPMNShape bpmnElement="zzgcstask" id="BPMNShape_zzgcstask">
  116. <omgdc:Bounds height="71.0" width="136.0" x="282.0" y="301.0"></omgdc:Bounds>
  117. </bpmndi:BPMNShape>
  118. <bpmndi:BPMNShape bpmnElement="boundarytimer4" id="BPMNShape_boundarytimer4">
  119. <omgdc:Bounds height="30.0" width="30.0" x="320.0" y="290.0"></omgdc:Bounds>
  120. </bpmndi:BPMNShape>
  121. <bpmndi:BPMNShape bpmnElement="zzjltask" id="BPMNShape_zzjltask">
  122. <omgdc:Bounds height="71.0" width="136.0" x="102.0" y="421.0"></omgdc:Bounds>
  123. </bpmndi:BPMNShape>
  124. <bpmndi:BPMNShape bpmnElement="boundarytimer5" id="BPMNShape_boundarytimer5">
  125. <omgdc:Bounds height="30.0" width="30.0" x="180.0" y="410.0"></omgdc:Bounds>
  126. </bpmndi:BPMNShape>
  127. <bpmndi:BPMNShape bpmnElement="end" id="BPMNShape_end">
  128. <omgdc:Bounds height="35.0" width="35.0" x="520.0" y="559.0"></omgdc:Bounds>
  129. </bpmndi:BPMNShape>
  130. <bpmndi:BPMNShape bpmnElement="istoday" id="BPMNShape_istoday">
  131. <omgdc:Bounds height="40.0" width="40.0" x="517.0" y="316.0"></omgdc:Bounds>
  132. </bpmndi:BPMNShape>
  133. <bpmndi:BPMNShape bpmnElement="isspecial" id="BPMNShape_isspecial">
  134. <omgdc:Bounds height="40.0" width="40.0" x="517.0" y="436.0"></omgdc:Bounds>
  135. </bpmndi:BPMNShape>
  136. <bpmndi:BPMNShape bpmnElement="end1" id="BPMNShape_end1">
  137. <omgdc:Bounds height="35.0" width="35.0" x="153.0" y="221.0"></omgdc:Bounds>
  138. </bpmndi:BPMNShape>
  139. <bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2">
  140. <omgdi:waypoint x="537.0" y="176.0"></omgdi:waypoint>
  141. <omgdi:waypoint x="537.0" y="211.0"></omgdi:waypoint>
  142. <bpmndi:BPMNLabel>
  143. <omgdc:Bounds height="48.0" width="24.0" x="537.0" y="176.0"></omgdc:Bounds>
  144. </bpmndi:BPMNLabel>
  145. </bpmndi:BPMNEdge>
  146. <bpmndi:BPMNEdge bpmnElement="flow11" id="BPMNEdge_flow11">
  147. <omgdi:waypoint x="170.0" y="492.0"></omgdi:waypoint>
  148. <omgdi:waypoint x="169.0" y="576.0"></omgdi:waypoint>
  149. <omgdi:waypoint x="520.0" y="576.0"></omgdi:waypoint>
  150. <bpmndi:BPMNLabel>
  151. <omgdc:Bounds height="48.0" width="24.0" x="170.0" y="492.0"></omgdc:Bounds>
  152. </bpmndi:BPMNLabel>
  153. </bpmndi:BPMNEdge>
  154. <bpmndi:BPMNEdge bpmnElement="flow13" id="BPMNEdge_flow13">
  155. <omgdi:waypoint x="537.0" y="76.0"></omgdi:waypoint>
  156. <omgdi:waypoint x="537.0" y="121.0"></omgdi:waypoint>
  157. </bpmndi:BPMNEdge>
  158. <bpmndi:BPMNEdge bpmnElement="flow18" id="BPMNEdge_flow18">
  159. <omgdi:waypoint x="537.0" y="266.0"></omgdi:waypoint>
  160. <omgdi:waypoint x="537.0" y="316.0"></omgdi:waypoint>
  161. <bpmndi:BPMNLabel>
  162. <omgdc:Bounds height="48.0" width="24.0" x="537.0" y="266.0"></omgdc:Bounds>
  163. </bpmndi:BPMNLabel>
  164. </bpmndi:BPMNEdge>
  165. <bpmndi:BPMNEdge bpmnElement="flow19" id="BPMNEdge_flow19">
  166. <omgdi:waypoint x="517.0" y="336.0"></omgdi:waypoint>
  167. <omgdi:waypoint x="418.0" y="336.0"></omgdi:waypoint>
  168. <bpmndi:BPMNLabel>
  169. <omgdc:Bounds height="16.0" width="16.0" x="493.0" y="336.0"></omgdc:Bounds>
  170. </bpmndi:BPMNLabel>
  171. </bpmndi:BPMNEdge>
  172. <bpmndi:BPMNEdge bpmnElement="flow20" id="BPMNEdge_flow20">
  173. <omgdi:waypoint x="537.0" y="356.0"></omgdi:waypoint>
  174. <omgdi:waypoint x="537.0" y="436.0"></omgdi:waypoint>
  175. <bpmndi:BPMNLabel>
  176. <omgdc:Bounds height="16.0" width="16.0" x="537.0" y="356.0"></omgdc:Bounds>
  177. </bpmndi:BPMNLabel>
  178. </bpmndi:BPMNEdge>
  179. <bpmndi:BPMNEdge bpmnElement="flow21" id="BPMNEdge_flow21">
  180. <omgdi:waypoint x="537.0" y="476.0"></omgdi:waypoint>
  181. <omgdi:waypoint x="537.0" y="559.0"></omgdi:waypoint>
  182. <bpmndi:BPMNLabel>
  183. <omgdc:Bounds height="16.0" width="16.0" x="537.0" y="476.0"></omgdc:Bounds>
  184. </bpmndi:BPMNLabel>
  185. </bpmndi:BPMNEdge>
  186. <bpmndi:BPMNEdge bpmnElement="flow22" id="BPMNEdge_flow22">
  187. <omgdi:waypoint x="517.0" y="456.0"></omgdi:waypoint>
  188. <omgdi:waypoint x="238.0" y="456.0"></omgdi:waypoint>
  189. <bpmndi:BPMNLabel>
  190. <omgdc:Bounds height="16.0" width="16.0" x="493.0" y="459.0"></omgdc:Bounds>
  191. </bpmndi:BPMNLabel>
  192. </bpmndi:BPMNEdge>
  193. <bpmndi:BPMNEdge bpmnElement="flow23" id="BPMNEdge_flow23">
  194. <omgdi:waypoint x="350.0" y="372.0"></omgdi:waypoint>
  195. <omgdi:waypoint x="349.0" y="456.0"></omgdi:waypoint>
  196. <omgdi:waypoint x="517.0" y="456.0"></omgdi:waypoint>
  197. <bpmndi:BPMNLabel>
  198. <omgdc:Bounds height="48.0" width="24.0" x="350.0" y="372.0"></omgdc:Bounds>
  199. </bpmndi:BPMNLabel>
  200. </bpmndi:BPMNEdge>
  201. <bpmndi:BPMNEdge bpmnElement="flow25" id="BPMNEdge_flow25">
  202. <omgdi:waypoint x="465.0" y="238.0"></omgdi:waypoint>
  203. <omgdi:waypoint x="188.0" y="238.0"></omgdi:waypoint>
  204. <bpmndi:BPMNLabel>
  205. <omgdc:Bounds height="48.0" width="36.0" x="405.0" y="242.0"></omgdc:Bounds>
  206. </bpmndi:BPMNLabel>
  207. </bpmndi:BPMNEdge>
  208. <bpmndi:BPMNEdge bpmnElement="flow26" id="BPMNEdge_flow26">
  209. <omgdi:waypoint x="350.0" y="301.0"></omgdi:waypoint>
  210. <omgdi:waypoint x="350.0" y="238.0"></omgdi:waypoint>
  211. <omgdi:waypoint x="188.0" y="238.0"></omgdi:waypoint>
  212. <bpmndi:BPMNLabel>
  213. <omgdc:Bounds height="16.0" width="100.0" x="221.0" y="250.0"></omgdc:Bounds>
  214. </bpmndi:BPMNLabel>
  215. </bpmndi:BPMNEdge>
  216. <bpmndi:BPMNEdge bpmnElement="flow27" id="BPMNEdge_flow27">
  217. <omgdi:waypoint x="170.0" y="421.0"></omgdi:waypoint>
  218. <omgdi:waypoint x="170.0" y="256.0"></omgdi:waypoint>
  219. <bpmndi:BPMNLabel>
  220. <omgdc:Bounds height="48.0" width="36.0" x="180.0" y="345.0"></omgdc:Bounds>
  221. </bpmndi:BPMNLabel>
  222. </bpmndi:BPMNEdge>
  223. <bpmndi:BPMNEdge bpmnElement="flow30" id="BPMNEdge_flow30">
  224. <omgdi:waypoint x="465.0" y="250.0"></omgdi:waypoint>
  225. <omgdi:waypoint x="445.0" y="238.0"></omgdi:waypoint>
  226. <omgdi:waypoint x="188.0" y="238.0"></omgdi:waypoint>
  227. </bpmndi:BPMNEdge>
  228. <bpmndi:BPMNEdge bpmnElement="flow32" id="BPMNEdge_flow32">
  229. <omgdi:waypoint x="180.0" y="425.0"></omgdi:waypoint>
  230. <omgdi:waypoint x="170.0" y="405.0"></omgdi:waypoint>
  231. <omgdi:waypoint x="170.0" y="256.0"></omgdi:waypoint>
  232. </bpmndi:BPMNEdge>
  233. <bpmndi:BPMNEdge bpmnElement="flow35" id="BPMNEdge_flow35">
  234. <omgdi:waypoint x="465.0" y="160.0"></omgdi:waypoint>
  235. <omgdi:waypoint x="439.0" y="149.0"></omgdi:waypoint>
  236. <omgdi:waypoint x="170.0" y="149.0"></omgdi:waypoint>
  237. <omgdi:waypoint x="170.0" y="221.0"></omgdi:waypoint>
  238. </bpmndi:BPMNEdge>
  239. <bpmndi:BPMNEdge bpmnElement="flow36" id="BPMNEdge_flow36">
  240. <omgdi:waypoint x="465.0" y="148.0"></omgdi:waypoint>
  241. <omgdi:waypoint x="170.0" y="148.0"></omgdi:waypoint>
  242. <omgdi:waypoint x="170.0" y="221.0"></omgdi:waypoint>
  243. <bpmndi:BPMNLabel>
  244. <omgdc:Bounds height="16.0" width="100.0" x="273.0" y="130.0"></omgdc:Bounds>
  245. </bpmndi:BPMNLabel>
  246. </bpmndi:BPMNEdge>
  247. </bpmndi:BPMNPlane>
  248. </bpmndi:BPMNDiagram>
  249. </definitions>