Commit f5bfd9ae authored by liming's avatar liming

处理俱乐部数据汇总

parent c2ac847e
...@@ -4,7 +4,9 @@ import com.antai.sport.http.server.constants.DeleteStatus; ...@@ -4,7 +4,9 @@ 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.RankType; import com.antai.sport.http.server.constants.RankType;
import com.antai.sport.http.server.constants.SportType; import com.antai.sport.http.server.constants.SportType;
import com.antai.sport.http.server.repository.club.entity.Club;
import com.antai.sport.http.server.repository.club.entity.ClubMember; import com.antai.sport.http.server.repository.club.entity.ClubMember;
import com.antai.sport.http.server.repository.club.mapper.ClubMapper;
import com.antai.sport.http.server.repository.club.mapper.ClubMemberMapper; import com.antai.sport.http.server.repository.club.mapper.ClubMemberMapper;
import com.antai.sport.http.server.repository.roommode.entity.RoomMode; import com.antai.sport.http.server.repository.roommode.entity.RoomMode;
import com.antai.sport.http.server.repository.roommode.mapper.RoomModeMapper; import com.antai.sport.http.server.repository.roommode.mapper.RoomModeMapper;
...@@ -33,7 +35,6 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -33,7 +35,6 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.metadata.OrderItem; import com.baomidou.mybatisplus.core.metadata.OrderItem;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.math.BigDecimal; import java.math.BigDecimal;
...@@ -64,6 +65,8 @@ public class SportUserTrainingLogService { ...@@ -64,6 +65,8 @@ public class SportUserTrainingLogService {
private SportUserRankMapper sportUserRankMapper; private SportUserRankMapper sportUserRankMapper;
@Resource @Resource
private ClubMemberMapper clubMemberMapper; private ClubMemberMapper clubMemberMapper;
@Resource
private ClubMapper clubMapper;
@Resource @Resource
private SportUserTrainingLogBusinessMapper sportUserTrainingLogBusinessMapper; private SportUserTrainingLogBusinessMapper sportUserTrainingLogBusinessMapper;
...@@ -79,7 +82,6 @@ public class SportUserTrainingLogService { ...@@ -79,7 +82,6 @@ public class SportUserTrainingLogService {
@Resource @Resource
private SportUserConverter sportUserConverter; private SportUserConverter sportUserConverter;
@Transactional
public void createBicycleTrainingLog(Long playerId, Integer gameMode, Long sourceId, String sourceName, String map, String path, Integer praiseNum, CyclingDataDTO sportData) { public void createBicycleTrainingLog(Long playerId, Integer gameMode, Long sourceId, String sourceName, String map, String path, Integer praiseNum, CyclingDataDTO sportData) {
SportUserTrainingLog log = sportUserTrainingLogConverter.toSportUserTrainingLog(sportData); SportUserTrainingLog log = sportUserTrainingLogConverter.toSportUserTrainingLog(sportData);
log.setSportType(SportType.BICYCLE); log.setSportType(SportType.BICYCLE);
...@@ -101,7 +103,7 @@ public class SportUserTrainingLogService { ...@@ -101,7 +103,7 @@ public class SportUserTrainingLogService {
log.setClubId(clubMember.getClubId()); log.setClubId(clubMember.getClubId());
} }
sportUserTrainingLogMapper.insert(log); sportUserTrainingLogMapper.insert(log);
//处理玩家记录汇总
QueryWrapper<SportUserSummary> summaryQuery = new QueryWrapper<>(); QueryWrapper<SportUserSummary> summaryQuery = new QueryWrapper<>();
summaryQuery.eq("deleted", DeleteStatus.UNDELETED); summaryQuery.eq("deleted", DeleteStatus.UNDELETED);
summaryQuery.eq("user_id", playerId); summaryQuery.eq("user_id", playerId);
...@@ -124,6 +126,8 @@ public class SportUserTrainingLogService { ...@@ -124,6 +126,8 @@ public class SportUserTrainingLogService {
} else { } else {
sportUserSummaryMapper.updateById(summary); sportUserSummaryMapper.updateById(summary);
} }
//处理俱乐部数据汇总
this.handleClubSummary(clubMember, log);
//处理月度排行 //处理月度排行
Integer year = LocalDate.now().getYear(); Integer year = LocalDate.now().getYear();
...@@ -153,6 +157,18 @@ public class SportUserTrainingLogService { ...@@ -153,6 +157,18 @@ public class SportUserTrainingLogService {
} }
} }
private void handleClubSummary(ClubMember clubMember, SportUserTrainingLog log) {
if (clubMember == null) {
return;
}
Club club = clubMapper.selectById(clubMember.getClubId());
club.setTotalDuration(club.getTotalDuration() + log.getDuration());
club.setTotalDistance(club.getTotalDistance().add(log.getDistance()));
club.setTotalClimbDistance(club.getTotalClimbDistance().add(log.getClimbDistance()));
club.setTotalCalorie(club.getTotalCalorie() + log.getCalorie());
clubMapper.updateById(club);
}
private void modifyRank(SportUserTrainingLog log, SportUserMonthRank rank) { private void modifyRank(SportUserTrainingLog log, SportUserMonthRank rank) {
rank.setTotalCalorie(rank.getTotalCalorie() + log.getCalorie()); rank.setTotalCalorie(rank.getTotalCalorie() + log.getCalorie());
rank.setUpdateTime(LocalDateTime.now()); rank.setUpdateTime(LocalDateTime.now());
......
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