Browse Source

修改队伍总分为null

master
zhangye 5 years ago
parent
commit
cfad1dcca1
  1. 4
      game/src/main/java/com/ccsens/game/bean/dto/message/ChromeMessageDto.java
  2. 2
      game/src/main/java/com/ccsens/game/persist/dao/GameUserJoinDao.java
  3. 11
      game/src/main/java/com/ccsens/game/service/ClientService.java
  4. 13
      game/src/main/java/com/ccsens/game/service/ScreenService.java
  5. 4
      game/src/main/resources/application.yml
  6. 15
      game/src/main/resources/mapper_dao/GameUserJoinDao.xml
  7. 30
      mt/src/main/java/com/ccsens/mt/api/ScoreController.java
  8. 2
      mt/src/main/java/com/ccsens/mt/bean/dto/ScoreDto.java
  9. 2
      mt/src/main/java/com/ccsens/mt/bean/vo/ScoreVo.java
  10. 4
      mt/src/main/java/com/ccsens/mt/service/ScoreService.java
  11. 3
      mt/src/main/java/com/ccsens/mt/service/SigninService.java
  12. 4
      mt/src/main/resources/application.yml
  13. 1
      tall/src/main/java/com/ccsens/tall/config/SpringConfig.java
  14. 10
      tall/src/main/java/com/ccsens/tall/service/ProMemberService.java

4
game/src/main/java/com/ccsens/game/bean/dto/message/ChromeMessageDto.java

