系统管理也都将通过计算机进行整体智能化操作,对于动漫周边商城所牵扯的管理及数据保存都是非常多的,例如管理员:首页、个人中心、用户管理、卖家管理、商品分类管理、商品信息管理、订单通知管理、发货物资管理、论坛管理、系统管理、订单管理,卖家:首页、个人中心、商品信息管理、订单通知管理、发货物资管理,用户:首页、个人中心、我的收藏管理、订单管理,前台首页:首页、商品信息、论坛信息、促销活动、个人中心、后台管理、购物车、客服。这给管理者的工作带来了巨大的挑战,面对大量的信息,传统的管理系统,都是通过笔记的方式进行详细信息的统计,后来出现电脑,通过电脑输入软件将纸质的信息统计到电脑上,这种方式比较传统,而且想要统计数据信息比较麻烦,还受时间和空间的影响,所以为此开发了动漫周边商城为用户提供了方便管理平台,方便管理员查看及维护,并且可以通过需求进行商品信息内容的编辑及维护等:对于用户而言,可以随时进行查看商品信息和订单信息等信息,管理员可以足不出户就可以获取到系统的数据信息等,而且还能节省用户很多时间,所以开发动漫周边商城给管理者带来了很大的方便,同时也方便管理员对用户信息进行处理。
环境需要
1.运行环境:最好是java jdk 1.8,这是目前最稳定的JDK也是被使用最多的JDK版本。
2.IDE环境:IDEA,Eclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat7/Tomcat8/Tomcat9版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
5.数据库:MySql 5.7版本;
6.是否Maven项目:是;
技术栈
后端:Spring+SpringMVC+Mybatis+Springboot
前端:vue+CSS+JavaScript+jQuery+elementui
使用说明
使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
使用IDEA/Eclipse/MyEclipse导入项目,修改配置,运行项目;
将项目中applicationContext.xml配置文件中的数据库配置改为自己的配置,然后运行;
运行成功后,在浏览器中输入:http://localhost:8080/项目名
关于动漫周边商城的基本要求
1;管理员功能要求:可以管理首页、个人中心、用户管理、卖家管理、商品分类管理、商品信息管理、订单通知管理、发货物资管理、论坛管理、系统管理、订单管理等功能模块。
2;卖家功能要求:首页、个人中心、商品信息管理、订单通知管理、发货物资管理。
3;用户功能要求:首页、个人中心、我的收藏管理、订单管理。
前台首页功能模块
动漫周边商城,在系统首页可以查看首页、商品信息、论坛信息、促销活动、个人中心、后台管理、购物车、客服等内容登录、用户注册, 通过输入用户名、密码、姓名、年龄、性别、手机、邮箱、身份证等信息进行登录、注册商品信息,在商品信息进行填写商品编号、商品名称、商品类别、图片、店铺编号、店铺名称、积分、价格、单限、库存、审核回复、审核状态并进行立即购买等操作我的订单,在我的订单页面可以填写订单编号、商品、价格、数量、总价、地址等内容进行提交收货地址添加,在收货地址添加页面可以填写联系人、手机号码、默认地址、选择地址等内容进行添加管理员功能模块
管理员登录,通过填写用户名、密码、角色等信息,输入完成后选择登录即可进入动漫周边商城
管理员登录进入动漫周边商城可以查看首页、个人中心、用户管理、卖家管理、商品分类管理、商品信息管理、订单通知管理、发货物资管理、论坛管理、系统管理、订单管理等内容
用户管理,在用户管理页面可以查看用户名、密码、姓名、年龄、性别、手机、邮箱、身份证、积分等信息,并可根据需要对用户管理进行详情,修改,删除或查看详细内容等操作
卖家管理,在卖家管理页面可以查看店铺编号、密码、店铺名称、店铺头像、负责人、身份证、联系电话、店铺邮箱、地址、主要产品、积分等信息,并可根据需要对卖家管理进行详情,修改、删除或查看详细内容等操作
商品信息管理,在商品信息管理页面可以查看商品编号、商品名称、商品类别、图片、店铺编号、店铺名称、积分、价格、单限、库存、审核回复、审核状态、审核等信息,并可根据需要对商品信息管理进行详情,修改、删除或查看详细内容操作
发货物资管理,在发货物资管理页面可以查看店铺编号、店铺名称、商品名称、数量、收货地址、收货人姓名、联系电话、物流公司、物流单号等内容,并可根据需要对发货物资管理进行查看详情,修改,删除或查看详细内容等操作
论坛管理,在论坛管理页面可以查看帖子标题、用户名、状态等信息,并可根据需要对论坛管理进行详情,修改、删除或查看详细内容等操作
订单管理,在订单管理页面可以查看订单编号、商品名称、商品图片、购买数量、价格/积分、折扣价格、总价格/总积分、折扣总价格、支付类型、状态、地址等内容,并可根据需要对订单管理进行详情,修改,删除和查看详细内容等操作
用户功能模块
用户登录,用户通过填写用户名、密码、角色限等信息,输入完成后选择登录即可进入动漫周边商城
用户登录进入动漫周边商城可以查看首页、个人中心、我的收藏管理、订单管理等内容
我的收藏管理,在我的收藏管理页面可以查看收藏ID、表名、收藏名称、收藏图片等详细进行详情、删除
订单管理,在订单管理页面可以查看订单编号、商品名称、商品图片、购买数量、价格/积分、折扣价格、总价格/总积分、折扣总价格、支付类型、状态、地址等信息,并可根据需要对订单管理进行查看详细内容等操作
卖家功能模块
卖家登录,卖家通过填写用户名、密码、角色等信息,输入完成后选择登录即可进入动漫周边商城卖家登录进入动漫周边商城可以查看首页、个人中心、商品信息管理、订单通知管理、发货物资管理等内容商品信息管理,在商品信息管理页面通过填写商品编号、商品名称、商品类别、图片、店铺编号、店铺名称、积分、价格、单限、库存、审核回复、审核状态等信息,并可根据需要对商品信息管理信息进行详情、修改、删除发货物资管理,在发货物资管理页面通过填写店铺编号、店铺名称、商品名称、数量、收货地址、收货人姓名、联系电话、物流公司、物流单号等信息进行详情、删除`
/**
登录相关
*/
@RequestMapping(“users”)
@RestController
public class UserController{
@Autowired
private UserService userService;
@Autowired
private TokenService tokenService;
/**
登录
*/
@IgnoreAuth
@PostMapping(value = “/login”)
public R login(String username, String password, String captcha, HttpServletRequest request) {
UserEntity user = userService.selectOne(new EntityWrapper().eq(“username”, username));
if(user==null || !user.getPassword().equals(password)) {
return R.error(“账号或密码不正确”);
}
String token = tokenService.generateToken(user.getId(),username, “users”, user.getRole());
return R.ok().put(“token”, token);
}
/**
注册
*/
@IgnoreAuth
@PostMapping(value = “/register”)
public R register(@RequestBody UserEntity user){
// ValidatorUtils.validateEntity(user);
if(userService.selectOne(new EntityWrapper().eq(“username”, user.getUsername())) !=null) {
return R.error(“用户已存在”);
}
userService.insert(user);
return R.ok();
}
/**
退出
*/
@GetMapping(value = “logout”)
public R logout(HttpServletRequest request) {
request.getSession().invalidate();
return R.ok(“退出成功”);
}
/**
密码重置
*/
@IgnoreAuth
@RequestMapping(value = “/resetPass”)
public R resetPass(String username, HttpServletRequest request){
UserEntity user = userService.selectOne(new EntityWrapper().eq(“username”, username));
if(user==null) {
return R.error(“账号不存在”);
}
user.setPassword(“123456”);
userService.update(user,null);
return R.ok(“密码已重置为:123456”);
}
/**
列表
*/
@RequestMapping(“/page”)
public R page(@RequestParam Map<String, Object> params,UserEntity user){
EntityWrapper ew = new EntityWrapper();
PageUtils page = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));
return R.ok().put(“data”, page);
}
/**
列表
*/
@RequestMapping(“/list”)
public R list( UserEntity user){
EntityWrapper ew = new EntityWrapper();
ew.allEq(MPUtil.allEQMapPre( user, “user”));
return R.ok().put(“data”, userService.selectListView(ew));
}
/**
信息
*/
@RequestMapping(“/info/{id}”)
public R info(@PathVariable(“id”) String id){
UserEntity user = userService.selectById(id);
return R.ok().put(“data”, user);
}
/**
获取用户的session用户信息
*/
@RequestMapping(“/session”)
public R getCurrUser(HttpServletRequest request){
Long id = (Long)request.getSession().getAttribute(“userId”);
UserEntity user = userService.selectById(id);
return R.ok().put(“data”, user);
}
/**
保存
*/
@PostMapping(“/save”)
public R save(@RequestBody UserEntity user){
// ValidatorUtils.validateEntity(user);
if(userService.selectOne(new EntityWrapper().eq(“username”, user.getUsername())) !=null) {
return R.error(“用户已存在”);
}
userService.insert(user);
return R.ok();
}
/**
修改
*/
@RequestMapping(“/update”)
public R update(@RequestBody UserEntity user){
// ValidatorUtils.validateEntity(user);
userService.updateById(user);//全部更新
return R.ok();
}
/**
删除
*/
@RequestMapping(“/delete”)
public R delete(@RequestBody Long[] ids){
userService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
}
`
目录
1 绪论 1
1.1课题背景 1
1.2课题研究现状 1
1.3初步设计方法与实施方案 2
1.4本文研究内容 2
2 系统开发环境 4
2.1 使用工具简介 4
2.2 环境配置 4
2.3 B/S结构简介 4
2.4 MySQL数据库 5
2.5 框架介绍 5
3 系统分析 6
3.1系统可行性分析 6
3.1.1经济可行性 6
3.1.2技术可行性 6
3.1.3运行可行性 6
3.2系统现状分析 6
3.3功能需求分析 7
3.4系统设计规则与运行环境 8
3.5系统流程分析 8
3.5.1操作流程 8
3.5.2添加信息流程 9
3.5.3删除信息流程 10
4 系统设计 11
4.1系统设计主要功能 11
4.2数据库设计 11
4.2.1数据库设计规范 11
4.2.2 E/R图 11
4.2.3数据表 12
5 系统实现 25
5.1系统功能模块 25
5.2后台模块 27
5.2.1管理员功能模块 27
5.2.2用户功能模块 30
6 系统测试 33
6.1功能测试 33
6.2可用性测试 33
6.3性能测试 34
6.4测试结果分析 34
7结 论 35
参考文献 36
致 谢 37