|
@@ -13,9 +13,7 @@ import com.zanxiang.manage.domain.dto.UserDTO;
|
|
import com.zanxiang.manage.domain.params.GameUserListParam;
|
|
import com.zanxiang.manage.domain.params.GameUserListParam;
|
|
import com.zanxiang.manage.domain.vo.GameUserListVO;
|
|
import com.zanxiang.manage.domain.vo.GameUserListVO;
|
|
import com.zanxiang.manage.domain.vo.GameUserVO;
|
|
import com.zanxiang.manage.domain.vo.GameUserVO;
|
|
-import com.zanxiang.manage.service.GameService;
|
|
|
|
-import com.zanxiang.manage.service.GameUserService;
|
|
|
|
-import com.zanxiang.manage.service.UserService;
|
|
|
|
|
|
+import com.zanxiang.manage.service.*;
|
|
import com.zanxiang.mybatis.entity.GameUser;
|
|
import com.zanxiang.mybatis.entity.GameUser;
|
|
import com.zanxiang.mybatis.mapper.GameUserMapper;
|
|
import com.zanxiang.mybatis.mapper.GameUserMapper;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
@@ -24,7 +22,10 @@ import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.time.LocalDateTime;
|
|
import java.time.LocalDateTime;
|
|
import java.time.LocalTime;
|
|
import java.time.LocalTime;
|
|
-import java.util.*;
|
|
|
|
|
|
+import java.util.List;
|
|
|
|
+import java.util.Map;
|
|
|
|
+import java.util.Objects;
|
|
|
|
+import java.util.Set;
|
|
|
|
|
|
/**
|
|
/**
|
|
* @author : lingfeng
|
|
* @author : lingfeng
|
|
@@ -41,6 +42,15 @@ public class GameUserServiceImpl extends ServiceImpl<GameUserMapper, GameUser> i
|
|
@Autowired
|
|
@Autowired
|
|
private GameService gameService;
|
|
private GameService gameService;
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
+ private GameCategoryService gameCategoryService;
|
|
|
|
+
|
|
|
|
+ @Autowired
|
|
|
|
+ private ChannelService channelService;
|
|
|
|
+
|
|
|
|
+ @Autowired
|
|
|
|
+ private CpService cpService;
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 查询玩家游戏列表
|
|
* 查询玩家游戏列表
|
|
*
|
|
*
|
|
@@ -49,23 +59,23 @@ public class GameUserServiceImpl extends ServiceImpl<GameUserMapper, GameUser> i
|
|
*/
|
|
*/
|
|
@Override
|
|
@Override
|
|
public IPage<GameUserListVO> gameUserList(GameUserListParam param) {
|
|
public IPage<GameUserListVO> gameUserList(GameUserListParam param) {
|
|
- //玩家条件处理
|
|
|
|
- Map<Long, UserDTO> userMap = userService.userCondition(param.getUserId(), param.getChannelId(), param.getUserName(), param.getNickname(), null);
|
|
|
|
- //根据条件, 匹配不到玩家
|
|
|
|
- if (userMap != null && userMap.isEmpty()) {
|
|
|
|
- return new Page<>();
|
|
|
|
- }
|
|
|
|
- //玩家信息和拓展信息合并
|
|
|
|
- Set<Long> userIdSet = new HashSet<>();
|
|
|
|
- if (userMap != null) {
|
|
|
|
- userIdSet = userMap.keySet();
|
|
|
|
- }
|
|
|
|
//游戏条件处理
|
|
//游戏条件处理
|
|
Map<Long, GameDTO> gameMap = gameService.gameCondition(param.getCpId(), param.getGameId(), param.getGameCategoryId());
|
|
Map<Long, GameDTO> gameMap = gameService.gameCondition(param.getCpId(), param.getGameId(), param.getGameCategoryId());
|
|
//根据条件, 匹配不到游戏
|
|
//根据条件, 匹配不到游戏
|
|
if (gameMap != null && gameMap.isEmpty()) {
|
|
if (gameMap != null && gameMap.isEmpty()) {
|
|
return new Page<>();
|
|
return new Page<>();
|
|
}
|
|
}
|
|
|
|
+ //玩家条件处理
|
|
|
|
+ Map<Long, UserDTO> userMap = userService.userCondition(param.getUserId(), param.getChannelId(), param.getUserName(), param.getNickname(), null);
|
|
|
|
+ //根据条件, 匹配不到玩家
|
|
|
|
+ if (userMap != null && userMap.isEmpty()) {
|
|
|
|
+ return new Page<>();
|
|
|
|
+ }
|
|
|
|
+ //相关用户id
|
|
|
|
+ Set<Long> userIdSet = userMap == null ? null : userMap.keySet();
|
|
|
|
+ Map<Long, String> channelMap = channelService.choiceMap();
|
|
|
|
+ Map<Long, String> cpMap = cpService.choiceMap();
|
|
|
|
+ Map<Long, String> categoryMap = gameCategoryService.choiceMap();
|
|
//执行查询
|
|
//执行查询
|
|
return page(param.toPage(), new QueryWrapper<GameUser>().lambda()
|
|
return page(param.toPage(), new QueryWrapper<GameUser>().lambda()
|
|
.in(CollectionUtils.isNotEmpty(userIdSet), GameUser::getUserId, userIdSet)
|
|
.in(CollectionUtils.isNotEmpty(userIdSet), GameUser::getUserId, userIdSet)
|
|
@@ -84,7 +94,7 @@ public class GameUserServiceImpl extends ServiceImpl<GameUserMapper, GameUser> i
|
|
.eq(param.getVipLevel() != null && param.getVipLevel() <= 10, GameUser::getRoleVipMax, param.getVipLevel())
|
|
.eq(param.getVipLevel() != null && param.getVipLevel() <= 10, GameUser::getRoleVipMax, param.getVipLevel())
|
|
.gt(param.getVipLevel() != null && param.getVipLevel() > 10, GameUser::getRoleVipMax, param.getVipLevel())
|
|
.gt(param.getVipLevel() != null && param.getVipLevel() > 10, GameUser::getRoleVipMax, param.getVipLevel())
|
|
.orderByDesc(GameUser::getCreateTime)
|
|
.orderByDesc(GameUser::getCreateTime)
|
|
- ).convert(u -> this.toVo(u, userMap, gameMap));
|
|
|
|
|
|
+ ).convert(u -> this.toVo(u, userMap, gameMap, channelMap, cpMap, categoryMap));
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -95,7 +105,8 @@ public class GameUserServiceImpl extends ServiceImpl<GameUserMapper, GameUser> i
|
|
* @param gameMap : 游戏信息
|
|
* @param gameMap : 游戏信息
|
|
* @return : 返回游戏玩家信息
|
|
* @return : 返回游戏玩家信息
|
|
*/
|
|
*/
|
|
- private GameUserListVO toVo(GameUser gameUser, Map<Long, UserDTO> userMap, Map<Long, GameDTO> gameMap) {
|
|
|
|
|
|
+ private GameUserListVO toVo(GameUser gameUser, Map<Long, UserDTO> userMap, Map<Long, GameDTO> gameMap,
|
|
|
|
+ Map<Long, String> channelMap, Map<Long, String> cpMap, Map<Long, String> categoryMap) {
|
|
GameUserListVO gameUserListVO = BeanUtils.copy(gameUser, GameUserListVO.class);
|
|
GameUserListVO gameUserListVO = BeanUtils.copy(gameUser, GameUserListVO.class);
|
|
if (Objects.isNull(gameUserListVO)) {
|
|
if (Objects.isNull(gameUserListVO)) {
|
|
return null;
|
|
return null;
|
|
@@ -107,15 +118,18 @@ public class GameUserServiceImpl extends ServiceImpl<GameUserMapper, GameUser> i
|
|
if (userDTO != null) {
|
|
if (userDTO != null) {
|
|
gameUserListVO.setNickname(userDTO.getNickname());
|
|
gameUserListVO.setNickname(userDTO.getNickname());
|
|
gameUserListVO.setUsername(userDTO.getUsername());
|
|
gameUserListVO.setUsername(userDTO.getUsername());
|
|
- gameUserListVO.setChannelId(userDTO.getAgentId());
|
|
|
|
|
|
+ gameUserListVO.setAgentId(userDTO.getAgentId());
|
|
|
|
+ gameUserListVO.setChannel(channelMap.get(userDTO.getAgentId()));
|
|
}
|
|
}
|
|
GameDTO gameDTO = StringUtils.isEmpty(gameMap) ? null : gameMap.get(gameUserListVO.getGameId());
|
|
GameDTO gameDTO = StringUtils.isEmpty(gameMap) ? null : gameMap.get(gameUserListVO.getGameId());
|
|
if (gameDTO == null) {
|
|
if (gameDTO == null) {
|
|
gameDTO = gameService.getById(gameUserListVO.getGameId());
|
|
gameDTO = gameService.getById(gameUserListVO.getGameId());
|
|
}
|
|
}
|
|
if (gameDTO != null) {
|
|
if (gameDTO != null) {
|
|
- gameUserListVO.setGameCategoryId(gameDTO.getCategory());
|
|
|
|
gameUserListVO.setCpId(gameDTO.getCpId());
|
|
gameUserListVO.setCpId(gameDTO.getCpId());
|
|
|
|
+ gameUserListVO.setCpName(cpMap.get(gameDTO.getCpId()));
|
|
|
|
+ gameUserListVO.setGameCategoryId(gameDTO.getCategory());
|
|
|
|
+ gameUserListVO.setGameCategoryName(categoryMap.get(gameDTO.getCategory()));
|
|
}
|
|
}
|
|
return gameUserListVO;
|
|
return gameUserListVO;
|
|
}
|
|
}
|