Bläddra i källkod

Merge branch 'online' of http://git.dayaedu.com/yonge/cooleshow into zx_online_sort

zouxuan 7 månader sedan
förälder
incheckning
656857dc10
16 ändrade filer med 255 tillägg och 27 borttagningar
  1. 2 2
      cooleshow-app/src/main/java/com/yonge/cooleshow/admin/controller/TenantAlbumController.java
  2. 1 1
      cooleshow-app/src/main/java/com/yonge/cooleshow/student/controller/StudentController.java
  3. 1 1
      cooleshow-app/src/main/java/com/yonge/cooleshow/student/controller/TenantAlbumSheetController.java
  4. 50 0
      cooleshow-app/src/main/java/com/yonge/cooleshow/teacher/controller/TenantAlbumSheetController.java
  5. 1 1
      cooleshow-app/src/main/java/com/yonge/cooleshow/teacher/controller/TenantGroupAlbumController.java
  6. 1 1
      cooleshow-app/src/main/java/com/yonge/cooleshow/tenant/controller/TenantAlbumSheetController.java
  7. 1 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/EmployeeDao.java
  8. 3 2
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/req/TeacherSubmitReq.java
  9. 5 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/TenantAlbumMusicService.java
  10. 17 10
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/TeacherServiceImpl.java
  11. 113 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/TenantAlbumMusicServiceImpl.java
  12. 45 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/wrapper/LessonCoursewareDetailWrapper.java
  13. 2 2
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/wrapper/TenantAlbumMusicWrapper.java
  14. 4 0
      cooleshow-user/user-biz/src/main/resources/config/mybatis/EmployeeMapper.xml
  15. 8 5
      cooleshow-user/user-biz/src/main/resources/config/mybatis/TenantAlbumMusicMapper.xml
  16. 1 1
      pom.xml

+ 2 - 2
cooleshow-app/src/main/java/com/yonge/cooleshow/admin/controller/TenantAlbumController.java

