From f3da522e803eb6ede978d230f70cb9f453bdf9a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=9D=BE?= <8605635+zhang3064194730@user.noreply.gitee.com> Date: Fri, 6 Dec 2024 14:58:48 +0800 Subject: [PATCH 01/14] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E8=B4=AD?= =?UTF-8?q?=E7=89=A9=E8=BD=A6=E7=AE=80=E5=8C=96=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/cashierservice/service/OrderService.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java index bce6177..416c928 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java @@ -468,14 +468,15 @@ public class OrderService { cashierCart.setUuid(uuid); cashierCart.setIsPrint(isPrint); cashierCart.resetTotalAmount(); + cart = cashierCart; if (product != null) { - resetGroupProductCart(groupProductIdList, product, cart); + resetGroupProductCart(groupProductIdList, product, cashierCart); } mpCashierCartMapper.updateById(cashierCart); } - setRedisTableCartInfo(tableId, shopId, Collections.singletonList(cart), true); + setRedisTableCartInfo(tableId, shopId, Collections.singletonList(cashierCart), true); return Result.success(CodeEnum.SUCCESS, masterId); } From d6295f5d62240f825d613b3fcbf565b21e05eaf0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=9D=BE?= <8605635+zhang3064194730@user.noreply.gitee.com> Date: Fri, 6 Dec 2024 15:01:32 +0800 Subject: [PATCH 02/14] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E8=B4=AD?= =?UTF-8?q?=E7=89=A9=E8=BD=A6=E7=AE=80=E5=8C=96=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/cashierservice/service/OrderService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java index 416c928..fcc4cf9 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java @@ -398,7 +398,7 @@ public class OrderService { List list = cashierCartMapper.selectALlByMasterId(masterId, "create"); TbCashierCart cashierCart = getCashierInfo(shopId, skuId, productId, tableId, masterId, shopEatTypeInfoDTO); - if (type.equals("add") || cashierCart == null || (cart != null && cart.getGroupType() != null && cart.getGroupType() == 1)) { + if (type.equals("edit") && cashierCart!= null) { cashierCart = new TbCashierCart(); cashierCart.setUseType(shopEatTypeInfoDTO.getUseType()); if (product != null) { From a002a624d6ef23a0b3b9ab62f18a9a08e8749daf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=9D=BE?= <8605635+zhang3064194730@user.noreply.gitee.com> Date: Fri, 6 Dec 2024 15:03:16 +0800 Subject: [PATCH 03/14] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E8=B4=AD?= =?UTF-8?q?=E7=89=A9=E8=BD=A6=E7=AE=80=E5=8C=96=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cashierservice/service/OrderService.java | 35 ++++++++++--------- 1 file changed, 18 insertions(+), 17 deletions(-) diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java index fcc4cf9..04810f2 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java @@ -399,6 +399,24 @@ public class OrderService { TbCashierCart cashierCart = getCashierInfo(shopId, skuId, productId, tableId, masterId, shopEatTypeInfoDTO); if (type.equals("edit") && cashierCart!= null) { + cashierCart.setNumber(number); + if (product != null) { + resetGroupProductCart(groupProductIdList, product, cashierCart); + } + cashierCart.setTotalNumber(number); + cashierCart.setIsPrint(isPrint); + cashierCart.setIsPack(isPack); + cashierCart.resetTotalAmount(); + cashierCart.setUuid(uuid); + cashierCart.setIsPrint(isPrint); + cashierCart.resetTotalAmount(); + cart = cashierCart; + if (product != null) { + resetGroupProductCart(groupProductIdList, product, cashierCart); + } + + mpCashierCartMapper.updateById(cashierCart); + }else { cashierCart = new TbCashierCart(); cashierCart.setUseType(shopEatTypeInfoDTO.getUseType()); if (product != null) { @@ -456,24 +474,7 @@ public class OrderService { } list.add(cashierCart); mpCashierCartMapper.insert(cashierCart); - }else { - cashierCart.setNumber(number); - if (product != null) { - resetGroupProductCart(groupProductIdList, product, cashierCart); - } - cashierCart.setTotalNumber(number); - cashierCart.setIsPrint(isPrint); - cashierCart.setIsPack(isPack); - cashierCart.resetTotalAmount(); - cashierCart.setUuid(uuid); - cashierCart.setIsPrint(isPrint); - cashierCart.resetTotalAmount(); - cart = cashierCart; - if (product != null) { - resetGroupProductCart(groupProductIdList, product, cashierCart); - } - mpCashierCartMapper.updateById(cashierCart); } setRedisTableCartInfo(tableId, shopId, Collections.singletonList(cashierCart), true); From ac72a491b0febb8fef12f2a1834268b13fc45b25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=9D=BE?= <8605635+zhang3064194730@user.noreply.gitee.com> Date: Fri, 6 Dec 2024 15:06:14 +0800 Subject: [PATCH 04/14] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E8=B4=AD?= =?UTF-8?q?=E7=89=A9=E8=BD=A6=E7=AE=80=E5=8C=96=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/cashierservice/service/OrderService.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java index 04810f2..16d3ac7 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java @@ -397,7 +397,7 @@ public class OrderService { List list = cashierCartMapper.selectALlByMasterId(masterId, "create"); - TbCashierCart cashierCart = getCashierInfo(shopId, skuId, productId, tableId, masterId, shopEatTypeInfoDTO); + TbCashierCart cashierCart = getCashierInfo(shopId, skuId, productId, tableId, masterId, shopEatTypeInfoDTO, cartId); if (type.equals("edit") && cashierCart!= null) { cashierCart.setNumber(number); if (product != null) { @@ -482,7 +482,7 @@ public class OrderService { return Result.success(CodeEnum.SUCCESS, masterId); } - private TbCashierCart getCashierInfo(Object shopId, Object skuId, Object productId, String tableId, String MasterId, ShopEatTypeInfoDTO shopEatTypeInfoDTO) { + private TbCashierCart getCashierInfo(Object shopId, Object skuId, Object productId, String tableId, String MasterId, ShopEatTypeInfoDTO shopEatTypeInfoDTO, Integer cartId) { LambdaQueryWrapper query = new LambdaQueryWrapper() .eq(TbCashierCart::getShopId, shopId) .eq(TbCashierCart::getSkuId, skuId) @@ -490,6 +490,10 @@ public class OrderService { .in(TbCashierCart::getStatus, "create") .eq(TbCashierCart::getUseType, shopEatTypeInfoDTO.getUseType()); + if (cartId != null) { + query.eq(TbCashierCart::getId, cartId); + } + if (shopEatTypeInfoDTO.isDineInAfter()) { query.isNull(TbCashierCart::getPlaceNum); } From 1a5b2695d40a6730d4adf3e09f85320f73957eb4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=9D=BE?= <8605635+zhang3064194730@user.noreply.gitee.com> Date: Fri, 6 Dec 2024 15:19:00 +0800 Subject: [PATCH 05/14] =?UTF-8?q?feat:=20findOrder=E6=95=B0=E9=87=8F?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E5=BC=82=E5=B8=B8=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../chaozhanggui/system/cashierservice/entity/po/SkuInfoPo.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/entity/po/SkuInfoPo.java b/src/main/java/com/chaozhanggui/system/cashierservice/entity/po/SkuInfoPo.java index 121c560..510ed1d 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/entity/po/SkuInfoPo.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/entity/po/SkuInfoPo.java @@ -9,7 +9,7 @@ public class SkuInfoPo { private String productName; private String productSkuName; - private Integer num; + private BigDecimal num; private BigDecimal priceAmount; private BigDecimal packAmount; private String categoryId; From 293b1acd9eb216391822b428fa52d4d06d01497b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=9D=BE?= <8605635+zhang3064194730@user.noreply.gitee.com> Date: Fri, 6 Dec 2024 15:40:41 +0800 Subject: [PATCH 06/14] =?UTF-8?q?feat:=20findOrder=E6=95=B0=E9=87=8F?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E5=BC=82=E5=B8=B8=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cashierservice/service/OrderService.java | 153 +++++++++--------- 1 file changed, 78 insertions(+), 75 deletions(-) diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java index 16d3ac7..0964b74 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java @@ -308,12 +308,20 @@ public class OrderService { cartQuery.eq(TbCashierCart::getId, cartId); } - TbCashierCart cart = mpCashierCartMapper.selectOne(cartQuery); - - // 校验是否是代客下单往期订单 - if (shopEatTypeInfoDTO.isDineInAfter() && cart != null && cart.getPlaceNum() != null && !isSeatCart) { - return Result.fail("后付费已下单订单仅支持退款"); + if (StringUtils.isEmpty(masterId)) { + boolean flag = redisUtil.exists("SHOP:CODE:" + clientType + ":" + shopId); + if (flag) { + String code = redisUtil.getMessage("SHOP:CODE:" + clientType + ":" + shopId); + Integer foodCode = Integer.parseInt(code) + 1; + code = "#" + String.format("%03d", foodCode); + redisUtil.saveMessage("SHOP:CODE:" + clientType + ":" + shopId, foodCode.toString()); + masterId = code; + } else { + redisUtil.saveMessage("SHOP:CODE:" + clientType + ":" + shopId, "1"); + masterId = "#" + String.format("%03d", 1); + } } + TbProduct product = null; TbProductSkuWithBLOBs skuWithBLOBs = null; if (!isSeatCart && productId != null) { @@ -336,40 +344,6 @@ public class OrderService { return Result.fail(CodeEnum.PRODUCTSKUERROR); } - // 首次加入购物车,并且拥有起售数,设置为起售数 - if (cart == null && skuWithBLOBs.getSuit() != null && skuWithBLOBs.getSuit() != 0 && number.compareTo(BigDecimal.valueOf(skuWithBLOBs.getSuit())) < 0) { - number = BigDecimal.valueOf(skuWithBLOBs.getSuit()); - // 低于起售,删除商品 - } else if (cart != null && skuWithBLOBs.getSuit() != null && skuWithBLOBs.getSuit() != 0 && number.compareTo(BigDecimal.valueOf(skuWithBLOBs.getSuit())) < 0) { - delCart(masterId, cartId); - if (cart.getOrderId() != null && StrUtil.isNotBlank(cart.getTableId())) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper() - .notIn(TbCashierCart::getStatus, "final", "refund", "closed", "pending") - .eq(TbCashierCart::getShopId, cart.getShopId()); - - TbCashierCart finalCart = cart; - queryWrapper.eq(TbCashierCart::getTableId, cart.getTableId()) - .and(q -> q.or( - query -> query.eq(TbCashierCart::getMasterId, finalCart.getMasterId()) - .or() - .isNull(TbCashierCart::getMasterId) - .or() - .eq(TbCashierCart::getMasterId, "") - ) - .or(query -> query.eq(TbCashierCart::getOrderId, finalCart.getOrderId()) - .or() - .isNull(TbCashierCart::getOrderId))); - - List list = mpCashierCartMapper.selectList(queryWrapper.eq(TbCashierCart::getStatus, "create")); - - if (list.isEmpty()) { - tbOrderInfoMapper.deleteByPrimaryKey(Integer.valueOf(cart.getOrderId())); - } - } - - setRedisTableCartInfo(tableId, shopId, Collections.singletonList(cart), false); - return Result.success(CodeEnum.SUCCESS, masterId); - } // 校验库存 if ("1".equals(product.getIsStock().toString())) { @@ -379,44 +353,71 @@ public class OrderService { } } } + boolean needNew = false; + List list = cashierCartMapper.selectALlByMasterId(masterId, "create"); + TbCashierCart cashierCart = null; + if (type.equals("edit") ) { + cashierCart = getCashierInfo(shopId, skuId, productId, tableId, masterId, shopEatTypeInfoDTO, cartId); + if (cashierCart == null) { + needNew = true; + }else { + // 校验是否是代客下单往期订单 + if (shopEatTypeInfoDTO.isDineInAfter() && cashierCart.getPlaceNum() != null && !isSeatCart) { + return Result.fail("后付费已下单订单仅支持退款"); + } - if (StringUtils.isEmpty(masterId)) { - boolean flag = redisUtil.exists("SHOP:CODE:" + clientType + ":" + shopId); - if (flag) { - String code = redisUtil.getMessage("SHOP:CODE:" + clientType + ":" + shopId); - Integer foodCode = Integer.parseInt(code) + 1; - code = "#" + String.format("%03d", foodCode); - redisUtil.saveMessage("SHOP:CODE:" + clientType + ":" + shopId, foodCode.toString()); - masterId = code; - } else { - redisUtil.saveMessage("SHOP:CODE:" + clientType + ":" + shopId, "1"); - masterId = "#" + String.format("%03d", 1); + if (skuWithBLOBs != null && skuWithBLOBs.getSuit() != null && skuWithBLOBs.getSuit() != 0 && number.compareTo(BigDecimal.valueOf(skuWithBLOBs.getSuit())) < 0) { + delCart(masterId, cartId); + if (cashierCart.getOrderId() != null && StrUtil.isNotBlank(cashierCart.getTableId())) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper() + .notIn(TbCashierCart::getStatus, "final", "refund", "closed", "pending") + .eq(TbCashierCart::getShopId, cashierCart.getShopId()); + + TbCashierCart finalCart = cashierCart; + queryWrapper.eq(TbCashierCart::getTableId, cashierCart.getTableId()) + .and(q -> q.or( + query -> query.eq(TbCashierCart::getMasterId, finalCart.getMasterId()) + .or() + .isNull(TbCashierCart::getMasterId) + .or() + .eq(TbCashierCart::getMasterId, "") + ) + .or(query -> query.eq(TbCashierCart::getOrderId, finalCart.getOrderId()) + .or() + .isNull(TbCashierCart::getOrderId))); + + List list1 = mpCashierCartMapper.selectList(queryWrapper.eq(TbCashierCart::getStatus, "create")); + + if (list1.isEmpty()) { + tbOrderInfoMapper.deleteByPrimaryKey(cashierCart.getOrderId()); + } + } + + setRedisTableCartInfo(tableId, shopId, Collections.singletonList(cashierCart), false); + return Result.success(CodeEnum.SUCCESS, masterId); + } + + cashierCart.setNumber(number); + if (product != null) { + resetGroupProductCart(groupProductIdList, product, cashierCart); + } + cashierCart.setTotalNumber(number); + cashierCart.setIsPrint(isPrint); + cashierCart.setIsPack(isPack); + cashierCart.resetTotalAmount(); + cashierCart.setUuid(uuid); + cashierCart.setIsPrint(isPrint); + cashierCart.resetTotalAmount(); + if (product != null) { + resetGroupProductCart(groupProductIdList, product, cashierCart); + } + + mpCashierCartMapper.updateById(cashierCart); } + } - - List list = cashierCartMapper.selectALlByMasterId(masterId, "create"); - - TbCashierCart cashierCart = getCashierInfo(shopId, skuId, productId, tableId, masterId, shopEatTypeInfoDTO, cartId); - if (type.equals("edit") && cashierCart!= null) { - cashierCart.setNumber(number); - if (product != null) { - resetGroupProductCart(groupProductIdList, product, cashierCart); - } - cashierCart.setTotalNumber(number); - cashierCart.setIsPrint(isPrint); - cashierCart.setIsPack(isPack); - cashierCart.resetTotalAmount(); - cashierCart.setUuid(uuid); - cashierCart.setIsPrint(isPrint); - cashierCart.resetTotalAmount(); - cart = cashierCart; - if (product != null) { - resetGroupProductCart(groupProductIdList, product, cashierCart); - } - - mpCashierCartMapper.updateById(cashierCart); - }else { + if (type.equals("add") || needNew){ cashierCart = new TbCashierCart(); cashierCart.setUseType(shopEatTypeInfoDTO.getUseType()); if (product != null) { @@ -461,11 +462,13 @@ public class OrderService { cashierCart.setPackFee(number.multiply(product == null ? BigDecimal.ZERO : product.getPackFee())); } cashierCart.setTotalAmount(cashierCart.getTotalAmount().add(cashierCart.getPackFee())); - + } + if (skuWithBLOBs != null && skuWithBLOBs.getSuit() != null && skuWithBLOBs.getSuit() != 0 && number.compareTo(BigDecimal.valueOf(skuWithBLOBs.getSuit())) < 0) { + number = BigDecimal.valueOf(skuWithBLOBs.getSuit()); } cashierCart.setTotalNumber(number); - cashierCart.setUserId(Integer.valueOf(userId)); cashierCart.setNumber(number); + cashierCart.setUserId(Integer.valueOf(userId)); cashierCart.setUuid(uuid); cashierCart.setTableId(tableId); cashierCart.setPlatformType(OrderPlatformTypeEnum.CASH.getValue()); From 8fa00c9c4833b91608f37dcfe7aedf7adad7a9cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=9D=BE?= <8605635+zhang3064194730@user.noreply.gitee.com> Date: Fri, 6 Dec 2024 15:45:22 +0800 Subject: [PATCH 07/14] =?UTF-8?q?feat:=20findOrder=E4=BB=B7=E6=A0=BC?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E6=94=B9=E4=BB=B7=E5=90=8E=E7=9A=84=E4=BB=B7?= =?UTF-8?q?=E6=A0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/cashierservice/entity/po/SkuInfoPo.java | 1 + .../system/cashierservice/service/OrderService.java | 10 ++++++++++ src/main/resources/mapper/TbOrderInfoMapper.xml | 2 ++ 3 files changed, 13 insertions(+) diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/entity/po/SkuInfoPo.java b/src/main/java/com/chaozhanggui/system/cashierservice/entity/po/SkuInfoPo.java index 510ed1d..60228be 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/entity/po/SkuInfoPo.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/entity/po/SkuInfoPo.java @@ -11,6 +11,7 @@ public class SkuInfoPo { private String productSkuName; private BigDecimal num; private BigDecimal priceAmount; + private BigDecimal discountAmount; private BigDecimal packAmount; private String categoryId; private BigDecimal price; diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java index 0964b74..37ff75c 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java @@ -1519,12 +1519,22 @@ public class OrderService { if (Objects.isNull(skuInfoPos) || skuInfoPos.size() < 0) { skuInfoPos = new ArrayList<>(); } + skuInfoPos.forEach(item -> { + if (item.getDiscountAmount() != null) { + item.setPriceAmount(item.getPriceAmount().subtract(item.getDiscountAmount())); + } + }); orderInfo.setSkuInfos(skuInfoPos); } else { List skuInfoPos = tbOrderInfoMapper.selectSkuByOrderId(orderInfo.getId().toString()); if (Objects.isNull(skuInfoPos) || skuInfoPos.size() < 0) { skuInfoPos = new ArrayList<>(); } + skuInfoPos.forEach(item -> { + if (item.getDiscountAmount() != null) { + item.setPriceAmount(item.getPriceAmount().subtract(item.getDiscountAmount())); + } + }); orderInfo.setSkuInfos(skuInfoPos); } diff --git a/src/main/resources/mapper/TbOrderInfoMapper.xml b/src/main/resources/mapper/TbOrderInfoMapper.xml index 0c19221..ed54032 100644 --- a/src/main/resources/mapper/TbOrderInfoMapper.xml +++ b/src/main/resources/mapper/TbOrderInfoMapper.xml @@ -611,6 +611,7 @@ select * from tb_order_info where trade_day = #{day} and table_id = #{masterId} d.product_sku_name AS productSkuName, c.category_id AS categoryId, d.price_amount as priceAmount, + d.discount_amount as discountAmount, d.pack_amount as packAmount, d.price as price, d.pro_group_info as proGroupInfo @@ -632,6 +633,7 @@ select * from tb_order_info where trade_day = #{day} and table_id = #{masterId} d.product_sku_name AS productSkuName, '' AS categoryId, d.price_amount as priceAmount, + d.discount_amount as discountAmount, d.pack_amount as packAmount, d.price as price, d.pro_group_info as proGroupInfo From 2f0b80a8dbefc701e1f18f6a8887bba2eb8b8f52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=9D=BE?= <8605635+zhang3064194730@user.noreply.gitee.com> Date: Fri, 6 Dec 2024 15:49:43 +0800 Subject: [PATCH 08/14] =?UTF-8?q?feat:=20findOrder=E4=BB=B7=E6=A0=BC?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E6=94=B9=E4=BB=B7=E5=90=8E=E7=9A=84=E4=BB=B7?= =?UTF-8?q?=E6=A0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/cashierservice/entity/po/SkuInfoPo.java | 1 + .../system/cashierservice/service/OrderService.java | 10 ++++++++-- src/main/resources/mapper/TbOrderInfoMapper.xml | 3 +++ 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/entity/po/SkuInfoPo.java b/src/main/java/com/chaozhanggui/system/cashierservice/entity/po/SkuInfoPo.java index 60228be..5e52d8f 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/entity/po/SkuInfoPo.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/entity/po/SkuInfoPo.java @@ -15,5 +15,6 @@ public class SkuInfoPo { private BigDecimal packAmount; private String categoryId; private BigDecimal price; + private BigDecimal memberPrice; private String proGroupInfo; } diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java index 37ff75c..61843f3 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java @@ -1521,7 +1521,10 @@ public class OrderService { } skuInfoPos.forEach(item -> { if (item.getDiscountAmount() != null) { - item.setPriceAmount(item.getPriceAmount().subtract(item.getDiscountAmount())); + item.setPrice(item.getPrice().subtract(item.getDiscountAmount())); + if (item.getMemberPrice() != null) { + item.setMemberPrice(item.getMemberPrice().subtract(item.getDiscountAmount())); + } } }); orderInfo.setSkuInfos(skuInfoPos); @@ -1532,7 +1535,10 @@ public class OrderService { } skuInfoPos.forEach(item -> { if (item.getDiscountAmount() != null) { - item.setPriceAmount(item.getPriceAmount().subtract(item.getDiscountAmount())); + item.setPrice(item.getPrice().subtract(item.getDiscountAmount())); + if (item.getMemberPrice() != null) { + item.setMemberPrice(item.getMemberPrice().subtract(item.getDiscountAmount())); + } } }); orderInfo.setSkuInfos(skuInfoPos); diff --git a/src/main/resources/mapper/TbOrderInfoMapper.xml b/src/main/resources/mapper/TbOrderInfoMapper.xml index ed54032..73b64b9 100644 --- a/src/main/resources/mapper/TbOrderInfoMapper.xml +++ b/src/main/resources/mapper/TbOrderInfoMapper.xml @@ -614,6 +614,8 @@ select * from tb_order_info where trade_day = #{day} and table_id = #{masterId} d.discount_amount as discountAmount, d.pack_amount as packAmount, d.price as price, + d.member_price as memberPrice, + d.pro_group_info as proGroupInfo FROM tb_order_detail d @@ -636,6 +638,7 @@ select * from tb_order_info where trade_day = #{day} and table_id = #{masterId} d.discount_amount as discountAmount, d.pack_amount as packAmount, d.price as price, + d.member_price as memberPrice, d.pro_group_info as proGroupInfo FROM tb_order_detail d From 8332589647acef4deec0b108361deb54a539b504 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=9D=BE?= <8605635+zhang3064194730@user.noreply.gitee.com> Date: Fri, 6 Dec 2024 15:52:57 +0800 Subject: [PATCH 09/14] =?UTF-8?q?feat:=20findOrder=E4=BB=B7=E6=A0=BC?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E6=94=B9=E4=BB=B7=E5=90=8E=E7=9A=84=E4=BB=B7?= =?UTF-8?q?=E6=A0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/cashierservice/entity/po/SkuInfoPo.java | 2 +- .../system/cashierservice/service/OrderService.java | 12 ++++++------ src/main/resources/mapper/TbOrderInfoMapper.xml | 4 ++-- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/entity/po/SkuInfoPo.java b/src/main/java/com/chaozhanggui/system/cashierservice/entity/po/SkuInfoPo.java index 5e52d8f..f3feab0 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/entity/po/SkuInfoPo.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/entity/po/SkuInfoPo.java @@ -11,7 +11,7 @@ public class SkuInfoPo { private String productSkuName; private BigDecimal num; private BigDecimal priceAmount; - private BigDecimal discountAmount; + private BigDecimal discountSaleAmount; private BigDecimal packAmount; private String categoryId; private BigDecimal price; diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java index 61843f3..84262a2 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java @@ -1520,10 +1520,10 @@ public class OrderService { skuInfoPos = new ArrayList<>(); } skuInfoPos.forEach(item -> { - if (item.getDiscountAmount() != null) { - item.setPrice(item.getPrice().subtract(item.getDiscountAmount())); + if (item.getDiscountSaleAmount() != null) { + item.setPrice(item.getPrice().subtract(item.getDiscountSaleAmount())); if (item.getMemberPrice() != null) { - item.setMemberPrice(item.getMemberPrice().subtract(item.getDiscountAmount())); + item.setMemberPrice(item.getMemberPrice().subtract(item.getDiscountSaleAmount())); } } }); @@ -1534,10 +1534,10 @@ public class OrderService { skuInfoPos = new ArrayList<>(); } skuInfoPos.forEach(item -> { - if (item.getDiscountAmount() != null) { - item.setPrice(item.getPrice().subtract(item.getDiscountAmount())); + if (item.getDiscountSaleAmount() != null) { + item.setPrice(item.getPrice().subtract(item.getDiscountSaleAmount())); if (item.getMemberPrice() != null) { - item.setMemberPrice(item.getMemberPrice().subtract(item.getDiscountAmount())); + item.setMemberPrice(item.getMemberPrice().subtract(item.getDiscountSaleAmount())); } } }); diff --git a/src/main/resources/mapper/TbOrderInfoMapper.xml b/src/main/resources/mapper/TbOrderInfoMapper.xml index 73b64b9..035d19b 100644 --- a/src/main/resources/mapper/TbOrderInfoMapper.xml +++ b/src/main/resources/mapper/TbOrderInfoMapper.xml @@ -611,7 +611,7 @@ select * from tb_order_info where trade_day = #{day} and table_id = #{masterId} d.product_sku_name AS productSkuName, c.category_id AS categoryId, d.price_amount as priceAmount, - d.discount_amount as discountAmount, + d.discount_sale_amount as discountSaleAmount, d.pack_amount as packAmount, d.price as price, d.member_price as memberPrice, @@ -635,7 +635,7 @@ select * from tb_order_info where trade_day = #{day} and table_id = #{masterId} d.product_sku_name AS productSkuName, '' AS categoryId, d.price_amount as priceAmount, - d.discount_amount as discountAmount, + d.discount_sale_amount as discountSaleAmount, d.pack_amount as packAmount, d.price as price, d.member_price as memberPrice, From 60d3fd0360ee560594a147ad1bc677b70187d83c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=9D=BE?= <8605635+zhang3064194730@user.noreply.gitee.com> Date: Fri, 6 Dec 2024 16:16:43 +0800 Subject: [PATCH 10/14] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E8=B4=AD?= =?UTF-8?q?=E7=89=A9=E8=BD=A6=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cashierservice/service/OrderService.java | 184 ++++++++++++------ 1 file changed, 122 insertions(+), 62 deletions(-) diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java index 84262a2..61e382b 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java @@ -246,7 +246,7 @@ public class OrderService { cashierCart.setProGroupInfo(JSONObject.toJSONString(foods)); } - }else if (isFixGroup) { + } else if (isFixGroup) { String groupSnap = product.getGroupSnap(); if (StrUtil.isNotBlank(groupSnap)) { ArrayList foods = new ArrayList<>(); @@ -266,6 +266,7 @@ public class OrderService { } } + @Transactional(rollbackFor = Exception.class) public Result createCart(String masterId, Integer productId, Integer shopId, Integer skuId, BigDecimal number, String userId, String clientType, Integer cartId, String isGift, String isPack, String uuid, @@ -291,7 +292,6 @@ public class OrderService { } } - String finalMasterId = masterId; LambdaQueryWrapper cartQuery = new LambdaQueryWrapper() .eq(TbCashierCart::getShopId, shopId) @@ -304,7 +304,7 @@ public class OrderService { .eq(TbCashierCart::getSkuId, skuId); } - if (cartId != null) { + if (cartId != null) { cartQuery.eq(TbCashierCart::getId, cartId); } @@ -354,13 +354,15 @@ public class OrderService { } } boolean needNew = false; + boolean isGroup = false; List list = cashierCartMapper.selectALlByMasterId(masterId, "create"); TbCashierCart cashierCart = null; - if (type.equals("edit") ) { + if (type.equals("edit")) { cashierCart = getCashierInfo(shopId, skuId, productId, tableId, masterId, shopEatTypeInfoDTO, cartId); - if (cashierCart == null) { + isGroup = cashierCart != null && cashierCart.getGroupType() != null && cashierCart.getGroupType() == 1; + if (cashierCart == null || isGroup) { needNew = true; - }else { + } else { // 校验是否是代客下单往期订单 if (shopEatTypeInfoDTO.isDineInAfter() && cashierCart.getPlaceNum() != null && !isSeatCart) { return Result.fail("后付费已下单订单仅支持退款"); @@ -417,66 +419,123 @@ public class OrderService { } - if (type.equals("add") || needNew){ - cashierCart = new TbCashierCart(); - cashierCart.setUseType(shopEatTypeInfoDTO.getUseType()); - if (product != null) { - cashierCart.setCoverImg(product.getCoverImg()); - cashierCart.setIsSku(product.getTypeEnum()); - cashierCart.setName(product.getName()); - cashierCart.setCategoryId(product.getCategoryId()); - cashierCart.setTypeEnum(product.getTypeEnum()); - cashierCart.setGroupType(product.getGroupType()); - } - cashierCart.setCreatedAt(System.currentTimeMillis()); - cashierCart.setMasterId(masterId); - cashierCart.setUuid(uuid); - cashierCart.setMerchantId(userId); - cashierCart.setProductId(productId == null ? null : productId.toString()); - if (skuWithBLOBs != null) { - cashierCart.setSalePrice(skuWithBLOBs.getSalePrice()); - cashierCart.setSkuId(skuWithBLOBs.getId().toString()); - cashierCart.setSkuName(skuWithBLOBs.getSpecSnap()); - cashierCart.setMemberPrice(skuWithBLOBs.getMemberPrice()); - cashierCart.setIsMember(0); - } - cashierCart.setIsPrint(isPrint); - cashierCart.setShopId(shopId.toString()); - cashierCart.setTradeDay(DateUtils.getDay()); - cashierCart.setStatus("create"); - cashierCart.setIsPack(isPack); - cashierCart.setIsGift(isGift); - if (isGift.equals("false")) { - if (isSeatCart) { - cashierCart.setTotalAmount(number.multiply(cashierCart.getSalePrice())); + if (type.equals("add") || needNew) { + cashierCart = getCashierInfo(shopId, skuId, productId, tableId, masterId, shopEatTypeInfoDTO, cartId); + if (cashierCart != null && !isGroup) { +// 校验是否是代客下单往期订单 + if (shopEatTypeInfoDTO.isDineInAfter() && cashierCart.getPlaceNum() != null && !isSeatCart) { + return Result.fail("后付费已下单订单仅支持退款"); + } + + if (skuWithBLOBs != null && skuWithBLOBs.getSuit() != null && skuWithBLOBs.getSuit() != 0 && number.compareTo(BigDecimal.valueOf(skuWithBLOBs.getSuit())) < 0) { + delCart(masterId, cartId); + if (cashierCart.getOrderId() != null && StrUtil.isNotBlank(cashierCart.getTableId())) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper() + .notIn(TbCashierCart::getStatus, "final", "refund", "closed", "pending") + .eq(TbCashierCart::getShopId, cashierCart.getShopId()); + + TbCashierCart finalCart = cashierCart; + queryWrapper.eq(TbCashierCart::getTableId, cashierCart.getTableId()) + .and(q -> q.or( + query -> query.eq(TbCashierCart::getMasterId, finalCart.getMasterId()) + .or() + .isNull(TbCashierCart::getMasterId) + .or() + .eq(TbCashierCart::getMasterId, "") + ) + .or(query -> query.eq(TbCashierCart::getOrderId, finalCart.getOrderId()) + .or() + .isNull(TbCashierCart::getOrderId))); + + List list1 = mpCashierCartMapper.selectList(queryWrapper.eq(TbCashierCart::getStatus, "create")); + + if (list1.isEmpty()) { + tbOrderInfoMapper.deleteByPrimaryKey(cashierCart.getOrderId()); + } + } + + setRedisTableCartInfo(tableId, shopId, Collections.singletonList(cashierCart), false); + return Result.success(CodeEnum.SUCCESS, masterId); + } + + cashierCart.setNumber(number); + if (product != null) { + resetGroupProductCart(groupProductIdList, product, cashierCart); + } + cashierCart.setTotalNumber(number); + cashierCart.setIsPrint(isPrint); + cashierCart.setIsPack(isPack); + cashierCart.resetTotalAmount(); + cashierCart.setUuid(uuid); + cashierCart.setIsPrint(isPrint); + cashierCart.resetTotalAmount(); + if (product != null) { + resetGroupProductCart(groupProductIdList, product, cashierCart); + } + + mpCashierCartMapper.updateById(cashierCart); + } else { + + cashierCart = new TbCashierCart(); + cashierCart.setUseType(shopEatTypeInfoDTO.getUseType()); + if (product != null) { + cashierCart.setCoverImg(product.getCoverImg()); + cashierCart.setIsSku(product.getTypeEnum()); + cashierCart.setName(product.getName()); + cashierCart.setCategoryId(product.getCategoryId()); + cashierCart.setTypeEnum(product.getTypeEnum()); + cashierCart.setGroupType(product.getGroupType()); + } + cashierCart.setCreatedAt(System.currentTimeMillis()); + cashierCart.setMasterId(masterId); + cashierCart.setUuid(uuid); + cashierCart.setMerchantId(userId); + cashierCart.setProductId(productId == null ? null : productId.toString()); + if (skuWithBLOBs != null) { + cashierCart.setSalePrice(skuWithBLOBs.getSalePrice()); + cashierCart.setSkuId(skuWithBLOBs.getId().toString()); + cashierCart.setSkuName(skuWithBLOBs.getSpecSnap()); + cashierCart.setMemberPrice(skuWithBLOBs.getMemberPrice()); + cashierCart.setIsMember(0); + } + cashierCart.setIsPrint(isPrint); + cashierCart.setShopId(shopId.toString()); + cashierCart.setTradeDay(DateUtils.getDay()); + cashierCart.setStatus("create"); + cashierCart.setIsPack(isPack); + cashierCart.setIsGift(isGift); + if (isGift.equals("false")) { + if (isSeatCart) { + cashierCart.setTotalAmount(number.multiply(cashierCart.getSalePrice())); + } else { + cashierCart.setTotalAmount(number.multiply(skuWithBLOBs.getSalePrice())); + } } else { - cashierCart.setTotalAmount(number.multiply(skuWithBLOBs.getSalePrice())); + cashierCart.setTotalAmount(BigDecimal.ZERO); } - } else { - cashierCart.setTotalAmount(BigDecimal.ZERO); - } - if (isPack.equals("false")) { - cashierCart.setPackFee(BigDecimal.ZERO); - } else { - if (!isSeatCart) { - cashierCart.setPackFee(number.multiply(product == null ? BigDecimal.ZERO : product.getPackFee())); + if (isPack.equals("false")) { + cashierCart.setPackFee(BigDecimal.ZERO); + } else { + if (!isSeatCart) { + cashierCart.setPackFee(number.multiply(product == null ? BigDecimal.ZERO : product.getPackFee())); + } + cashierCart.setTotalAmount(cashierCart.getTotalAmount().add(cashierCart.getPackFee())); } - cashierCart.setTotalAmount(cashierCart.getTotalAmount().add(cashierCart.getPackFee())); + if (skuWithBLOBs != null && skuWithBLOBs.getSuit() != null && skuWithBLOBs.getSuit() != 0 && number.compareTo(BigDecimal.valueOf(skuWithBLOBs.getSuit())) < 0) { + number = BigDecimal.valueOf(skuWithBLOBs.getSuit()); + } + cashierCart.setTotalNumber(number); + cashierCart.setNumber(number); + cashierCart.setUserId(Integer.valueOf(userId)); + cashierCart.setUuid(uuid); + cashierCart.setTableId(tableId); + cashierCart.setPlatformType(OrderPlatformTypeEnum.CASH.getValue()); + if (product != null) { + resetGroupProductCart(groupProductIdList, product, cashierCart); + } + list.add(cashierCart); + mpCashierCartMapper.insert(cashierCart); } - if (skuWithBLOBs != null && skuWithBLOBs.getSuit() != null && skuWithBLOBs.getSuit() != 0 && number.compareTo(BigDecimal.valueOf(skuWithBLOBs.getSuit())) < 0) { - number = BigDecimal.valueOf(skuWithBLOBs.getSuit()); - } - cashierCart.setTotalNumber(number); - cashierCart.setNumber(number); - cashierCart.setUserId(Integer.valueOf(userId)); - cashierCart.setUuid(uuid); - cashierCart.setTableId(tableId); - cashierCart.setPlatformType(OrderPlatformTypeEnum.CASH.getValue()); - if (product != null) { - resetGroupProductCart(groupProductIdList, product, cashierCart); - } - list.add(cashierCart); - mpCashierCartMapper.insert(cashierCart); } @@ -1185,6 +1244,7 @@ public class OrderService { return Result.success(CodeEnum.SUCCESS, orderInfo); } + private void updateOrderDetailCanReturn(List orderDetailList, TbOrderInfo orderInfo) { orderDetailList = orderDetailList.stream().filter(item -> TableConstant.OrderInfo.Status.UNPAID.equalsVals(item.getStatus())).collect(Collectors.toList()); BigDecimal totalAmount = BigDecimal.ZERO; From 9cc0643763a63c37a6f89e9b019f6e0d85f2a7ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=9D=BE?= <8605635+zhang3064194730@user.noreply.gitee.com> Date: Fri, 6 Dec 2024 16:19:48 +0800 Subject: [PATCH 11/14] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E8=B4=AD?= =?UTF-8?q?=E7=89=A9=E8=BD=A6=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/cashierservice/service/OrderService.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java index 61e382b..7d7e753 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java @@ -422,7 +422,7 @@ public class OrderService { if (type.equals("add") || needNew) { cashierCart = getCashierInfo(shopId, skuId, productId, tableId, masterId, shopEatTypeInfoDTO, cartId); if (cashierCart != null && !isGroup) { -// 校验是否是代客下单往期订单 + // 校验是否是代客下单往期订单 if (shopEatTypeInfoDTO.isDineInAfter() && cashierCart.getPlaceNum() != null && !isSeatCart) { return Result.fail("后付费已下单订单仅支持退款"); } @@ -458,6 +458,7 @@ public class OrderService { return Result.success(CodeEnum.SUCCESS, masterId); } + number = cashierCart.getNumber().add(number); cashierCart.setNumber(number); if (product != null) { resetGroupProductCart(groupProductIdList, product, cashierCart); From 4944bd1e8a0e456050f03ed7ee0feae3e05f0cf9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=9D=BE?= <8605635+zhang3064194730@user.noreply.gitee.com> Date: Fri, 6 Dec 2024 16:23:09 +0800 Subject: [PATCH 12/14] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E8=B4=AD?= =?UTF-8?q?=E7=89=A9=E8=BD=A6=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../chaozhanggui/system/cashierservice/service/OrderService.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java index 7d7e753..d975a59 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java @@ -421,6 +421,7 @@ public class OrderService { if (type.equals("add") || needNew) { cashierCart = getCashierInfo(shopId, skuId, productId, tableId, masterId, shopEatTypeInfoDTO, cartId); + isGroup = cashierCart != null && cashierCart.getGroupType() != null && cashierCart.getGroupType() == 1; if (cashierCart != null && !isGroup) { // 校验是否是代客下单往期订单 if (shopEatTypeInfoDTO.isDineInAfter() && cashierCart.getPlaceNum() != null && !isSeatCart) { From 91f63dfd9d1b9df493f6ed642e48f09d57e1b0fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=9D=BE?= <8605635+zhang3064194730@user.noreply.gitee.com> Date: Fri, 6 Dec 2024 16:26:44 +0800 Subject: [PATCH 13/14] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E8=B4=AD?= =?UTF-8?q?=E7=89=A9=E8=BD=A6=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/cashierservice/service/OrderService.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java index d975a59..24bd3e9 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java @@ -420,8 +420,10 @@ public class OrderService { } if (type.equals("add") || needNew) { - cashierCart = getCashierInfo(shopId, skuId, productId, tableId, masterId, shopEatTypeInfoDTO, cartId); - isGroup = cashierCart != null && cashierCart.getGroupType() != null && cashierCart.getGroupType() == 1; + if (product == null || product.getGroupType() == null || product.getGroupType() != 1) { + cashierCart = getCashierInfo(shopId, skuId, productId, tableId, masterId, shopEatTypeInfoDTO, cartId); + } + if (cashierCart != null && !isGroup) { // 校验是否是代客下单往期订单 if (shopEatTypeInfoDTO.isDineInAfter() && cashierCart.getPlaceNum() != null && !isSeatCart) { From 3fe4fc8a515f11f3fa8ca93b05833bc188113f04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=9D=BE?= <8605635+zhang3064194730@user.noreply.gitee.com> Date: Fri, 6 Dec 2024 16:28:40 +0800 Subject: [PATCH 14/14] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E8=B4=AD?= =?UTF-8?q?=E7=89=A9=E8=BD=A6=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/cashierservice/service/OrderService.java | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java index 24bd3e9..949e60c 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/OrderService.java @@ -354,13 +354,11 @@ public class OrderService { } } boolean needNew = false; - boolean isGroup = false; List list = cashierCartMapper.selectALlByMasterId(masterId, "create"); TbCashierCart cashierCart = null; if (type.equals("edit")) { cashierCart = getCashierInfo(shopId, skuId, productId, tableId, masterId, shopEatTypeInfoDTO, cartId); - isGroup = cashierCart != null && cashierCart.getGroupType() != null && cashierCart.getGroupType() == 1; - if (cashierCart == null || isGroup) { + if (cashierCart == null) { needNew = true; } else { // 校验是否是代客下单往期订单 @@ -424,7 +422,7 @@ public class OrderService { cashierCart = getCashierInfo(shopId, skuId, productId, tableId, masterId, shopEatTypeInfoDTO, cartId); } - if (cashierCart != null && !isGroup) { + if (cashierCart != null) { // 校验是否是代客下单往期订单 if (shopEatTypeInfoDTO.isDineInAfter() && cashierCart.getPlaceNum() != null && !isSeatCart) { return Result.fail("后付费已下单订单仅支持退款");