目录

基于微信小程序的超市购物系统论文源码调试讲解

基于微信小程序的超市购物系统+论文源码调试讲解

4 系统设计

超市购物系统的设计方案比如功能框架的设计,比如数据库的设计的好坏也就决定了该系统在开发层面是否高效,以及在系统维护层面是否容易维护和升级,因为在系统实现阶段是需要考虑用户的所有需求,要是在设计阶段没有经过全方位考虑,那么系统实现的部分也就无从下手,所以系统设计部分也是至关重要的一个环节,只有根据用户需求进行细致全面的考虑,才有希望开发出功能健全稳定的程序软件。

4.1 系统概要设计

本次拟开发的系统为了节约开发成本,也为了后期在维护和升级上的便利性,打算通过浏览器来实现系统功能界面的展示,让程序软件的主要事务集中在后台的服务器端处理,前端部分只用处理少量的事务逻辑。下面使用一张图(如图4.1所示)来说明程序的工作原理。

https://i-blog.csdnimg.cn/direct/d53b1f3267dc4d5b952c0508bce24b6c.png

图4.1 程序工作的原理图

4.2 系统功能结构设计

在分析并得出使用者对程序的功能要求时,就可以进行程序设计了。如图4.2展示的就是管理员功能结构图,管理员主要负责填充员工和其类别信息,并对已填充的数据进行维护,包括修改与删除,管理员也需要对奖惩对培训,对考,对薪资等进行管理。

https://i-blog.csdnimg.cn/img_convert/c0140a428c4d6f086be55b8a5f63e26f.jpeg

图4.2 系统功能结构图

4.3 数据库设计

程序功能操作不管是添加,修改,还是删除等功能产生的数据都是经由数据库进行数据保存和更新的,所以一个数据库设计的好坏也是程序是否好坏的判定标准,因为程序的成功,有一半的功劳都是靠数据库的优秀设计。数据库一旦设计得良好是可以减轻开发人员的开发负担的。

4.3.1 数据库E-R图设计

这个部分的设计需要使用到E-R图绘制工具,常用的工具就是Visio工具来绘制E-R模型图,这款工具不仅可以快速创建需要的E-R模型图,而且该工具提供的操作界面很简单,可以短时间内修改绘图界面的图形或者是文字的属性。在绘制E-R模型图时,要分清楚各个图形代表的含义,以免绘制出错,E-R模型图由长方形(实体),椭圆形(属性),菱形(关系)这三部分图形符号组成,绘制期间要区分开来,用准确的图形符号代表相应的数据元素。

(1)下图是客服聊天实体和其具备的属性。

https://i-blog.csdnimg.cn/img_convert/9a19bc9824b9d60a03889420375dfa0b.jpeg

客服聊天实体属性图

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

https://i-blog.csdnimg.cn/img_convert/d76a4e063a8a9daa3f15b192bef6cb10.jpeg

商品实体属性图

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

https://i-blog.csdnimg.cn/img_convert/17d584bdc15e837987ccab4f01ff5102.jpeg

用户实体属性图

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

https://i-blog.csdnimg.cn/img_convert/1be31c080772ae3ee1a54e841011c14f.jpeg

公告实体属性图

(5)下图是购物车实体和其具备的属性。

https://i-blog.csdnimg.cn/img_convert/35afb5d3afe22d11a339394ac98a8c3d.jpeg

购物车实体属性图

(6)下图是商品收藏实体和其具备的属性。

https://i-blog.csdnimg.cn/img_convert/016c6daab75a22969b58069aabf61b89.jpeg

商品收藏实体属性图

(7)下图是商品评价实体和其具备的属性。

https://i-blog.csdnimg.cn/img_convert/e21bfa346966f56e615cbc10c356d04a.jpeg

商品评价实体属性图

(8)下图是商品订单实体和其具备的属性。

https://i-blog.csdnimg.cn/img_convert/c4ff820e0364570ee17d3819188b81e5.jpeg

商品订单实体属性图

(9)下图是收货地址实体和其具备的属性。

https://i-blog.csdnimg.cn/img_convert/3872c1c6a10bf9c6f2266c865433f34d.jpeg

收货地址实体属性图

各个实体之间的联系用下图的E-R图表示。绘制的系统E-R图见图4.8。

图4.8 系统E-R图

4.3.2 数据库表结构设计

数据库系统一旦选定之后,需要根据程序要求在数据库中建立数据库文件,并在已经完成创建的数据库文件里面,为程序运行中产生的数据建立对应的数据表格,数据表结构设计就是对创建的数据表格进行字段设计,字段长度设计,字段类型设计等,当数据表格合理设计完成之后,才能正常存储相关程序运行产生的数据信息。

表4.1收货地址表

序号列名数据类型说明允许空
1IdIntid
2yonghu_idInteger创建用户
3address_nameString收货人
4address_phoneString电话
5address_dizhiString地址
6isdefault_typesInteger是否默认地址
7insert_timeDate添加时间
8update_timeDate修改时间
9create_timeDate创建时间

表4.2购物车表

