NetBPM工作流的一个示例:请假审批

目录

请假流程描述

流程定义之processdefinition.xml

流程定义之webinterface.xml

流程定义之动态委托类

后记


请假流程描述

流程图:

 

假设:公司有两级领导,一级为主管(Chief),一级为老板(Boss),我们这里只是一个模拟,当然现实生活中情况比这个更加复杂;-)

描述:

  1. 在某公司中,部门员工休假需要主管(Chief)的批准。
  2. 如果休假天数大于10天,则 在部门主管同意后,还必须老板(Boss)批准。
  3. 如果是部门主管请假则直接提交老板批准。
  4. 在休假被批准之前,申请人可以撤销休假申请。
  5. 申请批准后,对休假天数进行修改(也可以是其他业务数据处理)。 每次休假申请结束之后,不管通过未通过或是否取消,都必须记录下来。
  6. 流程结束时,系统要把请假的结果信息Email给申请人。
  7. 对于大于10天的申请,如果部门主管已批准同意而上级主管还未批准,这时申请人撤销申请后,系统应发Email通知部门主管申请已撤销。
流程定义之processdefinition.xml

processdefinition.xml


流程定义之webinterface.xml

webinterface.xml

流程定义之动态委托类

        委托类包含在lib文件夹下的程序集中。因为委托类数目众多,这里仅贴出几个典型的委托类, 其源码工程若需要请看这里
 1. NetBpm.Example.LeaveOfAbsence.AutoSetAttributionsAction:该委托类设计为一个通用委托类,这里用来设置表识属性,如流程经过用户取消请假路径,则把RunTrace属性设置为requestercancel,供WhichWayDicision作判断用。
AutoSetAttributesAction

 2. NetBpm.Example.LeaveOfAbsence.AnyOneJoin: 该委托主要用来设置激活父flow机制,这里是只要任何一条路径到达了join,则激活父flow,流程往下流。
AnyOneJoin

 3. NetBpm.Example.LeaveOfAbsence.WhichWayDecision:该委托根据流程实际流过路径,根据标识属性RunTrace等进行走哪条边的抉择,如注释。

WhichWayDecision

 

后记

    本文仅仅是一个示例,给大家提供一个运用nPdl定义NetBPM流程的参考,如果要把该流程投入现实中使用显然还需要做很多优化。该示例更多的是给大家展示流程定义中action可以定义多个, decision出来的transition可以到达同一条目的节点但名字却不一样等等. 示例中委托类的耦合性太高, 很多地方并不需要那样做, 如一个decision里面进行了2个判断: 判断是否大于10天, 判断是否审批同意, 这个完全可以拆分为两个独立的decision来做. 委托类设计成为高度可重用的, 耦合性低的通用类, 才是我们的目标.

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
物流公司员工考勤系统的设计与开发可以借鉴RPA技术和工作流引擎的应用。首先,可以利用RPA技术自动执行数据统计和核验员工的工作时间和出勤时间,减少人工处理的工作量和错误率。RPA还可以监测数据异常,并及时发送邮件给相关负责人,以便他们进行调整和管理员工考勤。这样可以更有效地管理员工的考勤情况。\[1\] 另外,物料清单(BOM)在物流公司中也是非常重要的数据文件。可以利用工作流引擎来处理物料清单的相关工作,包括物料计划、物流需求和成本核算等。工作流引擎可以帮助自动化处理物料清单的各个环节,减少人工处理时可能出现的疏忽或遗漏,提高准确性和效率。\[2\] 在设计与开发物流公司员工考勤系统时,可以选择适合的工作流引擎,如基于.net的Windows Workflow Foundation、NetBPM、CCFlow等,或者基于JAVA语言的工作流引擎,如jBPM、Activity、SWF等。这些工作流引擎可以根据物流公司的具体需求进行定制和开发,以实现自动化的考勤管理和物料清单处理。\[3\] #### 引用[.reference_title] - *1* *2* *3* [是时候聊聊RPA了](https://blog.csdn.net/weixin_42137700/article/details/125823623)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值