SysClassController.java 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. package com.zd.system.controller;
  2. import java.util.List;
  3. import java.io.IOException;
  4. import javax.servlet.http.HttpServletResponse;
  5. import com.github.xiaoymin.knife4j.annotations.ApiSupport;
  6. import com.zd.common.core.annotation.Log;
  7. import com.zd.common.core.annotation.PreAuthorize;
  8. import com.zd.common.core.log.BusinessType;
  9. import com.zd.common.core.utils.ExcelUtil;
  10. import com.zd.common.swagger.config.Knife4jConfiguration;
  11. import com.zd.model.domain.ResultData;
  12. import com.zd.model.domain.per.PerFun;
  13. import com.zd.model.domain.per.PerPrefix;
  14. import com.zd.model.page.TableDataInfo;
  15. import org.springframework.beans.factory.annotation.Autowired;
  16. import org.springframework.web.bind.annotation.GetMapping;
  17. import org.springframework.web.bind.annotation.PostMapping;
  18. import org.springframework.web.bind.annotation.PutMapping;
  19. import org.springframework.web.bind.annotation.DeleteMapping;
  20. import org.springframework.web.bind.annotation.PathVariable;
  21. import org.springframework.web.bind.annotation.RequestBody;
  22. import org.springframework.web.bind.annotation.RequestMapping;
  23. import org.springframework.web.bind.annotation.RestController;
  24. import com.zd.system.domain.SysClass;
  25. import com.zd.system.service.ISysClassService;
  26. import com.zd.common.core.web.controller.BaseController;
  27. import io.swagger.annotations.Api;
  28. import io.swagger.annotations.ApiOperation;
  29. /**
  30. * 班级字典Controller
  31. *
  32. * @author zd
  33. * @date 2022-04-08
  34. */
  35. @RestController
  36. @Api(tags = "【班级字典】")
  37. //作者手动加入 ,在接口上加作者@ApiOperationSupport(author = "XXX")
  38. @ApiSupport(author = Knife4jConfiguration.Author.CYL)
  39. @RequestMapping("/class")
  40. public class SysClassController extends BaseController {
  41. @Autowired
  42. private ISysClassService sysClassService;
  43. /**
  44. * 查询班级字典列表
  45. */
  46. @PreAuthorize(hasPermi = PerPrefix.SYSTEM_CLASS + PerFun.LIST)
  47. @GetMapping("/list")
  48. @ApiOperation(value = "查询班级字典列表")
  49. public TableDataInfo<SysClass> list(SysClass sysClass) {
  50. startPage();
  51. List<SysClass> list = sysClassService.selectSysClassList(sysClass);
  52. return getDataTable(list);
  53. }
  54. /**
  55. * 查询班级字典列表
  56. */
  57. @GetMapping("/listAll")
  58. @ApiOperation(value = "查询班级字典列表")
  59. public ResultData<List<SysClass>> listAll(SysClass sysClass) {
  60. List<SysClass> list = sysClassService.selectSysClassList(sysClass);
  61. return ResultData.success(list);
  62. }
  63. /**
  64. * 导出班级字典列表
  65. */
  66. @ApiOperation(value = "导出班级字典列表")
  67. @PreAuthorize(hasPermi = PerPrefix.SYSTEM_CLASS + PerFun.EXPORT)
  68. @Log(title = "班级字典", businessType = BusinessType.EXPORT)
  69. @PostMapping("/export")
  70. public void export(HttpServletResponse response, SysClass sysClass) throws IOException {
  71. List<SysClass> list = sysClassService.selectSysClassList(sysClass);
  72. ExcelUtil<SysClass> util = new ExcelUtil<SysClass>(SysClass.class);
  73. util.exportExcel(response, list, "班级字典数据");
  74. }
  75. /**
  76. * 获取班级字典详细信息
  77. */
  78. @ApiOperation(value = "获取班级字典详细信息")
  79. @PreAuthorize(hasPermi = PerPrefix.SYSTEM_CLASS + PerFun.QUERY)
  80. @GetMapping(value = "/{id}")
  81. public ResultData<SysClass> getInfo(@PathVariable("id") Long id) {
  82. return ResultData.success(sysClassService.selectSysClassById(id));
  83. }
  84. /**
  85. * 新增班级字典
  86. */
  87. @ApiOperation(value = "新增班级字典")
  88. // @PreAuthorize(hasPermi = PerPrefix.SYSTEM_CLASS+ PerFun.ADD)
  89. @Log(title = "班级字典", businessType = BusinessType.INSERT)
  90. @PostMapping
  91. public ResultData add(@RequestBody SysClass sysClass) {
  92. return ResultData.success(sysClassService.insertSysClass(sysClass));
  93. }
  94. /**
  95. * 修改班级字典
  96. */
  97. @ApiOperation(value = "修改班级字典")
  98. // @PreAuthorize(hasPermi = PerPrefix.SYSTEM_CLASS+ PerFun.EDIT)
  99. @Log(title = "班级字典", businessType = BusinessType.UPDATE)
  100. @PutMapping
  101. public ResultData edit(@RequestBody SysClass sysClass) {
  102. return ResultData.result(sysClassService.updateSysClass(sysClass));
  103. }
  104. /**
  105. * 删除班级字典
  106. */
  107. @ApiOperation(value = "删除班级字典")
  108. @PreAuthorize(hasPermi = PerPrefix.SYSTEM_CLASS + PerFun.REMOVE)
  109. @Log(title = "班级字典", businessType = BusinessType.DELETE)
  110. @DeleteMapping("/{ids}")
  111. public ResultData remove(@PathVariable Long[] ids) {
  112. return ResultData.result(sysClassService.deleteSysClassByIds(ids));
  113. }
  114. }