From 50430e0e13de4e3d0c73fcf9e099a2327706fc4f Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期五, 15 八月 2025 10:47:41 +0800
Subject: [PATCH] 赛事模块
---
cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/service/impl/WorldCupServiceImpl.java | 10 ++--
cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/service/impl/WorldCupCompetitorServiceImpl.java | 47 ++++++++++++++++++++++-
cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/model/WorldCupCodeListVo.java | 10 +++++
cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/model/UserVo.java | 12 ++++++
4 files changed, 72 insertions(+), 7 deletions(-)
diff --git a/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/model/UserVo.java b/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/model/UserVo.java
new file mode 100644
index 0000000..29e98be
--- /dev/null
+++ b/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/model/UserVo.java
@@ -0,0 +1,12 @@
+package com.dsh.communityWorldCup.model;
+
+import lombok.Data;
+
+@Data
+public class UserVo {
+ private String userName;
+
+ private String avatar;
+
+ private Integer age=0;
+}
diff --git a/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/model/WorldCupCodeListVo.java b/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/model/WorldCupCodeListVo.java
index 6d6e56b..2b39baa 100644
--- a/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/model/WorldCupCodeListVo.java
+++ b/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/model/WorldCupCodeListVo.java
@@ -1,5 +1,6 @@
package com.dsh.communityWorldCup.model;
+import com.alipay.api.domain.UserDetail;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -16,6 +17,8 @@
public class WorldCupCodeListVo {
@ApiModelProperty("世界杯id")
private Integer worldCupId;
+ @ApiModelProperty("世界杯名称")
+ private String name;
@ApiModelProperty("编号")
private String code;
@ApiModelProperty("开始时间")
@@ -23,4 +26,11 @@
@ApiModelProperty("自定义信息 结束接口需要")
private List<Long> customs;
+
+
+ @ApiModelProperty("红队")
+ private List<UserVo> red;
+
+ @ApiModelProperty("蓝队")
+ private List<UserVo> blue;
}
diff --git a/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/service/impl/WorldCupCompetitorServiceImpl.java b/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/service/impl/WorldCupCompetitorServiceImpl.java
index b22c1d7..1dd31e0 100644
--- a/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/service/impl/WorldCupCompetitorServiceImpl.java
+++ b/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/service/impl/WorldCupCompetitorServiceImpl.java
@@ -30,6 +30,7 @@
import java.math.MathContext;
import java.math.RoundingMode;
import java.text.SimpleDateFormat;
+import java.time.LocalDate;
import java.util.*;
import java.util.stream.Collectors;
@@ -1049,14 +1050,56 @@
// worldCupCompetitors 通过code分组
Map<String, List<WorldCupCompetitor>> map = worldCupCompetitors.stream().collect(Collectors.groupingBy(WorldCupCompetitor::getCode));
-
+ LocalDate now = LocalDate.now();
for (Map.Entry<String, List<WorldCupCompetitor>> entry : map.entrySet()) {
WorldCupCodeListVo worldCupCodeListVo = new WorldCupCodeListVo();
String code = entry.getKey();
List<WorldCupCompetitor> value = entry.getValue();
+ // 蓝队
+ List<WorldCupCompetitor> collect1 = value.stream().filter(item -> item.getParticipant() == 1).collect(Collectors.toList());
+ ArrayList<UserVo> objects = new ArrayList<>();
+ for (WorldCupCompetitor competitor : collect1) {
+ UserVo userVo = new UserVo();
+ AppUser appUser = appUserClient.getAppUser(competitor.getAppUserId());
+ userVo.setUserName(appUser.getName());
+ userVo.setAvatar(appUser.getHeadImg());
+ // 当前日期和生日计算年龄
+ Date birthday = appUser.getBirthday();
+
+ if(birthday!=null){
+ int age = now.getYear() - birthday.getYear();
+ userVo.setAge(age);
+ }
+ objects.add(userVo);
+ }
+ worldCupCodeListVo.setBlue(objects);
+ // 红队
+ List<WorldCupCompetitor> collect2 = value.stream().filter(item -> item.getParticipant() == 2).collect(Collectors.toList());
+ ArrayList<UserVo> objects1 = new ArrayList<>();
+ for (WorldCupCompetitor competitor : collect2) {
+ UserVo userVo = new UserVo();
+ AppUser appUser = appUserClient.getAppUser(competitor.getAppUserId());
+ userVo.setUserName(appUser.getName());
+ userVo.setAvatar(appUser.getHeadImg());
+ // 当前日期和生日计算年龄
+ Date birthday = appUser.getBirthday();
+
+ if(birthday!=null){
+ int age = now.getYear() - birthday.getYear();
+ userVo.setAge(age);
+ }
+ objects1.add(userVo);
+ }
+ worldCupCodeListVo.setRed(objects1);
+
worldCupCodeListVo.setCode(code);
worldCupCodeListVo.setStartTime(value.get(0).getStartTime());
- worldCupCodeListVo.setWorldCupId(value.get(0).getWorldCupId());
+ Integer worldCupId1 = value.get(0).getWorldCupId();
+ WorldCup byId = worldCupService.getById(worldCupId1);
+ worldCupCodeListVo.setWorldCupId(worldCupId1);
+ if(byId!=null){
+ worldCupCodeListVo.setName(byId.getName());
+ }
List<Long> collect = value.stream().map(WorldCupCompetitor::getId).collect(Collectors.toList());
worldCupCodeListVo.setCustoms(collect);
worldCupCodeListVos.add(worldCupCodeListVo);
diff --git a/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/service/impl/WorldCupServiceImpl.java b/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/service/impl/WorldCupServiceImpl.java
index 81bf5a8..114d57e 100644
--- a/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/service/impl/WorldCupServiceImpl.java
+++ b/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/service/impl/WorldCupServiceImpl.java
@@ -148,12 +148,12 @@
}
//1、通过扫码获取的sutuid查询t_game表中的红蓝方sutuid
// 智慧需要判断code
-
- String code = startWorldCup.getCode();
- JSONObject object = JSON.parseObject(code);
- String sutu_id = object.getString("sutu_id");
- TGame tGame = gameClient.getTGameBySutuId(sutu_id);
+ TGame tGame =new TGame();
if (worldCup.getType() == null || worldCup.getType() == 1) {
+ String code = startWorldCup.getCode();
+ JSONObject object = JSON.parseObject(code);
+ String sutu_id = object.getString("sutu_id");
+ tGame = gameClient.getTGameBySutuId(sutu_id);
if (null == tGame) {
return ResultUtil.error("无效的游戏二维码");
}
--
Gitblit v1.7.1