PreviewController.java 3.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. package com.qxgmat.controller.admin;
  2. import com.github.pagehelper.Page;
  3. import com.nuliji.tools.PageMessage;
  4. import com.nuliji.tools.Response;
  5. import com.nuliji.tools.ResponseHelp;
  6. import com.nuliji.tools.Transform;
  7. import com.qxgmat.data.constants.enums.status.HomeworkPreviewStatus;
  8. import com.qxgmat.data.dao.entity.HomeworkPreview;
  9. import com.qxgmat.dto.admin.request.HomeworkPreviewDto;
  10. import com.qxgmat.dto.admin.response.HomeworkPreviewListDto;
  11. import com.qxgmat.service.inline.HomeworkPreviewService;
  12. import com.qxgmat.service.inline.ManagerLogService;
  13. import io.swagger.annotations.Api;
  14. import io.swagger.annotations.ApiOperation;
  15. import org.springframework.beans.factory.annotation.Autowired;
  16. import org.springframework.http.MediaType;
  17. import org.springframework.validation.annotation.Validated;
  18. import org.springframework.web.bind.annotation.*;
  19. import javax.servlet.http.HttpServletRequest;
  20. import javax.servlet.http.HttpSession;
  21. import java.util.List;
  22. @RestController("AdminPreviewController")
  23. @RequestMapping("/admin/preview")
  24. @Api(tags = "预习作业接口", description = "设置预习作业", produces = MediaType.APPLICATION_JSON_VALUE)
  25. public class PreviewController {
  26. @Autowired
  27. private ManagerLogService managerLogService;
  28. @Autowired
  29. private HomeworkPreviewService homeworkPreviewService;
  30. @RequestMapping(value = "/add", method = RequestMethod.POST)
  31. @ApiOperation(value = "添加预习作业", httpMethod = "POST")
  32. public Response<HomeworkPreview> add(@RequestBody @Validated HomeworkPreviewDto dto, HttpServletRequest request) {
  33. HomeworkPreview entity = Transform.dtoToEntity(dto);
  34. entity = homeworkPreviewService.edit(entity);
  35. managerLogService.log(request);
  36. return ResponseHelp.success(entity);
  37. }
  38. @RequestMapping(value = "/edit", method = RequestMethod.PUT)
  39. @ApiOperation(value = "编辑预习作业", httpMethod = "PUT")
  40. public Response<Boolean> edit(@RequestBody @Validated HomeworkPreviewDto dto, HttpServletRequest request) {
  41. HomeworkPreview entity = Transform.dtoToEntity(dto);
  42. entity = homeworkPreviewService.edit(entity);
  43. managerLogService.log(request);
  44. return ResponseHelp.success(true);
  45. }
  46. @RequestMapping(value = "/delete", method = RequestMethod.DELETE)
  47. @ApiOperation(value = "删除预习作业", httpMethod = "DELETE")
  48. public Response<Boolean> delete(@RequestParam int id, HttpServletRequest request) {
  49. managerLogService.log(request);
  50. return ResponseHelp.success(homeworkPreviewService.delete(id));
  51. }
  52. @RequestMapping(value = "/detail", method = RequestMethod.GET)
  53. @ApiOperation(value = "获取预习作业", httpMethod = "GET")
  54. public Response<HomeworkPreview> detail(@RequestParam int id, HttpSession session) {
  55. HomeworkPreview entity = homeworkPreviewService.selectOne(id);
  56. return ResponseHelp.success(entity);
  57. }
  58. @RequestMapping(value = "/list", method = RequestMethod.GET)
  59. @ApiOperation(value = "预习作业列表", httpMethod = "GET")
  60. public Response<PageMessage<HomeworkPreviewListDto>> list(
  61. @RequestParam(required = false, defaultValue = "1") int page,
  62. @RequestParam(required = false, defaultValue = "100") int size,
  63. @RequestParam(required = false) Integer category,
  64. @RequestParam(required = false) Integer status,
  65. HttpSession session) {
  66. Page<HomeworkPreview> p = homeworkPreviewService.select(page, size, category, HomeworkPreviewStatus.ValueOf(status));
  67. List<HomeworkPreviewListDto> pr = Transform.convert(p, HomeworkPreviewListDto.class);
  68. return ResponseHelp.success(pr, page, size, p.getTotal());
  69. }
  70. }