package com.qxueyou.scc.controller;
|
|
import java.lang.reflect.InvocationTargetException;
|
import java.text.ParseException;
|
import java.util.ArrayList;
|
import java.util.Collections;
|
import java.util.Date;
|
import java.util.List;
|
import java.util.Map;
|
|
import org.apache.commons.lang3.StringUtils;
|
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.Logger;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMethod;
|
import org.springframework.web.bind.annotation.RequestParam;
|
import org.springframework.web.bind.annotation.ResponseBody;
|
import org.springframework.web.bind.annotation.RestController;
|
|
import com.qxueyou.scc.admin.classes.model.ClsClass;
|
import com.qxueyou.scc.admin.classes.model.ClsSubjectChapter;
|
import com.qxueyou.scc.admin.classes.service.IClassLectureService;
|
import com.qxueyou.scc.admin.classes.service.IClassService;
|
import com.qxueyou.scc.admin.teacher.service.ITeacherService;
|
import com.qxueyou.scc.base.model.Pager;
|
import com.qxueyou.scc.base.model.Result;
|
import com.qxueyou.scc.base.util.ClientUtils;
|
import com.qxueyou.scc.base.util.CollectionUtils;
|
import com.qxueyou.scc.base.util.DateUtils;
|
import com.qxueyou.scc.base.util.QBeanUtils;
|
import com.qxueyou.scc.teach.student.service.IStudentService;
|
import com.qxueyou.scc.teach.subject.model.Subject;
|
import com.qxueyou.scc.teach.subject.service.ISubjectService;
|
import com.qxueyou.scc.user.model.UserTeacher;
|
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiImplicitParam;
|
import io.swagger.annotations.ApiImplicitParams;
|
import io.swagger.annotations.ApiOperation;
|
|
/**
|
* °à¼¶¹ÜÀí¿ØÖÆÆ÷
|
*
|
* @author chenjunliang
|
*/
|
@Api(tags="°à¼¶¹ÜÀí½Ó¿Ú")
|
@RestController
|
@RequestMapping("/admin/class")
|
public class ClassController {
|
|
private final Logger log = LogManager.getLogger(ClassController.class);
|
|
@Autowired
|
IClassService classService;
|
|
@Autowired
|
ISubjectService subjectService;
|
|
@Autowired
|
IStudentService studentService;
|
|
@Autowired
|
ITeacherService teacherService;
|
|
@Autowired
|
IClassLectureService clsLectureService;
|
|
//---------------------------------------------------------------------------------app½Ó¿Ú--------------------------------------------------------------------------------------------------------------------/
|
/**
|
* »ñÈ¡Õý³£°à¼¶Áбí
|
*
|
* @param keyword
|
* @param limit
|
* @param pageNum
|
* @return
|
*/
|
@ApiOperation(value = "»ñÈ¡Õý³£°à¼¶Áбí", notes = "")
|
@GetMapping(value = "/app/classList")
|
public Result classList(@RequestParam(defaultValue = "") String keyword, Pager pager) {
|
return this.classService.classList(keyword, pager, 1);
|
}
|
|
/**
|
* »ñÈ¡ÀúÊ·°à¼¶Áбí
|
*
|
* @param keyword
|
* @param limit
|
* @param pageNum
|
* @return
|
*/
|
@ApiOperation(value = "»ñÈ¡ÀúÊ·°à¼¶Áбí", notes = "")
|
@GetMapping(value = "/app/historyClassList")
|
public Result historyClassList(@RequestParam(defaultValue = "") String keyword, Pager pager) {
|
return this.classService.classList(keyword, pager, 2);
|
}
|
|
/**
|
* ѧԱÏêÇé
|
*
|
* @param classId
|
* @param studentId
|
* @return
|
*/
|
@ApiOperation(value = "ѧԱÏêÇé", notes = "")
|
@ApiImplicitParams({
|
@ApiImplicitParam(name = "studentId", value = "ѧԱid", required = true, paramType="query", dataType = "String"),
|
@ApiImplicitParam(name = "classId", value = "°à¼¶id", required = true, paramType="query", dataType = "String"),
|
})
|
@GetMapping(value = "/app/studentInfo")
|
public Result studentInfo(String classId, String studentId) {
|
return this.studentService.queryStudent(classId, studentId);
|
}
|
|
/**
|
* ѧԱÏêÇé
|
*
|
* @param classId
|
* @param studentId
|
* @return
|
*/
|
@ApiOperation(value = "ѧԱѧϰ½ø¶È", notes = "")
|
@ApiImplicitParams({
|
@ApiImplicitParam(name = "studentId", value = "ѧԱid", required = true, paramType="query", dataType = "String"),
|
@ApiImplicitParam(name = "classId", value = "°à¼¶id", required = true, paramType="query", dataType = "String"),
|
})
|
@GetMapping(value = "/app/studentProgress")
|
public Result studentProgress(String classId, String studentId) {
|
return this.studentService.studentProgress(classId, studentId);
|
}
|
|
/**
|
* »ñÈ¡Ê×Ò³Êý¾ÝÅÅÐÐ
|
*
|
*
|
* @param subjectId
|
*/
|
@ApiOperation(value = "°à¼¶ÅÅÐаñ", notes = "")
|
@ApiImplicitParams({
|
@ApiImplicitParam(name = "classId", value = "°à¼¶id", required = true, paramType="query", dataType = "String"),
|
})
|
@GetMapping(value = "/app/getDataDesc")
|
public Result getDataDesc(String classId, String subjectId) {
|
return subjectService.getDataDesc(classId, subjectId);
|
}
|
|
/**
|
* ѧԱ¿Î³Ì½ø¶È
|
*
|
*
|
* @param subjectId
|
*/
|
@ApiOperation(value = "ѧԱ¿Î³Ì½ø¶È", notes = "")
|
@ApiImplicitParams({
|
@ApiImplicitParam(name = "classId", value = "°à¼¶id", required = true, paramType="query", dataType = "String"),
|
@ApiImplicitParam(name = "subjectId", value = "¿Î³Ìid", required = true, paramType="query", dataType = "String"),
|
@ApiImplicitParam(name = "studentId", value = "ѧԱid", required = true, paramType="query", dataType = "String"),
|
})
|
@GetMapping(value = "/app/studentSubjectProgress")
|
public Result studentSubjectProgress(String classId, String subjectId, String studentId) {
|
|
return new Result(true, "success", CollectionUtils.newObjectMap("homework", this.subjectService.studentSubjectHomeworkProgress(classId, subjectId, studentId),
|
"exam", this.subjectService.studentSubjectExamProgress(classId, subjectId, studentId)));
|
}
|
|
/**
|
* °à¼¶Ñ§Ô±¿Î³Ì×ÜÌå½ø¶È
|
*
|
*
|
* @param classId
|
*/
|
@ApiOperation(value = "°à¼¶Ñ§Ô±¿Î³Ì×ÜÌå½ø¶È", notes = "")
|
@ApiImplicitParams({
|
@ApiImplicitParam(name = "classId", value = "°à¼¶id", required = true, paramType="query", dataType = "String"),
|
})
|
@GetMapping(value = "/app/studentAllSubjectProgress")
|
public Result studentSubjectProgress(String classId) {
|
if(StringUtils.isEmpty(classId)) {
|
return new Result(false, "°à¼¶id²ÎÊý²»ÄÜΪ¿Õ");
|
}
|
return new Result(true, "success", CollectionUtils.newObjectMap("subjectList", this.subjectService.studentSubjectProgress(classId, new Pager())));
|
}
|
|
/**
|
* °à¼¶Ñ§Ô±¿Î¼þ×ÜÌå½ø¶È
|
*
|
*
|
* @param classId
|
*/
|
@ApiOperation(value = "°à¼¶Ñ§Ô±¿Î¼þ×ÜÌå½ø¶È", notes = "")
|
@ApiImplicitParams({
|
@ApiImplicitParam(name = "classId", value = "°à¼¶id", required = true, paramType="query", dataType = "String"),
|
@ApiImplicitParam(name = "subjectId", value = "¿Î³Ìid", required = true, paramType="query", dataType = "String"),
|
})
|
@GetMapping(value = "/app/studentSubjectLectureProgress")
|
public Result studentSubjectLectureProgress(String classId, String subjectId) {
|
if(StringUtils.isEmpty(classId)) {
|
return new Result(false, "°à¼¶id²ÎÊý²»ÄÜΪ¿Õ");
|
}
|
if(StringUtils.isEmpty(subjectId)) {
|
return new Result(false, "¿Î³Ìid²ÎÊý²»ÄÜΪ¿Õ");
|
}
|
|
//»ñÈ¡ËùÓпμþ
|
List<Map<String, Object>> lectures = this.subjectService.studentSubjectLectureProgress(subjectId, classId);
|
//»ñÈ¡ËùÒÔÕ½Ú
|
List<ClsSubjectChapter> chapterLst = clsLectureService.getChapterLectures(clsLectureService.getListChapter(classId, subjectId, null), lectures);
|
|
return new Result(true, "success", CollectionUtils.newObjectMap("count",clsLectureService.stuLectureCountBySubject(subjectId, classId), "listData", QBeanUtils.listBean2ListMap(chapterLst,
|
CollectionUtils.newStringMap("name", "name", "chapterId", "chapterId", "lectures", "lectures"))));
|
}
|
|
/**
|
* ѧԱע²á
|
*
|
* @param name ѧԱÃû³Æ
|
* @param studentNumber ѧºÅ
|
* @param sex ÐÔ±ð
|
* @param mobilePhone ÊÖ»úºÅ
|
*/
|
@ApiOperation(value = "app¶ËѧԱע²á½Ó¿Ú", notes = "")
|
@ApiImplicitParams({
|
@ApiImplicitParam(name = "name", value = "Ãû³Æ", required = true, paramType="query", dataType = "String"),
|
@ApiImplicitParam(name = "studentNumber", value = "ѧºÅ", required = true, paramType="query", dataType = "String"),
|
@ApiImplicitParam(name = "sex", value = "ÐÔ±ð(0Å®£¬1ÄÐ)", required = true, paramType="query", dataType = "String"),
|
@ApiImplicitParam(name = "mobilePhone", value = "ÊÖ»úºÅ", required = false, paramType="query", dataType = "String"),
|
@ApiImplicitParam(name = "orgId", value = "»ú¹¹", required = true, paramType="query", dataType = "String"),
|
})
|
@PostMapping(value = "/app/studentRegister")
|
public Result studentRegister(String name, String studentNumber, Boolean sex, String mobilePhone, String orgId) {
|
return studentService.insertStudent(null, name, studentNumber, sex, mobilePhone, orgId);
|
}
|
|
//---------------------------------------------------------------------------------app½Ó¿Ú--------------------------------------------------------------------------------------------------------------------/
|
|
|
/**
|
* ÐÂÔö°à¼¶
|
*
|
* @param className °à¼¶Ãû³Æ
|
* @param classNumber °à¼¶±àÂë
|
* @param startTime ¿ª°àʱ¼ä
|
* @param endTime ½áÊøÊ±¼ä
|
* @param subjectId ¿Î³Ìid
|
*/
|
@PostMapping(value = "add")
|
public Result add(String className, String classNumber, String startTime, String endTime, String subjectId,
|
String teacherId) {
|
try {
|
return classService.insertClass(className, classNumber, DateUtils.convertStringToDate(startTime),
|
DateUtils.convertStringToDate(endTime), subjectId, teacherId);
|
|
} catch (ParseException e) {
|
log.error(e, e);
|
return new Result(false, "ÈÕÆÚ²ÎÊý´íÎó");
|
}
|
}
|
/**
|
* ÐÂÔö²¹¿¼·Ö×é
|
* @param className °à¼¶Ãû³Æ
|
* @param classNumber °à¼¶±àÂë
|
* @param startTime ¿ª°àʱ¼ä
|
* @param endTime ½áÊøÊ±¼ä
|
* @param subjectId ¿Î³Ìid
|
*/
|
@PostMapping(value = "addRe")
|
public Result addRe(String className, String classNumber, String startTime, String endTime, String subjectId,
|
String teacherId,String classTypes) {
|
try {
|
ClsClass reClass = classService.getReClass("1");
|
//Èç¹û²¹¿¼ÀàÐÍ·Ö×é²»´æÔÚ£¬ÐÂÔö
|
if (reClass==null){
|
return classService.insertReClass(className, classNumber, DateUtils.convertStringToDate(startTime),
|
DateUtils.convertStringToDate(endTime), subjectId, teacherId,classTypes);
|
}else {
|
//´æÔÚ·µ»Øfalse
|
return new Result(false, "²¹¿¼·Ö×éÒÑ´æÔÚ");
|
}
|
} catch (ParseException e) {
|
log.error(e, e);
|
return new Result(false, "ÈÕÆÚ²ÎÊý´íÎó");
|
}
|
}
|
|
/**
|
* ÐÂÔö°à¼¶»ñÈ¡¿Î³ÌÁбí
|
*/
|
@GetMapping(value = "getSubjectLst")
|
public Result getSubjectlst() {
|
|
List<Subject> subjectLst = subjectService.list("", null, "",Subject.TYPE_ORG_SUBJECT, 1000, 1);
|
|
return new Result(true, "success", QBeanUtils.listBean2ListMap(subjectLst,
|
CollectionUtils.newStringMap("name", "subjectName", "subjectId", "subjectId")));
|
}
|
|
/**
|
* »ñÈ¡°à¼¶Áбí
|
*
|
* @param keyword
|
* @param limit
|
* @param pageNum
|
* @return
|
*/
|
@ApiOperation(value = "»ñÈ¡°à¼¶Áбí", notes = "")
|
@SuppressWarnings({ "unchecked", "rawtypes" })
|
@GetMapping(value = "list")
|
public Result list(@RequestParam(defaultValue = "") String keyword,
|
@RequestParam(defaultValue = "10") Integer limit, @RequestParam(defaultValue = "1") Integer pageNum, @RequestParam(defaultValue = "1")Integer pageType) {
|
|
String teacherId = ClientUtils.isAdmin() ? null : teacherService.getTeacherIdByUserId(ClientUtils.getUserId());
|
// »ñÈ¡Êý¾Ý
|
List<ClsClass> clsLst = classService.getClassLst(keyword, teacherId, limit, pageNum, pageType);
|
// »ñÈ¡°à¼¶×ÜÊý
|
int count = classService.getClassLstCount(keyword, teacherId, pageType);
|
// ת³Éǰ¶ËËùÐè×ֶκͽṹ
|
List<Map<String, Object>> lstResult = QBeanUtils.listBean2ListMap(clsLst,
|
CollectionUtils.newStringMap("name", "className", "classId", "classId", "classNumber", "classNumber","classTypes","classTypes",
|
"studentCount", "studentCount", "createTime", "createTime", "startTime", "startTime", "endTime",
|
"endTime", "subjects", "sbjLst"));
|
|
// µ¥¶À´¦Àí¿Î³ÌµÄ×ֶκͽṹ
|
for (Map<String, Object> item : lstResult) {
|
|
if(item.get("sbjLst")==null){
|
continue;
|
|
}
|
|
item.put("subjectLst",
|
QBeanUtils.listBean2ListMap(
|
this.filtCurrTeacherSubjects((List<Subject>) item.get("sbjLst"),teacherId),
|
CollectionUtils.newStringMap("subjectId", "subjectId", "name", "subjectName",
|
"teacherId","teacherId","teacherName","teacherName","schoolYear","schoolYear","term","term")));
|
|
item.remove("sbjLst");
|
}
|
|
return new Result(true, "success", CollectionUtils.newObjectMap("classLst", lstResult, "classCount", count));
|
}
|
|
|
private List<Subject> filtCurrTeacherSubjects(List<Subject> subjects,String teacherId){
|
if(StringUtils.isEmpty(teacherId) || subjects==null || subjects.size()==0){
|
return subjects;
|
}
|
|
List<Subject> newSubjects = new ArrayList<Subject>(subjects.size());
|
|
for(Subject subject:subjects){
|
if(teacherId.equals(subject.getTeacherId())){
|
newSubjects.add(subject);
|
}
|
}
|
|
return newSubjects;
|
}
|
|
|
/**
|
* ²éѯ°à¼¶»ù±¾ÐÅÏ¢
|
*
|
* @param classId °à¼¶id
|
* @return
|
*/
|
@ApiOperation(value = "²éѯ°à¼¶»ù±¾ÐÅÏ¢", notes = "")
|
@ApiImplicitParams({
|
@ApiImplicitParam(name = "classId", value = "°à¼¶id", required = true, paramType="query", dataType = "String"),
|
})
|
@GetMapping(value = "queryClass")
|
public Result findClass(String classId) {
|
|
ClsClass cls = classService.read(classId);
|
|
return new Result(true, "success", QBeanUtils.bean2Map(cls,
|
CollectionUtils.newStringMap("name", "className", "classId", "classId", "classNumber", "classNumber",
|
"studentCount", "studentCount", "createTime", "createTime", "startTime", "startTime", "endTime","endTime","classTypes",
|
"classTypes", "subjects", "subjectLst", "needJoinAudit", "needJoinAudit", "needQuitAudit",
|
"needQuitAudit", "showAnalysisAfterExer", "showAnalysisAfterExer", "canMultiExer",
|
"canMultiExer", "needForum", "needForum", "teacherId", "teacherId")));
|
}
|
|
/**
|
* ɾ³ý°à¼¶
|
*
|
* @param classId °à¼¶id
|
* @return
|
*/
|
@GetMapping("delete")
|
public Result delete(String classId) {
|
|
return classService.deleteClass(classId.split(","));
|
|
}
|
|
/**
|
* ¸´Öư༶
|
*
|
* @param classId °à¼¶id
|
* @param className °à¼¶Ãû³Æ
|
* @param classNumber °à¼¶±àÂë
|
* @param startTime ¿ª°àʱ¼ä
|
* @param endTime ½áÊøÊ±¼ä
|
* @param subjectId
|
* @param needJoinAudit ÊÇ·ñ¼Ó°àÉóÅú
|
* @param needQuitAudit ÊÇ·ñÍ˰àÉóÅú
|
* @param showAnalysisAfterExer Íê³ÉÁ·Ï°ºóÊÇ·ñÏÔʾ´ð°¸
|
* @param canMultiExer ÊÇ·ñÔÊÐíÖØ¸´Ñ§Ï°
|
* @param needForum ÊÇ·ñ¿ªÍ¨ÂÛ̳
|
* @return
|
*/
|
@PostMapping(value = "copy")
|
public Result doCopy(String classId, String className, String classNumber, String startTime, String endTime,
|
String subjectId, Integer needJoinAudit, Integer needQuitAudit, Integer showAnalysisAfterExer,
|
Integer canMultiExer, Integer needForum) {
|
return new Result(true, "copy success");
|
}
|
|
/**
|
* ¸üа༶
|
*
|
* @param classId °à¼¶id
|
* @param className °à¼¶Ãû³Æ
|
* @param classNumber °à¼¶±àÂë
|
* @param startTime ¿ª°àʱ¼ä
|
* @param endTime ½áÊøÊ±¼ä
|
* @param subjectId
|
* @param needJoinAudit ÊÇ·ñ¼Ó°àÉóÅú
|
* @param needQuitAudit ÊÇ·ñÍ˰àÉóÅú
|
* @param showAnalysisAfterExer Íê³ÉÁ·Ï°ºóÊÇ·ñÏÔʾ´ð°¸
|
* @param canMultiExer ÊÇ·ñÔÊÐíÖØ¸´Ñ§Ï°
|
* @param needForum ÊÇ·ñ¿ªÍ¨ÂÛ̳
|
* @return
|
*/
|
@PostMapping(value = "update")
|
public Result update(String classId, String className, String classNumber, String startTime, String endTime,
|
String teacherId, String subjectId, @RequestParam(defaultValue = "false") Boolean needJoinAudit,
|
@RequestParam(defaultValue = "false") Boolean needQuitAudit,
|
@RequestParam(defaultValue = "false") Boolean showAnalysisAfterExer,
|
@RequestParam(defaultValue = "false") Boolean canMultiExer,
|
@RequestParam(defaultValue = "false") Boolean needForum) {
|
try {
|
return classService.updateClass(classId, className, classNumber, DateUtils.convertStringToDate(startTime),
|
DateUtils.convertStringToDate(endTime), subjectId, needJoinAudit, needQuitAudit,
|
showAnalysisAfterExer, canMultiExer, needForum, teacherId);
|
} catch (ParseException e) {
|
log.error(e, e);
|
return new Result(false, "ÈÕÆÚ²ÎÊý´íÎó");
|
}
|
}
|
|
/**
|
* °à¼¶¹ÜÀí ѧԱ¹ÜÀí »ñȡѧԱÁбí
|
*
|
* @param classId °à¼¶id
|
* @param limit ÿҳÏÔʾ¼¸Ìõ
|
* @param pageNum Ò³Âë
|
* @param keyword ËÑË÷¹Ø¼ü×Ö
|
* @return ѧϰ״̬˵Ã÷(0, δ¿ªÊ¼ ¡£ 1, ѧϰÖÐ ¡£ 2, ÒѽáÊø, 3, ´ý¼¤»î ¡£ 4, ÒѶ³½á)
|
*/
|
@ApiOperation(value = "»ñȡѧԱÁбí", notes = "ѧϰ״̬˵Ã÷(0, δ¿ªÊ¼ ¡£ 1, ѧϰÖÐ ¡£ 2, ÒѽáÊø, 3, ´ý¼¤»î ¡£ 4, ÒѶ³½á)")
|
@ApiImplicitParams({
|
@ApiImplicitParam(name = "classId", value = "°à¼¶id", required = true, paramType="query", dataType = "String"),
|
})
|
@GetMapping(value = "lstStudent4Class")
|
public Result lstStudent4Class(String classId, @RequestParam(defaultValue = "10") Integer limit,
|
@RequestParam(defaultValue = "1") Integer pageNum, @RequestParam(defaultValue = "") String keyword) {
|
|
List<Map<String, Object>> students = studentService.getStudentLst(classId, keyword, new Pager(limit, pageNum));
|
int studentCount = studentService.getStudentsCount(classId, keyword);
|
|
return new Result(true, "success",
|
CollectionUtils.newObjectMap("studentCount", studentCount, "studentLst", students));
|
}
|
|
/**
|
* µ¼ÈëѧԱ
|
*
|
* @param classId °à¼¶id
|
*/
|
@GetMapping(value = "importStudent")
|
public Result importStudent(String classId) {
|
return new Result(true, "import success");
|
}
|
|
/**
|
* ÐÂÔöѧԱ
|
*
|
* @param name ѧԱÃû³Æ
|
* @param studentNumber ѧºÅ
|
* @param classId °à¼¶id
|
* @param sex ÐÔ±ð
|
* @param mobilePhone ÊÖ»úºÅ
|
*/
|
@PostMapping(value = "addStudent")
|
public Result addStudent(String classId, String name, String studentNumber, Boolean sex, String mobilePhone,String comName) {
|
|
return studentService.insertStudent(classId, name, studentNumber, sex, mobilePhone, ClientUtils.getOrgId(),comName);
|
|
}
|
|
/**
|
* ¸üÐÂѧԱ
|
*
|
* @param name ѧԱÃû³Æ
|
* @param studentNumber ѧºÅ
|
* @param classId °à¼¶id
|
* @param sex ÐÔ±ð
|
* @param mobilePhone ÊÖ»úºÅ
|
*/
|
@PostMapping(value = "updateStudent")
|
public Result updateStudent(String studentId, String name,String password, String studentNumber, Boolean sex, String mobilePhone) {
|
|
return studentService.updateStudent(studentId, name,password, studentNumber, sex, mobilePhone);
|
|
}
|
|
|
|
/**
|
* ¼¤»îѧԱ
|
*
|
* @param studentIds ѧԱIds
|
*/
|
@GetMapping(value = "activateStudent")
|
public Result activate(String studentIds) {
|
return studentService.doActivateStudent(studentIds.split(","));
|
}
|
|
/**
|
* ¶³½áѧԱ
|
*
|
* @param studentIds ѧԱIds
|
*/
|
@GetMapping(value = "blockStudent")
|
public Result block(String studentIds) {
|
return studentService.doDeActivateStudent(studentIds.split(","));
|
}
|
|
/**
|
* ɾ³ýѧԱ
|
*
|
* @param studentIds ѧԱIds
|
*/
|
@GetMapping(value = "deleteStudent")
|
public Result deleteStudent(String classId, String studentIds) {
|
return studentService.deleteStudent(classId, studentIds.split(","));
|
}
|
|
/**
|
* Ìí¼Ó°à¼¶¿Î³Ì
|
* @throws InvocationTargetException
|
* @throws IllegalAccessException
|
*
|
*/
|
@PostMapping(value = "addClsSubject")
|
public Result addClsSubject(String classId, String origSubjectId,String teacherId,Integer schoolYear ,Integer term) throws IllegalAccessException, InvocationTargetException {
|
return this.subjectService.addClsSubject(classId,origSubjectId,teacherId,schoolYear,term);
|
}
|
|
/**
|
* ¸üа༶¿Î³Ì
|
*/
|
@PostMapping(value = "updateClsSubject")
|
public Result updateClsSubject(String classId,String subjectId, String origSubjectId,String teacherId,Integer schoolYear ,Integer term) {
|
return this.subjectService.updateClsSubject(classId,subjectId,origSubjectId,teacherId,schoolYear,term);
|
}
|
|
/**
|
* ɾ³ý°à¼¶¿Î³Ì
|
*/
|
@GetMapping(value = "deleteClsSubject")
|
public Result deleteClsSubject(String classId,String subjectIds){
|
//ɾ³ý¿Î³Ì¼°¿Î³Ì°à¼¶¹ØÁª¹ØÏµ
|
return subjectService.deleteClsSubject(classId,subjectIds.split(","));
|
}
|
|
/**
|
* ËùÓа༶Áбí
|
* @param subjectId ¸ù¾ÝsubjectId¹ýÂË
|
* @return
|
*/
|
@RequestMapping(value = "/selectlist", method = RequestMethod.GET)
|
public @ResponseBody List<Map<String,Object>> classList() {
|
return classService.queryAllClassIdAndName();
|
}
|
|
/**
|
* »ñȡѧԱÏêϸÐÅÏ¢
|
*
|
* @param studentId ѧԱid
|
* @return percent (״̬˵Ã÷£º0,δ¿ªÊ¼¡£1,ѧϰÖС£2,ÒѽáÊø¡£) status (0,δÌá½»¡£1,ÒÑÌá½»)
|
*/
|
@GetMapping(value = "getStudentDetail")
|
public Result getStudentDetail(String studentId) {
|
// ѧԱÐÅÏ¢
|
Map<String, Object> studentDetail = CollectionUtils.newObjectMap("studentName", "Àî¸Õ", "classNumber", "123456",
|
"sex", 1, "registerTime", new Date(), "email", "12345676@qq.com", "mobilePhone", "13611111123",
|
"stuSubjects", 3, "commitExerInfo", 3, "examCount", 3, "releaseTopic", 3, "commentCount", 2);
|
// ѧϰµµ°¸
|
Map<String, Object> subjectOne = CollectionUtils.newObjectMap("subjectName", "ÎïÁ÷¿ÆÑ§Ó빤³Ì", "percent", 2,
|
"studyDuration", 18, "endStudyTime", new Date(), "score", 96.2);
|
Map<String, Object> subjectTwo = CollectionUtils.newObjectMap("subjectName", "ÎïÁ÷¹¤³Ì»ù´¡", "percent", 1,
|
"studyDuration", 18, "endStudyTime", new Date(), "score", "");
|
Map<String, Object> subjectThree = CollectionUtils.newObjectMap("subjectName", "ÎïÁ÷¹¤³Ì»ù´¡2", "percent", 0,
|
"studyDuration", "", "endStudyTime", "", "score", "");
|
// ×÷Òµ¼Ç¼
|
Map<String, Object> exerOne = CollectionUtils.newObjectMap("exerciseName", "ÎïÁ÷¿ÆÑ§Ó빤³Ì", "subjectName", "ÎïÁ÷¿ÆÑ§Ó빤³Ì",
|
"status", 1, "commitTime", new Date(), "score", 96.2);
|
Map<String, Object> exerTwo = CollectionUtils.newObjectMap("exerciseName", "ÎïÁ÷¹¤³Ì»ù´¡", "subjectName", "ÎïÁ÷¹¤³Ì»ù´¡",
|
"status", 0, "commitTime", "", "score", "");
|
Map<String, Object> exerThree = CollectionUtils.newObjectMap("exerciseName", "ÎïÁ÷¹¤³Ì»ù´¡2", "subjectName",
|
"ÎïÁ÷¹¤³Ì»ù´¡2", "status", 0, "commitTime", "", "score", "");
|
// ¿¼ÊԼǼ
|
Map<String, Object> examOne = CollectionUtils.newObjectMap("examName", "ÎïÁ÷¿ÆÑ§Ó빤³Ì", "subjectName", "ÎïÁ÷¿ÆÑ§Ó빤³Ì",
|
"status", 1, "commintTime", new Date(), "score", 90.6);
|
Map<String, Object> examTwo = CollectionUtils.newObjectMap("examName", "ÎïÁ÷¿ÆÑ§Ó빤³Ì", "subjectName", "ÎïÁ÷¿ÆÑ§Ó빤³Ì",
|
"status", 0, "commintTime", new Date(), "score", "");
|
return new Result(true, "success",
|
CollectionUtils.newObjectMap("studentDetail", studentDetail, "subjectLst",
|
CollectionUtils.newList(subjectOne, subjectTwo, subjectThree), "exerInfoLst",
|
CollectionUtils.newList(exerOne, exerTwo, exerThree), "examLst",
|
CollectionUtils.newList(examOne, examTwo)));
|
}
|
}
|