feat: 单品改价相关接口

This commit is contained in:
张松
2024-11-20 10:47:52 +08:00
parent 92e4f9cb26
commit d8177bf3a4
2 changed files with 4 additions and 3 deletions

View File

@@ -49,7 +49,7 @@ public class MpOrderInfoServiceImpl extends ServiceImpl<TbOrderInfoMapper, TbOrd
return update(new LambdaUpdateWrapper<TbOrderInfo>() return update(new LambdaUpdateWrapper<TbOrderInfo>()
.eq(TbOrderInfo::getId, orderId) .eq(TbOrderInfo::getId, orderId)
.eq(TbOrderInfo::getStatus, TableConstant.OrderInfo.Status.UNPAID.getValue()) .eq(TbOrderInfo::getStatus, TableConstant.OrderInfo.Status.UNPAID.getValue())
.apply("settlement_amount + {0} >= 0", subtract) .apply(StrUtil.format("settlement_amount + {} >= 0", subtract))
.setSql(StrUtil.format("settlement_amount=settlement_amount+{}", subtract)) .setSql(StrUtil.format("settlement_amount=settlement_amount+{}", subtract))
.setSql(StrUtil.format("order_amount=order_amount+{}", subtract)) .setSql(StrUtil.format("order_amount=order_amount+{}", subtract))
.setSql(StrUtil.format("amount=amount+{}", subtract)) .setSql(StrUtil.format("amount=amount+{}", subtract))

View File

@@ -2902,11 +2902,12 @@ public class TbShopTableServiceImpl implements TbShopTableService {
throw new BadRequestException("购物车商品不存在"); throw new BadRequestException("购物车商品不存在");
} }
if (updatePriceDTO.getSaleAmount().compareTo(cashierCart.getSalePrice()) == 0) { if (updatePriceDTO.getSaleAmount().compareTo(cashierCart.getDiscountSaleAmount()) == 0) {
return cashierCart; return cashierCart;
} }
BigDecimal newTotalPrice = updatePriceDTO.getSaleAmount().multiply(cashierCart.getTotalNumber()).add(cashierCart.getPackFee()); BigDecimal newTotalPrice = updatePriceDTO.getSaleAmount().multiply(cashierCart.getTotalNumber()).add(cashierCart.getPackFee());
BigDecimal oldAmount = cashierCart.getTotalAmount();
cashierCart.setTotalAmount(newTotalPrice); cashierCart.setTotalAmount(newTotalPrice);
cashierCart.setUpdatedAt(DateUtil.current()); cashierCart.setUpdatedAt(DateUtil.current());
cashierCart.setDiscountSaleNote(updatePriceDTO.getNote()); cashierCart.setDiscountSaleNote(updatePriceDTO.getNote());
@@ -2916,7 +2917,7 @@ public class TbShopTableServiceImpl implements TbShopTableService {
// 更新订单和detail价格 // 更新订单和detail价格
if (cashierCart.getOrderId() != null) { if (cashierCart.getOrderId() != null) {
mpOrderDetailService.updatePriceByCartId(cashierCart.getId(), updatePriceDTO.getSaleAmount(), newTotalPrice); mpOrderDetailService.updatePriceByCartId(cashierCart.getId(), updatePriceDTO.getSaleAmount(), newTotalPrice);
mpOrderInfoService.incrAmount(cashierCart.getOrderId(), newTotalPrice.subtract(cashierCart.getTotalAmount())); mpOrderInfoService.incrAmount(cashierCart.getOrderId(), newTotalPrice.subtract(oldAmount));
} }
return cashierCart; return cashierCart;
} }