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

订单系统

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框架

posted @ 2022-11-10 18:36  wiselee/  阅读(105)  评论(0编辑  收藏  举报