From 6c920885a9bc407f2f05e204ae9769631c4c80e7 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Wed, 22 Dec 2021 15:02:56 +0800 Subject: [PATCH] 20211216 --- src/main/java/cc/mrbird/febs/video/service/impl/AdminVideoMemberServiceImpl.java | 126 ++++++++++++++++++++++++++++++++++++++++- 1 files changed, 121 insertions(+), 5 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/video/service/impl/AdminVideoMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/video/service/impl/AdminVideoMemberServiceImpl.java index 0e03c5a..895d83d 100644 --- a/src/main/java/cc/mrbird/febs/video/service/impl/AdminVideoMemberServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/video/service/impl/AdminVideoMemberServiceImpl.java @@ -3,22 +3,35 @@ import cc.mrbird.febs.common.entity.FebsResponse; import cc.mrbird.febs.common.entity.QueryRequest; import cc.mrbird.febs.common.exception.FebsException; +import cc.mrbird.febs.video.dto.AdminSetVipDto; +import cc.mrbird.febs.video.entity.AppVersion; import cc.mrbird.febs.video.entity.VideoMemberEntity; import cc.mrbird.febs.video.entity.VideoVipInfoEntity; +import cc.mrbird.febs.video.entity.VideoVipOrderInfoEntity; +import cc.mrbird.febs.video.enumeration.VipTypeEnum; +import cc.mrbird.febs.video.mapper.AppVersionMapper; import cc.mrbird.febs.video.mapper.VideoMemberMapper; import cc.mrbird.febs.video.mapper.VideoVipInfoMapper; import cc.mrbird.febs.video.service.IAdminVideoMemberService; +import cc.mrbird.febs.video.service.IApiVideoMemberService; +import cc.mrbird.febs.video.vo.AdminVideoMemberEntityVo; import cc.mrbird.febs.video.vo.AdminVideoMemberVo; +import cc.mrbird.febs.video.vo.AdminVideoVipOrderInfoVo; +import cn.hutool.core.date.DateField; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.collection.CollUtil; import cn.hutool.crypto.SecureUtil; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.kotlin.KtQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import javax.annotation.Resource; +import java.util.Date; import java.util.List; @Slf4j @@ -27,15 +40,18 @@ public class AdminVideoMemberServiceImpl extends ServiceImpl<VideoMemberMapper, VideoMemberEntity> implements IAdminVideoMemberService { private final VideoVipInfoMapper videoVipInfoMapper; + private final AppVersionMapper appVersionMapper; + private final IApiVideoMemberService apiVideoMemberService; @Override - public IPage<VideoMemberEntity> getVideoMembers(VideoMemberEntity videoMember, QueryRequest request) { + public IPage<AdminVideoMemberEntityVo> getVideoMembers(VideoMemberEntity videoMember, QueryRequest request) { Page<VideoMemberEntity> page = new Page<>(request.getPageNum(), request.getPageSize()); - IPage<VideoMemberEntity> videoMembers = this.baseMapper.selectVideoMemberListInPage(page, videoMember); + IPage<AdminVideoMemberEntityVo> videoMembers = this.baseMapper.selectVideoMemberListInPage(page, videoMember); return videoMembers; } @Override + @Transactional(rollbackFor = Exception.class) public FebsResponse resetPwd(Long id) { VideoMemberEntity videoMemberEntity = this.baseMapper.selectById(id); if (videoMemberEntity == null) { @@ -45,10 +61,11 @@ String pwd = SecureUtil.md5("a123456"); videoMemberEntity.setPassword(pwd); this.baseMapper.updateById(videoMemberEntity); - return new FebsResponse().success().message("重置成功"); + return new FebsResponse().success().message("重置成功,重置后的密码为:a123456"); } @Override + @Transactional(rollbackFor = Exception.class) public FebsResponse closeAccount(Long id) { VideoMemberEntity videoMemberEntity = this.baseMapper.selectById(id); if(ObjectUtil.isEmpty(videoMemberEntity)) { @@ -60,6 +77,7 @@ } @Override + @Transactional(rollbackFor = Exception.class) public FebsResponse openAccount(Long id) { VideoMemberEntity videoMemberEntity = this.baseMapper.selectById(id); if(ObjectUtil.isEmpty(videoMemberEntity)) { @@ -74,9 +92,107 @@ public AdminVideoMemberVo getAdminVideoMemberVoById(long id) { VideoMemberEntity videoMemberEntity = this.baseMapper.selectById(id); AdminVideoMemberVo adminVideoMemberVo = new AdminVideoMemberVo(); - adminVideoMemberVo.setMemberId(videoMemberEntity.getId()); + adminVideoMemberVo.setId(videoMemberEntity.getId()); return adminVideoMemberVo; } + @Override + @Transactional(rollbackFor = Exception.class) + public FebsResponse setVip(AdminSetVipDto adminSetVipDto) { + VideoMemberEntity videoMemberEntity = this.baseMapper.selectById(adminSetVipDto.getId()); + videoMemberEntity.setIsVip(VideoMemberEntity.ISVIP_STATUS_YES); + this.baseMapper.updateById(videoMemberEntity); + + VideoVipInfoEntity videoVipInfoEntities = videoVipInfoMapper.selectVideoVipInfoByMemberIdAndState(adminSetVipDto.getId(),1); + if(ObjectUtil.isNotEmpty(videoVipInfoEntities)){ + return new FebsResponse().fail().message("用户的会员还未失效"); + } + + apiVideoMemberService.extendVipTime(adminSetVipDto.getVipType(), videoMemberEntity.getId()); + +// VideoVipInfoEntity videoVipInfoEntity = new VideoVipInfoEntity(); +// videoVipInfoEntity.setMemberId(adminSetVipDto.getId()); +// videoVipInfoEntity.setVipType(adminSetVipDto.getVipType()); +// videoVipInfoEntity.setBuyTime(new Date()); +// videoVipInfoEntity.setState(1); +// if(VipTypeEnum.MONTH.name().equals(adminSetVipDto.getVipType())){ +// videoVipInfoEntity.setExpireTime(DateUtil.offset(new Date(), DateField.MONTH,1)); +// } +// if(VipTypeEnum.PERIOD.name().equals(adminSetVipDto.getVipType())){ +// videoVipInfoEntity.setExpireTime(DateUtil.offset(new Date(), DateField.MONTH,3)); +// } +// if(VipTypeEnum.YEAR.name().equals(adminSetVipDto.getVipType())){ +// videoVipInfoEntity.setExpireTime(DateUtil.offset(new Date(), DateField.MONTH,12)); +// } +// videoVipInfoMapper.insert(videoVipInfoEntity); + return new FebsResponse().success(); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public FebsResponse cancelVip(Long id) { + VideoMemberEntity videoMemberEntity = this.baseMapper.selectById(id); + if(ObjectUtil.isEmpty(videoMemberEntity)) { + return new FebsResponse().fail().message("用户不存在"); + } + if(VideoMemberEntity.ISVIP_STATUS_NO.equals(videoMemberEntity.getIsVip())){ + return new FebsResponse().fail().message("当前用户还不是会员,无法取消"); + } + videoMemberEntity.setIsVip(VideoMemberEntity.ISVIP_STATUS_NO); + this.baseMapper.updateById(videoMemberEntity); + VideoVipInfoEntity videoVipInfoEntities = videoVipInfoMapper.selectVideoVipInfoByMemberIdAndState(videoMemberEntity.getId(),1); + if(ObjectUtil.isNotEmpty(videoVipInfoEntities)){ + videoVipInfoMapper.deleteById(videoVipInfoEntities.getId()); + } + return new FebsResponse().success(); + } + + @Override + public IPage<AppVersion> getAppVersionList(AppVersion appVersion, QueryRequest request) { + Page<AppVersion> page = new Page<>(request.getPageNum(), request.getPageSize()); + IPage<AppVersion> appVersions = this.baseMapper.getAppVersionListInPage(page, appVersion); + return appVersions; + } + + @Override + public FebsResponse delCategary(Long id) { + AppVersion appVersion = appVersionMapper.selectById(id); + if(ObjectUtil.isEmpty(appVersion)){ + return new FebsResponse().fail().message("系统繁忙,请刷新页面重试"); + } + appVersionMapper.deleteById(id); + return new FebsResponse().success(); + } + + @Override + public FebsResponse addAppVersion(AppVersion appVersion) { + appVersion.setCreatetime(new Date()); + appVersionMapper.insert(appVersion); + return new FebsResponse().success(); + } + + @Override + public FebsResponse updateAppVersion(AppVersion appVersion) { + AppVersion appVersionBefore = appVersionMapper.selectById(appVersion.getId()); + if(ObjectUtil.isEmpty(appVersionBefore)){ + return new FebsResponse().fail().message("系统繁忙,请刷新页面重试"); + } + appVersion.setCreatetime(new Date()); + appVersionMapper.updateById(appVersion); + return new FebsResponse().success(); + } + + @Override + public AppVersion getAppVersionInfoById(long id) { + return appVersionMapper.selectById(id); + } + + @Override + public IPage<AdminVideoVipOrderInfoVo> getOrders(VideoVipOrderInfoEntity videoVipOrderInfoEntity, QueryRequest request) { + Page<VideoMemberEntity> page = new Page<>(request.getPageNum(), request.getPageSize()); + IPage<AdminVideoVipOrderInfoVo> adminVideoVipOrderInfoVos = this.baseMapper.selectAdminVideoVipOrderInfoVoInPage(page, videoVipOrderInfoEntity); + return adminVideoVipOrderInfoVos; + } + } -- Gitblit v1.9.1