src/main/java/org/springblade/modules/vip/entity/VipTopic.java
@@ -45,6 +45,13 @@ private Date createTime; /** * 更新时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date updateTime; /** * 报名id */ private Long applyId; src/main/java/org/springblade/modules/vip/service/impl/UserVipServiceImpl.java
@@ -3,6 +3,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springblade.core.mp.support.Condition; import org.springblade.modules.system.entity.User; import org.springblade.modules.training.entity.TrainingRegistration; import org.springblade.modules.vip.entity.UserVip; import org.springblade.modules.vip.mapper.UserVipMapper; @@ -11,6 +13,7 @@ import org.springframework.stereotype.Service; import java.util.Date; import java.util.List; /** * 用户会员服务实现类 @@ -41,14 +44,29 @@ */ @Override public boolean insertUserVipInfo(TrainingRegistration trainingRegistration) { //1.创建用户会员对象 UserVip userVip = new UserVip(); //2.数据封装 userVip.setApplyId(trainingRegistration.getId()); userVip.setCreateTime(new Date()); userVip.setUpdateTime(new Date()); userVip.setUserId(Long.parseLong(trainingRegistration.getUserId())); //先查询之前是否有缴费,比如缴费了取消报名这种情况 UserVip userVip1 = new UserVip(); userVip1.setUserId(Long.parseLong(trainingRegistration.getUserId())); List<UserVip> list = this.list(Condition.getQueryWrapper(userVip1)); boolean status = false; if (list.size()>0){ //更新数据 UserVip userVip = list.get(0); userVip.setApplyId(trainingRegistration.getId()); userVip.setUpdateTime(new Date()); //更新 status = this.updateById(userVip); }else { //1.创建用户会员对象 UserVip userVip = new UserVip(); //2.数据封装 userVip.setApplyId(trainingRegistration.getId()); userVip.setCreateTime(new Date()); userVip.setUpdateTime(new Date()); userVip.setUserId(Long.parseLong(trainingRegistration.getUserId())); status = this.save(userVip); } //3.返回 return this.save(userVip); return status; } } src/main/java/org/springblade/modules/vip/service/impl/VipTopticServiceImpl.java
@@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springblade.core.mp.support.Condition; import org.springblade.modules.exam.service.ExamSubjectChoicesService; import org.springblade.modules.training.entity.TrainingRegistration; import org.springblade.modules.vip.entity.VipTopic; @@ -46,17 +47,37 @@ */ @Override public boolean insertVipTopicInfo(TrainingRegistration trainingRegistration) { //1. 创建会员题库对象 VipTopic vipTopic = new VipTopic(); //2. 随机查询120道题目信息,只要题目 id 集合即可 List<String> list = examSubjectChoicesService.getExamSubjectChoicesList(); //3. 数据处理,封装 String collect = list.stream().collect(Collectors.joining(",")); vipTopic.setTopicIds(collect); vipTopic.setApplyId(trainingRegistration.getId()); vipTopic.setCreateTime(new Date()); vipTopic.setUserId(Long.parseLong(trainingRegistration.getUserId())); //4. 新增并返回 return this.save(vipTopic); //先查询是否已经交过费的 VipTopic vipTopic1 = new VipTopic(); vipTopic1.setUserId(Long.parseLong(trainingRegistration.getUserId())); List<VipTopic> list1 = this.list(Condition.getQueryWrapper(vipTopic1)); boolean status =false; if (list1.size()>0){ //1.获取vipTopic VipTopic vipTopic = list1.get(0); //2. 随机查询120道题目信息,只要题目 id 集合即可 List<String> list = examSubjectChoicesService.getExamSubjectChoicesList(); //3. 数据处理,封装 String collect = list.stream().collect(Collectors.joining(",")); vipTopic.setTopicIds(collect); vipTopic.setUpdateTime(new Date()); //4.更新 status = this.updateById(vipTopic); }else { //1. 创建会员题库对象 VipTopic vipTopic = new VipTopic(); //2. 随机查询120道题目信息,只要题目 id 集合即可 List<String> list = examSubjectChoicesService.getExamSubjectChoicesList(); //3. 数据处理,封装 String collect = list.stream().collect(Collectors.joining(",")); vipTopic.setTopicIds(collect); vipTopic.setApplyId(trainingRegistration.getId()); vipTopic.setCreateTime(new Date()); vipTopic.setUpdateTime(new Date()); vipTopic.setUserId(Long.parseLong(trainingRegistration.getUserId())); //4. 新增并返回 status = this.save(vipTopic); } return status; } }