diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/course/dao/CourseContentDao.java b/servers/boe-server-all/src/main/java/com/xboe/module/course/dao/CourseContentDao.java index b945ea63..0f1046d6 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/course/dao/CourseContentDao.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/course/dao/CourseContentDao.java @@ -1,10 +1,13 @@ package com.xboe.module.course.dao; +import org.springframework.data.jpa.repository.Query; import org.springframework.stereotype.Repository; import com.xboe.core.orm.BaseDao; import com.xboe.module.course.entity.CourseContent; +import java.util.List; + @Repository public class CourseContentDao extends BaseDao { @@ -20,4 +23,5 @@ public class CourseContentDao extends BaseDao { int count=count(hql, courseId); return count; } + } diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/course/entity/CourseContent.java b/servers/boe-server-all/src/main/java/com/xboe/module/course/entity/CourseContent.java index a93e159c..f00550f7 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/course/entity/CourseContent.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/course/entity/CourseContent.java @@ -100,6 +100,21 @@ public class CourseContent extends BaseEntity { this.contentType=contentType; this.contentRefId=contentRefId; } - + @Override + public String toString() { + return "CourseContent{" + + "rid='" + rid + '\'' + + ", typeId='" + typeId + '\'' + + ", courseId='" + courseId + '\'' + + ", csectionId='" + csectionId + '\'' + + ", sortIndex=" + sortIndex + + ", contentType=" + contentType + + ", contentName='" + contentName + '\'' + + ", contentRefId='" + contentRefId + '\'' + + ", content='" + content + '\'' + + ", duration=" + duration + + ", status=" + status + + '}'; + } } diff --git a/servers/boe-server-all/src/main/java/com/xboe/school/study/service/IStudyService.java b/servers/boe-server-all/src/main/java/com/xboe/school/study/service/IStudyService.java index 9b25520f..e68608b9 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/school/study/service/IStudyService.java +++ b/servers/boe-server-all/src/main/java/com/xboe/school/study/service/IStudyService.java @@ -94,5 +94,5 @@ public interface IStudyService { * @param status * @return */ - PageList findItemPage(int pageIndex,int pageSize,String contentId,String courseId,String name,Integer status); + PageList findItemPage(int pageIndex, int pageSize, String contentId, String courseId, String name, Integer status); } diff --git a/servers/boe-server-all/src/main/java/com/xboe/school/study/service/IStudySignupService.java b/servers/boe-server-all/src/main/java/com/xboe/school/study/service/IStudySignupService.java index 94515890..26307b67 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/school/study/service/IStudySignupService.java +++ b/servers/boe-server-all/src/main/java/com/xboe/school/study/service/IStudySignupService.java @@ -6,6 +6,7 @@ import com.xboe.common.OrderCondition; import com.xboe.common.PageList; import com.xboe.common.beans.KeyValue; import com.xboe.school.study.entity.StudyCourse; +import com.xboe.school.study.entity.StudyCourseItem; import com.xboe.school.study.entity.StudySignup; /** @@ -48,6 +49,13 @@ public interface IStudySignupService { * @param signup */ StudyCourse addSignup(StudySignup signup); + + + /** + * 管理员添加报名课件 + * @param signup + */ + StudyCourseItem addStudyCourseItem(StudySignup signup); /** * 删除报名,只有未审核过的才可以删除 diff --git a/servers/boe-server-all/src/main/java/com/xboe/school/study/service/impl/StudyServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/school/study/service/impl/StudyServiceImpl.java index d6cc2110..ef541afb 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/school/study/service/impl/StudyServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/school/study/service/impl/StudyServiceImpl.java @@ -1,6 +1,7 @@ package com.xboe.school.study.service.impl; import java.time.LocalDateTime; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -8,7 +9,8 @@ import java.util.Map; import javax.annotation.Resource; import javax.transaction.Transactional; -import com.xboe.api.ThirdApi; +import com.xboe.module.article.entity.Article; +import com.xboe.module.interaction.entity.Shares; import com.xboe.school.study.entity.StudyCourse; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -163,12 +165,10 @@ public class StudyServiceImpl implements IStudyService{ @Override public PageList findItemPage(int pageIndex, int pageSize, String contentId, String courseId,String name,Integer status) { - - QueryBuilder query=QueryBuilder.from(StudyCourseItem.class); - + QueryBuilder query = QueryBuilder.from(StudyCourseItem.class); query.setPageIndex(pageIndex); query.setPageSize(pageSize); - + OrderCondition oc=OrderCondition.desc("id"); query.addOrder(oc); if(StringUtils.isNotBlank(contentId)) { @@ -177,18 +177,19 @@ public class StudyServiceImpl implements IStudyService{ if(StringUtils.isNotBlank(courseId)) { query.addFilter(FieldFilters.eq("courseId",courseId)); } - - if(status!=null) { - if(status==1) { - query.addFilter(FieldFilters.eq("progress", 0)); - }else { - query.addFilter(FieldFilters.eq("progress",100)); - } - - } if(StringUtils.isNotBlank(name)) { query.addFilter(FieldFilters.eq("aname", name)); } + if(status!=null) { + if(status==3) { + query.addFilter(FieldFilters.eq("progress", 1)); + }else if(status==2){ + query.addFilter(FieldFilters.eq("progress",100)); + }else if(status == 1){ + query.addFilter(FieldFilters.eq("progress",0)); + } + } + return scItemDao.findPage(query.builder()); } diff --git a/servers/boe-server-all/src/main/java/com/xboe/school/study/service/impl/StudySignupServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/school/study/service/impl/StudySignupServiceImpl.java index 6209ef9a..d9345ba2 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/school/study/service/impl/StudySignupServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/school/study/service/impl/StudySignupServiceImpl.java @@ -4,9 +4,15 @@ import java.io.IOException; import java.time.LocalDateTime; import java.time.ZoneOffset; import java.util.List; +import java.util.Optional; import javax.transaction.Transactional; +import com.xboe.module.course.dao.CourseContentDao; +import com.xboe.module.course.dto.CourseContentDto; +import com.xboe.module.course.entity.CourseContent; +import com.xboe.school.study.dao.StudyCourseItemDao; +import com.xboe.school.study.entity.StudyCourseItem; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -39,7 +45,13 @@ public class StudySignupServiceImpl implements IStudySignupService{ @Autowired StudyCourseDao studyCourseDao; - + + @Autowired + StudyCourseItemDao scItemDao; + + @Autowired + CourseContentDao contentDao; + @Autowired(required = false) ICourseStudySearch esSearch; @@ -69,7 +81,6 @@ public class StudySignupServiceImpl implements IStudySignupService{ signupDao.save(signup); //添加到课程学习 LocalDateTime now=LocalDateTime.now(); - StudyCourse sc=new StudyCourse(); sc.setAddTime(now); sc.setAid(signup.getAid()); @@ -124,11 +135,40 @@ public class StudySignupServiceImpl implements IStudySignupService{ //courseDao.updateMultiFieldById(signup.getCourseId(),UpdateBuilder.create("studys", "studys+1",FieldUpdateType.EXPRESSION)); } + @Override + public StudyCourseItem addStudyCourseItem(StudySignup signup) { + String sql = "select id,course_id,content_name from boe_course_content where course_id = '"+signup.getCourseId()+"'"; + List courseContents = contentDao.sqlFindList(sql); + if (!courseContents.isEmpty()) { + log.info("查看在线课集合内容数据(共 {} 条记录)", courseContents.size()); + for (Object[] objs : courseContents){ + log.info("查看在线课内容数据: {}", objs[0].toString()); + // 使用toString()或自定义格式化字符串 + StudyCourseItem scitem = new StudyCourseItem(); + // 设置scitem的属性 + scitem.setAname(signup.getName()); + scitem.setAid(signup.getAid()); + scitem.setCourseId(signup.getCourseId()); + scitem.setProgress(0); + scitem.setScore(0f); + scitem.setStatus(1); + scitem.setContentId(objs[0].toString()); + scitem.setStudyId(signup.getStudyId()); + // 如果需要,可以取消注释以下行来设置contentName + // scitem.setContentName(c.getContentName()); + scItemDao.save(scitem); + } + } else { + log.info("没有找到在线课内容数据。"); + } + return null; + } @Override public void addList(List list) { //用于管理员添加报名 for(StudySignup ss : list) { addSignup(ss); + addStudyCourseItem(ss); } } @@ -136,7 +176,6 @@ public class StudySignupServiceImpl implements IStudySignupService{ public void audit(String id, String aid, String user, boolean pass, String remark) { if(pass) { StudySignup signup =signupDao.get(id); - //是否需要检查是否已报名 StudyCourse sc=new StudyCourse(); sc.setAddTime(LocalDateTime.now());