欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

Spring Boot 1.6.x 纺织行业财务管理系统实战指南 - 第四章:系统架构与设计

最编程 2024-02-16 21:47:59
...

到目前为止,市面上已经存在了各种各样的软件系统,从系统的分类着手,主要应用范围倾向于办公系统,娱乐系统,社交系统,然后下面有很多比较细的分支系统。很多系统已经经过了市场的考验,针对不同的业务场景已经开始出现了业务模块化,程序员减代码化的各种设计方式。到目前为止,当要设计一个系统的时候,首先根据业务模型基本上都可以在网上找到类似的模板,然后根据具体业务具体分析,进而实现具体功能,大众的就是最好的,毕竟符合市场主流的就代表着肯定符合常规操作流程。

4.1 系统设计目标

系统设计的时候,就要制定需要达成的目标。在功能上,要严格符合设计需求,不仅仅要减少操作步骤,也要符合预期。因此,在规范化的今天设计出符合项目要求的系统,必须要达到下面设定的目标。

第一个目标就是友好性:友好性主要体现在用户使用过程中,不会对系统的操作产生一种不满,减少操作者的愤怒,这是相当重要的一个体现。前几年好多软件在这个友好性方面失去了市场,就是因为在友好性这方面没有做好。国内互联网发展初期,软件设计的目的就是能用就行,至于友好性的对比,那是不存在的,因为硬件效率比较低,计算机属于新兴行业,所以大哥不说二哥,都是不友好的。随着计算机硬件的提升,很多开发者开始注意到要牺牲一定的计算器性能来提升友好性,因为计算机发展到现在,第一印象很重要,一个软件设计的不好看,会让大部分人对其产生质疑,所以要在友好性上面下很大功夫进行雕琢。

第二个目标就是安全性:安全性其实贯穿着整个软件行业的发展史,计算机就是为解决人类重复性计算以及数据存储的目的而诞生的,很多行业都需要计算机来进行计算,减少出错几率,并且把数据保留,可以实时查询,所以数据的安全性也很重要。

只要保证数据安全性的前提,开发出符合功能需求的友好界面操作,那么就达到了系统设计的目的。

4.2 总体功能结构设计

本系统主要是基于数据的增加,修改,删除等操作,使用者能够通过提前设定的登录功能进入指定的操作区,这里对使用者设计的功能进行结构展示。

系统总体功能结构图见图4-1。系统的角色有管理员,财务人员,员工。

图4-1 系统总体功能结构图

4.3 功能模块设计

4.3.1 管理员功能模块设计

管理员功能结构图的绘制结果见图4-2。管理员登录进入本系统操作的功能包括增删改查财务人员,收费信息,薪资信息,支出信息,报销信息,管理留言,管理员工等。

图4-2 管理员功能结构图

4.3.2 财务人员功能模块设计

财务人员功能结构图的绘制结果见图4-3。财务人员登录进入本系统操作的功能包括对收费信息,薪资信息,支出信息进行管理,审核报销信息,查询公告。

图4-3 财务人员功能结构图

4.3.3 员工功能模块设计

员工功能结构图的绘制结果见图4-4。员工登录进入本系统操作的功能包括查询公告,查询薪资,新增报销信息和留言。

图4-4 员工功能结构图

4.4 数据库设计

如果说设计系统的功能很重要,那么设计该系统的数据库将更重要,毕竟系统服务于用户,数据库服务于系统,用户访问系统,操作系统的所有数据都要依赖于数据库,而系统的数据几乎都是保存在数据库中的,所以,一个高质量的程序,必然拥有一个安全,快速响应,稳定可靠的数据库。本系统的MySQL数据库可以通过SQL语言来实现对系统数据的管理,包括在指定表中插入数据,在规定的表中更改数据,以及删除指定表中的部分数据等操作。一般来说,像MySQL这样的关系型数据库,对于结构化查询语言SQL都能很好的进行支持。在编程中,通过合理运用SQL语言便能操作数据库的各种数据,真是非常方便快捷!

4.4.1 数据库概念设计

本节内容主要是使用图形的方式来描述数据库中的实体,每个实体的相应属性,还有实体之间的相互联系,常用的Visio工具即可满足绘制E-R图的需求。E-R图是由矩形,椭圆,菱形等图形元素组成,矩形框中主要写实体的名称,椭圆框中主要是登记该实体的属性,而菱形框中主要是登记实体之间的联系名称,最后使用实心线段把这些图形元素进行连接,即可完成E-R图的绘制。当初步得到一个E-R图时,需要进行检查,使用分析的方式去修改,重构E-R图,以达到消除数据冗余,或者是消除实体间联系冗余的目的。从而保持数据库的完整性,以及降低数据库维护上面的难度。

(1)使用Visio这样的常用的实体属性图绘制工具来绘制报销信息实体属性图,绘制结果见图4-3。

图4-3 报销信息实体属性图

(2)使用Visio这样的常用的实体属性图绘制工具来绘制财务人员实体属性图,绘制结果见图4-4。

图4-4 财务人员实体属性图

(3)使用Visio这样的常用的实体属性图绘制工具来绘制薪资实体属性图,绘制结果见图4-5。

图4-5 薪资实体属性图

(4)使用Visio这样的常用的实体属性图绘制工具来绘制员工实体属性图,绘制结果见图4-6。

图4-6 员工实体属性图

