源码获取:博客首页 "资源" 里下载!

主要模块设计如下:
前后端主要技术:Java springboot  springMVC  mybatis  mysql  vue  jquery  node.js redis

1) 用户注册和登录功能:。

2) 用户信息的管理以及角色的管理、不同用户角色具有不同的功能权限操作。 

3) 商品的操作、包括商品列表信息、商品的分离、商品的详情、品牌和规格等操作。

4) 购物车的管理操作:  

5) 订单管理操作:

6)用户退货管理

7)手机商品类型的管理

8)手机商品信息的预览、查看、搜索

9)修改密码、退出登录等功能

给大家截一部分效果图吧

系统首页:

加入购物车:

后台主要功能:

商品信息操作:

@CrossOrigin
@RestController
@RequestMapping("Good")
public class GoodController {@Autowiredprivate GoodServiceImp goodServiceImp;@GetMapping("/getGood")private GoodResult getGood(@RequestParam("pageIndex") int pageIndex,@RequestParam("pageSize") int pageSize,@RequestParam("name") String goodname) throws IOException {GoodResult goodResult = goodServiceImp.getGood(pageIndex,pageSize,goodname);return goodResult;}@GetMapping("/getGoodById")private GoodResult getGoodById(@RequestParam("category") int pageIndex,@RequestParam("pageSize") int pageSize) throws IOException {GoodResult goodResult = goodServiceImp.getGoodById(pageIndex,pageSize);return goodResult;}@RequestMapping("/getGoodByName")private GoodResult getGoodByName(@RequestParam("name") String goodname) throws IOException {GoodResult goodResult = goodServiceImp.getGoodByName(goodname);return goodResult;}@RequestMapping("/updGood")private GoodResult getGoodByName(@RequestParam("good_id") int goodid,@RequestParam("name") String goodname,@RequestParam("newhot") int newhot) throws IOException {GoodResult goodResult = goodServiceImp.updGood(goodid,goodname,newhot);return goodResult;}@GetMapping("/getGoodPicById")private GoodPicResult getGoodPicById(@RequestParam("category") int pageIndex,@RequestParam("pageSize") int pageSize) throws IOException {GoodPicResult goodpicResult = goodServiceImp.getGoodPic(pageIndex,pageSize);return goodpicResult;}@RequestMapping("/getGoodPicByName")private GoodPicResult getGoodPicByName(@RequestParam("name") String goodname) throws IOException {
//        int categor = Integer.parseInt(category);GoodPicResult goodResult = goodServiceImp.getGoodPicByName(goodname);return goodResult;}@PostMapping("/pushGood")private GoodPushResult pushGood(@RequestBody good good) throws IOException {GoodPushResult goodPushResult = goodServiceImp.getGoodPush(good);return goodPushResult;}@PostMapping("/delGood")private void delGood(@RequestBody good good) throws IOException {goodServiceImp.delGood(good);}@PostMapping("/delMulGood")private void delMulGood(@RequestBody List<good> goods) throws IOException {goodServiceImp.delMulGood(goods);}@GetMapping("/getGoodPic")private GoodPicResult getGoodPic(@RequestParam("pageIndex") int pageIndex,@RequestParam("pageSize") int pageSize) throws IOException {GoodPicResult goodPicResult = goodServiceImp.getGoodPic(pageIndex,pageSize);return goodPicResult;}@PostMapping("/updGoodPic")private void upGoodPic(@RequestBody GoodPic goodPic) throws IOException {int goodid= goodPic.getGood_id();String icon= goodPic.getIcon();String imageHead = goodPic.getImageHead();String imageFoot = goodPic.getImageFoot();goodServiceImp.updGoodPic(goodid,icon,1);goodServiceImp.updGoodPic(goodid,imageHead,2);goodServiceImp.updGoodPic(goodid,imageFoot,3);}
}

订单业务管理:

@CrossOrigin
@RestController
@RequestMapping("orders")
public class OrderController {@Autowiredprivate OrderServiceImp orderServiceImp;@Autowiredprivate RegLogServiceImp regLogServiceImp;@PostMapping("/createorder")public OrderResult createOrder(@RequestBody OrdCreaParm ordCreaParm) throws IOException {OrderResult orderResult = new OrderResult();orderResult.setStatus(0);OrderList orderList = orderServiceImp.creatOrder(ordCreaParm);orderResult.setData(orderList);return orderResult;}@RequestMapping("/getorderlist")public UserOrdListResult getUserOrdList(String username) throws IOException {UserOrdListResult userOrdListResult = new UserOrdListResult();User user = regLogServiceImp.getUserByUserName(username);String userid = user.getUserid();List<UserOrdList> orderList = orderServiceImp.getOrderList(userid);for(UserOrdList userOrdList:orderList){int orderNo = userOrdList.getOrderNo();List<UserOrdItemList> orderListItems = orderServiceImp.getOrderListItems(orderNo);userOrdList.setItems(orderListItems);}userOrdListResult.setStatus(0);userOrdListResult.setTotal(orderList.size());userOrdListResult.setList(orderList);return userOrdListResult;}//下单成功后调用下面两个方法@RequestMapping("/getorder")public OrdFinaResult getOrder(@RequestParam("id") int id) throws IOException{OrdFinaResult orderResult = new OrdFinaResult();orderResult.setStatus(0);OrdFina orderList = orderServiceImp.getOrderById(id);orderResult.setOrdFina(orderList);return orderResult;}@RequestMapping("/getorderdetail")public OrdFinaResult getOrderDetail(@RequestParam("username") String username) throws IOException{User user = regLogServiceImp.getUserByUserName(username);String userid = user.getUserid();List<orderItemVoList> orderItems = orderServiceImp.getOrderItems(userid);OrdFinaResult orderResult = new OrdFinaResult();orderResult.setStatus(0);orderResult.setLists(orderItems);return orderResult;}
}

注册登录验证:

@CrossOrigin
@RestController
@RequestMapping("login")
public class LogRegController {@Autowiredprivate RegLogServiceImp regLogServiceImp;//注册功能@RequestMapping("/getRegister")public RegResult Register(@RequestParam("username") String username,@RequestParam("email") String email,@RequestParam("password") String password,@RequestParam("phone") String phone) throws IOException, InvalidKeySpecException, NoSuchAlgorithmException {RegResult result = new RegResult();System.out.println(username.length());if(username.equals("") || email.equals("") || password.equals("") || phone.equals("")){result.setStatus(404);result.setMsg("填写信息不全");return result;}User user = regLogServiceImp.getUserByName(username);if (user != null) {result.setStatus(2002);result.setMsg("账号已存在,注册失败!");}else {String userid = UUID.randomUUID().toString();Map<String, String> keyMap = RSAUtils.createKeys(512);String  publicKey = keyMap.get("publicKey");String  privateKey = keyMap.get("privateKey");//公钥加密String encodedData = RSAUtils.publicEncrypt(password,RSAUtils.getPublicKey(publicKey));String date = DateUtil.ptfDate();regLogServiceImp.insertUser(userid,username,email,encodedData,phone,"可用",date,privateKey);result.setStatus(200);result.setMsg("注册成功!");}return result;}//登录验证@RequestMapping("/UserLogin")public LoginResult Login(@RequestParam("username") String username,@RequestParam("password") String password) throws IOException, InvalidKeySpecException, NoSuchAlgorithmException {User user = regLogServiceImp.getUserByUserName(username);LoginResult result = new LoginResult();LoginData loginData = new LoginData();if(user==null){result.setMsg("无此用户,请重新输入正确用户名");result.setStatus(2008);}else {if(RSAUtils.privateDecrypt(user.getPwd(), RSAUtils.getPrivateKey(user.getPrivatekey().trim())).equals(password)){result.setStatus(0);String token = TokenUtil.token(user.getUserid().trim());loginData.setToken(token);result.setMsg("登录成功");result.setData(loginData);}else {result.setStatus(2007);result.setMsg("密码错误");}}return result;}}

购物车业务操作:

@CrossOrigin
@RestController
@RequestMapping("carts")
public class CartController {@Autowiredprivate RegLogServiceImp regLogServiceImp;@Autowiredprivate GoodServiceImp goodServiceImp;@Autowiredprivate CartServiceImp cartServiceImp;@PostMapping("/push")public CartResult putShop(@RequestBody pushCart pushcart) throws IOException {CartResult cartResult = new CartResult();boolean success = TokenUtil.verify(pushcart.getToken());if (success) {cartResult.setStatus(0);User user = regLogServiceImp.getUserByUserName(pushcart.getUsername().trim());String userid = user.getUserid();CartGood cartGood = goodServiceImp.getGoodByid(userid, pushcart.getProductId());if (cartGood == null) {int goodcount = 1;CartGoodInsert goodByidinsert = goodServiceImp.getGoodByidinsert(pushcart.getProductId());goodServiceImp.insCartGood(userid, pushcart.getProductId(), goodByidinsert.getName(),goodByidinsert.getPrice(), goodcount, goodByidinsert.getSubtitle(), goodByidinsert.getProductStock(),goodByidinsert.getStatus(), true);} else {goodServiceImp.updateCartGood(userid, cartGood.getCount() + 1, pushcart.getProductId(), (cartGood.getCount() + 1) * cartGood.getPrice());}cartProductVoList cartProductVoList = cartServiceImp.getCartProduct(userid);int cartTotalPrice = 0;boolean selectedAll = true;int cartTotalQuantity = 0;for (cartProduct cartProduct : cartProductVoList.getList()) {cartTotalPrice += cartProduct.getProductTotalPrice();if (!cartProduct.isProductSelected()) {selectedAll = false;}cartTotalQuantity += cartProduct.getCount();}cartResult.setStatus(0);cartResult.setCartTotalPrice(cartTotalPrice);cartResult.setCartTotalQuantity(cartTotalQuantity);cartResult.setData(cartProductVoList);cartResult.setImageHost("www.mi.com");cartResult.setSelectedAll(selectedAll);} else {cartResult.setStatus(10);}return cartResult;}@GetMapping("/sum")public CartResult getCartSum(@RequestParam("username") String username) throws IOException {CartResult cartResult = new CartResult();User user = regLogServiceImp.getUserByUserName(username);String userid = user.getUserid();cartProductVoList cartProductVoList = cartServiceImp.getCartProduct(userid);if(cartProductVoList==null){cartResult.setStatus(0);cartResult.setCartTotalQuantity(0);}else {int cartTotalQuantity=0;for(cartProduct cartProduct:cartProductVoList.getList()){cartTotalQuantity+=cartProduct.getCount();}cartResult.setStatus(0);cartResult.setCartTotalQuantity(cartTotalQuantity);}return cartResult;}@RequestMapping("/del")public CartResult delCarts(@RequestParam("id") int goodid,@RequestParam("username") String username) throws IOException {User user = regLogServiceImp.getUserByUserName(username);String userid = user.getUserid();goodServiceImp.delGoodByid(userid,goodid);CartResult cartResult = getCarts(username);return cartResult;}@RequestMapping("/getcarts")public CartResult getCarts (@RequestParam("username") String username) throws IOException {CartResult cartResult = new CartResult();User user = regLogServiceImp.getUserByUserName(username);String userid = user.getUserid();cartProductVoList cartProductVoList = cartServiceImp.getCartProduct(userid);if(cartProductVoList==null){cartResult.setStatus(0);cartResult.setCartTotalQuantity(0);cartResult.setSelectedAll(false);cartResult.setImageHost("www.mi.com");cartResult.setCartTotalQuantity(0);}else {int carttotalPrice=0;boolean selectedall=true;int carttotalQuantity=0;for(cartProduct cartProduct:cartProductVoList.getList()){if(cartProduct.isProductSelected())carttotalPrice+=cartProduct.getProductTotalPrice();if(!cartProduct.isProductSelected()){selectedall=false;}carttotalQuantity+=cartProduct.getCount();}cartResult.setStatus(0);cartResult.setCartTotalPrice(carttotalPrice);cartResult.setCartTotalQuantity(carttotalQuantity);cartResult.setData(cartProductVoList);cartResult.setImageHost("www.mi.com");cartResult.setSelectedAll(selectedall);}return cartResult;}@GetMapping("/updatecart")public CartResult getCarts (@RequestParam("goodid") int  goodid,@RequestParam("username") String username,@RequestParam("quantity") int count,@RequestParam("selected") boolean selected) throws IOException {User user = regLogServiceImp.getUserByUserName(username);String userid = user.getUserid();CartGood goodByid = goodServiceImp.getGoodByid(userid, goodid);goodServiceImp.updaCartNumSel(userid,goodid,count,selected,goodByid.getPrice()*count);CartResult carts = getCarts(username);return carts;}@GetMapping("/selectAll")public CartResult SelectAllCart(@RequestParam("username") String username) throws IOException {User user = regLogServiceImp.getUserByUserName(username);String userid = user.getUserid();goodServiceImp.updaCartSelect(userid);CartResult cartResult = getCarts(username);return cartResult;}@GetMapping("/unSelectAll")public CartResult unSelectAllCart(@RequestParam("username") String username) throws IOException {User user = regLogServiceImp.getUserByUserName(username);String userid = user.getUserid();goodServiceImp.updaCartunSelect(userid);CartResult cartResult = getCarts(username);cartResult.setCartTotalQuantity(0);cartResult.setCartTotalPrice(0);return cartResult;}
}

源码获取:博客首页 "资源" 里下载!

Java项目:前后端分离网上手机商城平台系统设计和实现(java+vue+redis+springboot+mysql+ssm)相关推荐

