记得上下班打卡 | git大法好,push需谨慎

Commit 43be65ff authored by anjiabin's avatar anjiabin

提交chime社交相关

parent ce55657f
...@@ -13,6 +13,12 @@ import com.liquidnet.commons.lang.util.IDGenerator; ...@@ -13,6 +13,12 @@ import com.liquidnet.commons.lang.util.IDGenerator;
*/ */
public class ChimeConstant { public class ChimeConstant {
public static String USER_ID_PREFIX = "CHE"; public static String USER_ID_PREFIX = "CHE";
public static final String PREFIX = "chime:";
public static final String REDIS_CITY_NAME_ALLOW = PREFIX.concat("per:cityName:allow");
public static final String REDIS_CITY_NAME_NOT_ALLOW = PREFIX.concat("per:cityName:notAllow");
public static final String REDIS_PERFORMANCE_IDS_ALLOW = PREFIX.concat("per:performanceIds:allow");
public static final String REDIS_PERFORMANCE_IDS_NOT_ALLOW = PREFIX.concat("per:performanceIds:notAllow");
public static String getNewUserId(){ public static String getNewUserId(){
return USER_ID_PREFIX + IDGenerator.nextTimeId(); return USER_ID_PREFIX + IDGenerator.nextTimeId();
} }
......
...@@ -3,12 +3,14 @@ package com.liquidnet.service.chime.biz; ...@@ -3,12 +3,14 @@ package com.liquidnet.service.chime.biz;
import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectMapper;
import com.liquidnet.commons.lang.util.BeanUtil;
import com.liquidnet.commons.lang.util.StringUtil; import com.liquidnet.commons.lang.util.StringUtil;
import com.liquidnet.service.adam.dto.rsc.AdamChimeUinfoDto; import com.liquidnet.service.adam.dto.rsc.AdamChimeUinfoDto;
import com.liquidnet.service.adam.dto.rsc.AdamChimeUinfoReq; import com.liquidnet.service.adam.dto.rsc.AdamChimeUinfoReq;
import com.liquidnet.service.adam.dto.vo.AdamTagVo; import com.liquidnet.service.adam.dto.vo.AdamTagVo;
import com.liquidnet.service.base.ResponseDto; import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.chime.dto.ChimeJoinUserCountDto; import com.liquidnet.service.chime.dto.ChimeJoinUserCountDto;
import com.liquidnet.service.chime.dto.ChimeUserTagDto;
import com.liquidnet.service.chime.dto.PerformanceDto; import com.liquidnet.service.chime.dto.PerformanceDto;
import com.liquidnet.service.chime.utils.DataUtils; import com.liquidnet.service.chime.utils.DataUtils;
import com.liquidnet.service.chime.utils.ObjectUtil; import com.liquidnet.service.chime.utils.ObjectUtil;
...@@ -150,6 +152,7 @@ public class ChimeUserBiz { ...@@ -150,6 +152,7 @@ public class ChimeUserBiz {
// } // }
performanceDtoList.add(dto); performanceDtoList.add(dto);
} }
//
return performanceDtoList; return performanceDtoList;
} }
...@@ -240,4 +243,22 @@ public class ChimeUserBiz { ...@@ -240,4 +243,22 @@ public class ChimeUserBiz {
} }
return rsSexDesc; return rsSexDesc;
} }
/**
* userTagMappingVo转换为dtoList
* @param userTagsMappingVoList
* @return
*/
public List<ChimeUserTagDto> buildUserTagDtoListFromVo(List<ChimeUserTagsMappingVo> userTagsMappingVoList){
//获取标签转换
List<ChimeUserTagDto> userTagDtoList = ObjectUtil.getChimeUserTagDtoList();
if(StringUtil.isNotNull(userTagsMappingVoList)){
userTagsMappingVoList.stream().forEach(chimeUserTagsMappingVo -> {
ChimeUserTagDto userTagDto = ChimeUserTagDto.getNew();
BeanUtil.copy(chimeUserTagsMappingVo,userTagDto);
userTagDtoList.add(userTagDto);
});
}
return userTagDtoList;
}
} }
...@@ -3,6 +3,7 @@ package com.liquidnet.service.chime.controller; ...@@ -3,6 +3,7 @@ package com.liquidnet.service.chime.controller;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.liquidnet.commons.lang.util.StringUtil; import com.liquidnet.commons.lang.util.StringUtil;
import com.liquidnet.service.base.ResponseDto; import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.chime.dto.ChimeUserInfoDto;
import com.liquidnet.service.chime.dto.ChimeUserRegisterReqDto; import com.liquidnet.service.chime.dto.ChimeUserRegisterReqDto;
import com.liquidnet.service.chime.dto.ChimeUserUpdateReqDto; import com.liquidnet.service.chime.dto.ChimeUserUpdateReqDto;
import com.liquidnet.service.chime.service.IChimeUserService; import com.liquidnet.service.chime.service.IChimeUserService;
...@@ -14,10 +15,7 @@ import io.swagger.annotations.ApiOperation; ...@@ -14,10 +15,7 @@ import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
/** /**
* @author AnJiabin <anjiabin@zhengzai.tv> * @author AnJiabin <anjiabin@zhengzai.tv>
...@@ -79,4 +77,15 @@ public class ChimeUserController { ...@@ -79,4 +77,15 @@ public class ChimeUserController {
} }
return null; return null;
} }
@GetMapping("getUserByUserId")
@ApiOperation("查询单个用户信息")
@ApiImplicitParams({
@ApiImplicitParam(type = "query", dataType = "String", name = "userId", value = "用户ID", required = true)
})
public ResponseDto<ChimeUserInfoDto> getUserByUserId(
@RequestParam(defaultValue = "") String userId
) {
ChimeUserInfoDto userInfoDto = chimeUserService.getUserByUserId(userId);
return ResponseDto.success(userInfoDto);
}
} }
package com.liquidnet.service.chime.service.impl; package com.liquidnet.service.chime.service.impl;
import com.liquidnet.commons.lang.util.BeanUtil; import com.liquidnet.commons.lang.util.BeanUtil;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.commons.lang.util.JsonUtils; import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.commons.lang.util.StringUtil; import com.liquidnet.commons.lang.util.StringUtil;
import com.liquidnet.service.adam.dto.rsc.AdamChimeUinfoDto; import com.liquidnet.service.adam.dto.rsc.AdamChimeUinfoDto;
...@@ -12,7 +13,6 @@ import com.liquidnet.service.chime.dto.NewPageResult; ...@@ -12,7 +13,6 @@ import com.liquidnet.service.chime.dto.NewPageResult;
import com.liquidnet.service.chime.service.IChimePerformanceService; import com.liquidnet.service.chime.service.IChimePerformanceService;
import com.liquidnet.service.chime.utils.ObjectUtil; import com.liquidnet.service.chime.utils.ObjectUtil;
import com.liquidnet.service.chime.vo.mongo.ChimeUserInfoVo; import com.liquidnet.service.chime.vo.mongo.ChimeUserInfoVo;
import com.liquidnet.service.chime.vo.mongo.ChimeUserTagsMappingVo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.PageRequest;
...@@ -59,11 +59,17 @@ public class ChimePerformanceServiceImpl implements IChimePerformanceService { ...@@ -59,11 +59,17 @@ public class ChimePerformanceServiceImpl implements IChimePerformanceService {
//初始化分页 //初始化分页
pagedResult.setPageSize(pageSize).setCurrentPage(pageNum+1); pagedResult.setPageSize(pageSize).setCurrentPage(pageNum+1);
//获取总数 //获取总数
Criteria criteria = Criteria.where("joinPerformanceId").is(reqDto.getPerformanceId()); Criteria criteria = Criteria.where("joinPerformanceId").is(reqDto.getPerformanceId());
//过滤本人 获取当前用户id
String userId = CurrentUtil.getCurrentUid();
if(StringUtil.isNotEmpty(userId)){
criteria = criteria.and("userId").ne(userId);
}
//过滤标签
if(StringUtil.isNotEmpty(reqDto.getTags())){ if(StringUtil.isNotEmpty(reqDto.getTags())){
criteria = criteria.and("userTagsVoList.tagCode").in(Arrays.asList(reqDto.getTags().split(","))); criteria = criteria.and("userTagsVoList.tagCode").in(Arrays.asList(reqDto.getTags().split(",")));
} }
//过滤性别
if(StringUtil.isNotEmpty(reqDto.getSex())){ if(StringUtil.isNotEmpty(reqDto.getSex())){
criteria = criteria.and("sex").is(reqDto.getSex()); criteria = criteria.and("sex").is(reqDto.getSex());
} }
...@@ -108,28 +114,20 @@ public class ChimePerformanceServiceImpl implements IChimePerformanceService { ...@@ -108,28 +114,20 @@ public class ChimePerformanceServiceImpl implements IChimePerformanceService {
dto.setPassWord("123456"); dto.setPassWord("123456");
//补充用户信息 //补充用户信息
if(StringUtil.isNotNull(adamChimeUinfoDtoList)&&adamChimeUinfoDtoList.size()>0){ if(StringUtil.isNotNull(adamChimeUinfoDtoList)&&adamChimeUinfoDtoList.size()>0){
adamChimeUinfoDtoList.stream().forEach(userDto -> { adamChimeUinfoDtoList.stream().forEach(adamUserDto -> {
if(userDto.getUserId().equalsIgnoreCase(item.getUserId())){ if(adamUserDto.getUserId().equalsIgnoreCase(item.getUserId())){
dto.setNickName(userDto.getNickName()); dto.setNickName(adamUserDto.getNickName());
dto.setAvatar(userDto.getAvatar()); dto.setAvatar(adamUserDto.getAvatar());
dto.setUserCover(userDto.getUserCover()); dto.setUserCover(adamUserDto.getUserCover());
dto.setBirthday(userDto.getBirthday()); dto.setBirthday(adamUserDto.getBirthday());
dto.setSignature(userDto.getSignature()); dto.setSignature(adamUserDto.getSignature());
dto.setArea(userDto.getArea()); dto.setArea(adamUserDto.getArea());
} }
}); });
} }
//获取标签转换 //获取标签转换
List<ChimeUserTagsMappingVo> userTagsMappingVoList = item.getUserTagsVoList(); List<ChimeUserTagDto> userTagDtoList = chimeUserBiz.buildUserTagDtoListFromVo(item.getUserTagsVoList());
List<ChimeUserTagDto> userTagDtoList = ObjectUtil.getChimeUserTagDtoList();
if(StringUtil.isNotNull(userTagsMappingVoList)){
userTagsMappingVoList.stream().forEach(chimeUserTagsMappingVo -> {
ChimeUserTagDto userTagDto = ChimeUserTagDto.getNew();
BeanUtil.copy(chimeUserTagsMappingVo,userTagDto);
userTagDtoList.add(userTagDto);
});
}
dto.setUserTags(userTagDtoList); dto.setUserTags(userTagDtoList);
dtoList.add(dto); dtoList.add(dto);
} }
......
...@@ -4,9 +4,11 @@ import com.liquidnet.common.cache.redis.util.RedisUtil; ...@@ -4,9 +4,11 @@ import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.commons.lang.util.BeanUtil; import com.liquidnet.commons.lang.util.BeanUtil;
import com.liquidnet.commons.lang.util.CurrentUtil; import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.commons.lang.util.StringUtil; import com.liquidnet.commons.lang.util.StringUtil;
import com.liquidnet.service.adam.dto.rsc.AdamChimeUinfoDto;
import com.liquidnet.service.chime.biz.ChimeUserBiz; import com.liquidnet.service.chime.biz.ChimeUserBiz;
import com.liquidnet.service.chime.dto.ChimeUserInfoDto; import com.liquidnet.service.chime.dto.ChimeUserInfoDto;
import com.liquidnet.service.chime.dto.ChimeUserRegisterReqDto; import com.liquidnet.service.chime.dto.ChimeUserRegisterReqDto;
import com.liquidnet.service.chime.dto.ChimeUserTagDto;
import com.liquidnet.service.chime.dto.ChimeUserUpdateReqDto; import com.liquidnet.service.chime.dto.ChimeUserUpdateReqDto;
import com.liquidnet.service.chime.service.IChimeUserService; import com.liquidnet.service.chime.service.IChimeUserService;
import com.liquidnet.service.chime.utils.DataUtils; import com.liquidnet.service.chime.utils.DataUtils;
...@@ -17,6 +19,7 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -17,6 +19,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.List; import java.util.List;
/** /**
...@@ -92,13 +95,27 @@ public class ChimeUserServiceImpl implements IChimeUserService { ...@@ -92,13 +95,27 @@ public class ChimeUserServiceImpl implements IChimeUserService {
@Override @Override
public ChimeUserInfoDto getUserByUserId(String userId) { public ChimeUserInfoDto getUserByUserId(String userId) {
//获取分页结果list中的userId
List<String> userIdList = Arrays.asList(new String[]{userId});
//批量获取用户信息
List<AdamChimeUinfoDto> adamChimeUinfoDtoList = chimeUserBiz.getAdamUserInfoDtoList(userIdList);
ChimeUserInfoVo chimeUserInfoVo = dataUtils.getUserByUserId(userId); ChimeUserInfoVo chimeUserInfoVo = dataUtils.getUserByUserId(userId);
if(StringUtil.isNotNull(chimeUserInfoVo)){ if(StringUtil.isNotNull(chimeUserInfoVo)){
ChimeUserInfoDto chimeUserInfoDto = ChimeUserInfoDto.getNew(); ChimeUserInfoDto chimeUserInfoDto = ChimeUserInfoDto.getNew();
BeanUtil.copy(chimeUserInfoVo,chimeUserInfoDto); BeanUtil.copy(chimeUserInfoVo,chimeUserInfoDto);
chimeUserInfoDto.setPassWord("123456"); // chimeUserInfoDto.setPassWord("123456");
if(adamChimeUinfoDtoList!=null&&adamChimeUinfoDtoList.size()>0){
AdamChimeUinfoDto adamChimeUinfoDto = adamChimeUinfoDtoList.get(0);
chimeUserInfoDto.setNickName(adamChimeUinfoDto.getNickName());
chimeUserInfoDto.setAvatar(adamChimeUinfoDto.getAvatar());
chimeUserInfoDto.setUserCover(adamChimeUinfoDto.getUserCover());
chimeUserInfoDto.setBirthday(adamChimeUinfoDto.getBirthday());
chimeUserInfoDto.setSignature(adamChimeUinfoDto.getSignature());
chimeUserInfoDto.setArea(adamChimeUinfoDto.getArea());
}
//获取标签 //获取标签
chimeUserInfoDto.setUserTags(dataUtils.getUserTagList(userId)); List<ChimeUserTagDto> userTagDtoList = chimeUserBiz.buildUserTagDtoListFromVo(chimeUserInfoVo.getUserTagsVoList());
chimeUserInfoDto.setUserTags(userTagDtoList);
return chimeUserInfoDto; return chimeUserInfoDto;
} }
return null; return null;
......
...@@ -6,7 +6,6 @@ import com.liquidnet.service.adam.dto.rsc.AdamChimeUinfoDto; ...@@ -6,7 +6,6 @@ import com.liquidnet.service.adam.dto.rsc.AdamChimeUinfoDto;
import com.liquidnet.service.chime.biz.ChimeUserBiz; import com.liquidnet.service.chime.biz.ChimeUserBiz;
import com.liquidnet.service.chime.constant.ChimeConstant; import com.liquidnet.service.chime.constant.ChimeConstant;
import com.liquidnet.service.chime.dto.ChimeJoinUserCountDto; import com.liquidnet.service.chime.dto.ChimeJoinUserCountDto;
import com.liquidnet.service.chime.dto.ChimeUserTagDto;
import com.liquidnet.service.chime.vo.mongo.ChimeUserInfoVo; import com.liquidnet.service.chime.vo.mongo.ChimeUserInfoVo;
import com.liquidnet.service.chime.vo.mongo.ChimeUserTagsMappingVo; import com.liquidnet.service.chime.vo.mongo.ChimeUserTagsMappingVo;
import com.mongodb.client.result.UpdateResult; import com.mongodb.client.result.UpdateResult;
...@@ -103,16 +102,6 @@ public class DataUtils { ...@@ -103,16 +102,6 @@ public class DataUtils {
return chimeUserInfoVo; return chimeUserInfoVo;
} }
/**
* 获取用户标签
* @param userId
* @return
*/
public List<ChimeUserTagDto> getUserTagList(String userId){
Query query= Query.query(Criteria.where("userId").is(userId));
return mongoTemplate.find(query, ChimeUserTagDto.class,ChimeUserTagsMappingVo.class.getSimpleName());
}
/** /**
* 根据演出idList获取在场人数和默认头像图片(最多获取5个url) * 根据演出idList获取在场人数和默认头像图片(最多获取5个url)
* @param performanceIdList * @param performanceIdList
......
package com.liquidnet.service.chime.utils;
import com.liquidnet.common.cache.redis.util.RedisUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
* @author AnJiabin <anjiabin@zhengzai.tv>
* @version V1.0
* @Description: TODO
* @class: RedisDataUtil
* @Package com.liquidnet.service.chime.utils
* @Copyright: LightNet @ Copyright (c) 2021
* @date 2021/9/22 11:08
*/
@Component
public class RedisDataUtil {
@Autowired
private RedisUtil redisUtil;
/**
* 根据演出id判断是否开放社交
* @param performanceId
* @return
*/
public boolean isPassedByPerformanceId(String performanceId){
return true;
}
/**
* 根据演出地点判断是否开放社交
* @param cityName
* @return
*/
public boolean isPassedByCityName(String cityName){
return true;
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment