瀏覽代碼

Merge branch 'master' of http://git.dayaedu.com/yonge/cooleshow

# Conflicts:
#	cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/SubjectDao.java
#	cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/SubjectServiceImpl.java
yonge 3 年之前
父節點
當前提交
65069e79f9
共有 14 個文件被更改,包括 137 次插入55 次删除
  1. 5 5
      cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/service/impl/SysUserServiceImpl.java
  2. 0 22
      cooleshow-common/src/main/java/com/yonge/cooleshow/common/entity/HttpResponseResult.java
  3. 8 4
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/VideoLessonGroup.java
  4. 5 3
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/VideoLessonGroupDetail.java
  5. 0 2
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/TeacherTypeEnum.java
  6. 4 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/VideoLessonGroupService.java
  7. 9 9
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/SubjectServiceImpl.java
  8. 7 4
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/TeacherServiceImpl.java
  9. 56 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/VideoLessonGroupServiceImpl.java
  10. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/MusicianAuthEntryRecordVo.java
  11. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/TeacherAuthEntryRecordVo.java
  12. 1 1
      cooleshow-user/user-student/src/main/java/com/yonge/cooleshow/student/controller/StudentController.java
  13. 1 1
      cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/TeacherController.java
  14. 39 2
      cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/VideoLessonGroupController.java

+ 5 - 5
cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/service/impl/SysUserServiceImpl.java

@@ -9,6 +9,7 @@ import com.yonge.cooleshow.auth.api.vo.UserSetVo;
 import com.yonge.toolset.utils.idcard.IdcardInfoExtractor;
 import org.apache.commons.lang3.StringUtils;
 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;
 
