本章主要讨论的内容包括新能源汽车换电帮管理小程序的功能模块设计、数据库系统设计。
在上一章节中主要对系统的功能性需求和非功能性需求进行分析,并且根据需求分析了本新能源汽车换电帮管理小程序中的用例。那么接下来就要开始对本新能源汽车换电帮管理小程序的架构、主要功能和数据库开始进行设计。新能源汽车换电帮管理小程序根据前面章节的需求分析得出,其总体设计模块图如图3-1所示。
图3-1 新能源汽车换电帮管理小程序功能模块图
本系统的用户包括管理员,换电站管理者和用户三种用户模块的功能基本是相同的,用户比管理员多了一个注册功能,所以以用户模块的结构图为例进行分析,用户模块结构图为例进行分析,如下图:
图3-2用户模块结构图
新能源汽车换电帮管理小程序是一个交流性质的公开平台,用户在平台上提交评论,增加用户之间的互动性。但是同时也为了更好的规范评论的内容,给予管理员删除不合适的评论的功能,所以需要专门设计一个评论管理模块,具体的结构图如下:
图3-3评论管理模块结构图
新能源汽车换电帮管理小程序是中需要存储不少电桩信息,其模块功能结构,具体的结构图如下:
图3-4电桩信息模块结构图
新能源汽车换电帮管理小程序最重要的一个功能就是预约,其模块功能结构,具体的结构图如下:
图3-5预约信息模块结构图
数据库设计一般包括需求分析、概念模型设计、数据库表建立三大过程,其中需求分析前面章节已经阐述,概念模型设计有概念模型和逻辑结构设计两部分。
下面是整个新能源汽车换电帮管理小程序中主要的数据库表总E-R实体关系图。
图3-6 新能源汽车换电帮管理小程序总E-R关系图
通过上一小节中新能源汽车换电帮管理小程序中总E-R关系图上得出一共需要创建很多个数据表。在此我主要罗列几个主要的数据库表结构设计。
表battery_model (电池型号)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | battery_model_id | int | 10 | 0 | N | Y | 电池型号ID | |
2 | battery_model | varchar | 64 | 0 | Y | N | 电池型号 | |
3 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
4 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表booking_management (预约管理)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | booking_management_id | int | 10 | 0 | N | Y | 预约管理ID | |
2 | order_number | varchar | 64 | 0 | Y | N | 订单编号 | |
3 | name_of_power_station | varchar | 64 | 0 | Y | N | 电站名称 | |
4 | person_in_charge | int | 10 | 0 | Y | N | 0 | 负责人 |
5 | location_of_the_power_station | varchar | 64 | 0 | Y | N | 电站位置 | |
6 | appointment_user | int | 10 | 0 | Y | N | 0 | 预约用户 |
7 | battery_model | varchar | 64 | 0 | Y | N | 电池型号 | |
8 | time_of_appointment | date | 10 | 0 | Y | N | 预约时间 | |
9 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
10 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
11 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
12 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
13 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表change_station_manager (换电站管理者)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | change_station_manager_id | int | 10 | 0 | N | Y | 换电站管理者ID | |
2 | full_name | varchar | 64 | 0 | Y | N | 姓名 | |
3 | user_level | varchar | 64 | 0 | Y | N | 用户级别 | |
4 | user_battery_model | varchar | 64 | 0 | Y | N | 用户电池型号 | |
5 | user_comments | varchar | 64 | 0 | Y | N | 用户备注 | |
6 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
7 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
8 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表collect (收藏)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | collect_id | int | 10 | 0 | N | Y | 收藏ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 收藏人ID: |
3 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
4 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
5 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
6 | title | varchar | 255 | 0 | Y | N | 标题: | |
7 | img | varchar | 255 | 0 | Y | N | 封面: | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表comment (评论)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | comment_id | int | 10 | 0 | N | Y | 评论ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 评论人ID: |
3 | reply_to_id | int | 10 | 0 | N | N | 0 | 回复评论ID:空为0 |
4 | content | longtext | 2147483647 | 0 | Y | N | 内容: | |
5 | nickname | varchar | 255 | 0 | Y | N | 昵称: | |
6 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
9 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
10 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
11 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
表distance_management (距离管理)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | distance_management_id | int | 10 | 0 | N | Y | 距离管理ID | |
2 | distance_name | varchar | 64 | 0 | Y | N | 距离名称 | |
3 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
4 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表electric_pile_information (电桩信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | electric_pile_information_id | int | 10 | 0 | N | Y | 电桩信息ID | |
2 | electric_pile_no | varchar | 64 | 0 | N | N | 电桩编号 | |
3 | battery_name | varchar | 64 | 0 | Y | N | 电池名称 | |
4 | battery_model | varchar | 64 | 0 | Y | N | 电池型号 | |
5 | battery_level | varchar | 64 | 0 | Y | N | 电池电量 | |
6 | number_of_batteries | int | 10 | 0 | Y | N | 0 | 电池数 |
7 | amount_of_electricity_exchange | varchar | 64 | 0 | Y | N | 换电金额 | |
8 | battery_remarks | varchar | 64 | 0 | Y | N | 电池备注 | |
9 | power_station_manager | int | 10 | 0 | Y | N | 0 | 电站管理人 |
10 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
11 | qrcode_img | varchar | 255 | 0 | N | N | 二维码图片 | |
12 | qrcode_title | varchar | 64 | 0 | N | N | 二维码标题 | |
13 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
14 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表exchange_station (换电站)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | exchange_station_id | int | 10 | 0 | N | Y | 换电站ID | |
2 | name_of_power_station | varchar | 64 | 0 | Y | N | 电站名称 | |
3 | pictures_of_the_power_station | varchar | 255 | 0 | Y | N | 电站图片 | |
4 | person_in_charge | int | 10 | 0 | Y | N | 0 | 负责人 |
5 | location_of_the_power_station | varchar | 64 | 0 | Y | N | 电站位置 | |
6 | station_distance | varchar | 64 | 0 | Y | N | 电站距离 | |
7 | battery_condition | text | 65535 | 0 | Y | N | 电池情况 | |
8 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
9 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
10 | location_address | varchar | 64 | 0 | Y | N | 当前位置 | |
11 | location_lng | varchar | 64 | 0 | Y | N | 当前位置经度 | |
12 | location_lat | varchar | 64 | 0 | Y | N | 当前位置纬度 | |
13 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
14 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表hits (用户点击)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | hits_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
表notice (公告)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | notice_id | mediumint | 8 | 0 | N | Y | 公告id: | |
2 | title | varchar | 125 | 0 | N | N | 标题: | |
3 | content | longtext | 2147483647 | 0 | Y | N | 正文: | |
4 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表order_evaluation (订单评价)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | order_evaluation_id | int | 10 | 0 | N | Y | 订单评价ID | |
2 | order_number | varchar | 64 | 0 | Y | N | 订单编号 | |
3 | electric_pile_no | varchar | 64 | 0 | Y | N | 电桩编号 | |
4 | battery_name | varchar | 64 | 0 | Y | N | 电池名称 | |
5 | power_station_manager | int | 10 | 0 | Y | N | 0 | 电站管理人 |
6 | power_exchange_user | int | 10 | 0 | Y | N | 0 | 换电用户 |
7 | evaluation_date | date | 10 | 0 | Y | N | 评价日期 | |
8 | evaluation_content | varchar | 64 | 0 | Y | N | 评价内容 | |
9 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表order_feedback (订单反馈)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | order_feedback_id | int | 10 | 0 | N | Y | 订单反馈ID | |
2 | order_number | varchar | 64 | 0 | Y | N | 订单编号 | |
3 | electric_pile_no | varchar | 64 | 0 | Y | N | 电桩编号 | |
4 | battery_name | varchar | 64 | 0 | Y | N | 电池名称 | |
5 | power_station_manager | int | 10 | 0 | Y | N | 0 | 电站管理人 |
6 | power_exchange_user | int | 10 | 0 | Y | N | 0 | 换电用户 |
7 | feedback_date | date | 10 | 0 | Y | N | 反馈日期 | |
8 | feedback_content | varchar | 64 | 0 | Y | N | 反馈内容 | |
9 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
10 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
11 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
12 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
13 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表order_information (订单信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | order_information_id | int | 10 | 0 | N | Y | 订单信息ID | |
2 | order_number | varchar | 64 | 0 | Y | N | 订单编号 | |
3 | electric_pile_no | varchar | 64 | 0 | Y | N | 电桩编号 | |
4 | battery_name | varchar | 64 | 0 | Y | N | 电池名称 | |
5 | battery_model | varchar | 64 | 0 | Y | N | 电池型号 | |
6 | amount_of_electricity_exchange | varchar | 64 | 0 | Y | N | 换电金额 | |
7 | power_station_manager | int | 10 | 0 | Y | N | 0 | 电站管理人 |
8 | power_exchange_user | int | 10 | 0 | Y | N | 0 | 换电用户 |
9 | date_of_power_change | date | 10 | 0 | Y | N | 换电日期 | |
10 | number_of_power_changes | varchar | 64 | 0 | Y | N | 换电数 | |
11 | order_status | varchar | 64 | 0 | Y | N | 订单状态 | |
12 | pay_state | varchar | 16 | 0 | N | N | 未支付 | 支付状态 |
13 | pay_type | varchar | 16 | 0 | Y | N | 支付类型: 微信、支付宝、网银 | |
14 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
15 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
16 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表personal_car (个人爱车)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | personal_car_id | int | 10 | 0 | N | Y | 个人爱车ID | |
2 | tram_users | int | 10 | 0 | Y | N | 0 | 电车用户 |
3 | vehicle_brand | varchar | 64 | 0 | Y | N | 车辆品牌 | |
4 | vehicle_model | varchar | 64 | 0 | Y | N | 车辆型号 | |
5 | battery_model | varchar | 64 | 0 | Y | N | 电池型号 | |
6 | battery_life | varchar | 64 | 0 | Y | N | 电池续航 | |
7 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表praise (点赞)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | praise_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | status | bit | 1 | 0 | N | N | 1 | 点赞状态:1为点赞,0已取消 |
表slides (轮播图)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | slides_id | int | 10 | 0 | N | Y | 轮播图ID: | |
2 | title | varchar | 64 | 0 | Y | N | 标题: | |
3 | content | varchar | 255 | 0 | Y | N | 内容: | |
4 | url | varchar | 255 | 0 | Y | N | 链接: | |
5 | img | varchar | 255 | 0 | Y | N | 轮播图: | |
6 | hits | int | 10 | 0 | N | N | 0 | 点击量: |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表tram_users (电车用户)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | tram_users_id | int | 10 | 0 | N | Y | 电车用户ID | |
2 | full_name | varchar | 64 | 0 | Y | N | 姓名 | |
3 | gender | varchar | 64 | 0 | Y | N | 性别 | |
4 | battery_model | varchar | 64 | 0 | Y | N | 电池型号 | |
5 | city | varchar | 64 | 0 | Y | N | 所在城市 | |
6 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
7 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
8 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表upload (文件上传)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | upload_id | int | 10 | 0 | N | Y | 上传ID | |
2 | name | varchar | 64 | 0 | Y | N | 文件名 | |
3 | path | varchar | 255 | 0 | Y | N | 访问路径 | |
4 | file | varchar | 255 | 0 | Y | N | 文件路径 | |
5 | display | varchar | 255 | 0 | Y | N | 显示顺序 | |
6 | father_id | int | 10 | 0 | Y | N | 0 | 父级ID |
7 | dir | varchar | 255 | 0 | Y | N | 文件夹 | |
8 | type | varchar | 32 | 0 | Y | N | 文件类型 |
表user (用户账户:用于保存用户登录信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | user_id | mediumint | 8 | 0 | N | Y | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
2 | state | smallint | 5 | 0 | N | N | 1 | 账户状态:[0,10](1可用|2异常|3已冻结|4已注销) |
3 | user_group | varchar | 32 | 0 | Y | N | 所在用户组:[0,32767]决定用户身份和权限 | |
4 | login_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 上次登录时间: |
5 | phone | varchar | 11 | 0 | Y | N | 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 | |
6 | phone_state | smallint | 5 | 0 | N | N | 0 | 手机认证:[0,1](0未认证|1审核中|2已认证) |
7 | username | varchar | 16 | 0 | N | N | 用户名:[0,16]用户登录时所用的账户名称 | |
8 | nickname | varchar | 16 | 0 | Y | N | 昵称:[0,16] | |
9 | password | varchar | 64 | 0 | N | N | 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 | |
10 | | varchar | 64 | 0 | Y | N | 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 | |
11 | email_state | smallint | 5 | 0 | N | N | 0 | 邮箱认证:[0,1](0未认证|1审核中|2已认证) |
12 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
13 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
表user_group (用户组:用于用户前端身份和鉴权)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | group_id | mediumint | 8 | 0 | N | Y | 用户组ID:[0,8388607] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000] |
3 | name | varchar | 16 | 0 | N | N | 名称:[0,16] | |
4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该用户组的特点或权限范围 | |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | register | smallint | 5 | 0 | Y | N | 0 | 注册位置: |
9 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
整个新能源汽车换电帮管理小程序的需求分析主要对系统总体架构以及功能模块的设计,通过建立E-R模型和数据库逻辑系统设计完成了数据库系统设计。
校园网络规划与设计品牌网站制作推荐厦门网页设计价格制作小程序用什么编程软件网络推广专员工作内容制作小程序详细教程泰安论坛企业管理系统概念杭州个人网站模板ui用什么设计软件郑州男科医院哪家好一些平面设计师是干什么的计算机网络技术就业岗位某公司搭建一个小型局域网大连网站搭建深圳网页设计公司兴田德润电话开发手机网站多少钱成都建设网站制作商丘人才网app定制开发最低多少钱长春建设网濮阳网站优化公司市场监督管理局和工商局的区别公司变更地址朝阳seo排名优化培训h5互动广告江阴网站建设私人订制和私人定制哪个正确什么是企业建站系统多少钱可以买股票网页编辑器官方下载