|
@@ -28,10 +28,7 @@ import org.dromara.system.domain.GameEventProject;
|
|
import org.dromara.system.mapper.GameEventProjectMapper;
|
|
import org.dromara.system.mapper.GameEventProjectMapper;
|
|
import org.dromara.system.service.IGameEventProjectService;
|
|
import org.dromara.system.service.IGameEventProjectService;
|
|
|
|
|
|
-import java.util.List;
|
|
|
|
-import java.util.Map;
|
|
|
|
-import java.util.Collection;
|
|
|
|
-import java.util.Optional;
|
|
|
|
|
|
+import java.util.*;
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -57,7 +54,7 @@ public class GameEventProjectServiceImpl implements IGameEventProjectService {
|
|
@Override
|
|
@Override
|
|
public GameEventProjectVo queryById(Long projectId) {
|
|
public GameEventProjectVo queryById(Long projectId) {
|
|
GameEventProjectVo vo = baseMapper.selectVoById(projectId);
|
|
GameEventProjectVo vo = baseMapper.selectVoById(projectId);
|
|
- vo.setRefereeIds(JSONUtil.toList(vo.getRefereeId(), String.class));
|
|
|
|
|
|
+ vo.setRefereeGroups(JSONUtil.toList(vo.getRefereeGroup(), String.class));
|
|
return vo;
|
|
return vo;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -82,7 +79,8 @@ public class GameEventProjectServiceImpl implements IGameEventProjectService {
|
|
Page<GameEventProjectVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
|
Page<GameEventProjectVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
|
|
|
|
|
// 使用 forEach 直接修改原对象
|
|
// 使用 forEach 直接修改原对象
|
|
- result.getRecords().forEach(vo -> {
|
|
|
|
|
|
+ result.getRecords()
|
|
|
|
+ .forEach(vo -> {
|
|
Optional.ofNullable(vo.getEventId())
|
|
Optional.ofNullable(vo.getEventId())
|
|
.filter(ObjectUtil::isNotEmpty)
|
|
.filter(ObjectUtil::isNotEmpty)
|
|
.ifPresent(eventId -> {
|
|
.ifPresent(eventId -> {
|
|
@@ -92,11 +90,11 @@ public class GameEventProjectServiceImpl implements IGameEventProjectService {
|
|
}
|
|
}
|
|
});
|
|
});
|
|
|
|
|
|
- Optional.ofNullable(vo.getRefereeId())
|
|
|
|
|
|
+ Optional.ofNullable(vo.getRefereeGroup())
|
|
.filter(ObjectUtil::isNotEmpty)
|
|
.filter(ObjectUtil::isNotEmpty)
|
|
.ifPresent(refereeIdStr -> {
|
|
.ifPresent(refereeIdStr -> {
|
|
List<String> refereeList = JSONUtil.toList(refereeIdStr.toString(), String.class);
|
|
List<String> refereeList = JSONUtil.toList(refereeIdStr.toString(), String.class);
|
|
- vo.setRefereeIds(refereeList);
|
|
|
|
|
|
+ vo.setRefereeGroups(refereeList);
|
|
});
|
|
});
|
|
});
|
|
});
|
|
|
|
|
|
@@ -111,11 +109,34 @@ public class GameEventProjectServiceImpl implements IGameEventProjectService {
|
|
*/
|
|
*/
|
|
@Override
|
|
@Override
|
|
public List<GameEventProjectVo> queryList(GameEventProjectBo bo) {
|
|
public List<GameEventProjectVo> queryList(GameEventProjectBo bo) {
|
|
- if (bo.getEventId() == null){
|
|
|
|
- bo.setEventId(RedisUtils.getCacheObject(GameEventConstant.DEFAULT_EVENT_ID));
|
|
|
|
|
|
+ if (bo.getEventId() == null) {
|
|
|
|
+ Object cacheObject = RedisUtils.getCacheObject(GameEventConstant.DEFAULT_EVENT_ID);
|
|
|
|
+ if (cacheObject instanceof Integer) {
|
|
|
|
+ bo.setEventId(((Integer) cacheObject).longValue()); // 显式转换为 Long 类型
|
|
|
|
+ } else if (cacheObject instanceof Long) {
|
|
|
|
+ bo.setEventId((Long) cacheObject);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
LambdaQueryWrapper<GameEventProject> lqw = buildQueryWrapper(bo);
|
|
LambdaQueryWrapper<GameEventProject> lqw = buildQueryWrapper(bo);
|
|
- return baseMapper.selectVoList(lqw);
|
|
|
|
|
|
+ List<GameEventProjectVo> list = baseMapper.selectVoList(lqw);
|
|
|
|
+ list.forEach(vo -> {
|
|
|
|
+ Optional.ofNullable(vo.getEventId())
|
|
|
|
+ .filter(ObjectUtil::isNotEmpty)
|
|
|
|
+ .ifPresent(eventId -> {
|
|
|
|
+ GameEvent gameEvent = gameEventMapper.selectById(eventId);
|
|
|
|
+ if (gameEvent != null) {
|
|
|
|
+ vo.setEventName(gameEvent.getEventName());
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+
|
|
|
|
+ Optional.ofNullable(vo.getRefereeGroup())
|
|
|
|
+ .filter(ObjectUtil::isNotEmpty)
|
|
|
|
+ .ifPresent(refereeIdStr -> {
|
|
|
|
+ List<String> refereeList = JSONUtil.toList(refereeIdStr.toString(), String.class);
|
|
|
|
+ vo.setRefereeGroups(refereeList);
|
|
|
|
+ });
|
|
|
|
+ });
|
|
|
|
+ return list;
|
|
}
|
|
}
|
|
|
|
|
|
private LambdaQueryWrapper<GameEventProject> buildQueryWrapper(GameEventProjectBo bo) {
|
|
private LambdaQueryWrapper<GameEventProject> buildQueryWrapper(GameEventProjectBo bo) {
|
|
@@ -157,13 +178,18 @@ public class GameEventProjectServiceImpl implements IGameEventProjectService {
|
|
*/
|
|
*/
|
|
@Override
|
|
@Override
|
|
public Boolean insertByBo(GameEventProjectBo bo) {
|
|
public Boolean insertByBo(GameEventProjectBo bo) {
|
|
- if (bo.getEventId() == null){
|
|
|
|
- bo.setEventId(RedisUtils.getCacheObject(GameEventConstant.DEFAULT_EVENT_ID));
|
|
|
|
|
|
+ if (bo.getEventId() == null) {
|
|
|
|
+ Object cacheObject = RedisUtils.getCacheObject(GameEventConstant.DEFAULT_EVENT_ID);
|
|
|
|
+ if (cacheObject instanceof Integer) {
|
|
|
|
+ bo.setEventId(((Integer) cacheObject).longValue()); // 显式转换为 Long 类型
|
|
|
|
+ } else if (cacheObject instanceof Long) {
|
|
|
|
+ bo.setEventId((Long) cacheObject);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
GameEventProject add = MapstructUtils.convert(bo, GameEventProject.class);
|
|
GameEventProject add = MapstructUtils.convert(bo, GameEventProject.class);
|
|
validEntityBeforeSave(add);
|
|
validEntityBeforeSave(add);
|
|
- if (StrUtil.isNotEmpty(bo.getRefereeId())) {
|
|
|
|
- add.setRefereeId(JSONUtil.toJsonStr(bo.getRefereeIds()));
|
|
|
|
|
|
+ if (CollectionUtils.isNotEmpty(bo.getRefereeGroups())) {
|
|
|
|
+ add.setRefereeGroup(JSONUtil.toJsonStr(bo.getRefereeGroups()));
|
|
}
|
|
}
|
|
boolean flag = baseMapper.insert(add) > 0;
|
|
boolean flag = baseMapper.insert(add) > 0;
|
|
if (flag) {
|
|
if (flag) {
|
|
@@ -180,10 +206,18 @@ public class GameEventProjectServiceImpl implements IGameEventProjectService {
|
|
*/
|
|
*/
|
|
@Override
|
|
@Override
|
|
public Boolean updateByBo(GameEventProjectBo bo) {
|
|
public Boolean updateByBo(GameEventProjectBo bo) {
|
|
- if (bo.getEventId() == null){
|
|
|
|
- bo.setEventId(RedisUtils.getCacheObject(GameEventConstant.DEFAULT_EVENT_ID));
|
|
|
|
|
|
+ if (bo.getEventId() == null) {
|
|
|
|
+ Object cacheObject = RedisUtils.getCacheObject(GameEventConstant.DEFAULT_EVENT_ID);
|
|
|
|
+ if (cacheObject instanceof Integer) {
|
|
|
|
+ bo.setEventId(((Integer) cacheObject).longValue()); // 显式转换为 Long 类型
|
|
|
|
+ } else if (cacheObject instanceof Long) {
|
|
|
|
+ bo.setEventId((Long) cacheObject);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
GameEventProject update = MapstructUtils.convert(bo, GameEventProject.class);
|
|
GameEventProject update = MapstructUtils.convert(bo, GameEventProject.class);
|
|
|
|
+ if (CollectionUtils.isNotEmpty(bo.getRefereeGroups())) {
|
|
|
|
+ update.setRefereeGroup(JSONUtil.toJsonStr(bo.getRefereeGroups()));
|
|
|
|
+ }
|
|
validEntityBeforeSave(update);
|
|
validEntityBeforeSave(update);
|
|
return baseMapper.updateById(update) > 0;
|
|
return baseMapper.updateById(update) > 0;
|
|
}
|
|
}
|