From 1d9f7b0cf4251f3058badb07dd7a2bc06b6bc09a Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期五, 11 四月 2025 10:05:32 +0800
Subject: [PATCH] bug修改

---
 cloud-server-competition/src/main/java/com/dsh/competition/service/impl/ParticipantServiceImpl.java |   51 +++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 39 insertions(+), 12 deletions(-)

diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/ParticipantServiceImpl.java b/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/ParticipantServiceImpl.java
index dfd7378..efaa004 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/ParticipantServiceImpl.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/ParticipantServiceImpl.java
@@ -23,6 +23,7 @@
 import com.dsh.competition.util.JuHeUtil;
 import com.dsh.competition.util.ResultUtil;
 import com.dsh.competition.util.ToolUtil;
+import io.undertow.util.DateUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -88,6 +89,26 @@
         participant.setState(1);
         participant.setInsertTime(new Date());
         this.save(participant);
+        TStudent tStudent = new TStudent();
+        tStudent.setAppUserId(uid);
+        tStudent.setName(addParticipant.getName());
+        tStudent.setPhone(addParticipant.getPhone());
+        if (ToolUtil.isNotEmpty(addParticipant.getBirthday())){
+            Date date = DateUtils.parseDate(addParticipant.getBirthday());
+            tStudent.setBirthday(date);
+        }else{
+                String birthDateStr = addParticipant.getIdcard().substring(6, 14);
+                SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
+            Date parse = dateFormat.parse(birthDateStr);
+            tStudent.setBirthday(parse);
+        }
+        tStudent.setSex(addParticipant.getGender());
+        tStudent.setIdCard(addParticipant.getIdcard());
+        tStudent.setState(1);
+        tStudent.setInsertTime(new Date());
+        tStudent.setHeadImg(addParticipant.getHeadImg());
+        tStudent.setIsDefault(2);
+        studentClient.addStudent(tStudent);
         return ResultUtil.success();
     }
 
@@ -119,8 +140,13 @@
             participantVo.setId(participant.getId());
             participantVo.setName(participant.getName());
             participantVo.setIdcard(participant.getIdcard());
-            Integer age = Integer.valueOf(sdf_year.format(new Date())) - Integer.valueOf(sdf_year.format(participant.getBirthday()));
-            participantVo.setAge(age);
+            if (null != participant.getBirthday()){
+                Integer age = Integer.valueOf(sdf_year.format(new Date())) - Integer.valueOf(sdf_year.format(participant.getBirthday()));
+                participantVo.setAge(age);
+            }else{
+                participantVo.setAge(18);
+
+            }
             Student student = null;
             if(ToolUtil.isNotEmpty(participant.getPhone())){
                 student = studentClient.queryStudentByPhone(participant.getPhone());
@@ -144,11 +170,11 @@
                 participantVo.setBirthday(format);
             }
             participantVo.setGender(participant.getGender());
-//            if (participant.getIdcard() == null || participant.getIdcard().isEmpty()) {
-//                listVo1.add(participantVo);
-//                continue;
-//            }
-            linkedHashMap.put(participant.getName(), participantVo);
+            if (participant.getIdcard() == null || participant.getIdcard().isEmpty()) {
+                listVo1.add(participantVo);
+                continue;
+            }
+            linkedHashMap.put(participant.getIdcard(), participantVo);
         }
 
         for (TStudent tStudent : tStudents) {
@@ -171,11 +197,11 @@
             }
             participantVo.setGender(tStudent.getSex());
             participantVo.setIsStudent(1);
-//            if (tStudent.getIdCard() == null || tStudent.getIdCard().isEmpty()) {
-//                listVo1.add(participantVo);
-//                continue;
-//            }
-            linkedHashMap.put(tStudent.getName(), participantVo);
+            if (tStudent.getIdCard() == null || tStudent.getIdCard().isEmpty()) {
+                listVo1.add(participantVo);
+                continue;
+            }
+            linkedHashMap.put(tStudent.getIdCard(), participantVo);
         }
         listVo1.addAll(linkedHashMap.values());
         return listVo1;
@@ -303,6 +329,7 @@
             if(null != paymentCompetition){
                 competitionUser.setState(paymentCompetition.getPayStatus());
             }
+            competitionUser.setInsertTime(userCompetition.getInsertTime());
             list.add(competitionUser);
         }
         Page<CompetitionUser> page = new Page<>();

--
Gitblit v1.7.1