From 2dda6304029c95e171b2f9e32406eb4600d77ebd Mon Sep 17 00:00:00 2001 From: 44323 <443237572@qq.com> Date: 星期三, 01 十一月 2023 18:57:58 +0800 Subject: [PATCH] 支付会员送券功能补充 运营商权限bug修改 --- cloud-server-competition/src/main/java/com/dsh/competition/service/impl/ParticipantServiceImpl.java | 67 ++++++++++++++++++++++++++++++--- 1 files changed, 61 insertions(+), 6 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 deffefa..705a65c 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 @@ -1,11 +1,15 @@ package com.dsh.competition.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.dsh.competition.entity.Participant; +import com.dsh.competition.entity.UserCompetition; import com.dsh.competition.feignclient.account.StudentClient; import com.dsh.competition.feignclient.account.model.Student; +import com.dsh.competition.feignclient.account.model.TStudent; import com.dsh.competition.feignclient.course.CoursePackagePaymentClient; +import com.dsh.competition.feignclient.model.CompetitionUser; import com.dsh.competition.mapper.ParticipantMapper; import com.dsh.competition.model.AddParticipant; import com.dsh.competition.model.EditParticipant; @@ -20,9 +24,7 @@ import javax.annotation.Resource; import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; +import java.util.*; /** * @author zhibing.pu @@ -77,6 +79,9 @@ } + + + /** * 获取参赛人员列表 * @param uid @@ -85,9 +90,39 @@ */ @Override public List<ParticipantVo> queryParticipantList(Integer uid) throws Exception { + //拿到学员列表 + List<TStudent> tStudents = studentClient.queryStudentList(uid); + //利用HashMap去重身份证 + LinkedHashMap<String,ParticipantVo> linkedHashMap =new LinkedHashMap<>(); + SimpleDateFormat sdf_year = new SimpleDateFormat("yyyy"); + for (TStudent tStudent : tStudents) { + ParticipantVo participantVo = new ParticipantVo(); + participantVo.setId(tStudent.getId()); + participantVo.setName(tStudent.getName()); + participantVo.setIdcard(tStudent.getIdCard()); + Integer age = Integer.valueOf(sdf_year.format(new Date())) - Integer.valueOf(sdf_year.format(tStudent.getBirthday())); + participantVo.setAge(age); + Integer integer = coursePackagePaymentClient.queryResidueClassHour(tStudent.getId()); + participantVo.setResidueClassHour(integer); + participantVo.setPhone(tStudent.getPhone()); + participantVo.setHeight(tStudent.getHeight().intValue()); + participantVo.setWeight(tStudent.getWeight()); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + if(null != tStudent.getBirthday()){ + String format = sdf.format(tStudent.getBirthday()); + participantVo.setBirthday(format); + } + participantVo.setGender(tStudent.getSex()); + participantVo.setIsStudent(1); + linkedHashMap.put(tStudent.getIdCard(),participantVo); + } + + + + + //查出临时表里的数据,也去重 List<Participant> list = this.list(new QueryWrapper<Participant>().eq("appUserId", uid).eq("state", 1)); List<ParticipantVo> listVo = new ArrayList<>(); - SimpleDateFormat sdf_year = new SimpleDateFormat("yyyy"); for (Participant participant : list) { ParticipantVo participantVo = new ParticipantVo(); participantVo.setId(participant.getId()); @@ -95,10 +130,16 @@ participantVo.setIdcard(participant.getIdcard()); Integer age = Integer.valueOf(sdf_year.format(new Date())) - Integer.valueOf(sdf_year.format(participant.getBirthday())); participantVo.setAge(age); - Student student = studentClient.queryStudentByPhone(participant.getPhone()); + Student student = studentClient.queryStudentByPhone(participant.getPhone()==null?"0":participant.getPhone()); + + //设为不是学员 + participantVo.setIsStudent(0); + if(null != student){ Integer integer = coursePackagePaymentClient.queryResidueClassHour(student.getId()); participantVo.setResidueClassHour(integer); + participantVo.setIsStudent(1); + }else{ participantVo.setResidueClassHour(0); } @@ -111,9 +152,18 @@ participantVo.setBirthday(format); } participantVo.setGender(participant.getGender()); + + linkedHashMap.put(participant.getIdcard(),participantVo); listVo.add(participantVo); } - return listVo; + + + + + List<ParticipantVo> listVo1 = new ArrayList<>(linkedHashMap.values()); + + + return listVo1; } @@ -198,4 +248,9 @@ this.save(one); } } + + @Override + public Page<CompetitionUser> getPeopleFromId(Page<UserCompetition> participantPage, Integer id, Integer state) { + return this.baseMapper.getPeopleFromId(participantPage,id,state); + } } -- Gitblit v1.7.1