@@ -128,8 +128,8 @@ public class TenantAlbumController {
 
         if (CollectionUtils.isNotEmpty(coursewareList)) {
             List<CbsLessonCoursewareWrapper.Entity> entities = coursewareFeignService
-                .lessonCoursewareLambdaQuery(CbsLessonCoursewareWrapper.LambdaQuery.builder().ids(coursewareList).build()).feignData();
-            coursewareDtoMap.putAll(entities.stream().collect(Collectors.toMap(CbsLessonCoursewareWrapper.Entity::getId, Function.identity())));
+                .lessonCoursewareLambdaQuery(CbsLessonCoursewareWrapper.LambdaQuery.builder().ids(coursewareList).delFlag(false).build()).feignData();
+            coursewareDtoMap.putAll(entities.stream().filter(o-> !o.getDelFlag()).collect(Collectors.toMap(CbsLessonCoursewareWrapper.Entity::getId, Function.identity())));
         }
 
         Map<Long, MusicSheetVo> idMsMap = new HashMap<>();

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

@@ -97,7 +97,7 @@ public class StudentController extends BaseController {
     @GetMapping("/queryUserInfo")
     public HttpResponseResult<StudentHomeVo> queryUserInfo() throws Exception {
         SysUser user = sysUserFeignService.queryUserInfo();
-        if (user == null || null == user.getId()) {
+        if (user == null || null == user.getId() || (user.getDelFlag()!=null && user.getDelFlag())) {
             return failed(HttpStatus.FORBIDDEN, "请登录");
         }
         return succeed(studentService.queryUserInfo(user));

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

@@ -72,7 +72,7 @@ public class TenantAlbumSheetController extends BaseController {
         if (user == null || null == user.getId()) {
             return failed(HttpStatus.FORBIDDEN, "请登录");
         }
-        query.setUserId(user.getId());
+//        query.setUserId(user.getId());
         if(query.getSubjectId() == null){
         	Student student = studentService.getById(user.getId());
             if (student == null) {

+ 50 - 0
cooleshow-app/src/main/java/com/yonge/cooleshow/teacher/controller/TenantAlbumSheetController.java

@@ -5,27 +5,41 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.dayaedu.cbs.openfeign.client.CoursewareFeignService;
 import com.dayaedu.cbs.openfeign.wrapper.courseware.CbsLessonCoursewareWrapper;
 import com.microsvc.toolkit.common.response.paging.QueryInfo;
+import com.microsvc.toolkit.common.response.template.R;
+import com.microsvc.toolkit.config.jwt.utils.JwtUserInfo;
+import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
+import com.yonge.cooleshow.auth.api.entity.SysUser;
+import com.yonge.cooleshow.biz.dal.entity.Student;
+import com.yonge.cooleshow.biz.dal.entity.Teacher;
 import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.service.MusicSheetService;
 import com.yonge.cooleshow.biz.dal.service.SysUserService;
+import com.yonge.cooleshow.biz.dal.service.TeacherService;
 import com.yonge.cooleshow.biz.dal.service.TenantAlbumMusicService;
 import com.yonge.cooleshow.biz.dal.wrapper.LessonCoursewareDetailWrapper;
 import com.yonge.cooleshow.biz.dal.wrapper.LessonCoursewareWrapper;
 import com.yonge.cooleshow.biz.dal.wrapper.TenantAlbumMusicWrapper;
 import com.yonge.cooleshow.common.controller.BaseController;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
+import com.yonge.toolset.base.exception.BizException;
 import com.yonge.toolset.base.page.PageInfo;
+import com.yonge.toolset.base.util.StringUtil;
 import com.yonge.toolset.mybatis.support.PageUtil;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.apache.commons.collections.CollectionUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpStatus;
+import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
+import springfox.documentation.annotations.ApiIgnore;
 
 import javax.annotation.Resource;
 import javax.validation.Valid;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Optional;
 
 /**
  * 专辑表 web 控制层
@@ -47,6 +61,24 @@ public class TenantAlbumSheetController extends BaseController {
     @Resource
     private CoursewareFeignService coursewareFeignService;
 
+    @Autowired
+    private SysUserFeignService sysUserFeignService;
+
+    @Autowired
+    private TeacherService teacherService;
+
+
+    @ApiOperation(value = "查询条件")
+    @PostMapping("/selectCondition")
+    public HttpResponseResult<TenantAlbumMusicWrapper.TenantAlbumMusicSelectData> selectCondition(@RequestBody TenantAlbumMusicWrapper.TenantAlbumMusicSelect query) {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+//        query.setUserId(user.getId());
+        return succeed(tenantAlbumMusicService.getTenantAlbumMusicQuery(query));
+    }
+
 
     @ApiOperation(value = "分页查询")
     @PostMapping("/page")
@@ -97,4 +129,22 @@ public class TenantAlbumSheetController extends BaseController {
         return succeed(tenantAlbumMusicService.getLessonCourseDetail(id));
     }
 
+
+    @ApiOperation(value = "关联课程类型")
+    @PostMapping("/refLevel")
+    public HttpResponseResult<List<LessonCoursewareDetailWrapper.RefLevelDetailInfo>> refLevel(@RequestBody LessonCoursewareDetailWrapper.RefLevelQuery query) {
+
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+
+        Teacher teacher = teacherService.getById(user.getId());
+        query.setTenantId(Optional.ofNullable(teacher.getTenantId()).orElse(-1L));
+        List<LessonCoursewareDetailWrapper.RefLevelDetailInfo> result = tenantAlbumMusicService.refLevel(query);
+
+        return HttpResponseResult.succeed(result);
+    }
+
+
 }

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

@@ -58,7 +58,7 @@ public class TenantGroupAlbumController {
         if (user == null || null == user.getId()) {
             return failed(HttpStatus.FORBIDDEN, "请登录");
         }
-        query.setUserId(user.getId());
+//        query.setUserId(user.getId());
         return HttpResponseResult.succeed(tenantAlbumMusicService.getTenantAlbumMusicQuery(query));
     }
 

+ 1 - 1
cooleshow-app/src/main/java/com/yonge/cooleshow/tenant/controller/TenantAlbumSheetController.java

@@ -56,7 +56,7 @@ public class TenantAlbumSheetController extends BaseController {
         if (user == null || null == user.getId()) {
             return failed(HttpStatus.FORBIDDEN, "请登录");
         }
-        query.setUserId(user.getId());
+//        query.setUserId(user.getId());
         /*if(StringUtils.isBlank(query.getSubjectId())){
         	Student student = studentService.getById(user.getId());
         	query.setSubjectId(student.getSubjectId());

+ 1 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/EmployeeDao.java

@@ -133,4 +133,5 @@ public interface EmployeeDao extends BaseDAO<Long, Employee> {
      */
     int insertSysRole(SysRole sysRole);
 
+    void updateSysUserIdCard(@Param("userId") Long userId, @Param("idCardNo") String idCardNo);
 }

+ 3 - 2
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/req/TeacherSubmitReq.java

@@ -7,6 +7,7 @@ import lombok.Data;
 
 import javax.validation.constraints.NotBlank;
 import java.io.Serializable;
+import java.util.Optional;
 
 /**
  * @Author: liweifan
@@ -26,11 +27,11 @@ public class TeacherSubmitReq implements Serializable {
     @ApiModelProperty(value = "手机号",required = true)
     private String phone;
 
-    @NotBlank(message = "用户真实姓名不能为空")
+//    @NotBlank(message = "用户真实姓名不能为空")
     @ApiModelProperty(value = "用户真实姓名", required = true)
     private String realName;
 
-    @NotBlank(message = "用户身份证号不能为空")
+//    @NotBlank(message = "用户身份证号不能为空")
     @ApiModelProperty(value = "用户身份证号", required = true)
     private String idCardNo;
 

+ 5 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/TenantAlbumMusicService.java

@@ -70,4 +70,9 @@ public interface TenantAlbumMusicService extends IService<TenantAlbumMusic>  {
     LessonCoursewareWrapper.LessonCourseware getLessonCoursewareDetail(LessonCoursewareWrapper.LessonCourseQuery query);
 
     LessonCoursewareDetailWrapper.LessonCoursewareDetail getLessonCourseDetail(String lessoncoursewareDetailId);
+
+    /**
+     * 关联课程类型
+     */
+    List<LessonCoursewareDetailWrapper.RefLevelDetailInfo> refLevel(LessonCoursewareDetailWrapper.RefLevelQuery query);
 }

+ 17 - 10
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/TeacherServiceImpl.java

@@ -614,6 +614,8 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
         sysUser = getUserDetil(sysUser, teacherSubmitReq);
         sysUser.setUpdateTime(new Date());
         employeeDao.updateSysUser(sysUser);
+        employeeDao.updateSysUserIdCard(sysUser.getId(),teacherSubmitReq.getIdCardNo());
+
         return sysUser;
     }
 
@@ -898,8 +900,10 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
      * @updateTime 2022/3/23 17:23
      */
     private SysUser getUserDetil(SysUser sysUser, TeacherSubmitReq teacherSubmitReq) throws BizException {
-        if (!teacherSubmitReq.getIdCardNo().equals(sysUser.getIdCardNo())
-                || !teacherSubmitReq.getRealName().equals(sysUser.getRealName())) {
+
+        sysUser.setRealName(teacherSubmitReq.getRealName());
+        sysUser.setIdCardNo(teacherSubmitReq.getIdCardNo());
+        if (!StringUtil.isEmpty(sysUser.getIdCardNo())) {
 
             //实名信息
             RealnameAuthReq realNameAuthDto = new RealnameAuthReq();
@@ -907,17 +911,20 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
             realNameAuthDto.setRealName(teacherSubmitReq.getRealName());
             realNameAuthDto.setSave(false);
 
-            if (!realnameAuthenticationPlugin.verify(realNameAuthDto.getRealName(),realNameAuthDto.getIdCardNo())) {
+            if (!StringUtil.isEmpty(teacherSubmitReq.getIdCardNo()) &&
+                !realnameAuthenticationPlugin.verify(realNameAuthDto.getRealName(),realNameAuthDto.getIdCardNo())) {
                 throw new BizException("实名认证未通过");
             }
 
-            //通过身份证号获取身份信息
-            IdcardInfoExtractor idcardInfo = new IdcardInfoExtractor(realNameAuthDto.getIdCardNo(), false);
-            //身份证解析信息
-            sysUser.setGender(idcardInfo.getGender());
-            sysUser.setBirthdate(idcardInfo.getBirthday());
-            sysUser.setRealName(teacherSubmitReq.getRealName());
-            sysUser.setIdCardNo(teacherSubmitReq.getIdCardNo());
+            if (!StringUtil.isEmpty(teacherSubmitReq.getIdCardNo()) ) {
+                //通过身份证号获取身份信息
+                IdcardInfoExtractor idcardInfo = new IdcardInfoExtractor(realNameAuthDto.getIdCardNo(), false);
+                //身份证解析信息
+                sysUser.setGender(idcardInfo.getGender());
+                sysUser.setBirthdate(idcardInfo.getBirthday());
+                sysUser.setRealName(teacherSubmitReq.getRealName());
+                sysUser.setIdCardNo(teacherSubmitReq.getIdCardNo());
+            }
         }
         if (StringUtil.isEmpty(sysUser.getUserType())) {
             sysUser.setUserType("TEACHER");

+ 113 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/TenantAlbumMusicServiceImpl.java

@@ -3,6 +3,7 @@ package com.yonge.cooleshow.biz.dal.service.impl;
 import cn.hutool.core.util.NumberUtil;
 import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.beust.jcommander.internal.Lists;
 import com.dayaedu.cbs.common.enums.school.ECourseType;
@@ -15,16 +16,19 @@ import com.dayaedu.cbs.openfeign.wrapper.courseware.CbsLessonCoursewareDetailWra
 import com.dayaedu.cbs.openfeign.wrapper.courseware.CbsLessonCoursewareWrapper;
 import com.dayaedu.cbs.openfeign.wrapper.music.CbsMusicSheetWrapper;
 import com.microsvc.toolkit.common.response.paging.PageInfo;
+import com.microsvc.toolkit.common.response.template.R;
 import com.yonge.cooleshow.biz.dal.entity.*;
 import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.enums.SourceTypeEnum;
 import com.yonge.cooleshow.biz.dal.enums.SubjectTypeEnum;
+import com.yonge.cooleshow.biz.dal.mapper.TenantAlbumMapper;
 import com.yonge.cooleshow.biz.dal.mapper.TenantAlbumMusicMapper;
 import com.yonge.cooleshow.biz.dal.mapper.UserTenantAlbumRecordMapper;
 import com.yonge.cooleshow.biz.dal.service.*;
 import com.yonge.cooleshow.biz.dal.wrapper.LessonCoursewareDetailWrapper;
 import com.yonge.cooleshow.biz.dal.wrapper.LessonCoursewareWrapper;
 import com.yonge.cooleshow.biz.dal.wrapper.TenantAlbumMusicWrapper;
+import com.yonge.cooleshow.biz.dal.wrapper.TenantAlbumWrapper;
 import com.yonge.cooleshow.common.constant.SysConfigConstant;
 import com.yonge.cooleshow.common.enums.YesOrNoEnum;
 import com.yonge.cooleshow.common.constant.SysConfigConstant;
@@ -84,6 +88,9 @@ public class TenantAlbumMusicServiceImpl extends ServiceImpl<TenantAlbumMusicMap
     @Autowired
     private CoursewareFeignService coursewareFeignService;
 
+    @Autowired
+    private TenantAlbumMapper tenantAlbumMapper;
+
     @Value("${openfeign-client.app-id:1745637981387108354}")
     public Long applicationId;
 
@@ -344,7 +351,7 @@ public class TenantAlbumMusicServiceImpl extends ServiceImpl<TenantAlbumMusicMap
         // 声部
         String subjectIds = musicSheets.stream()
                 .map(MusicSheet::getMusicSubject)
-                .filter(StringUtils::isNotBlank).collect(Collectors.joining(","));
+                .filter(StringUtils::isNotBlank).distinct().collect(Collectors.joining(","));
         if (StringUtils.isNotEmpty(subjectIds)) {
             List<Subject> subjects = subjectService.findBySubjectByIdList(subjectIds);
             data.setSubjects(subjects);
@@ -518,6 +525,111 @@ public class TenantAlbumMusicServiceImpl extends ServiceImpl<TenantAlbumMusicMap
         return lessonCoursewareDetail;
     }
 
+    /**
+     * 关联课程类型
+     *
+     * @param query
+     */
+    @Override
+    public List<LessonCoursewareDetailWrapper.RefLevelDetailInfo> refLevel(LessonCoursewareDetailWrapper.RefLevelQuery query) {
+        if (query.getTenantId() == null) {
+            return new ArrayList<>();
+        }
+        // 查询机构可用专辑
+        TenantAlbumWrapper.TenantAlbumQuery build = TenantAlbumWrapper.TenantAlbumQuery.builder()
+            .status(true)
+            .tenantId(query.getTenantId())
+            .build();
+        List<TenantAlbumWrapper.TenantAlbum> tenantAlbums = tenantAlbumMapper.selectPage(new Page<>(1, -1), build);
+        if (CollectionUtils.isEmpty(tenantAlbums)) {
+            return new ArrayList<>();
+        }
+        List<String> tenantAlbumIds = tenantAlbums.stream().map(TenantAlbumWrapper.TenantAlbum::getId).collect(Collectors.toList());
+
+        List<LessonCoursewareDetailWrapper.RefLevelDetailInfo> result = new ArrayList<>();
+        // 查询出机构下的所有可用教材
+        List<TenantAlbumMusic> detail = tenantAlbumMusicService.lambdaQuery()
+            .eq(TenantAlbumMusic::getTenantId, query.getTenantId())
+            .in(TenantAlbumMusic::getTenantAlbumId, tenantAlbumIds)
+            .eq(TenantAlbumMusic::getSubjectType, SubjectTypeEnum.COURSEWARE)
+            .eq(TenantAlbumMusic::getDelFlag, false)
+            .list();
+        if (CollectionUtils.isEmpty(detail)) {
+            return new ArrayList<>();
+        }
+
+
+        // 根据机构,查询机构可以查看的所有课件,然后根据课件查询对应的课程类型
+        List<CbsLessonCoursewareDetailWrapper.Entity> entities = coursewareFeignService.lessonCoursewareDetailLambdaQuery(CbsLessonCoursewareDetailWrapper.LambdaQuery.builder()
+            .id(query.getLessonCoursewareDetailId())
+            .build()).feignData();
+        if (CollectionUtils.isEmpty(entities)) {
+            throw new BizException("课件不存在");
+        }
+        CbsLessonCoursewareDetailWrapper.Entity lessonCoursewareDetail = entities.get(0);
+
+        List<CbsLessonCoursewareWrapper.Entity> lessonCoursewareEntityList = coursewareFeignService.lessonCoursewareLambdaQuery(CbsLessonCoursewareWrapper.LambdaQuery.builder()
+            .id(lessonCoursewareDetail.getLessonCoursewareId())
+            .build()).feignData();
+        if (CollectionUtils.isEmpty(lessonCoursewareEntityList)) {
+            throw new BizException("课件不存在");
+        }
+        CbsLessonCoursewareWrapper.Entity lessonCourseware = lessonCoursewareEntityList.get(0);
+
+        CbsLessonCoursewareWrapper.LessonCoursewareQuery cbsQuery = new CbsLessonCoursewareWrapper.LessonCoursewareQuery();
+        cbsQuery.setEnableFlag(true);
+//        cbsQuery.setOrchestraType(lessonCourseware.getOrchestraType());
+        cbsQuery.setLessonCoursewareIds(detail.stream().map(TenantAlbumMusic::getMusicSheetId).distinct().collect(Collectors.toList()));
+        cbsQuery.setPage(1);
+        cbsQuery.setRows(9999);
+        cbsQuery.setLevel(lessonCourseware.getLevel());
+
+        List<CbsLessonCoursewareWrapper.LessonCourseware> lessonCoursewareList = coursewareFeignService.lessonCoursewarePage(cbsQuery).feignData().getRows();
+
+        // 转map
+        Map<Long, CbsLessonCoursewareWrapper.LessonCourseware> lessonCoursewareMap = lessonCoursewareList.stream().collect(Collectors.toMap(CbsLessonCoursewareWrapper.LessonCourseware::getId, o -> o));
+        List<Long> lessonCoursewareIds = lessonCoursewareList.stream().map(CbsLessonCoursewareWrapper.LessonCourseware::getId).collect(Collectors.toList());
+
+        // 查询可用的课件详情信息
+        if (lessonCoursewareDetail.getLevel() != null) {
+            List<CbsLessonCoursewareDetailWrapper.Entity> lessonCoursewareDetails = coursewareFeignService
+                .lessonCoursewareDetailLambdaQuery(CbsLessonCoursewareDetailWrapper.LambdaQuery.builder()
+                    .level(lessonCoursewareDetail.getLevel())
+                    .lessonCoursewareIds(lessonCoursewareIds)
+                    .build()).feignData();
+            if (org.springframework.util.CollectionUtils.isEmpty(lessonCoursewareDetails)) {
+                return new ArrayList<>();
+            }
+            for (CbsLessonCoursewareDetailWrapper.Entity coursewareDetail : lessonCoursewareDetails) {
+                LessonCoursewareDetailWrapper.RefLevelDetailInfo refLevelDetailInfo = new LessonCoursewareDetailWrapper.RefLevelDetailInfo();
+                refLevelDetailInfo.setId(coursewareDetail.getId().toString());
+                refLevelDetailInfo.setLessonCoursewareId(coursewareDetail.getLessonCoursewareId().toString());
+                CbsLessonCoursewareWrapper.LessonCourseware lessonCourseware1 = lessonCoursewareMap.get(coursewareDetail.getLessonCoursewareId());
+                if (lessonCourseware1 == null) {
+                    continue;
+                }
+                refLevelDetailInfo.setCoverImg(lessonCourseware1.getCoverImg());
+                refLevelDetailInfo.setCourseTypeCode(lessonCourseware1.getCourseTypeCode());
+                refLevelDetailInfo.setLockFlag(false);
+                refLevelDetailInfo.setLessonCoursewareName(lessonCourseware1.getName());
+                refLevelDetailInfo.setUseFlag(coursewareDetail.getId().equals(query.getLessonCoursewareDetailId()));
+                result.add(refLevelDetailInfo);
+            }
+        } else {
+            LessonCoursewareDetailWrapper.RefLevelDetailInfo refLevelDetailInfo = new LessonCoursewareDetailWrapper.RefLevelDetailInfo();
+            refLevelDetailInfo.setId(lessonCoursewareDetail.getId().toString());
+            refLevelDetailInfo.setLessonCoursewareId(lessonCoursewareDetail.getLessonCoursewareId().toString());
+            refLevelDetailInfo.setCoverImg(lessonCourseware.getCoverImg());
+            refLevelDetailInfo.setCourseTypeCode(lessonCourseware.getCourseTypeCode());
+            refLevelDetailInfo.setLockFlag(false);
+            refLevelDetailInfo.setLessonCoursewareName(lessonCourseware.getName());
+            refLevelDetailInfo.setUseFlag(true);
+            result.add(refLevelDetailInfo);
+        }
+        return result;
+
+    }
+
     private void filterMusicMaterialList(List<LessonCoursewareDetailWrapper.KnowledgePointSmall> knowledgePointList, List<Long> cbsMusicSheetIds) {
         if (CollectionUtils.isNotEmpty(knowledgePointList)) {
             for (LessonCoursewareDetailWrapper.KnowledgePointSmall knowledgePointSmall : knowledgePointList) {

+ 45 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/wrapper/LessonCoursewareDetailWrapper.java

@@ -93,6 +93,14 @@ public class LessonCoursewareDetailWrapper {
         @ApiModelProperty("更新时间")
         private Date updateTime;
 
+
+
+        @ApiModelProperty("阶段目标")
+        private String phaseGoals;
+
+        @ApiModelProperty("检查事项")
+        private String checkItem;
+        
         @ApiModelProperty("关联资源数据")
         private List<AddMaterialRef> materialRefs;
 
@@ -117,4 +125,41 @@ public class LessonCoursewareDetailWrapper {
         @ApiModelProperty("关联素材ID")
         private String resourceIdStr;
     }
+
+
+    @Data
+    public static class RefLevelDetailInfo{
+        @ApiModelProperty("课件ID")
+        private String id;
+
+        @ApiModelProperty("教材ID")
+        private String lessonCoursewareId;
+        @ApiModelProperty("教材名称")
+        private String lessonCoursewareName;
+
+
+        @ApiModelProperty("封面")
+        private String coverImg;
+
+        @ApiModelProperty("课程类型")
+        private String courseTypeCode;
+
+        @ApiModelProperty("是否锁定")
+        private Boolean lockFlag;
+
+        @ApiModelProperty("是否当前使用")
+        private Boolean useFlag;
+
+    }
+
+
+    @Data
+    public static class RefLevelQuery {
+
+        @ApiModelProperty(value = "课件详情ID",required = true)
+        private Long lessonCoursewareDetailId;
+
+        @ApiModelProperty(value = "机构ID",hidden = true)
+        private Long tenantId;
+    }
 }

+ 2 - 2
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/wrapper/TenantAlbumMusicWrapper.java

@@ -90,8 +90,8 @@ public class TenantAlbumMusicWrapper {
         @NotNull(message = "分类不能为空")
         private SubjectTypeEnum subjectType;
 
-        @ApiModelProperty(value = "用户ID", hidden = true)
-        private Long userId;
+//        @ApiModelProperty(value = "用户ID", hidden = true)
+//        private Long userId;
 
         @ApiModelProperty("声部id")
         private Long subjectId;

+ 4 - 0
cooleshow-user/user-biz/src/main/resources/config/mybatis/EmployeeMapper.xml

@@ -329,4 +329,8 @@
             #{userId}
         </foreach>
     </select>
+
+    <update id="updateSysUserIdCard">
+        UPDATE sys_user SET id_card_no_ = #{idCardNo} WHERE id_ = #{userId}
+    </update>
 </mapper>

+ 8 - 5
cooleshow-user/user-biz/src/main/resources/config/mybatis/TenantAlbumMusicMapper.xml

@@ -116,12 +116,15 @@
         from tenant_album_music t
         left join music_sheet m on t.music_sheet_id_ = m.id_ and find_in_set('TENANT',m.provider_type_)
         where
-        t.del_flag_ = 0 and m.tenant_del_flag_ =0 and m.tenant_state_ =1
+         t.del_flag_ = 0
         <if test="param.tenantAlbumId != null">
-            and t.tenant_album_id_ = #{param.tenantAlbumId}
+             and t.tenant_album_id_ = #{param.tenantAlbumId}
         </if>
         <if test="param.subjectType != null">
             and t.subject_type_ = #{param.subjectType}
+            <if test="param.subjectType.code != 'COURSEWARE'">
+               and m.tenant_del_flag_ =0 and m.tenant_state_ =1
+            </if>
         </if>
         <if test="albumIds != null and albumIds.size() != 0">
             and t.tenant_album_id_ in
@@ -131,7 +134,7 @@
         </if>
         <if test="param.subjectId != null">
             and ( find_in_set(#{param.subjectId},m.music_subject_) or m.music_subject_ is null or m.music_subject_ = ''
-            or t.subject_type_ not in  ('ENSEMBLE', 'MUSIC', 'SUBJECT') OR m.is_all_subject_)
+            or t.subject_type_ in  ('COURSEWARE') OR m.is_all_subject_)
         </if>
     </select>
 
@@ -140,12 +143,12 @@
         distinct t.music_sheet_id_
         from tenant_album_music t
         left join music_sheet t1 on t1.id_ = t.music_sheet_id_ and find_in_set('TENANT',t1.provider_type_)
-        where t.del_flag_ = 0
+        where   t.del_flag_ = 0 and ((t1.tenant_state_ = 1 and t1.tenant_del_flag_ = 0 and t.subject_type_ in ('ENSEMBLE', 'MUSIC', 'SUBJECT'))
+        or t.subject_type_ not in ('ENSEMBLE', 'MUSIC', 'SUBJECT'))
         and t.tenant_album_id_ in
         <foreach collection="tenantAlbumIds" item="item" index="index" open="(" close=")" separator=",">
             #{item}
         </foreach>
-        and ( t.subject_type_ in  ('ENSEMBLE', 'MUSIC', 'SUBJECT') and t1.tenant_del_flag_ =0 and t1.tenant_state_ = 1)
         and t.subject_type_ in
         <foreach collection="subjectTypes" item="item" index="index" open="(" close=")" separator=",">
             #{item.code}

+ 1 - 1
pom.xml

@@ -23,7 +23,7 @@
 		<google.zxing.version>3.4.0</google.zxing.version>
 		<redisson.version>3.11.5</redisson.version>
 		<maven.test.skip>true</maven.test.skip>
-		<cbs.version>1.0.16</cbs.version>
+		<cbs.version>1.0.19</cbs.version>
 		<microsvc.version>1.1.4</microsvc.version>
 	</properties>