Browse Source

酷乐秀曲目来源改为内容平台

zouxuan 1 year ago
parent
commit
42766db185

+ 12 - 5
cooleshow-app/src/main/java/com/yonge/cooleshow/student/controller/StudentController.java

@@ -10,6 +10,7 @@ import com.yonge.cooleshow.biz.dal.entity.Subject;
 import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.service.SmsCodeService;
 import com.yonge.cooleshow.biz.dal.service.StudentService;
+import com.yonge.cooleshow.biz.dal.service.SubjectService;
 import com.yonge.cooleshow.biz.dal.service.SysUserService;
 import com.yonge.cooleshow.biz.dal.vo.MyFollow;
 import com.yonge.cooleshow.biz.dal.vo.StudentHomeVo;
@@ -37,6 +38,7 @@ import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.bind.annotation.RestController;
 
+import javax.annotation.Resource;
 import javax.validation.Valid;
 import java.util.List;
 
@@ -44,17 +46,20 @@ import java.util.List;
 @RequestMapping("${app-config.url.student:}/student")
 @Api(value = "学生表", tags = "学生表")
 public class StudentController extends BaseController {
-    @Autowired
+    @Resource
     private StudentService studentService;
-    @Autowired
+    @Resource
     private SysUserFeignService sysUserFeignService;
 
-    @Autowired
+    @Resource
     private SysUserService sysUserService;
 
-    @Autowired
+    @Resource
     private SmsCodeService smsCodeService;
 
+    @Resource
+    private SubjectService subjectService;
+
 
     @ApiOperation(value = "查询指定学员信息")
     @GetMapping("/queryUserById")
@@ -119,7 +124,9 @@ public class StudentController extends BaseController {
         if (user == null || null == user.getId()) {
             return failed(HttpStatus.FORBIDDEN, "请登录");
         }
-        return succeed(studentService.querySubjectItem(user.getId(), type));
+        List<Subject> subjects = studentService.querySubjectItem(user.getId(), type);
+        subjectService.convertSubject(subjects);
+        return succeed(subjects);
     }
 
     @ApiOperation(value = "我的关注")

+ 1 - 1
cooleshow-app/src/main/java/com/yonge/cooleshow/student/controller/SubjectController.java

@@ -53,7 +53,7 @@ public class SubjectController extends BaseController {
         	}
         }
         List<Subject> subjectSelect = subjectService.subjectSelect(type, userExtSubjectIds);
-        subjectService.convertSubject(subjectSelect);
+        subjectService.convertSubSubject(subjectSelect);
         return succeed(subjectSelect);
     }
 

+ 1 - 1
cooleshow-app/src/main/java/com/yonge/cooleshow/teacher/controller/SubjectController.java

@@ -63,7 +63,7 @@ public class SubjectController extends BaseController {
         }
         
         List<Subject> subjectSelect = subjectService.subjectSelect(type, userExtSubjectIds);
-		subjectService.convertSubject(subjectSelect);
+		subjectService.convertSubSubject(subjectSelect);
         return succeed(subjectSelect);
     }
 }

+ 6 - 2
cooleshow-app/src/main/java/com/yonge/cooleshow/teacher/controller/TeacherController.java

@@ -100,7 +100,9 @@ public class TeacherController extends BaseController {
         if (user == null || null == user.getId()) {
             return failed(HttpStatus.FORBIDDEN, "请登录");
         }
-        return succeed(teacherService.querySubject(user.getId()));
+        List<Subject> subjects = teacherService.querySubject(user.getId());
+        subjectService.convertSubject(subjects);
+        return succeed(subjects);
     }
 
     @ApiOperation(value = "设置声部")
@@ -129,7 +131,9 @@ public class TeacherController extends BaseController {
         if (user == null || null == user.getId()) {
             return failed(HttpStatus.FORBIDDEN, "请登录");
         }
-        return succeed(teacherService.querySubjectItem(user.getId(), type));
+        List<Subject> subjects = teacherService.querySubjectItem(user.getId(), type);
+        subjectService.convertSubject(subjects);
+        return succeed(subjects);
     }
 
     @ApiOperation(value = "我的-个人风采")

+ 6 - 1
cooleshow-app/src/main/java/com/yonge/cooleshow/website/controller/StudentController.java

@@ -8,6 +8,7 @@ import com.yonge.cooleshow.biz.dal.entity.Student;
 import com.yonge.cooleshow.biz.dal.entity.Subject;
 import com.yonge.cooleshow.biz.dal.service.StudentService;
 import com.yonge.cooleshow.biz.dal.service.StudentStarService;