  1. 基于javaweb的前后端分离网上手机商城平台系统设计和实现(java+vue+redis+springboot+mysql+ssm)

    基于javaweb的前后端分离网上手机商城平台系统设计和实现(java+vue+redis+springboot+mysql+ssm) 运行环境 Java≥8.MySQL≥5.7.Node.js≥10 ...

  2. Java Springboot+VUE前后端分离网上手机商城平台系统设计和实现以及论文报告

  3. Java项目:前后端分离疫情防疫平台设计和实现(java+springmvc+VUE+node.js+mybatis+mysql+springboot+redis+jsp)

    源码获取:博客首页 "资源" 里下载! 主要技术:Java.springmvc.VUE.node.js.mybatis.mysql.tomcat.jquery.layui.boot ...

  4. java毕业设计前后端分离健身房管理系统源码+lw文档+mybatis+系统+mysql数据库+调试

    java毕业设计前后端分离健身房管理系统源码+lw文档+mybatis+系统+mysql数据库+调试 java毕业设计前后端分离健身房管理系统源码+lw文档+mybatis+系统+mysql数据库+调 ...

  5. 基于SpringBoot+Vue前后端分离的在线教育平台项目

    基于SpringBoot+Vue前后端分离的在线教育平台项目 赠给有缘人,希望能帮助到你!也请不要吝惜你的大拇指,你的Star.点赞将是对我最大的鼓励与支持! 开源传送门: 后台:Gitee | Gi ...

