Java实战之小米交易商城系统的实现

目录
  • 一、项目简述
  • 二、效果图
  • 三、核心代码
    • 用户购物车控制层
    • 后台登录控制层
    • 后台商品管理控制层
    • 后台品类控制层

一、项目简述

环境配置:

Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)

项目技术:

JSP +Spring + SpringMVC + MyBatis + html+ css + JavaScript + JQuery + Ajax + layui+ maven等等。

二、效果图

三、核心代码

用户购物车控制层

@CrossOrigin
@RestController
@RequestMapping("carts")
public class CartController {

    @Autowired
    private RegLogServiceImp regLogServiceImp;
    @Autowired
    private GoodServiceImp goodServiceImp;
    @Autowired
    private 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;
    }
}

后台登录控制层

@CrossOrigin
@RestController
@RequestMapping("Login")
public class LoginController {

    @Autowired
    private LoginServiceImp loginServiceImp;

    Map<String, String> keyMap = RSAUtils.createKeys(512);
//    String  publicKey = keyMap.get("publicKey");
//    String  privateKey = keyMap.get("privateKey");
//    private String publicKey = "MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAIS-9P6aiWK-mNIJxz0R_XXIbHM21pS_ZncpQcE8T5Mu6P6sJfoi5Cw6S4jcSqxNbRs5FSUc59GAkU1Ek9onrz8CAwEAAQ";
    private String privateKey = "MIIBVAIBADANBgkqhkiG9w0BAQEFAASCAT4wggE6AgEAAkEAhL70_pqJYr6Y0gnHPRH9dchsczbWlL9mdylBwTxPky7o_qwl-iLkLDpLiNxKrE1tGzkVJRzn0YCRTUST2ievPwIDAQABAkAviOHaOiRwQ6gdrnq2F7cXcknDiCOW6GMc0J1HQP2Nyn52HKtc9E9Ailm-eQesTw6P-qTsvHMyfuVYz8fLhfkhAiEAvhvoG2Dz6qSN6IHeuPboJP7YHK9zTt6M_NGCJKAenasCIQCywU7eStITcHFTRDjjShH0CfO-vR6q-zgWQPjtNI_YvQIgY8UNiODW4bu-ZdlSY8vghRnhnRxO7YNKhpwFKueFacUCIQCZ-P65ZVNs4ScMZTBnP48VWVk2S-rVto0KRi7lC6h4NQIgEa_GhBO6U2p6G5cGAR25ZiQVH9dFnrMVyPxY7P7-WsA";

    @PostMapping("/login")
    public LoginResult Login(@RequestBody User adminUser) throws IOException, InvalidKeySpecException, NoSuchAlgorithmException {
        User user = loginServiceImp.getUserByUserName(adminUser.getUsername());
        LoginResult result = new LoginResult();
        LoginData loginData = new LoginData();

        if (user == null) {
            result.setMsg("无此用户,请重新输入正确用户名");
            result.setStatus(2008);
        } else {
            if (RSAUtils.privateDecrypt(user.getPwd(), RSAUtils.getPrivateKey(privateKey)).equals(adminUser.getPwd())){
                result.setStatus(0);
                String token = TokenUtil.token(user.getId().trim());
                loginData.setToken(token);
                result.setMsg("登录成功");
                result.setStatus(1010);
                result.setData(loginData);
            }else{
                result.setStatus(2007);
                result.setMsg("密码错误");
            }
        }
        return result;
    }
}

后台商品管理控制层

@CrossOrigin
@RestController
@RequestMapping("Good")
public class GoodController {

    @Autowired
    private 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("category")
public class CategoryController {

    @Autowired
    private CategServiceImp categServiceImp;
    @GetMapping("/getCategory")
        private CateResult getCategory(@RequestParam("pageIndex") int pageIndex,
                                    @RequestParam("pageSize") int pageSize) throws IOException {
        CateResult cateResult = categServiceImp.getCategory(pageIndex, pageSize);
        return cateResult;
    }

    @PostMapping("/updateCategory")
    private void updateCategory(@RequestBody Category category) throws IOException {
        categServiceImp.updCategory(category.getName(),category.getCategoryId());
    }
}

以上就是Java实战之小米交易商城系统的实现的详细内容,更多关于Java交易商城系统的资料请关注我们其它相关文章!

(0)

相关推荐

  • Java毕业设计实战之仿小米电子产品售卖商城系统的实现

