1、管理端课程实操接口更换

beetlsql3-dev
wgf 2 years ago
parent f13e6658b8
commit 5a4e344415

@ -3,6 +3,7 @@ package com.ibeetl.jlw.service;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.lang.Assert;
import cn.hutool.core.lang.Snowflake;
import cn.hutool.core.util.EnumUtil;
import cn.hutool.core.util.NumberUtil;
@ -92,10 +93,10 @@ public class TeacherOpenCourseHandsOnService extends CoreBaseService<TeacherOpen
private TeacherOpenCourseHandsOnSimulationTasksAssessmentService teacherOpenCourseHandsOnSimulationTasksAssessmentService;
@Autowired
private HandsOnSimulationTasksFileService handsOnSimulationTasksFileService;
private HandsOnSimulationTasksFileService handsOnSimulationTasksFileService;
@Autowired
private TeacherOpenCourseHandsOnSimulationTasksFileService teacherOpenCourseHandsOnSimulationTasksFileService;
private TeacherOpenCourseHandsOnSimulationTasksFileService teacherOpenCourseHandsOnSimulationTasksFileService;
@Autowired
private TeacherOpenCourseKnowledgePointDao teacherOpenCourseKnowledgePointDao;
@ -103,6 +104,10 @@ public class TeacherOpenCourseHandsOnService extends CoreBaseService<TeacherOpen
@Autowired
private TeacherOpenCourseKnowledgePointRelationService teacherOpenCourseKnowledgePointRelationService;
@Autowired
@Lazy
private TeacherOpenCourseService teacherOpenCourseService;
// 这里简单使用一个雪花算法来生成新的ID
private static final Snowflake snowflake = new Snowflake();
@ -138,6 +143,37 @@ public class TeacherOpenCourseHandsOnService extends CoreBaseService<TeacherOpen
}
}
/**
*
*
* @param ids
*/
public void manageDeleteTeacherOpenCourseHandsOn(String ids) {
TeacherOpenCourseHandsOn teacherOpenCourseHandsOn = teacherOpenCourseHandsOnDao.getSQLManager()
.lambdaQuery(TeacherOpenCourseHandsOn.class)
.andEq(TeacherOpenCourseHandsOn::getHandsOnId, ids)
.single();
if (!ObjectUtil.isEmpty(teacherOpenCourseHandsOn)) {
TeacherOpenCourse teacherOpenCourse = new TeacherOpenCourse();
teacherOpenCourse.setTeacherOpenCourseId(teacherOpenCourseHandsOn.getTeacherOpenCourseId());
List<TeacherOpenCourse> teacherOpenCourses = teacherOpenCourseService.getValues(teacherOpenCourse);
if (CollectionUtil.isNotEmpty(teacherOpenCourses) && teacherOpenCourses.get(0).getEndTime().getTime() >= new Date().getTime()) {
Assert.isTrue(false, "课程在使用中");
}
try {
teacherOpenCourseHandsOnDao.deleteTeacherOpenCourseHandsOnByIds(ids);
} catch (Exception e) {
throw new PlatformException("批量删除教师开课-课程实操失败", e);
}
}else {
Assert.isTrue(false, "找不到课程实训");
}
}
public String addAll(TeacherOpenCourseHandsOnQuery teacherOpenCourseHandsOnQuery) {
String msg = "";
List<TeacherOpenCourseHandsOn> teacherOpenCourseHandsOnList = new ArrayList<>();
@ -171,7 +207,7 @@ public class TeacherOpenCourseHandsOnService extends CoreBaseService<TeacherOpen
teacherOpenCourseHandsOn.setHandsOnStatus(UP.getCode());
teacherOpenCourseHandsOnDao.insert(teacherOpenCourseHandsOn);
teacherOpenCourseHandsOnQuery.setHandsOnId(teacherOpenCourseHandsOn.getHandsOnId());
if (isBindingKnowledgePoint){
if (isBindingKnowledgePoint) {
String collect = teacherOpenCourseKnowledgePointDao.getSQLManager().lambdaQuery(TeacherOpenCourseKnowledgePoint.class)
.andEq(TeacherOpenCourseKnowledgePoint::getUserId, teacherOpenCourseHandsOnQuery.getUserId())
@ -191,7 +227,7 @@ public class TeacherOpenCourseHandsOnService extends CoreBaseService<TeacherOpen
relationQuery.setBussinessId(teacherOpenCourseHandsOn.getHandsOnId());
relationQuery.setChapterId(teacherOpenCourseHandsOn.getCourseChildNode());
relationQuery.setTeacherOpenCourseId(teacherOpenCourseHandsOn.getTeacherOpenCourseId().toString());
teacherOpenCourseKnowledgePointRelationService.addBindingKnowledge(relationQuery,true,2);
teacherOpenCourseKnowledgePointRelationService.addBindingKnowledge(relationQuery, true, 2);
}
}
JsonResult jsonResult = new JsonResult();
@ -303,11 +339,11 @@ public class TeacherOpenCourseHandsOnService extends CoreBaseService<TeacherOpen
}
for (TeacherOpenCourseHandsOnList teacherOpenCourseHandsOnList : teacherOpenCourseHandsOnLists) {
List<HandsOnAchievement> collect = achievementList.stream().filter(v -> v.getHandOnId().equals(teacherOpenCourseHandsOnList.getHandsOnId())).collect(Collectors.toList());
Double videoScore = collect.stream().map(e->ObjectUtil.defaultIfNull(e.getVideoScore(),"0")).collect(Collectors.averagingDouble(Double::parseDouble));
Double pptAvgScore = collect.stream().map(e->ObjectUtil.defaultIfNull(e.getPptScore(),"0")).collect(Collectors.averagingDouble(Double::parseDouble));
Double theoryAvgScore = collect.stream().map(e->ObjectUtil.defaultIfNull(e.getTheoryScore(),"0")).collect(Collectors.averagingDouble(Double::parseDouble));
Double stepAvgScore = collect.stream().map(e->ObjectUtil.defaultIfNull(e.getPracticalTrainingScore(),"0")).collect(Collectors.averagingDouble(Double::parseDouble));
Double reportAvgScore = collect.stream().map(e->ObjectUtil.defaultIfNull(e.getReportWritingScore(),"0")).collect(Collectors.averagingDouble(Double::parseDouble));
Double videoScore = collect.stream().map(e -> ObjectUtil.defaultIfNull(e.getVideoScore(), "0")).collect(Collectors.averagingDouble(Double::parseDouble));
Double pptAvgScore = collect.stream().map(e -> ObjectUtil.defaultIfNull(e.getPptScore(), "0")).collect(Collectors.averagingDouble(Double::parseDouble));
Double theoryAvgScore = collect.stream().map(e -> ObjectUtil.defaultIfNull(e.getTheoryScore(), "0")).collect(Collectors.averagingDouble(Double::parseDouble));
Double stepAvgScore = collect.stream().map(e -> ObjectUtil.defaultIfNull(e.getPracticalTrainingScore(), "0")).collect(Collectors.averagingDouble(Double::parseDouble));
Double reportAvgScore = collect.stream().map(e -> ObjectUtil.defaultIfNull(e.getReportWritingScore(), "0")).collect(Collectors.averagingDouble(Double::parseDouble));
//查询知识id
List<TeacherOpenCourseKnowledgePoint> select = teacherOpenCourseKnowledgePointDao.getSQLManager().lambdaQuery(TeacherOpenCourseKnowledgePoint.class)
.andEq(TeacherOpenCourseKnowledgePoint::getChapterId, teacherOpenCourseHandsOnList.getCourseChildNode()).select();
@ -386,11 +422,11 @@ public class TeacherOpenCourseHandsOnService extends CoreBaseService<TeacherOpen
achievementList = handsOnAchievementService.getListByhandIdsAndClassId(handIds, param.getClassId());
}
TeacherOpenCourseHandsOnList teacherOpenCourseHandsOnList = new TeacherOpenCourseHandsOnList();
Double videoScore = achievementList.stream().map(e->ObjectUtil.defaultIfNull(e.getVideoScore(),"0")).collect(Collectors.averagingDouble(Double::parseDouble));
Double pptAvgScore = achievementList.stream().map(e->ObjectUtil.defaultIfNull(e.getPptScore(),"0")).collect(Collectors.averagingDouble(Double::parseDouble));
Double theoryAvgScore = achievementList.stream().map(e->ObjectUtil.defaultIfNull(e.getTheoryScore(),"0")).collect(Collectors.averagingDouble(Double::parseDouble));
Double stepAvgScore = achievementList.stream().map(e->ObjectUtil.defaultIfNull(e.getPracticalTrainingScore(),"0")).collect(Collectors.averagingDouble(Double::parseDouble));
Double reportAvgScore = achievementList.stream().map(e->ObjectUtil.defaultIfNull(e.getReportWritingScore(),"0")).collect(Collectors.averagingDouble(Double::parseDouble));
Double videoScore = achievementList.stream().map(e -> ObjectUtil.defaultIfNull(e.getVideoScore(), "0")).collect(Collectors.averagingDouble(Double::parseDouble));
Double pptAvgScore = achievementList.stream().map(e -> ObjectUtil.defaultIfNull(e.getPptScore(), "0")).collect(Collectors.averagingDouble(Double::parseDouble));
Double theoryAvgScore = achievementList.stream().map(e -> ObjectUtil.defaultIfNull(e.getTheoryScore(), "0")).collect(Collectors.averagingDouble(Double::parseDouble));
Double stepAvgScore = achievementList.stream().map(e -> ObjectUtil.defaultIfNull(e.getPracticalTrainingScore(), "0")).collect(Collectors.averagingDouble(Double::parseDouble));
Double reportAvgScore = achievementList.stream().map(e -> ObjectUtil.defaultIfNull(e.getReportWritingScore(), "0")).collect(Collectors.averagingDouble(Double::parseDouble));
teacherOpenCourseHandsOnList.setVideoAvgScore(videoScore);
teacherOpenCourseHandsOnList.setPptAvgScore(pptAvgScore);
teacherOpenCourseHandsOnList.setTheoryAvgScore(theoryAvgScore);
@ -569,7 +605,6 @@ public class TeacherOpenCourseHandsOnService extends CoreBaseService<TeacherOpen
}
/**
*
*
@ -579,19 +614,19 @@ public class TeacherOpenCourseHandsOnService extends CoreBaseService<TeacherOpen
* @date 2023/04/28 03:59:44
*/
public void copyOpenCourseHandsToOpenCourse(@NotNull(message = "开课ID不能为空") Long teacherOpenCourseId,
@Nullable Map<Long, Long> courseInfoIdPair,
@Nullable Map<Long, Long> resourcesQuestionIdPair
) {
if (CollUtil.isEmpty(courseInfoIdPair)){
@Nullable Map<Long, Long> courseInfoIdPair,
@Nullable Map<Long, Long> resourcesQuestionIdPair
) {
if (CollUtil.isEmpty(courseInfoIdPair)) {
return;
}
if (resourcesQuestionIdPair==null){
if (resourcesQuestionIdPair == null) {
resourcesQuestionIdPair = new HashMap<>();
}
Date now = new Date();
CoreUser currentUser = getUser();
if (currentUser==null){
if (currentUser == null) {
throw new PlatformException("请先登录");
}
TeacherOpenCourseHandsOnQuery handsOnQuery = new TeacherOpenCourseHandsOnQuery();
@ -632,8 +667,6 @@ public class TeacherOpenCourseHandsOnService extends CoreBaseService<TeacherOpen
List<TeacherOpenCourseHandsOnSimulationTasks> handsOnSimulationTasksList = teacherOpenCourseHandsOnSimulationTasksService.getValuesByQuery(handsOnSimulationTasksQuery);
Map<Long, Long> simulationTaskOldToNewMap = new HashMap<>();
for (TeacherOpenCourseHandsOnSimulationTasks teacherOpenCourseHandsOnSimulationTasks : handsOnSimulationTasksList) {
Long newHandsOnId = handsOnIdOldToNewMap.get(teacherOpenCourseHandsOnSimulationTasks.getHandsOnId());
@ -648,13 +681,13 @@ public class TeacherOpenCourseHandsOnService extends CoreBaseService<TeacherOpen
simulationTaskOldToNewMap.put(oldTaskId, newTaskId);
teacherOpenCourseHandsOnSimulationTasks.setTaskId(newTaskId);
if (StringUtils.isNotBlank(teacherOpenCourseHandsOnSimulationTasks.getTaskList())){
if (StringUtils.isNotBlank(teacherOpenCourseHandsOnSimulationTasks.getTaskList())) {
List<Long> newIdList = new ArrayList<>();
String[] split = teacherOpenCourseHandsOnSimulationTasks.getTaskList().split(",");
for (String s : split) {
Long oldQuestionId = Long.parseLong(s);
Long newQuestionId = resourcesQuestionIdPair.get(oldQuestionId);
newIdList.add(newQuestionId!=null ? newQuestionId : oldQuestionId);
newIdList.add(newQuestionId != null ? newQuestionId : oldQuestionId);
}
String collect = newIdList.stream().map(String::valueOf).collect(Collectors.joining(","));
teacherOpenCourseHandsOnSimulationTasks.setTaskList(collect);
@ -703,7 +736,6 @@ public class TeacherOpenCourseHandsOnService extends CoreBaseService<TeacherOpen
teacherOpenCourseHandsOnSimulationTasksFileService.insertBatch(handsOnSimulationTasksFileList);
}
/**
@ -720,13 +752,13 @@ public class TeacherOpenCourseHandsOnService extends CoreBaseService<TeacherOpen
@Nullable Map<Long, Long> courseInfoIdPair,
@Nullable Map<Long, Long> resourcesQuestionIdPair
) {
if (resourcesQuestionIdPair==null){
if (resourcesQuestionIdPair == null) {
resourcesQuestionIdPair = new HashMap<>();
}
Date now = new Date();
CoreUser currentUser = getUser();
if (currentUser==null){
if (currentUser == null) {
throw new PlatformException("请先登录");
}
HandsOnQuery handsOnQuery = new HandsOnQuery();
@ -747,7 +779,6 @@ public class TeacherOpenCourseHandsOnService extends CoreBaseService<TeacherOpen
List<TeacherOpenCourseHandsOn> teacherOpenCourseHandsOnList = new ArrayList<>(BeanUtil.copyToList(handsOnList, TeacherOpenCourseHandsOn.class));
Map<Long, Long> handsOnIdOldToNewMap = new HashMap<>();
for (TeacherOpenCourseHandsOn teacherOpenCourseHandsOn : teacherOpenCourseHandsOnList) {
@ -783,7 +814,6 @@ public class TeacherOpenCourseHandsOnService extends CoreBaseService<TeacherOpen
List<TeacherOpenCourseHandsOnSimulationTasks> teacherOpenCourseHandsOnSimulationTasksList = new ArrayList<>(BeanUtil.copyToList(handsOnSimulationTasksList, TeacherOpenCourseHandsOnSimulationTasks.class));
Map<Long, Long> simulationTaskOldToNewMap = new HashMap<>();
Map<Long, Long> finalResourcesQuestionIdPair = resourcesQuestionIdPair;
@ -806,14 +836,14 @@ public class TeacherOpenCourseHandsOnService extends CoreBaseService<TeacherOpen
teacherOpenCourseHandsOnSimulationTasks.setTaskId(newTaskId);
if (StringUtils.isNotBlank(teacherOpenCourseHandsOnSimulationTasks.getTaskList())){
if (StringUtils.isNotBlank(teacherOpenCourseHandsOnSimulationTasks.getTaskList())) {
List<Long> newIdList = new ArrayList<>();
String[] split = teacherOpenCourseHandsOnSimulationTasks.getTaskList().split(",");
for (String s : split) {
Long oldQuestionId = Long.parseLong(s);
Long newQuestionId = finalResourcesQuestionIdPair.get(oldQuestionId);
newIdList.add(newQuestionId!=null ? newQuestionId : oldQuestionId);
newIdList.add(newQuestionId != null ? newQuestionId : oldQuestionId);
}
String collect = newIdList.stream().map(String::valueOf).collect(Collectors.joining(","));
teacherOpenCourseHandsOnSimulationTasks.setTaskList(collect);
@ -837,7 +867,7 @@ public class TeacherOpenCourseHandsOnService extends CoreBaseService<TeacherOpen
//记录来源
teacherOpenCourseHandsOnSimulationTasksAssessment.setFromType(CopyFromEnum.FROM_SYSTEM);
teacherOpenCourseHandsOnSimulationTasksAssessment.setSourceFromId( teacherOpenCourseHandsOnSimulationTasksAssessment.getHandsOnSimulationTasksAssessmentId());
teacherOpenCourseHandsOnSimulationTasksAssessment.setSourceFromId(teacherOpenCourseHandsOnSimulationTasksAssessment.getHandsOnSimulationTasksAssessmentId());
teacherOpenCourseHandsOnSimulationTasksAssessment.setHandsOnTaskId(simulationTaskOldToNewMap.get(teacherOpenCourseHandsOnSimulationTasksAssessment.getHandsOnTaskId()));
@ -882,12 +912,12 @@ public class TeacherOpenCourseHandsOnService extends CoreBaseService<TeacherOpen
teacherOpenCourseHandsOnSimulationTasksFileService.insertBatch(teacherOpenCourseHandsOnSimulationTasksFileList);
}
/**
*
* 1 2 0
*
* @param ids
* @param status
*/

@ -782,6 +782,18 @@ public class TeacherOpenCourseHandsOnController{
return JsonResult.success();
}
/**
*
* @param ids
* @return
*/
@PostMapping(MODEL + "/manageDelete.json")
@ResponseBody
public JsonResult manageDeleteTeacherOpenCourseHandsOn(String ids) {
teacherOpenCourseHandsOnService.manageDeleteTeacherOpenCourseHandsOn(ids);
return JsonResult.success();
}
/**
*
* @param teacherOpenCourseHandsOnQuery

Loading…
Cancel
Save