+import com.yonge.cooleshow.biz.dal.service.SubjectService;
 import com.yonge.cooleshow.biz.dal.vo.MyFollow;
 import com.yonge.cooleshow.biz.dal.vo.StudentHomeVo;
 import com.yonge.cooleshow.common.controller.BaseController;
@@ -40,6 +41,8 @@ public class StudentController extends BaseController {
     private StudentStarService studentStarService;
     @Autowired
     private SysUserFeignService sysUserFeignService;
+    @Autowired
+    private SubjectService subjectService;
 
     @ApiOperation(value = "查询学员")
     @GetMapping("/queryUser")
@@ -83,7 +86,9 @@ public class StudentController extends BaseController {
         if (user == null || null == user.getId()) {
             return failed(HttpStatus.FORBIDDEN, "请登录");
         }
-        return succeed(studentService.querySubjectItem(user.getId(),type));
+        List<Subject> subjects = studentService.querySubjectItem(user.getId(), type);
+        subjectService.convertSubject(subjects);
+        return succeed(subjects);
     }
 
     @ApiOperation(value = "我的关注")

+ 23 - 60
cooleshow-app/src/main/java/com/yonge/cooleshow/website/controller/TeacherController.java

@@ -1,11 +1,11 @@
 package com.yonge.cooleshow.website.controller;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
-import com.yonge.cooleshow.auth.api.entity.SysUser;
 import com.yonge.cooleshow.biz.dal.dto.TeacherDto;
 import com.yonge.cooleshow.biz.dal.entity.Subject;
 import com.yonge.cooleshow.biz.dal.service.StudentStarService;
+import com.yonge.cooleshow.biz.dal.service.SubjectService;
+import com.yonge.cooleshow.biz.dal.service.SysUserService;
 import com.yonge.cooleshow.biz.dal.service.TeacherService;
 import com.yonge.cooleshow.biz.dal.vo.MyFens;
 import com.yonge.cooleshow.biz.dal.vo.TeacherHomeVo;
@@ -20,56 +20,42 @@ import com.yonge.toolset.mybatis.support.PageUtil;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpStatus;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
+import javax.annotation.Resource;
 import java.util.List;
 
 @RestController
 @RequestMapping("${app-config.url.website:}/teacher")
 @Api(value = "教师表", tags = "教师表")
 public class TeacherController extends BaseController {
-    @Autowired
+    @Resource
     private TeacherService teacherService;
-    @Autowired
+    @Resource
     private StudentStarService studentStarService;
-    @Autowired
-    private SysUserFeignService sysUserFeignService;
+    @Resource
+    private SubjectService subjectService;
+    @Resource
+    private SysUserService sysUserService;
 
     @ApiOperation(value = "我的-查询教师基本信息")
     @GetMapping("/queryUserInfo")
     public HttpResponseResult<TeacherHomeVo> queryUserInfo() {
-        SysUser user = sysUserFeignService.queryUserInfo();
-        if (user == null || null == user.getId()) {
-            return failed(HttpStatus.FORBIDDEN, "请登录");
-        }
-        return teacherService.queryUserInfo(user.getId());
+        return teacherService.queryUserInfo(sysUserService.getUserId());
     }
 
     @ApiOperation(value = "开通直播")
     @GetMapping("/openLive")
     public HttpResponseResult<Boolean> openLive() {
-        SysUser user = sysUserFeignService.queryUserInfo();
-        if (user == null || null == user.getId()) {
-            return failed(HttpStatus.FORBIDDEN, "请登录");
-        }
-        return teacherService.openLive(user.getId());
+        return teacherService.openLive(sysUserService.getUserId());
     }
 
     @ApiOperation(value = "获取老师可授课声部列表")
     @PostMapping("/querySubject")
     public HttpResponseResult<List<Subject>> querySubject() {
-        SysUser user = sysUserFeignService.queryUserInfo();
-        if (user == null || null == user.getId()) {
-            return failed(HttpStatus.FORBIDDEN, "请登录");
-        }
-        return succeed(teacherService.querySubject(user.getId()));
+        List<Subject> subjects = teacherService.querySubject(sysUserService.getUserId());
+        subjectService.convertSubject(subjects);
+        return succeed(subjects);
     }
 
     @ApiOperation(value = "设置声部")
@@ -78,57 +64,38 @@ public class TeacherController extends BaseController {
         if (StringUtil.isEmpty(subjectIds)) {
             return failed("参数不能为空");
         }
-        SysUser user = sysUserFeignService.queryUserInfo();
-        if (user == null || null == user.getId()) {
-            return failed(HttpStatus.FORBIDDEN, "请登录");
-        }
-        return status(teacherService.setSubject(user.getId(), subjectIds) > 0);
+        return status(teacherService.setSubject(sysUserService.getUserId(), subjectIds) > 0);
     }
 
     @ApiOperation(value = "获取声部搜索下拉框")
     @PostMapping("/querySubjectItem")
     public HttpResponseResult<List<Subject>> querySubjectItem(
             @ApiParam(value = "类型 PRACTICE 陪练课 LIVE 直播课 VIDEO 视频课 PIANO_ROOM 琴房 MUSIC 曲目 ") String type) {
-        SysUser user = sysUserFeignService.queryUserInfo();
-        if (user == null || null == user.getId()) {
-            return failed(HttpStatus.FORBIDDEN, "请登录");
-        }
-        return succeed(teacherService.querySubjectItem(user.getId(), type));
+        List<Subject> subjects = teacherService.querySubjectItem(sysUserService.getUserId(), type);
+        subjectService.convertSubject(subjects);
+        return succeed(subjects);
     }
 
     @ApiOperation(value = "我的-个人风采")
     @GetMapping("/queryTeacherStyle")
     public HttpResponseResult<TeacherVo> queryTeacherStyle() {
-        SysUser user = sysUserFeignService.queryUserInfo();
-        if (user == null || null == user.getId()) {
-            return failed(HttpStatus.FORBIDDEN, "请登录");
-        }
-        return HttpResponseResult.succeed(teacherService.detail(user.getId()));
+        return HttpResponseResult.succeed(teacherService.detail(sysUserService.getUserId()));
     }
 
     @ApiOperation(value = "我的-个人风采保存")
     @PostMapping("/saveTeacherStyle")
     public HttpResponseResult<TeacherVo> saveTeacherStyle(@RequestBody TeacherDto teacherDto) {
-        SysUser user = sysUserFeignService.queryUserInfo();
-        if (user == null || null == user.getId()) {
-            return failed(HttpStatus.FORBIDDEN, "请登录");
-        }
         if (StringUtil.isEmpty(teacherDto.getSubjectId())) {
             return failed("参数异常");
         }
-        teacherDto.setUserId(user.getId());
+        teacherDto.setUserId(sysUserService.getUserId());
         return teacherService.saveTeacherStyle(teacherDto);
     }
 
     @ApiOperation(value = "我的粉丝")
     @PostMapping(value = "/queryMyFans")
     public HttpResponseResult<PageInfo<MyFens>> queryMyFans(@RequestBody QueryInfo query) {
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
-        if (sysUser == null || sysUser.getId() == null) {
-            return failed(HttpStatus.FORBIDDEN, "请登录");
-        }
-
-        IPage<MyFens> pages = teacherService.queryMyFans(PageUtil.getPage(query), sysUser.getId());
+        IPage<MyFens> pages = teacherService.queryMyFans(PageUtil.getPage(query),sysUserService.getUserId());
         return succeed(PageUtil.pageInfo(pages));
     }
 
@@ -143,11 +110,7 @@ public class TeacherController extends BaseController {
         if (null == starStatusEnum) {
             return failed("缺少关注状态");
         }
-        SysUser user = sysUserFeignService.queryUserInfo();
-        if (user == null || null == user.getId()) {
-            return failed(HttpStatus.FORBIDDEN, "请登录");
-        }
-        return studentStarService.starOrUnStar(user.getId(), userId, starStatusEnum);
+        return studentStarService.starOrUnStar(sysUserService.getUserId(), userId, starStatusEnum);
     }
 
 }

+ 1 - 1
cooleshow-app/src/main/java/com/yonge/cooleshow/website/controller/open/OpenSubjectController.java

@@ -37,7 +37,7 @@ public class OpenSubjectController extends BaseController {
     public HttpResponseResult<List<Subject>> subjectSelect(
             @ApiParam(value = "类型 PRACTICE 陪练课 LIVE 直播课 VIDEO 视频课 PIANO_ROOM 琴房 MUSIC 曲目 ") String type) {
         List<Subject> subjectSelect = subjectService.subjectSelect(type, null);
-        subjectService.convertSubject(subjectSelect);
+        subjectService.convertSubSubject(subjectSelect);
         return succeed(subjectSelect);
     }
 

+ 1 - 1
cooleshow-app/src/main/java/com/yonge/cooleshow/website/controller/open/SubjectController.java

@@ -69,7 +69,7 @@ public class SubjectController extends BaseController {
         }
         
 		List<Subject> subjectSelect = subjectService.subjectSelect(type, userExtSubjectIds);
-		subjectService.convertSubject(subjectSelect);
+		subjectService.convertSubSubject(subjectSelect);
         return succeed(subjectSelect);
     }
 }

