Merge remote-tracking branch 'origin/beetlsql3-dev' into beetlsql3-dev

beetlsql3-dev
姚丹ab 2 years ago
commit 1c18217c45

@ -1,5 +1,6 @@
package com.ibeetl.jlw.service;
import cn.hutool.core.bean.BeanUtil;
import cn.jlw.util.ToolUtils;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
@ -9,6 +10,7 @@ import com.ibeetl.admin.core.util.PlatformException;
import com.ibeetl.admin.core.web.JsonResult;
import com.ibeetl.admin.core.web.JsonReturnCode;
import com.ibeetl.jlw.dao.TeacherOpenCourseMergeCourseInfoDao;
import com.ibeetl.jlw.entity.CourseInfo;
import com.ibeetl.jlw.entity.FileEntity;
import com.ibeetl.jlw.entity.TeacherOpenCourseMergeCourseInfo;
import com.ibeetl.jlw.web.query.TeacherOpenCourseMergeCourseInfoQuery;
@ -25,10 +27,14 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.io.*;
import java.util.*;
import static com.ibeetl.admin.core.util.ExcelUtil.getCellFormatValue;
import static com.ibeetl.admin.core.util.user.CacheUserUtil.getUser;
import static java.util.stream.Collectors.toSet;
/**
* Service
@ -41,6 +47,8 @@ import static com.ibeetl.admin.core.util.ExcelUtil.getCellFormatValue;
public class TeacherOpenCourseMergeCourseInfoService extends CoreBaseService<TeacherOpenCourseMergeCourseInfo>{
@Autowired private TeacherOpenCourseMergeCourseInfoDao teacherOpenCourseMergeCourseInfoDao;
@Autowired private CourseInfoService courseInfoService;
@Autowired private TeacherOpenCourseMergeResourcesQuestionService teacherOpenCourseMergeResourcesQuestionService;
public PageQuery<TeacherOpenCourseMergeCourseInfo>queryByCondition(PageQuery query){
PageQuery ret = teacherOpenCourseMergeCourseInfoDao.queryByCondition(query);
@ -188,8 +196,8 @@ public class TeacherOpenCourseMergeCourseInfoService extends CoreBaseService<Tea
}
try {
if(null != is){
is.close();
}
is.close();
}
}catch (Exception e){
e.printStackTrace();
}
@ -204,21 +212,21 @@ public class TeacherOpenCourseMergeCourseInfoService extends CoreBaseService<Tea
int colNum = firstRow.getPhysicalNumberOfCells();
String columns[] = {
"开课",
"名称",
"课程缩略图",
"课程标签",
"课程学习人数基数",
"课程简介",
"状态",
"类型",
"父节点",
"视频",
"课件",
"附件IDs",
"客观题IDs",
"竞赛题IDs",
"实训题IDs",
"开课",
"名称",
"课程缩略图",
"课程标签",
"课程学习人数基数",
"课程简介",
"状态",
"类型",
"父节点",
"视频",
"课件",
"附件IDs",
"客观题IDs",
"竞赛题IDs",
"实训题IDs",
};
Map<String,Integer> map = new HashMap<>();//获取需要的表头的列
@ -332,27 +340,27 @@ public class TeacherOpenCourseMergeCourseInfoService extends CoreBaseService<Tea
continue;
}else
{
//TODO 保存
TeacherOpenCourseMergeCourseInfo teacherOpenCourseMergeCourseInfo = new TeacherOpenCourseMergeCourseInfo();
teacherOpenCourseMergeCourseInfo.setTeacherOpenCourseId(Long.parseLong(teacherOpenCourseId));
teacherOpenCourseMergeCourseInfo.setCourseInfoName(courseInfoName);
teacherOpenCourseMergeCourseInfo.setCourseInfoThumbnail(courseInfoThumbnail);
teacherOpenCourseMergeCourseInfo.setCourseLabelId(Long.parseLong(courseLabelId));
teacherOpenCourseMergeCourseInfo.setCourseInfoBasicsCount(Integer.parseInt(courseInfoBasicsCount));
teacherOpenCourseMergeCourseInfo.setCourseInfoContent(courseInfoContent);
teacherOpenCourseMergeCourseInfo.setCourseInfoStatus(Integer.parseInt(courseInfoStatus));
teacherOpenCourseMergeCourseInfo.setCourseInfoType(Integer.parseInt(courseInfoType));
teacherOpenCourseMergeCourseInfo.setCourseInfoParentId(Long.parseLong(courseInfoParentId));
teacherOpenCourseMergeCourseInfo.setCourseVideoId(Long.parseLong(courseVideoId));
teacherOpenCourseMergeCourseInfo.setCourseCoursewareId(Long.parseLong(courseCoursewareId));
teacherOpenCourseMergeCourseInfo.setCourseEnclosureIds(courseEnclosureIds);
teacherOpenCourseMergeCourseInfo.setResourcesQuestionIds(resourcesQuestionIds);
teacherOpenCourseMergeCourseInfo.setResourcesCompetitionIds(resourcesCompetitionIds);
teacherOpenCourseMergeCourseInfo.setResourcesTrainingIds(resourcesTrainingIds);
teacherOpenCourseMergeCourseInfo.setOrgId(coreUser.getOrgId());
teacherOpenCourseMergeCourseInfo.setUserId(coreUser.getId());
count++;
//TODO 保存
TeacherOpenCourseMergeCourseInfo teacherOpenCourseMergeCourseInfo = new TeacherOpenCourseMergeCourseInfo();
teacherOpenCourseMergeCourseInfo.setTeacherOpenCourseId(Long.parseLong(teacherOpenCourseId));
teacherOpenCourseMergeCourseInfo.setCourseInfoName(courseInfoName);
teacherOpenCourseMergeCourseInfo.setCourseInfoThumbnail(courseInfoThumbnail);
teacherOpenCourseMergeCourseInfo.setCourseLabelId(Long.parseLong(courseLabelId));
teacherOpenCourseMergeCourseInfo.setCourseInfoBasicsCount(Integer.parseInt(courseInfoBasicsCount));
teacherOpenCourseMergeCourseInfo.setCourseInfoContent(courseInfoContent);
teacherOpenCourseMergeCourseInfo.setCourseInfoStatus(Integer.parseInt(courseInfoStatus));
teacherOpenCourseMergeCourseInfo.setCourseInfoType(Integer.parseInt(courseInfoType));
teacherOpenCourseMergeCourseInfo.setCourseInfoParentId(Long.parseLong(courseInfoParentId));
teacherOpenCourseMergeCourseInfo.setCourseVideoId(Long.parseLong(courseVideoId));
teacherOpenCourseMergeCourseInfo.setCourseCoursewareId(Long.parseLong(courseCoursewareId));
teacherOpenCourseMergeCourseInfo.setCourseEnclosureIds(courseEnclosureIds);
teacherOpenCourseMergeCourseInfo.setResourcesQuestionIds(resourcesQuestionIds);
teacherOpenCourseMergeCourseInfo.setResourcesCompetitionIds(resourcesCompetitionIds);
teacherOpenCourseMergeCourseInfo.setResourcesTrainingIds(resourcesTrainingIds);
teacherOpenCourseMergeCourseInfo.setOrgId(coreUser.getOrgId());
teacherOpenCourseMergeCourseInfo.setUserId(coreUser.getId());
count++;
}
}
}
@ -371,4 +379,68 @@ public class TeacherOpenCourseMergeCourseInfoService extends CoreBaseService<Tea
}
/**
* -
*
*
* @param courseInfoIds ID
* @param teacherOpenCourseId iD
* @return
*/
public void copyFromCourseInfo(@NotEmpty(message = "系统课程ID不能为空") Set<Long> courseInfoIds,
@NotNull(message = "开课ID不能为空") final Long teacherOpenCourseId) {
// 开启并行处理
courseInfoIds.stream().parallel().forEach(courseInfoId -> {
List<CourseInfo> chapterList = courseInfoService.getChapterList(courseInfoId);
// 拷贝
List<TeacherOpenCourseMergeCourseInfo> copyToList =
BeanUtil.copyToList(chapterList, TeacherOpenCourseMergeCourseInfo.class);
// 设置开课ID
copyToList.forEach(item -> item.setTeacherOpenCourseId(teacherOpenCourseId));
// 批量插入
teacherOpenCourseMergeCourseInfoDao.insertBatch(copyToList);
});
}
/**
* -
*
*
*
* @param courseInfoIds ID
* @param teacherOpenCourseId iD
* @return
*/
public void importCourseInfo(@NotEmpty(message = "系统课程ID不能为空") Set<Long> courseInfoIds,
@NotNull(message = "开课ID不能为空") final Long teacherOpenCourseId) {
// 拷贝课程章节
copyFromCourseInfo(courseInfoIds, teacherOpenCourseId);
// 开启并行处理
courseInfoIds.stream().parallel().forEach(courseInfoId -> {
// 获取这个课程章节下的所有的子章节信息
List<CourseInfo> chapterList = courseInfoService.getChapterList(Long.valueOf(courseInfoId));
// 取出来所有的课程章节ID
Set<Long> cids = chapterList.stream().map(CourseInfo::getCourseInfoId).collect(toSet());
// 拷贝所有的题目关联到指定的开课下
teacherOpenCourseMergeResourcesQuestionService.copyFromQuestion(cids, teacherOpenCourseId);
});
}
/**
* -
* -
*
* ID
*
* @return
*/
public Object systemCourseInfoByUniversitySystem() {
CoreUser user = getUser();
// TODO 接着搞
return true;
}
}