  6. 计算机毕业设计-springboot企业考勤管理系统(前后端分离)员工考勤管理系统-公司日常管理系统java代码

    计算机毕业设计-springboot企业考勤管理系统(前后端分离)员工考勤管理系统-公司日常管理系统java代码 注意:该项目只展示部分功能,如需了解,联系咨询即可. 作者:IT跃迁谷 1.开发环境 ...

  7. 基于vue springboot的前后端分离的化妆品商城

    基于vue springboot的前后端分离的化妆品商城 技术介绍 后端: springboot mybatis ORM框架 mysql数据库 redis分布式缓存 Druid数据库连接池 前端: V ...

  8. Java项目:网上电商项目(前后端分离+java+vue+Springboot+ssm+mysql+maven+redis)

    源码获取:博客首页 "资源" 里下载! 一.项目简述 本系统功能包括: 一款基于Springboot+Vue的电商项目,前后端分离项目,前台后台都有,前台商品展示购买,购物车分类, ...

  9. Java Web前后端分离项目—后端servlet实例

    关与作者更多博客请访问云里云外开源社区 文章目录 一.闲谈 二.json字符串的接受和发送 json的发送 json的接收 三.内网穿透或服务上云服务器 四.跨域 背景(为什么) 如何跨域 五.对接出 ...

最新文章