序号列名数据类型说明允许空
1IdIntid
2yonghu_idInteger所属用户
3shangpin_idInteger商品
4buy_numberInteger购买数量
5create_timeDate添加时间
6update_timeDate更新时间
7insert_timeDate创建时间

表4.3客服聊天表

序号列名数据类型说明允许空
1IdIntid
2yonghu_idInteger提问用户
3chat_issueString问题
4issue_timeDate问题时间
5chat_replyString回复
6reply_timeDate回复时间
7zhuangtai_typesInteger状态
8chat_typesInteger数据类型
9insert_timeDate创建时间

表4.4字典表

序号列名数据类型说明允许空
1IdIntid
2dic_codeString字段
3dic_nameString字段名
4code_indexInteger编码
5index_nameString编码名字
6super_idInteger父字段id
7beizhuString备注
8create_timeDate创建时间

表4.5公告表

序号列名数据类型说明允许空
1IdIntid
2gonggao_nameString公告名称
3gonggao_photoString公告图片
4gonggao_typesInteger公告类型
5insert_timeDate公告发布时间
6gonggao_contentString公告详情
7create_timeDate创建时间

表4.6商品表

序号列名数据类型说明允许空
1IdIntid
2shangpin_nameString商品名称
3shangpin_uuid_numberString商品编号
4shangpin_photoString商品照片
5shangpin_typesInteger商品类型
6shangpin_erji_typesInteger二级类型
7shangpin_kucun_numberInteger商品库存
8shangpin_yuzhiInteger警戒值
9shangpin_priceInteger购买获得积分
10shangpin_old_moneyBigDecimal商品原价
11shangpin_new_moneyBigDecimal现价/积分
12shangpin_cangkuString所属仓库
13shangpin_clicknumInteger商品热度
14shangpin_contentString商品介绍
15shangxia_typesInteger是否上架
16shangpin_deleteInteger逻辑删除
17insert_timeDate录入时间
18create_timeDate创建时间

表4.7商品收藏表

序号列名数据类型说明允许空
1IdIntid
2shangpin_idInteger商品
3yonghu_idInteger用户
4shangpin_collection_typesInteger类型
5insert_timeDate收藏时间
6create_timeDate创建时间

表4.8商品评价表

序号列名数据类型说明允许空
1IdIntid
2shangpin_idInteger商品
3yonghu_idInteger用户
4shangpin_commentback_textString评价内容
5insert_timeDate评价时间
6reply_textString回复内容
7update_timeDate回复时间
8create_timeDate创建时间

表4.9商品订单表

序号列名数据类型说明允许空
1IdIntid
2shangpin_order_uuid_numberString订单编号
3address_idInteger收货地址
4shangpin_idInteger商品
5yonghu_idInteger用户
6buy_numberInteger购买数量
7shangpin_order_true_priceBigDecimal实付价格
8shangpin_order_courier_nameString快递公司
9shangpin_order_courier_numberString快递单号
10shangpin_order_typesInteger订单类型
11shangpin_order_payment_typesInteger支付类型
12insert_timeDate订单创建时间
13create_timeDate创建时间

表4.10用户表

序号列名数据类型说明允许空
1IdIntid
2yonghu_nameString用户姓名
3yonghu_phoneString用户手机号
4yonghu_id_numberString用户身份证号
5yonghu_photoString用户头像
6yonghu_emailString用户邮箱
7new_moneyBigDecimal余额
8yonghu_sum_jifenBigDecimal总积分
9yonghu_new_jifenBigDecimal现积分
10huiyuandengji_typesInteger会员等级
11create_timeDate创建时间

表4.11管理员表

序号列名数据类型说明允许空
1IdIntid
2usernameString学生名
3passwordString密码
4roleString角色
5addtimeDate新增时间


5 系统实现

系统实现部分就是将系统分析,系统设计部分的内容通过编码进行功能实现,以一个实际应用系统的形式展示系统分析与系统设计的结果。前面提到的系统分析,系统设计最主要还是进行功能,系统操作逻辑的设计,也包括了存储数据的数据库方面的设计等内容,系统实现就是一个最终的实施阶段,将前面的设计成果进行物理转化,最终出具可以运用于实际的软件系统。

5.1 管理员功能介绍

5.1.1 商品管理

如图5.1显示的就是商品管理页面,此页面提供给管理员的功能有:查看商品列表,新增商品,修改商品,删除商品。

https://i-blog.csdnimg.cn/img_convert/a093e21efad2545f4adbbb3e05615b84.png

图5.1 商品管理页面

5.1.2 公告管理

如图5.2显示的就是公告管理页面,此页面提供给管理员的功能有:新增公告,修改公告,删除公告。

https://i-blog.csdnimg.cn/img_convert/01cef6436a4508bcc31b6161a15bce9f.png

图5.2 公告管理页面

5.1.3 公告类型管理

如图5.3显示的就是公告类型管理页面,此页面提供给管理员的功能有:新增公告类型,修改公告类型,删除公告类型。

https://i-blog.csdnimg.cn/img_convert/f5bb5e444f3e8b264b50dd03e4274a9f.png

图5.3 公告类型管理页面