微信小程序评分小程序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 refid Integer 关联表id
4 userid Integer 用户id
5 nickname String 用户名
6 content String 评论内容
7 reply String 回复内容

2产品资讯表

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

3产品信息表

序号 列名 数据类型 说明 允许空
1 Id Int id
2 addtime Date 创建时间
3 chanpinmingcheng String 产品名称
4 chanpinfenlei String 产品分类
5 tupian String 图片
6 chanpinshipin String 产品视频
7 pingfen float 评分
8 fabushijian datetime 发布时间
9 chanpinjieshao String 产品介绍
10 clicktime datetime 最近点击时间
11 clicknum Integer 点击次数

4产品分类表

序号 列名 数据类型 说明 允许空
1 Id Int id
2 addtime Date 创建时间
3 chanpinfenlei String 产品分类

5用户表

序号 列名 数据类型 说明 允许空
1 Id Int id
2 addtime Date 创建时间
3 yonghuming String 用户名
4 mima String 密码
5 xingming String 姓名
6 xingbie String 性别
7 touxiang String 头像
8 youxiang String 邮箱
9 shouji String 手机

6留言反馈表

序号 列名 数据类型 说明 允许空
1 Id Int id
2 addtime Date 创建时间
3 userid Integer 留言人id
4 username String 用户名
5 content String 留言内容
6 cpicture String 留言图片
7 reply String 回复内容
8 rpicture String 回复图片

7评分信息表

序号 列名 数据类型 说明 允许空
1 Id Int id
2 addtime Date 创建时间
3 chanpinmingcheng String 产品名称
4 chanpinfenlei String 产品分类
5 pingfen float 评分
6 tupian String 图片
7 pingfenshijian datetime 评分时间
8 yonghuming String 用户名
9 crossuserid Integer 跨表用户id
10 crossrefid Integer 跨表主键id

8收藏表

序号 列名 数据类型 说明 允许空
1 Id Int id
2 addtime Date 创建时间
3 userid Integer 用户id
4 refid Integer 收藏id
5 tablename String 表名
6 name String 收藏名称
7 picture String 收藏图片
8 type String 类型(1:收藏,21:赞,22:踩)
9 inteltype String 推荐类型

9管理员表

序号 列名 数据类型 说明 允许空
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.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 我的页面

相关推荐
hunzi_120 分钟前
搭建商城系统
java·uni-app·php
workflower1 小时前
MDSE和敏捷开发相互矛盾之处:方法论本质的冲突
数据库·软件工程·敏捷流程·极限编程
Boilermaker19921 小时前
【Java EE】Mybatis-Plus
java·开发语言·java-ee
今日热点1 小时前
小程序主体变更全攻略:流程、资料与异常处理方案
经验分享·微信·小程序·企业微信·微信公众平台·微信开放平台
Tony小周1 小时前
实现一个点击输入框可以弹出的数字软键盘控件 qt 5.12
开发语言·数据库·qt
xdscode1 小时前
SpringBoot ThreadLocal 全局动态变量设置
java·spring boot·threadlocal
lifallen1 小时前
Paimon 原子提交实现
java·大数据·数据结构·数据库·后端·算法
丶小鱼丶2 小时前
链表算法之【合并两个有序链表】
java·算法·链表
TDengine (老段)2 小时前
TDengine 数据库建模最佳实践
大数据·数据库·物联网·时序数据库·tdengine·涛思数据
张先shen2 小时前
Elasticsearch RESTful API入门:全文搜索实战(Java版)
java·大数据·elasticsearch·搜索引擎·全文检索·restful