毕业设计:基于SpringBoot的私房菜定制上门服务系统的设计与实现+论文源码视频演示

第4章 系统设计

用户对着浏览器操作,肯定会出现某些不可预料的问题,但是不代表着系统对于用户在浏览器上的操作不进行处理,所以说,要提前考虑可能会出现的问题。

4.1 系统设计思想

系统设计,肯定要把设计的思想进行统一,只有统一的思想才能指导程序的开发,并且可以让众多的程序开发人员更快速的进入状态,提高开发速度。根据当前系统的既定需求,下面将进行本系统设计思想的阐述。

  1. 扩展性:开发任何一个系统的时候不可避免要考虑这个问题。软件版本的更迭是一种常识,任何一个软件都不会一次性开发就成永恒,软件是一个不断成长的东西。所以考虑问题的时候需要对当前问题进行数据上的扩大化,然后进行归纳整理,最终形成具有一定扩展性的程序。程序的可扩展性必然会影响开发进度,所以最终需要综合评估程序的可扩展程度,进而有的放矢,循序开发。

  2. 实用性:程序设计是一个先高屋建瓴式的设想,然后再具体化,实用性就是具体化的第一个步骤,要充分考虑使用者是不懂程序设计的这一点,使用者只是懂得常规性的上网操作步骤,并不需要对程序进行理解,所以一定要让使用者感觉到便利,感觉到实用性的存在,如果使用者使用程序过程中没发现使用程序的好处,那么程序设计的实用性将大大降低。

  3. 安全性:当使用者使用的过程中,会产生大量的相关数据,这些数据必须有安全性的保证,否则当使用者发现数据出现问题的原因是程序设计问题的时候,将会对程序开发者失去信任,甚至可能会产生大量的费用赔偿问题,这是一个不可避免的问题。所以安全性关系开发与使用者双方的经济利益,程序的安全性是一定要保证的。

  4. 先进性:程序设计的先进性是开发者进行考虑的,必须要在满足系统功能的前提下,必须要选择好当下最合适的技术。最合适的技术要从开发成本,使用成本以及维护成本里面综合分析,经过综合分析后要让技术实现最优解,保持先进的技术生产力。

  5. 维护性:程序开发之初就要考虑以后的维护问题。维护是在程序开发完毕,已经上线可以运作,进入生产试用过程和使用过程中才会发现需要维护的必要。要通过各方面降低维护成本,不是说维护的越少就代表程序开发的越完美,程序既然是人类进行设计制造的,肯定有很多不可避免的问题产生,那么如何维护好程序的正常运作也是一门很重要的学问。

4.2 功能结构设计

图4.1即为设计的管理员功能结构,管理员权限操作的功能包括管理员工,管理私房菜定制上门服务系统信息,包括菜品管理,厨师管理,公告管理,公告管理等,可以管理厨师。

 

图4.1 管理员功能结构

4.3 数据库设计

私房菜定制上门服务系统管理系统运行中产生的数据需要按照提前设置的存储规则进行保存,设计出一个符合项目的最优数据存储格式,因为它能减少用户的等待时间,还可以对系统的请求在最短时间内进行响应。所以,对数据库设计时,需要对功能需求进行详细的拆分,以及对业务状态的细分,然后设计具体的存储规则,保证数据库能正常运作,缩短数据处理时间,并在一定程度上降低数据冗余,节省存储空间。

4.3.1 数据库概念设计

实体-联系图还有一个名称即E-R图,是Entity Relationship Diagram各英文单词首字母的缩写,它这种概念模型通常用于对现实世界进行描述。同时它还是一种能够直观表达数据中实体,联系,属性的有效手段。绘制E-R图能够选择的工具也有很多,但是Office Visio 这款软件在E-R图的绘制上一般都是作为首选工具,因为它是基于可视化处理,使用它创建E-R图非常简单。使用基本的E-R图构成元素,比如椭圆,菱形,矩形,还有实线段来表达对应的信息,椭圆代表属性,即实体的特征,矩形代表实体,即数据库中的一个具体数据表,菱形代表实体中相互关系,实线段主要是完成椭圆,矩形,菱形的连接。

(1)下图是用户实体和其具备的属性。

 

用户实体属性图

(2)下图是公告实体和其具备的属性。

 

公告实体属性图

(3)下图是菜品实体和其具备的属性。

 

菜品实体属性图

(4)下图是厨师预约评价实体和其具备的属性。

 

厨师预约评价实体属性图

(5)下图是厨师预约实体和其具备的属性。

 

厨师预约实体属性图

(6)下图是厨师实体和其具备的属性。

 

厨师实体属性图

4.3.2 数据库物理设计

