首页 > 其他分享 >springboot整合项目-商城项目订单系统以及aop监测

springboot整合项目-商城项目订单系统以及aop监测

时间:2022-11-10 18:44:22浏览次数:41  
标签:springboot 项目 address 订单 Order 插入 aop new order

订单系统

1.持久层

1.将数据插入到订单表中

insert into t_order(oid除外所有的字段) values (字段的值)

2.将数据还要插入订单项的表中

insert into t_order_item(oid除外所有的字段) values (字段的值)

2.接口和抽象方法

创建一个orderMapper

                /**
             * 插入订单数据
             * @param order
             * @return
             */
            Integer insertOrder(Order order);
        
            /**
             * 插入订单项数据
             * @param order
             * @return
             */               

            Integer insertOrderItem(Order order);

3.测试

OederMapperTest

    /**
     * 测试插入到order数据表中
     */
    @Test
    void testInsertOrder(){
        Order order = new Order();
        order.setUid(10);
        order.setRecvName("温云峰");
        order.setRecvPhone("16638992452");
        log.info("插入的结果为:{}",orderMapper.insertOrder(order));
    }

    /**
     * 测试插入到order_item表中
     */
    @Test
    void testInsertOrderItem(){
        OrderItem order = new OrderItem();
        order.setOid(1);
        order.setPid(10000003);
        order.setTitle("测试商品");
        order.setNum(2);
        log.info("插入的结果为:{}",orderMapper.insertOrderItem(order));
    }

业务层

1.在IAddressService接口中定义根据的收货地址id获取收货地址

    //查询勾选的列表的数据
        List<CartVo> list = cartService.getVOByCid(uid, cids);
        //计算商品的总价
        Long totalPrice = 0l;
        for (CartVo cartVo : list) {
            totalPrice +=   cartVo.getRealPrice()* cartVo.getNum();
        }
        Address address = addressService.getByAid(aid, uid);
        //插入数据
        Order order = new Order();
        order.setUid(uid);
        //收货地址
        order.setRecvPhone(address.getPhone());
        order.setRecvName(address.getName());
        order.setRecvAddress(address.getAddress());
        order.setRecvArea(address.getAreaName());
        order.setRecvCity(address.getCityName());
        order.setRecvProvince(address.getProvinceName());
        //支付 总价
        order.setStatus(0);
        order.setTotalPrice(totalPrice);
        order.setOrderTime(new Date());
        //四个基类属性
        order.setCreatedTime(new Date());
        order.setCreatedUser(username);
        order.setModifiedTime(new Date());
        order.setModifiedUser(username);

        Integer integer = orderMapper.insertOrder(order);
        if (integer !=1 ){
            throw new InsertException("插入时异常");
        }
        return null;
    }

控制层

1.请求设计

/order/create
/aid,session,cids
/post
/JsonResult

结尾:AOP 对项目进行检测

面向切面编程,他并不是spring框架

标签:springboot,项目,address,订单,Order,插入,aop,new,order
From: https://www.cnblogs.com/wiseleer/p/16878034.html

相关文章

  • 项目成本管理的重要性:为了削减成本,马斯克裁员50%
    世界首富马斯克又又又上热搜了。上一次上热搜还是成为世界首富的新闻,没想到推特被马斯克收购后,进行的大规模裁员行动又让大家大吃一惊。除了解雇首席执行官和首席财务官等......
  • idea 打开vue项目 不能识别@路径
    第一步根目录自定义一个文件:webpath.config.js,内容为:'usescript'constpath=require('path')functionresolve(dir){returnpath.join(__dirname,dir)}mod......
  • SpringBoot 整合mybatis-plus
    SpringBoot整合mybatis-plus1、导入Maven依赖<dependencies><!--web依赖--><dependency><groupId>org.springframework.boot</groupId>......
  • Maven项目中引入本地jar(没有坐标)方法
    在项目开发中,需要调用第三方接口,第三方公司给了一个sdk(java版)的jar包,说可以引用jar里哪哪的类,有了sdk的确方便,但我们maven项目中的jar包都是通过maven坐标引入的,他这个孤零......
  • SpringBoot启用Https(二十六)
    死亡的日子终究会到来,在那一天到来之前,别忘记,来我坟前再看一眼上一章简单介绍了SpringBoot自定义日志Starter(二十五),如果没有看过,​​请观看上一章​​关于这一章节的内......
  • SpringBoot整合Redis(十九)
    二八佳人体似酥,腰间仗剑斩愚夫。虽然不见人头落,暗里教君骨髓枯。上一章简单介绍了多数据源配置MyBatisPlus(十八),如果没有看过,​​请观看上一章​​一.Redis的介绍和安装......
  • SpringBoot整合Velocity(十二)
    二八佳人体似酥,腰间仗剑斩愚夫。虽然不见人头落,暗里教君骨髓枯。上一章简单介绍了SpringBoot整合FreeMarker(十一),如果没有看过,​​请观看上一章​​学习整合之前,可以看一......
  • SpringBoot通过Cors解决跨域问题(三十一)
    上一章简单介绍了SpringBoot全局异常处理(三十),如果没有看过,​​请观看上一章​​本章节参考江南一点雨大神的文章:​​SpringBoot2系列教程(十四)CORS解决跨域问题......
  • SpringBoot自定义Starter(二十四)
    即使有一天,我放弃了自己的身体,也请你,不要放弃我,我亲爱的灵魂.上一章简单介绍了Spring_Session解决Session共享的问题(二十三),如果没有看过,​​请观看上一章​​一.自定义......
  • SpringBoot上传和下载文件(二十七)
    当死亡来临,每一个人都不会接受自己的命运,他们会反抗.上一章简单介绍了SpringBoot启用Https(二十六),如果没有看过,​​请观看上一章​​文件上传和下载,是常用的功能可以看老......