From d341be8242db41136119a842e29194af4902a9b7 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期二, 10 十二月 2024 18:35:14 +0800 Subject: [PATCH] 同步代码 --- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java | 35 +++++++++++++++++++---------------- 1 files changed, 19 insertions(+), 16 deletions(-) diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java index d589c8d..65b8f29 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java @@ -105,6 +105,9 @@ @Resource private UserChangeLogClient userChangeLogClient; + @Resource + private PointSettingClient pointSettingClient; + @@ -949,13 +952,18 @@ } //构建积分流水记录 if(earnPoint > 0){ + PointSetting pointSetting = pointSettingClient.getPointSetting(appUser.getVipId()).getData(); + int earnPoint1 = earnPoint; + if(null != pointSetting && 1 == pointSetting.getBuyPointOpen()){ + earnPoint1 = earnPoint1 * (100 - pointSetting.getBuyPoint()); + } appUser.setShopPoint(appUser.getShopPoint() + earnPoint); - appUser.setLavePoint(appUser.getLavePoint() + earnPoint); + appUser.setLavePoint(appUser.getLavePoint() + earnPoint1); appUser.setTotalPoint(appUser.getTotalPoint() + earnPoint); UserPoint userPoint = new UserPoint(); userPoint.setType(1); - userPoint.setHistoricalPoint(appUser.getLavePoint() - earnPoint); + userPoint.setHistoricalPoint(appUser.getLavePoint() - earnPoint1); userPoint.setVariablePoint(earnPoint); userPoint.setBalance(appUser.getLavePoint()); userPoint.setCreateTime(LocalDateTime.now()); @@ -988,9 +996,15 @@ //积分支付 if(3 == shoppingCartPayment.getPaymentType()){ Integer lavePoint = appUser.getLavePoint(); - appUser.setLavePoint(lavePoint - orderPoint); + PointSetting pointSetting = pointSettingClient.getPointSetting(appUser.getVipId()).getData(); + int earnPoint1 = earnPoint; + //计算可用积分比例 + if(null != pointSetting && 1 == pointSetting.getBuyPointOpen()){ + earnPoint1 = earnPoint1 * (100 - pointSetting.getBuyPoint()); + } + appUser.setLavePoint(appUser.getLavePoint() - orderPoint); appUser.setShopPoint(appUser.getShopPoint() + earnPoint); - appUser.setLavePoint(appUser.getLavePoint() + earnPoint); + appUser.setLavePoint(appUser.getLavePoint() + earnPoint1); appUser.setTotalPoint(appUser.getTotalPoint() + earnPoint); appUser.setShopAmount(appUser.getShopAmount().add(paymentMoney).setScale(2, RoundingMode.HALF_EVEN)); appUser.setLastShopTime(LocalDateTime.now()); @@ -1000,7 +1014,7 @@ //构建积分流水记录 UserPoint userPoint = new UserPoint(); - userPoint.setType(4); + userPoint.setType(1); userPoint.setHistoricalPoint(lavePoint); userPoint.setVariablePoint(orderPoint); userPoint.setBalance(appUser.getLavePoint()); @@ -1008,17 +1022,6 @@ userPoint.setAppUserId(appUser.getId()); userPoint.setObjectId(order.getId()); userPointClient.saveUserPoint(userPoint); - if(earnPoint > 0){ - userPoint = new UserPoint(); - userPoint.setType(1); - userPoint.setHistoricalPoint(appUser.getLavePoint() - earnPoint); - userPoint.setVariablePoint(earnPoint); - userPoint.setBalance(appUser.getLavePoint()); - userPoint.setCreateTime(LocalDateTime.now()); - userPoint.setAppUserId(appUser.getId()); - userPoint.setObjectId(order.getId()); - userPointClient.saveUserPoint(userPoint); - } //如果有运费,需要先扣除账户积分,再进行支付。支付成功后修改订单状态,未支付成功则回退积分,删除的订单 if(expressFee.compareTo(BigDecimal.ZERO) > 0){ if(shoppingCartPayment.getFreightPaymentType() == 1){ -- Gitblit v1.7.1