本小节主要任务即是根据上述内容进行数据存储结构的设计,实体的属性就用来表示字段名称,不同的字段表示的数据类型以及取值都不相同,以及该表各个字段是否能够保持空等进行说明,设计完成一张数据表的结构之后,在保存时同样要命名,尽量选择英文名称进行命名并保存,还不容易导致系统出错。接下来就对设计的表进行简单说明。

表4.1菜品表

序号

列名

数据类型

说明

允许空

1

Id

Int

id

2

chushi_id

Integer

厨师信息

3

caipin_name

String

菜品名称

4

caipin_uuid_number

String

菜品编号

5

caipin_photo

String

菜品照片

6

caipin_types

Integer

菜品类型

7

caipin_kouwe_types

Integer

菜品口味

8

caipin_content

String

菜品介绍

9

caipin_delete

Integer

逻辑删除

10

insert_time

Date

录入时间

11

create_time

Date

创建时间

表4.2厨师表

序号

列名

数据类型

说明

允许空

1

Id

Int

id

2

chushi_uuid_number

String

厨师信息编号

3

chushi_name

String

厨师姓名

4

chushi_phone

String

厨师手机号

5

chushi_id_number

String

厨师身份证号

6

chushi_photo

String

厨师头像

7

chushi_email

String

电子邮箱

8

chushi_file

String

健康认证

9

chushi_video

String

厨艺视频

10

chushi_content

String

厨师信息介绍

11

chushi_delete

Integer

逻辑删除

12

insert_time

Date

录入时间

13

create_time

Date

创建时间

表4.3厨师预约评价表

序号

列名

数据类型

说明

允许空

1

Id

Int

id

2

chushi_id

Integer

厨师信息

3

yonghu_id

Integer

用户

4

chushi_commentback_text

String

评价内容

5

insert_time

Date

评价时间

6

reply_text

String

回复内容

7

update_time

Date

回复时间

8

create_time

Date

创建时间

表4.4厨师预约表

序号

列名

数据类型

说明

允许空

1

Id

Int

id

2

chushi_order_uuid_number

String

订单号

3

yuyeu_time

Date

预约时间

4

chushi_id

Integer

厨师信息

5

yonghu_id

Integer

用户

6

chushi_order_types

Integer

预约类型

7

insert_time

Date

预约创建时间

8

create_time

Date

创建时间

表4.5字典表

序号

列名

数据类型

说明

允许空

1

Id

Int

id

2

dic_code

String

字段

3

dic_name

String

字段名

4

code_index

Integer

编码

5

index_name

String

编码名字

6

super_id

Integer

父字段id

7

beizhu

String

备注

8

create_time

Date

创建时间

表4.6公告表

序号

列名

数据类型

说明

允许空

1

Id

Int

id

2

gonggao_name

String

公告名称

3

gonggao_photo

String

公告图片

4

gonggao_types

Integer

公告类型

5

insert_time

Date

公告发布时间

6

gonggao_content

String

公告详情

7

create_time

Date

创建时间

表4.7用户表

序号

列名

数据类型

说明

允许空

1

Id

Int

id

2

yonghu_name

String

用户姓名

3

yonghu_phone

String

用户手机号

4

yonghu_id_number

String

用户身份证号

5

yonghu_photo

String

用户头像

6

yonghu_email

String

电子邮箱

7

create_time

Date

创建时间

表4.8管理员表

序号

列名

数据类型

说明

允许空

1

Id

Int

id

2

username

String

用户名

3

password

String

密码

4

role

String

角色

5

addtime

Date

新增时间

第5章 系统实现

编程人员在搭建的开发环境中,会让各种编程技术一起呈现出最终效果。本节就展示关键部分的页面效果。

5.1 管理员功能实现

5.1.1 菜品管理

图5.1 即为编码实现的菜品管理界面,管理员在菜品管理界面中可以对界面中显示的所有数据进行导出,可以对菜品信息的菜品状态进行查看,可以添加新的菜品信息等。

 

图5.1 菜品管理界面

5.1.2 公告管理

图5.2 即为编码实现的公告管理界面,管理员在公告管理界面中查看奖罚种类信息,奖罚描述信息,可以导出公告信息,新增公告信息等。

 

图5.2 公告管理界面

5.1.3 厨师管理

图5.3 即为编码实现的厨师管理界面,管理员在厨师管理界面中新增厨师,并设置厨师的角色,可以删除厨师。

 

图5.3 厨师管理界面

5.2 用户功能实现

5.2.1 菜品

图5.5 即为编码实现的菜品界面,用户在菜品界面中。

 

图5.5 菜品界面

5.2.2 厨师管理

图5.6 即为编码实现的厨师管理界面。

 

图5.6 厨师管理界面

5.2.3 公告管理

图5.7 即为编码实现的公告管理界面。

 

图5.7 公告管理界面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

源码调试修改QQ+821826880

感谢友友们的点赞关注和评论

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值