From 85e4d11d6eaeaa6254200c51ae5eb7b8c5b1b836 Mon Sep 17 00:00:00 2001 From: wangw <1594593906@qq.com> Date: Thu, 27 Nov 2025 09:51:08 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B5=A0=E9=80=81=E6=A0=87=E8=AF=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/czg/order/entity/OrderDetail.java | 17 ++++------------- .../impl/OrderInfoCustomServiceImpl.java | 6 +++--- .../main/resources/mapper/CashierCartMapper.xml | 1 + 3 files changed, 8 insertions(+), 16 deletions(-) diff --git a/cash-common/cash-common-service/src/main/java/com/czg/order/entity/OrderDetail.java b/cash-common/cash-common-service/src/main/java/com/czg/order/entity/OrderDetail.java index 1286e8790..5e1591777 100644 --- a/cash-common/cash-common-service/src/main/java/com/czg/order/entity/OrderDetail.java +++ b/cash-common/cash-common-service/src/main/java/com/czg/order/entity/OrderDetail.java @@ -67,6 +67,10 @@ public class OrderDetail implements Serializable { * 最终单价 */ private BigDecimal unitPrice; + /** + * 是否赠送 0否 1是 + */ + private Integer isGift; /** * 折扣金额(商品优惠券抵扣金额) @@ -195,19 +199,6 @@ public class OrderDetail implements Serializable { */ private LocalDateTime foodServeTime; - /** - * 是否赠送 0否 1是 - */ - @Column(ignore = true) - private Integer isGift = 0; - - - public void initGift() { - if (price.compareTo(BigDecimal.ZERO) == 0) { - isGift = 1; - } - } - public BigDecimal getRefundNum() { return refundNum == null ? BigDecimal.ZERO : refundNum; } diff --git a/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/OrderInfoCustomServiceImpl.java b/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/OrderInfoCustomServiceImpl.java index 78653feac..6a64840d3 100644 --- a/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/OrderInfoCustomServiceImpl.java +++ b/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/OrderInfoCustomServiceImpl.java @@ -203,7 +203,6 @@ public class OrderInfoCustomServiceImpl implements OrderInfoCustomService { if ("Array".equals(orderDetail.getProGroupInfo())) { orderDetail.setProGroupInfo(""); } - orderDetail.initGift(); // 获取当前订单详情的 placeNum Integer placeNum = orderDetail.getPlaceNum(); // 检查 Map 中是否已经存在该 placeNum 对应的列表 @@ -250,7 +249,6 @@ public class OrderInfoCustomServiceImpl implements OrderInfoCustomService { Map> resultMap = new HashMap<>(); // 遍历订单详情列表 for (OrderDetail orderDetail : orderDetails) { - orderDetail.initGift(); // 获取当前订单详情的 placeNum Integer placeNum = orderDetail.getPlaceNum(); // 检查 Map 中是否已经存在该 placeNum 对应的列表 @@ -926,7 +924,9 @@ public class OrderInfoCustomServiceImpl implements OrderInfoCustomService { public void getOrderAmount(List orderDetails, BigDecimalDTO totalAmount, BigDecimalDTO packAmount, BigDecimalDTO tempAmount, LimitRateDTO limitRate, boolean isAllPack, Integer userAllPack, boolean isVipPrice) { for (OrderDetail orderDetail : orderDetails) { - if (orderDetail.getDiscountSaleAmount() != null && orderDetail.getDiscountSaleAmount().compareTo(BigDecimal.ZERO) > 0) { + if (orderDetail.getIsGift() == 1) { + orderDetail.setUnitPrice(BigDecimal.ZERO); + } else if (orderDetail.getDiscountSaleAmount() != null && orderDetail.getDiscountSaleAmount().compareTo(BigDecimal.ZERO) > 0) { orderDetail.setUnitPrice(orderDetail.getDiscountSaleAmount()); } else { if (orderDetail.getIsTimeDiscount() == 1) { diff --git a/cash-service/order-service/src/main/resources/mapper/CashierCartMapper.xml b/cash-service/order-service/src/main/resources/mapper/CashierCartMapper.xml index 424086d41..442c3e114 100644 --- a/cash-service/order-service/src/main/resources/mapper/CashierCartMapper.xml +++ b/cash-service/order-service/src/main/resources/mapper/CashierCartMapper.xml @@ -12,6 +12,7 @@ cart.is_temporary as isTemporary, cart.discount_sale_note as discountSaleNote, cart.is_print as isPrint, + cart.is_gift as isGift, cart.is_wait_call as isWaitCall, cart.pro_group_info as proGroupInfo, cart.remark as remark,