数据要被工作人员通过界面操作传输至数据库中。通过研究,以MySQL为后端数据库,以IDEA为开发平台,采用nodejs架构,建立以个人中心、用户管理、商品分类管理、商品信息管理、仓储信息管理、系统管理、订单管理等必要功能的、稳定的无人智慧超市管理系统。
前端技术:nodejs+vue+elementui,
Express 框架于Node运行环境的Web框架,
语言 node.js
框架:Express
前端:Vue.js
数据库:mysql
数据库工具:Navicat
开发软件:VScode
视图层其实质就是vue页面,通过编写vue页面从而展示在浏览器中,编写完成的vue页面要能够和控制器类进行交互,从而使得用户在点击网页进行操作时能够正常。
代码结构讲解
1、 node_modules文件夹(有npn install产生)
这文件夹就是在创建完项目后,cd到项目目录执行npm install后生成的文件夹,下载了项目需要的依赖项。
2、package.json文件
此文件是项目的配置文件(可定义应用程序名,版本,依赖项等等)。node_modules文件夹下的依赖项是从哪里知道的呢?原因就是项目根目录下的这个package.json文件,执行npm install时会去找此文件中的dependencies,并安装指定的依赖项。
3、public文件夹(包含images、javascripts、stylesheets)
这个文件夹做过Web开发的应该一看就知道,为了存放图片、脚本、样式等文件的。
4、routes文件夹
用于存放路由文件。
5、views文件夹
存放视图。
随着互联网时代的发展,传统的线下管理技术已无法高效、便捷的管理信息。为了迎合时代需求,优化管理效率,各种各样的管理系统应运而生,国家在环境要求不断提高的前提下,无人智慧超市管理系统建设也逐渐进入了信息化时代。
这个系统的设计主要包括前端展示界面和方便管理员互动的后端数据库,要求系统需要良好的数据处理能力、友好的界面和易用的功能。目 录
1 概 述 1
1.1 课题研究背景 1
1.2 课题研究意义 1
1.3 课题研究内容 2
2 系统开发技术 3
2.1 nodejs技术 3
2.2 express框架 3
2.3 MySQL数据库 4
3 系统需求分析 6
3.1 可行性分析 6
3.2 功能需求分析 7
3.3 系统流程分析 8
3.3.1系统开发流程图: 8
3.3.2管理员模块总体流程图: 9
3.3.3无人智慧超市流程图: 9
4 系统设计 11
4.1 功能模块设计 11
4.2 系统数据库设计 12
4.2.1 数据库系统 12
4.2.2 数据库概念设计 12
4.2.3 数据表设计 14
4.2.4 数据表的建立 14
5 系统实现 24
5.1系统功能实现 24
5.2后台管理员模块实现 25
6 系统测试 30
6.1 测试的目的和目标 30
6.2 测试内容 30
6.2.1登录测试 30
6.2.2信息修改测试 31
6.3 测试评价 32
结 论 33
致 谢 34
参 考 文 献 35
1 概 述
v1.1 课题研究背景
近年来,由于计算机技术和互联网技术的快速发展,使得所有企事业单位内部都是数字化、信息化、无纸化的发展趋势,随着趋势的发展,各种决策系统、辅助系统也应运而生,其中无人智慧超市管理系统就是其中的重要组成部分。
无人智慧超市管理是不可或缺的一部分,然而多年以来工作者大都习惯使用传统方法,即人工来完成无人智慧超市的管理,但是这种方法存在着工作效率低以及保密性差的问题,同时还会生成大量的文本和数据,在检索数据时极大不便。随着科技发展进步,我们已进入了信息化社会,仅仅依靠传统的表格管理方式已不能适应时代的要求。因此使用计算机来进行接手传统方式的无人智慧超市已经势在必行。
通过计算机技术来实现的无人智慧超市管理系统拥有对信息的快速检索、保存了大量的无人智慧超市信息、信息系统保存的稳定性高和维护成本低等优点,对无人智慧超市的工作效率也能提高。如今,传统的人工管理方法、文件和图表打印等信息传输方法已经不能满足当下的发展需求,计算机科学与互联网技术的蓬勃发展,颠覆了人们的生活以及思维方式。无人智慧超市管理系统的出现,利用信息技术将无人智慧超市融于其中,成为提高管理水平的有利手段,将会成为未来无人智慧超市的新模式。
4.2.3 数据表设计
本设计根据数据表管理系统的具体流程进行管理,方便用户对数据的添加、删除、修改和查询等操作。
4.2.4 数据表的建立
系统采用Navicat Premium对数据库进行操作,数据库管理操作简单,数据处理能力强。数据表建立如下:
表4-1:订单
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
orderid varchar 200 订单编号
tablename varchar 200 商品表名 shangpinxinxi
userid bigint 用户id
goodid bigint 商品id
goodname varchar 200 商品名称
picture longtext 4294967295 商品图片
buynumber int 购买数量
price float 价格 0
discountprice float 折扣价格 0
total float 总价格 0
discounttotal float 折扣总价格 0
type int 支付类型 1
status varchar 200 状态
address varchar 200 地址
tel varchar 200 电话
consignee varchar 200 收货人
remark varchar 200 备注
logistics longtext 4294967295 物流
goodtype varchar 200 商品类型
表4-2:超市资讯
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture longtext 4294967295 图片
content longtext 4294967295 内容
表4-3:商品信息评论表
字段名称 类型 长度 字段说明 主键 默认值
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-4:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
name varchar 100 配置参数名称
value varchar 100 配置参数值
表4-5:购物车表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
tablename varchar 200 商品表名 shangpinxinxi
userid bigint 用户id
goodid bigint 商品id
goodname varchar 200 商品名称
picture longtext 4294967295 图片
buynumber int 购买数量
price float 单价
discountprice float 会员价
goodtype varchar 200 商品类型
表4-6:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP
表4-7:仓储信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
shangpinbianhao varchar 200 商品编号
shangpinmingcheng varchar 200 商品名称
shangpintupian longtext 4294967295 商品图片
shangpinfenlei varchar 200 商品分类
pinpai varchar 200 品牌
shengchanriqi date 生产日期
shengchanchangjia varchar 200 生产厂家
alllimittimes int 上架数量
表4-8:用户
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yonghuzhanghao varchar 200 用户账号
mima varchar 200 密码
yonghuxingming varchar 200 用户姓名
touxiang longtext 4294967295 头像
xingbie varchar 200 性别
nianling int 年龄
shouji varchar 200 手机
money float 余额 0
表4-9:token表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
userid bigint 用户id
username varchar 100 用户名
tablename varchar 100 表名
role varchar 100 角色
token varchar 200 密码
addtime timestamp 新增时间 CURRENT_TIMESTAMP
expiratedtime timestamp 过期时间 CURRENT_TIMESTAMP
表4-10:地址
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
address varchar 200 地址
name varchar 200 收货人
phone varchar 200 电话
isdefault varchar 200 是否默认地址[是/否]
表4-11:关于我们
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
subtitle varchar 200 副标题
content longtext 4294967295 内容
picture1 longtext 4294967295 图片1
picture2 longtext 4294967295 图片2
picture3 longtext 4294967295 图片3
表4-12:收藏表
字段名称 类型 长度 字段说明 主键 默认值
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-13:商品信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
shangpinbianhao varchar 200 商品编号
shangpinmingcheng varchar 200 商品名称
shangpintupian longtext 4294967295 商品图片
shangpinfenlei varchar 200 商品分类
pinpai varchar 200 品牌
shengchanriqi date 生产日期
onelimittimes int 单限
alllimittimes int 库存
thumbsupnum int 赞 0
crazilynum int 踩 0
clicktime datetime 最近点击时间
price float 价格
表4-14:商品分类
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
shangpinfenlei varchar 200 商品分类
5 系统实现
5.1系统功能实现
当人们打开系统的网址后,首先看到的就是首页界面。在这里,人们能够看到系统的导航条,通过导航条导航进入各功能展示页面进行操作。
v1.2 课题研究意义
在当下,办公自动化以一种迅速并不可阻挡的速度在慢慢遍布到社会的每一个角落中,而无人智慧超市管理系统正是办公自动化的一个小小分支,解决了传统无人智慧超市中繁杂且重复的操作,提高了工作的效率。
无人智慧超市管理系统对于管理人员进行管理来说是非常重要的,应该做到让管理人员进行快捷的信息查询以及对信息的处理功能。然而,以往并没有使用电子化管理来进行无人智慧超市工作的意识,还是使用传统的人工管理方法。如今,伴随着计算机科学的不断发展,互联网科技的日渐成熟,计算机所带来的种种优势已经逐渐为人们所认识,它已经应用在社会中的各个领域中并且越来越重要,利用计算机将无人智慧超市信息进行电子化、系统化的管理能将无人智慧超市的效率提上一个台阶。所以,开发一套无人智慧超市管理系统,将信息进行电子化、系统化的管理,代替了传统的人工管理方式,提升了工作效率。
无纸化办公,节省了时间,减少了纸张的浪费同时节约了成本。
加快了信息传输的过程,使无人智慧超市更规范和科学。
利用计算机处理速度快、信息存储量大的特点,将管理工作信息化,可以积累和管理大量的数据。
对数据进行有效并且集中的管理,实现了用户信息的共享,使管理工作可以从传统的人工管理中解放出来,提升了工作的效率,使其有更多的时间去完成更多的工作,来提高自身的业务素质。
1.3 课题研究内容
本系统结合现今主流管理系统的功能模块以及设计方式进行分析,使用nodejs语言和express框架进行开发设计,具体研究内容如下:
(1)管理员主要对个人中心、用户管理、商品分类管理、商品信息管理、仓储信息管理、系统管理、订单管理等功能进行管理。
(2)用户主要对首页、商品信息、超市资讯、购物车、个人中心等功能进行管理。
3 系统需求分析
需求分析在系统开发中有着十分重要的作用。软件项目凭借软件工程的思想和步骤可以大大的提高开发效率,缩短软件开发周期,保证了软件项目的质量。需求分析作为软件工程方法中的一步是至关重要的[6]。软件需求工程是一门分析并记录软件需求的学科。需求分析简单的来说就是用户需要什么,系统需要什么,对此进行问题的列举,等级的排列,需要缜密的思分析和大量的调研[7]。
3.1 可行性分析
根据无人智慧超市管理系统的功能,通过对经济可行性、技术可行性和法律可行性分析进行全面的分析,提供准确的可行性依据。以下是本系统的可行性分析:
(1)经济可行性
就是分析在现有经济情况下能否完成本无人智慧超市管理系统的开发。下面对本系统开发、运行、维护的相关费用评估,以及投入到实际运用中完成无人智慧超市可能费用进行估算。网络资源丰富,本无人智慧超市管理系统只需使用任选一开源服务器即可,此方面无需投入费用。开发阶段,由于本无人智慧超市管理系统不属于大型系统,常规的电脑就可完成开发,不用购置相关硬件设备。软件方面,本无人智慧超市管理系统只需使用网上免费下载的软件即可完成开发,这些软件在使用时简单易懂,无需培训,因此在开发方面也无需投入费用。由于本无人智慧超市管理系统不属于大型系统,运行时候电费可以忽略不记。无人智慧超市管理系统作为自己毕设,由本人开发即可完成,无需人力费用。综上,整个系统开发花费很少,所以本无人智慧超市管理系统在经济上可行。
(2)技术可行性
本系统的开发使用nodejs作为系统开发的开发语言,本系统的兼容性和多用户可操作性,此外选择MySql作为数据库不仅提高了数据安全性更保障了数据的可操作性。
(3) 法律可行性分析
法律可行性分析,即分析本无人智慧超市管理系统是否与各类法律相悖。本无人智慧超市管理系统使用市面开源免费软件开发,且作为个人毕设,无商用,均为本人自主开发,并且页面设计合理,发布的信息要求符合常规。整个系统无抵触法律法规的问题。因此在法律上,本无人智慧超市管理系统可行。
3.2 功能需求分析
无人智慧超市管理系统综合网络空间开发设计要求。目的是将无人智慧超市通过网络平台将传统管理方式转换为在网上管理,完成无人智慧超市的方便快捷、安全性高障,目标明确。无人智慧超市管理系统可以将功能划分为管理员的使用功能和用户使用的功能。
6.1 测试的目的和目标
完成程序的代码编写不代表着开发设计工作全部完成。相反,为了使应用系统能够正常使用,必须对程序进行测试。测试的主要目的在于能够及时发现程序编写中的种种错误,通过设计好的测试用例来发现可能的错误,通过分析错误的位置以及其对程序其他部分的可能影响来判断程序设计中的主要漏洞和不足之处,并尽量用最短的时间予以改正,从而达到使得程序更完整、更完善、更接近最初设计开发初衷的目标。
基于此,在完成无人智慧超市管理系统的本应用的程序设计之后,对系统的测试就显得尤为必要。测试将采用测试用例的方式进行。测试用例是针对某一特定的软件系统进行性能测试的操作的描述,它的内容包括测试目标、环境、数据、步骤、预期、结果等等,最终的目的是用于核实开发出来的功能能否满足软件的特定需求。测试用例所包含有四个主要内容:用例标题、前置条件、测试步骤和预期结果。其中,用例标题主要描述测试软件的某项功能,前置条件顾名思义是指用例需要满足的条件,测试步骤主要描述用例的操作步骤,二预期结果指测试结果是否符合开发设计的预期要求。
本次测试将采用黑盒测试的方式进行。黑盒测试是着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。
6.2 测试内容
6.2.1登录测试
测试编号 1.1
测试用例 用户正确输入账号和密码,登录系统
测试条件 进入登陆界面,登录
测试过程 用户输入自己的账号
用户正确输入密码
用户点击登录按钮
期望结果 点击登录按钮后,进入系统,登录成功
实际结果 输入账号和密码后,点击登录,成功进入系统
结论 测试结果符合预期
测试编号 1.2
测试用例 用户正确输入账号,但输入错误的密码,登录系统
测试条件 进入登陆界面,登录
测试过程 用户输入自己的账号
用户输入错误的密码
用户点击登录按钮
期望结果 点击登录按钮后,因密码错误而无法正常登录
实际结果 输入账号和密码后,点击登录,提示账号或密码输入错误,重新输入
结论 测试结果符合预期
6.2.2信息修改测试
测试编号 2.1
测试用例 用户登陆系统,修改自己的个人信息
测试条件 正确登陆系统
测试过程 用户登陆系统
用户选择修改个人信息
用户修改至少一项个人信息并保存
期望结果 保存后信息正常显示
实际结果 用户修改的个人信息正常更新保存
结论 测试结果符合预期
测试编号 2.2
测试用例 用户登陆系统,修改商品信息信息
测试条件 正确登陆系统
测试过程 用户登陆系统
用户选择新增商品信息信息
用户详情填写商品信息信息
期望结果 保存后信息正常显示
实际结果 用户上传的信息正常更新保存
结论 测试结果符合预期
6.3 测试评价
经过上述测试,系统最基本的功能达到了预期目标。但由于缺乏编程经验,更深层次的功能可能仍然存在错误,需要在日后的进一步测试和维护中发现。
结 论
本文介绍了一个使用方便,界面清晰的无人智慧超市管理系统的设计与实现。本系统已经实现了对无人智慧超市信息的综合管理,系统为无人智慧超市节省了精力和时间,简化了无人智慧超市中重要环节的管理难度,丰富了信息化的建设,符合信息时代的发展趋势。存储在系统中的数据也将对未来无人智慧超市的发展提供数据支撑。
本文实现的系统具有功能实用、界面简单清晰、操作简单、安全稳定的优点。在设计实现上本系统采用了nodejs快速开发接口,提升了开发效率、同时也保障了后续维护,易于扩展。使用MySQL轻量级数据库大幅度提升查询性能。这时对系统的要求也将越来越高,这要求我们不断探索新的需求,开发新的技术,与时俱进,实现更完善更智能的无人智慧超市管理系统。
致 谢
本论文在导师的悉心指导下完成的。导师渊博的专业知识、严谨的治学态度,精益求精的工作作风,诲人不倦的高尚师德,严于律己、宽以待人的崇高风范,朴实无法、平易近人的人格魅力对本人影响深远。不仅使本人树立了远大的学习目标、掌握了基本的研究方法,还使本人明白了许多做人的道理。向用户学习是我一生的追求!在论文的写作过程中遇到了无数的困难和障碍,在同学和老师的帮助下度过了。在我做毕业设计这段时间里,我要感谢我的指导老师,从毕业设计开始选题到写论文期间,指导老师根据我的基础为我选定了这个课题,在这个程序的开发过程中,我遇到了很多困难,正是指导老师不断鼓励和指导下,我得以顺利完成这个课题的工作。这段时间,我的编程能力有了指导老师的指导,有了一个很大的提升。这为我以后的工作,打下了一个坚实的基础。指导老师的学习精神,也深深的影响到我,我要向指导老师学习,做一个终生学习,不断进步的人。
通过本次系统的设计与实现,我更加熟练运用nodejs语言编写程序,面对开发过程中出现的问题独立解决的能力也得到了提高,对express模式也有了更深的理解。对于前端的一些基础知识,布局,各种样式的设置也熟练的运用了许多。编程思想也得到了很大进步,以后如果遇到了问题,首先要自己思考,查资料,尽自己的全力解决问题,当自己实在解决不了的时候再去请教同学、老师,请求别人的帮助。本次毕业设计通过同学们的帮助,以及老师细心、耐心的指导,使自己的能力得到了一定的提高,项目功能也实现的比较完整。当然,我也得感谢这篇论文所涉及到的各位学者。本文引用各位学者的研究文献,如果没有各位学者的研究成果的帮助和启发,我将很难完成本篇论文的写作。感谢我的同学和我的朋友,在我写论文的过程中给予很多素材,并且在论文的撰写过程中提供热情的帮助。感谢我的母给我这次锻炼的机会,让我有机会认识到自己的不足并加以强化。由于我的学术水平有限,所写论文难免有不足之处,恳请各位老师和学友批评和指正。