SysPostController.java 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. package com.lxq.admin.biz.controller;
  2. import cn.hutool.core.collection.CollUtil;
  3. import cn.hutool.core.util.StrUtil;
  4. import com.baomidou.mybatisplus.core.toolkit.Wrappers;
  5. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  6. import com.lxq.common.core.util.R;
  7. import com.lxq.common.log.annotation.SysLog;
  8. import com.lxq.system.biz.model.SysPost;
  9. import com.lxq.system.biz.service.SysPostService;
  10. import io.swagger.v3.oas.annotations.Operation;
  11. import io.swagger.v3.oas.annotations.security.SecurityRequirement;
  12. import io.swagger.v3.oas.annotations.tags.Tag;
  13. import lombok.RequiredArgsConstructor;
  14. import org.springdoc.core.annotations.ParameterObject;
  15. import org.springframework.http.HttpHeaders;
  16. import org.springframework.security.access.prepost.PreAuthorize;
  17. import org.springframework.web.bind.annotation.*;
  18. import java.util.List;
  19. /**
  20. * 岗位信息表
  21. *
  22. * @author 没秃顶的码农
  23. * @date 2023/11/06
  24. */
  25. @RestController
  26. @RequiredArgsConstructor
  27. @RequestMapping("/post")
  28. @Tag(description = "post", name = "岗位信息表管理")
  29. @SecurityRequirement(name = HttpHeaders.AUTHORIZATION)
  30. public class SysPostController {
  31. private final SysPostService sysPostService;
  32. /**
  33. * 获取岗位列表
  34. * @return 岗位列表
  35. */
  36. @GetMapping("/list")
  37. public R<List<SysPost>> listPosts() {
  38. return R.ok(sysPostService.list(Wrappers.emptyWrapper()));
  39. }
  40. /**
  41. * 分页查询
  42. * @param page 分页对象
  43. * @param sysPost 岗位信息表
  44. * @return
  45. */
  46. @Operation(description = "分页查询", summary = "分页查询")
  47. @GetMapping("/page")
  48. @PreAuthorize("@pms.hasPermission('sys_post_view')")
  49. public R getSysPostPage(@ParameterObject Page<SysPost> page, @ParameterObject SysPost sysPost) {
  50. return R.ok(sysPostService.page(page, Wrappers.<SysPost>lambdaQuery()
  51. .like(StrUtil.isNotBlank(sysPost.getPostName()), SysPost::getPostName, sysPost.getPostName())));
  52. }
  53. /**
  54. * 通过id查询岗位信息表
  55. * @param postId id
  56. * @return R
  57. */
  58. @Operation(description = "通过id查询", summary = "通过id查询")
  59. @GetMapping("/getById")
  60. @PreAuthorize("@pms.hasPermission('sys_post_view')")
  61. public R getById(@RequestParam("postId") Long postId) {
  62. return R.ok(sysPostService.getById(postId));
  63. }
  64. /**
  65. * 查询岗位信息信息
  66. * @param query 查询条件
  67. * @return R
  68. */
  69. @Operation(description = "查询角色信息", summary = "查询角色信息")
  70. @GetMapping("/details")
  71. @PreAuthorize("@pms.hasPermission('sys_post_view')")
  72. public R getDetails(SysPost query) {
  73. return R.ok(sysPostService.getOne(Wrappers.query(query), false));
  74. }
  75. /**
  76. * 新增岗位信息表
  77. * @param sysPost 岗位信息表
  78. * @return R
  79. */
  80. @Operation(description = "新增岗位信息表", summary = "新增岗位信息表")
  81. @SysLog("新增岗位信息表")
  82. @PostMapping("add")
  83. @PreAuthorize("@pms.hasPermission('sys_post_add')")
  84. public R save(@RequestBody SysPost sysPost) {
  85. return R.ok(sysPostService.save(sysPost));
  86. }
  87. /**
  88. * 修改岗位信息表
  89. * @param sysPost 岗位信息表
  90. * @return R
  91. */
  92. @Operation(description = "修改岗位信息表", summary = "修改岗位信息表")
  93. @SysLog("修改岗位信息表")
  94. @PutMapping("update")
  95. @PreAuthorize("@pms.hasPermission('sys_post_edit')")
  96. public R updateById(@RequestBody SysPost sysPost) {
  97. return R.ok(sysPostService.updateById(sysPost));
  98. }
  99. /**
  100. * 通过id删除岗位信息表
  101. * @param id id
  102. * @return R
  103. */
  104. @Operation(description = "通过id删除岗位信息表", summary = "通过id删除岗位信息表")
  105. @SysLog("通过id删除岗位信息表")
  106. @DeleteMapping("removeById/{id}")
  107. @PreAuthorize("@pms.hasPermission('sys_post_del')")
  108. public R removeById(@PathVariable Long id) {
  109. return R.ok(sysPostService.removeBatchByIds(CollUtil.toList(id)));
  110. }
  111. }