nodejs购物商城系统python-flask-django-php

本文详细描述了一种通过软件工程方法,结合互联网技术,特别是使用nodejs、vue和Express框架,设计并实现的购物商城系统。系统涵盖了用户管理、商品管理、订单管理等功能,并强调了需求分析、系统测试和用户体验的重要性。
摘要由CSDN通过智能技术生成

对购物商城管理的流程进行科学整理、归纳和功能的精简,通过软件工程的研究方法,结合当下流行的互联网技术,最终设计并实现了一个简单、易操作的购物商城系统。内容包括系统的设计思路、系统模块和实现方法。系统使用过程主要涉及到管理员和用户两种角色,主要包含个人中心、用户管理、商品类别管理、热卖商品管理、投诉建议、系统管理、订单管理等功能。
前端技术: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.2系统研究现状 1
1.3研究意义 2
第二章 系统开发技术 3
2.1 nodejs语言 3
2.2 express框架简介 3
2.3 MySQL数据库技术 4
第三章 需求分析 6
3.1需求描述 6
3.2系统角色需求分析 6
3.3系统功能需求分析 6
3.4非功能性需求分析 7
3.4.1 先进性 8
3.4.2安全性 8
3.4.3易用性 8
3.4.4可扩展性 8
3.4.5可修改性 8
3.5系统流程分析 8
3.5.1登录流程 8
3.5.2添加信息流程 9
3.5.3删除流程 9
3.6本章小结 10
第四章 系统设计 11
4.1系统总体设计 11
4.2数据库设计 11
4.2.1数据库逻辑设计 12
4.2.2数据库表设计 14
4.3本章小结 21
第五章 详细设计与实现 22
5.1系统功能实现 22
5.2后台模块实现 24
5.2.1管理员模块实现 24
5.2.2用户模块实现 28
5.3本章小结 28
第六章 系统测试 29
6.1测试目的 29
6.2测试用例 29
6.3本章小结 30
结 论 31
参考文献 32
致 谢 33

