首页 > 其他 > 详细

YbSoftwareFactory 代码生成插件【二十三】:集成强大的公文流转系统

时间:2016-02-26 09:21:14      阅读:291      评论:0      收藏:0      [点我收藏+]

  今天有空更新博客才发现快一年没有写博客了,不得不感叹时间过得真快。过去的一年确实也挺忙的,在此祝各位博友们新的一年工作顺利。权限模型在过去一年进行了不少的升级,主要集成了公文流转系统、多家手机短信接口的集成、CMS动态路由的实现、以及Hangfire消息队列与任务调度组件的集成等,本章主要对公文流转系统进行总体的介绍,感兴趣的可进一步交流或访问http://pjdemo.yellbuy.com。

  公文流转系统是国内企事业单位的普遍需求,具有很强的中国特色。通常其核心需求如下:

  • 具备公文流程审批,流程支持多人并批(有时需要考虑审批人的权重)、打回当前审批人之前任意人(包括起草人)
  • 有权限的审批人能在审批过程中能前插、后插审批人进行审批,审批人可提前浏览本人将审批的公文。
  • 每个公文流程可设置传阅人,传阅人只能看流程的公文信息,不参与审批
  • 公司(子公司)可分别创建不同的审批流程,根据公司(子公司)、公文类别来确定流程
  • 公文起草和审批时能上传多个附件
  • 菜单中有起草公文、已发公文、送阅公文、待办公文、已批公文、公文一览等。

  权限模型以组织机构为中心,更加符合国内实际情况,也非常适合公文流转系统的开发。在权限模型框架的基础之上,能对模块、按钮、数据权限进行全方位的控制,可对各个组织不同类型的权限进行授权和管理。使用权限模型,就需要根据权限模型的开发规范对数据库进行建模,其中需要进行数据权限控制的业务功能模块需要具有(:DeleteStatus,CreatedFID和CreatedFName三个默认的字段)。如下为公文流转系统的数据库设计表结构:

WorkflowTemplate - 公文流程模板

表名

WorkflowTemplate

描述

公文流程模板

序号

列名

字段类型

长度

可空

主键

外键

描述

1

ID

nvarchar

36

否

是

 

标识

2

Code

nvarchar

255

是

 

 

编码

3

Name

nvarchar

255

否

 

 

名称

4

WorkflowType

nvarchar

255

是

 

 

类型

5

Value

nvarchar

-1

是

 

 

值

6

FormTemplate

nvarchar

-1

是

 

 

表单模板

7

LargeImage

nvarchar

-1

是

 

 

保留

8

SmallImage

nvarchar

-1

是

 

 

保留

9

Description

nvarchar

-1

是

 

 

描述

10

Comment

nvarchar

-1

是

 

 

备注

11

QuanPin

nvarchar

-1

是

 

 

保留

12

JianPin

nvarchar

255

是

 

 

保留

13

ExtensionDataType

nvarchar

255

是

 

 

扩展数据类型的名称

14

ExtensionData

nvarchar

-1

是

 

 

扩展数据类型存储值

15

Status

int

 

否

 

 

状态(无效,有效,预定义)

16

DisplayOrder

decimal

 

否

 

 

显示顺序

17

CreatedFID

nvarchar

2048

是

 

 

创建者完整标识路径

18

CreatedFName

nvarchar

2048

是

 

 

创建者完整名称路径

19

CreatedDate

datetime

 

否

 

 

创建时间

20

LastUpdatedFID

nvarchar

2048

是

 

 

最后修改人完整标识路径

21

LastUpdatedFName

nvarchar

2048

是

 

 

最后修改人完整名称路径

22

LastUpdatedDate

datetime

 

是

 

 

最后修改时间

23

DeleteStatus

int

 

否

 

 

删除状态

24

Owner

nvarchar

255

是

 

 

Owner

25

ApplicationName

nvarchar

255

是

 

 

ApplicationName

                 

 

WorkflowCreator - 流程所允许发起的组织

表名

WorkflowCreator

描述

流程所允许发起的组织

序号

列名

字段类型

长度

可空

主键

外键

描述

1

ID

nvarchar

36

否

是

 

标识

2

WorkflowId

nvarchar

36

是

 

是

流程模板标识

3

OrgFID

nvarchar

2048

否

 

 

可发起人组织标识全路径

4

OrgFName

nvarchar

2048

是

 

 

可发起人组织名称全路径

5

CreatedFID

nvarchar

2048

是

 

 

创建人组织标识全路径

6

CreatedFName

nvarchar

2048

是

 

 

创建人组织名称全路径

7

Version

int

 

否

 

 

版本号

8

ApplicationName

nvarchar

64

是

 

 

应用程序标识

                 

 

ActivityTemplate - 活动模板

