From c697ed09cb1e257bc54603213b304e0f156326a6 Mon Sep 17 00:00:00 2001
From: 44323 <443237572@qq.com>
Date: 星期四, 02 十一月 2023 10:34:07 +0800
Subject: [PATCH] 支付会员送券功能补充 运营商权限bug修改
---
cloud-server-competition/src/main/java/com/dsh/competition/service/impl/ParticipantServiceImpl.java | 93 +++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 87 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 14bb0d3..bc0760b 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,17 +1,22 @@
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;
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;
@@ -20,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
@@ -63,6 +66,15 @@
Participant participant = new Participant();
BeanUtils.copyProperties(addParticipant, participant);
+ participant.setHeight(Double.valueOf(addParticipant.getHeight()).intValue());
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+ 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());
@@ -71,6 +83,9 @@
}
+
+
+
/**
* 获取参赛人员列表
* @param uid
@@ -79,9 +94,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());
@@ -89,16 +134,40 @@
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);
}
+ participantVo.setPhone(participant.getPhone());
+ participantVo.setHeight(participant.getHeight());
+ participantVo.setWeight(participant.getWeight());
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+ if(null != participant.getBirthday()){
+ String format = sdf.format(participant.getBirthday());
+ 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;
}
@@ -124,6 +193,13 @@
participant.setHeight(editParticipant.getHeight());
participant.setWeight(editParticipant.getWeight());
participant.setPhone(editParticipant.getPhone());
+ participant.setGender(editParticipant.getGender());
+ participant.setIdcard(editParticipant.getIdcard());
+ participant.setName(editParticipant.getName());
+ if(ToolUtil.isNotEmpty(editParticipant.getBirthday())){
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+ participant.setBirthday(sdf.parse(editParticipant.getBirthday()));
+ }
this.updateById(participant);
return ResultUtil.success();
}
@@ -176,4 +252,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