@ -16,6 +16,7 @@ public class ChromeMessageDto extends BaseMessageDto{
private Long projectId;
private Long recordId;
private String url;
private String type;
}
private Data data;
@ -24,7 +25,7 @@ public class ChromeMessageDto extends BaseMessageDto{
setTime(System.currentTimeMillis());
}
public ChromeMessageDto(String url,Long recordId, Long projectId){
public ChromeMessageDto(String url,Long recordId, Long projectId,String type){
this();
if(data == null){
data = new Data();
@ -32,5 +33,6 @@ public class ChromeMessageDto extends BaseMessageDto{
data.setUrl(url);
data.setRecordId(recordId);
data.setProjectId(projectId);
data.setType(type);
}
}

2
game/src/main/java/com/ccsens/game/persist/dao/GameUserJoinDao.java

@ -25,7 +25,7 @@ public interface GameUserJoinDao extends GameUserJoinMapper {
* @param recordId
* @return
*/
Integer getRanking(@Param("userId") Long userId, @Param("recordId") Long recordId);
Integer getRanking(@Param("userId") Long userId, @Param("recordId") Long recordId,@Param("groupId") Long groupId);
List<ClientVo.MemberInfo> selectByRecordId(@Param("recordId") Long recordId);

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

@ -96,6 +96,11 @@ public class ClientService implements IClientService {
completedData.setScore(0);
completedData.setSort(joinVo.getCountMembers().intValue() + 1);
completedData.setOver(0);
if(isGroup){
ClientVo.GroupScore groupScore = getGroupScore(join.getGroupId(),gameRecord.getId());
completedData.setGroupScore(groupScore);
}
joinVo.setCompletedData(completedData);
return joinVo;
}
@ -223,7 +228,7 @@ public class ClientService implements IClientService {
}
completedData.setTimes(join.getTimes());
completedData.setScore(join.getScore());
Integer sort = gameUserJoinDao.getRanking(join.getUserId(), gameRecord.getId());
Integer sort = gameUserJoinDao.getRanking(join.getUserId(), gameRecord.getId(),groupId);
if (ObjectUtil.isNotNull(sort)) {
completedData.setSort(sort);
} else {
@ -267,9 +272,11 @@ public class ClientService implements IClientService {
int totalTimes = 0;
for (GameUserJoinGroup userJoinGroup : userJoinGroupList) {
GameUserJoin userJoin = gameUserJoinDao.selectByPrimaryKey(userJoinGroup.getUserJoinId());
if(ObjectUtil.isNotNull(userJoin)) {
totalScore += userJoin.getScore();
totalTimes += userJoin.getTimes();
}
}
groupScore.setGroupTimes(totalTimes);
groupScore.setGroupScore(totalScore);
}
@ -280,12 +287,14 @@ public class ClientService implements IClientService {
if (CollectionUtil.isNotEmpty(userJoinGroupList)) {
for (GameUserJoinGroup userJoinGroup : userJoinGroupList) {
GameUserJoin userJoin = gameUserJoinDao.selectByPrimaryKey(userJoinGroup.getUserJoinId());
if(ObjectUtil.isNotNull(userJoin)) {
otherGroupScore += userJoin.getScore();
}
}
}
}
}
}
if(groupScore.getGroupScore() >= otherGroupScore){
groupScore.setGroupSort(1);
}else {

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

@ -23,14 +23,12 @@ import com.ccsens.util.exception.BaseException;
import com.fasterxml.jackson.core.JsonProcessingException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.ZSetOperations;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.websocket.OnClose;
import java.io.File;
import java.util.*;
import java.util.concurrent.*;
@ -119,9 +117,14 @@ public class ScreenService implements IScreenService {
List<GameRecord> recordList = gameRecordDao.selectByExample(recordExample);
if (CollectionUtil.isNotEmpty(recordList)) {
GameRecord record = recordList.get(0);
if (record.getGameStatus() != GameConstant.GAME_COMPLETED) {
if(record.getGameStatus() == GameConstant.GAME_PREPARATION ||
record.getGameStatus() == GameConstant.GAME_PROCESSING){
throw new BaseException(CodeEnum.GAME_NO_END);
}
if(record.getGameStatus() == GameConstant.GAME_PENDING){
record.setGameStatus(GameConstant.GAME_COMPLETED);
gameRecordDao.updateByPrimaryKeySelective(record);
}
}
}
@ -168,7 +171,7 @@ public class ScreenService implements IScreenService {
//路径(添加项目id)
String url = gameRecord.getUrl() + "&projectId=" + memberGame.getProjectId();
//给所有人发送消息发送消息
ChromeMessageDto chromeMessageDto = new ChromeMessageDto(url, gameRecord.getId(), memberGame.getProjectId());
ChromeMessageDto chromeMessageDto = new ChromeMessageDto(url, gameRecord.getId(), memberGame.getProjectId(),gameType.getCode());
BaseMessageDto.MessageUser messageUser = null;
List<BaseMessageDto.MessageUser> messageUserList = new ArrayList<>();
//获取项目下所有成员
@ -597,7 +600,7 @@ public class ScreenService implements IScreenService {
//路径(添加项目id)
String url = gameRecord.getUrl() + "&projectId=" + memberRecord.getProjectId();
//给所有人发送消息发送消息
ChromeMessageDto chromeMessageDto = new ChromeMessageDto(url, gameRecord.getId(), memberRecord.getProjectId());
ChromeMessageDto chromeMessageDto = new ChromeMessageDto(url, gameRecord.getId(), memberRecord.getProjectId(),gameType.getCode());
BaseMessageDto.MessageUser messageUser = null;
List<BaseMessageDto.MessageUser> messageUserList = new ArrayList<>();
//获取项目下所有成员

4
game/src/main/resources/application.yml

@ -1,4 +1,4 @@
spring:
profiles:
active: test
include: common, util-test
active: dev
include: common, util-dev

15
game/src/main/resources/mapper_dao/GameUserJoinDao.xml

@ -41,7 +41,20 @@
(
SELECT user_id,(@rowNum:=@rowNum+1) AS rowNo
FROM
(select user_id,score from t_game_user_join where rec_status = 0 and record_id = #{recordId,jdbcType=BIGINT}) a,
(
select
user_id,score
from
t_game_user_join j join t_game_user_join_group g on g.user_join_id = j.id
where
j.rec_status = 0
and
j.record_id = #{recordId,jdbcType=BIGINT}
<if test="groupId != null">
and
g.game_group_id = #{groupId,jdbcType=BIGINT}
</if>
) a,
(SELECT(@rowNum:=0)) b
ORDER BY a.score DESC
) c

30
mt/src/main/java/com/ccsens/mt/api/ScoreController.java

@ -29,16 +29,16 @@ public class ScoreController {
@ApiOperation(value = "评委获取评分项",notes = "")
@ApiImplicitParams({
@ApiImplicitParam(name = "roleId", value = "评委id", required = true, paramType = "path"),
@ApiImplicitParam(name = "playerId", value = "参赛项目id", required = true, paramType = "path"),
@ApiImplicitParam(name = "taskId", value = "参赛项目id", required = true, paramType = "path"),
})
@RequestMapping(value = "/score", method = RequestMethod.GET, produces = {"application/json;charset=UTF-8"})
public JsonResponse<List<ScoreVo.ScoreInfo>> getScoreLog(HttpServletRequest request,
@RequestParam Long roleId,
@RequestParam(required = true) Long playerId) throws Exception {
@RequestParam(required = true) Long taskId) throws Exception {
//获取userId
Long userId = userService.getUserIdByToken(request);
List<ScoreVo.ScoreInfo> scoreInfoList = scoreService.getScoreLog(userId,playerId);
List<ScoreVo.ScoreInfo> scoreInfoList = scoreService.getScoreLog(userId,taskId);
return JsonResponse.newInstance().ok(scoreInfoList);
}
@ -77,11 +77,11 @@ public class ScoreController {
@RequestMapping(value = "/scores", method = RequestMethod.GET, produces = {"application/json;charset=UTF-8"})
public JsonResponse<List<ScoreVo.AdminScore>> adminScore(HttpServletRequest request,
@RequestParam(required = true) Long roleId,
@RequestParam(required = true) Long playerId) throws Exception {
@RequestParam(required = true) Long taskId) throws Exception {
//获取userId
Long userId = userService.getUserIdByToken(request);
List<ScoreVo.AdminScore> adminScoreList = scoreService.adminScore(userId,roleId,playerId);
List<ScoreVo.AdminScore> adminScoreList = scoreService.adminScore(userId,roleId,taskId);
return JsonResponse.newInstance().ok(adminScoreList);
}
@ -90,28 +90,28 @@ public class ScoreController {
@ApiOperation(value = "退回单个评委的评分",notes = "")
@ApiImplicitParams({
@ApiImplicitParam(name = "roleId", value = "评委id", required = true, paramType = "path"),
@ApiImplicitParam(name = "playerId", value = "参赛项目id", required = true, paramType = "path"),
@ApiImplicitParam(name = "taskId", value = "taskId", required = true, paramType = "path"),
})
@RequestMapping(value = "/back", method = RequestMethod.DELETE, produces = {"application/json;charset=UTF-8"})
public JsonResponse backScore(@RequestParam(required = true) Long roleId,
@RequestParam(required = true) Long playerId) throws Exception {
scoreService.backScore(roleId,playerId);
@RequestParam(required = true) Long taskId) throws Exception {
scoreService.backScore(roleId,taskId);
return JsonResponse.newInstance().ok();
}
@ApiOperation(value = "退回所有评委的评分",notes = "")
@ApiImplicitParams({
@ApiImplicitParam(name = "playerId", value = "参赛项目id", required = true, paramType = "path"),
@ApiImplicitParam(name = "taskId", value = "任务id", required = true, paramType = "path"),
})
@RequestMapping(value = "/backAll", method = RequestMethod.DELETE, produces = {"application/json;charset=UTF-8"})
public JsonResponse backScoreAll(@RequestParam(required = true) Long playerId) throws Exception {
scoreService.backScoreAll(playerId);
public JsonResponse backScoreAll(@RequestParam(required = true) Long taskId) throws Exception {
scoreService.backScoreAll(taskId);
return JsonResponse.newInstance().ok();
}
@ApiOperation(value = "查看项目排名及详细分数",notes = "")
@ApiOperation(value = "查看排名及详细分数",notes = "")
@ApiImplicitParams({
@ApiImplicitParam(name = "projectId", value = "项目组id", required = true, paramType = "path"),
@ApiImplicitParam(name = "projectId", value = "", required = true, paramType = "path"),
})
@RequestMapping(value = "/ranking", method = RequestMethod.GET, produces = {"application/json;charset=UTF-8"})
public JsonResponse<List<ScoreVo.RankingScore>> getRankingScore(HttpServletRequest request,
@ -128,8 +128,8 @@ public class ScoreController {
})
@RequestMapping(value = "/show", method = RequestMethod.GET, produces = {"application/json;charset=UTF-8"})
public JsonResponse showScore(HttpServletRequest request,
@RequestParam(required = true)Long projectId,Long playerId) throws Exception {
scoreService.showScore(projectId,playerId);
@RequestParam(required = true)Long projectId,Long taskId) throws Exception {
scoreService.showScore(projectId,taskId);
return JsonResponse.newInstance().ok();
}

2
mt/src/main/java/com/ccsens/mt/bean/dto/ScoreDto.java

@ -27,7 +27,7 @@ public class ScoreDto {
@ApiModelProperty("评委id")
private Long roleId;
@ApiModelProperty("公司项目Id")
private Long playerId;
private Long taskId;
@ApiModelProperty("评分信息")
private List<ScoreInfo1> data;
}

2
mt/src/main/java/com/ccsens/mt/bean/vo/ScoreVo.java

@ -70,7 +70,7 @@ public class ScoreVo {
@ApiModel
public static class RankingScore{
@ApiModelProperty("参赛任务id")
private Long playerId;
private Long taskId;
@ApiModelProperty("任务名")
private String company;
@ApiModelProperty("分组")

4
mt/src/main/java/com/ccsens/mt/service/ScoreService.java

@ -109,7 +109,7 @@ public class ScoreService implements IScoreService{
if(ObjectUtil.isNull(userId)){
throw new BaseException(CodeEnum.NOT_LOGIN);
}
TaskVo.TaskInfoWithFeign taskInfo = tallFeignClient.getProjectId(submitScore.getPlayerId());
TaskVo.TaskInfoWithFeign taskInfo = tallFeignClient.getProjectId(submitScore.getTaskId());
if(ObjectUtil.isNull(taskInfo)){
throw new BaseException(CodeEnum.NOT_TASK);
}
@ -265,7 +265,7 @@ public class ScoreService implements IScoreService{
if(ObjectUtil.isNull(taskInfo)){
throw new BaseException(CodeEnum.NOT_TASK);
}
rankingScore.setPlayerId(taskInfo.getId());
rankingScore.setTaskId(taskInfo.getId());
rankingScore.setCompany(taskInfo.getName());
//获取每个评委对此任务的评分
List<ScoreVo.JudgeScore> judgeScoreList = findJudgeScore(projectId,taskInfo.getId());

3
mt/src/main/java/com/ccsens/mt/service/SigninService.java

@ -119,6 +119,8 @@ public class SigninService implements ISigninService{
*/
@Override
public SigninVo.SignInfoVo saveSignInfo(SigninDto.SaveSign saveSign, Long userId) {
//根据pluginId查询任务id
Long taskId = tallFeignClient.getTaskIdByTaskPluginId(saveSign.getTaskPluginId());
//判断用户是否有签到权限
//判断用户是否签到
MtSigninBasicExample signinBasicExample = new MtSigninBasicExample();
@ -136,6 +138,7 @@ public class SigninService implements ISigninService{
signinBasic.setId(snowflake.nextId());
signinBasic.setUserId(userId);
signinBasic.setTaskPluginId(saveSign.getTaskPluginId());
signinBasic.setTaskId(taskId);
signinBasic.setSigninTime(System.currentTimeMillis());
signinBasic.setIsSign((byte) 1);
signinBasic.setSequence(count + 1);

4
mt/src/main/resources/application.yml

@ -1,4 +1,4 @@
spring:
profiles:
active: dev
include: common, util-dev
active: test
include: common, util-test

1
tall/src/main/java/com/ccsens/tall/config/SpringConfig.java

@ -142,6 +142,7 @@ public class SpringConfig implements WebMvcConfigurer {
.excludePathPatterns("/users/claims")
.excludePathPatterns("/users/member")
.excludePathPatterns("/users/allMemberAll")
.excludePathPatterns("/users/userInfo")
.addPathPatterns("/plugins/**")
.excludePathPatterns("/plugins/sign")
.excludePathPatterns("/plugins/fuzzy")

10
tall/src/main/java/com/ccsens/tall/service/ProMemberService.java

@ -244,6 +244,16 @@ public class ProMemberService implements IProMemberService {
if(CollectionUtil.isNotEmpty(authList)){
memberInfo.setPhone(authList.get(0).getIdentifier());
}
if(ObjectUtil.isNull(user.getNickname())){
//查找账号名
SysAuthExample sysAuthExample = new SysAuthExample();
sysAuthExample.createCriteria().andIdentifyTypeEqualTo((byte) WebConstant.IDENTIFY_TYPE.Account.value)
.andUserIdEqualTo(user.getId());
List<SysAuth> accountAuth = authDao.selectByExample(sysAuthExample);
if(CollectionUtil.isNotEmpty(accountAuth)){
memberInfo.setNickname(accountAuth.get(0).getIdentifier());
}
}
}
return memberInfo;
}

Loading…
Cancel
Save