From 48c56a8b6be6183d220f46d417fdeb98521f0c20 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期三, 15 一月 2025 20:51:59 +0800 Subject: [PATCH] 修改 --- ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AgentApplicationController.java | 77 ++++++++++++++++++++++++++++++++++++-- 1 files changed, 72 insertions(+), 5 deletions(-) diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AgentApplicationController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AgentApplicationController.java index dac6a7d..8483e72 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AgentApplicationController.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AgentApplicationController.java @@ -1,19 +1,27 @@ package com.ruoyi.account.controller; import java.time.LocalDateTime; +import java.util.List; +import java.util.stream.Collectors; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.account.api.model.AgentApplication; import com.ruoyi.account.api.model.AppUser; import com.ruoyi.account.api.model.UserChangeLog; import com.ruoyi.account.dto.AgentQuery; +import com.ruoyi.account.api.model.VipSettingDto; import com.ruoyi.account.service.AgentApplicationService; import com.ruoyi.account.service.AppUserService; import com.ruoyi.account.service.UserChangeLogService; +import com.ruoyi.account.service.VipCenterService; import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.core.utils.bean.BeanUtils; import com.ruoyi.common.core.web.controller.BaseController; +import com.ruoyi.other.api.domain.BaseSetting; import com.ruoyi.other.api.domain.VipSetting; +import com.ruoyi.other.api.feignClient.BaseSettingClient; +import com.ruoyi.other.api.feignClient.VipSettingClient; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import org.springframework.web.bind.annotation.*; @@ -35,6 +43,10 @@ private AgentApplicationService agentApplicationService; @Resource private AppUserService appUserService; + @Resource + private BaseSettingClient baseSettingClient; + @Resource + private VipCenterService vipCenterService; @PostMapping("/apply") @ApiOperation(value = "会员申请", tags = {"会员中心-小程序"}) @@ -46,14 +58,26 @@ @PostMapping("/page") @ApiOperation(value = "会员申请列表", tags = {"后台"}) public R<IPage<AgentApplication>> page(@RequestBody AgentQuery agentQuery) { - - return R.ok(agentApplicationService.pageList(agentQuery)); + IPage<AgentApplication> agentApplicationIPage = agentApplicationService.pageList(agentQuery); + for (AgentApplication record : agentApplicationIPage.getRecords()) { + AppUser byId = appUserService.getById(record.getAppUserId()); + if (byId!=null){ + record.setVipId(byId.getVipId()); + } + } + return R.ok(agentApplicationIPage); } + @Resource + private VipSettingClient vipSettingClient; @GetMapping("/detail") @ApiOperation(value = "会员申请详情", tags = {"会员中心-小程序"}) public R<AgentApplication> detail(@RequestParam Long id) { - - return R.ok(agentApplicationService.getById(id)); + AgentApplication agentApplication = agentApplicationService.getById(id); + R<VipSetting> vipSetting = vipSettingClient.getVipSetting(agentApplication.getApplicationVipId()); + VipSettingDto vipSettingDto = new VipSettingDto(); + BeanUtils.copyProperties(vipSetting.getData(),vipSettingDto); + agentApplication.setVipSettingDto(vipSettingDto); + return R.ok(agentApplication); } @Resource private UserChangeLogService userChangeLogService; @@ -80,9 +104,52 @@ userChangeLogService.save(userChangeLog); //变更会员等级 byId1.setVipId(byId.getApplicationVipId()); + + // 当用户为合伙人时,计算合伙人积分和培育积分 + Integer vipId = byId1.getVipId(); + if (vipId == 7){ + R<BaseSetting> baseSetting = baseSettingClient.getBaseSetting(1); + BaseSetting data = baseSetting.getData(); + int basePoint = Integer.parseInt(data.getContent()); + // 当前用户计算合伙人积分 + R<VipSetting> vipSetting = vipSettingClient.getVipSetting(vipId); + Integer point = getPoint(vipSetting, byId1, basePoint); + byId1.setPartPoint(point); + // 上级计算培育积分 + R<BaseSetting> baseSetting2 = baseSettingClient.getBaseSetting(1); + BaseSetting data2 = baseSetting2.getData(); + int basePoint2 = Integer.parseInt(data2.getContent()); + Long inviteUserId = byId1.getInviteUserId(); + AppUser byId2 = appUserService.getById(inviteUserId); + if (byId2 != null){ + Integer point1 = getPoint(vipSetting, byId2, basePoint2); + byId2.setPartGrowPoint(point1); + } + } + + appUserService.updateById(byId1); return R.ok(byId); } + private Integer getPoint(R<VipSetting> vipSetting, AppUser appUser, Integer basePoint) { + VipSetting vipSettingData = vipSetting.getData(); + Integer vipLevelUpShopRole = vipSettingData.getVipLevelUpShopRole(); + int i = 1; + if (vipLevelUpShopRole == 1){ + i += 1; + } + Integer vipLevelUpNumRole = vipSettingData.getVipLevelUpNumRole(); + if (vipLevelUpNumRole == 1){ + i += 1; + } + + + if (vipCenterService.checkReadyToBePartner(appUser.getId())){ + return basePoint * i; + } + return 0; + } + } -- Gitblit v1.7.1