- 首页
- 国家安全部是什么级别
- 正文
在上一章节中分析了基于微信小程序的快递管理系统的功能性需求,并且根据需求分析了基于微信小程序的快递管理系统中的用例。那么接下来就要开始对基于微信小程序的快递管理系统架构、主要功能和数据库开始进行设计。
系统的整体架构确定以后,再来看基于微信小程序的快递管理系统的主要功能模块图。整体的功能模块包括管理员+寄件人+员工+收件人四个模块,实现了对快递站点相关信息的查询管理。
数据库设计一般包括需求分析、概念模型设计、数据库表建立三大过程,其中需求分析前面章节已经阐述,概念模型设计有E-R模型和逻辑结构设计两部分。
基于微信小程序的快递管理系统采用的是SQL Serve的数据库进行存储的,数据库里面储存了很多的表信息,在此罗列出来一些主要的数据库E-R模型图。
图3.1 寄件服务E-R关系图
图3.2 物流记录E-R关系图
图3.3 取件记录E-R关系图
通过前面E-R关系图一共需要创建很多个数据表。在此罗列这几个主要数据库表的关系模型如下:
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | addressee_id | int | 10 | 0 | N | Y | 收件人ID | |
2 | recipient | varchar | 64 | 0 | N | N | 收件用户 | |
3 | recipient_name | varchar | 64 | 0 | Y | N | 收件人姓名 | |
4 | age | varchar | 64 | 0 | Y | N | 年龄 | |
5 | recipients_mobile_phone | varchar | 64 | 0 | Y | N | 收件人手机 | |
6 | recipient_address | varchar | 64 | 0 | Y | N | 收件人地址 | |
7 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
8 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
9 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | branch_name_id | int | 10 | 0 | N | Y | 网点名称ID | |
2 | branch_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 | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | employee_application_id | int | 10 | 0 | N | Y | 员工申请ID | |
2 | employee_no | int | 10 | 0 | Y | N | 0 | 员工工号 |
3 | employee_name | varchar | 64 | 0 | Y | N | 员工姓名 | |
4 | employee_mobile_phone | varchar | 64 | 0 | Y | N | 员工手机 | |
5 | branch_name | varchar | 64 | 0 | Y | N | 网点名称 | |
6 | application_type | varchar | 64 | 0 | Y | N | 申请类型 | |
7 | application_title | varchar | 64 | 0 | Y | N | 申请标题 | |
8 | application_content | text | 65535 | 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 | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | employee_information_id | int | 10 | 0 | N | Y | 员工信息ID | |
2 | employee_no | int | 10 | 0 | Y | N | 0 | 员工工号 |
3 | employee_name | varchar | 64 | 0 | Y | N | 员工姓名 | |
4 | gender | varchar | 64 | 0 | Y | N | 性别 | |
5 | age | varchar | 64 | 0 | Y | N | 年龄 | |
6 | employee_mobile_phone | varchar | 64 | 0 | Y | N | 员工手机 | |
7 | branch_name | varchar | 64 | 0 | Y | N | 网点名称 | |
8 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | logistics_records_id | int | 10 | 0 | N | Y | 物流记录ID | |
2 | courier_number | varchar | 64 | 0 | Y | N | 快递单号 | |
3 | sending_user | int | 10 | 0 | Y | N | 0 | 寄件用户 |
4 | name_of_sender | varchar | 64 | 0 | Y | N | 寄件人姓名 | |
5 | senders_mobile_phone | varchar | 64 | 0 | Y | N | 寄件人手机 | |
6 | shipping_address | varchar | 64 | 0 | Y | N | 寄件地址 | |
7 | sending_items | varchar | 64 | 0 | Y | N | 寄送物品 | |
8 | recipient | int | 10 | 0 | Y | N | 0 | 收件用户 |
9 | recipient_name | varchar | 64 | 0 | Y | N | 收件人姓名 | |
10 | recipients_mobile_phone | varchar | 64 | 0 | Y | N | 收件人手机 | |
11 | recipient_address | varchar | 64 | 0 | Y | N | 收件人地址 | |
12 | delivery_status | varchar | 64 | 0 | Y | N | 配送状态 | |
13 | start_delivery_time | datetime | 19 | 0 | Y | N | 开始配送时间 | |
14 | estimated_time_of_arrival | datetime | 19 | 0 | Y | N | 预计到达时间 | |
15 | pickup_code | varchar | 255 | 0 | Y | N | 取件码 | |
16 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
17 | location_address | varchar | 64 | 0 | Y | N | 当前位置 | |
18 | location_lng | varchar | 64 | 0 | Y | N | 当前位置经度 | |
19 | location_lat | varchar | 64 | 0 | Y | N | 当前位置纬度 | |
20 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
21 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | pickup_record_id | int | 10 | 0 | N | Y | 取件记录ID | |
2 | courier_number | varchar | 64 | 0 | Y | N | 快递单号 | |
3 | sending_user | int | 10 | 0 | Y | N | 0 | 寄件用户 |
4 | name_of_sender | varchar | 64 | 0 | Y | N | 寄件人姓名 | |
5 | senders_mobile_phone | varchar | 64 | 0 | Y | N | 寄件人手机 | |
6 | shipping_address | varchar | 64 | 0 | Y | N | 寄件地址 | |
7 | sending_items | varchar | 64 | 0 | Y | N | 寄送物品 | |
8 | recipient | int | 10 | 0 | Y | N | 0 | 收件用户 |
9 | recipient_name | varchar | 64 | 0 | Y | N | 收件人姓名 | |
10 | recipients_mobile_phone | varchar | 64 | 0 | Y | N | 收件人手机 | |
11 | recipient_address | varchar | 64 | 0 | Y | N | 收件人地址 | |
12 | delivery_status | varchar | 64 | 0 | Y | N | 配送状态 | |
13 | start_delivery_time | varchar | 64 | 0 | Y | N | 开始配送时间 | |
14 | pickup_code | varchar | 255 | 0 | Y | N | 取件码 | |
15 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
16 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
17 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | sender_id | int | 10 | 0 | N | Y | 寄件人ID | |
2 | sending_user | varchar | 64 | 0 | N | N | 寄件用户 | |
3 | name_of_sender | varchar | 64 | 0 | Y | N | 寄件人姓名 | |
4 | age | varchar | 64 | 0 | Y | N | 年龄 | |
5 | senders_mobile_phone | varchar | 64 | 0 | Y | N | 寄件人手机 | |
6 | shipping_address | varchar | 64 | 0 | Y | N | 寄件地址 | |
7 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
8 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
9 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | shipping_billing_id | int | 10 | 0 | N | Y | 寄件计费ID | |
2 | courier_number | varchar | 64 | 0 | Y | N | 快递单号 | |
3 | sending_user | int | 10 | 0 | Y | N | 0 | 寄件用户 |
4 | name_of_sender | varchar | 64 | 0 | Y | N | 寄件人姓名 | |
5 | senders_mobile_phone | varchar | 64 | 0 | Y | N | 寄件人手机 | |
6 | shipping_address | varchar | 64 | 0 | Y | N | 寄件地址 | |
7 | sending_items | varchar | 64 | 0 | Y | N | 寄送物品 | |
8 | recipient | int | 10 | 0 | Y | N | 0 | 收件用户 |
9 | recipient_name | varchar | 64 | 0 | Y | N | 收件人姓名 | |
10 | recipients_mobile_phone | varchar | 64 | 0 | Y | N | 收件人手机 | |
11 | recipient_address | varchar | 64 | 0 | Y | N | 收件人地址 | |
12 | weight | varchar | 64 | 0 | Y | N | 重量 | |
13 | express_delivery_fee | int | 10 | 0 | Y | N | 0 | 快递费 |
14 | pay_state | varchar | 16 | 0 | N | N | 未支付 | 支付状态 |
15 | pay_type | varchar | 16 | 0 | Y | N | 支付类型: 微信、支付宝、网银 | |
16 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
17 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
18 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | shipping_service_id | int | 10 | 0 | N | Y | 寄件服务ID | |
2 | courier_number | varchar | 64 | 0 | Y | N | 快递单号 | |
3 | sending_user | int | 10 | 0 | Y | N | 0 | 寄件用户 |
4 | name_of_sender | varchar | 64 | 0 | Y | N | 寄件人姓名 | |
5 | senders_mobile_phone | varchar | 64 | 0 | Y | N | 寄件人手机 | |
6 | shipping_address | varchar | 64 | 0 | Y | N | 寄件地址 | |
7 | sending_items | varchar | 64 | 0 | Y | N | 寄送物品 | |
8 | recipient | int | 10 | 0 | Y | N | 0 | 收件用户 |
9 | recipient_name | varchar | 64 | 0 | Y | N | 收件人姓名 | |
10 | recipients_mobile_phone | varchar | 64 | 0 | Y | N | 收件人手机 | |
11 | recipient_address | varchar | 64 | 0 | Y | N | 收件人地址 | |
12 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
13 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
14 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
基于微信小程序的快递管理系统的详细设计与实现主要是根据前面的基于微信小程序的快递管理系统的需求分析和基于微信小程序的快递管理系统的总体设计来设计页面并实现业务逻辑。主要从基于微信小程序的快递管理系统界面实现、业务逻辑实现这两部分进行介绍。
当进入基于微信小程序的快递管理系统的时候,首先映入眼帘的是系统的导航栏、轮播图以及新闻资讯,在左上角能够看到导航栏,其主界面展示如下图4.1所示。
图4.1 首页界面图
不是基于微信小程序的快递管理系统中用户的是可以在线进行注册的,当用户点击右上角“注册”按钮的时候,当填写上自己的账号+密码+确认密码+昵称+邮箱+手机号后等信息再点击“注册”按钮后将会先验证输入的有没有空数据,再次验证密码和确认密码是否是一样的,最后验证输入的账户名和数据库表中已经注册的账户名是否重复,只有都验证没问题后即可用户注册成功。其用用户注册界面展示如下图4.2所示。
图4.2 用户注册界面图
基于微信小程序的快递管理系统中的前台上注册后的用户、快递公司和快递员是可以通过自己的username和password进行登录的,当会员输入完整的自己的username和password信息并点击“登录”按钮后,将会首先验证输入的有没有空数据,再次验证输入的username和password在数据库中当前保存的用户信息是否一致,只有在一致后将会登录成功并自动跳转到基于微信小程序的快递管理系统的首页中;否则将会提示相应错误信息,登录界面如下图4.3所示。
图4.3登录界面图
当访客点击基于微信小程序的快递管理系统中导航栏上的“新闻资讯”后将会进入到该“新闻资讯”列表的界面,然后选择想要看的新闻资讯,点击进入到详细界面,新闻资讯界面如下图4.4 所示。
图4.4新闻资讯界面图
当用户登录到系统中以后,点击“寄件服务”这一菜单,会显示寄件服务信息,同时支持输入关键词对寄件信息进行搜索。界面如下图4.5所示。
图4.5寄件服务界面图
当用户点击“寄件计费”这个按钮,会出现子菜单,点击“寄件计费”可以对查询寄件费用,并且可以在线进行支付,界面如下图4.6所示。
图4.6寄件计费界面图
基于微信小程序的快递管理系统的管理员人员可以对用户信息、公告管理、资源管理以及模块管理进行管控。
点击“公告信息”会显示出所有的公告信息,支持输入公告标题对公告信息进行查询,如果想要添加新的公告,点击“添加”按钮,点击“提交按钮”就可以添加了,同样如果公告信息有错误,可以点击“编辑”对公告信息进行更新,也可以选择某一条公告信息,点击“删除”进行删除。界面如下图4.7所示。
图4.7公告信息管理界面图
点击“新闻资讯”会显示出所有的新闻资讯信息,支持输入资讯标题进行查询,如果想要添加新的新闻资讯,点击“添加”按钮,输入标题、类型、内容等,点击“提交按钮”就可以添加了。界面如下图4.8所示。
图4.8新闻资讯管理界面图
点击“员工信息”按钮,可以对员工进行管理查询。界面如下图4.9所示。
图4.9员工信息界面图
点击“网点名称”按钮,然后可以对网点名称进行增删改查。界面展示如下图4.10所示。
图4.10网点名称界面图
点击“寄件服务管理”按钮,可以对用户提交的寄件信息进行维护管理,界面如下图4.11所示。
图4.11寄件服务管理界面图
点击“物流记录”会显示出寄件的所有的物流信息,支持输入寄件人或者是寄件电话对快递物流信息进行查询,如果想要进行物流记录添加操作,点击“添加”按钮,输入寄件人、寄件人电话、物品类型、种类、寄件地址、物流信息,点击“提交”就可以添加了。界面如下图4.12所示。
图4.12物流记录管理界面图
点击“员工申请”这一按钮后会显示出员工申请信息,对员工提交的申请进行审核管理。界面如下图4.13所示。
图4.13 员工申请界面图
">