基于微信小程序的快递管理平台的设计与实现ssm+论文源码调试讲解

第4章 系统设计

4.1 系统设计的原则

在系统设计过程中,也需要遵循相应的设计原则,这些设计原则可以帮助设计者在短时间内设计出符合设计规范的设计方案。设计原则主要有可靠性,安全性,可定制化,可扩展性,可维护性,可升级性以及客户体验等原则。下面就对这些原则进行简要阐述。

可靠性:一个软件是否可靠决定了其是否被用户使用,设计不可靠的软件,用户很容易就遗弃;

安全性:程序软件承担了信息的保存与管理等事务,安全性不足的软件会导致使用者承担巨大的损失;所以系统安全也是需要考虑进入的;

可定制化:市场环境从来都不是一直固定不变,面对客户群体的改变,以及使用环境的改变,市场需求的改变等因素,程序软件也要易于调整以适应各种变化;

可扩展性:程序软件在运行使用期间,也需要及时引进当下的新技术来进行系统优化,主要就是在系统功能层面,系统性能层面上进行相应的扩展,只有这样才能让系统在实际生活中继续占有市场;

可维护性:程序软件的维护需要一定量的资金,不管是排除现有程序错误,还是变更软件的现有需求,都需要在软件技术上投入一定资金,所以易于维护的软件程序就可以降低技术层面的资金消耗;

可升级性:程序软件的投入使用,会面临用户数量增多的情况,用户对软件的使用率也会提升,所以系统面临这种情况,仍然需要通过升级保持性能的合理,这样才能够适应市场;

客户体验:设计出来的程序软件在界面上不能够太复杂,要遵循界面设计的原理设计出简单,方便操作的功能操作界面,让用户易于接受软件,并乐于使用软件提供的功能。

4.2 功能结构设计

在管理员功能模块确定下来的基础上,对管理员各个功能进行设计,确定管理员功能的详细模块。绘制的管理员功能结构见下图。

图4-2 功能结构图

4.3 数据库设计

与功能结构设计一样,数据库设计也是程序开发不可避免的设计环节,数据库设计最主要的目的就是帮助运行程序存储相应的数据信息。数据库设计包含的内容有数据表结构的设计,也包含了数据库E-R图的设计。

4.3.1 数据库E-R图

在绘制E-R图之前,先要找出数据库的实体,明确各个实体具有的属性,比如用户信息这个实体,它具备的属性包括了用户的姓名属性,用户的密码属性,用户的创建时间属性等,所以明确了用户这个实体,以及用户实体具备的属性之后,就需要根据这些信息绘制用户实体对应的实体属性图了。绘制软件选用当下认可度高,使用范围广,操作便利的微软旗下的Visio工具。

(1)管理员实体属性图通过Visio工具绘制,绘制结果展示如下:

图4-4 管理员实体属性图

(2)注册用户实体属性图通过Visio工具绘制,绘制结果展示如下:

图4-5 注册用户实体属性图

(3)平台公告实体属性图通过Visio工具绘制,绘制结果展示如下:

图4-6 平台公告实体属性图

4.3.2 数据库表结构

在进行这部分设计之前,需要明白和掌握数据类型以及各个数据类型的长度范围等知识,因为在一张具体的数据表中,为了方便理解,这里就举个简单的例子。比如用户信息表,这个表格的字段就是用户这个实体具备的属性,这时就需要对字段进行数据类型,以及字段长度的设置,也要设置一个主键来作为用户信息表的唯一标识。这些都是数据库表结构设计需要完成的内容。根据基于微信小程序的快递管理平台的功能设计以及数据库设计要求,展示该系统的数据表结构。

1平台公告表

序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 addtime Date 创建时间 是
3 title String 标题 是
4 introduction String 简介 是
5 picture String 图片 是
6 content String 内容 是

2配送完成表

序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 addtime Date 创建时间 是
3 kuaididanhao String 快递单号 是
4 kuaidimingcheng String 快递名称 是
5 tupian String 图片 是
6 yonghuzhanghao String 用户账号 是
7 yonghuxingming String 用户姓名 是
8 yonghushouji String 用户手机 是
9 zhidingweizhi String 指定位置 是
10 peisongfei String 配送费 是
11 jiequshijian String 接取时间 是
12 wanchengshijian datetime 完成时间 是
13 peisongzhanghao String 配送账号 是
14 peisongyuan String 配送员 是
15 peisongyuanshouji String 配送员手机 是
16 wanchengbeizhu String 完成备注 是
17 querenzhuangtai String 确认状态 是
18 userid Integer 用户id 是

3用户表

序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 addtime Date 创建时间 是
3 yonghuzhanghao String 用户账号 是
4 mima String 密码 是
5 yonghuxingming String 用户姓名 是
6 xingbie String 性别 是
7 nianling String 年龄 是
8 touxiang String 头像 是
9 yonghushouji String 用户手机 是

4确认完成表

序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 addtime Date 创建时间 是
3 kuaididanhao String 快递单号 是
4 kuaidimingcheng String 快递名称 是
5 tupian String 图片 是
6 yonghuzhanghao String 用户账号 是
7 peisongzhanghao String 配送账号 是
8 wanchengshijian String 完成时间 是
9 querenshijian datetime 确认时间 是
10 peisongpingfen String 配送评分 是
11 peisongpingjia String 配送评价 是
12 userid Integer 用户id 是

5配送快递表

