From fe98baa55c34db41b158187f9c1837a269ec169b Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期一, 11 三月 2024 18:28:17 +0800
Subject: [PATCH] 修改bug
---
cloud-server-account/src/main/java/com/dsh/account/service/impl/StudentHonorServiceImpl.java | 162 ++++++++++++++++++++++--------------------------------
1 files changed, 66 insertions(+), 96 deletions(-)
diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/StudentHonorServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/StudentHonorServiceImpl.java
index 8b5b7a9..6a1d8f7 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/StudentHonorServiceImpl.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/StudentHonorServiceImpl.java
@@ -5,10 +5,12 @@
import com.dsh.account.entity.HonorRules;
import com.dsh.account.entity.StudentHonor;
import com.dsh.account.entity.TStudent;
+import com.dsh.account.feignclient.communityWorldCup.WorldCupCompetitorClient;
import com.dsh.account.feignclient.competition.ParticipantClient;
import com.dsh.account.feignclient.course.CoursePackageClient;
import com.dsh.account.feignclient.course.model.CoursePackage;
import com.dsh.account.feignclient.other.HonorDeClient;
+import com.dsh.account.feignclient.other.HonorRulesClient;
import com.dsh.account.feignclient.other.SiteClient;
import com.dsh.account.mapper.StudentHonorMapper;
import com.dsh.account.model.vo.medalDetail.GongVo;
@@ -45,13 +47,22 @@
@Resource
private SiteClient siteClient;
-
@Autowired
private HonorDeClient honorDeClient;
-
@Autowired
private TStudentService studentService;
+
+ @Autowired
+ private HonorRulesClient honorRulesClient;
+
+ @Resource
+ private WorldCupCompetitorClient worldCupCompetitorClient;
+
+
+
+
+
@Override
public List<GongVo> queryStuOfMedalData(Integer stuId) {
@@ -85,8 +96,8 @@
// voList.add(vo);
// });
// }
- Integer count1 =coursePackageClient.counts(stuId);
- if (count1>0){
+ Integer count1 = coursePackageClient.counts(stuId);
+ if (count1 > 0) {
GongVo vo = new GongVo();
vo.setMedalType(1);
vo.setMedalName("俱乐部之星");
@@ -94,7 +105,7 @@
}
Integer count2 = participantClient.counts(stuId);
- if (count2>0){
+ if (count2 > 0) {
GongVo vo = new GongVo();
vo.setMedalType(2);
vo.setMedalName("运动达人");
@@ -102,7 +113,7 @@
}
Integer count3 = siteClient.counts(student.getAppUserId());
- if (count3>0){
+ if (count3 > 0) {
GongVo vo = new GongVo();
vo.setMedalType(3);
vo.setMedalName("社区之王");
@@ -111,116 +122,75 @@
Integer count4 = coursePackageClient.counts1(stuId);
- if (count4>0){
+ if (count4 > 0) {
GongVo vo = new GongVo();
vo.setMedalType(4);
vo.setMedalName("深度玩家");
voList.add(vo);
}
+ Integer count5 = worldCupCompetitorClient.winCount(stuId);
+ if (count5 > 0) {
+ GongVo vo = new GongVo();
+ vo.setMedalType(5);
+ vo.setMedalName("赢家");
+ voList.add(vo);
+ }
+
+ Integer count6 = worldCupCompetitorClient.count(stuId);
+ if (count6 > 0) {
+ GongVo vo = new GongVo();
+ vo.setMedalType(6);
+ vo.setMedalName("次数");
+ voList.add(vo);
+ }
return voList;
}
-
@Override
- public List<StuMedalVo> queryHonorDetails(Integer stuId) {
- List<StuMedalVo> studentHonors = new ArrayList<>();
-// List<Integer> collect = studentHonors.stream().map(StudentHonor::getHonorRuleId).collect(Collectors.toList());
-
- Integer count1 =coursePackageClient.counts(stuId);
- if (count1>0){
+ public List<StuMedalVo> queryHonorDetails(Integer appUserId) {
+ List<StuMedalVo> list = new ArrayList<>();
+ List<StudentHonor> studentHonors = this.list(new QueryWrapper<StudentHonor>().eq("appUserId", appUserId));
+ for (StudentHonor studentHonor : studentHonors) {
StuMedalVo vo = new StuMedalVo();
- vo.setMedalType(1);
- vo.setMedalName("俱乐部之星");
+ vo.setMedalType(studentHonor.getHonorType());
+ switch (studentHonor.getHonorType()){
+ case 1:
+ vo.setMedalName("俱乐部之星");
+ break;
+ case 2:
+ vo.setMedalName("运动达人");
+ break;
+ case 3:
+ vo.setMedalName("社区之王");
+ break;
+ case 4:
+ vo.setMedalName("深度玩家");
+ break;
+ case 5:
+ vo.setMedalName("赢家");
+ break;
+ case 6:
+ vo.setMedalName("次数");
+ break;
+ }
//拿到当前对应的rule对象
List<Integer> integers = new ArrayList<>();
- integers.add(1);
- integers.add(count1);
+ integers.add(studentHonor.getHonorType());
+ integers.add(studentHonor.getNumber());
HonorRules honorRules = honorDeClient.getHonor(integers);
- if (count1<Integer.valueOf(honorRules.getCondition())){
- vo.setLevelNum(Integer.valueOf(honorRules.getLevel())-1);
+ if (studentHonor.getNumber() < Integer.valueOf(honorRules.getCondition())) {
+ vo.setLevelNum(Integer.valueOf(honorRules.getLevel()) - 1);
vo.setNextLevel(Integer.valueOf(honorRules.getLevel()));
- vo.setUpgradeConditions(String.valueOf(Integer.valueOf(honorRules.getCondition())-count1));
+ vo.setUpgradeConditions(String.valueOf(Integer.valueOf(honorRules.getCondition()) - studentHonor.getNumber()));
vo.setIsTopLevel(0);
- }else {
+ } else {
vo.setIsTopLevel(1);
}
-
- studentHonors.add(vo);
+ list.add(vo);
}
-
- Integer count2 = participantClient.counts(stuId);
- if (count2>0){
- StuMedalVo vo = new StuMedalVo();
- vo.setMedalType(2);
- vo.setMedalName("运动达人");
- //拿到当前对应的rule对象
- List<Integer> integers = new ArrayList<>();
- integers.add(2);
- integers.add(count2);
- HonorRules honorRules = honorDeClient.getHonor(integers);
- if (count2<Integer.valueOf(honorRules.getCondition())){
- vo.setLevelNum(Integer.valueOf(honorRules.getLevel())-1);
- vo.setNextLevel(Integer.valueOf(honorRules.getLevel()));
- vo.setUpgradeConditions(String.valueOf(Integer.valueOf(honorRules.getCondition())-count2));
- vo.setIsTopLevel(0);
- }else {
- vo.setIsTopLevel(1);
- }
-
- studentHonors.add(vo);
- }
- TStudent student = studentService.getById(stuId);
-
- Integer count3 = siteClient.counts(student.getAppUserId());
- if (count3>0){
- StuMedalVo vo = new StuMedalVo();
- vo.setMedalType(3);
- vo.setMedalName("社区之王");
- //拿到当前对应的rule对象
- List<Integer> integers = new ArrayList<>();
- integers.add(3);
- integers.add(count3);
- HonorRules honorRules = honorDeClient.getHonor(integers);
- if (count3<Integer.valueOf(honorRules.getCondition())){
- vo.setLevelNum(Integer.valueOf(honorRules.getLevel())-1);
- vo.setNextLevel(Integer.valueOf(honorRules.getLevel()));
- vo.setUpgradeConditions(String.valueOf(Integer.valueOf(honorRules.getCondition())-count3));
- vo.setIsTopLevel(0);
- }else {
- vo.setIsTopLevel(1);
- }
-
- studentHonors.add(vo);
- }
-
-
- Integer count4 = coursePackageClient.counts1(stuId);
- if (count4>0){
- StuMedalVo vo = new StuMedalVo();
- vo.setMedalType(4);
- vo.setMedalName("深度玩家");
- //拿到当前对应的rule对象
- List<Integer> integers = new ArrayList<>();
- integers.add(4);
- integers.add(count4);
- HonorRules honorRules = honorDeClient.getHonor(integers);
- if (count4<Integer.valueOf(honorRules.getCondition())){
- vo.setLevelNum(Integer.valueOf(honorRules.getLevel())-1);
- vo.setNextLevel(Integer.valueOf(honorRules.getLevel()));
- vo.setUpgradeConditions(String.valueOf(Integer.valueOf(honorRules.getCondition())-count4));
- vo.setIsTopLevel(0);
- }else {
- vo.setIsTopLevel(1);
- }
-
- studentHonors.add(vo);
- }
-
-
-
- return studentHonors;
+ return list;
}
}
--
Gitblit v1.7.1