From 31f82dd209bb9a71ed8f2cbd256fdcf81cd89f40 Mon Sep 17 00:00:00 2001 From: liujiang <569804566@qq.com> Date: Fri, 19 Sep 2025 14:25:44 +0800 Subject: [PATCH] =?UTF-8?q?master=EF=BC=9A=E9=94=80=E5=94=AE/=E5=87=BA?= =?UTF-8?q?=E5=BA=93=EF=BC=8C=E5=90=8E=E7=AB=AF=E8=BF=94=E5=9B=9E=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=B0=83=E6=95=B4=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xkt/vo/storeProdColorSize/StoreSaleSnResVO.java | 2 -- .../dto/storeProdColorSize/StoreSaleSnResDTO.java | 2 -- .../impl/StoreProductColorSizeServiceImpl.java | 13 +++++++++++-- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProdColorSize/StoreSaleSnResVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProdColorSize/StoreSaleSnResVO.java index e22e94020..d208e1934 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProdColorSize/StoreSaleSnResVO.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeProdColorSize/StoreSaleSnResVO.java @@ -44,7 +44,5 @@ public class StoreSaleSnResVO { private BigDecimal amount; @ApiModelProperty(value = "[退货扫码时才有]销售数量") private BigDecimal quantity; - @ApiModelProperty(value = "[退货扫码时才有]其它优惠") - private BigDecimal otherDiscount; } diff --git a/xkt/src/main/java/com/ruoyi/xkt/dto/storeProdColorSize/StoreSaleSnResDTO.java b/xkt/src/main/java/com/ruoyi/xkt/dto/storeProdColorSize/StoreSaleSnResDTO.java index 341c7620f..ea8d4ffa2 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/dto/storeProdColorSize/StoreSaleSnResDTO.java +++ b/xkt/src/main/java/com/ruoyi/xkt/dto/storeProdColorSize/StoreSaleSnResDTO.java @@ -43,7 +43,5 @@ public class StoreSaleSnResDTO { private BigDecimal amount; @ApiModelProperty(value = "[退货扫码时才有]销售数量") private BigDecimal quantity; - @ApiModelProperty(value = "[退货扫码时才有]其它优惠") - private BigDecimal otherDiscount; } diff --git a/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreProductColorSizeServiceImpl.java b/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreProductColorSizeServiceImpl.java index f72d5cb08..d3bcf88d5 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreProductColorSizeServiceImpl.java +++ b/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreProductColorSizeServiceImpl.java @@ -21,6 +21,7 @@ import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.math.BigDecimal; import java.util.*; import java.util.function.Function; import java.util.regex.Pattern; @@ -511,8 +512,16 @@ public class StoreProductColorSizeServiceImpl implements IStoreProductColorSizeS // 查询数据库 获取条码对应的商品信息 barcodeResDTO = prodColorSizeMapper.selectOtherSn(prefixPart, snDTO.getStoreId(), snDTO.getStoreCusId()); } - return ObjectUtils.isEmpty(barcodeResDTO) ? new StoreSaleSnResDTO().setSuccess(Boolean.FALSE).setSn(snDTO.getSn()) - : barcodeResDTO.setSuccess(Boolean.TRUE).setSn(snDTO.getSn()); + if (ObjectUtils.isEmpty(barcodeResDTO)) { + return new StoreSaleSnResDTO().setSuccess(Boolean.FALSE).setSn(snDTO.getSn()); + } + // 设置档口客户优惠金额 + final BigDecimal discountedPrice = barcodeResDTO.getPrice() + .subtract(ObjectUtils.defaultIfNull(barcodeResDTO.getDiscount(), BigDecimal.ZERO)); + // 销售则数量为1 退货则数量为-1 + final BigDecimal quantity = snDTO.getRefund() ? BigDecimal.ONE.negate() : BigDecimal.ONE; + return barcodeResDTO.setSuccess(Boolean.TRUE).setSn(snDTO.getSn()).setDiscountedPrice(discountedPrice) + .setQuantity(quantity).setAmount(discountedPrice.multiply(barcodeResDTO.getQuantity())); }