电商购物后台管理系统总结
1.项目简介
本项目为一套电商后台管理项目,目的是通过前端访问管理系统实现对商品及用户的管理。
- 项目采用前后端分离的方式制作,前端采用vue-cli的脚手架框架,利用element-ui对前端的操作界面按钮等进行美化,实现前端系统的显式与管理。
- 后端采用Spring Boot的web架构,利用spring、springMVC,mybatis-plus等基础结构来对业务进行分离实现。
- 后端数据库使用mysql进行储存,通过sqlyog可视化工具对数据库初始化设置管理等。通过父子id的设计等来关联数据表之中不同分级的数据信息,便于在业务中对数据库进行操作。
- 权限设计,数据管理模块待补充…
- 后期通过nginx来实现前后端代理以及上传的商品图片路径的代理,通过实现通过浏览器端访问来对购物后台进行管理。
2.系统模块
com.jt //后端框架[8091]
config-- //全局配置
controller-- //控制层
mapper-- //映射层
pojo-- //实体类的封装层
service //业务层
vo-- //结果返回类的封装层
jtadmin.components //前端vue框架[80]
items--
addItem-- //添加商品界面
Item-- //商品界面
ItemCat-- //商品分类界面
user-- //用户管理界面
Home-- //购物后台主页面
Login-- //登录界面
3.主要模块与功能
4.主要模块说明
- 用户登录模块
- 前端校验–校验用户名与密码是否为空,不为空登录时向后端发起ajax请求(post)。
- 后端校验–后端现将其密码进行MD5加密处理,然后从数据库进行查询验证,生成系统的uuid码返回作为用户标识token,来判断页面刷新时是否需要重新登陆。
- 用户管理模块
- 用户查询–查询用户信息并进行分页展示,使用mybatisPlus的插件来进行分页定义,动态sql来拼接where like模糊查询,若模糊查询为空则不进行拼接。
- 用户新增–使用insert方式实现用户新增,将用户设置的密码进行MD5加密处理后存入数据库,状态权限初始化为true。
- 用户修改–通过将修改信息回显,通过id值来定位用户信息然后进行修改update更新修改。
- 用户删除–通过ID删除,删除时提醒用户确认。
- 状态修改–传入修改后status的值,然后通过id来定位用户信息进行修改。
- 商品管理模块
- 商品列表
- 商品查询–同上,动态sql拼接模糊查询语句。
- 商品新增–关键点为商品图片文件的上传与回显。通过inputStream来读取文件,然后为防止重名将其通过uuid命名为文件名,拼接文件格式进而将其通过transferTo来将文件保存在目标路径中。回显通过虚拟路径通过nginx代理转接到本地路径进而回显照片。
- 商品修改–根据id来修改商品信息,注意价格在数据库中使用Integer类型,显示给用户要除以100为正确价格,修改保存注意转化。
- 商品删除–通过id删除,删除为两张中的信息,一张为商品表中信息,一张为商品详情表中的信息。
- 商品状态–传入修改后status的值,然后通过id来定位商品信息进行修改。
- 商品分类
- 商品分类三级列表展示–
- 首先将所有的分类信息查询出来封装进map中,key值为Integer类型的parent_id,value值为List集合,集合中包含所有的父id相同的ItemCat对象。(这样封装的好处时后面使用不必再进行访问数据库,减轻了数据库压力,提高了效率;再者,使用父id作为key值也便于使用与调用)
- 然后对一级集合进行遍历获取二级列表的父id,将二级分类集合封装为一级分类的子集保存在一级列表中。这样就获取到了一二级的信息。
- 通过二级集合的循环遍历来获取三级列表的父id,查询中三级分类信息将其作为子集封装到二级的子集中。这时获取到了一二三级的分类信息
- 商品分类新增–通过对象的封装进行post传输给后端,通过insert来添加信息。
- 商品分类修改–通过ID来修改信息,便捷高效。
- 商品分类删除–删除高级的分类信息,其子级模块会自动全部删除,核心SQL语句为通过二级分类的父id与id来关联一级与三级分类,进而使用in来删除所包含的id与parent_id的全部信息。
- 商品分类三级列表展示–
- 商品列表
- 权限管理模块(待做)
- 数据统计模块(待做)