|
|
@@ -4,16 +4,18 @@ import cn.reghao.jutil.jdk.converter.DateTimeConverter;
|
|
|
import cn.reghao.jutil.jdk.result.Result;
|
|
|
import cn.reghao.tnb.common.auth.UserContext;
|
|
|
import cn.reghao.tnb.user.app.db.mapper.UserVipMapper;
|
|
|
-import cn.reghao.tnb.user.app.db.mapper.VipPlanMapper;
|
|
|
+import cn.reghao.tnb.user.app.model.constant.VipMember;
|
|
|
import cn.reghao.tnb.user.app.model.dto.BuyVip;
|
|
|
import cn.reghao.tnb.user.app.model.po.UserVip;
|
|
|
-import cn.reghao.tnb.user.app.model.po.VipPlan;
|
|
|
+import cn.reghao.tnb.user.app.model.vo.VipPlan;
|
|
|
import cn.reghao.tnb.user.app.model.vo.MyVip;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.time.Duration;
|
|
|
import java.time.LocalDateTime;
|
|
|
+import java.util.Arrays;
|
|
|
import java.util.List;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* @author reghao
|
|
|
@@ -22,12 +24,10 @@ import java.util.List;
|
|
|
@Service
|
|
|
public class UserVipService {
|
|
|
private final UserVipMapper userVipMapper;
|
|
|
- private final VipPlanMapper vipPlanMapper;
|
|
|
private final WalletService walletService;
|
|
|
|
|
|
- public UserVipService(UserVipMapper userVipMapper, VipPlanMapper vipPlanMapper, WalletService walletService) {
|
|
|
+ public UserVipService(UserVipMapper userVipMapper, WalletService walletService) {
|
|
|
this.userVipMapper = userVipMapper;
|
|
|
- this.vipPlanMapper = vipPlanMapper;
|
|
|
this.walletService = walletService;
|
|
|
}
|
|
|
|
|
|
@@ -54,16 +54,19 @@ public class UserVipService {
|
|
|
}
|
|
|
|
|
|
public List<VipPlan> getVipPlans() {
|
|
|
- return vipPlanMapper.findAll();
|
|
|
+ return Arrays.stream(VipMember.values())
|
|
|
+ .map(VipPlan::new)
|
|
|
+ .collect(Collectors.toList());
|
|
|
}
|
|
|
|
|
|
public Result buyVip(BuyVip buyVip) throws Exception {
|
|
|
int planId = buyVip.getPlanId();
|
|
|
- VipPlan vipPlan = vipPlanMapper.findByPlanId(planId);
|
|
|
- if (vipPlan == null) {
|
|
|
+ VipMember vipMember = VipMember.getByPlanId(planId);
|
|
|
+ if (vipMember == null) {
|
|
|
return Result.fail("vip 计划不存在");
|
|
|
}
|
|
|
|
|
|
+ VipPlan vipPlan = new VipPlan(vipMember);
|
|
|
long userId = UserContext.getUserId();
|
|
|
try {
|
|
|
double price = vipPlan.getPrice();
|