  1. Flex Timer 定时器
  2. 单节点部署Hadoop教程
  3. Spring Security 玩出花!两种方式 DIY 登录
  4. Imagelist 控件
  5. Linux多网卡不通网段,[转载]linux环境下,双网卡配置不同网段后,路由问题
  6. android 地图放大缩小按钮,Android 百度最新地图隐藏 放大缩小按钮、指南针、缩放比例的方法...
  7. QT与VS环境下代码文件编码格式使用utf-8与带BOM的utf-8的差异
  8. python shelve模块_python中的Shelve模块不工作:“无法确定db type”
  9. 用C语言实现“电子词典”项目
  10. php中的图片变名为8位用什么,CSS_详解PNG图片,1、PNG图片类型 PNG格式有8位、 - phpStudy...
  11. 物联网平台搭建的全过程介绍(一)——物联网简介
  12. 【汇智学堂】基于Socket+面向对象实现的网络聊天
  13. 食疗肠易激综合征 心脏神经官能症
  14. LeetCode-276. 栅栏涂色
  15. 输入netsh winsock reset 重启电脑生效
  16. 计算机一级ms必考知识点,计算机一级MsOffice考试知识点整理重点.docx
  17. python混淆ios代码_XSDK——iOS代码混淆原理
  18. 笔记本 电池换电芯 详解
  19. 漫画照片在线生成?在线操作学习一下
  20. Typescript从入门到精通(上)

热门文章

  1. C#和Unity游戏开发者大师班2021 (2D,3D和FPS)
  2. WCDMA中的URA和LA/RA
  3. 程序的编译和链接过程
  4. dataTable 从服务器获取数据源的两种表现形式
  5. Eclipse的Java工作集和多工程构建路径
  6. 我对她说,你能不能换件衣服?换种心情?换种脾气?她说,可以,换个人就行了···...
  7. 【OpenCV 】计算物体的凸包/创建包围轮廓的矩形和圆形边界框/createTrackbar添加滑动条/
  8. Java判断文本文件编码格式以及读取
  9. linux中iptables入门教程--设置静态防火墙
  10. 高并发大型网站架构设计