fix: 全部退菜清空购物车
This commit is contained in:
@@ -926,9 +926,26 @@ public class TbShopTableServiceImpl implements TbShopTableService {
|
|||||||
.multiply(removeCartDTO.getNum()));
|
.multiply(removeCartDTO.getNum()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ShopEatTypeInfoDTO shopEatTypeInfoDTO = checkEatModel(cashierCart.getShopId(), cashierCart.getTableId());
|
||||||
|
checkTakeOutEmptyAndClear(cashierCart, shopEatTypeInfoDTO);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 检查订单购物车是否为空并删除订单
|
||||||
|
*/
|
||||||
|
private void checkTakeOutEmptyAndClear(TbCashierCart cashierCart, ShopEatTypeInfoDTO shopEatTypeInfoDTO) {
|
||||||
|
if (!TableConstant.OrderInfo.UseType.TAKEOUT.equalsVals(cashierCart.getUseType())) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
List<TbCashierCart> cashierCarts = mpCashierCartService.selectByShopEatTypeAndOrderId(shopEatTypeInfoDTO, cashierCart.getMasterId(), cashierCart.getOrderId() == null ? null : cashierCart.getOrderId(), false, TableConstant.OrderInfo.Status.CREATE);
|
||||||
|
if (cashierCarts.isEmpty() && cashierCart.getOrderId() != null) {
|
||||||
|
mpOrderDetailService.remove(new LambdaQueryWrapper<TbOrderDetail>()
|
||||||
|
.eq(TbOrderDetail::getOrderId, cashierCart.getOrderId()));
|
||||||
|
mpOrderInfoService.removeById(cashierCart.getOrderId());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void clearCart(ClearCartDTO clearCartDTO) {
|
public void clearCart(ClearCartDTO clearCartDTO) {
|
||||||
ShopEatTypeInfoDTO shopEatTypeInfoDTO = checkEatModel(clearCartDTO.getShopId(), clearCartDTO.getTableId(), clearCartDTO.getUseType());
|
ShopEatTypeInfoDTO shopEatTypeInfoDTO = checkEatModel(clearCartDTO.getShopId(), clearCartDTO.getTableId(), clearCartDTO.getUseType());
|
||||||
@@ -3403,7 +3420,7 @@ public class TbShopTableServiceImpl implements TbShopTableService {
|
|||||||
for (TbCashierCart allCart : allCarts) {
|
for (TbCashierCart allCart : allCarts) {
|
||||||
if (switchTableDTO.getCartIds().contains(allCart.getId())) {
|
if (switchTableDTO.getCartIds().contains(allCart.getId())) {
|
||||||
cashierCarts.add(allCart);
|
cashierCarts.add(allCart);
|
||||||
}else if (TableConstant.CART_SEAT_ID.equals(allCart.getProductId())) {
|
} else if (TableConstant.CART_SEAT_ID.equals(allCart.getProductId())) {
|
||||||
seatCart = allCart;
|
seatCart = allCart;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user