From 7e9667699856022efcac2941eacddd25e20d0c1f Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期一, 16 十二月 2024 15:40:06 +0800 Subject: [PATCH] 新增加管理后台订单模块接口 --- ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java | 62 +++++++++++++++++++++++++++--- 1 files changed, 55 insertions(+), 7 deletions(-) diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java index a5a8b35..ec7c38a 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java @@ -74,19 +74,19 @@ @Resource private VipSettingClient vipSettingClient; + + @Resource + private PointSettingClient pointSettingClient; @Resource private UserChangeLogService userChangeLogService; - + @Value("${file.upload.location}") private String filePath; @Value("${file.upload.accessPath}") private String accessPath; - - @Resource - private PointSettingClient pointSettingClient; - + @Resource private UserPointService userPointService; @@ -297,8 +297,22 @@ appUser.setTotalRedPacketAmount(BigDecimal.ZERO); appUser.setTotalDistributionAmount(BigDecimal.ZERO); appUser.setBalance(BigDecimal.ZERO); - appUser.setLavePoint(0); - appUser.setTotalPoint(0); + R<PointSetting> pointSettingR = pointSettingClient.getPointSetting(1); + if (R.isError(pointSettingR)){ + throw new RuntimeException("获取积分设置失败"); + } + PointSetting pointSetting = pointSettingR.getData(); + if (pointSetting == null){ + throw new RuntimeException("积分设置不存在"); + } + Integer getRegisPoint = pointSetting.getGetRegisPoint(); + Integer getRegisPoint1 = getRegisPoint; + //计算可用积分比例 + if(1 == pointSetting.getGetRegisPointOpen()){ + getRegisPoint1 = getRegisPoint1 * (100 - pointSetting.getGetRegisPoint()); + } + appUser.setLavePoint(getRegisPoint1); + appUser.setTotalPoint(getRegisPoint); //根据平台的配置未达标,则标注为可修改推广人 appUser.setChangePromoter(0); appUser.setLongitude(registerAccount.getLongitude()); @@ -311,6 +325,18 @@ // appUser.setDistrict(); // appUser.setDistrictCode(); this.save(appUser); + //增加积分变动记录 + if(getRegisPoint1 > 0){ + //构建积分流水记录 + UserPoint userPoint = new UserPoint(); + userPoint.setType(10); + userPoint.setHistoricalPoint(0); + userPoint.setVariablePoint(getRegisPoint1); + userPoint.setBalance(appUser.getLavePoint()); + userPoint.setCreateTime(LocalDateTime.now()); + userPoint.setAppUserId(appUser.getId()); + userPointService.save(userPoint); + } //获取微信推广二维码 String fileName = UUID.randomUUID() + ".jpg"; weChatUtil.getwxacodeunlimit("pages/login/login", "id=" + appUser.getId(), EnvVersion.DEVELOP, filePath + fileName); @@ -367,6 +393,28 @@ */ public void vipUpgrade(Long id){ AppUser appUser = this.getById(id); + Integer lavePoint = appUser.getLavePoint(); + //计算积分 + PointSetting pointSetting = pointSettingClient.getPointSetting(appUser.getVipId()).getData(); + Integer newPoint = pointSetting.getNewPoint(); + Integer newPoint1 = newPoint; + if(null != pointSetting && 1 == pointSetting.getGetNewPointOpen()){ + newPoint1 = newPoint1 * (100 - pointSetting.getGetNewPoint()); + } + appUser.setLavePoint(appUser.getLavePoint() + newPoint1); + appUser.setTotalPoint(appUser.getTotalPoint() + newPoint); + //记录积分变动 + if(newPoint1 > 0){ + //构建积分流水记录 + UserPoint userPoint = new UserPoint(); + userPoint.setType(3); + userPoint.setHistoricalPoint(lavePoint); + userPoint.setVariablePoint(newPoint1); + userPoint.setBalance(appUser.getLavePoint()); + userPoint.setCreateTime(LocalDateTime.now()); + userPoint.setAppUserId(appUser.getId()); + userPointService.save(userPoint); + } Integer vipId = appUser.getVipId(); //钻石会员 VipSetting vipSetting3 = vipSettingClient.getVipSetting(3).getData(); -- Gitblit v1.7.1