Browse Source

Merge branch 'ponline' into online

Eric 2 years ago
parent
commit
52dbc87fc7

+ 16 - 4
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserBindingTeacherServiceImpl.java

@@ -2,6 +2,7 @@ package com.yonge.cooleshow.biz.dal.service.impl;
 
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.google.common.collect.Lists;
 import com.yonge.cooleshow.biz.dal.dao.CourseScheduleDao;
 import com.yonge.cooleshow.biz.dal.dao.CourseScheduleDao;
 import com.yonge.cooleshow.biz.dal.dao.StudentDao;
 import com.yonge.cooleshow.biz.dal.dao.StudentDao;
 import com.yonge.cooleshow.biz.dal.dao.SubjectDao;
 import com.yonge.cooleshow.biz.dal.dao.SubjectDao;
@@ -13,13 +14,16 @@ import com.yonge.cooleshow.biz.dal.entity.UserBindingTeacher;
 import com.yonge.cooleshow.biz.dal.enums.CourseScheduleEnum;
 import com.yonge.cooleshow.biz.dal.enums.CourseScheduleEnum;
 import com.yonge.cooleshow.biz.dal.enums.StudentCourseEnum;
 import com.yonge.cooleshow.biz.dal.enums.StudentCourseEnum;
 import com.yonge.cooleshow.biz.dal.queryInfo.TeacherBindingUserQueryInfo;
 import com.yonge.cooleshow.biz.dal.queryInfo.TeacherBindingUserQueryInfo;
-import com.yonge.cooleshow.biz.dal.service.*;
+import com.yonge.cooleshow.biz.dal.service.StudentAttendanceService;
+import com.yonge.cooleshow.biz.dal.service.SysConfigService;
+import com.yonge.cooleshow.biz.dal.service.UserBindingTeacherService;
 import com.yonge.cooleshow.biz.dal.vo.userBindingTeacher.UserBindingCourseWrapper;
 import com.yonge.cooleshow.biz.dal.vo.userBindingTeacher.UserBindingCourseWrapper;
 import com.yonge.cooleshow.biz.dal.vo.userBindingTeacher.UserBindingTeacherWrapper;
 import com.yonge.cooleshow.biz.dal.vo.userBindingTeacher.UserBindingTeacherWrapper;
 import com.yonge.cooleshow.common.constant.SysConfigConstant;
 import com.yonge.cooleshow.common.constant.SysConfigConstant;
 import com.yonge.cooleshow.common.enums.YesOrNoEnum;
 import com.yonge.cooleshow.common.enums.YesOrNoEnum;
 import com.yonge.toolset.base.exception.BizException;
 import com.yonge.toolset.base.exception.BizException;
 import com.yonge.toolset.base.util.StringUtil;
 import com.yonge.toolset.base.util.StringUtil;
+import org.apache.commons.lang3.StringUtils;
 import org.joda.time.DateTime;
 import org.joda.time.DateTime;
 import org.joda.time.Period;
 import org.joda.time.Period;
 import org.joda.time.PeriodType;
 import org.joda.time.PeriodType;
@@ -29,7 +33,11 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 import org.springframework.util.CollectionUtils;
 
 
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 import java.util.stream.Collectors;
 import java.util.stream.Collectors;
 
 
 /**
 /**
@@ -110,8 +118,12 @@ public class UserBindingTeacherServiceImpl extends ServiceImpl<UserBindingTeache
                 subjectIdList.add(aLong);
                 subjectIdList.add(aLong);
             }
             }
         }
         }
-        List<Subject> subjectList = subjectDao.findBySubjectIds(subjectIdList);
+        List<Subject> subjectList = Lists.newArrayList();
+        if (org.apache.commons.collections.CollectionUtils.isNotEmpty(subjectIdList)) {
+            subjectList.addAll(subjectDao.findBySubjectIds(subjectIdList));
+        }
         Map<Long, String> userIdSubjectMap = students.stream()
         Map<Long, String> userIdSubjectMap = students.stream()
+                .filter(x -> StringUtils.isNotBlank(x.getSubjectId()))
                       .collect(Collectors.toMap(Student::getUserId,student -> subjectList.stream()
                       .collect(Collectors.toMap(Student::getUserId,student -> subjectList.stream()
                                  .filter(subject -> student.getSubjectId().equals(subject.getId().toString())).findFirst().get().getName(), (o, n) -> n));
                                  .filter(subject -> student.getSubjectId().equals(subject.getId().toString())).findFirst().get().getName(), (o, n) -> n));
 
 
@@ -123,7 +135,7 @@ public class UserBindingTeacherServiceImpl extends ServiceImpl<UserBindingTeache
 
 
         for (UserBindingTeacherWrapper record : records) {
         for (UserBindingTeacherWrapper record : records) {
             record.setIsVip(userIdVipMap.get(record.getUserId()));
             record.setIsVip(userIdVipMap.get(record.getUserId()));
-            record.setSubjectName(userIdSubjectMap.get(record.getUserId()));
+            record.setSubjectName(userIdSubjectMap.getOrDefault(record.getUserId(), ""));
 
 
             List<UserBindingTeacherWrapper.CourseNum> courseNums = userIdCourseStatusMap.get(record.getUserId());
             List<UserBindingTeacherWrapper.CourseNum> courseNums = userIdCourseStatusMap.get(record.getUserId());