CourseScheduleController.java 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. package com.ym.mec.web.controller;
  2. import com.ym.mec.biz.dal.dto.ClassDateAdjustDto;
  3. import com.ym.mec.biz.dal.entity.CourseSchedule;
  4. import com.ym.mec.biz.dal.entity.CourseScheduleComplaints;
  5. import com.ym.mec.biz.dal.page.StudentAttendanceQueryInfo;
  6. import com.ym.mec.biz.service.CourseScheduleService;
  7. import com.ym.mec.biz.service.StudentAttendanceService;
  8. import com.ym.mec.common.controller.BaseController;
  9. import io.swagger.annotations.Api;
  10. import io.swagger.annotations.ApiOperation;
  11. import io.swagger.annotations.ApiParam;
  12. import org.springframework.beans.factory.annotation.Autowired;
  13. import org.springframework.http.MediaType;
  14. import org.springframework.web.bind.annotation.*;
  15. import java.util.Date;
  16. import java.util.List;
  17. /**
  18. * @Author Joburgess
  19. * @Date 2019/9/10
  20. */
  21. @RequestMapping("courseSchedule")
  22. @Api(tags = "课程计划服务")
  23. @RestController
  24. public class CourseScheduleController extends BaseController {
  25. @Autowired
  26. private CourseScheduleService scheduleService;
  27. @Autowired
  28. private StudentAttendanceService studentAttendanceService;
  29. @ApiOperation(value = "排课")
  30. @PostMapping("/batchAddCourseSchedule/{musicGroupID}")
  31. public Object batchAddCourseSchedule(@RequestBody List<CourseSchedule> courseSchedules,
  32. @ApiParam(value = "乐团编号", required = true) @PathVariable("musicGroupID") Long musicGroupID){
  33. scheduleService.batchAddCourseSchedule(courseSchedules);
  34. return succeed();
  35. }
  36. @ApiOperation(value = "批量跟新排课")
  37. @PostMapping("/batchUpdateCourseSchedule/{musicGroupID}")
  38. public Object batchUpdateCourseSchedule(@RequestBody List<CourseSchedule> courseSchedules,
  39. @ApiParam(value = "乐团编号", required = true) @PathVariable("musicGroupID") Long musicGroupID){
  40. scheduleService.batchUpdateCourseSchedule(courseSchedules,musicGroupID);
  41. return succeed();
  42. }
  43. @ApiOperation(value = "根据月份获取乐团在该月有课的日期")
  44. @GetMapping("/getCourseScheduleDateByMonth")
  45. public Object getCourseScheduleDateByMonth(@ApiParam(value = "乐团编号", required = true) @RequestParam Long musicGroupID,
  46. @ApiParam(value = "月份", required = true) @RequestParam Date month) {
  47. return succeed(scheduleService.getCourseScheduleDateByMonth(musicGroupID,month));
  48. }
  49. @ApiOperation(value = "根据日期获取当日排课")
  50. @GetMapping("/getCourseSchedulesWithDate")
  51. public Object getCourseSchedulesWithDate(@ApiParam(value = "日期", required = true) Date date){
  52. return succeed(scheduleService.getCourseSchedulesWithDate(date));
  53. }
  54. @ApiOperation(value = "根据课程ID查询正在或即将开始的课程")
  55. @GetMapping("/getCurrentCourseDetail/{courseID}")
  56. public Object getCurrentCourseDetail(@ApiParam(value = "课程ID", required = true) @PathVariable("courseID") Long courseID){
  57. return succeed(scheduleService.getCurrentCourseDetail(courseID));
  58. }
  59. @ApiOperation(value = "根据班级ID获取当前课程的学生")
  60. @GetMapping("/getCurrentCourseStudents")
  61. public Object getCurrentCourseStudents(@RequestBody StudentAttendanceQueryInfo queryInfo){
  62. return succeed(studentAttendanceService.getCurrentCourseStudents(queryInfo));
  63. }
  64. @ApiOperation(value = "课时调整")
  65. @PostMapping(value = "/classStartDateAdjust",consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
  66. public Object classStartDateAdjust(ClassDateAdjustDto classDateAdjustDto){
  67. scheduleService.classStartDateAdjust(classDateAdjustDto);
  68. return succeed();
  69. }
  70. @ApiOperation(value = "课时交换")
  71. @GetMapping(value = "/courseSwap",consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
  72. public Object courseSwap(Long courseScheduleId1,Long courseScheduleId2){
  73. scheduleService.courseSwap(courseScheduleId1,courseScheduleId2);
  74. return succeed();
  75. }
  76. @ApiOperation(value = "课程投诉审核")
  77. @GetMapping(value = "/courseScheduleCommplaintAudit")
  78. public Object courseScheduleCommplaintAudit(CourseScheduleComplaints courseScheduleComplaints){
  79. scheduleService.courseScheduleCommplaintAudit(courseScheduleComplaints);
  80. return succeed();
  81. }
  82. }