|
|
@@ -1,20 +1,23 @@
|
|
|
package cn.iocoder.byzs.module.bjdx.service.coursetype;
|
|
|
|
|
|
+import cn.hutool.core.collection.CollUtil;
|
|
|
+import cn.iocoder.byzs.framework.common.enums.CommonStatusEnum;
|
|
|
+import cn.iocoder.byzs.framework.common.util.object.BeanUtils;
|
|
|
import cn.iocoder.byzs.module.bjdx.controller.admin.coursetype.vo.CourseTypeListReqVO;
|
|
|
import cn.iocoder.byzs.module.bjdx.controller.admin.coursetype.vo.CourseTypeSaveReqVO;
|
|
|
-import org.springframework.stereotype.Service;
|
|
|
+import cn.iocoder.byzs.module.bjdx.dal.dataobject.course.CourseDO;
|
|
|
+import cn.iocoder.byzs.module.bjdx.dal.dataobject.coursetype.CourseTypeDO;
|
|
|
+import cn.iocoder.byzs.module.bjdx.dal.mysql.course.CourseMapper;
|
|
|
+import cn.iocoder.byzs.module.bjdx.dal.mysql.coursetype.CourseTypeMapper;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import jakarta.annotation.Resource;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
import org.springframework.validation.annotation.Validated;
|
|
|
|
|
|
-import java.util.*;
|
|
|
-import cn.iocoder.byzs.module.bjdx.controller.admin.coursetype.vo.*;
|
|
|
-import cn.iocoder.byzs.module.bjdx.dal.dataobject.coursetype.CourseTypeDO;
|
|
|
-import cn.iocoder.byzs.framework.common.util.object.BeanUtils;
|
|
|
-
|
|
|
-import cn.iocoder.byzs.module.bjdx.dal.mysql.coursetype.CourseTypeMapper;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Objects;
|
|
|
|
|
|
import static cn.iocoder.byzs.framework.common.exception.util.ServiceExceptionUtil.exception;
|
|
|
-import static cn.iocoder.byzs.framework.common.util.collection.CollectionUtils.convertList;
|
|
|
import static cn.iocoder.byzs.module.bjdx.enums.ErrorCodeConstants.*;
|
|
|
|
|
|
/**
|
|
|
@@ -29,6 +32,9 @@ public class CourseTypeServiceImpl implements CourseTypeService {
|
|
|
@Resource
|
|
|
private CourseTypeMapper courseTypeMapper;
|
|
|
|
|
|
+ @Resource
|
|
|
+ private CourseMapper courseMapper;
|
|
|
+
|
|
|
@Override
|
|
|
public Long createCourseType(CourseTypeSaveReqVO createReqVO) {
|
|
|
// 校验课程类型父级id的有效性
|
|
|
@@ -41,7 +47,22 @@ public class CourseTypeServiceImpl implements CourseTypeService {
|
|
|
courseTypeMapper.insert(courseType);
|
|
|
// 校验引入的课程历史id的有效性
|
|
|
if (createReqVO.getHistoryCourseTypeId() != null) {
|
|
|
- //查询类型下的所有课程小节,批量插入
|
|
|
+
|
|
|
+ List<CourseDO> courseHistoryList = courseMapper.selectList(
|
|
|
+ new LambdaQueryWrapper<CourseDO>()
|
|
|
+ .eq(CourseDO::getCourseType, createReqVO.getHistoryCourseTypeId())
|
|
|
+ .eq(CourseDO::getCourseStatus, CommonStatusEnum.ENABLE.getStatus())
|
|
|
+ .select(CourseDO::getCourseName, CourseDO::getCourseContentType, CourseDO::getCourseLabel,
|
|
|
+ CourseDO::getCourseImagePath, CourseDO::getCourseVideoPath,
|
|
|
+ CourseDO::getCourseMusicPath, CourseDO::getCourseFilePath,
|
|
|
+ CourseDO::getCourseContent, CourseDO::getCourseOrder, CourseDO::getCourseStatus,
|
|
|
+ CourseDO::getCourseTime, CourseDO::getCourseIsInspect)
|
|
|
+ .orderByAsc(CourseDO::getCourseOrder));
|
|
|
+ // 批量插入
|
|
|
+ if (CollUtil.isNotEmpty(courseHistoryList)) {
|
|
|
+ courseHistoryList.forEach(item -> item.setCourseType(courseType.getId()));
|
|
|
+ courseMapper.insertBatch(courseHistoryList);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
// 返回
|