第一章 绪 论
1.1研究背景
近年来互联网技术飞速发展,给人们的生活带来了极大便利,也改变人们的生活生产方式,互联网拥有存储量大、可靠性高、使用方便等不可替代的优点,也正在逐步取代传统的信息管理模式[1]。由代码编程实现的各种管理工具和系统替代传统的人工操作,不但提升了可靠性还降低了人力成本,节省了时间,提升了工作效率。全球视域下信息技术逐步渗透到各个领域,多样化的数据信息为购物商城管理带来了深刻变革,打破了传统的方式与载体,购物商城管理的事务性工作面临新形势和新挑战[2]。
计算机技术快速发展的同时也促进信息化发展,新型购物商城管理模式也正逐步推进,推动其信息化发展可以为其改革、进步提供保障。信息技术的改革已成为必然方向,管理人员应该抓住时代的机遇,与时俱进[3]。通过这种方式可以提升购物商城管理工作的效率,促进新举措的实施,加速改革进程,改善管理服务能力。
购物商城系统作为信息化建设的重要一环,购物商城系统的开发与实现,能够使购物商城的管理工作开展得更加有序。
1.2系统研究现状
我国信息技术虽然起步较晚,但发展速度迅猛,如今已经跻身世界信息大国的行列。现在我们的生活离不开信息技术,人们可以利用计算机、互联网进行网上购物、视频学习、互动交流,信息技术已经渗透到我们的生活中,随着计算机技术、网络技术的迅速发展,研究并实现购物商城系统是现代理论和科学技术相结合的产物[4]。国内信息化发展趋势越来越快,我国信息化建设也随之迅速发展,通过信息系统对大量复杂数据进行管理代替传统人工管理,很大程度的提升管理效率。目前购物商城系统基本实现了应用网络进行管理,使用各种技术、实现各种不同附加功能的系统数量众多。但随着近年来互联网技术的不断完善和更新,一些不适应当代信息化发展的技术正在被淘汰,而采用老旧技术实现的系统将出现维护困难的境况。因此符合现在社会发展的系统开发十分必要,购物商城系统的设计和开发仍然有很大的进步空间。
国外部分发达国家的信息技术起步较早,以技术为基础引领的各行各业的变革产生时间也较早。信息化的理念由世界知名的美国麻省理工学院提出,接下来的三四十年随着网络技术的飞速发展,终于在全美形成了一系列非常完善成熟的信息化平台,自此美国国内大部分都实现了管理信息化[5]。虽然制度存在不同,但由于美国信息化管理的起步时间早,积累经验多,有关购物商城系统的研究技术经验仍然值得世界学习。
1.3研究意义
各行各业对互联网的运用正经历着质变,从技术支撑者的技术建构与技术运用转向产业需要为起点,通过重新构建购物商城系统,实现制度上的发展变革[7]。本文将设计一个根据整理、归纳后进行精简的购物商城系统。使用采取稳定、可靠且易于维护的开发技术进行系统的实现。系统可以直观、高效、便捷地实现对购物商城进行管理,使工作人员有针对地安排和管理购物商城,建立统一的购物商城系统。
第三章 需求分析
在软件的命周期中,需求分析是其中关键的一环。需求分析过程中不仅要对系统应该实现的功能提出准确和完善的请求,还要考虑需求的可行性。需求分析对设计和实现一个系统具有决定性的重大意义[11]。只有充分完整的需求分析才能为后续的系统开发过程和实现成果奠定基础。
3.1需求描述
根据日常实际需要,一方面需要在系统中实现基础信息的管理,同时还需要结合实际情况的需要,提供购物商城功能,方便购物商城管理工作的展开,综合考虑,本套系统应该满足如下要求:
首先,在系统中需要实现对基础信息,包括登录注册、个人信息修改等信息的管理,这些是系统的基础信息,和系统中其他内容密切相关。
然后,系统中需要实现对用户信息的管理,允许管理员对用户信息进行必要的设置,同时要避免管理员对个人信息进行操作,保障用户的信息安全。
3.2系统角色需求分析
综合购物商城管理经历和对网上信息归纳整理的结果,在实际应用中,将用户分为两种:管理员和用户两个角色。其中用户可以操作的内容是有限的,管理员可以进行的操作最多。了解系统用户的分类以及可以进行的操作,对于接下来实现相关的功能具有重要的意义。
 图3-3用户用例图
3.4非功能性需求分析
在系统的需求分析中除了保证系统功能需求分析准确完整,还应考虑与其相辅相成的各种其他因素,这样才能确保系统后续设计能够更加完善、清晰,确保系统实现后的有较高的使用价值。
3.4.1 先进性
为保证系统的先进性开发过程中应尽量使用先进的软件开发技术、设计方法、体系架构,符合当下的应用需求和保证性能可靠。
3.4.2安全性
本系统中涉及两种用户角色,根据用户角色类型合理划分其页面访问权限。系统允许管理员对用户进行必要的设置,同时要避免管理员对个人重要信息进行操作,保障用户的信息安全。
3.4.3易用性
系统使用方便、界面友好是提高用户使用体验的重要因素。系统实现其主体功能同时,界面设计要简洁大方、使用方便、美观清晰。系统的每一项反馈都要逻辑严密,弹窗信息也是简洁明了[12]。
3.4.4可扩展性
可扩展性要求软件的设计要留有可升级接口和升级空间,便于今后根据新的模式需求进行功能的拓展。
3.4.5可修改性
可修改性要求使用科学的方法设计软件,形成良好的结构和完备的文档[13]。它的前提要保证系统设计逻辑清晰,软件结构简单明了,代码编写过程中有良好的注释习惯,便于后续对系统性能进行调整。
3.5系统流程分析
3.5.1登录流程
每个用户都有专属的密码和账号,输入正确的用户名和密码之后即可进入系统。
 4.2.2数据库表设计
在关系数据E-R图中,分析并创建数据表,数据表用来记录信息,数据表关系由多个数据表组成,下面介绍的是数据表各个字段信息如下表所示。
表4-1:投诉建议
字段名称 类型 长度 字段说明 主键 默认值
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-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 用户账号
mima varchar 200 密码
yonghuxingming varchar 200 用户姓名
zhaopian longtext 4294967295 照片
xingbie varchar 200 性别
youxiang varchar 200 邮箱
lianxifangshi varchar 200 联系方式
dizhi varchar 200 地址
money float 余额 0
vip varchar 200 是否会员 否

