/**
* 如果执行成功,返回订单ID,否则返回Null
* @param user
* @param miaoShaGoodsVo
* @return
*/
@Override
@Transactional
public String miaoSha(User user, MiaoShaGoodsVo miaoShaGoodsVo) {
//库存减1操作
Integer affectedRows = miaoShaGoodsMapper.reduceStock(miaoShaGoodsVo.getId());
if(affectedRows==0){
return null;
}
//生成订单
Order order = new Order();
order.setId(DateUtil.getCurrentDateStr()); //生成订单号
order.setUser(user);
order.setMiaoShaGoods(miaoShaGoodsVo);
order.setCount(1);
order.setTotalPrice(miaoShaGoodsVo.getPrice());
order.setPayMethod(null);
order.setStatus(0);
Integer affectedRows2 = orderMapper.add(order);
if(affectedRows2==0){
return null;
}
return order.getId();
}
<update id="reduceStock" parameterType="Integer">
update t_goods_miaosha set stock=stock-1 where id=
</update>
<insert id="add" parameterType="com.java1234.miaosha.entity.Order">
insert into t_order values(
</insert>