init
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
package com.ruoyi.cai.controller.admin;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@@ -8,9 +8,9 @@ import com.ruoyi.cai.dto.app.vo.AnchorListVo;
|
||||
import com.ruoyi.cai.dto.app.vo.IndexBannerVo;
|
||||
import com.ruoyi.cai.dto.app.vo.UserInfoVo;
|
||||
import com.ruoyi.cai.dto.app.vo.UserListVo;
|
||||
import com.ruoyi.cai.service.CaiAnchorService;
|
||||
import com.ruoyi.cai.service.CaiBannerService;
|
||||
import com.ruoyi.cai.service.CaiUserService;
|
||||
import com.ruoyi.cai.dto.app.vo.index.GuardListPageVo;
|
||||
import com.ruoyi.cai.dto.app.vo.index.UserGiftIndexVo;
|
||||
import com.ruoyi.cai.service.*;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
@@ -36,6 +36,10 @@ public class CaiIndexController {
|
||||
private CaiUserService caiUserService;
|
||||
@Autowired
|
||||
private CaiBannerService bannerService;
|
||||
@Autowired
|
||||
private CaiGuardTotalService guardTotalService;
|
||||
@Autowired
|
||||
private CaiUserGiftService userGiftService;
|
||||
|
||||
@GetMapping("/banner")
|
||||
@Operation(summary = "获取首页banner图")
|
||||
@@ -59,9 +63,24 @@ public class CaiIndexController {
|
||||
}
|
||||
|
||||
@GetMapping("/home/info")
|
||||
@Operation(summary = "主页展示详情页")
|
||||
@Operation(summary = "获取指定用户主页信息")
|
||||
public R<UserInfoVo> info(Long userId){
|
||||
UserInfoVo res = caiUserService.info(userId);
|
||||
return R.ok(res);
|
||||
}
|
||||
|
||||
|
||||
@GetMapping("/userGuard/page")
|
||||
@Operation(summary = "获取指定女神守护排行")
|
||||
public TableDataInfo<GuardListPageVo> userGuardPage(PageQuery pageQuery,Long userId){
|
||||
Page<GuardListPageVo> page = guardTotalService.userGuardPage(pageQuery, userId);
|
||||
return TableDataInfo.build(page);
|
||||
}
|
||||
|
||||
@GetMapping("/userGift/list")
|
||||
@Operation(summary = "获取指定女神收到的礼物列表")
|
||||
public R<List<UserGiftIndexVo>> userGiftList(Long userId){
|
||||
List<UserGiftIndexVo> res = userGiftService.selectGiftList(userId);
|
||||
return R.ok(res);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -27,7 +27,7 @@ public class CaiUserDynamicAppController {
|
||||
private CaiUserFollowDynamicService userFollowDynamicService;
|
||||
|
||||
@GetMapping("/page")
|
||||
@Operation(summary = "动态查询")
|
||||
@Operation(summary = "动态查询动态")
|
||||
public TableDataInfo<DynamicListVo> page(PageQuery pageQuery, DynamicQuery query){
|
||||
Page<DynamicListVo> resp = dynamicService.pageApp(pageQuery,query);
|
||||
return TableDataInfo.build(resp);
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.ruoyi.cai.dto.app.vo;
|
||||
package com.ruoyi.cai.dto.app.dto;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
@@ -6,7 +6,7 @@ import lombok.Data;
|
||||
import java.io.Serializable;
|
||||
|
||||
@Data
|
||||
public class GuardTotalVo implements Serializable {
|
||||
public class GuardTotalDTO implements Serializable {
|
||||
/**
|
||||
* 被守护人的user_id(大咖)
|
||||
*/
|
||||
@@ -19,7 +19,9 @@ public class GuardTotalVo implements Serializable {
|
||||
private Long toUserId;
|
||||
|
||||
@Schema(description = "用户头像")
|
||||
private String userAvatar;
|
||||
private String avatar;
|
||||
@Schema(description = "用户昵称")
|
||||
private String nickname;
|
||||
/**
|
||||
* 累计守护符个数
|
||||
*/
|
||||
@@ -11,7 +11,7 @@ public class DynamicQuery {
|
||||
@Schema(description = "类型 1=最新(默认) 2=关注 3=同城")
|
||||
private Integer type = 1;
|
||||
|
||||
@Schema(description = "用户ID")
|
||||
@Schema(description = "用户ID,可过滤指定的女神")
|
||||
private Long userId;
|
||||
|
||||
@Schema(description = "当前用户ID", accessMode = Schema.AccessMode.READ_ONLY)
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
package com.ruoyi.cai.dto.app.vo;
|
||||
|
||||
import com.ruoyi.cai.dto.app.vo.index.GuardIndexVo;
|
||||
import com.ruoyi.cai.dto.app.vo.index.UserGiftIndexVo;
|
||||
import com.ruoyi.cai.dto.app.vo.user.OnlineStatusVo;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@@ -40,24 +43,20 @@ public class UserInfoVo {
|
||||
@Schema(description = "是否关注")
|
||||
private Boolean star;
|
||||
|
||||
// TODO
|
||||
@Schema(description = "用户状态")
|
||||
private String status;
|
||||
|
||||
@Schema(description = "用户状态描述")
|
||||
private String statusMsg;
|
||||
private OnlineStatusVo onlineStatus;
|
||||
|
||||
@Schema(description = "相册集合")
|
||||
private List<String> albumList = Collections.emptyList();
|
||||
|
||||
@Schema(description = "守护列表")
|
||||
private List<GuardTotalVo> guardTotalList = Collections.emptyList();
|
||||
private GuardIndexVo guardIndexVo;
|
||||
|
||||
@Schema(description = "最近的动态图片")
|
||||
private List<String> dynamicList = Collections.emptyList();
|
||||
|
||||
@Schema(description = "礼物列表")
|
||||
private List<UserGiftVo> giftList = Collections.emptyList();
|
||||
private List<UserGiftIndexVo> giftList = Collections.emptyList();
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
package com.ruoyi.cai.dto.app.vo.index;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
@Schema(description = "守护详情数据")
|
||||
public class GuardIndexVo {
|
||||
@Schema(description = "守护价格")
|
||||
private Long guardPrice = 0L;
|
||||
@Schema(description = "已有的人员列表")
|
||||
private List<String> userList = Collections.emptyList();
|
||||
@Schema(description = "距离上一个守护人数")
|
||||
private Long diffNum = 0L;
|
||||
@Schema(description = "最多的守护人昵称")
|
||||
private String nickname;
|
||||
@Schema(description = "最多的守护人头像")
|
||||
private String avatar;
|
||||
@Schema(description = "最多的守护人ID")
|
||||
private Long userId;
|
||||
@Schema(description = "总共的守护数")
|
||||
private Long guardSymbolTotal = 0L;
|
||||
@Schema(description = "总共的人数")
|
||||
private Long guardPersonTotal = 0L;
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package com.ruoyi.cai.dto.app.vo.index;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
@Schema(description = "主播守护列表")
|
||||
public class GuardListPageVo {
|
||||
@Schema(description = "守护人ID")
|
||||
private Long userId;
|
||||
@Schema(description = "守护人昵称")
|
||||
private String nickname;
|
||||
@Schema(description = "守护人头像")
|
||||
private String avatar;
|
||||
@Schema(description = "守护人蜜瓜号")
|
||||
private String usercode;
|
||||
@Schema(description = "守护人累计守护个数")
|
||||
private Long guardNum;
|
||||
@Schema(description = "守护人累计守护值")
|
||||
private Long guardValue;
|
||||
}
|
||||
@@ -1,18 +1,15 @@
|
||||
package com.ruoyi.cai.dto.app.vo;
|
||||
package com.ruoyi.cai.dto.app.vo.index;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class UserGiftVo {
|
||||
public class UserGiftIndexVo {
|
||||
|
||||
/**
|
||||
* 接受者
|
||||
*/
|
||||
@Schema(description = "赠送着")
|
||||
private Long fromUid;
|
||||
@Schema(description = "接收着")
|
||||
private Long toUid;
|
||||
/**
|
||||
* 礼物ID
|
||||
*/
|
||||
@Schema(description = "礼物ID")
|
||||
private Long giftId;
|
||||
@Schema(description = "礼物名称")
|
||||
@@ -21,9 +18,6 @@ public class UserGiftVo {
|
||||
private String img;
|
||||
@Schema(description = "礼物价格")
|
||||
private String price;
|
||||
/**
|
||||
* 礼物数量
|
||||
*/
|
||||
@Schema(description = "礼物数量")
|
||||
private Long count;
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
package com.ruoyi.cai.dto.app.vo.user;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class OnlineStatusVo {
|
||||
private Integer status;
|
||||
private Integer onlineStatus;
|
||||
private String statusMsg;
|
||||
}
|
||||
@@ -7,6 +7,8 @@ import com.ruoyi.cai.dto.app.query.DynamicQuery;
|
||||
import com.ruoyi.cai.dto.app.vo.DynamicListVo;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 主播动态Mapper接口
|
||||
*
|
||||
@@ -16,4 +18,6 @@ import org.apache.ibatis.annotations.Param;
|
||||
public interface CaiDynamicMapper extends BaseMapper<CaiDynamic> {
|
||||
|
||||
Page<DynamicListVo> pageApp(@Param("build") Page<Object> build, @Param("query") DynamicQuery query);
|
||||
|
||||
List<String> selectDynamicImageList(@Param("userId") Long userId, @Param("limit") Integer limit);
|
||||
}
|
||||
|
||||
@@ -1,8 +1,10 @@
|
||||
package com.ruoyi.cai.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.ruoyi.cai.domain.CaiGuardTotal;
|
||||
import com.ruoyi.cai.dto.app.vo.GuardTotalVo;
|
||||
import com.ruoyi.cai.dto.app.dto.GuardTotalDTO;
|
||||
import com.ruoyi.cai.dto.app.vo.index.GuardListPageVo;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
@@ -15,7 +17,12 @@ import java.util.List;
|
||||
*/
|
||||
public interface CaiGuardTotalMapper extends BaseMapper<CaiGuardTotal> {
|
||||
|
||||
List<GuardTotalVo> selectGuardTotal(@Param("fromUserId") Long fromUserId, @Param("limit") Integer limit);
|
||||
List<GuardTotalDTO> selectGuardTotal(@Param("fromUserId") Long fromUserId, @Param("limit") Integer limit);
|
||||
|
||||
void incs(@Param("fromUserId") Long fromUserId, @Param("toUserId") Long toUserId, @Param("guardNum") Long guardNum, @Param("guardValue") Long guardValue);
|
||||
|
||||
Long guardCount(@Param("fromUserId") Long fromUserId);
|
||||
Long guardPersonCount(@Param("fromUserId") Long fromUserId);
|
||||
|
||||
Page<GuardListPageVo> userGuardPage(@Param("build") Page<Object> build, @Param("userId") Long userId);
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@ package com.ruoyi.cai.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.ruoyi.cai.domain.CaiUserGift;
|
||||
import com.ruoyi.cai.dto.app.vo.UserGiftVo;
|
||||
import com.ruoyi.cai.dto.app.vo.index.UserGiftIndexVo;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
@@ -15,7 +15,7 @@ import java.util.List;
|
||||
*/
|
||||
public interface CaiUserGiftMapper extends BaseMapper<CaiUserGift> {
|
||||
|
||||
List<UserGiftVo> selectGiftList(@Param("userId") Long userId);
|
||||
List<UserGiftIndexVo> selectGiftList(@Param("userId") Long userId);
|
||||
|
||||
long countGiftNum(@Param("fromUid") Long fromUid, @Param("toUid") Long toUid);
|
||||
}
|
||||
|
||||
@@ -19,7 +19,7 @@ import java.util.List;
|
||||
*/
|
||||
public interface CaiDynamicService extends IService<CaiDynamic> {
|
||||
|
||||
List<DynamicVo> selectDynamicList(Long userId, Integer limit);
|
||||
List<String> selectDynamicImageList(Long userId, Integer limit);
|
||||
|
||||
Page<DynamicListVo> pageApp(PageQuery pageQuery, DynamicQuery query);
|
||||
|
||||
|
||||
@@ -14,4 +14,5 @@ import java.util.List;
|
||||
public interface CaiGiftService extends IService<CaiGift> {
|
||||
|
||||
List<CaiGift> all();
|
||||
|
||||
}
|
||||
|
||||
@@ -1,12 +1,13 @@
|
||||
package com.ruoyi.cai.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.ruoyi.cai.domain.CaiGuardTotal;
|
||||
import com.ruoyi.cai.dto.app.dto.GuardNum;
|
||||
import com.ruoyi.cai.dto.app.query.GiveGuardReq;
|
||||
import com.ruoyi.cai.dto.app.vo.GuardTotalVo;
|
||||
|
||||
import java.util.List;
|
||||
import com.ruoyi.cai.dto.app.vo.index.GuardIndexVo;
|
||||
import com.ruoyi.cai.dto.app.vo.index.GuardListPageVo;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
|
||||
/**
|
||||
* 守护用户累计Service接口
|
||||
@@ -16,9 +17,11 @@ import java.util.List;
|
||||
*/
|
||||
public interface CaiGuardTotalService extends IService<CaiGuardTotal> {
|
||||
|
||||
List<GuardTotalVo> selectGuardTotalLimit(Long fromUserId,Integer limit);
|
||||
GuardIndexVo guardInfoVo(Long fromUserId,Long toUserId, Integer limit);
|
||||
|
||||
boolean giveGuard(GiveGuardReq query);
|
||||
|
||||
GuardNum getGuardNum(Long fromUserId, Long toUserId);
|
||||
|
||||
Page<GuardListPageVo> userGuardPage(PageQuery pageQuery, Long userId);
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@ package com.ruoyi.cai.service;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.ruoyi.cai.domain.CaiUserGift;
|
||||
import com.ruoyi.cai.dto.app.query.GiveGiftRes;
|
||||
import com.ruoyi.cai.dto.app.vo.UserGiftVo;
|
||||
import com.ruoyi.cai.dto.app.vo.index.UserGiftIndexVo;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -15,7 +15,7 @@ import java.util.List;
|
||||
*/
|
||||
public interface CaiUserGiftService extends IService<CaiUserGift> {
|
||||
|
||||
List<UserGiftVo> selectGiftList(Long userId);
|
||||
List<UserGiftIndexVo> selectGiftList(Long userId);
|
||||
|
||||
boolean giveGift(GiveGiftRes query);
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.ruoyi.cai.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.ruoyi.cai.domain.CaiUserOnline;
|
||||
import com.ruoyi.cai.dto.app.vo.user.OnlineStatusVo;
|
||||
|
||||
/**
|
||||
* 用户在线状态Service接口
|
||||
@@ -11,4 +12,7 @@ import com.ruoyi.cai.domain.CaiUserOnline;
|
||||
*/
|
||||
public interface CaiUserOnlineService extends IService<CaiUserOnline> {
|
||||
|
||||
CaiUserOnline getByUserId(Long userId);
|
||||
|
||||
OnlineStatusVo onlineStatus(Long userId, Integer openVideoStatus, Integer videoStatus, Integer isAnchor);
|
||||
}
|
||||
|
||||
@@ -50,24 +50,8 @@ public class CaiDynamicServiceImpl extends ServiceImpl<CaiDynamicMapper,CaiDynam
|
||||
private SystemConfigManager systemConfigManager;
|
||||
|
||||
@Override
|
||||
public List<DynamicVo> selectDynamicList(Long userId, Integer limit) {
|
||||
List<CaiDynamic> list = this.list(Wrappers.lambdaQuery(CaiDynamic.class)
|
||||
.eq(CaiDynamic::getUserId, userId)
|
||||
.eq(CaiDynamic::getStatus, 1)
|
||||
.orderByDesc(CaiDynamic::getCreateTime)
|
||||
.last("limit "+ limit));
|
||||
List<DynamicVo> res = BeanConvertUtil.convertListTo(list, DynamicVo::new);
|
||||
List<Long> dynamicIds = res.stream().filter(i -> i.getIsAttach() == 1).map(DynamicVo::getId).collect(Collectors.toList());
|
||||
if(CollectionUtil.isNotEmpty(dynamicIds)){
|
||||
List<CaiDynamicImages> dynamicImages = dynamicImagesService.list(Wrappers.lambdaQuery(CaiDynamicImages.class)
|
||||
.in(CaiDynamicImages::getDynamicId, dynamicIds));
|
||||
Map<Long, List<CaiDynamicImages>> map =
|
||||
dynamicImages.stream().collect(Collectors.groupingBy(CaiDynamicImages::getDynamicId));
|
||||
for (DynamicVo re : res) {
|
||||
List<CaiDynamicImages> images = map.get(re.getId());
|
||||
re.setImageList(BeanConvertUtil.convertListTo(images, DynamicImageVo::new));
|
||||
}
|
||||
}
|
||||
public List<String> selectDynamicImageList(Long userId, Integer limit) {
|
||||
List<String> res = baseMapper.selectDynamicImageList(userId,limit);
|
||||
return res;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.ruoyi.cai.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.ruoyi.cai.domain.CaiAnchor;
|
||||
import com.ruoyi.cai.domain.CaiConsumeLog;
|
||||
@@ -8,13 +9,16 @@ import com.ruoyi.cai.domain.CaiGuardTotal;
|
||||
import com.ruoyi.cai.domain.CaiUser;
|
||||
import com.ruoyi.cai.dto.app.dto.GuardNum;
|
||||
import com.ruoyi.cai.dto.app.query.GiveGuardReq;
|
||||
import com.ruoyi.cai.dto.app.vo.GuardTotalVo;
|
||||
import com.ruoyi.cai.dto.app.dto.GuardTotalDTO;
|
||||
import com.ruoyi.cai.dto.app.vo.index.GuardIndexVo;
|
||||
import com.ruoyi.cai.dto.app.vo.index.GuardListPageVo;
|
||||
import com.ruoyi.cai.enums.ConsumeLogType;
|
||||
import com.ruoyi.cai.mapper.CaiGuardTotalMapper;
|
||||
import com.ruoyi.cai.service.CaiAccountService;
|
||||
import com.ruoyi.cai.service.CaiAnchorService;
|
||||
import com.ruoyi.cai.service.CaiGuardTotalService;
|
||||
import com.ruoyi.cai.service.CaiUserService;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.exception.ServiceException;
|
||||
import com.ruoyi.common.helper.LoginHelper;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -22,6 +26,7 @@ import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 守护用户累计Service业务层处理
|
||||
@@ -32,7 +37,7 @@ import java.util.List;
|
||||
@Service
|
||||
public class CaiGuardTotalServiceImpl extends ServiceImpl<CaiGuardTotalMapper,CaiGuardTotal> implements CaiGuardTotalService {
|
||||
|
||||
private final Integer GUARD_UNIT_PRICE = 1314;
|
||||
private final Long GUARD_UNIT_PRICE = 1314L;
|
||||
@Autowired
|
||||
private CaiUserService userService;
|
||||
@Autowired
|
||||
@@ -41,8 +46,26 @@ public class CaiGuardTotalServiceImpl extends ServiceImpl<CaiGuardTotalMapper,Ca
|
||||
private CaiAnchorService anchorService;
|
||||
|
||||
@Override
|
||||
public List<GuardTotalVo> selectGuardTotalLimit(Long fromUserId,Integer limit) {
|
||||
return baseMapper.selectGuardTotal(fromUserId, limit);
|
||||
public GuardIndexVo guardInfoVo(Long fromUserId, Long toUserId, Integer limit) {
|
||||
GuardIndexVo vo = new GuardIndexVo();
|
||||
vo.setGuardPrice(GUARD_UNIT_PRICE);
|
||||
// 查询守护总数
|
||||
Long count = baseMapper.guardCount(toUserId);
|
||||
if(count > 0){
|
||||
List<GuardTotalDTO> total = baseMapper.selectGuardTotal(toUserId, limit);
|
||||
GuardTotalDTO maxUser = total.get(0);
|
||||
vo.setUserList(total.stream().map(GuardTotalDTO::getAvatar).collect(Collectors.toList()));
|
||||
vo.setNickname(maxUser.getNickname());
|
||||
vo.setAvatar(maxUser.getAvatar());
|
||||
vo.setUserId(maxUser.getToUserId());
|
||||
vo.setGuardSymbolTotal(count);
|
||||
// 获取总数总人数
|
||||
vo.setGuardPersonTotal(baseMapper.guardPersonCount(toUserId));
|
||||
// 获取差距
|
||||
GuardNum guardNum = this.getGuardNum(fromUserId, toUserId);
|
||||
vo.setDiffNum(guardNum.getDiffNum());
|
||||
}
|
||||
return vo;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -102,4 +125,9 @@ public class CaiGuardTotalServiceImpl extends ServiceImpl<CaiGuardTotalMapper,Ca
|
||||
num.setDiffNum((upGuardNum - myGuardNum) < 0 ? 0 : (upGuardNum - myGuardNum));
|
||||
return num;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<GuardListPageVo> userGuardPage(PageQuery pageQuery,Long userId) {
|
||||
return baseMapper.userGuardPage(pageQuery.build(),userId);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@ package com.ruoyi.cai.service.impl;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.ruoyi.cai.domain.*;
|
||||
import com.ruoyi.cai.dto.app.query.GiveGiftRes;
|
||||
import com.ruoyi.cai.dto.app.vo.UserGiftVo;
|
||||
import com.ruoyi.cai.dto.app.vo.index.UserGiftIndexVo;
|
||||
import com.ruoyi.cai.enums.ConsumeLogType;
|
||||
import com.ruoyi.cai.mapper.CaiUserGiftMapper;
|
||||
import com.ruoyi.cai.service.*;
|
||||
@@ -36,7 +36,7 @@ public class CaiUserGiftServiceImpl extends ServiceImpl<CaiUserGiftMapper,CaiUse
|
||||
|
||||
|
||||
@Override
|
||||
public List<UserGiftVo> selectGiftList(Long userId) {
|
||||
public List<UserGiftIndexVo> selectGiftList(Long userId) {
|
||||
return baseMapper.selectGiftList(userId);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
package com.ruoyi.cai.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.ruoyi.cai.domain.CaiUserOnline;
|
||||
import com.ruoyi.cai.dto.app.vo.user.OnlineStatusVo;
|
||||
import com.ruoyi.cai.mapper.CaiUserOnlineMapper;
|
||||
import com.ruoyi.cai.service.CaiUserOnlineService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
@@ -17,4 +19,40 @@ import org.springframework.stereotype.Service;
|
||||
@Service
|
||||
public class CaiUserOnlineServiceImpl extends ServiceImpl<CaiUserOnlineMapper,CaiUserOnline> implements CaiUserOnlineService {
|
||||
|
||||
@Override
|
||||
public CaiUserOnline getByUserId(Long userId){
|
||||
return this.getOne(Wrappers.lambdaQuery(CaiUserOnline.class).eq(CaiUserOnline::getUserId,userId).last("limit 1"));
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public OnlineStatusVo onlineStatus(Long userId,Integer openVideoStatus,Integer videoStatus,Integer isAnchor){
|
||||
CaiUserOnline userOnline = this.getByUserId(userId);
|
||||
Integer onlineStatus = userOnline.getStatus();
|
||||
Integer status = 0;
|
||||
String statusMsg = "离线";
|
||||
if(isAnchor == 1){
|
||||
if(openVideoStatus == 1 && videoStatus == 0 && onlineStatus == 1){
|
||||
status = 1;
|
||||
statusMsg = "空闲";
|
||||
}else if(videoStatus == 1){
|
||||
status = 2;
|
||||
statusMsg = "忙碌中";
|
||||
}else if(openVideoStatus == 0){
|
||||
status = 3;
|
||||
statusMsg = "勿扰";
|
||||
}
|
||||
}else{
|
||||
if(onlineStatus == 1){
|
||||
status = 1;
|
||||
statusMsg = "在线";
|
||||
}
|
||||
}
|
||||
OnlineStatusVo vo = new OnlineStatusVo();
|
||||
vo.setStatus(status);
|
||||
vo.setOnlineStatus(onlineStatus);
|
||||
vo.setStatusMsg(statusMsg);
|
||||
return vo;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -10,6 +10,7 @@ import com.ruoyi.cai.dto.admin.vo.CaiUserAdminVo;
|
||||
import com.ruoyi.cai.dto.app.query.UserQuery;
|
||||
import com.ruoyi.cai.dto.app.vo.UserInfoVo;
|
||||
import com.ruoyi.cai.dto.app.vo.UserListVo;
|
||||
import com.ruoyi.cai.dto.app.vo.user.OnlineStatusVo;
|
||||
import com.ruoyi.cai.mapper.CaiUserMapper;
|
||||
import com.ruoyi.cai.service.*;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
@@ -37,6 +38,8 @@ public class CaiUserServiceImpl extends ServiceImpl<CaiUserMapper, CaiUser> impl
|
||||
private CaiDynamicService dynamicService;
|
||||
@Autowired
|
||||
private CaiUserGiftService userGiftService;
|
||||
@Autowired
|
||||
private CaiUserOnlineService userOnlineService;
|
||||
|
||||
@Override
|
||||
public CaiUser getByUsername(String username) {
|
||||
@@ -84,13 +87,18 @@ public class CaiUserServiceImpl extends ServiceImpl<CaiUserMapper, CaiUser> impl
|
||||
vo.setStar(userFollowService.checkStar(currentUserId, userId));
|
||||
vo.setAlbumList(caiUserAlbumService.getUserAlbum(userId,caiUser.getIsAnchor()));
|
||||
// 在线状态
|
||||
// vo.setStatus();
|
||||
OnlineStatusVo onlineStatusVo;
|
||||
if(caiUser.getIsAnchor() == 1 && anchor != null){
|
||||
onlineStatusVo = userOnlineService.onlineStatus(userId,anchor.getOpenVideoStatus(),anchor.getVideoStatus(),caiUser.getIsAnchor());
|
||||
}else{
|
||||
onlineStatusVo = userOnlineService.onlineStatus(userId,0,0,caiUser.getIsAnchor());
|
||||
}
|
||||
vo.setOnlineStatus(onlineStatusVo);
|
||||
if(caiUser.getIsAnchor() == 1){
|
||||
vo.setGuardTotalList(guardTotalService.selectGuardTotalLimit(userId,10));
|
||||
// vo.setDynamicList(dynamicService.selectDynamicList(userId,10));
|
||||
vo.setGuardIndexVo(guardTotalService.guardInfoVo(currentUserId,userId,10));
|
||||
vo.setDynamicList(dynamicService.selectDynamicImageList(userId,10));
|
||||
vo.setGiftList(userGiftService.selectGiftList(userId));
|
||||
}
|
||||
|
||||
return vo;
|
||||
}
|
||||
|
||||
|
||||
@@ -33,6 +33,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
</if>
|
||||
order by t1.create_time desc
|
||||
</select>
|
||||
<select id="selectDynamicImageList" resultType="java.lang.String">
|
||||
select t2.url
|
||||
from cai_dynamic t1
|
||||
join cai_dynamic_images t2 on t1.id = t2.user_id
|
||||
where t1.status = 1 and t1.user_id = #{userId}
|
||||
limit #{limit}
|
||||
</select>
|
||||
|
||||
|
||||
</mapper>
|
||||
|
||||
@@ -19,7 +19,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
guard_value = guard_value + #{guardValue}
|
||||
where to_user_id = #{toUserId} and from_user_id = #{fromUserId}
|
||||
</update>
|
||||
<select id="selectGuardTotal" resultType="com.ruoyi.cai.dto.app.vo.GuardTotalVo">
|
||||
<select id="selectGuardTotal" resultType="com.ruoyi.cai.dto.app.dto.GuardTotalDTO">
|
||||
select t1.from_user_id,t1.to_user_id,t2.avatar,t1.guard_num
|
||||
from cai_guard_total t1
|
||||
join cai_user t2 on t1.to_user_id = t2.id
|
||||
@@ -29,6 +29,25 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
limit #{limit}
|
||||
</if>
|
||||
</select>
|
||||
<select id="guardCount" resultType="java.lang.Long">
|
||||
select ifnull(sum(guard_num),0)
|
||||
from cai_guard_total t1
|
||||
join cai_user t2 on t1.to_user_id = t2.id
|
||||
where t1.from_user_id = #{fromUserId}
|
||||
</select>
|
||||
<select id="guardPersonCount" resultType="java.lang.Long">
|
||||
select ifnull(count(1),0)
|
||||
from cai_guard_total t1
|
||||
join cai_user t2 on t1.to_user_id = t2.id
|
||||
where t1.from_user_id = #{fromUserId}
|
||||
</select>
|
||||
<select id="userGuardPage" resultType="com.ruoyi.cai.dto.app.vo.index.GuardListPageVo">
|
||||
select t1.to_user_id as user_id, t2.nickname,t2.avatar,t2.usercode,t1.guard_num,t1.guard_value
|
||||
from cai_guard_total t1
|
||||
join cai_user t2 on t1.to_user_id = t2.id
|
||||
where t1.from_user_id = #{userId}
|
||||
order by guard_num desc
|
||||
</select>
|
||||
|
||||
|
||||
</mapper>
|
||||
|
||||
@@ -14,8 +14,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
<result property="giftAmount" column="gift_amount"/>
|
||||
<result property="createTime" column="create_time"/>
|
||||
</resultMap>
|
||||
<select id="selectGiftList" resultType="com.ruoyi.cai.dto.app.vo.UserGiftVo">
|
||||
select to_uid, gift_id,
|
||||
<select id="selectGiftList" resultType="com.ruoyi.cai.dto.app.vo.index.UserGiftIndexVo">
|
||||
select
|
||||
from_uid,
|
||||
to_uid,
|
||||
gift_id,
|
||||
t2.name,
|
||||
t2.img,
|
||||
t2.price,
|
||||
|
||||
Reference in New Issue
Block a user