前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >实例演示如何使用AgileEAS.NET SOA平台工作流进行业务流程自定义

实例演示如何使用AgileEAS.NET SOA平台工作流进行业务流程自定义

作者头像
魏琼东
发布2018-01-12 14:46:57
8530
发布2018-01-12 14:46:57
举报
文章被收录于专栏:魏琼东魏琼东

一、案例业务流程说明

在前一篇文章AgileEAS.NET SOA 中间件平台工作流系统介绍之中我简单的向大家介绍了AgileEAS.NET SOA平台工作流系统的基本介绍,本文我将向大家以一个真实的案例向大家介绍AgileEAS.NET SOA平台工作流系统的应用。

今天我们的例子来自于医疗信息化之中的一个简单案例,关于医院药库/药房药品报损业务的处理过程,现实业务流程如以定义:

image
image

目前的业务流程是这么要求的,由药房管理人员发起一个报损申请,然后由药房负责人审批,早批不通过则由药房管理人员修改后再次提交,通过则由药剂科长审核,审核通过之后由药房管理人员确认报损,否则终止本次报损业务处理。

对于不同地域、不同规模、不同经营性质的医院来说,对于药品的报损处理流程都可能不一样,那么摆在医疗开发商面前的一个很麻烦问题就是业务流程的定制处理,对于此类问题使用传统方法一直是一个非常棘手的问题,可能不同医院的业务流程的变动必须会导致程序代码的变动,进行造成医疗软件开发商产品版本管理混乱、产品实施周期过长进而导致开发商的间接管理成本和项目总体成本急剧提高。

二、应用AgileEAS.NET SOA平台工作流重组流程

对于上述问题,我们可以使用AgileEAS.NET SOA平台所提供的工作流系统进行业务流程自定义,使用工作流平台驱动业务数据达到业务流程再造的目的。

我们来仔细看上述业务流程就会发现,这是一个及其经典的“申请-早批-确认”业务处理流程,对于“申请”和“确认”都是一个比较固定的操作,但是对于“申请-早批-确认”的处理过程,则是一个极不确定的过程,比如一个小型医疗机构可以就需要一个简单的审批即可,但是对于一个大型的医疗机构,其审批可以不止二级审批,可能会有三级或多级审批处理。

如果我们开发两个功能模块“药房报损申请/申批”、“药房报损确认”以及定义一个工作流“药房报损申批流程”,并让“药房报损申批流程”与“药房报损申请/申批”相结合,由工作流驱动“药房报损申请/申批”按照“药房报损申批流程”进行处理,并在处理完成之由“药房报损确认”完成药品报损,那么我们是否就可以实现这种高度灵活的流程自定义呢,回答当然是OK,那么接下来我们来看看怎么办到这样的效果吧。

三、如果做?一步一步来

我们来先开始模块“药房报损申请/申批”,其最终效果如下:

image
image

接下来模块“药房报损确”,其最终效果如下:

image
image

接下来我们来定义工作流“药房报损申批流程”:

66`9L`WWNIVY)`C[3]B$5ZP
66`9L`WWNIVY)`C[3]B$5ZP
NWQ_{P16OOTT}X4EH5ISD$N
NWQ_{P16OOTT}X4EH5ISD$N
FB1(3[7$WAN_UH}92}2EOVD
FB1(3[7$WAN_UH}92}2EOVD
CUCJIE[)F{@75%Y]XN2LFRI
CUCJIE[)F{@75%Y]XN2LFRI

流程权限设定:

BH6]J4Q6_RH0H7SRE[%YG$H
BH6]J4Q6_RH0H7SRE[%YG$H

流程权限设定中包含流程发起权限及各状态的处理权限,其设置方式都一样,同AgileEAS.NET SOA平台中的模块权限设置保持一致,我们在些为账号xyf设定流程发起权限和“审请状态”的处理权限,给帐号zhx设定“审请状态”的处理权限,给账号Administrator设置“审请状态”的处理权限。

接下来需要绑定工作流与其驱动的业务模块之间的关联关系:

QQ截图20120226002206
QQ截图20120226002206

同时也需要在模块代码之中完成与工作流的绑定:

7}O}5W}(AY}I97K[C}GD2WD
7}O}5W}(AY}I97K[C}GD2WD
O1M{@E9H~~P_79}GA`9~QEH
O1M{@E9H~~P_79}GA`9~QEH

在功能模块中需要做两个地方的绑定,第一个在模块的头部需要标记明确WorkflowAddIn属性,用于声明这是一个受工作流驱动的功能模块,另一个是需要在功能模块中的声音一个类型为Guid的属性,并且标记WorkflowInstanceId属性,用于工作流向功能模块写入当前工作流实例,至此为止,工作流定义及流程自定义工作完成,接下来我们看看运行效果吧。

四、如果做?一步一步来

首先,我们使用帐号xyf登录,我们会看到如下功能:

V]OUMBWZ~V(}(DWQ294H1KX
V]OUMBWZ~V(}(DWQ294H1KX

我们打开“发起流程”:

QQ截图20120226002206
QQ截图20120226002206

或者直接打开“药房报损申请”模块发起工作流:

QQ截图20120226002206
QQ截图20120226002206

提交完成之后打开“我的申请”会看到刚才我们所发起的实例:

QQ截图20120226002206
QQ截图20120226002206

接下来,我们切换到账号“zhx”登录,并且打开我的待办:

QQ截图20120226002206
QQ截图20120226002206

完成一级审批“药房报损申请”:

QJ2L(K$KJE$ADSAUTDLEL@A
QJ2L(K$KJE$ADSAUTDLEL@A

打开已办事宜:

6PWWS7`@A}3QEH~L5{1}QK7
6PWWS7`@A}3QEH~L5{1}QK7

接下来,我们切换到账号“888888”登录,并且打开我的待办:

313OFP%R%FH_3]N)LSANIFO
313OFP%R%FH_3]N)LSANIFO

完成二级审核“药房报损申请”:

JIIL}C)~(0AI]QRG3_~~Y3A
JIIL}C)~(0AI]QRG3_~~Y3A

打开已办事宜:

L3O25XZ[%XP]H8Z{_BXF$Y3
L3O25XZ[%XP]H8Z{_BXF$Y3
image
image

最后我们切换到账号“xyf”,并打开 “药房报损确认”模块:

T}WF~_`%[K)7DXA3(WGIO85
T}WF~_`%[K)7DXA3(WGIO85

至此,药房药品报损业务处理演示完成,若审批流程发生变更,则只需要项目实施人员根据客户的业务流程修改工作流定义,而不需要修改程序代码,实现流程的自定义。

五、AgileEAS.NET 4.0 下载

有关于平台最新版本的最新发布版本的程序集、类库手册、相关资料,请大家从AgileEAS.NET平台的官网http://www.smarteas.net/进行下载,官网设有独立的下载页面,从这里下载:官网下载页面

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2012-02-28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、案例业务流程说明
  • 二、应用AgileEAS.NET SOA平台工作流重组流程
  • 三、如果做?一步一步来
  • 四、如果做?一步一步来
  • 五、AgileEAS.NET 4.0 下载
相关产品与服务
访问管理
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档