|
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.zhongzheng.common.core.domain.model.LoginUser;
|
|
|
+import com.zhongzheng.common.exception.CustomException;
|
|
|
import com.zhongzheng.common.utils.DateUtils;
|
|
|
import com.zhongzheng.common.utils.SecurityUtils;
|
|
|
import com.zhongzheng.modules.course.domain.CourseSubject;
|
|
@@ -19,10 +20,18 @@ import com.zhongzheng.modules.exam.mapper.ExamActivityMapper;
|
|
|
import com.zhongzheng.modules.exam.service.IExamActivityGoodsService;
|
|
|
import com.zhongzheng.modules.exam.service.IExamActivityService;
|
|
|
import com.zhongzheng.modules.exam.service.IExamActivityUserService;
|
|
|
+import com.zhongzheng.modules.exam.vo.ExamActivityMajorVo;
|
|
|
+import com.zhongzheng.modules.exam.vo.ExamActivitySubjectVo;
|
|
|
import com.zhongzheng.modules.exam.vo.ExamActivityVo;
|
|
|
import com.zhongzheng.modules.goods.domain.Goods;
|
|
|
import com.zhongzheng.modules.goods.service.IGoodsService;
|
|
|
import com.zhongzheng.modules.goods.vo.GoodsVo;
|
|
|
+import com.zhongzheng.modules.mock.domain.MockMajor;
|
|
|
+import com.zhongzheng.modules.mock.domain.MockMajorSubject;
|
|
|
+import com.zhongzheng.modules.mock.service.IMockMajorService;
|
|
|
+import com.zhongzheng.modules.mock.service.IMockMajorSubjectService;
|
|
|
+import com.zhongzheng.modules.user.domain.User;
|
|
|
+import com.zhongzheng.modules.user.service.IUserService;
|
|
|
import com.zhongzheng.modules.wx.service.IWxLoginService;
|
|
|
import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -55,6 +64,12 @@ public class ExamActivityServiceImpl extends ServiceImpl<ExamActivityMapper, Exa
|
|
|
private IMajorService majorService;
|
|
|
@Autowired
|
|
|
private ICourseSubjectService courseSubjectService;
|
|
|
+ @Autowired
|
|
|
+ private IMockMajorService mockMajorService;
|
|
|
+ @Autowired
|
|
|
+ private IMockMajorSubjectService mockMajorSubjectService;
|
|
|
+ @Autowired
|
|
|
+ private IUserService userService;
|
|
|
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@@ -84,8 +99,17 @@ public class ExamActivityServiceImpl extends ServiceImpl<ExamActivityMapper, Exa
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public ExamActivityApplyVo applyActivity(ExamActivityApplyBo bo) {
|
|
|
+ ExamActivity entity = getById(bo.getActivityId());
|
|
|
+ if (ObjectUtils.isNull(entity)){
|
|
|
+ throw new CustomException("活动信息获取失败");
|
|
|
+ }
|
|
|
+
|
|
|
ExamActivityUser examActivityUser = new ExamActivityUser();
|
|
|
BeanUtils.copyProperties(bo, examActivityUser);
|
|
|
+ User user = userService.getById(bo.getUserId());
|
|
|
+ examActivityUser.setMockApplyId(entity.getMockApplyId());
|
|
|
+ examActivityUser.setUserIdCard(user.getIdCard());
|
|
|
+ examActivityUser.setUserPhone(user.getTelphone());
|
|
|
examActivityUser.setCreateTime(DateUtils.getNowTime());
|
|
|
examActivityUser.setUpdateTime(DateUtils.getNowTime());
|
|
|
iExamActivityUserService.save(examActivityUser);
|
|
@@ -100,6 +124,38 @@ public class ExamActivityServiceImpl extends ServiceImpl<ExamActivityMapper, Exa
|
|
|
ExamActivity activity = getById(activityId);
|
|
|
ExamActivityVo vo = new ExamActivityVo();
|
|
|
BeanUtils.copyProperties(activity,vo);
|
|
|
+ //获取活动模考专业和科目信息
|
|
|
+ List<MockMajor> list = mockMajorService
|
|
|
+ .list(new LambdaQueryWrapper<MockMajor>()
|
|
|
+ .eq(MockMajor::getApplyId, activity.getMockApplyId()));
|
|
|
+ if (CollectionUtils.isNotEmpty(list)){
|
|
|
+ List<ExamActivityMajorVo> majorVos = list.stream().map(item -> {
|
|
|
+ ExamActivityMajorVo majorVo = new ExamActivityMajorVo();
|
|
|
+ Major entity = majorService.getById(item.getMajorId());
|
|
|
+ majorVo.setMajorId(item.getMajorId());
|
|
|
+ majorVo.setMockMajorId(item.getMockMajorId());
|
|
|
+ majorVo.setMajorName(entity.getCategoryName());
|
|
|
+ return majorVo;
|
|
|
+ }).collect(Collectors.toList());
|
|
|
+ vo.setMajorList(majorVos);
|
|
|
+ //科目
|
|
|
+ List<Long> majorIds = list.stream().map(MockMajor::getMockMajorId).collect(Collectors.toList());
|
|
|
+ List<MockMajorSubject> majorSubjects = mockMajorSubjectService
|
|
|
+ .list(new LambdaQueryWrapper<MockMajorSubject>()
|
|
|
+ .in(MockMajorSubject::getMockMajorId, majorIds));
|
|
|
+ if (CollectionUtils.isNotEmpty(majorSubjects)){
|
|
|
+ List<ExamActivitySubjectVo> subjectVoList = majorSubjects.stream().map(item -> {
|
|
|
+ ExamActivitySubjectVo subjectVo = new ExamActivitySubjectVo();
|
|
|
+ CourseSubject subject = courseSubjectService.getById(item.getSubjectId());
|
|
|
+ subjectVo.setMockMajorSubjectId(item.getMockMajorSubjectId());
|
|
|
+ subjectVo.setMockMajorId(item.getMockMajorId());
|
|
|
+ subjectVo.setSubjectId(item.getSubjectId());
|
|
|
+ subjectVo.setSubjectName(subject.getSubjectName());
|
|
|
+ return subjectVo;
|
|
|
+ }).collect(Collectors.toList());
|
|
|
+ vo.setSubjectList(subjectVoList);
|
|
|
+ }
|
|
|
+ }
|
|
|
return vo;
|
|
|
}
|
|
|
|
|
@@ -146,4 +202,16 @@ public class ExamActivityServiceImpl extends ServiceImpl<ExamActivityMapper, Exa
|
|
|
}).collect(Collectors.toList());
|
|
|
return goodsVoList;
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Boolean checkUserActivityStatus(Long userId,Long activityId) {
|
|
|
+ ExamActivity activity = getById(activityId);
|
|
|
+ if (ObjectUtils.isNull(activity)){
|
|
|
+ throw new CustomException("活动信息获取失败");
|
|
|
+ }
|
|
|
+ int count = iExamActivityUserService.count(new LambdaQueryWrapper<ExamActivityUser>()
|
|
|
+ .eq(ExamActivityUser::getActivityId, activityId)
|
|
|
+ .eq(ExamActivityUser::getUserId, userId));
|
|
|
+ return count > 0;
|
|
|
+ }
|
|
|
}
|