设为首页 收藏本站
查看: 808|回复: 0

[经验分享] 我和ibm workflow不得不说的故事

[复制链接]

尚未签到

发表于 2017-5-25 12:23:08 | 显示全部楼层 |阅读模式
  近断时间因为中大医疗网项目医疗咨询需求的变更,需要能够灵活为医疗咨询的流程做控制。这里主要是审核流程,ibm项目组经过探讨。。觉得使用workflow能够应流程的变更导致需求的变更。。所以导致兄弟我前两个星期来实在够呛。
我在这里说说自己使用workflow的心得,分两期说明,希望对以后的朋友有些帮助。
  第一期关于流程配置
  
以下是流程配置代码

insert into T_PROCESS_STATE_CONFIG(id,templatename,version,stateid,statecontent) values('1008','consultation','1.1','S10',
'<start sid="S10" name="医疗咨询申请" path="apply" needComment="false">
<transition name="本院医务科审批/department manager approve" returnBack="false" to="S20"/>
</start>');
insert into T_PROCESS_STATE_CONFIG(id,templatename,version,stateid,statecontent) values('1009','consultation','1.1','S20',
'<state sid="S20" name="本院医务科审批" path="deptManagerApprove" needComment="true">
<task name="本院医务科审批查询任务" tid="deptManagerAssignment" advisable="false" behavior="claim">
<assignment type="hospitalUserAssignment">
<arg name="role">D71B61A702724E679ABCB6F32F6D4F01</arg>
<arg name="department">$draftDept</arg>
</assignment>
</task>
<transition name="外院医务科审批/return back" returnBack="false" to="S30"/>
<transition name="拒绝流程结束/return back" returnBack="false" to="SE"/>
</state>');
insert into T_PROCESS_STATE_CONFIG(id,templatename,version,stateid,statecontent) values('1010','consultation','1.1','S30',
'<state sid="S30" name="外院医务科审批" path="deptManagerApprove" needComment="true">
<task name="外院医务科审批查询任务" tid="deptManagerAssignment" advisable="false" behavior="all-wait">
<assignment type="hospitalUserAssignment">
<arg name="role">D71B61A702724E679ABCB6F32F6D4F01</arg>
<arg name="department">$departmentArray</arg>
</assignment>
</task>
<transition name="审批结束/return back" returnBack="false" to="SE/>
</state>');
insert into T_PROCESS_STATE_CONFIG(id,templatename,version,stateid,statecontent) values('1011','consultation','1.1','SE',
'<end sid="SE" name="同意流程结束">
</end>');
  说明: 
  state标签:流程状态配置根元素,属性说明:sid(当前流程状态) name(流程状态名称)  path(保留字) needComment(是否需要评论)  
  task 标签: 任务标签,属性说明: name(任务名称)  tid(保留字)  advisable(保留字)  behavior(任务模式,有两种,分别是all-wait(等待模式,是指必须等待所有流程处理人处理完毕后,流程才会跳到下一个状态)和chain(竞争模式,是指当前审批人中如果有一个人对这个流程作出处理了,其他人的流程处理权限就取消,流程会跳到下一个状态))
  task 子标签assignment标签: 流程处理人找查逻辑Bean,由当前项目使用workflow者提供,主要用来查找用户,以便将流程处理分配到被指定的用户 , 属性说明: type(当前项目spring配置里的流程处理人找查逻辑Bean注入的id) 
  task 子标签assignment  子标签 arg :方法所属参数 ,属性说明: name(ioc方式名称注入)
  transition标签:流程跳转定义 ,属性说明: name(跳转名称)  , returnBack(保留字) , to(跳转到那个流程状态)
  end 标签: 流程结束定义, 属性说明: sid(当前流程状态。写死为SE)  name(标签名)
  总结:workflow定义流程状态码必须存在S10起点 SE终点。而中间是我们自定义的流程状态码。每个状态码对应一个对于流程的描述。例如医生对某个转检申请的审批流程。。就是 S10(流程起草,流程跳转到S20处理) -> S20(医务生审批,审批同意,流程结束,如果不同意,转到S25来返回给起草者修改,而不是直接跳到SE) -> SE(流程结束,可以定义结束后的动作)。
  附上workflow某个项目里的应该PPT,方便大家查看实现效果
  
 

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-380983-1-1.html 上篇帖子: IBM MQ系列编程4--------浏览消息 下篇帖子: 仿IBM-BPM Monitor实现的demo
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表