From 38c68a50686684625e55594ba1e3c71ab45690f9 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期三, 27 八月 2025 11:50:36 +0800 Subject: [PATCH] bug修改 --- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ChargeOrderServiceImpl.java | 39 +++++++++++++++++++++++---------------- 1 files changed, 23 insertions(+), 16 deletions(-) diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ChargeOrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ChargeOrderServiceImpl.java index 6ae4d21..54c5ba2 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ChargeOrderServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ChargeOrderServiceImpl.java @@ -346,6 +346,9 @@ public R importData(ChargeOrder chargeOrder) { Site site = siteClient.getSiteAll().getData().stream().filter(e -> e.getId() .equals(chargeOrder.getPowerStationId())).findFirst().orElse(null); + // 扣除站点系统用户的积分数 + List<SysUser> data = sysUserClient.getSysUserAll().getData(); + SysUser sysUser = data.stream().filter(e -> site.getId().equals(e.getSiteId())).findFirst().orElse(null); Integer point=0; AppUser appuser = appUserClient.getAppUserByPhone1(chargeOrder.getPhone()).getData(); //获取用户,更改积分数 @@ -361,6 +364,20 @@ appuser.setDelFlag(false); appuser.setName(appuser.getPhone().substring(0, 3) + "****" + appuser.getPhone().substring(7)); } + if (site==null){ + //先计算出积分数 + point = getPoint(chargeOrder.getTotalAmount()); + }else{ + point = getPointSite(chargeOrder.getTotalAmount(),site.getId()); + } + if (sysUser != null) { + if (sysUser.getIntegral()< point){ + return R.fail("站点积分不足"); + } + }else { + return R.fail("站点用户不存在"); + } + Integer chargePoint=appuser.getRechargePoint()==null?0:appuser.getRechargePoint();//充值积分 Integer availablePoint=appuser.getAvailablePoint()==null?0:appuser.getAvailablePoint();//可用积分 Integer totalPoint=appuser.getTotalPoint()==null?0:appuser.getTotalPoint();//总积分 @@ -372,10 +389,7 @@ if (userId==null){ return R.fail("导入订单-保存用户失败"); } - if (site==null){ - //先计算出积分数 - point = getPoint(chargeOrder.getTotalAmount()); - }else{ + if (site!=null){ point = getPointSite(chargeOrder.getTotalAmount(),site.getId()); // 增加站点端积分明细 IntegralRecord integralRecord = new IntegralRecord(); @@ -387,18 +401,11 @@ integralRecord.setCreateTime(LocalDateTime.now()); otherClient.saveIntegralRecord(integralRecord); // 扣除站点系统用户的积分数 - List<SysUser> data = sysUserClient.getSysUserAll().getData(); - SysUser sysUser = data.stream().filter(e -> e.getSiteId().equals(site.getId())).findFirst().orElse(null); - if (sysUser != null) { - if (sysUser.getIntegral()==null){ - sysUser.setIntegral(0); - } - if (sysUser.getIntegral()< point){ - return R.fail("站点积分不足"); - } - sysUser.setIntegral(sysUser.getIntegral()==null?0:sysUser.getIntegral()-point); - sysUserClient.updateSysUser(sysUser); + if (sysUser.getIntegral()==null){ + sysUser.setIntegral(0); } + sysUser.setIntegral(sysUser.getIntegral()==null?0:sysUser.getIntegral()-point); + sysUserClient.updateSysUser(sysUser); } //保存到数据库 chargeOrder.setPoint(point); @@ -473,7 +480,7 @@ throw new RuntimeException("获取积分兑换比例配置失败"); } - if (org.springframework.util.StringUtils.hasLength(data.getChargeCredit())) { + if (!org.springframework.util.StringUtils.hasLength(data.getChargeCredit())) { throw new RuntimeException("获取积分兑换比例配置失败"); } String chargeCredit = data.getChargeCredit(); -- Gitblit v1.7.1