序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 addtime Date 创建时间 是
3 kuaididanhao String 快递单号 是
4 kuaidimingcheng String 快递名称 是
5 tupian String 图片 是
6 yonghuzhanghao String 用户账号 是
7 yonghuxingming String 用户姓名 是
8 yonghushouji String 用户手机 是
9 kuaidiweizhi String 快递位置 是
10 peisongleixing String 配送类型 是
11 zhidingweizhi String 指定位置 是
12 peisongfei Integer 配送费 是
13 fabushijian datetime 发布时间 是
14 yaoqiushijian datetime 要求时间 是
15 yonghubeizhu String 用户备注 是
16 peisongzhuangtai String 配送状态 是
17 crossuserid Integer 跨表用户id 是
18 crossrefid Integer 跨表主键id 是
19 userid Integer 用户id 是

6配送信息表

序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 addtime Date 创建时间 是
3 kuaididanhao String 快递单号 是
4 kuaidimingcheng String 快递名称 是
5 tupian String 图片 是
6 yonghuzhanghao String 用户账号 是
7 yonghuxingming String 用户姓名 是
8 yonghushouji String 用户手机 是
9 kuaidiweizhi String 快递位置 是
10 zhidingweizhi String 指定位置 是
11 peisongfei String 配送费 是
12 jiequshijian datetime 接取时间 是
13 peisongzhanghao String 配送账号 是
14 peisongyuan String 配送员 是
15 peisongyuanshouji String 配送员手机 是
16 peisongwuliu String 配送物流 是
17 dingdanzhuangtai String 订单状态 是
18 userid Integer 用户id 是

7配置文件表

序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 name String 配置参数名称 是
3 value String 配置参数值 是

8快递信息表

序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 addtime Date 创建时间 是
3 kuaididanhao String 快递单号 是
4 kuaidimingcheng String 快递名称 是
5 tupian String 图片 是
6 wuliu String 物流 是
7 yonghuzhanghao String 用户账号 是
8 yonghuxingming String 用户姓名 是
9 yonghushouji String 用户手机 是
10 fahuodi String 发货地 是
11 kuaidiweizhi String 快递位置 是
12 gengxinshijian datetime 更新时间 是
13 userid Integer 用户id 是

9用户表表

序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 username String 用户名 是
3 password String 密码 是
4 role String 角色 是
5 addtime Date 新增时间 是

10配送员表

序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 addtime Date 创建时间 是
3 peisongzhanghao String 配送账号 是
4 mima String 密码 是
5 peisongyuan String 配送员 是
6 xingbie String 性别 是
7 touxiang String 头像 是
8 peisongyuanshouji String 配送员手机 是
9 shenfenzheng String 身份证 是

11token表表

序号 列名 数据类型 说明 允许空
1 Id Int id 否
2 userid Integer 用户id 是
3 username String 用户名 是
4 tablename String 表名 是
5 role String 角色 是
6 token String 密码 是
7 addtime Date 新增时间 是
8 expiratedtime Date 过期时间 是

第5章 系统实现

系统实现这个章节的内容主要还是展示系统的功能界面设计效果,在实现系统基本功能,比如修改,比如添加,比如删除等管理功能的同时,也显示出系统各个功能的界面实现效果,该部分内容一方面与前面提到的系统分析,系统设计的内容相呼应,另一方面也是一个实际成果的展示。

5.1管理员后台功能实现

5.1.1 用户管理

管理员可以对用户信息进行添加,修改,删除,查询管理。

图5-1 用户管理页面

5.1.2 平台公告管理

管理员可以对平台公告信息进行添加,修改,删除,查询管理。

图5-2 平台公告管理页面

5.1.3 配送员管理

管理员可以对配送员信息进行添加,修改,删除,查询管理。

图5-3 配送员页面

5.1.4 快递信息管理

管理员可以对快递信息进行修改,删除,查询管理。

图5-4 快递信息管理页面

5.2 微信小程序功能实现

5.2.1 首页

微信小程序输入正确的账号密码后就会默认进入首页显示界面。首页主要有轮播图,平台公告,以及下面的导航为主要组成部分。

图5-5 首页

5.2.2 快递信息

用户点击快递信息可以查看自己的快递信息,还可以搜索自己的快递。

图5-6 快递信息页面

5.2.3 配送信息

用户可以在配送信息里面查看配送信息。

图5-7 配送信息页面

5.2.4 我的

我的里面主要是可以进行退出,点击小齿轮就可以选择退出当前账户,也可以快递信息,配送信息等。

图5-8 我的页面

相关推荐
海鸥-w1 小时前
什么是AOP
java
长沙三为智能科技2 小时前
家政小程序门店运营模块设计:会员、下单、派单、结算四段链路的落地拆解
python·小程序·内容运营
Cc.Y2 小时前
Java零基础入门:可变字符串与包装类:StringBuilder、StringBuffer 与 通讯录管理系统实战
java·开发语言·python
paopaokaka_luck2 小时前
基于springboot+vue的智慧家政管理系统(AI问答、 WebSocket实时沟通、ECharts运营分析、订单规则与服务追踪)
java·javascript·spring boot·数据分析·echarts·mybatis
sm_926787052 小时前
RFID 标签打印的技术实现要点与二次开发实践
java·大数据·前端·c++·编辑器
阿森_dev2 小时前
2027 届毕设选题怎么选:30 个 Java 方向选题的实现难度排序
java·开发语言·spring boot·毕业设计·课程设计
Sarvartha2 小时前
Lambda 表达式和函数式接口
java·开发语言
计算机毕业设计杰瑞2 小时前
【计算机毕设精品】基于SpringBoot的一体化教务与学业质量管理系统的设计与实现,附源码_增删改查_java项目_可完美运行部署_网站项目
java·spring boot·课程设计
colinu2 小时前
C++ 异步任务与线程生命周期:`std::async`、`future`、`thread`、`jthread` 与协作式退出
java·jvm·c++
蜗牛互联网3 小时前
Python + JSON Schema 实现工单结构化输出与本地复核
java·人工智能·后端