This commit is contained in:
张良(004796)
2024-04-23 18:43:40 +08:00
parent b8ab640601
commit fa50bcbd81
3 changed files with 26 additions and 0 deletions

View File

@@ -15,11 +15,13 @@ import com.ruoyi.xq.enums.vip.VipStatusEnum;
import com.ruoyi.xq.service.UserVipService;
import com.ruoyi.xq.service.VipOrderService;
import com.ruoyi.xq.service.VipPriceService;
import com.ruoyi.xq.util.CaiNumUtil;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
@@ -43,6 +45,18 @@ public class VipAppController {
List<VipPrice> vipPrices = vipPriceService.listByVipType(vipType);
UserVip userVip = userVipService.getUserVip(userId, vipType);
VipHomeVo vo = new VipHomeVo();
for (VipPrice vipPrice : vipPrices) {
if(vipPrice.getVipTime().equals(1)){
vipPrice.setDayVipPrice(CaiNumUtil.vipDays(vipPrice.getVipPrice(),30L));
}else if(vipPrice.getVipTime().equals(2)){
vipPrice.setDayVipPrice(CaiNumUtil.vipDays(vipPrice.getVipPrice(),90L));
}else if(vipPrice.getVipTime().equals(3)){
vipPrice.setDayVipPrice(CaiNumUtil.vipDays(vipPrice.getVipPrice(),365L));
}else{
vipPrice.setDayVipPrice(new BigDecimal("0.01"));
}
}
vo.setVipPriceList(vipPrices);
vo.setUserId(userId);
if(userVip == null){

View File

@@ -1,5 +1,6 @@
package com.ruoyi.xq.domain;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
@@ -45,6 +46,9 @@ public class VipPrice implements Serializable {
private BigDecimal vipPrice;
@Schema(description = "赠送微信交换次数")
private Long giveWxTransNum;
@Schema(description = "会员每日价格")
@TableField(exist = false)
private BigDecimal dayVipPrice;
/**
* 1-启用 0-禁用
*/

View File

@@ -50,4 +50,12 @@ public class CaiNumUtil {
return NumberUtil.div(diff,onlineLastNum,3);
}
public static BigDecimal vipDays(BigDecimal bigDecimal, Long type){
BigDecimal div = NumberUtil.div(bigDecimal, type, 2);
if(div.equals(BigDecimal.ZERO)){
return new BigDecimal("0.01");
}
return div;
}
}