mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/per-boe/java-servers.git
synced 2025-12-12 12:26:51 +08:00
修改自动报名处理
This commit is contained in:
@@ -132,26 +132,27 @@ public class StudyCourseApi extends ApiBaseController{
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@RequestMapping(value="/studyIndex",method = {RequestMethod.GET,RequestMethod.POST})
|
@RequestMapping(value="/studyIndex",method = {RequestMethod.GET,RequestMethod.POST})
|
||||||
public JsonResponse<Map<String,Object>> loadDetail(String id,Boolean addView,Boolean crowd){
|
public JsonResponse<Map<String,Object>> loadDetail(String cid,Boolean addView,Boolean crowd){
|
||||||
if(StringUtils.isBlank(id)){
|
if(StringUtils.isBlank(cid)){
|
||||||
return error("无课程信息");
|
return error("无课程信息");
|
||||||
}
|
}
|
||||||
String aid=getCurrent().getAccountId();
|
CurrentUser cuser=getCurrent();
|
||||||
|
String aid=cuser.getAccountId();
|
||||||
//StudyCourse sc=service.findByCourseIdAndAid(id, aid);
|
//StudyCourse sc=service.findByCourseIdAndAid(id, aid);
|
||||||
Map<String,Object> rs=new HashMap<String,Object>();
|
Map<String,Object> rs=new HashMap<String,Object>();
|
||||||
Course course=courseService.getAddView(id);
|
Course course=courseService.getAddView(cid);
|
||||||
if(course==null || course.getDeleted()){
|
if(course==null || course.getDeleted()){
|
||||||
return badRequest("课程不存在或已被删除");
|
return badRequest("课程不存在或已被删除");
|
||||||
}
|
}
|
||||||
rs.put("course",course);
|
rs.put("course",course);
|
||||||
|
|
||||||
List<CourseCrowd> courseCrowdList = courseService.findCrowdByCourseId(id);
|
List<CourseCrowd> courseCrowdList = courseService.findCrowdByCourseId(cid);
|
||||||
if(crowd!=null && crowd) {
|
if(crowd!=null && crowd) {
|
||||||
rs.put("crowds",courseCrowdList);
|
rs.put("crowds",courseCrowdList);
|
||||||
}
|
}
|
||||||
List<CourseContent> cclist=contentService.getByCourseId(id);
|
List<CourseContent> cclist=contentService.getByCourseId(cid);
|
||||||
List<CourseSection> sectionlist=sectionService.getByCourseId(id);
|
List<CourseSection> sectionlist=sectionService.getByCourseId(cid);
|
||||||
List<CourseTeacher> teachers=courseService.findTeachersByCourseId(id);
|
List<CourseTeacher> teachers=courseService.findTeachersByCourseId(cid);
|
||||||
|
|
||||||
//获取教师的介绍信息,因为一门课程 的教师不会太多,所以这里简单直接遍历查询,后续再优化
|
//获取教师的介绍信息,因为一门课程 的教师不会太多,所以这里简单直接遍历查询,后续再优化
|
||||||
for(CourseTeacher ct : teachers) {
|
for(CourseTeacher ct : teachers) {
|
||||||
@@ -168,13 +169,33 @@ public class StudyCourseApi extends ApiBaseController{
|
|||||||
rs.put("teachers",teachers);
|
rs.put("teachers",teachers);
|
||||||
|
|
||||||
//检查是否已报名
|
//检查是否已报名
|
||||||
StudySignup ss = signupService.getByCidAndAid(id, aid);
|
StudyCourse sc=service.findByCourseIdAndAid(cid, aid);
|
||||||
if(ss!=null && ss.getStatus()!=null && ss.getStatus()==9) {
|
if(sc==null) {
|
||||||
rs.put("signup",true);
|
//未报名,这里直接报名
|
||||||
}else {
|
StudySignup signup=new StudySignup();
|
||||||
rs.put("signup",false);
|
signup.setCourseId(cid);
|
||||||
|
signup.setCourseName(course.getName());
|
||||||
|
signup.setCourseType(course.getType());
|
||||||
|
signup.setSignInfo("自主报名");
|
||||||
|
signup.setAuditInfo("系统自动审核");
|
||||||
|
signup.setAuditUser("");
|
||||||
|
signup.setAuditType(1);
|
||||||
|
signup.setSignTime(LocalDateTime.now());
|
||||||
|
signup.setSignType(1);
|
||||||
|
signup.setStatus(9);
|
||||||
|
signup.setAid(cuser.getAccountId());
|
||||||
|
signup.setName(cuser.getName());
|
||||||
|
signup.setSignTime(LocalDateTime.now());
|
||||||
|
sc=service.autoSignup(signup);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
rs.put("signup",true);
|
||||||
|
rs.put("studyId", sc.getId());//学习id
|
||||||
|
rs.put("progress", sc.getProgress());
|
||||||
|
//查询上次学习的是什么资源。查询用户的学习情况
|
||||||
|
List<StudyCourseItem> items=studyService.findByStudyId(sc.getId());
|
||||||
|
rs.put("contentStudys",items);//学习的内容
|
||||||
|
|
||||||
return success(rs);
|
return success(rs);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -7,11 +7,20 @@ import com.xboe.school.study.dto.StudyCourseQuery;
|
|||||||
import com.xboe.school.study.dto.StudyCouseDto;
|
import com.xboe.school.study.dto.StudyCouseDto;
|
||||||
import com.xboe.school.study.entity.StudyCourse;
|
import com.xboe.school.study.entity.StudyCourse;
|
||||||
import com.xboe.school.study.entity.StudyCourseItem;
|
import com.xboe.school.study.entity.StudyCourseItem;
|
||||||
|
import com.xboe.school.study.entity.StudySignup;
|
||||||
|
|
||||||
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
public interface IStudyCourseService {
|
public interface IStudyCourseService {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 课程自动报名,返回学习的课程
|
||||||
|
* @param signup
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
StudyCourse autoSignup(StudySignup signup);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 检查是否有相应的课程学习记录
|
* 检查是否有相应的课程学习记录
|
||||||
|
|||||||
@@ -38,6 +38,7 @@ import com.xboe.school.study.dto.StudyCourseNameDto;
|
|||||||
import com.xboe.school.study.dto.StudyCourseQuery;
|
import com.xboe.school.study.dto.StudyCourseQuery;
|
||||||
import com.xboe.school.study.entity.StudyCourse;
|
import com.xboe.school.study.entity.StudyCourse;
|
||||||
import com.xboe.school.study.entity.StudyCourseItem;
|
import com.xboe.school.study.entity.StudyCourseItem;
|
||||||
|
import com.xboe.school.study.entity.StudySignup;
|
||||||
import com.xboe.school.study.service.IStudyCourseService;
|
import com.xboe.school.study.service.IStudyCourseService;
|
||||||
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
@@ -47,6 +48,9 @@ import lombok.extern.slf4j.Slf4j;
|
|||||||
@Transactional
|
@Transactional
|
||||||
public class StudyCourseServiceImpl implements IStudyCourseService{
|
public class StudyCourseServiceImpl implements IStudyCourseService{
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
StudySignupDao signupDao;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
StudyCourseDao studyCourseDao;
|
StudyCourseDao studyCourseDao;
|
||||||
|
|
||||||
@@ -512,4 +516,42 @@ public class StudyCourseServiceImpl implements IStudyCourseService{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StudyCourse autoSignup(StudySignup signup) {
|
||||||
|
|
||||||
|
signup.setSignType(StudySignup.SIGNTYPE_SELF);
|
||||||
|
if(signup.getStatus()==null) {
|
||||||
|
//如果未指定状态,就设置审核通过
|
||||||
|
signup.setStatus(StudySignup.STATUS_PASS);
|
||||||
|
signup.setAuditType(StudySignup.AUDITTYPE_AUTO);
|
||||||
|
signup.setAuditInfo("系统自动审核");
|
||||||
|
signup.setAuditUser("");
|
||||||
|
}
|
||||||
|
signupDao.save(signup);
|
||||||
|
//添加到课程学习
|
||||||
|
LocalDateTime now=LocalDateTime.now();
|
||||||
|
|
||||||
|
StudyCourse sc=new StudyCourse();
|
||||||
|
sc.setAddTime(LocalDateTime.now());
|
||||||
|
sc.setAid(signup.getAid());
|
||||||
|
sc.setAname(signup.getName());
|
||||||
|
sc.setCourseId(signup.getCourseId());
|
||||||
|
sc.setCourseName(signup.getCourseName());
|
||||||
|
sc.setCourseType(signup.getCourseType());//课程类型没有带过来
|
||||||
|
sc.setFinishTime(null);
|
||||||
|
sc.setLastScore(0f);
|
||||||
|
sc.setProgress(0f);
|
||||||
|
sc.setSource(signup.getAuditType());//来源方式,和报名类型一致
|
||||||
|
sc.setStatus(StudyCourse.STATUS_NOSTUDY);
|
||||||
|
sc.setStatusTime(now);
|
||||||
|
sc.setTotalDuration(0);
|
||||||
|
sc.setLastTime(sc.getAddTime());
|
||||||
|
studyCourseDao.save(sc);
|
||||||
|
signup.setStudyId(sc.getId());
|
||||||
|
//更新课程学习人数
|
||||||
|
courseDao.updateMultiFieldById(signup.getCourseId(),UpdateBuilder.create("studys", "studys+1",FieldUpdateType.EXPRESSION));
|
||||||
|
|
||||||
|
return sc;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user