|
@@ -1,5 +1,24 @@
|
|
|
package com.yonge.cooleshow.biz.dal.service.impl;
|
|
|
|
|
|
+import static com.yonge.cooleshow.biz.dal.constant.LiveRoomConstant.TEACHER_TEMP_LIVE_ROOM;
|
|
|
+
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.Date;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+import java.util.concurrent.TimeUnit;
|
|
|
+import java.util.stream.Collectors;
|
|
|
+
|
|
|
+import javax.annotation.Resource;
|
|
|
+
|
|
|
+import org.redisson.api.RMap;
|
|
|
+import org.redisson.api.RedissonClient;
|
|
|
+import org.springframework.beans.BeanUtils;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
+
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
@@ -7,20 +26,41 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
|
|
|
import com.yonge.cooleshow.auth.api.dto.RealnameAuthReq;
|
|
|
import com.yonge.cooleshow.auth.api.entity.SysUser;
|
|
|
-import com.yonge.cooleshow.biz.dal.enums.*;
|
|
|
-import com.yonge.cooleshow.biz.dal.vo.MyFens;
|
|
|
-import com.yonge.cooleshow.biz.dal.wordfilter.WordFilter;
|
|
|
-import com.yonge.cooleshow.common.constant.SysConfigConstant;
|
|
|
import com.yonge.cooleshow.biz.dal.dao.EmployeeDao;
|
|
|
+import com.yonge.cooleshow.biz.dal.dao.StudentStarDao;
|
|
|
+import com.yonge.cooleshow.biz.dal.dao.TeacherDao;
|
|
|
import com.yonge.cooleshow.biz.dal.dto.TeacherDto;
|
|
|
import com.yonge.cooleshow.biz.dal.dto.req.TeacherSubmitReq;
|
|
|
import com.yonge.cooleshow.biz.dal.dto.search.TeacherSearch;
|
|
|
-import com.yonge.cooleshow.biz.dal.entity.*;
|
|
|
-import com.yonge.cooleshow.biz.dal.service.*;
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.Student;
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.StudentStar;
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.Subject;
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.Teacher;
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.TeacherAuthMusicianRecord;
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.TeacherStyleVideo;
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.TeacherTotal;
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.UserAccount;
|
|
|
+import com.yonge.cooleshow.biz.dal.enums.AuthStatusEnum;
|
|
|
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
|
|
|
+import com.yonge.cooleshow.biz.dal.enums.TeacherTagEnum;
|
|
|
+import com.yonge.cooleshow.biz.dal.enums.TeacherTypeEnum;
|
|
|
+import com.yonge.cooleshow.biz.dal.service.StudentService;
|
|
|
+import com.yonge.cooleshow.biz.dal.service.StudentStarService;
|
|
|
+import com.yonge.cooleshow.biz.dal.service.SysConfigService;
|
|
|
+import com.yonge.cooleshow.biz.dal.service.TeacherAuthEntryRecordService;
|
|
|
+import com.yonge.cooleshow.biz.dal.service.TeacherAuthMusicianRecordService;
|
|
|
+import com.yonge.cooleshow.biz.dal.service.TeacherService;
|
|
|
+import com.yonge.cooleshow.biz.dal.service.TeacherStyleVideoService;
|
|
|
+import com.yonge.cooleshow.biz.dal.service.TeacherTotalService;
|
|
|
+import com.yonge.cooleshow.biz.dal.service.UserAccountService;
|
|
|
+import com.yonge.cooleshow.biz.dal.service.UserFirstTimeService;
|
|
|
import com.yonge.cooleshow.biz.dal.vo.HotTeacherVo;
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.MyFens;
|
|
|
import com.yonge.cooleshow.biz.dal.vo.TeacherAuthEntryRecordVo;
|
|
|
import com.yonge.cooleshow.biz.dal.vo.TeacherHomeVo;
|
|
|
import com.yonge.cooleshow.biz.dal.vo.TeacherVo;
|
|
|
+import com.yonge.cooleshow.biz.dal.wordfilter.WordFilter;
|
|
|
+import com.yonge.cooleshow.common.constant.SysConfigConstant;
|
|
|
import com.yonge.cooleshow.common.entity.HttpResponseResult;
|
|
|
import com.yonge.cooleshow.common.enums.CacheNameEnum;
|
|
|
import com.yonge.cooleshow.common.enums.UserFirstTimeTypeEnum;
|
|
@@ -31,25 +71,6 @@ import com.yonge.toolset.utils.date.DateUtil;
|
|
|
import com.yonge.toolset.utils.idcard.IdcardInfoExtractor;
|
|
|
import com.yonge.toolset.utils.string.ValueUtil;
|
|
|
|
|
|
-import org.redisson.api.RMap;
|
|
|
-import org.redisson.api.RedissonClient;
|
|
|
-import org.springframework.beans.BeanUtils;
|
|
|
-import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
|
|
|
-import org.springframework.stereotype.Service;
|
|
|
-
|
|
|
-import com.yonge.cooleshow.biz.dal.dao.TeacherDao;
|
|
|
-
|
|
|
-import org.springframework.transaction.annotation.Transactional;
|
|
|
-
|
|
|
-import javax.annotation.Resource;
|
|
|
-
|
|
|
-import java.util.*;
|
|
|
-import java.util.concurrent.TimeUnit;
|
|
|
-import java.util.stream.Collectors;
|
|
|
-
|
|
|
-import static com.yonge.cooleshow.biz.dal.constant.LiveRoomConstant.TEACHER_TEMP_LIVE_ROOM;
|
|
|
-
|
|
|
@Service
|
|
|
public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> implements TeacherService {
|
|
|
@Autowired
|
|
@@ -76,6 +97,12 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
|
|
|
private UserFirstTimeService userFirstTimeService;
|
|
|
@Autowired
|
|
|
private TeacherTotalService totalService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private StudentStarDao studentStarDao;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private StudentService studentService;
|
|
|
|
|
|
@Override
|
|
|
public TeacherVo detail(Long userId) {
|
|
@@ -519,9 +546,24 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public List<HotTeacherVo> queryHotTeacherList() {
|
|
|
+ public List<HotTeacherVo> queryHotTeacherList(Long userId) {
|
|
|
+ List<Long> watchTeacherIdList = new ArrayList<Long>();
|
|
|
+
|
|
|
+ List<StudentStar> studentStarList = studentStarDao.queryByStudentId(userId);
|
|
|
+ if(studentStarList != null && studentStarList.size() > 0){
|
|
|
+ watchTeacherIdList = studentStarList.stream().map(StudentStar :: getTeacherId).collect(Collectors.toList());
|
|
|
+ }
|
|
|
+
|
|
|
+ Student student = studentService.getById(userId);
|
|
|
+
|
|
|
+ List<HotTeacherVo> hotTeacherList = baseMapper.queryHotTeacherList(Long.parseLong(student.getSubjectId()));
|
|
|
+ for(HotTeacherVo vo : hotTeacherList){
|
|
|
+ if(watchTeacherIdList.contains(vo.getUserId())){
|
|
|
+ vo.setWatch(true);
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
- return baseMapper.queryHotTeacherList();
|
|
|
+ return hotTeacherList;
|
|
|
}
|
|
|
|
|
|
private void setTagTime(TeacherTagEnum teacherTagEnum, TeacherVo teacherVo) {
|