@ -29,6 +29,7 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.io.*;
import java.math.BigDecimal;
import java.util.*;
@ -364,18 +365,26 @@ public class TeacherOpenCourseMergeResourcesQuestionService extends CoreBaseServ
/**
* resources_question
*
* -
*
*
* @param resourcesQuestionIds
* @param teacherOpenCourseId
* @return
*/
public void copyFromQuestion(@NotEmpty(message = "资源题目ID不能为空") Set<String> resourcesQuestionIds) {
public void copyFromQuestion(@NotEmpty(message = "资源题目ID不能为空") Set<Long> resourcesQuestionIds,
@NotNull(message = "开课ID不能为空") Long teacherOpenCourseId) {
// 题目ID集合
String ids = join(resourcesQuestionIds, ",");
List<ResourcesQuestion> resourcesQuestions = resourcesQuestionDao.getByIds(ids);
// resourcesQuestions
// 默认有
List<TeacherOpenCourseMergeResourcesQuestion> copyToList = BeanUtil.copyToList(resourcesQuestions, TeacherOpenCourseMergeResourcesQuestion.class);
// 拷贝
List<TeacherOpenCourseMergeResourcesQuestion> copyToList =
BeanUtil.copyToList(resourcesQuestions, TeacherOpenCourseMergeResourcesQuestion.class);
// 设置开课ID
copyToList.forEach(item -> item.setTeacherOpenCourseId(teacherOpenCourseId));
// 批量插入
teacherOpenCourseMergeResourcesQuestionDao.insertBatch(copyToList);
}
}