表名

ActivityTemplate

描述

活动模板

序号

列名

字段类型

长度

可空

主键

外键

描述

1

ID

nvarchar

36

否

是

 

ID

2

WorkflowId

nvarchar

36

否

 

是

所属公文流程模板标识

3

Code

nvarchar

255

是

 

 

活动编码

4

Name

nvarchar

255

否

 

 

活动名称

5

Value

nvarchar

-1

是

 

 

值

6

ActivityKind

int

 

否

 

 

活动类型

7

TopValue

int

 

否

 

 

Y坐标

8

LeftValue

int

 

否

 

 

X坐标

9

WidthValue

int

 

否

 

 

宽度

10

HeightValue

int

 

否

 

 

高度

11

IsStartActivity

bit

 

否

 

 

是否开始活动

12

IsFinishActivity

bit

 

否

 

 

是否结束活动

13

ExpirationTime

int

 

否

 

 

默认过期时间

14

Description

nvarchar

-1

是

 

 

描述

15

Comment

nvarchar

-1

是

 

 

备注

16

QuanPin

nvarchar

-1

是

 

 

保留

17

JianPin

nvarchar

255

是

 

 

保留

18

DisplayOrder

decimal

 

否

 

 

显示顺序

19

LargeImage

nvarchar

-1

是

 

 

保留

20

SmallImage

nvarchar

-1

是

 

 

保留

21

ExtensionDataType

nvarchar

255

是

 

 

扩展数据类型名

22

ExtensionData

nvarchar

-1

是

 

 

扩展数据值

23

EntryExecuteTypeName

nvarchar

255

是

 

 

入口点执行外部方法类的信息

24

EntryExecuteMethodName

nvarchar

255

是

 

 

入口点执行外部方法的方法名

25

ExitExecuteTypeName

nvarchar

255

是

 

 

出口点执行外部方法类的信息

26

ExitExecuteMethodName

nvarchar

255

是

 

 

出口点执行外部方法的方法名

27

DeleteStatus

int

 

否

 

 

删除状态

28

CreatedFID

nvarchar

2048

是

 

 

CreatedFID

29

CreatedFName

nvarchar

2048

是

 

 

CreatedFName

30

CreatedDate

datetime

 

否

 

 

CreatedDate

31

LastUpdatedFID

nvarchar

2048

是

 

 

LastUpdatedFID

32

LastUpdatedFName

nvarchar

2048

是

 

 

LastUpdatedFName

33

LastUpdatedDate

datetime

 

是

 

 

LastUpdatedDate

34

Owner

nvarchar

255

是

 

 

Owner

35

ApplicationName

nvarchar

255

是

 

 

ApplicationName

                 

 

ActivityAuditor -活动步骤模板所允许审批的组织

表名

ActivityAuditor

描述

活动步骤模板所允许审批的组织

序号

列名

字段类型

长度

可空

主键

外键

描述

1

ID

nvarchar

36

否

 

 

标识

2

ActivityId

nvarchar

36

否

 

是

活动模板标识

3

AuditingFID

nvarchar

2048

否

 

 

审批人完整标识路径

4

AuditingFName

nvarchar

2048

否

 

 

审批人完整名称路径

5

Weight

decimal

 

否

 

 

默认审批权重

6

ExperitionTime

int

 

否

 

 

默认过期时间,小时

7

Comment

ntext

1073741823

是

 

 

备注

                 

 

WorkflowInstance - 公文实例

表名

WorkflowInstance

描述

公文实例(每个流程发起的实例)

序号

列名

字段类型

长度

可空

主键

外键

描述

1

ID

nvarchar

36

否

是

 

标识

2

WorkflowId

nvarchar

36

否

 

是

所属公文流程模板标识

3

WorkflowName

ntext

1073741823

否

 

 

所属公文流程模板名称

4

No

nvarchar

255

是

 

 

文号

5

Subject

nvarchar

255

否

 

 

标题

6

Kind

nvarchar

255

是

 

 

类型

7

Abstract

nvarchar

1024

是

 

 

摘要

8

Body

ntext

1073741823

是

 

 

内容

9

SafeLevel

int

 

否

 

 

密级

10

UrgencyDegree

int

 

否

 

 

紧急程度

10

DeleteStatus

bit

 

否

 

 

逻辑删除状态

11

DocStatus

int

 

否

 

 

当前状态,0开始 1运行 2结束

12

AuditedStatus

int

 

否

 

 

当前审核状态 0:未通过 1:已通过

13

SourceActivityId

nvarchar

36

是

 

 

当前已执行活动标识

14

SourceActivityName

nvarchar

50

是

 

 

当前已执行活动名称

15

TargetActivityId

nvarchar

36

是

 

 

当前待执行活动标识

16