(5)绘制的上述实体间存在的联系见图4-7。

图4-7 实体间关系E-R图

4.4.2 数据库物理设计

本系统数据在数据库中都是通过各种二维表进行记录保存的,在数据库中设计这样的二维表也是比较重要的内容,因为它影响着数据的存储效率。在设计二维表也就是关系模型之前,一些有关二维表方面的常用概念需要进行充分了解。

关系:一张具体的数据表即表示关系,关系的名称与数据表的名称保持一致;

元组:数据表中,每行显示的数据即代表元组;

属性:数据表中,每列表示的数据即代表属性;

关键字:数据表中,为了与其他数据表进行区分,则需要在每张表中进行主键的设置;

通过上节内容可以知晓数据库中的各个实体,并通过一定方式把这些实体表示的内容进行数据表的转换,通常来说,每个实体都会对应一张具体的数据表,在本系统指定的数据库中创建命名好的数据库,才可以对数据表进行创建与设计。纺织品企业财务管理系统数据表设计结果展示如下:

报销信息表如表4-1所示,报销信息有报销金额,报销详情,报销类型,报销名目等信息。

表4-1 报销信息表

字段 注释 类型
id (主键) 主键 int(11)
yuangong_id 申请人 int(11)
baoxiao_name 报销名目 varchar(200)
baoxiao_types 报销类型 int(11)
insert_time 申请时间 timestamp
baoxiao_money 报销金额 decimal(10,4)
baoxiao_content 报销详情 text
baoxiao_yesno_types 是否同意 int(11)
create_time 创建时间 timestamp

财务人员表如表4-2所示,财务人员信息有姓名,身份证号,手机号,性别等信息。

表4-2 财务人员表

字段 注释 类型
id (主键) 主键 int(11)
username 账户 varchar(200)
password 密码 varchar(200)
caiwurenyuan_name 财务人员姓名 varchar(200)
caiwurenyuan_phone 财务人员手机号 varchar(200)
caiwurenyuan_id_number 财务人员身份证号 varchar(200)
caiwurenyuan_photo 财务人员头像 varchar(200)
sex_types 性别 int(11)
caiwurenyuan_email 电子邮箱 varchar(200)
create_time 创建时间 timestamp

公告信息表如表4-3所示,公告信息有公告图片,公告名称,公告类型等信息。

表4-3 公告信息表

字段 注释 类型
id (主键) 主键 int(11)
gonggao_name 公告名称 varchar(200)
gonggao_photo 公告图片 varchar(200)
gonggao_types 公告类型 int(11)
insert_time 公告发布时间 timestamp
gonggao_content 公告详情 text
create_time 创建时间 timestamp

留言表如表4-4所示,留言信息有留言标题,回复内容,回复时间等信息。

表4-4 留言表

字段 注释 类型
id (主键) 主键 int(11)
yuangong_id 员工 int(11)
liuyan_name 留言标题 varchar(200)
liuyan_text 留言内容 text
reply_text 回复内容 text
insert_time 留言时间 timestamp
update_time 回复时间 timestamp
create_time 创建时间 show2 nameShow timestamp

收费信息表如表4-5所示,收费信息有实收金额,收费类型,收费名目,收费时间等信息。

表4-5 收费信息表

字段 注释 类型
id (主键) 主键 int(11)
mingmu_name 收费名目 varchar(200)
shoufeixinxi_types 收费类型 int(11)
shoufeixinxi_yushou_money 预售金额 decimal(10,4)
shoufeixinxi_shishou_money 实收金额 decimal(10,4)
shoufei_time 收费时间 timestamp
insert_time 添加时间 timestamp
create_time 创建时间 timestamp

管理员表如表4-6所示,管理员信息有用户名,角色,密码等信息。

表4-6 管理员表

字段 注释 类型
id (主键) 主键 bigint(20)
username 用户名 varchar(100)
password 密码 varchar(100)
role 角色 varchar(100)
addtime 新增时间 timestamp

薪资表如表4-7所示,薪资信息有月份,薪资,员工等信息。

表4-7 薪资表

字段 注释 类型
id (主键) 主键 int(11)
yuangong_id 员工 int(11)
xinzi_month 月份 varchar(200)
jine 薪资 decimal(10,4)
xinzi_content 备注 text
insert_time 添加时间 timestamp
create_time 创建时间 timestamp

员工表如表4-8所示,员工信息有性别,头像,姓名,密码,账户等信息。

表4-8 员工表

字段 注释 类型
id (主键) 主键 int(11)
username 账户 varchar(200)
password 密码 varchar(200)
yuangong_name 员工姓名 varchar(200)
yuangong_phone 员工手机号 varchar(200)
yuangong_id_number 员工身份证号 varchar(200)
yuangong_photo 员工头像 varchar(200)
sex_types 性别 int(11)
yuangong_email 电子邮箱 varchar(200)
create_time 创建时间 timestamp

支出信息表如表4-9所示,支出信息有支出金额,支出类型,支出名目等信息。

表4-9 支出信息表

字段 注释 类型
id (主键) 主键 int(11)
zhichuxinxi_mingmu_name 支出名目 varchar(200)
zhichuxinxi_types 支出类型 int(11)
zhichuxinxi_money 支出金额 decimal(10,4)
zhichu_content 备注 text
zhichuxinxi_time 支出时间 timestamp
insert_time 添加时间 timestamp
create_time 创建时间 timestamp

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传