表4-5:在线客服
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
adminid bigint 管理员id
ask longtext 4294967295 提问
reply longtext 4294967295 回复
isreply int 是否回复

表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
tablename varchar 200 商品表名 remaishangpin
userid bigint 用户id
goodid bigint 商品id
goodname varchar 200 商品名称
picture longtext 4294967295 图片
buynumber int 购买数量
price float 单价
discountprice float 会员价
goodtype varchar 200 商品类型

表4-8:关于我们
字段名称 类型 长度 字段说明 主键 默认值
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-9:地址
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
address varchar 200 地址
name varchar 200 收货人
phone varchar 200 电话
isdefault varchar 200 是否默认地址[是/否]

表4-10:收藏表
字段名称 类型 长度 字段说明 主键 默认值
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-11:商品类别
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
shangpinleibie varchar 200 商品类别

表4-12:热卖商品
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
shangpinbianhao varchar 200 商品编号
shangpinmingcheng varchar 200 商品名称
fengmian longtext 4294967295 封面
shangpinleibie varchar 200 商品类别
pinpai varchar 200 品牌
guige varchar 200 规格
shangpinxiangqing longtext 4294967295 商品详情
onelimittimes int 单限
alllimittimes int 库存
thumbsupnum int 赞 0
crazilynum int 踩 0
clicktime datetime 最近点击时间
clicknum int 点击次数 0
price float 价格
vipprice float 会员价 -1

表4-13:订单
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
orderid varchar 200 订单编号
tablename varchar 200 商品表名 remaishangpin
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-14:优惠资讯
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture longtext 4294967295 图片
content longtext 4294967295 内容

4.3本章小结
这一章着重介绍了整个系统的设计流程。确定了系统的功能结构,并在此基础上完成了数据库的设计。

第五章 详细设计与实现
5.1系统功能实现
当人们打开系统的网址后,首先看到的就是首页界面。在这里,人们能够看到系统的导航条,通过导航条导航进入各功能展示页面进行操作。
 第六章 系统测试
6.1测试目的
在购物商城系统正式投入使用前,我们可以通过对购物商城系统的检测,找出其中的问题和不足,并对其进行进一步的修正与完善,从而提高系统的优化水平和整体性能。系统测试是软件开发的必经之路,为系统实现的完整性、系统性能的可靠性提供保障。系统测试主要包括两种方法,一种是检查软件的每一个功能是否能够正常使用的黑盒测试,另一种检测软件编码过程中错误的白盒测试。
首先,本系统采用了白盒测试技术,对代码中出现的问题进行了修正,提高了代码的准确度。由于黑盒测试中使用了大量的测试用例,以下将列举一些主要的黑盒测试用例。
6.2测试用例
(1)登录测试
登录功能是用户进入系统的校验窗口,其中需要填写的信息包括用户账号和用户密码,下面将根据此功能设计具体测试用例来验证登录功能的实现与否。具体测试用例见表6-1。

表6-1 登录功能测试用例
用例序号 用例描述 测试步骤 期望输出 测试结果
Test_01 页面展示 浏览器输入登录地址 进入登录页面 成功
Test_02 账号非空检验 账号为空,点击“登录”按钮 提示“用户账号必须输入” 成功
Test_03 账号存在性检验 输入不存在的账号 提示“输入的账号不存在” 成功
Test_04 密码非空检验 输入正确的账号,密码为空 提示“用户密码必须输入” 成功
Test_05 密码正确性检验 输入正确的账号和不正确的密码 提示“输入的密码错误” 成功
Test_06 登录成功检验 输入正确的账号和密码 登录成功,进入首页 成功

