博主介绍:👉全网个人号和企业号粉丝40W+,每年辅导几千名大学生较好的完成毕业设计,专注计算机软件领域的项目研发,不断的进行新技术的项目实战👈
⭐️热门专栏推荐订阅⭐️ 订阅收藏起来,防止下次找不到🔎百套Python实战项目持续更新中~
有需求的各位可以先收藏起来,还有大家在毕设选题,开题报告有疑惑的都可以找我,给你参考意见,帮你做好开题答辩❤️文末获取源码联系、提供项目参考文档❤️ ⚠️一定要先收藏⚠️
4系统设计
4.1系统功能设计
本次系统所涉及到的有关的功能,都是用功能结构图来简洁和清晰的表示出来,功能结构图就是能够把比较复杂的功能结构用图的形式清晰的描绘下来,并且为后续的设计以及测试等模块提供了明确的方向,在构思功能结构图的时候,便可以给设计的过程带来一定的思维导向,不至于在设计过程中有所遗漏,可以尽可能的明确系统所涉及到的功能。
系统的功能结构图如图4-1所示。
图 4-1系统功能结构图
4.2数据库设计
4.2.1数据库设计原则
学习程序设计,如果要了解数据库管理系统或者是根据需求而制定的系统接口,就必须创建一种数据库管理系统的模式,用来保存数据资料,这样当在应用编程过程中时候,就不需要再向操作系统页面上加载信息,进而增加了整个系统的工作效率。信息库管理系统中保存着许多数据,应该说是一个管理信息系统建设的中心和基础,而信息库管理系统也为管理信息系统建设提出了新增、删除、更改和搜索的操作功能,使管理信息系统建设能够迅速地查询所需要的数据,而不会直接从程序代码中查找。信息库管理系统通过将信息表的各个组成部分按照特定的方法准确地合并,排序和组成信息库管理系统。
通过对旅游景点推荐系统的主要功能信息进行规划并分为若干功能实体信息[14],实体信息将使用E-R图加以表示,本系统的主要功能实体图如图4-2、图4-3、图4-4、图4-5所示。
图4-2景点信息实体图
图4-3景点门票实体图
图4-4用户实体图
图4-5旅游资讯实体图
4.2.2数据表设计
在关系数据E-R图中,分析并创建数据表,数据表用来记录信息,数据表关系由多个数据表组成,下面介绍的是数据表各个字段信息如下表所示。
表4-1:景点信息评论表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
refid | bigint | 关联表id | |||
userid | bigint | 用户id | |||
avatarurl | longtext | 4294967295 | 头像 | ||
nickname | varchar | 200 | 用户名 | ||
content | longtext | 4294967295 | 评论内容 | ||
reply | longtext | 4294967295 | 回复内容 |
表4-2:景点门票评论表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
refid | bigint | 关联表id | |||
userid | bigint | 用户id | |||
avatarurl | longtext | 4294967295 | 头像 | ||
nickname | varchar | 200 | 用户名 | ||
content | longtext | 4294967295 | 评论内容 | ||
reply | longtext | 4294967295 | 回复内容 |
表4-3:配置文件
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
name | varchar | 100 | 配置参数名称 | ||
value | varchar | 100 | 配置参数值 |
表4-4:用户
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
yonghuzhanghao | varchar | 200 | 用户账号 | ||
xingming | varchar | 200 | 姓名 | ||
mima | varchar | 200 | 密码 | ||
xingbie | varchar | 200 | 性别 | ||
shouji | varchar | 200 | 手机 | ||
touxiang | longtext | 4294967295 | 头像 |
表4-5:用户表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
username | varchar | 100 | 用户名 | ||
password | varchar | 100 | 密码 | ||
role | varchar | 100 | 角色 | 管理员 | |
addtime | timestamp | 新增时间 | CURRENT_TIMESTAMP |
表4-6:收藏表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
userid | bigint | 用户id | |||
refid | bigint | 商品id | |||
tablename | varchar | 200 | 表名 | ||
name | varchar | 200 | 名称 | ||
picture | longtext | 4294967295 | 图片 | ||
type | varchar | 200 | 类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注) | 1 | |
inteltype | varchar | 200 | 推荐类型 | ||
remark | varchar | 200 | 备注 |
表4-7:旅游资讯
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
title | varchar | 200 | 标题 | ||
introduction | longtext | 4294967295 | 简介 | ||
picture | longtext | 4294967295 | 图片 | ||
content | longtext | 4294967295 | 内容 |
表4-8:在线反馈
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
userid | bigint | 留言人id | |||
username | varchar | 200 | 用户名 | ||
avatarurl | longtext | 4294967295 | 头像 | ||
content | longtext | 4294967295 | 留言内容 | ||
cpicture | longtext | 4294967295 | 留言图片 | ||
reply | longtext | 4294967295 | 回复内容 | ||
rpicture | longtext | 4294967295 | 回复图片 |
表4-9:景点信息
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
jingdianmingcheng | varchar | 200 | 景点名称 | ||
jingdianleixing | varchar | 200 | 景点类型 | ||
jingdiandengji | varchar | 200 | 景点等级 | ||
tupian | longtext | 4294967295 | 图片 | ||
piaojia | float | 票价 | |||
piaoshu | int | 票数 | |||
kaifangshijian | varchar | 200 | 开放时间 | ||
fuwudianhua | varchar | 200 | 服务电话 | ||
xiangxidizhi | varchar | 200 | 详细地址 | ||
jingdianxiangqing | longtext | 4294967295 | 景点详情 | ||
clicktime | datetime | 最近点击时间 | |||
clicknum | int | 点击次数 | 0 |
表4-10:景点门票
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
laiyuan | longtext | 4294967295 | 来源 | ||
biaoti | varchar | 200 | 标题 | ||
fengmian | longtext | 4294967295 | 封面 | ||
miaoshu | longtext | 4294967295 | 描述 | ||
weizhi | varchar | 200 | 位置 | ||
dianping | varchar | 200 | 点评 | ||
pinglun | varchar | 200 | 评论 | ||
jiage | int | 价格 | |||
tese | longtext | 4294967295 | 特色 | ||
kaifangshijian | longtext | 4294967295 | 开放时间 | ||
clicktime | datetime | 最近点击时间 | |||
clicknum | int | 点击次数 | 0 |
表4-11:景点类型
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
jingdianleixing | varchar | 200 | 景点类型 |
4.2.3数据库连接
在本系统的设计与开发中,数据库承担着重要的作用,可以说要是没有数据的存储和管理,而系统也不会执行对应的函数。数据库是基于数据结构而设计的,数据库管理员利用数据库管理系统对海量数据进行管理,而数据库的添加、删除、修改、查询等都是非常关键的一环。
在本系统中首先进行数据库的连接,具体的配置文件uimg_sql.py中进行数据库的连接,还有创建了本次数据库中所用到的表和相关的一些参数,这些操作和建立的实现是通过在PyCharm中编写完成的,有一些时间点的记录,旅游景点推荐信息是在数据库uchepai中完成的。
5系统实现
5.1系统功能实现
当人们打开系统的网址后,首先看到的就是首页界面。在这里,人们能够看到系统的导航条,通过导航条导航进入各功能展示页面进行操作。系统首页界面如图5-1所示。
图5-1 系统首页界面
用户注册:在用户注册页面的输入栏中输入用户注册信息进行注册操作,用户注册页面如图5-2所示。
图5-2 用户注册页面
景点信息:在景点信息页面的输入栏中输入景点名称和选择景点类型进行查询,可以查看到景点详细信息,并根据需要进行评论或收藏操作;景点信息页面如图5-3所示。
图5-3 景点信息详细页面
景点门票:在景点门票页面的输入栏中标题进行查询,可以查看到景点门票详细信息;景点门票页面如图5-4所示。
图5-4景点门票详细页面
在线反馈:在在线反馈页面通过填写留言内容、上传图片进行立即提交或重置操作;在线反馈页面如图5-5所示:
图5-5在线反馈界面
个人中心:在个人中心页面通过填写个人详细信息进行信息更新操作;还可以对我的收藏进行详细操作,个人中心页面如图5-6所示:
图5-6个人中心页面
5.2管理员模块实现
管理员登录,在登录页面正确输入用户名和密码后,进入操作系统进行操作;如图5-7所示:
图5-7管理员登录界面
管理员进入主页面,主要功能包括对系统首页、个人中心、用户管理、景点信息管理、景点类型管理、景点门票管理、在线反馈、系统管理等进行操作。管理员主界面如图5-8所示:
图5-8管理员主界面
管理员点击用户管理。在用户页面输入用户账号和姓名进行查询、新增或删除用户列表,并根据需要对用户详情信息进行详情、修改或删除操作;如图5-9所示:
图5-9用户管理界面
源码获取
大家点赞、收藏、关注 ,让更多需要的同学看到
不同开发语言专栏推荐订阅:
👇下方有我的微信名片👇