    项目描述:这是一个基于SpringBoot+Vue框架开发的仿小米电子产品售卖商城系统.首先,这是一个前后端分离的项目,代码简洁规范,注释说明详细.其次,这项目功能丰富,具有一个电子产品售卖商城系统该有的所有功能. 项目功能:此项目分为两个角色:普通用户和管理员.普通用户有登录注册.浏览商品信息.添加购物车.结算订单.查看个人信息.查看个人订单详情等等功能.管理员有管理所有商品信息.管理所有订单信息.管理所有用户信息.查看收益数据图表等等功能. 应用技术:SpringBoot + VueCli

  • Java女装商城系统的实现流程

    一.项目简述功能 javaweb 网上商城系统,前台+后台管理,用户注册,登录,上哦展示,分组展示,搜索,收货地址管理,购物车管理,添加,购买,个人信息修改.订单查询等等,后台商品管理,分类管理,库存管理,订单管理,用户管理,信息修改等等. 二.项目运行 环境配置: Jdk1.8 + Tomcats . 5 + mysql + Eclispe ( IntelliJ IDEA ,Eclispe , MyEclispe , sts 都支持) 项目技术: JSP + Spring + SpringMV

  • Java毕业设计实战项目之在线服装销售商城系统的实现流程

    一.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持). 项目技术: Spring + SpringBoot+ mybatis + Maven + Vue 等等组成,B/S模式 + Maven管理等等. 后台管理-用户页: /** * 后台管理-用户页 */ @Controller public class UserContro

  • Java毕业设计实战之健身器材商城系统的实现

    环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持) 项目技术: Jdbc+ Servlert + html+ css + JavaScript + JQuery + Ajax + Fileupload等等 用户管理控制层: @Controller @RequestMapping("/user") public class UserController { @Resource

  • Java 实战项目锤炼之在线蛋糕商城系统的实现

    一.项目简述 功能: 主页显示热销商品:所有蛋糕商品展示,可进行商品搜 索:点击商品进入商品详情页,具有立即购买和加入购物 车功能,可增减购买商品数量亦可手动输入(同时验证库 存),热销商品展示.立即购买进入确认订单页面,可选择 已经添加的地址,亦可新增地址.(同时验证库存),可选 择购买哪些商品,可删除不需要的商品.点击结算进入确 认订单页面,确认后提交订单.后台管理:(修改密码 等),商品管理(商品批量添加.上下架等),订单管理. 二.项目运行 环境配置: Jdk1.8 + Tomcat8.

  • Java 实战项目锤炼之网上商城系统的实现流程

    一.项目简述(+需求文档+PPT) 功能: 主页显示热销商品:所有商品展示,可进行商品搜索:点 击商品进入商品详情页,显示库存,具有立即购买和加入 购物车功能,可增减购买商品数量亦可手动输入(同时验证 库存),热销商品展示.立即购买进入确认订单页面,可选 择已经添加的地址,亦可新增地址.(同时验证库存),可 选择购买哪些商品,可删除不需要的商品.点击结算进入 确认订单页面,确认后提交订单,订单重复提交给予响 应,库存不足或商品下架给予响应.后台管理:(修改密码 等),商品管理(商品批量添加.上下

  • Java 仿天猫服装商城系统的实现流程

    一.项目简述 功能:网上商城系统,前台+后台管理,用户注册,登录, 上哦展示,分组展示,搜索,收货地址管理,购物车管 理,添加,购买,个人信息修改.订单查询等等,后台商 品管理,分类管理,库存管理,订单管理,用户管理,信 息.修改等等. 二.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持) 项目技术: JSP +Spring + SpringMVC + MyBatis

  • Java实战之小米交易商城系统的实现

    目录 一.项目简述 二.效果图 三.核心代码 用户购物车控制层 后台登录控制层 后台商品管理控制层 后台品类控制层 一.项目简述 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持) 项目技术: JSP +Spring + SpringMVC + MyBatis + html+ css + JavaScript + JQuery + Ajax + layui+ maven等等. 二.效

  • Java实战之仿天猫商城系统的实现

    目录 一.项目介绍 二.项目运行 三.效果图 四.核心代码 权限基础控制层 用户信息操作控制层 用户订单控制层 后台管理员品类控制层 后台管理-产品页控制层 一.项目介绍 迷你天猫商城是一个基于SSM框架的综合性B2C电商平台,需求设计主要参考天猫商城的购物流程:用户从注册开始,到完成登录,浏览商品,加入购物车,进行下单,确认收货,评价等一系列操作. 作为模拟天猫商城系统的核心组成部分之一,采用SSM框架的天猫数据管理后台包含商品管理,订单管理,类别管理,用户管理和交易额统计等模块,实现了对整个

  • Java毕业设计实战项目之宠物商城系统的实现流程

    一.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持). 项目技术: Springboot + Maven + mybatis+ Vue 等等组成,B/S模式 + Maven管理等等. 后台相关接口: /** * 后台相关接口 */ @Controller @RequestMapping("/admin") publi

  • Java毕业设计实战之二手书商城系统的实现

    一.项目简述 功能: 主页显示商品: 所有二手书商品展示,可进行商品搜索: 点击商品进入商品详情页,具有立即购买和加入购物车功能,可增减购买商品数量亦可手动输入,热销商品展示. 立即购买进入确认订单页面,可选择已经添加的地址,亦可新增地址. 可选择购买哪些商品,可删除不需要的商品. 点击结算进入确认订单页面,确认后提交订单.后台管理:(修改密码等),商品管理(商品批量添加.上下架等),订单管理. 二.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe(

  • Java实战项目 医院预约挂号系统

    目录 一.项目简述 二.项目运行 登录拦截器代码: 医院预约挂号系统后台管理页面代码: 一.项目简述 功能: 用户分为患者,医生,管理员,患者可进行注册选择医生 挂号,选择日期,选择号源,医生可进行接诊,管理员可 对用户,医生信息的维护等等功能. 二.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持) 项目技术: Jdbc+ Servlert + Jsp + css +

  • JAVA实战项目实现客户选购系统详细流程

    客户选购信息系统功能需求: 1)输入多个客户购买商品信息.包括客户名称,年龄,购买的商品,每种商品的单价和数量. 2)输出多个客户购买商品的信息.包括客户名字,年龄,购买商品,每种商品的单价和数量,总的消费金额. 方法:1)定义一个多个客户信息处理的类 CustomerGoodsAdmin .包括: 属性: Customer [ ]customers 方法: void show () //用户交互界面 void inputCustomerlnfo () / /客户采购信息输入 Void prin

  • Java实战之实现物流配送系统示例详解

    目录 介绍 效果图展示 主要实现代码 介绍 系统分普通用户.企业.超级管理员等角色,除基础脚手架外,实现的功能有: 超级管理员:系统管理.用户管理.企业用户管理.普通用户管理.货物类型管理.车辆管理.公告管理.使用帮助等. 普通用户:注册登录.个人信息管理(个人资料.密码修改.充值.订单管理等).货物浏览.公告查看.下单等. 企业用户:注册登录.修改密码.充值.订单管理.货物管理.车辆管理.安排车辆等. 运行环境:windows/Linux均可.jdk1.8.mysql5.7.redis3.0.

  • Java实战角色权限后台脚手架系统的实现流程

    Springboot框架+myBaits-Plus+MySQL实现的角色权限后台管理脚手架系统实战项目,实现的是所有系统最基础的后台管理功能,有了这个脚手架,以后开发别的项目就在这上面快速增加功能即可.本系统主要实现的功能有:菜单管理.角色管理.用户管理.登录.登出,不同的角色分配相应的权限,用户分配不同的角色登录后显示相应被分配的功能. 本系统采用前后端分离的思想设计,后端采用springboot微服务架构,主要包含一个网关服务和一个权限管理服务,开发其他功能可以再创建其他的微服务,前端采用v

  • Java实战宠物医院预约挂号系统的实现流程

    一.项目简述 功能包括: 用户分为宠物,医生,管理员,宠物主人可进行注册选择医生挂号,选择日期,选择号源,医生可进行宠物接诊,管理员可对宠物,医生信息的维护等等功能. 二.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持) 项目技术: JSP +Spring + SpringBoot + MyBatis + html+ css + JavaScript + JQuery +

  • Java实战之电影在线观看系统的实现

    目录 一.项目简述 二.效果图展示 三.核心代码 后台用户管理控制器 电影管理控制器 前台电影控制器 一.项目简述 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持) 项目技术: JSP +Spring + SpringMVC + MyBatis + html+ css + JavaScript + JQuery + Ajax + layui+ maven等等. 二.效果图展示 三.

随机推荐