EEPlat 的 后台业务处理模型

后台处理包含数据处理、业务逻辑及业务流程等服务端操作的部分。相关的元模型包括业务对象元模型、业务对象属性元模型、服务元模型、参数元模型、业务规则元模型、工作流元模型。如下图所示:

业务对象是业务数据和逻辑的抽象。在一般的实现上它通常对应数据库中的一张表,也可以表示更大或更小的业务范围,例如一个独立的业务模块(销售模块),一张表可以拥有多个业务对象,一个业务对象也可以包含多张表。业务对象通过服务和数据总线完成业务逻辑。

数据总线是业务对象之间共享数据、交换数据的媒介。数据总线是线程独享的、线程安全的,一个线程对数据总线的改变不会影响到其他线程对数据总线的使用,每个线程都是使用的总线的副本。

属性指业务对象所拥有的属性。对于类型为基本表的业务对象,属性基本是相应表的列名。但是属性可以不对应列,列也可以不对应属性。属性可以是一个集合,如果为属性定义一个查询服务,属性对应的是该服务执行返回的集合。这种情况下一般用于处理业务对象之间一对多或多对多的情形。

服务是描述业务对象的行为。当一个数据表被初始化为业务对象后,会形成多个基本的服务,包括了常用的增删改查等常见数据操作。服务的主体是一个增删改查的SQL语句和参数关联,可以修改这些SQL语句和参数关联达到个性化的目的。例如更改数据的状态,我们可以创建一个新的服务或修改缺省的服务,只更改该状态字段的值。服务可以通过规则引用一个或多个其它的服务。

参数的作用主要是从业务对象总线上获取对应的值。参数一般会关联属性,表格元素一般也会关联属性,表格元素被提交后存储于业务对象总线上FORM节点上,参数根据关联属性从数据总线中取值,如果没有关联属性或根据关联属性没有取到值,则根据参数名称取值。

参数检查是指当服务执行操作前先检查服务对应的参数是否合法,如果不合法则不执行。参数检查可以自定义计算表达式、正则表达式、扩展脚本等。参数检查定义在参数上面,可以被多个服务所复用。

规则是为了完成复杂的业务逻辑而引入的概念。 规则的主体是定义一个有执行条件的服务,也就是只有当满足条件时才会执行相应的服务。规则有执行优先级,当多个规则执行时,优先级越高执行的顺序越靠前。

工作流可以使业务流程自动化,工作流主要通过转移由节点组成。 工作流的启动,节点任务的提交和回退都是有服务触发,节点的执行也可以触发服务,这些服务可以是数据表的更改、业务逻辑的执行或者是发送EMail或SMS信息。

www.eeplat.com

QQ群: 105867861

EEPlat 的 后台业务处理模型,布布扣,bubuko.com

时间: 2024-10-21 11:35:37

EEPlat 的 后台业务处理模型的相关文章

第八篇 EBS实现企业日常业务运管模型的解决方案设计思路

常业务运管模型企业有大有小,各行各业,千差万别,但,其日常业务运管也有相通之处,以典型的制造企业为例,其日常业务运管模型如下图所示: (1)企业日常业务运管模型在市场经济条件下,一个生产型企业往往会从供应市场上购买原材料(生产资料供应市场,人力资源市场等),经过一系列加工制造过程生产出客户需要的产品或服务,然后通过物流运输等形式交付给客户,实现价值创造.在能够持续盈利的情况下可以实现扩大再生产,持续发展壮大.从创业期过渡到发展期.继而过渡到壮大期.继而过渡到稳定期,随着市场盈利空间的变化还可能谋

Redis实现微博后台业务逻辑系列(一)

今天我们开始用Redis数据库实现类似微博的后台业务逻辑,我会带领大家一步步的实现类似微博的各种功能效果.这里我所使用的环境是Python3.5+Redis3.2.1,Python2和Python3有很多命令不相同,请大家注意. import redis class UniqueSet(object):     """使用集合键保存用户名和邮箱地址,检查是否已经使用"""     def __init__(self, key, client):

