diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopTableServiceImpl.java b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopTableServiceImpl.java index c0d25567..3505ceb3 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopTableServiceImpl.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopTableServiceImpl.java @@ -688,17 +688,18 @@ public class TbShopTableServiceImpl implements TbShopTableService { @Override public Map getCart(Long tableId, Integer page, Integer size, Integer shopId, String masterId, String useType) { + ShopEatTypeInfoDTO shopEatTypeInfoDTO = checkEatModel(shopId, useType); LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper() - .in(TbCashierCart::getStatus, "create", "refund", "return") + .in(TbCashierCart::getStatus, "create", "return") .eq(TbCashierCart::getShopId, shopId) .eq(TbCashierCart::getUseType, useType) - .and(query2 -> query2.or(query3 -> query3.eq(TbCashierCart::getTradeDay, DateUtils.getDay()) - .eq(TbCashierCart::getMasterId, masterId)) - .or((query4 -> query4.isNull(TbCashierCart::getTradeDay) - .isNull(TbCashierCart::getMasterId)))); + .and(q -> q.eq(TbCashierCart::getMasterId, masterId).or().isNull(TbCashierCart::getMasterId)); - if (tableId != null) { + if (!shopEatTypeInfoDTO.isTakeout()) { queryWrapper.eq(TbCashierCart::getTableId, tableId); + }else { + queryWrapper.and(q -> q.isNull(TbCashierCart::getTableId).or().eq(TbCashierCart::getTableId, "")) + .in(TbCashierCart::getPlatformType, OrderPlatformTypeEnum.PC.getValue(), OrderPlatformTypeEnum.CASH.getValue()); } com.baomidou.mybatisplus.extension.plugins.pagination.Page cartPage = cashierCartMapper @@ -1232,8 +1233,12 @@ public class TbShopTableServiceImpl implements TbShopTableService { orderDetail.setOrderId(orderId); } // 删除已经移除购物车的订单 修改并保存数据 - mpOrderDetailService.saveOrUpdateBatch(orderDetails); - orderDetailMapper.deleteBatchIds(removeOrderDetailIds); + if (!orderDetails.isEmpty()) { + mpOrderDetailService.saveOrUpdateBatch(orderDetails); + } + if (!removeOrderDetailIds.isEmpty()) { + orderDetailMapper.deleteBatchIds(removeOrderDetailIds); + } // 更新购物车记录的orderId