Merge remote-tracking branch 'origin/test' into test

This commit is contained in:
Tankaikai
2024-12-06 14:49:09 +08:00
2 changed files with 79 additions and 93 deletions

View File

@@ -115,7 +115,7 @@ public class TbCashierCart implements Serializable {
} else { } else {
subtract = salePrice.subtract(discountSaleAmount); subtract = salePrice.subtract(discountSaleAmount);
} }
totalAmount = totalNumber.multiply(subtract.compareTo(BigDecimal.ZERO) < 0 ? BigDecimal.ZERO : subtract).add(packFee); totalAmount = totalNumber.multiply(subtract.compareTo(BigDecimal.ZERO) < 0 ? BigDecimal.ZERO : subtract).add(packFee).setScale(2, RoundingMode.DOWN);
} }
} }
@@ -140,11 +140,11 @@ public class TbCashierCart implements Serializable {
BigDecimal subtract; BigDecimal subtract;
if (isMember != null && isMember == 1 && memberPrice != null && memberPrice.compareTo(BigDecimal.ZERO) > 0) { if (isMember != null && isMember == 1 && memberPrice != null && memberPrice.compareTo(BigDecimal.ZERO) > 0) {
subtract = memberPrice.subtract(discountSaleAmount); subtract = memberPrice.subtract(discountSaleAmount);
totalAmount = totalNumber.multiply(subtract).add(packFee).multiply(discountRadio).setScale(2, RoundingMode.HALF_UP); totalAmount = totalNumber.multiply(subtract).add(packFee).multiply(discountRadio).setScale(2, RoundingMode.DOWN);
} else { } else {
subtract = salePrice.subtract(discountSaleAmount); subtract = salePrice.subtract(discountSaleAmount);
totalAmount = totalNumber.multiply(subtract) totalAmount = totalNumber.multiply(subtract)
.add(packFee).multiply(discountRadio).setScale(2, RoundingMode.HALF_UP); .add(packFee).multiply(discountRadio).setScale(2, RoundingMode.DOWN);
} }
} }
} }
@@ -165,9 +165,9 @@ public class TbCashierCart implements Serializable {
} }
if (isMember != null && isMember == 1 && memberPrice != null && memberPrice.compareTo(BigDecimal.ZERO) > 0) { if (isMember != null && isMember == 1 && memberPrice != null && memberPrice.compareTo(BigDecimal.ZERO) > 0) {
return num.multiply(memberPrice).multiply(discountRadio).add(packFee).setScale(2, RoundingMode.HALF_UP); return num.multiply(memberPrice).multiply(discountRadio).add(packFee).setScale(2, RoundingMode.DOWN);
}else { }else {
return num.multiply(discountSaleAmount != null ? discountSaleAmount : salePrice).add(packFee).multiply(discountRadio).setScale(2, RoundingMode.HALF_UP); return num.multiply(discountSaleAmount != null ? discountSaleAmount : salePrice).add(packFee).multiply(discountRadio).setScale(2, RoundingMode.DOWN);
} }
// if (isMember != null && isMember == 1 && memberPrice != null && memberPrice.compareTo(BigDecimal.ZERO) > 0) { // if (isMember != null && isMember == 1 && memberPrice != null && memberPrice.compareTo(BigDecimal.ZERO) > 0) {
// return num.multiply(memberPrice); // return num.multiply(memberPrice);

View File

@@ -380,7 +380,6 @@ public class OrderService {
} }
} }
if (StringUtils.isEmpty(masterId)) { if (StringUtils.isEmpty(masterId)) {
boolean flag = redisUtil.exists("SHOP:CODE:" + clientType + ":" + shopId); boolean flag = redisUtil.exists("SHOP:CODE:" + clientType + ":" + shopId);
if (flag) { if (flag) {
@@ -396,24 +395,10 @@ public class OrderService {
} }
if (Objects.nonNull(cart) && cart.getGroupType() != null && cart.getGroupType() == 0) {
//查询现有规格商品
cart.setNumber(number);
cart.setIsGift(isGift);
cart.setIsPack(isPack);
cart.setTotalNumber(number);
cart.resetTotalAmount();
cart.setUuid(uuid);
cart.setIsPrint(isPrint);
if (product != null) {
resetGroupProductCart(groupProductIdList, product, cart);
}
cashierCartMapper.updateByPrimaryKeySelective(cart);
} else {
List<TbCashierCart> list = cashierCartMapper.selectALlByMasterId(masterId, "create"); List<TbCashierCart> list = cashierCartMapper.selectALlByMasterId(masterId, "create");
TbCashierCart cashierCart = getCashierInfo(shopId, skuId, productId, tableId, masterId, shopEatTypeInfoDTO); TbCashierCart cashierCart = getCashierInfo(shopId, skuId, productId, tableId, masterId, shopEatTypeInfoDTO);
// 不存在新增 if (type.equals("add") || cashierCart == null || (cart != null && cart.getGroupType() != null && cart.getGroupType() == 1)) {
if (Objects.isNull(cashierCart) || (cart != null && cart.getGroupType() != null && cart.getGroupType() == 1)) {
cashierCart = new TbCashierCart(); cashierCart = new TbCashierCart();
cashierCart.setUseType(shopEatTypeInfoDTO.getUseType()); cashierCart.setUseType(shopEatTypeInfoDTO.getUseType());
if (product != null) { if (product != null) {
@@ -471,24 +456,25 @@ public class OrderService {
} }
list.add(cashierCart); list.add(cashierCart);
mpCashierCartMapper.insert(cashierCart); mpCashierCartMapper.insert(cashierCart);
} else {
if (type.equals("add")) {
cashierCart.setNumber(cashierCart.getNumber().add(number));
}else { }else {
cashierCart.setNumber(number); cashierCart.setNumber(number);
}
if (product != null) { if (product != null) {
resetGroupProductCart(groupProductIdList, product, cashierCart); resetGroupProductCart(groupProductIdList, product, cashierCart);
} }
cashierCart.setTotalNumber(number);
cashierCart.setIsPrint(isPrint);
cashierCart.setIsPack(isPack);
cashierCart.resetTotalAmount();
cashierCart.setUuid(uuid);
cashierCart.setIsPrint(isPrint); cashierCart.setIsPrint(isPrint);
cashierCart.resetTotalAmount(); cashierCart.resetTotalAmount();
if (product != null) {
resetGroupProductCart(groupProductIdList, product, cart);
}
mpCashierCartMapper.updateById(cashierCart); mpCashierCartMapper.updateById(cashierCart);
} }
cart = cashierCart;
}
setRedisTableCartInfo(tableId, shopId, Collections.singletonList(cart), true); setRedisTableCartInfo(tableId, shopId, Collections.singletonList(cart), true);
return Result.success(CodeEnum.SUCCESS, masterId); return Result.success(CodeEnum.SUCCESS, masterId);