From 3e803d1ec0583cb60dfedc63a8e31fb7b29fffdc Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Wed, 15 Dec 2021 14:23:22 +0800 Subject: [PATCH] 20211214 --- src/main/resources/mapper/modules/VideoCollectionMapper.xml | 41 ++++ src/main/java/cc/mrbird/febs/video/vo/ApiMyVideoHistoryVo.java | 31 +++ src/main/java/cc/mrbird/febs/video/vo/ApiVideoMemberVo.java | 105 +++++++++++ pom.xml | 29 +++ src/main/java/cc/mrbird/febs/video/controller/ApiVideoMemberController.java | 71 +++++++ src/main/java/cc/mrbird/febs/video/dto/ApiMyVideoCollectionDto.java | 19 ++ src/main/java/cc/mrbird/febs/video/entity/DataDictionaryCustom.java | 19 ++ src/main/java/cc/mrbird/febs/video/vo/ApiMyVideoCollectionVo.java | 22 ++ src/main/java/cc/mrbird/febs/video/conversion/VideoMemberConversion.java | 15 + src/main/java/cc/mrbird/febs/video/mapper/DataDictionaryCustomMapper.java | 14 + src/main/java/cc/mrbird/febs/video/service/IApiVideoMemberService.java | 12 + src/main/java/cc/mrbird/febs/video/dto/ApiMyVideoHistoryDto.java | 20 ++ src/main/resources/mapper/modules/DataDictionaryCustomMapper.xml | 14 + src/main/java/cc/mrbird/febs/video/service/impl/ApiVideoMemberServiceImpl.java | 67 ++++++- src/main/java/cc/mrbird/febs/common/utils/LoginUserUtil.java | 15 + src/main/java/cc/mrbird/febs/video/mapper/VideoCollectionMapper.java | 17 + src/main/java/cc/mrbird/febs/video/vo/ApiVipCostVo.java | 20 ++ 17 files changed, 519 insertions(+), 12 deletions(-) diff --git a/pom.xml b/pom.xml index 48804c6..6498c71 100644 --- a/pom.xml +++ b/pom.xml @@ -22,9 +22,17 @@ <swagger.ui>2.9.2</swagger.ui> <tomcat.version>9.0.31</tomcat.version> <hutool.version>5.3.1</hutool.version> + <mapstruct.version>1.3.1.Final</mapstruct.version> </properties> <dependencies> + + <dependency> + <groupId>org.mapstruct</groupId> + <artifactId>mapstruct</artifactId> + <version>${mapstruct.version}</version> + </dependency> + <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> @@ -228,6 +236,27 @@ <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-compiler-plugin</artifactId> + <version>3.5.1</version> + <configuration> + <source>${java.version}</source> + <target>${java.version}</target> + <annotationProcessorPaths> + <path> + <groupId>org.mapstruct</groupId> + <artifactId>mapstruct-processor</artifactId> + <version>${mapstruct.version}</version> + </path> + <path> + <groupId>org.projectlombok</groupId> + <artifactId>lombok</artifactId> + <version>${lombok.version}</version> + </path> + </annotationProcessorPaths> + </configuration> + </plugin> </plugins> </build> </project> diff --git a/src/main/java/cc/mrbird/febs/common/utils/LoginUserUtil.java b/src/main/java/cc/mrbird/febs/common/utils/LoginUserUtil.java new file mode 100644 index 0000000..8af2d91 --- /dev/null +++ b/src/main/java/cc/mrbird/febs/common/utils/LoginUserUtil.java @@ -0,0 +1,15 @@ +package cc.mrbird.febs.common.utils; + +import cc.mrbird.febs.video.entity.VideoMemberEntity; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import javax.servlet.http.HttpServletRequest; + +public class LoginUserUtil { + + public static VideoMemberEntity getLoginUser() { + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.currentRequestAttributes()).getRequest(); + return (VideoMemberEntity) request.getSession().getAttribute("member"); + } +} diff --git a/src/main/java/cc/mrbird/febs/video/controller/ApiVideoMemberController.java b/src/main/java/cc/mrbird/febs/video/controller/ApiVideoMemberController.java new file mode 100644 index 0000000..5cb81f7 --- /dev/null +++ b/src/main/java/cc/mrbird/febs/video/controller/ApiVideoMemberController.java @@ -0,0 +1,71 @@ +package cc.mrbird.febs.video.controller; + +import cc.mrbird.febs.common.entity.FebsResponse; +import cc.mrbird.febs.video.dto.ApiMyVideoCollectionDto; +import cc.mrbird.febs.video.dto.ApiMyVideoHistoryDto; +import cc.mrbird.febs.video.service.IApiVideoMemberService; +import cc.mrbird.febs.video.vo.ApiMyVideoCollectionVo; +import cc.mrbird.febs.video.vo.ApiMyVideoHistoryVo; +import cc.mrbird.febs.video.vo.ApiVideoMemberVo; +import cc.mrbird.febs.video.vo.ApiVipCostVo; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiResponse; +import io.swagger.annotations.ApiResponses; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +@Slf4j +@CrossOrigin("*") +@RequiredArgsConstructor +@RestController +@RequestMapping(value = "/api/member") +public class ApiVideoMemberController { + + private final IApiVideoMemberService memberService; + + @ApiOperation(value = "退出登录", notes = "退出登录") + @PostMapping(value = "/logout") + public FebsResponse logout() { + return memberService.logout(); + } + + @ApiOperation(value = "获取用户信息", notes = "获取用户信息") + @ApiResponses({ + @ApiResponse(code = 200, message = "success", response = ApiVideoMemberVo.class) + }) + @GetMapping(value = "/findMemberInfo") + public FebsResponse findMemberInfo() { + return memberService.findMemberInfo(); + } + + @ApiOperation(value = "我的收藏") + @ApiResponses({ + @ApiResponse(code = 200, message = "success", response = ApiMyVideoCollectionVo.class) + }) + @PostMapping(value = "/myCollection") + public FebsResponse myCollection(@RequestBody ApiMyVideoCollectionDto apiMyVideoCollectionDto) { + return memberService.myCollection(apiMyVideoCollectionDto); + } + + @ApiOperation(value = "观看历史") + @ApiResponses({ + @ApiResponse(code = 200, message = "success", response = ApiMyVideoHistoryVo.class) + }) + @PostMapping(value = "/myHistory") + public FebsResponse myHistory(@RequestBody ApiMyVideoHistoryDto apiMyVideoHistoryDto) { + return memberService.myHistory(apiMyVideoHistoryDto); + } + + @ApiOperation(value = "视频VIP价格", notes = "视频VIP价格") + @ApiResponses({ + @ApiResponse(code = 200, message = "success", response = ApiVipCostVo.class) + }) + @GetMapping(value = "/vipCostInfo") + public FebsResponse vipCostInfo() { + return memberService.vipCostInfo(); + } + + + +} diff --git a/src/main/java/cc/mrbird/febs/video/conversion/VideoMemberConversion.java b/src/main/java/cc/mrbird/febs/video/conversion/VideoMemberConversion.java new file mode 100644 index 0000000..42af423 --- /dev/null +++ b/src/main/java/cc/mrbird/febs/video/conversion/VideoMemberConversion.java @@ -0,0 +1,15 @@ +package cc.mrbird.febs.video.conversion; + +import cc.mrbird.febs.video.entity.VideoMemberEntity; +import cc.mrbird.febs.video.vo.ApiVideoMemberVo; +import org.mapstruct.Mapper; +import org.mapstruct.factory.Mappers; + +@Mapper +public abstract class VideoMemberConversion { + + public static final VideoMemberConversion INSTANCE = Mappers.getMapper(VideoMemberConversion.class); + + public abstract ApiVideoMemberVo entityToVo(VideoMemberEntity videoMemberEntity); + +} diff --git a/src/main/java/cc/mrbird/febs/video/dto/ApiMyVideoCollectionDto.java b/src/main/java/cc/mrbird/febs/video/dto/ApiMyVideoCollectionDto.java new file mode 100644 index 0000000..ba4f2c0 --- /dev/null +++ b/src/main/java/cc/mrbird/febs/video/dto/ApiMyVideoCollectionDto.java @@ -0,0 +1,19 @@ +package cc.mrbird.febs.video.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "ApiMyVideoCollectionDto", description = "接收参数类") +public class ApiMyVideoCollectionDto { + + @ApiModelProperty(value = "一页多少个", example = "10") + private Integer pageSize; + + @ApiModelProperty(value = "页码", example = "1") + private Integer pageNum; + + @ApiModelProperty(hidden = true) + private Long memberId; +} diff --git a/src/main/java/cc/mrbird/febs/video/dto/ApiMyVideoHistoryDto.java b/src/main/java/cc/mrbird/febs/video/dto/ApiMyVideoHistoryDto.java new file mode 100644 index 0000000..e2abefa --- /dev/null +++ b/src/main/java/cc/mrbird/febs/video/dto/ApiMyVideoHistoryDto.java @@ -0,0 +1,20 @@ +package cc.mrbird.febs.video.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "ApiMyVideoHistoryDto", description = "接收参数类") +public class ApiMyVideoHistoryDto { + + @ApiModelProperty(value = "一页多少个", example = "10") + private Integer pageSize; + + @ApiModelProperty(value = "页码", example = "1") + private Integer pageNum; + + @ApiModelProperty(hidden = true) + private Long memberId; + +} diff --git a/src/main/java/cc/mrbird/febs/video/entity/DataDictionaryCustom.java b/src/main/java/cc/mrbird/febs/video/entity/DataDictionaryCustom.java new file mode 100644 index 0000000..88687a9 --- /dev/null +++ b/src/main/java/cc/mrbird/febs/video/entity/DataDictionaryCustom.java @@ -0,0 +1,19 @@ +package cc.mrbird.febs.video.entity; + +import cc.mrbird.febs.common.entity.BaseEntity; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +@Data +@TableName("data_dictionary_custom") +public class DataDictionaryCustom extends BaseEntity { + + private String type; + + private String code; + + private String value; + + private String description; + +} diff --git a/src/main/java/cc/mrbird/febs/video/mapper/DataDictionaryCustomMapper.java b/src/main/java/cc/mrbird/febs/video/mapper/DataDictionaryCustomMapper.java new file mode 100644 index 0000000..0f3280e --- /dev/null +++ b/src/main/java/cc/mrbird/febs/video/mapper/DataDictionaryCustomMapper.java @@ -0,0 +1,14 @@ +package cc.mrbird.febs.video.mapper; + +import cc.mrbird.febs.video.entity.DataDictionaryCustom; +import cc.mrbird.febs.video.vo.ApiVipCostVo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +public interface DataDictionaryCustomMapper extends BaseMapper<DataDictionaryCustom> { + + List<ApiVipCostVo> selectApiVipCostByType(@Param("type") String type); + +} diff --git a/src/main/java/cc/mrbird/febs/video/mapper/VideoCollectionMapper.java b/src/main/java/cc/mrbird/febs/video/mapper/VideoCollectionMapper.java new file mode 100644 index 0000000..c0a822b --- /dev/null +++ b/src/main/java/cc/mrbird/febs/video/mapper/VideoCollectionMapper.java @@ -0,0 +1,17 @@ +package cc.mrbird.febs.video.mapper; + +import cc.mrbird.febs.video.dto.ApiMyVideoCollectionDto; +import cc.mrbird.febs.video.dto.ApiMyVideoHistoryDto; +import cc.mrbird.febs.video.entity.VideoCollectionEntity; +import cc.mrbird.febs.video.vo.ApiMyVideoCollectionVo; +import cc.mrbird.febs.video.vo.ApiMyVideoHistoryVo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.apache.ibatis.annotations.Param; + +public interface VideoCollectionMapper extends BaseMapper<VideoCollectionEntity> { + + IPage<ApiMyVideoCollectionVo> selectApiVideoCollectionInPage(IPage<ApiMyVideoCollectionVo> page, @Param("record")ApiMyVideoCollectionDto apiMyVideoCollectionDto); + + IPage<ApiMyVideoHistoryVo> selectApiMyVideoHistoryInPage(IPage<ApiMyVideoHistoryVo> page, @Param("record")ApiMyVideoHistoryDto apiMyVideoHistoryDto); +} diff --git a/src/main/java/cc/mrbird/febs/video/service/IApiVideoMemberService.java b/src/main/java/cc/mrbird/febs/video/service/IApiVideoMemberService.java index 36a707d..914db3e 100644 --- a/src/main/java/cc/mrbird/febs/video/service/IApiVideoMemberService.java +++ b/src/main/java/cc/mrbird/febs/video/service/IApiVideoMemberService.java @@ -1,6 +1,8 @@ package cc.mrbird.febs.video.service; import cc.mrbird.febs.common.entity.FebsResponse; +import cc.mrbird.febs.video.dto.ApiMyVideoCollectionDto; +import cc.mrbird.febs.video.dto.ApiMyVideoHistoryDto; import cc.mrbird.febs.video.dto.LoginDto; import cc.mrbird.febs.video.dto.RegisterDto; import cc.mrbird.febs.video.entity.VideoMemberEntity; @@ -11,4 +13,14 @@ FebsResponse register(RegisterDto registerDto); FebsResponse toLogin(LoginDto loginDto); + + FebsResponse logout(); + + FebsResponse findMemberInfo(); + + FebsResponse myCollection(ApiMyVideoCollectionDto apiMyVideoCollectionDto); + + FebsResponse myHistory(ApiMyVideoHistoryDto apiMyVideoHistoryDto); + + FebsResponse vipCostInfo(); } 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 5b0b4be..8379729 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 @@ -3,13 +3,24 @@ 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.video.conversion.VideoMemberConversion; +import cc.mrbird.febs.video.dto.ApiMyVideoCollectionDto; +import cc.mrbird.febs.video.dto.ApiMyVideoHistoryDto; import cc.mrbird.febs.video.dto.LoginDto; import cc.mrbird.febs.video.dto.RegisterDto; +import cc.mrbird.febs.video.entity.DataDictionaryCustom; import cc.mrbird.febs.video.entity.VideoMemberEntity; +import cc.mrbird.febs.video.mapper.DataDictionaryCustomMapper; +import cc.mrbird.febs.video.mapper.VideoCollectionMapper; import cc.mrbird.febs.video.mapper.VideoMemberMapper; import cc.mrbird.febs.video.service.IApiVideoMemberService; +import cc.mrbird.febs.video.vo.ApiMyVideoCollectionVo; +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.util.IdUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; @@ -17,13 +28,15 @@ import cn.hutool.crypto.asymmetric.KeyType; import cn.hutool.crypto.asymmetric.RSA; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.metadata.IPage; +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 java.math.BigDecimal; import java.util.HashMap; +import java.util.List; import java.util.Map; @Slf4j @@ -32,6 +45,8 @@ public class ApiVideoMemberServiceImpl extends ServiceImpl<VideoMemberMapper, VideoMemberEntity> implements IApiVideoMemberService { private final RedisUtils redisUtils; + private final VideoCollectionMapper videoCollectionMapper; + private final DataDictionaryCustomMapper dataDictionaryCustomMapper; @Override public FebsResponse register(RegisterDto registerDto) { @@ -39,28 +54,17 @@ if (videoMember != null) { throw new FebsException("该账号已被占用"); } - videoMember = new VideoMemberEntity(); videoMember.setPassword(SecureUtil.md5(registerDto.getPassword())); - -// // 判断账号类型 -// if (AppContants.ACCOUNT_TYPE_MOBILE.equals(registerDto.getType())) { -// videoMember.setPhone(registerDto.getAccount()); -// } else { -// videoMember.setEmail(registerDto.getAccount()); -// } - videoMember.setAccount(registerDto.getAccount()); videoMember.setName(registerDto.getAccount()); videoMember.setAccountStatus(VideoMemberEntity.ACCOUNT_STATUS_ENABLE); videoMember.setAccountType(VideoMemberEntity.ACCOUNT_TYPE_NORMAL); videoMember.setIsVip(VideoMemberEntity.ISVIP_STATUS_NO); - this.baseMapper.insert(videoMember); String inviteId = ShareCodeUtil.toSerialCode(videoMember.getId()); videoMember.setInviteId(inviteId); - //推荐人和推荐人链 boolean flag = false; String parentId = videoMember.getRefererId(); @@ -123,6 +127,45 @@ return new FebsResponse().success().data(authInfo); } + @Override + public FebsResponse logout() { + Long id = LoginUserUtil.getLoginUser().getId(); + redisUtils.del(AppContants.APP_LOGIN_PREFIX + id); + return new FebsResponse().success().message("退出登录"); + } + + @Override + public FebsResponse findMemberInfo() { + Long id = LoginUserUtil.getLoginUser().getId(); + VideoMemberEntity videoMemberEntity = this.baseMapper.selectById(id); + ApiVideoMemberVo apiVideoMemberVo = VideoMemberConversion.INSTANCE.entityToVo(videoMemberEntity); + return new FebsResponse().success().data(apiVideoMemberVo); + } + + @Override + public FebsResponse myCollection(ApiMyVideoCollectionDto apiMyVideoCollectionDto) { + IPage<ApiMyVideoCollectionVo> page = new Page<>(apiMyVideoCollectionDto.getPageNum(), apiMyVideoCollectionDto.getPageSize()); + Long id = LoginUserUtil.getLoginUser().getId(); + apiMyVideoCollectionDto.setMemberId(id); + IPage<ApiMyVideoCollectionVo> pages = videoCollectionMapper.selectApiVideoCollectionInPage(page, apiMyVideoCollectionDto); + return new FebsResponse().success().data(pages); + } + + @Override + public FebsResponse myHistory(ApiMyVideoHistoryDto apiMyVideoHistoryDto) { + IPage<ApiMyVideoHistoryVo> page = new Page<>(apiMyVideoHistoryDto.getPageNum(), apiMyVideoHistoryDto.getPageSize()); + Long id = LoginUserUtil.getLoginUser().getId(); + apiMyVideoHistoryDto.setMemberId(id); + IPage<ApiMyVideoHistoryVo> pages = videoCollectionMapper.selectApiMyVideoHistoryInPage(page, apiMyVideoHistoryDto); + return new FebsResponse().success().data(pages); + } + + @Override + public FebsResponse vipCostInfo() { + List<ApiVipCostVo> dataDictionaryCustoms = dataDictionaryCustomMapper.selectApiVipCostByType("VIP_COST"); + return new FebsResponse().success().data(dataDictionaryCustoms); + } + public String generateAsaToken(String token) { RSA rsa = new RSA(null, AppContants.PUBLIC_KEY); diff --git a/src/main/java/cc/mrbird/febs/video/vo/ApiMyVideoCollectionVo.java b/src/main/java/cc/mrbird/febs/video/vo/ApiMyVideoCollectionVo.java new file mode 100644 index 0000000..10ffc3a --- /dev/null +++ b/src/main/java/cc/mrbird/febs/video/vo/ApiMyVideoCollectionVo.java @@ -0,0 +1,22 @@ +package cc.mrbird.febs.video.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "ApiMyVideoCollectionVo", description = "返回参数类") +public class ApiMyVideoCollectionVo { + + @ApiModelProperty(value = "视频ID") + private Long id; + + @ApiModelProperty(value = "标题") + private String title; + + @ApiModelProperty(value = "简介") + private String intro; + + @ApiModelProperty(value = "缩略图") + private String thumb; +} diff --git a/src/main/java/cc/mrbird/febs/video/vo/ApiMyVideoHistoryVo.java b/src/main/java/cc/mrbird/febs/video/vo/ApiMyVideoHistoryVo.java new file mode 100644 index 0000000..f0fbe9b --- /dev/null +++ b/src/main/java/cc/mrbird/febs/video/vo/ApiMyVideoHistoryVo.java @@ -0,0 +1,31 @@ +package cc.mrbird.febs.video.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "ApiMyVideoHistoryVo", description = "返回参数类") +public class ApiMyVideoHistoryVo { + + @ApiModelProperty(value = "视频ID") + private Long id; + + @ApiModelProperty(value = "标题") + private String title; + + @ApiModelProperty(value = "简介") + private String intro; + + @ApiModelProperty(value = "缩略图") + private String thumb; + + @ApiModelProperty(value = "章节名称") + private String name; + + @ApiModelProperty(value = "视频地址") + private String videoUrl; + + @ApiModelProperty(value = "资源ID") + private Long sourceId; +} diff --git a/src/main/java/cc/mrbird/febs/video/vo/ApiVideoMemberVo.java b/src/main/java/cc/mrbird/febs/video/vo/ApiVideoMemberVo.java new file mode 100644 index 0000000..49bce2c --- /dev/null +++ b/src/main/java/cc/mrbird/febs/video/vo/ApiVideoMemberVo.java @@ -0,0 +1,105 @@ +package cc.mrbird.febs.video.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "ApiVideoMemberVo", description = "返回参数类") +public class ApiVideoMemberVo { + + private Long id; + + /** + * 账号 + */ + + @ApiModelProperty(value = "账号") + private String account; + + /** + * 昵称 + */ + @ApiModelProperty(value = "昵称") + private String name; + + /** + * 头像 + */ + @ApiModelProperty(value = "头像") + private String avatar; + + /** + * 手机号 + */ + @ApiModelProperty(value = "手机号") + private String phone; + + /** + * 邮箱 + */ + @ApiModelProperty(value = "邮箱") + private String email; + + /** + * 邀请码 + */ + @ApiModelProperty(value = "邀请码") + private String inviteId; + + /** + * 父级邀请码 + */ +// @ApiModelProperty(value = "父级邀请码") +// private String refererId; + + /** + * 父级邀请码链 + */ +// @ApiModelProperty(value = "父级邀请码链") +// private String refererIds; + + /** + * 是否会员 1/是 2/否 + */ + @ApiModelProperty(value = "是否会员 1/是 2/否") + private Integer isVip; + + /** + * 是 + */ + public static final Integer ISVIP_STATUS_YES = 1; + /** + * 否 + */ + public static final Integer ISVIP_STATUS_NO = 2; + + /** + * 账号状态 1/正常 2/禁用 + */ + @ApiModelProperty(value = "账号状态 1/正常 2/禁用") + private Integer accountStatus; + /** + * 启用 + */ + public static final Integer ACCOUNT_STATUS_ENABLE = 1; + /** + * 禁用 + */ + public static final Integer ACCOUNT_STATUS_DISABLED = 2; + + /** + * 账号类型 1/正常 2/测试 + */ + @ApiModelProperty(value = "账号类型 1/正常 2/测试") + private Integer accountType; + + /** + * 正常账号 + */ + public static final Integer ACCOUNT_TYPE_NORMAL = 1; + /** + * 测试账号 + */ + public static final Integer ACCOUNT_TYPE_TEST = 2; +} diff --git a/src/main/java/cc/mrbird/febs/video/vo/ApiVipCostVo.java b/src/main/java/cc/mrbird/febs/video/vo/ApiVipCostVo.java new file mode 100644 index 0000000..f2abbde --- /dev/null +++ b/src/main/java/cc/mrbird/febs/video/vo/ApiVipCostVo.java @@ -0,0 +1,20 @@ +package cc.mrbird.febs.video.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "ApiVipMemberVo", description = "返回参数类") +public class ApiVipCostVo { + + @ApiModelProperty(value = "编码") + private String code; + + @ApiModelProperty(value = "价格") + private String value; + + @ApiModelProperty(value = "描述") + private String description; + +} diff --git a/src/main/resources/mapper/modules/DataDictionaryCustomMapper.xml b/src/main/resources/mapper/modules/DataDictionaryCustomMapper.xml new file mode 100644 index 0000000..dfc1568 --- /dev/null +++ b/src/main/resources/mapper/modules/DataDictionaryCustomMapper.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="cc.mrbird.febs.video.mapper.DataDictionaryCustomMapper"> + + <select id="selectApiVipCostByType" resultType="cc.mrbird.febs.video.vo.ApiVipCostVo"> + select + a.code code, + a.value value, + a.description description + from data_dictionary_custom a + where a.type = #{type} + </select> + +</mapper> \ No newline at end of file diff --git a/src/main/resources/mapper/modules/VideoCollectionMapper.xml b/src/main/resources/mapper/modules/VideoCollectionMapper.xml new file mode 100644 index 0000000..2b2d77e --- /dev/null +++ b/src/main/resources/mapper/modules/VideoCollectionMapper.xml @@ -0,0 +1,41 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="cc.mrbird.febs.video.mapper.VideoCollectionMapper"> + + <select id="selectApiVideoCollectionInPage" resultType="cc.mrbird.febs.video.vo.ApiMyVideoCollectionVo"> + select + a.video_id id, + b.title title, + b.intro intro, + b.thumb thumb + from video_collection a + left join video_master_info b on a.video_id = b.id + <where> + <if test="record.memberId != null"> + and a.member_id=#{record.memberId} + </if> + </where> + order by a.created_time desc + </select> + + <select id="selectApiMyVideoHistoryInPage" resultType="cc.mrbird.febs.video.vo.ApiMyVideoHistoryVo"> + select + a.video_id id, + b.title title, + b.intro intro, + b.thumb thumb, + c.name name, + c.video_url videoUrl, + c.source_id sourceId + from video_history a + left join video_master_info b on a.video_id = b.id + left join video_master_items c on a.video_item_id = c.id + <where> + <if test="record.memberId != null"> + and a.member_id=#{record.memberId} + </if> + </where> + order by a.created_time desc + </select> + +</mapper> \ No newline at end of file -- Gitblit v1.9.1