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框架
本文来自博客园,作者:wiselee/,转载请注明原文链接:https://www.cnblogs.com/wiseleer/p/16878034.html