(2)修改密码测试
更改密码功能需要用户输入原始密码、修改后的密码、修改后的确认密码,方可更换密码。具体测试用例见表6-2。
表6-2 修改密码测试用例
用例序号 用例描述 测试步骤 期望输出 测试结果
Test_01 页面跳转 点击“密码修改”按钮 进入密码修改页面 成功
Test_02 原始密码非空检验 原始密码为空,点击“提交”按钮 提示“原始密码必须输入” 成功
Test_03 原始密码正确性检验 输入错误原始密码 提示“原始密码输入错误” 成功
Test_04 修改密码非空检验 输入正确的原始密码,修改密码为空,点击“提交”按钮 提示“修改密码必须输入” 成功
Test_05 确认密码非空检验 输入正确的原始密码,修改密码非空,确认密码为空,点击“提交”按钮 提示“确认密码必须输入” 成功
Test_06 两次新密码输入一致性检验 输入正确的原始密码,修改密码非空,确认密码与修改密码不一致,点击“提交”按钮 提示“两次密码输入不一致” 成功
Test_07 修改成功检验 输入正确的原始密码,修改密码非空,确认密码与修改密码一致,点击“提交”按钮 提示“处理成功” 成功

6.3本章小结
本章主要内容为系统测试,列举部分黑盒测试的测试用例。结果发现系统基本实现了设计需求的大部分功能,未发现系统运行过程中出现异常,数据加载符合最初设想,系统测试通过,基本实现初始的设计目的。

结 论
本文介绍了一个使用方便,界面清晰的购物商城系统的设计与实现。本系统已经实现了对个人中心、用户管理、商品类别管理、热卖商品管理、投诉建议、系统管理、订单管理等功能的综合管理,可以充分满足购物商城管理各方面的需求。系统为购物商城管理工作节省了精力和时间,简化了在管理过程中重要环节的管理难度,丰富了购物商城信息化的建设,符合信息时代的发展趋势。存储在系统中的数据也将对未来购物商城管理制度的发展提供数据支撑。
本文实现的系统具有功能实用、界面简单清晰、操作简单、安全稳定的优点。在设计实现上本系统采用了nodejs语言和express框架进行开发,提升了开发效率、同时也保障了后续维护,易于扩展。使用MySQL轻量级数据库大幅度提升查询性能。
该系统只考虑了一些简单的购物商城管理的基本构成,缺乏对设计的深入研究和思考。随着网络技术的迅猛发展和新型购物商城管理制度的逐步完善,不久将可以形成稳定优质的购物商城管理模式。这时对系统的要求也将越来越高,这要求我们不断探索新的需求,开发新的技术,与时俱进,实现更完善更智能的购物商城系统。
致 谢
首先感谢我的母校对我的培养!
回首四年大学时光,在校园中首先要感谢我的老师们。他们有的风趣幽默、有的严肃认真;有的擅长研究,经常给我们发一些专业相关的文章和好的项目例子,融会贯通,结合自己的实际开发经验授课;有的讲课内容深入浅出,精心研究课程讲解的顺序安排,把抽象和复杂的知识讲解的清晰明了,让我能够紧跟课堂的内容。他们的共同点是都认真负责,除了传授知识还关注我们思想上的问题,言传身教。我常常感受到他们对国家、对专业的热爱还有对社会的责任意识。同时还常常关心我们的未来,课余时间经常跟我们进行交流,乐于分享自己的看法经验。因此在大学四年的学习生活中,虽然没有做到希望中的成为一个精通专业知识的优秀开发者,但是也对筑牢我的计算机基础起到十分重要的影响。在这里特别要向我的论文指导老师提出感谢!不但使我对数据库知识的认识更加全面深入,尤其在最后的课程设计阶段给与我作品鼓励和支持,让我一直铭记在心,坚定了我在这条路上走下去的信心。同时在此次毕业设计和论文撰写中也对我进行悉心指导和帮助。
最后感谢还要家人对我的支持和有朋友对我的鼓励帮助。感谢挚友长久以来对我的陪伴和关心,希望我们未来能够在各自的道路上找到自己的热爱,一直都有目标有希望有彼此的陪伴和支持。知易行难,计算机是一门注重实践的学科,我知道自己在实践动手方面做的远远不够,希望未来自己能够更多地锻炼。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值