@ -39,6 +39,7 @@ import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
* - -线
@ -429,4 +430,51 @@ public class TeacherOpenCourseMergeCourseInfoController{
}
}
/**
* -
*
*
* @param courseInfoIds ID
* @param teacherOpenCourseId iD
* @return
*/
@PostMapping(API + "/copyFromCourseInfo.do")
public JsonResult copyFromCourseInfo(Set<Long> courseInfoIds, Long teacherOpenCourseId) {
teacherOpenCourseMergeCourseInfoService.copyFromCourseInfo(courseInfoIds, teacherOpenCourseId);
return JsonResult.success();
}
/**
* -
*
*
*
* @param courseInfoIds ID
* @param teacherOpenCourseId iD
* @return
*/
@PostMapping(API + "/importCourseInfo.do")
public JsonResult importCourseInfo(Set<Long> courseInfoIds, Long teacherOpenCourseId) {
teacherOpenCourseMergeCourseInfoService.importCourseInfo(courseInfoIds, teacherOpenCourseId);
return JsonResult.success();
}
/**
* -
* -
*
* ID
*
* @return
*/
@PostMapping(API + "/systemCourseInfoByUniSystem.do")
public JsonResult systemCourseInfoByUniversitySystem(@SCoreUser CoreUser coreUser) {
if(null == coreUser){
return JsonResult.failMessage("请登录后再操作");
}else{
return JsonResult.success(teacherOpenCourseMergeCourseInfoService.systemCourseInfoByUniversitySystem());
}
}
}

@ -420,13 +420,15 @@ public class TeacherOpenCourseMergeResourcesQuestionController{
}
/**
* -
* -
*
*
* @param resourcesQuestionIds
* @return
*/
@PostMapping(API + "/copyFromQuestion.do")
public JsonResult copyFromQuestion(Set<String> resourcesQuestionIds) {
teacherOpenCourseMergeResourcesQuestionService.copyFromQuestion(resourcesQuestionIds);
public JsonResult copyFromQuestion(Set<Long> resourcesQuestionIds, Long teacherOpenCourseId) {
teacherOpenCourseMergeResourcesQuestionService.copyFromQuestion(resourcesQuestionIds, teacherOpenCourseId);
return JsonResult.success();
}

Loading…
Cancel
Save