业务系统开发的系统设计约定


业务系统开发的系统设计约定,仅供大家参考:
业务状态定义约定
1.状态使用int型数字,状态变化根据流程数字从小到大定义
2.数字0到99为正常的状态定义
3.数字100以上为非正常状态

表单定义约定
1.表单一般对应的是单据
2.表单的数据库结构中定义有单据号(暂不固定字段),状态(STATUS),可以有输入人,输入时间,更改人,更改时间等
3.表单在操作上一般不直接提供物理删除功能
4.表单的状态定义,分为表单基本状态,表单自定义状态

业务逻辑实现约定
1.基于业务对象的业务逻辑实现,一般情况下,尽量使用常用的,符合习惯的英文,例如:提交(Submit),(完成)Finish等,方法命名习惯尽可能与原生语言一致。
2.业务逻辑需要考虑尽可能多的本职操作,包括自身数据验证,外部数据验证
3.业务逻辑需要考虑到并发的可能性,如果由并发需求,需要在实现中增加“锁机制”
4.如果有并发需求,尽可能将并发点提炼到较小的范围,并实现并发的冲突解决
5.业务逻辑需要随时为API做准备,开发时应该避免使用上下文,临时配置项

表单基本操作约定
1.保存(Preserved),如果状态为0,则置为10状态,否则保存状态不变,限制条件为只有0-10状态的表单可以操作
2.提交(Submit),状态由10变为15,限制条件为只有10状态可以操作
3.撤回(UnSubmit),状态由15变为10,限制条件为只有15状态可以操作
4.审核(Examine),状态由15变为20,限制条件为只有15状态可以操作
5.完成(Finish),状态变为90,限制条件为只有大于等于状态20,小于可以操作90的可以操作
6.删除(Remove),状态由10变为101,限制条件为只有10状态可以操作
7.作废(Cancel),状态由20变为102,限制条件为只有20状态可以操作

表单状态定义约定
0 代表初始状态,单据处于临时状态,未及时转换状态,视为无效,不在正常的功能使用中使用
10 代表新建(草稿状态),任意手工新增的表单首次保存操作后,为此状态,只有在10状态下可以对表单的数据进行编辑修改
15代表提交状态,用于表单操作者表示表单的基本输入已经完成,可以撤销回状态10
20代表审核状态,审核后的单据无法撤销,正常只能进入后续操作
30代表单据的正在被处理中,包括任意系统内的其他流程及线下操作
90代表表单的处理完成
101代表逻辑删除
102代表取消,一般为20后取消

界面操作规范约定
查询条件
1.文本框默认为模糊查询
2.下拉框默认需要全部选项,默认选项为全部
3.复选框默认为未选中状态
4.单据一定会有状态下拉选项,默认项为草稿
5.单据一定会有单据号选项,默认为空,模糊查询
6.单据删除为逻辑删除,查询默认排除逻辑删除数据
7.查询条件为空默认为不查询(不组合查询项),除非特别约定
8.查询条件中的日期,一定是区间查询
9.查询条件中的值类型字段,默认为区间查询
10.无论何种方式获得的逗号分割的查询条件项,均代表多个OR查询组合
11.查询按钮:默认根据查询条件执行查询,罗列出列表所需的数据,
12.翻页:所需查询条件为最后一次查询使用的条件,如没有最后一次则执行一次查询操作
13.重置:恢复查询条件至初始状态,默认不执行查询,清空最后一次查询条件记录

工具栏
1.查询(刷新):执行刷新操作,翻页至第一页
2.新增:调用编辑界面执行新增操作
3.导入:按照导出格式导入数据
4.导出:如果未罗列出导出项及格式,默认按照列表界面罗列的数据导出
(1)如果有checkbox,则按是/否
(2)界面数据翻译项默认保留
(3)界面组合数据项默认恢复为独立项
5.启用/禁用:一般为基础数据操作,标识数据是否可以使用
(1)禁用数据需要检查数据在所有有效表单中是否有使用
6.

数据源
1.引用基础数据源,罗列的数据需要过滤禁用数据
2.引用的单据号数据,需要过滤状态小于20,大于100的数据

编辑界面项
1.文本框输入需要根据数据库字段定义校验有效性
2.下拉框默认需要空选项,默认值为空选项
3.复选框默认为未选中状态
4.单据默认状态为草稿
5.单据删除:单据删除为逻辑删除
6.单据新增操作记录创建人,创建时间,如果为系统操作则记录数据来源
7.单据更新操作记录变更人,变更时间,如果为系统操作则记录变更来源
8.删除:基础数据删除需要检查所有引用位置数据不存在,且该检查方法根据业务变更随时增减
9.保存:保存数据更改到数据库
10.所有固化数据主键不可变更