EEPlat PaaS平台的UI模型

         EEPlat PaaS平台开创性的利用HMVC模式组织用户界面.用户界面可以划分为多个部分,每个部分又可以划分为多个子部分,可以一直划分下去...... EEPlat PaaS平台对界面的这些部分进行了抽象出元模型,分别为面板元模型.表格元模型.表格元素元模型.菜单元模型.树元模型以及外部资源定义.面板为UI容器,可以包含面板.表格.菜单.树.资源.由于面板可以嵌套面板,所以可以形成复杂的界面布局.UI模型被显示时,需要定义控制器,控制器是EEPlat PaaS平台UI部分的核

PowerDesigner(四)-业务处理模型(转)

业务处理模型 业务处理模型(Business Process Model,BPM)以业务需求作为出发点,用图形的方式描述系统的任务和业务流程,注重的是处理过程中数据流程.业务处理模型是从业务人员的角度对业务逻辑和规则进行详细描述的概念模型,并使用流程 图表示从一个或多个起点到终点间的处理过程,流程,消息和协作协议.使用于应用系统的系统分析阶段,完成系统需求分析和逻辑设计.BPM与PowerDesigner其他模块之间的关系如图4-1所示. 图4-1 PowerDesigner BPM包括3种流图

在后台业务管理系统中使用Autofac实现微信接口的处理

在后台业务管理系统中使用Autofac实现微信接口的处理,我们只需要把相关使用到的DLL放到BIN目录里面即可,通过IOC控制反转方式实现对接口的调用.在实现在业务系统里面,我们本身程序可能已经依赖了很多相关的DLL类库,这种可以降低对相关DLL的强依赖,而以一种松耦合的方式使用我们所需要的微信接口. 在之前随笔<C#开发微信门户及应用(42)--使用Autofac实现微信接口处理的控制反转处理>里面介绍了Autofac组件实现IOC控制反转的一些实现细节,本篇随笔介绍在业务管理系统中,我们需

【Yii系列】最佳实践之后台业务框架

缘起 上面的几章都讲概念了,没有怎么讲到实践的东西,可能会有些枯燥,这很正常的,概念还是需要慢慢啃的,尤其是官网其他的部分,需要狠狠的啃. 什么,你啃不动了?看看官网旁边的那个在线用户吧. 你不啃的时候可是有这么多人在啃知识,如果不想以后被这打击,赶紧学!!!一如当年大学的我,每天夜里都抱着一本<算法导论>在啃一样,自律相当重要. 这一章我就带大伙了解一下前两章的概念有啥用,应用到实际,这是临门一脚,但是,我总是觉得概念的重要性至少要占70%,临门的一脚实践只占30%,望君能体会~ 环境 操作

Django-----定制后台以及修改模型

我们打开后台会发现显示的字段仅仅包含article总的字段,需要看里面的内容的话我们需要点击进去看,有没有定制的方法把定义的字段显示出来呢? 1.方法一:通过model里面修改:使用self方法返回对象类: 返回一个标题: def __str__(self): return self.title 返回一个对象: def __str__(self): return "<Artacire%s>"%self.title 2.方法二:在admin里面修改,这种方法比较常用. 建立一

quartz结合多线程处理后台业务

最近项目中有播放视频的需求,技术选型采用UMS播放器,免费版只能播放FLV格式的视频文件,因此需要对用户上传的视频进行格式转换,转换工具为FormatFactory,功能还是比较强大的.但是面临的一个问题,视频转换是非常耗时的,上传完直接转换是没法接受的,于是决定采用quartz,以任务调度的方式,在后台进行转换,具体步骤如下: 1.定义一个任务队列,将待转换的视频文件信息放到队列中.采用单例模式,并且考虑到线程安全问题,采用线程安全的Vector作为队列容器: /** * 格式转换任务队列 *

Redis实现微博后台业务逻辑系列(三)

新建用户功能: import redis class User(object):     """使用Redis散列键保存用户信息,并尝试登陆"""     def __init__(self, client):         self.client = client         self.key = "weibo::email_to_uid"          def create(self, name, passwd,