From 865721523230a003a5aeccaf8eab031a65601932 Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Mon, 20 Dec 2021 11:40:38 +0800 Subject: [PATCH] fix --- src/main/java/cc/mrbird/febs/video/service/impl/ApiVideoMemberServiceImpl.java | 38 ++++++++++++++++++++++++++++++++++---- 1 files changed, 34 insertions(+), 4 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/video/service/impl/ApiVideoMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/video/service/impl/ApiVideoMemberServiceImpl.java index 27420d7..0568d27 100644 --- a/src/main/java/cc/mrbird/febs/video/service/impl/ApiVideoMemberServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/video/service/impl/ApiVideoMemberServiceImpl.java @@ -2,10 +2,7 @@ import cc.mrbird.febs.common.entity.FebsResponse; import cc.mrbird.febs.common.exception.FebsException; -import cc.mrbird.febs.common.utils.AppContants; -import cc.mrbird.febs.common.utils.LoginUserUtil; -import cc.mrbird.febs.common.utils.RedisUtils; -import cc.mrbird.febs.common.utils.ShareCodeUtil; +import cc.mrbird.febs.common.utils.*; import cc.mrbird.febs.video.conversion.VideoMemberConversion; import cc.mrbird.febs.video.dto.*; import cc.mrbird.febs.video.entity.AppVersion; @@ -18,6 +15,10 @@ import cc.mrbird.febs.video.vo.ApiMyVideoHistoryVo; import cc.mrbird.febs.video.vo.ApiVideoMemberVo; import cc.mrbird.febs.video.vo.ApiVipCostVo; +import cn.hutool.core.date.DateField; +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.io.unit.DataUnit; import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; @@ -33,6 +34,7 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; +import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -205,4 +207,32 @@ return rsa.encryptBase64(token + "_" + System.currentTimeMillis(), KeyType.PublicKey); } + @Override + public void extendVipTime(String type, Long memberId) { + int extendTime = 0; + switch (type) { + case "MONTH": + extendTime = 1; + break; + case "PERIOD": + extendTime = 3; + break; + case "YEAR": + extendTime = 12; + break; + } + + VideoVipInfoEntity vipInfo = videoVipInfoMapper.selectByMemberId(memberId); + if (vipInfo == null) { + vipInfo = new VideoVipInfoEntity(); + vipInfo.setBuyTime(new Date()); + vipInfo.setState(1); + vipInfo.setMemberId(memberId); + videoVipInfoMapper.insert(vipInfo); + } + + DateTime offset = DateUtil.offset(vipInfo.getBuyTime(), DateField.MONTH, extendTime); + vipInfo.setExpireTime(offset); + videoVipInfoMapper.updateById(vipInfo); + } } -- Gitblit v1.9.1