@@ -144,9 +145,11 @@ public class SysUserServiceImpl extends BaseServiceImpl<Long, SysUser> implement
     @Override
     @Transactional(rollbackFor = Exception.class)
     public SysUserInfo registerUser(String phone, String clientId) {
+        SysUser sysUser = new SysUser();
+        sysUser.setPhone(phone);
+        String password = sysUser.getPhone().substring(sysUser.getPhone().length() - 6);
+        sysUser.setPassword(new BCryptPasswordEncoder().encode(password));
         if (StringUtils.equalsIgnoreCase(clientId, "TEACHER")) {
-            SysUser sysUser = new SysUser();
-            sysUser.setPhone(phone);
             sysUser.setUserType("TEACHER");
             sysUserDao.insert(sysUser);
             //添加用户现金账户
@@ -157,10 +160,7 @@ public class SysUserServiceImpl extends BaseServiceImpl<Long, SysUser> implement
             sysUserDao.insertTeacher(sysUser.getId());
             return queryUserInfoByPhone(phone);
         } else if (StringUtils.equalsIgnoreCase(clientId, "STUDENT")) {
-            SysUser sysUser = new SysUser();
-            sysUser.setPhone(phone);
             sysUser.setUserType("STUDENT");
-
             sysUserDao.insert(sysUser);
             sysUserService.saveStudent(sysUser.getId());
             return queryUserInfoByPhone(phone);

+ 0 - 22
cooleshow-common/src/main/java/com/yonge/cooleshow/common/entity/HttpResponseResult.java

@@ -1,29 +1,7 @@
 package com.yonge.cooleshow.common.entity;
 
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONObject;
-import com.yonge.cooleshow.common.exception.BizException;
-import com.yonge.toolset.thirdparty.exception.ThirdpartyException;
-import com.yonge.toolset.utils.http.HttpUtil;
-import org.apache.commons.codec.binary.Base64;
-import org.apache.commons.lang3.StringUtils;
-import org.apache.commons.lang3.exception.ExceptionUtils;
-import org.springframework.context.support.DefaultMessageSourceResolvable;
 import org.springframework.http.HttpStatus;
-import org.springframework.security.access.AccessDeniedException;
-import org.springframework.validation.BindException;
-import org.springframework.validation.FieldError;
-import org.springframework.web.bind.MethodArgumentNotValidException;
-import org.springframework.web.bind.annotation.ExceptionHandler;
-
-import javax.crypto.Mac;
-import javax.crypto.spec.SecretKeySpec;
-import javax.servlet.http.HttpServletRequest;
-import java.net.URLEncoder;
 import java.util.Date;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.stream.Collectors;
 
 /**
  * HttpResponse 返回结果

+ 8 - 4
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/VideoLessonGroup.java

@@ -1,11 +1,14 @@
 package com.yonge.cooleshow.biz.dal.entity;
 
+import com.yonge.cooleshow.biz.dal.valid.AddGroup;
+import com.yonge.cooleshow.biz.dal.valid.UpdateGroup;
 import com.yonge.cooleshow.common.entity.BaseEntity;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
+import jdk.internal.org.objectweb.asm.tree.analysis.Value;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 
 import javax.validation.constraints.NotBlank;
@@ -22,11 +25,12 @@ public class VideoLessonGroup extends BaseEntity {
 
     @TableId(value = "id_", type = IdType.AUTO)
     @ApiModelProperty(value = "主键id")
+	@NotNull(message = "组id不能为空;",groups = {UpdateGroup.class})
     private Long id;  //主键ID
 
     @TableField("lesson_name_")
     @ApiModelProperty(value = "课程名称",required = true)
-	@NotBlank(message = "课程名称不能为空;")
+	@NotBlank(message = "课程名称不能为空;",groups = {AddGroup.class,UpdateGroup.class})
     private String lessonName;  //课程名称
 
     @TableField("lesson_subject_")
@@ -35,17 +39,17 @@ public class VideoLessonGroup extends BaseEntity {
 
     @TableField("lesson_desc_")
     @ApiModelProperty(value = "课程介绍",required = true)
-	@NotBlank(message = "课程介绍不能为空;")
+	@NotBlank(message = "课程介绍不能为空;",groups = {AddGroup.class,UpdateGroup.class})
     private String lessonDesc;  //课程介绍
 
     @TableField("lesson_price_")
     @ApiModelProperty(value = "课程价格",required = true)
-	@NotNull(message = "课程价格不能为空;")
+	@NotNull(message = "课程价格不能为空;",groups = {AddGroup.class,UpdateGroup.class})
     private Integer lessonPrice;  //课程价格
 
     @TableField("lesson_cover_url_")
     @ApiModelProperty(value = "课程封面图片URL",required = true)
-	@NotBlank(message = "课程封面图片URL不能为空;")
+	@NotBlank(message = "课程封面图片URL不能为空;",groups = {AddGroup.class,UpdateGroup.class})
     private String lessonCoverUrl;  //课程封面图片URL
 
     @TableField("teacher_id_")

+ 5 - 3
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/VideoLessonGroupDetail.java

@@ -1,5 +1,7 @@
 package com.yonge.cooleshow.biz.dal.entity;
 
+import com.yonge.cooleshow.biz.dal.valid.AddGroup;
+import com.yonge.cooleshow.biz.dal.valid.UpdateGroup;
 import com.yonge.cooleshow.common.entity.BaseEntity;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
@@ -30,17 +32,17 @@ public class VideoLessonGroupDetail extends BaseEntity {
 
     @TableField("video_title_")
     @ApiModelProperty(value = "视频标题", required = true)
-    @NotBlank(message = "课程标题不能为空;")
+    @NotBlank(message = "课程标题不能为空;",groups = {AddGroup.class,UpdateGroup.class})
     private String videoTitle;  //视频标题
 
     @TableField("video_content_")
     @ApiModelProperty(value = "视频内容", required = true)
-    @NotBlank(message = "课程内容不能为空;")
+    @NotBlank(message = "课程内容不能为空;",groups = {AddGroup.class,UpdateGroup.class})
     private String videoContent;  //视频内容
 
     @TableField("video_url_")
     @ApiModelProperty(value = "视频文件URL", required = true)
-    @NotBlank(message = "课程视频URL不能为空;")
+    @NotBlank(message = "课程视频URL不能为空;",groups = {AddGroup.class,UpdateGroup.class})
     private String videoUrl;  //视频文件URL
 
     @TableField("cover_url_")

+ 0 - 2
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/TeacherTypeEnum.java

@@ -65,8 +65,6 @@ public enum TeacherTypeEnum implements BaseEnum<String, TeacherTypeEnum> {
         }
         if (teacherType.length() > 0) {
             teacherType = teacherType.substring(1);
-        } else {
-            teacherType = TeacherTypeEnum.TOURIST.getCode();
         }
         return teacherType;
     }

+ 4 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/VideoLessonGroupService.java

@@ -28,4 +28,8 @@ public interface VideoLessonGroupService extends IService<VideoLessonGroup> {
     IPage<VideoLessonTeacherVo> selectTeacherPage(IPage<VideoLessonTeacherVo> page, VideoLessonSearch search);
 
     IPage<VideoLessonPurchaseVo> selectPurchaseStudent(IPage<VideoLessonPurchaseVo> page, VideoLessonSearch search);
+
+    VideoLessonStudentVo selectVideoLesson(Long groupId);
+
+    void update(VideoLessonVo lessonVo, SysUser sysUser);
 }

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

@@ -1,24 +1,24 @@
 package com.yonge.cooleshow.biz.dal.service.impl;
 
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
+import java.util.*;
 import java.util.stream.Collectors;
 
+import com.yonge.cooleshow.biz.dal.vo.SubjectSelectVo;
+
 import org.apache.commons.beanutils.BeanUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
-import org.springframework.util.CollectionUtils;
 
 import com.yonge.cooleshow.biz.dal.dao.SubjectDao;
 import com.yonge.cooleshow.biz.dal.entity.Subject;
+import com.yonge.cooleshow.biz.dal.enums.YesOrNoEnum;
 import com.yonge.cooleshow.biz.dal.queryInfo.SubjectQueryInfo;
 import com.yonge.cooleshow.biz.dal.service.SubjectService;
-import com.yonge.cooleshow.biz.dal.vo.SubjectSelectVo;
 import com.yonge.cooleshow.common.dal.BaseDAO;
 import com.yonge.cooleshow.common.page.PageInfo;
 import com.yonge.cooleshow.common.service.impl.BaseServiceImpl;
+import org.springframework.util.CollectionUtils;
 
 @Service
 public class SubjectServiceImpl extends BaseServiceImpl<Long, Subject> implements SubjectService {
@@ -138,17 +138,17 @@ public class SubjectServiceImpl extends BaseServiceImpl<Long, Subject> implement
      * @updateTime 2022/4/6 11:33
      * @return: com.yonge.cooleshow.biz.dal.entity.Subject
      */
-    private Subject getTree(Subject sub, boolean yesOrNoEnum) {
+    private Subject getTree(Subject sub, Boolean delFlag) {
         //得到根节点对象
         //获取子节点list
-        List<Subject> subjects = subjectDao.findByParentId(sub.getId(), yesOrNoEnum);
+        List<Subject> subjects = subjectDao.findByParentId(sub.getId(), delFlag);
         //如果存在子节点
         if (subjects != null && subjects.size() > 0) {
             //将子节点list放入父节点对象
             sub.setSubjects(subjects);
             //遍历子节点....
             for (Subject subject : subjects) {
-                getTree(subject, yesOrNoEnum);
+                getTree(subject, delFlag);
             }
         }
         return sub;

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

@@ -82,7 +82,8 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
 
     @Override
     public IPage<TeacherVo> selectPage(IPage<TeacherVo> page, TeacherSearch search) {
-        return page.setRecords(baseMapper.selectPage(page, search));
+        List<TeacherVo> teacherVos = baseMapper.selectPage(page, search);
+        return page.setRecords(teacherVos);
     }
 
     @Override
@@ -115,7 +116,7 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
         }
         teacherHomeVo.setHeardUrl(avatar);
 
-        TeacherAuthEntryRecord entryRecord = entryRecordService.getLastRecordByUserId(user.getId());
+        TeacherAuthEntryRecordVo entryRecord = entryRecordService.getLastRecordByUserId(user.getId());
         if (null == entryRecord) {
             teacherHomeVo.setEntryStatus(AuthStatusEnum.UNPAALY);
         } else {
@@ -299,12 +300,14 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
      */
     private Teacher getTeacherDetil(Teacher teacher, TeacherSubmitReq teacherSubmitReq) {
         teacher.setSubjectId(teacherSubmitReq.getSubjectId());
-
-        String[] teacherTypes = teacherSubmitReq.getTeacherType().split(",");
         teacher.setEntryFlag(YesOrNoEnum.NO);
         teacher.setEntryAuthDate(null);
         teacher.setMusicianFlag(YesOrNoEnum.NO);
         teacher.setMusicianDate(null);
+        if(StringUtil.isEmpty(teacherSubmitReq.getTeacherType())){
+            return teacher;
+        }
+        String[] teacherTypes = teacherSubmitReq.getTeacherType().split(",");
         for (String teacherType : teacherTypes) {
             if (TeacherTypeEnum.ENTRY.getCode().equals(teacherType)) {
                 teacher.setEntryFlag(YesOrNoEnum.YES);

+ 56 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/VideoLessonGroupServiceImpl.java

@@ -8,6 +8,7 @@ import com.yonge.cooleshow.biz.dal.dto.search.VideoLessonSearch;
 import com.yonge.cooleshow.biz.dal.entity.VideoLessonGroup;
 import com.yonge.cooleshow.biz.dal.dao.VideoLessonGroupDao;
 import com.yonge.cooleshow.biz.dal.entity.VideoLessonGroupDetail;
+import com.yonge.cooleshow.biz.dal.enums.AuditEnum;
 import com.yonge.cooleshow.biz.dal.service.VideoLessonGroupService;
 import com.yonge.cooleshow.biz.dal.vo.*;
 import org.slf4j.Logger;
@@ -130,4 +131,59 @@ public class VideoLessonGroupServiceImpl extends ServiceImpl<VideoLessonGroupDao
     public IPage<VideoLessonPurchaseVo> selectPurchaseStudent(IPage<VideoLessonPurchaseVo> page, VideoLessonSearch search) {
         return page.setRecords(baseMapper.selectPurchaseStudent(page, search));
     }
+
+    /**
+     * @Description: 根据组id查询视频课&视频课组
+     * @Author: cy
+     * @Date: 2022/4/7
+     */
+    @Override
+    public VideoLessonStudentVo selectVideoLesson(Long groupId) {
+        VideoLessonStudentVo lessonStudentVo = new VideoLessonStudentVo();
+
+        VideoLessonGroupSearch query = new VideoLessonGroupSearch();
+        query.setGroupId(groupId);
+        List<VideoLessonGroupVo> lessonGroup = videoLessonGroupDao.selectPage(null, query);
+        if (lessonGroup.isEmpty()){
+            return lessonStudentVo;
+        }
+        lessonStudentVo.setLessonGroup(lessonGroup.get(0));
+
+        VideoLessonSearch search = new VideoLessonSearch();
+        search.setVideoLessonGroupId(groupId);
+        lessonStudentVo.setDetailList(videoLessonGroupDetailDao.selectPage(null, search));
+        return lessonStudentVo;
+    }
+
+    /**
+     * @Description: 修改视频课组&视频课
+     * @Author: cy
+     * @Date: 2022/4/7
+     */
+    @Override
+    public void update(VideoLessonVo lessonVo, SysUser sysUser) {
+        VideoLessonGroup lessonGroup = lessonVo.getLessonGroup();
+        List<VideoLessonGroupDetail> lessonList = lessonVo.getLessonList();
+
+        //清除原有组&课
+        videoLessonGroupDao.deleteById(lessonGroup.getId());
+        videoLessonGroupDetailDao.deleteByGroupId(lessonGroup.getId());
+
+        //添加组
+        lessonGroup.setTeacherId(sysUser.getId());
+        videoLessonGroupDao.insert(lessonGroup);
+
+        for (VideoLessonGroupDetail detail : lessonList) {
+            detail.setVideoLessonGroupId(lessonGroup.getId());
+            detail.setTeacherId(sysUser.getId());
+        }
+
+        //添加课程
+        videoLessonGroupDetailDao.insertVideoLesson(lessonList);
+
+        //刷新统计
+        VideoLessonGroupUpVo groupUpVo = new VideoLessonGroupUpVo();
+        groupUpVo.setId(lessonGroup.getId());
+        videoLessonGroupDao.updateGroup(groupUpVo);
+    }
 }

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/MusicianAuthEntryRecordVo.java

@@ -8,7 +8,7 @@ import io.swagger.annotations.ApiModelProperty;
  * @Author: liweifan
  * @Data: 2022/3/21 13:34
  */
-@ApiModel(value = "TeacherAuthEntryRecordVo对象", description = "老师入驻审核详情")
+@ApiModel(value = "MusicianAuthEntryRecordVo对象", description = "音乐人审核详情")
 public class MusicianAuthEntryRecordVo extends TeacherAuthMusicianRecord {
 
     @ApiModelProperty(value = "真实姓名")

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/TeacherAuthEntryRecordVo.java

@@ -11,7 +11,7 @@ import io.swagger.annotations.ApiModelProperty;
  */
 @ApiModel(value = "TeacherAuthEntryRecordVo对象", description = "老师入驻审核详情")
 public class TeacherAuthEntryRecordVo extends TeacherAuthEntryRecord {
-    private static final long serialVersionUID = 1123L;
+    private static final long serialVersionUID = 1L;
 
     @ApiModelProperty(value = "真实姓名")
     private String realName;

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

@@ -50,7 +50,7 @@ public class StudentController extends BaseController {
     }
 
     @ApiOperation(value = "设置声部")
-    @PostMapping("/setSubject")
+    @GetMapping("/setSubject")
     public HttpResponseResult<List<SubjectSelectVo>> setSubject(@ApiParam(value = "声部主键集合", required = true) @RequestParam("subjectIds") String subjectIds) {
         if (StringUtil.isEmpty(subjectIds)) {
             return failed("参数不能为空");

+ 1 - 1
cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/TeacherController.java

@@ -58,7 +58,7 @@ public class TeacherController extends BaseController {
     }
 
     @ApiOperation(value = "设置声部")
-    @PostMapping("/setSubject")
+    @GetMapping("/setSubject")
     public HttpResponseResult<List<SubjectSelectVo>> setSubject(@ApiParam(value = "声部主键集合", required = true) @RequestParam("subjectIds") String subjectIds) {
         if (StringUtil.isEmpty(subjectIds)) {
             return failed("参数不能为空");

+ 39 - 2
cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/VideoLessonGroupController.java

@@ -2,9 +2,13 @@ package com.yonge.cooleshow.teacher.controller;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.yonge.cooleshow.biz.dal.dto.search.VideoLessonGroupSearch;
+import com.yonge.cooleshow.biz.dal.service.VideoLessonGroupDetailService;
 import com.yonge.cooleshow.biz.dal.support.PageUtil;
+import com.yonge.cooleshow.biz.dal.valid.AddGroup;
+import com.yonge.cooleshow.biz.dal.valid.UpdateGroup;
 import com.yonge.cooleshow.biz.dal.vo.VideoLessonGroupUpVo;
 import com.yonge.cooleshow.biz.dal.vo.VideoLessonGroupVo;
+import com.yonge.cooleshow.biz.dal.vo.VideoLessonStudentVo;
 import com.yonge.cooleshow.biz.dal.vo.VideoLessonVo;
 import com.yonge.cooleshow.common.page.PageInfo;
 import io.swagger.annotations.Api;
@@ -20,6 +24,8 @@ import com.yonge.cooleshow.biz.dal.service.VideoLessonGroupService;
 import com.yonge.cooleshow.auth.api.entity.SysUser;
 import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
 
+import javax.validation.constraints.NotNull;
+
 /**
  * 视频课基本信息表 web 控制层
  * @author yzp
@@ -72,7 +78,7 @@ public class VideoLessonGroupController extends BaseController {
     * @Date: 2022/3/31
     */
     @ApiOperation(value = "修改视频课组", httpMethod = "POST", consumes = "application/json", produces = "application/json")
-    @PostMapping(value = "/update", consumes = "application/json", produces = "application/json")
+    @PostMapping(value = "/updateGroup", consumes = "application/json", produces = "application/json")
     public HttpResponseResult<Object> update(@Validated @RequestBody VideoLessonGroupUpVo lessonGroupUpVo) {
         videoLessonGroupService.updateGroup(lessonGroupUpVo);
         return succeed();
@@ -97,7 +103,7 @@ public class VideoLessonGroupController extends BaseController {
     */
     @ApiOperation(value = "新增视频课组&视频课", httpMethod = "POST", consumes = "application/json", produces = "application/json")
     @PostMapping(value = "/add", consumes = "application/json", produces = "application/json")
-    public HttpResponseResult<Object> add(@Validated @RequestBody VideoLessonVo lessonVo) {
+    public HttpResponseResult<Object> add(@Validated(AddGroup.class) @RequestBody VideoLessonVo lessonVo) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
 
         if (sysUser == null||sysUser.getId()==null) {
@@ -109,4 +115,35 @@ public class VideoLessonGroupController extends BaseController {
         videoLessonGroupService.add(lessonVo,sysUser);
         return succeed();
     }
+
+    /**
+     * @Description: 根据组id查询视频课&视频课组
+     * @Author: cy
+     * @Date: 2022/4/2
+     */
+    @ApiOperation(value = "根据组id查询视频课&视频课组")
+    @GetMapping(value="/selectVideoLesson")
+    public HttpResponseResult<VideoLessonStudentVo> selectVideoLesson(@NotNull(message = "视频组id不能为空") Long groupId) {
+        return succeed(videoLessonGroupService.selectVideoLesson(groupId));
+    }
+
+    /**
+     * @Description: 修改视频课组&视频课
+     * @Author: cy
+     * @Date: 2022/4/7
+     */
+    @ApiOperation(value = "修改视频课组&视频课", httpMethod = "POST", consumes = "application/json", produces = "application/json")
+    @PostMapping(value = "/update", consumes = "application/json", produces = "application/json")
+    public HttpResponseResult<Object> update(@Validated(UpdateGroup.class) @RequestBody VideoLessonVo lessonVo) {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+
+        if (sysUser == null||sysUser.getId()==null) {
+            return failed("用户信息获取失败");
+        }
+        if (lessonVo.getLessonList().isEmpty()) {
+            return failed("课程不能为空");
+        }
+        videoLessonGroupService.update(lessonVo,sysUser);
+        return succeed();
+    }
 }