+ 2 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/SubjectService.java

@@ -73,4 +73,6 @@ public interface SubjectService extends BaseService<Long, Subject> {
 
 	//数据转换
 	void convertSubject(List<Subject> subjectSelect);
+
+	void convertSubSubject(List<Subject> subjectSelect);
 }

+ 35 - 31
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/SubjectServiceImpl.java

@@ -25,6 +25,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
+
 import javax.annotation.Resource;
 import java.util.*;
 import java.util.concurrent.TimeUnit;
@@ -393,40 +394,43 @@ public class SubjectServiceImpl extends BaseServiceImpl<Long, Subject> implement
 
     @Override
     public void convertSubject(List<Subject> subjectSelect) {
-        if(CollectionUtils.isNotEmpty(subjectSelect)){
-            for (Subject entity : subjectSelect) {
-                List<Subject> subjects = entity.getSubjects();
-                if(CollectionUtils.isNotEmpty(subjects)){
-                    // 转map
-                    Map<Long, Subject> subjectMap = subjects.stream().collect(Collectors.toMap(Subject::getCbsSubjectId, Function.identity(),(o1, o2)->o1));
-                    // cbs声部ID集合
-                    List<Long> cbsSubjectIds = subjects.stream().map(Subject::getCbsSubjectId).collect(Collectors.toList());
-                    subjects = new ArrayList<>();
-                    CbsSubjectWrapper.SubjectQuery subjectQuery = new CbsSubjectWrapper.SubjectQuery();
-                    subjectQuery.setIds(cbsSubjectIds);
-                    subjectQuery.setPage(1);
-                    subjectQuery.setRows(cbsSubjectIds.size());
-                    try {
-                        com.microsvc.toolkit.common.response.paging.PageInfo<CbsSubjectWrapper.Subject> subjectPageInfo = musicFeignClientService.subjectPage(subjectQuery).feignData();
-                        List<CbsSubjectWrapper.Subject> rows = subjectPageInfo.getRows();
-                        if (org.apache.commons.collections.CollectionUtils.isNotEmpty(rows)) {
-                            for (CbsSubjectWrapper.Subject row : rows) {
-                                Subject subject = subjectMap.get(row.getId());
-                                if (subject == null) {
-                                    log.warn("未查询到声部信息,id:{}", row.getId());
-                                    continue;
-                                }
-                                subject.setCbsSubjectName(row.getName());
-                                subject.setName(row.getName());
-                                subject.setCode(row.getCode());
-                                subjects.add(subject);
-                            }
+        convert(subjectSelect);
+    }
+
+    private void convert(List<Subject> subjects){
+        if(CollectionUtils.isNotEmpty(subjects)){
+            // cbs声部ID集合
+            List<Long> cbsSubjectIds = subjects.stream().map(Subject::getCbsSubjectId).collect(Collectors.toList());
+            CbsSubjectWrapper.SubjectQuery subjectQuery = new CbsSubjectWrapper.SubjectQuery();
+            subjectQuery.setIds(cbsSubjectIds);
+            subjectQuery.setPage(1);
+            subjectQuery.setRows(cbsSubjectIds.size());
+            try {
+                com.microsvc.toolkit.common.response.paging.PageInfo<CbsSubjectWrapper.Subject> subjectPageInfo = musicFeignClientService.subjectPage(subjectQuery).feignData();
+                List<CbsSubjectWrapper.Subject> rows = subjectPageInfo.getRows();
+                if (CollectionUtils.isNotEmpty(rows)) {
+                    Map<Long,CbsSubjectWrapper.Subject> cbsMap = rows.stream().collect(Collectors.toMap(CbsSubjectWrapper.Subject::getId, Function.identity(),(o1, o2)->o1));
+                    for (Subject row : subjects) {
+                        CbsSubjectWrapper.Subject subject = cbsMap.get(row.getCbsSubjectId());
+                        if (subject == null) {
+                            log.warn("未查询到声部信息,id:{}", row.getId());
+                            continue;
                         }
-                    } catch (Exception e) {
-                        log.error("调用音乐服务查询曲目详情失败", e);
+                        row.setName(subject.getName());
+                        row.setCode(subject.getCode());
                     }
-                    entity.setSubjects(subjects);
                 }
+            } catch (Exception e) {
+                log.error("调用音乐服务查询曲目详情失败", e);
+            }
+        }
+    }
+
+    @Override
+    public void convertSubSubject(List<Subject> subjectSelect) {
+        if(CollectionUtils.isNotEmpty(subjectSelect)){
+            for (Subject entity : subjectSelect) {
+                convert(entity.getSubjects());
             }
         }
     }