package com.ruoyi.other.controller; import com.ruoyi.account.api.feignClient.AppUserClient; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.security.service.TokenService; import com.ruoyi.other.api.domain.BaseSetting; import com.ruoyi.other.api.domain.Goods; import com.ruoyi.other.api.domain.VipGood; import com.ruoyi.other.api.domain.VipSetting; import com.ruoyi.other.api.feignClient.GoodsClient; import com.ruoyi.other.dto.SetDto; import com.ruoyi.other.dto.VipSetDto; import com.ruoyi.other.service.BaseSettingService; import com.ruoyi.other.service.VipGoodService; import com.ruoyi.other.service.VipSettingService; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiParam; import javax.annotation.Resource; import java.math.BigDecimal; import java.util.ArrayList; import java.util.List; /** *

* 前端控制器 *

* * @author luodangjia * @since 2024-11-20 */ @RestController @RequestMapping("/vip-setting") @Api("会员设置") public class VipSettingController { @Resource private VipSettingService vipSettingService; @Resource private AppUserClient appUserClient; @Resource private TokenService tokenService; @Resource private VipGoodService vipGoodService; @Resource private BaseSettingService baseSettingService; @Resource private GoodsClient goodsClient; @Resource private VipGoodService getVipGoodService; @GetMapping("/info") @ApiOperation(value = "获取各级会员信息", tags = {"小程序-个人中心首页", "小程序-会员中心"}) public R> info() { List list = vipSettingService.list(); return R.ok(list); } // @PostMapping("/button/agent/check") // @ApiOperation(value = "准代理,代理按钮是否展示", tags = {"小程序-个人中心首页","小程序-会员中心"}) // public R buttoncheck(@ApiParam("4准代理,5代理")Integer id) { // Long userid = tokenService.getLoginUserApplet().getUserid(); // AppUser appUserById = appUserClient.getAppUserById(userid); // Boolean back = true; // VipSetting byId = vipSettingService.getById(id); // //第一种判断 // if (byId == null) { // back = false; // } else { // if (byId.getVipAgentLevelUpRole() == null || byId.getVipAgentLevelUpRole() == 0) { // back = false; // } // if (byId.getVipLevelUpShop() == null || byId.getVipLevelUpShare() == null) { // back = false; // } else { // if (back && appUserById.getShopPoint().compareTo(byId.getVipLevelUpShop()) > 0 && appUserById.getSharePoint().compareTo(byId.getVipLevelUpShare()) > 0) { // back = true; // } // } // if (back) { // return R.ok(true); // } // //第二种判断 // if (byId.getVipDirectVipRole() == null || byId.getVipDirectVipRole() == 0 || byId.getVipDirectVipNum() == null) { // back = false; // } else { // //拿到当前用户直推钻石会员人数 // Long data = appUserClient.getVipCount(userid, 3).getData(); // if (data >= byId.getVipDirectVipNum()) { // return R.ok(true); // } // } // //第三种判断 // List list = vipGoodService.lambdaQuery().eq(VipGood::getVipId, id).list(); // for (VipGood vipGood : list) { // //挨个判断是否购买商品 // // // } // } // // return R.ok(); // } @GetMapping("getVipSettingById") @ApiOperation(value = "获取会员设置") public R getVipSettingById(@ApiParam(value = "会员id") @RequestParam("id") Integer id) { return R.ok(vipSettingService.getById(id)); } /** * 查询会员配置 * @param id * @return */ @PostMapping("/getVipSetting") public R getVipSetting(@RequestParam("id") Integer id) { return R.ok(vipSettingService.getById(id)); } @GetMapping("/list") public R> getList(){ return R.ok(vipSettingService.list()); } @GetMapping("/manage/info") @ApiOperation(value = "查询", tags = {"后台-会员设置"}) public R managesetinfo() { VipSetDto vipSetDto = new VipSetDto(); VipSetting byId1 = vipSettingService.getById(1); vipSetDto.setLevel1Name(byId1.getVipName()); VipSetting byId2 = vipSettingService.getById(2); vipSetDto.setLevel2Name(byId2.getVipName()); VipSetting byId3 = vipSettingService.getById(3); vipSetDto.setLevel3Name(byId3.getVipName()); VipSetting byId4 = vipSettingService.getById(4); vipSetDto.setLevel4Name(byId4.getVipName()); VipSetting byId5 = vipSettingService.getById(5); vipSetDto.setLevel5Name(byId5.getVipName()); VipSetting byId6 = vipSettingService.getById(6); vipSetDto.setLevel6Name(byId6.getVipName()); VipSetting byId7 = vipSettingService.getById(7); vipSetDto.setLevel7Name(byId7.getVipName()); BaseSetting base1 = baseSettingService.getById(1); vipSetDto.setPartPoint(new BigDecimal(base1.getContent())); BaseSetting base2 = baseSettingService.getById(2); vipSetDto.setBottomPartPoint(new BigDecimal(base2.getContent())); return R.ok(vipSetDto); } @PostMapping("/manage/set") @ApiOperation(value = "设置", tags = {"后台-会员设置"}) public R> manageset(@RequestBody VipSetDto vipSetDto) { List vipSettingList = new ArrayList<>(); VipSetting byId1 = vipSettingService.getById(1); byId1.setVipName(vipSetDto.getLevel1Name()); vipSettingList.add(byId1); VipSetting byId2 = vipSettingService.getById(2); byId2.setVipName(vipSetDto.getLevel2Name()); vipSettingList.add(byId2); VipSetting byId3 = vipSettingService.getById(3); byId3.setVipName(vipSetDto.getLevel3Name()); vipSettingList.add(byId3); VipSetting byId4 = vipSettingService.getById(4); byId4.setVipName(vipSetDto.getLevel4Name()); vipSettingList.add(byId4); VipSetting byId5 = vipSettingService.getById(5); byId5.setVipName(vipSetDto.getLevel5Name()); vipSettingList.add(byId5); VipSetting byId6 = vipSettingService.getById(6); byId6.setVipName(vipSetDto.getLevel6Name()); vipSettingList.add(byId6); VipSetting byId7 = vipSettingService.getById(7); byId7.setVipName(vipSetDto.getLevel7Name()); vipSettingList.add(byId7); vipSettingService.updateBatchById(vipSettingList); BaseSetting base1 = baseSettingService.getById(1); base1.setContent(String.valueOf(vipSetDto.getPartPoint())); baseSettingService.updateById(base1); BaseSetting base2 = baseSettingService.getById(2); base2.setContent(String.valueOf(vipSetDto.getBottomPartPoint())); baseSettingService.updateById(base2); BaseSetting base3 = baseSettingService.getById(3); base3.setContent(vipSetDto.getVipInfo()); baseSettingService.updateById(base3); return R.ok(); } @PostMapping("/manage/level/set") @ApiOperation(value = "设置", tags = {"后台-会员等级设置"}) public R managelevelset(@RequestBody SetDto setDto) { vipSettingService.updateBatchById(setDto.getVipSettingList()); return R.ok(); } @GetMapping("/manage/level/info") @ApiOperation(value = "查询", tags = {"后台-会员等级设置"}) public R> managelevelinfo() { List list = vipSettingService.list(); for (VipSetting vipSetting : list) { if (vipSetting.getGoodIds()!=null){ String[] split = vipSetting.getGoodIds().split(","); R> goodsById = goodsClient.getGoodsById(split); if (goodsById.getData()!=null){ vipSetting.setGoodsList(goodsById.getData()); } } } return R.ok(list); } }