TargetActivityName

nvarchar

50

是

 

 

当前待执行活动名称

17

Version

int

 

否

 

 

版本号

18

ExtensionDataType

nvarchar

255

是

 

 

扩展数据类型

19

ExtensionData

ntext

1073741823

是

 

 

扩展数据

20

CreatedFID

nvarchar

2048

否

 

 

起草人完整标识路径

21

CreatedFName

nvarchar

2048

否

 

 

起草人完整名称路径

22

CreatedDate

datetime

 

否

 

 

起草时间

23

LastUpdatedFID

nvarchar

2048

是

 

 

最后修改人完整路径标识

24

LastUpdatedFName

nvarchar

2048

是

 

 

最后修改人完整名称描述

25

LastUpdatedDate

datetime

 

是

 

 

最后修改时间

                 

 

Attachment - 公文附件

表名

Attachment

描述

公文附件

序号

列名

字段类型

长度

可空

主键

外键

描述

1

ID

nvarchar

36

否

是

 

标识

2

No

nvarchar

50

是

 

 

文号

3

Title

nvarchar

256

否

 

 

标题

4

FileName

nvarchar

256

是

 

 

文件名

5

FilePath

nvarchar

256

是

 

 

文件路径

6

ExtensionName

nvarchar

10

是

 

 

文件扩展名

7

Kind

int

 

否

 

 

附件类别

8

Type

nvarchar

256

否

 

 

类型

9

Abstract

nvarchar

1024

是

 

 

摘要

10

Body

ntext

1073741823

是

 

 

正文

11

Keyword

nvarchar

256

是

 

 

关键字

12

Tag

nvarchar

256

是

 

 

标记

13

Comment

ntext

1073741823

是

 

 

备注

14

FileContent

varbinary

-1

是

 

 

附件内容

15

PublishDate

datetime

 

是

 

 

发布日期

16

DeleteStatus

int

 

否

 

 

删除状态

17

CreatedFID

nvarchar

2048

否

 

 

创建人标识路径

18

CreatedFName

nvarchar

2048

否

 

 

创建人名称路径

19

CreatedDate

datetime

 

否

 

 

创建时间

20

LastUpdatedFID

nvarchar

2048

是

 

 

最后修改人标识路径

21

LastUpdatedFName

nvarchar

2048

是

 

 

最后修改人名称路径

22

LastUpdatedDate

datetime

 

是

 

 

最后修改时间

23

DisplayOrder

decimal

 

否

 

 

显示顺序

24

Version

int

 

否

 

 

版本号

25

ObjectId

nvarchar

255

是

 

 

所属记录标识

                 

 

ActivityInstance - 活动步骤实例

表名

ActivityInstance

描述

活动步骤实例

序号

列名

字段类型

长度

可空

主键

外键

描述

1

ID

nvarchar

36

否

是

 

标识

2

WorkflowId

nvarchar

36

否

 

 

所属公文流程模板标识

3

WorkflowName

nvarchar

255

否

 

 

所属公文流程模板标识

4

WorkflowInstanceId

nvarchar

36

否

 

是

WorkflowInstanceId

5

WorkflowInstanceSubject

nvarchar

255

否

 

 

WorkflowInstanceSubject

6

Code

nvarchar

255

是

 

 

编码

7

Name

nvarchar

255

否

 

 

名称

8

Value

nvarchar

-1

是

 

 

值

9

Status

int

 

否

 

 

活动状态,未执行,未通过,已通过

10

ActivityKind

int

 

否

 

 

活动类型,保留

11

TopValue

int

 

否

 

 

Y坐标

12

LeftValue

int

 

否

 

 

X坐标

13

WidthValue

int

 

否

 

 

宽度值

14

HeightValue

int

 

否

 

 

高度值

15

IsStartActivity

bit

 

否

 

 

是否开始活动

16

IsFinishActivity

bit

 

否

 

 

是否结束活动

17

ExpirationTime

int

 

否

 

 

过期时间

18

Description

nvarchar

-1

是

 

 

描述

19

Comment

nvarchar

-1

是

 

 

备注

20

QuanPin

nvarchar

-1

是

 

 

保留

21

JianPin

nvarchar

255

是

 

 

保留

22

DisplayOrder

decimal

 

否

 

 

显示顺序

23

LargeImage

nvarchar

-1

是

 

 

保留

24

SmallImage

nvarchar

-1

是

 

 

保留

25

ExtensionDataType

nvarchar

255

是

 

 

扩展数据类型名

26

ExtensionData

nvarchar

-1

是

 

 

扩展数据值

27

EntryExecuteTypeName

nvarchar

255

是

 

 

入口点执行外部方法类的信息

28

EntryExecuteMethodName

nvarchar

255

是

 

 

入口点执行外部方法的方法名

