Commit c4ea37fc authored by liming's avatar liming

修改比赛结果上传机制

parent 5f86a0fa
package com.antai.sport.http.server.constants;
public class TeamTrainingPlayerRecordStatus {
//未结束
public final static Integer UNFINISHED = 10;
//已结束
public final static Integer FINISHED = 20;
}
...@@ -88,6 +88,8 @@ public class RoomModePlayerRecord implements Serializable { ...@@ -88,6 +88,8 @@ public class RoomModePlayerRecord implements Serializable {
*/ */
private Integer status; private Integer status;
private Boolean finished;
/** /**
* 创建时间 * 创建时间
*/ */
......
...@@ -98,6 +98,8 @@ public class SimpleMatchPlayerRecord implements Serializable { ...@@ -98,6 +98,8 @@ public class SimpleMatchPlayerRecord implements Serializable {
*/ */
private Integer status; private Integer status;
private Boolean finished;
/** /**
* 创建时间 * 创建时间
*/ */
......
...@@ -133,6 +133,8 @@ public class TeamTrainingPlayerRecord implements Serializable { ...@@ -133,6 +133,8 @@ public class TeamTrainingPlayerRecord implements Serializable {
*/ */
private Integer status; private Integer status;
private Boolean finished;
/** /**
* 创建时间 * 创建时间
*/ */
......
...@@ -9,10 +9,10 @@ import org.mapstruct.Mapping; ...@@ -9,10 +9,10 @@ import org.mapstruct.Mapping;
@Mapper(componentModel = "spring") @Mapper(componentModel = "spring")
public interface RoomModeConverter { public interface RoomModeConverter {
@Mapping(source = "status",target = "status") @Mapping(source = "status", target = "status")
RoomMode roomInitParamToRoomMode(ReqRoomInit reqRoomInit,Integer status); RoomMode roomInitParamToRoomMode(ReqRoomInit reqRoomInit, Integer status);
@Mapping(source = "data.recordId",target = "id") @Mapping(source = "data.recordId", target = "id")
@Mapping(source = "status",target = "status") @Mapping(source = "finished", target = "finished")
RoomModePlayerRecord toRoomModePlayerRecord(CyclingDataDTO data,Integer status); RoomModePlayerRecord toRoomModePlayerRecord(CyclingDataDTO data, Boolean finished);
} }
...@@ -66,6 +66,7 @@ public class RoomModeService { ...@@ -66,6 +66,7 @@ public class RoomModeService {
record.setRoomId(room.getId()); record.setRoomId(room.getId());
record.setPlayerId(userId); record.setPlayerId(userId);
record.setStatus(RoomModeRecordStatus.UNFINISHED); record.setStatus(RoomModeRecordStatus.UNFINISHED);
record.setFinished(false);
roomModePlayerRecordMapper.insert(record); roomModePlayerRecordMapper.insert(record);
userRecordIdMap.put(userId, record.getId()); userRecordIdMap.put(userId, record.getId());
}); });
...@@ -84,10 +85,10 @@ public class RoomModeService { ...@@ -84,10 +85,10 @@ public class RoomModeService {
public void upload(List<CyclingDataDTO> dataList) { public void upload(List<CyclingDataDTO> dataList) {
dataList.forEach(item -> { dataList.forEach(item -> {
RoomModePlayerRecord oldRecord = roomModePlayerRecordMapper.selectById(item.getRecordId()); RoomModePlayerRecord oldRecord = roomModePlayerRecordMapper.selectById(item.getRecordId());
if (oldRecord.getStatus().equals(RoomModeRecordStatus.UNFINISHED)) { if (!oldRecord.getFinished()) {
SportUser user = sportUserMapper.selectById(oldRecord.getPlayerId()); SportUser user = sportUserMapper.selectById(oldRecord.getPlayerId());
item.setWeight(user.getWeight()); item.setWeight(user.getWeight());
RoomModePlayerRecord record = roomModeConverter.toRoomModePlayerRecord(item, RoomModeRecordStatus.FINISHED); RoomModePlayerRecord record = roomModeConverter.toRoomModePlayerRecord(item, true);
roomModePlayerRecordMapper.updateById(record); roomModePlayerRecordMapper.updateById(record);
//生成骑行日志 //生成骑行日志
......
...@@ -20,6 +20,7 @@ public interface SimpleMatchConverter { ...@@ -20,6 +20,7 @@ public interface SimpleMatchConverter {
RespSimpleMatchInfo toRespSimpleMatchInfo(SimpleMatch source); RespSimpleMatchInfo toRespSimpleMatchInfo(SimpleMatch source);
@Mapping(source = "data.recordId",target = "id") @Mapping(source = "data.recordId", target = "id")
SimpleMatchPlayerRecord toSimpleMatchPlayerRecord(ReqSimpleMatchRecord data); @Mapping(source = "finished", target = "finished")
SimpleMatchPlayerRecord toSimpleMatchPlayerRecord(ReqSimpleMatchRecord data, Boolean finished);
} }
...@@ -3,6 +3,7 @@ package com.antai.sport.http.server.server.api.business.simplematch.service; ...@@ -3,6 +3,7 @@ package com.antai.sport.http.server.server.api.business.simplematch.service;
import com.antai.sport.http.server.common.exception.BusinessException; import com.antai.sport.http.server.common.exception.BusinessException;
import com.antai.sport.http.server.constants.DeleteStatus; import com.antai.sport.http.server.constants.DeleteStatus;
import com.antai.sport.http.server.constants.GameMode; import com.antai.sport.http.server.constants.GameMode;
import com.antai.sport.http.server.constants.SimpleMatchPlayerRecordStatus;
import com.antai.sport.http.server.constants.SportType; import com.antai.sport.http.server.constants.SportType;
import com.antai.sport.http.server.repository.simplematch.entity.SimpleMatch; import com.antai.sport.http.server.repository.simplematch.entity.SimpleMatch;
import com.antai.sport.http.server.repository.simplematch.entity.SimpleMatchBanner; import com.antai.sport.http.server.repository.simplematch.entity.SimpleMatchBanner;
...@@ -169,6 +170,8 @@ public class SimpleMatchService { ...@@ -169,6 +170,8 @@ public class SimpleMatchService {
record.setMatchId(param.getMatchId()); record.setMatchId(param.getMatchId());
record.setPlayerId(param.getPlayerId()); record.setPlayerId(param.getPlayerId());
record.setEntryTime(LocalDateTime.now()); record.setEntryTime(LocalDateTime.now());
record.setStatus(SimpleMatchPlayerRecordStatus.UNFINISHED);
record.setFinished(false);
simpleMatchPlayerRecordMapper.insert(record); simpleMatchPlayerRecordMapper.insert(record);
resp.setRecordId(record.getId()); resp.setRecordId(record.getId());
return resp; return resp;
...@@ -181,10 +184,10 @@ public class SimpleMatchService { ...@@ -181,10 +184,10 @@ public class SimpleMatchService {
public void recordUpload(List<ReqSimpleMatchRecord> dataList) { public void recordUpload(List<ReqSimpleMatchRecord> dataList) {
dataList.forEach(item -> { dataList.forEach(item -> {
SimpleMatchPlayerRecord oldRecord = simpleMatchPlayerRecordMapper.selectById(item.getRecordId()); SimpleMatchPlayerRecord oldRecord = simpleMatchPlayerRecordMapper.selectById(item.getRecordId());
if (oldRecord.getStatus() == null) { if (!oldRecord.getFinished()) {
SportUser user = sportUserMapper.selectById(oldRecord.getPlayerId()); SportUser user = sportUserMapper.selectById(oldRecord.getPlayerId());
item.setWeight(user.getWeight()); item.setWeight(user.getWeight());
SimpleMatchPlayerRecord record = simpleMatchConverter.toSimpleMatchPlayerRecord(item); SimpleMatchPlayerRecord record = simpleMatchConverter.toSimpleMatchPlayerRecord(item, true);
record.setPraiseNum(praiseService.getPraiseByGameModeAndRecordId(GameMode.SIMPLE_MATCH, item.getRecordId())); record.setPraiseNum(praiseService.getPraiseByGameModeAndRecordId(GameMode.SIMPLE_MATCH, item.getRecordId()));
simpleMatchPlayerRecordMapper.updateById(record); simpleMatchPlayerRecordMapper.updateById(record);
......
...@@ -21,7 +21,9 @@ public interface TeamTrainingConverter { ...@@ -21,7 +21,9 @@ public interface TeamTrainingConverter {
@Mappings({ @Mappings({
@Mapping(source = "source.matchRank", target = "trainingRank"), @Mapping(source = "source.matchRank", target = "trainingRank"),
@Mapping(source = "source.recordId", target = "id") @Mapping(source = "source.recordId", target = "id"),
@Mapping(source = "finished", target = "finished")
}) })
TeamTrainingPlayerRecord toTeamTrainingPlayerRecord(TeamTrainingRecordUploadDTO source); TeamTrainingPlayerRecord toTeamTrainingPlayerRecord(TeamTrainingRecordUploadDTO source, Boolean finished);
} }
...@@ -4,6 +4,7 @@ import com.antai.sport.http.server.common.exception.BusinessException; ...@@ -4,6 +4,7 @@ import com.antai.sport.http.server.common.exception.BusinessException;
import com.antai.sport.http.server.constants.DeleteStatus; import com.antai.sport.http.server.constants.DeleteStatus;
import com.antai.sport.http.server.constants.GameMode; import com.antai.sport.http.server.constants.GameMode;
import com.antai.sport.http.server.constants.SportType; import com.antai.sport.http.server.constants.SportType;
import com.antai.sport.http.server.constants.TeamTrainingPlayerRecordStatus;
import com.antai.sport.http.server.repository.sport.entity.SportUser; import com.antai.sport.http.server.repository.sport.entity.SportUser;
import com.antai.sport.http.server.repository.sport.mapper.SportUserMapper; import com.antai.sport.http.server.repository.sport.mapper.SportUserMapper;
import com.antai.sport.http.server.repository.teamtraining.entity.*; import com.antai.sport.http.server.repository.teamtraining.entity.*;
...@@ -162,6 +163,8 @@ public class TeamTrainingService { ...@@ -162,6 +163,8 @@ public class TeamTrainingService {
record.setTeamTrainingId(param.getTeamTrainingId()); record.setTeamTrainingId(param.getTeamTrainingId());
record.setPlayerId(param.getPlayerId()); record.setPlayerId(param.getPlayerId());
record.setEntryTime(LocalDateTime.now()); record.setEntryTime(LocalDateTime.now());
record.setStatus(TeamTrainingPlayerRecordStatus.UNFINISHED);
record.setFinished(false);
teamTrainingPlayerRecordMapper.insert(record); teamTrainingPlayerRecordMapper.insert(record);
result.setRecordId(record.getId()); result.setRecordId(record.getId());
return result; return result;
...@@ -175,10 +178,10 @@ public class TeamTrainingService { ...@@ -175,10 +178,10 @@ public class TeamTrainingService {
public void recordUpload(List<TeamTrainingRecordUploadDTO> dataList) { public void recordUpload(List<TeamTrainingRecordUploadDTO> dataList) {
dataList.forEach(item -> { dataList.forEach(item -> {
TeamTrainingPlayerRecord oldRecord = teamTrainingPlayerRecordMapper.selectById(item.getRecordId()); TeamTrainingPlayerRecord oldRecord = teamTrainingPlayerRecordMapper.selectById(item.getRecordId());
if (oldRecord.getStatus() == null) { if (!oldRecord.getFinished()) {
SportUser user = sportUserMapper.selectById(oldRecord.getPlayerId()); SportUser user = sportUserMapper.selectById(oldRecord.getPlayerId());
item.setWeight(user.getWeight()); item.setWeight(user.getWeight());
TeamTrainingPlayerRecord record = teamTrainingConverter.toTeamTrainingPlayerRecord(item); TeamTrainingPlayerRecord record = teamTrainingConverter.toTeamTrainingPlayerRecord(item, true);
record.setPraiseNum(praiseService.getPraiseByGameModeAndRecordId(GameMode.GROUP_TRAINING, item.getRecordId())); record.setPraiseNum(praiseService.getPraiseByGameModeAndRecordId(GameMode.GROUP_TRAINING, item.getRecordId()));
teamTrainingPlayerRecordMapper.updateById(record); teamTrainingPlayerRecordMapper.updateById(record);
......
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