|
@@ -1,16 +1,13 @@
|
|
|
package com.yonge.cooleshow.biz.dal.service.impl;
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
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.auth.api.enums.SysUserType;
|
|
|
import com.yonge.cooleshow.common.constant.SysConfigConstant;
|
|
|
-import com.yonge.cooleshow.biz.dal.dao.CourseScheduleDao;
|
|
|
import com.yonge.cooleshow.biz.dal.dao.EmployeeDao;
|
|
|
-import com.yonge.cooleshow.biz.dal.dao.StudentStarDao;
|
|
|
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;
|
|
@@ -36,7 +33,6 @@ 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 org.springframework.util.CollectionUtils;
|
|
|
|
|
|
import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
@@ -54,10 +50,6 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
|
|
|
@Autowired
|
|
|
private EmployeeDao employeeDao;
|
|
|
@Autowired
|
|
|
- private StudentStarDao studentStarDao;
|
|
|
- @Autowired
|
|
|
- private CourseScheduleDao courseScheduleDao;
|
|
|
- @Autowired
|
|
|
private RedissonClient redissonClient;
|
|
|
@Autowired
|
|
|
private SysConfigService sysConfigService;
|
|
@@ -128,7 +120,7 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
|
|
|
teacherHomeVo.setMusicianAuthStatus(musicianRecord.getTeacherAuthStatus());
|
|
|
}
|
|
|
|
|
|
- TeacherTotalVo totalVo = (TeacherTotalVo) redissonClient.getBucket(CacheNameEnum.TEACHER_HOME_TOTAL.getRedisKey(user.getId())).get();
|
|
|
+ TeacherTotalVo totalVo = (TeacherTotalVo) redissonClient.getBucket(CacheNameEnum.TEACHER_TOTAL.getRedisKey(user.getId())).get();
|
|
|
if (null == totalVo) {
|
|
|
totalVo = new TeacherTotalVo();
|
|
|
}
|
|
@@ -141,7 +133,7 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
|
|
|
|
|
|
@Override
|
|
|
public HttpResponseResult<Boolean> openLive(Long id) {
|
|
|
- TeacherTotalVo totalVo = (TeacherTotalVo) redissonClient.getBucket(CacheNameEnum.TEACHER_HOME_TOTAL.getRedisKey(id)).get();
|
|
|
+ TeacherTotalVo totalVo = (TeacherTotalVo) redissonClient.getBucket(CacheNameEnum.TEACHER_TOTAL.getRedisKey(id)).get();
|
|
|
if (null == totalVo) {
|
|
|
return HttpResponseResult.succeed(false);
|
|
|
}
|
|
@@ -166,52 +158,6 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
|
|
|
return baseMapper.querySubject(userId);
|
|
|
}
|
|
|
|
|
|
- @Override
|
|
|
- public List<TeacherTotalVo> queryTeacherHomeTotal() {
|
|
|
- List<Teacher> teachers = baseMapper.selectList(Wrappers.<Teacher>emptyWrapper()
|
|
|
- .select("userId"));
|
|
|
- //查询粉丝数
|
|
|
- List<TeacherTotalVo> teacherStarTotal = studentStarDao.queryTeacherHomeTotal();
|
|
|
- Map<Long, TeacherTotalVo> teacherStarMap = new HashMap<>();
|
|
|
- if (!CollectionUtils.isEmpty(teacherStarTotal)) {
|
|
|
- teacherStarMap = teacherStarTotal.stream().collect(Collectors.toMap(TeacherTotalVo::getUserId, o -> o));
|
|
|
- }
|
|
|
- //查询已上未上课时数
|
|
|
- List<TeacherTotalVo> teacherCourseTotal = courseScheduleDao.queryTeacherHomeTotal();
|
|
|
- Map<Long, TeacherTotalVo> teacherCourseMap = new HashMap<>();
|
|
|
- if (!CollectionUtils.isEmpty(teacherCourseTotal)) {
|
|
|
- teacherCourseMap = teacherCourseTotal.stream().collect(Collectors.toMap(TeacherTotalVo::getUserId, o -> o));
|
|
|
- }
|
|
|
- List<TeacherTotalVo> resultList = new ArrayList<>();
|
|
|
- for (Teacher teacher : teachers) {
|
|
|
- TeacherTotalVo totalVo = new TeacherTotalVo();
|
|
|
- totalVo.setUserId(teacher.getUserId());
|
|
|
- TeacherTotalVo fansTotal = teacherStarMap.get(teacher.getUserId());
|
|
|
- if (null != fansTotal) {
|
|
|
- totalVo.setFansNum(fansTotal.getFansNum());
|
|
|
- }
|
|
|
- TeacherTotalVo courseTotal = teacherCourseMap.get(teacher.getUserId());
|
|
|
- if (null != courseTotal) {
|
|
|
- totalVo.setExpTime(courseTotal.getExpTime());
|
|
|
- totalVo.setUnExpTime(courseTotal.getUnExpTime());
|
|
|
- Double starGrade = courseTotal.getStarGrade();
|
|
|
- if (null != starGrade) {
|
|
|
- Long round = Math.round(starGrade);
|
|
|
- totalVo.setStarGrade(round.doubleValue());
|
|
|
- }
|
|
|
- }
|
|
|
- resultList.add(totalVo);
|
|
|
- redissonClient.getBucket(CacheNameEnum.TEACHER_HOME_TOTAL.getRedisKey(totalVo.getUserId()))
|
|
|
- .set(totalVo);
|
|
|
- }
|
|
|
- return resultList;
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public Object getRedisValueByKey(String key) {
|
|
|
- return redissonClient.getBucket(key).get();
|
|
|
- }
|
|
|
-
|
|
|
private HttpResponseResult<Boolean> doCreate(TeacherSubmitReq teacherSubmitReq) throws BizException {
|
|
|
//判断手机号
|
|
|
SysUser sysUser = employeeDao.querySysUserByPhone(teacherSubmitReq.getPhone());
|