29

ExitExecuteTypeName

nvarchar

255

是

 

 

出口点执行外部方法类的信息

30

ExitExecuteMethodName

nvarchar

255

是

 

 

出口点执行外部方法的方法名

31

DeleteStatus

int

 

否

 

 

删除状态

32

CreatedFID

nvarchar

2048

是

 

 

CreatedFID

33

CreatedFName

nvarchar

2048

是

 

 

CreatedFName

34

CreatedDate

datetime

 

否

 

 

CreatedDate

35

LastUpdatedFID

nvarchar

2048

是

 

 

LastUpdatedFID

36

LastUpdatedFName

nvarchar

2048

是

 

 

LastUpdatedFName

37

LastUpdatedDate

datetime

 

是

 

 

LastUpdatedDate

38

Owner

nvarchar

255

是

 

 

Owner

39

ApplicationName

nvarchar

255

是

 

 

ApplicationName

                 

 

ActivityInstanceAuditor - 活动步骤实例对应的审批人

表名

ActivityInstanceAuditor

描述

活动步骤实例对应的审批人(多个审批人则为并行模式,通过权重判断是否审批通过)

序号

列名

字段类型

长度

可空

主键

外键

描述

1

ID

nvarchar

36

否

 

 

标识

2

ActivityInstanceId

nvarchar

36

否

 

是

所属活动步骤实例标识

3

ActivityInstanceName

nvarchar

255

是

 

 

所属活动步骤实例名称

4

AuditingFID

nvarchar

2048

否

 

 

活动审批人完整标识

5

AuditingFName

nvarchar

2048

否

 

 

审核人完整名称路径

6

ExperiationTime

int

 

否

 

 

过期时间(小时)

7

ExperiationResult

int

 

否

 

 

超时时自动执行的结果(是否通过)

8

Weight

decimal

 

否

 

 

权重

9

AuditedResult

int

 

否

 

 

审核结果(未审核,审核未通过,审核通过)

10

AuditedOpinion

ntext

1073741823

是

 

 

审核意见

11

AuditedFID

nvarchar

2048

是

 

 

审核人完整标识

12

AuditedFName

nvarchar

2048

是

 

 

AuditedFName

13

AuditedDate

datetime

 

是

 

 

AuditedDate

14

AuditedKind

int

 

否

 

 

人工审批,超时自动审批

15

Comment

ntext

1073741823

是

 

 

备注

                 

 

ActivityLogs - 活动日志

表名

ActivityLogs

描述

活动审批日志信息

序号

列名

字段类型

长度

可空

主键

外键

描述

1

ID

nvarchar

36

否

是

 

ID

2

WorkflowInstanceId

nvarchar

36

否

 

是

所属公文流程实例标识

3

WorkflowInstanceSubject

nvarchar

255

否

 

 

所属公文流程实例主题

4

WorkflowId

nvarchar

36

否

 

 

所属公文流程模板标识

5

WorkflowName

nvarchar

255

否

 

 

所属公文流程模板名称

6

SourceActivityInstanceId

nvarchar

36

是

 

 

执行的活动实例标识

7

SourceActivityInstanceName

nvarchar

255

是

 

 

执行的活动实例名称

8

SourceActivityInstanceKind

int

 

是

 

 

执行的活动实例类型

9

TargetActivityInstanceId

nvarchar

36

是

 

 

待执行的活动实例标识

10

TargetActivityInstanceName

nvarchar

255

是

 

 

待执行的活动实例名称

11

TargetActivityInstanceKind

int

 

是

 

 

待执行的活动实例类型

12

AuditedWeight

decimal

 

是

 

 

审核的权重结果

13

AuditedOpinion

nvarchar

-1

是

 

 

审核的意见

14

AuditedFID

nvarchar

-1

是

 

 

审核人完整标识路径

15

AuditedFName

nvarchar

-1

是

 

 

审核人完整名称路径

16

AuditedDate

datetime

 

是

 

 

审核日期

17

AuditedResult

int

 

否

 

 

审核的结果(未通过,正在并行审批,已通过)

18

AuditedKind

int

 

否

 

 

审核类别(人工审核,超时自动审核等)

19

Comment

nvarchar

-1

是

 

 

备注

20

CreatedFID

nvarchar

2048

否

 

 

起草人完整标识路径

21

CreatedFName

nvarchar

2048

是

 

 

起草人完整名称路径

22

CreatedDate

datetime

 

否

 

 

起草日期

                 

 最终实现的界面效果如下:

 技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

YbSoftwareFactory 代码生成插件【二十三】:集成强大的公文流转系统

原文:http://www.cnblogs.com/gyche/p/5216051.html

踩
(0)
赞
(0)
   
举报
评论 一句话评论(0)
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!