Browse Source

分组头像

master
zhizhi wu 5 years ago
parent
commit
0934421b0d
  1. 10
      game/src/main/java/com/ccsens/game/api/ClientController.java
  2. 2
      game/src/main/java/com/ccsens/game/bean/vo/ScreenVo.java
  3. 16
      game/src/main/java/com/ccsens/game/service/ClientService.java
  4. 8
      game/src/main/java/com/ccsens/game/service/ScreenService.java
  5. 1
      util/src/main/java/com/ccsens/util/CodeEnum.java

10
game/src/main/java/com/ccsens/game/api/ClientController.java

@ -35,9 +35,10 @@ public class ClientController {
@ApiImplicitParams({
})
@RequestMapping(value = "groupMembers", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<ClientVo.RankingAll> groupMembers(@ApiParam @Validated @RequestBody QueryDto<ClientDto.GroupRanking> params) throws Exception {
public JsonResponse<PageInfo<ClientVo.MemberInfo>> groupMembers(@ApiParam @Validated @RequestBody QueryDto<ClientDto.GroupRanking> params) throws Exception {
log.info("查看组内排行榜:{}",params);
PageInfo<ClientVo.MemberInfo> rankingAll = clientService.groupMembers(params.getParam());
log.info("查询组内排行榜结束");
return JsonResponse.newInstance().ok(rankingAll);
}
@ -48,6 +49,7 @@ public class ClientController {
public JsonResponse<ClientVo.RankingAll> members(@ApiParam @Validated @RequestBody QueryDto<ClientDto.GatRanking> params) throws Exception {
log.info("查看全部排行榜:{}",params);
ClientVo.RankingAll rankingAll = clientService.getRankingAll(params);
log.info("查询排行榜结束");
return JsonResponse.newInstance().ok(rankingAll);
}
@ -59,6 +61,7 @@ public class ClientController {
public JsonResponse<ClientVo.Join> joinGame(@ApiParam @Validated @RequestBody QueryDto<ClientDto.Join> params) throws Exception {
log.info("参加游戏:{}",params);
ClientVo.Join join = clientService.join(params.getParam(), params.getUserId());
log.info("参加游戏结果:{}", join);
return JsonResponse.newInstance().ok(join);
}
@ -68,7 +71,6 @@ public class ClientController {
@RequestMapping(value = "activityRule", method = RequestMethod.GET, produces = {"application/json;charset=UTF-8"})
public JsonResponse<List<String>> getGameActivityRule(@ApiParam @RequestParam Long recordId) throws Exception {
log.info("获取游戏规则:{}",recordId);
List<String> gameActivityRule = screenService.getGameActivityRule(screenService.getGameTypeId(recordId));
return JsonResponse.newInstance().ok(gameActivityRule);
}
@ -100,6 +102,7 @@ public class ClientController {
public JsonResponse<List<ScreenVo.Group>> getGroupByRecordId(@ApiParam @RequestParam Long recordId) throws Exception {
log.info("根据游戏id获取分组信息:{}",recordId);
List<ScreenVo.Group> groupList = screenService.getGroupByRecordId(recordId);
log.info("分组查询结束");
return JsonResponse.newInstance().ok(groupList);
}
@ -108,8 +111,9 @@ public class ClientController {
})
@RequestMapping(value = "task", method = RequestMethod.GET, produces = {"application/json;charset=UTF-8"})
public JsonResponse<ScreenVo.RecordInfo> getRecordByTaskId(@ApiParam @RequestParam Long taskId,String gameType) throws Exception {
log.info("根据游戏id获取分组信息:{}",taskId);
log.info("根据任务id获取游戏记录id:{}",taskId);
ScreenVo.RecordInfo recordInfo = screenService.getRecordByTaskId(taskId,gameType);
log.info("游戏信息:{}", recordInfo);
return JsonResponse.newInstance().ok(recordInfo);
}
}

2
game/src/main/java/com/ccsens/game/bean/vo/ScreenVo.java

@ -53,6 +53,8 @@ public class ScreenVo {
private Long groupId ;
@ApiModelProperty("分组名称")
private String groupName ;
@ApiModelProperty("头像")
private String headPortraitUrl;
@ApiModelProperty("该组参赛总人数")
private int totalGroupMembers ;
}

16
game/src/main/java/com/ccsens/game/service/ClientService.java

@ -76,7 +76,7 @@ public class ClientService implements IClientService {
//获取游戏的购买记录和类型
// TODO 暂时没有购买相关的,先不查询
// GameUserPay gameUserPay = gameUserPayDao.selectByPrimaryKey(gameRecord.getUserPayId());
Boolean isGroup = gameRecord.getGameGroup() == GameConstant.GAME_GROUP;
boolean isGroup = gameRecord.getGameGroup() == GameConstant.GAME_GROUP;
//根据游戏ID和用户ID查询用户是否加入
GameUserJoinExample example = new GameUserJoinExample();
@ -105,6 +105,20 @@ public class ClientService implements IClientService {
joinVo.setCompletedData(completedData);
return joinVo;
}
// 判断是否达到组内上限
// if (gameRecord.getMemberLimit())
if (isGroup) {
GameUserJoinGroupExample groupExample = new GameUserJoinGroupExample();
groupExample.createCriteria().andGameGroupIdEqualTo(join.getGroupId());
long count = gameUserJoinGroupDao.countByExample(groupExample);
log.info("组内人数:{},上限:{}", count, gameRecord.getMemberLimit());
if (count >= gameRecord.getMemberLimit()) {
throw new BaseException(CodeEnum.GROUP_MEMBER_LIMIT);
}
}
//准备中
boolean prepare = gameRecord.getGameStatus().byteValue() == GameConstant.GAME_PREPARATION;
//进行中

8
game/src/main/java/com/ccsens/game/service/ScreenService.java

@ -232,7 +232,7 @@ public class ScreenService implements IScreenService {
}
//添加分组信息
if(gameRecord.getGameGroup() == 1){
for (int i = 8; i < sheet.getLastRowNum(); i++){
for (int i = 8; i <= sheet.getLastRowNum(); i++){
XSSFRow groupRow = sheet.getRow(i);
if(ObjectUtil.isNotNull(groupRow)){
String groupName = ExcelUtil.getCellValue(groupRow.getCell(0));
@ -541,7 +541,7 @@ public class ScreenService implements IScreenService {
break;
case GameConstant.GAME_PROCESSING:
//查询游戏是否有分组
if (gameType.getIsGroup() == 0) {
if (gameRecord.getGameGroup() == GameConstant.GAME_SINGLE) {
//普通游戏返回前十名的信息
ScreenVo.ProcessingData processingData = new ScreenVo.ProcessingData();
// 查询前十名(列表顺序即前十名顺序)
@ -550,7 +550,8 @@ public class ScreenService implements IScreenService {
gameStatusVo.setProcessingData(processingData);
} else {
//分组游戏则返回每个分组的信息
List<ScreenVo.GroupVo> groupVoList = getGroupScore(gameRecord);
// List<ScreenVo.GroupVo> groupVoList = getGroupScore(gameRecord);
List<ScreenVo.GroupVo> groupVoList = groupVo;
gameStatusVo.setProcessingData(groupVoList);
}
break;
@ -1170,6 +1171,7 @@ public class ScreenService implements IScreenService {
ScreenVo.Group group = new ScreenVo.Group();
group.setGroupId(gameGroup.getId());
group.setGroupName(gameGroup.getName());
group.setHeadPortraitUrl(gameGroup.getHeadPortraitUrl());
groupList.add(group);
}
}

1
util/src/main/java/com/ccsens/util/CodeEnum.java

@ -138,6 +138,7 @@ public enum CodeEnum {
VOTE_COMPLETED(116,"投票已结束",true),
VOTE_NOT_START(117,"投票未开始",true),
NOT_CONFIG_OR_ERR(118,"缺少配置信息,或配置信息异常",true),
GROUP_MEMBER_LIMIT(119,"当前组内人员已满,请选择其他组",true),
;

Loading…
Cancel
Save