SysPositionController.java 5.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. package com.example.civilizedcity.controller;
  2. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  3. import com.baomidou.mybatisplus.core.metadata.IPage;
  4. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  5. import com.example.civilizedcity.common.BaseController;
  6. import com.example.civilizedcity.common.Constants;
  7. import com.example.civilizedcity.common.ResponseBean;
  8. import java.time.LocalDateTime;
  9. import java.util.List;
  10. import com.example.civilizedcity.common.StringUtils;
  11. import io.swagger.annotations.Api;
  12. import io.swagger.annotations.ApiOperation;
  13. import io.swagger.annotations.ApiParam;
  14. import org.springframework.beans.factory.annotation.Autowired;
  15. import org.springframework.web.bind.annotation.*;
  16. import com.example.civilizedcity.entity.SysPosition;
  17. import com.example.civilizedcity.service.SysPositionService;
  18. /**
  19. * 岗位表;(sys_position)表控制层
  20. *
  21. * @author : http://njyunzhi.com
  22. * @date : 2022-12-12
  23. */
  24. @Api(tags = "岗位表对象功能接口")
  25. @RestController
  26. @RequestMapping("/")
  27. public class SysPositionController extends BaseController {
  28. @Autowired
  29. private SysPositionService sysPositionService;
  30. /**
  31. * 通过ID查询单条数据
  32. *
  33. * @param positionId 主键
  34. * @return 实例对象
  35. */
  36. @ApiOperation("通过ID查询单条数据")
  37. @GetMapping("/sysPosition/{id}")
  38. public ResponseBean queryById(@ApiParam("对象ID") @PathVariable String id) throws Exception {
  39. return ResponseBean.success(sysPositionService.getById(id));
  40. }
  41. /**
  42. * 分页查询
  43. *
  44. * @param pageNum 当前页码
  45. * @param pageSize 每页条数
  46. * @return 查询结果
  47. */
  48. @ApiOperation("分页查询")
  49. @GetMapping("/sysPosition")
  50. public ResponseBean list(@ApiParam("页码") @RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum,
  51. @ApiParam("单页数据量") @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize,
  52. @ApiParam("所属单位") @RequestParam(value = "orgId", required = false) String orgId,
  53. @ApiParam("名称") @RequestParam(value = "name", defaultValue = "10") String name) throws Exception {
  54. IPage<SysPosition> pg = new Page<>(pageNum, pageSize);
  55. QueryWrapper<SysPosition> queryWrapper = new QueryWrapper<>();
  56. queryWrapper.eq(!StringUtils.isEmpty(orgId), "org_id", orgId);
  57. queryWrapper.like(StringUtils.isEmpty(name), "name", name);
  58. queryWrapper.gt("status", Constants.STATUS_DELETE);
  59. queryWrapper.orderByDesc("create_date");
  60. IPage<SysPosition> result = sysPositionService.page(pg, queryWrapper);
  61. return ResponseBean.success(result);
  62. }
  63. /**
  64. * 新增数据
  65. *
  66. * @param sysPosition 实例对象
  67. * @return 实例对象
  68. */
  69. @ApiOperation("新增数据")
  70. @PostMapping("/sysPosition")
  71. public ResponseBean add(@ApiParam("对象实体") @RequestBody SysPosition sysPosition) throws Exception {
  72. if (StringUtils.isEmpty(sysPosition.getName())) {
  73. return ResponseBean.error("名称不能为空");
  74. }
  75. if (StringUtils.isEmpty(sysPosition.getOrgId())) {
  76. return ResponseBean.error("单位不能为空");
  77. }
  78. long i = sysPositionService.countInOrg(sysPosition.getOrgId(), sysPosition.getName(), null);
  79. if (i > 0) {
  80. return ResponseBean.error("名称已存在");
  81. }
  82. sysPosition.setPositionId(null);
  83. sysPosition.setStatus(Constants.STATUS_NORMAL);
  84. sysPosition.setCreateDate(LocalDateTime.now());
  85. sysPositionService.save(sysPosition);
  86. return ResponseBean.success(sysPosition);
  87. }
  88. /**
  89. * 更新数据
  90. *
  91. * @param sysPosition 实例对象
  92. * @return 实例对象
  93. */
  94. @ApiOperation("更新数据")
  95. @PutMapping("/sysPosition/{id}")
  96. public ResponseBean edit(@ApiParam("对象实体") @RequestBody SysPosition sysPosition,
  97. @ApiParam("对象ID") @PathVariable String id) throws Exception {
  98. if (StringUtils.isEmpty(sysPosition.getName())) {
  99. return ResponseBean.error("名称不能为空");
  100. }
  101. if (StringUtils.isEmpty(sysPosition.getOrgId())) {
  102. return ResponseBean.error("单位不能为空");
  103. }
  104. long i = sysPositionService.countInOrg(sysPosition.getOrgId(), sysPosition.getName(), id);
  105. if (i > 0) {
  106. return ResponseBean.error("名称已存在");
  107. }
  108. sysPosition.setPositionId(id);
  109. sysPositionService.updateById(sysPosition);
  110. return ResponseBean.success(sysPosition);
  111. }
  112. /**
  113. * 通过主键删除数据
  114. *
  115. * @param positionId 主键
  116. * @return 是否成功
  117. */
  118. @ApiOperation("通过主键删除数据")
  119. @DeleteMapping("/sysPosition/{id}")
  120. public ResponseBean deleteById(@ApiParam("对象ID") @PathVariable String id) {
  121. sysPositionService.removeLogicById(id);
  122. return ResponseBean.success("success");
  123. }
  124. }