From f88cfa02e36752e4acad7adc4b045155e8e50f21 Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期五, 08 十二月 2023 09:16:29 +0800 Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/PlayPai --- cloud-server-competition/src/main/java/com/dsh/competition/service/impl/ParticipantServiceImpl.java | 132 +++++++++++++++++++++++++++++++++---------- 1 files changed, 101 insertions(+), 31 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 292229c..0d8edbd 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 @@ -7,6 +7,7 @@ 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; @@ -15,6 +16,7 @@ import com.dsh.competition.model.ParticipantVo; import com.dsh.competition.model.SaveParticipant; import com.dsh.competition.service.IParticipantService; +import com.dsh.competition.util.CodeGenerateUtils; import com.dsh.competition.util.JuHeUtil; import com.dsh.competition.util.ResultUtil; import com.dsh.competition.util.ToolUtil; @@ -23,9 +25,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 @@ -41,11 +41,9 @@ private StudentClient studentClient; - - - /** * 添加参赛人员信息 + * * @param uid * @param addParticipant * @return @@ -54,12 +52,12 @@ @Override public ResultUtil addParticipant(Integer uid, AddParticipant addParticipant) throws Exception { Participant one = this.getOne(new QueryWrapper<Participant>().eq("appUserId", uid).eq("phone", addParticipant.getPhone()).eq("state", 1)); - if(null != one){ + if (null != one) { return ResultUtil.error("电话号码重复"); } - if(ToolUtil.isNotEmpty(addParticipant.getName()) && ToolUtil.isNotEmpty(addParticipant.getIdcard())){ + if (ToolUtil.isNotEmpty(addParticipant.getName()) && ToolUtil.isNotEmpty(addParticipant.getIdcard())) { Boolean aBoolean = JuHeUtil.idcardAuthentication(addParticipant.getIdcard(), addParticipant.getName()); - if(!aBoolean){ + if (!aBoolean) { return ResultUtil.error("身份证和姓名不匹配"); } } @@ -68,10 +66,13 @@ BeanUtils.copyProperties(addParticipant, participant); participant.setHeight(Double.valueOf(addParticipant.getHeight()).intValue()); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); - if(ToolUtil.isNotEmpty(addParticipant.getBirthday())){ + if (ToolUtil.isNotEmpty(addParticipant.getBirthday())) { Date parse = sdf.parse(addParticipant.getBirthday()); participant.setBirthday(parse); } + String s = CodeGenerateUtils.generateOrderSn(); + String substring = s.substring(1); + participant.setId(Integer.valueOf(substring)); participant.setAppUserId(uid); participant.setState(1); participant.setInsertTime(new Date()); @@ -82,15 +83,26 @@ /** * 获取参赛人员列表 + * * @param uid * @return * @throws Exception */ @Override public List<ParticipantVo> queryParticipantList(Integer uid) throws Exception { + //拿到学员列表 + List<TStudent> tStudents = studentClient.queryStudentList(uid); + + List<ParticipantVo> listVo1 = new ArrayList<>(); + + //利用HashMap去重身份证 + LinkedHashMap<String, ParticipantVo> linkedHashMap = new LinkedHashMap<>(); + SimpleDateFormat sdf_year = new SimpleDateFormat("yyyy"); + + + //查出临时表里的数据,也去重 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()); @@ -98,30 +110,77 @@ 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()); - if(null != student){ + 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); - }else{ + participantVo.setIsStudent(1); + + } else { participantVo.setResidueClassHour(0); } participantVo.setPhone(participant.getPhone()); participantVo.setHeight(participant.getHeight()); participantVo.setWeight(participant.getWeight()); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); - if(null != participant.getBirthday()){ + if (null != participant.getBirthday()) { String format = sdf.format(participant.getBirthday()); participantVo.setBirthday(format); } participantVo.setGender(participant.getGender()); - listVo.add(participantVo); + if (participant.getIdcard() == null || participant.getIdcard().isEmpty()) { + listVo1.add(participantVo); + continue; + } + linkedHashMap.put(participant.getIdcard(), participantVo); +// listVo.add(participantVo); + } - return listVo; + + 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); + if (tStudent.getIdCard() == null || tStudent.getIdCard().isEmpty()) { + listVo1.add(participantVo); + continue; + } + linkedHashMap.put(tStudent.getIdCard(), participantVo); + } + + + listVo1.addAll(linkedHashMap.values()); + + +// List<ParticipantVo> listVo1 = new ArrayList<>(linkedHashMap.values()); + + + return listVo1; } /** * 修改参赛人员信息 + * * @param editParticipant * @return * @throws Exception @@ -129,12 +188,12 @@ @Override public ResultUtil editParticipant(Integer uid, EditParticipant editParticipant) throws Exception { Participant one = this.getOne(new QueryWrapper<Participant>().eq("appUserId", uid).eq("phone", editParticipant.getPhone()).eq("state", 1)); - if(null != one && one.getId().compareTo(editParticipant.getId()) != 0){ + if (null != one && one.getId().compareTo(editParticipant.getId()) != 0) { return ResultUtil.error("电话号码重复"); } - if(ToolUtil.isNotEmpty(editParticipant.getName()) && ToolUtil.isNotEmpty(editParticipant.getIdcard())){ + if (ToolUtil.isNotEmpty(editParticipant.getName()) && ToolUtil.isNotEmpty(editParticipant.getIdcard())) { Boolean aBoolean = JuHeUtil.idcardAuthentication(editParticipant.getIdcard(), editParticipant.getName()); - if(!aBoolean){ + if (!aBoolean) { return ResultUtil.error("身份证和姓名不匹配"); } } @@ -145,7 +204,7 @@ participant.setGender(editParticipant.getGender()); participant.setIdcard(editParticipant.getIdcard()); participant.setName(editParticipant.getName()); - if(ToolUtil.isNotEmpty(editParticipant.getBirthday())){ + if (ToolUtil.isNotEmpty(editParticipant.getBirthday())) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); participant.setBirthday(sdf.parse(editParticipant.getBirthday())); } @@ -156,6 +215,7 @@ /** * 删除参赛人员信息 + * * @param id * @return * @throws Exception @@ -172,38 +232,48 @@ @Override public void saveParticipant(SaveParticipant saveParticipant) throws Exception { Participant one = this.getOne(new QueryWrapper<Participant>().eq("appUserId", saveParticipant.getAppUserId()).eq("phone", saveParticipant.getPhone()).eq("state", 1)); - if(null != one){ - if(ToolUtil.isNotEmpty(saveParticipant.getName())){ + if (null != one) { + if (ToolUtil.isNotEmpty(saveParticipant.getName())) { one.setName(saveParticipant.getName()); } - if(ToolUtil.isNotEmpty(saveParticipant.getBirthday())){ + if (ToolUtil.isNotEmpty(saveParticipant.getBirthday())) { one.setBirthday(saveParticipant.getBirthday()); } - if(ToolUtil.isNotEmpty(saveParticipant.getGender())){ + if (ToolUtil.isNotEmpty(saveParticipant.getGender())) { one.setGender(saveParticipant.getGender()); } - if(ToolUtil.isNotEmpty(saveParticipant.getHeight())){ + if (ToolUtil.isNotEmpty(saveParticipant.getHeight())) { one.setHeight(saveParticipant.getHeight()); } - if(ToolUtil.isNotEmpty(saveParticipant.getWeight())){ + if (ToolUtil.isNotEmpty(saveParticipant.getWeight())) { one.setWeight(saveParticipant.getWeight()); } - if(ToolUtil.isNotEmpty(saveParticipant.getPhone())){ + if (ToolUtil.isNotEmpty(saveParticipant.getPhone())) { one.setPhone(saveParticipant.getPhone()); } - if(ToolUtil.isNotEmpty(saveParticipant.getIdcard())){ + if (ToolUtil.isNotEmpty(saveParticipant.getIdcard())) { one.setIdcard(saveParticipant.getIdcard()); } this.updateById(one); - }else{ + } else { one = new Participant(); BeanUtils.copyProperties(saveParticipant, one); + one.setInsertTime(new Date()); this.save(one); } } @Override public Page<CompetitionUser> getPeopleFromId(Page<UserCompetition> participantPage, Integer id, Integer state) { - return this.baseMapper.getPeopleFromId(participantPage,id,state); + return this.baseMapper.getPeopleFromId(participantPage, id, state); + } + @Override + public List<CompetitionUser> getPeopleFromId1(Page<UserCompetition> participantPage, Integer id, Integer state) { + return this.baseMapper.getPeopleFromId1(participantPage, id, state); + } + + @Override + public List<CompetitionUser> getPeoples(Integer id, Integer state) { + return this.baseMapper.getPeoples(id, state); } } -- Gitblit v1.7.1