package com.example.civilizedcity.controller; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.example.civilizedcity.common.BaseController; import com.example.civilizedcity.common.Constants; import com.example.civilizedcity.common.ResponseBean; import java.time.LocalDateTime; import java.util.List; import com.example.civilizedcity.common.StringUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import com.example.civilizedcity.entity.SysPosition; import com.example.civilizedcity.service.SysPositionService; /** * 岗位表;(sys_position)表控制层 * * @author : http://njyunzhi.com * @date : 2022-12-12 */ @Api(tags = "岗位表对象功能接口") @RestController @RequestMapping("/") public class SysPositionController extends BaseController { @Autowired private SysPositionService sysPositionService; /** * 通过ID查询单条数据 * * @param positionId 主键 * @return 实例对象 */ @ApiOperation("通过ID查询单条数据") @GetMapping("/sysPosition/{id}") public ResponseBean queryById(@ApiParam("对象ID") @PathVariable String id) throws Exception { return ResponseBean.success(sysPositionService.getById(id)); } /** * 分页查询 * * @param pageNum 当前页码 * @param pageSize 每页条数 * @return 查询结果 */ @ApiOperation("分页查询") @GetMapping("/sysPosition") public ResponseBean list(@ApiParam("页码") @RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum, @ApiParam("单页数据量") @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize, @ApiParam("所属单位") @RequestParam(value = "orgId", required = false) String orgId, @ApiParam("名称") @RequestParam(value = "name", defaultValue = "10") String name) throws Exception { IPage pg = new Page<>(pageNum, pageSize); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq(!StringUtils.isEmpty(orgId), "org_id", orgId); queryWrapper.like(StringUtils.isEmpty(name), "name", name); queryWrapper.gt("status", Constants.STATUS_DELETE); queryWrapper.orderByDesc("create_date"); IPage result = sysPositionService.page(pg, queryWrapper); return ResponseBean.success(result); } /** * 新增数据 * * @param sysPosition 实例对象 * @return 实例对象 */ @ApiOperation("新增数据") @PostMapping("/sysPosition") public ResponseBean add(@ApiParam("对象实体") @RequestBody SysPosition sysPosition) throws Exception { if (StringUtils.isEmpty(sysPosition.getName())) { return ResponseBean.error("名称不能为空"); } if (StringUtils.isEmpty(sysPosition.getOrgId())) { return ResponseBean.error("单位不能为空"); } long i = sysPositionService.countInOrg(sysPosition.getOrgId(), sysPosition.getName(), null); if (i > 0) { return ResponseBean.error("名称已存在"); } sysPosition.setPositionId(null); sysPosition.setStatus(Constants.STATUS_NORMAL); sysPosition.setCreateDate(LocalDateTime.now()); sysPositionService.save(sysPosition); return ResponseBean.success(sysPosition); } /** * 更新数据 * * @param sysPosition 实例对象 * @return 实例对象 */ @ApiOperation("更新数据") @PutMapping("/sysPosition/{id}") public ResponseBean edit(@ApiParam("对象实体") @RequestBody SysPosition sysPosition, @ApiParam("对象ID") @PathVariable String id) throws Exception { if (StringUtils.isEmpty(sysPosition.getName())) { return ResponseBean.error("名称不能为空"); } if (StringUtils.isEmpty(sysPosition.getOrgId())) { return ResponseBean.error("单位不能为空"); } long i = sysPositionService.countInOrg(sysPosition.getOrgId(), sysPosition.getName(), id); if (i > 0) { return ResponseBean.error("名称已存在"); } sysPosition.setPositionId(id); sysPositionService.updateById(sysPosition); return ResponseBean.success(sysPosition); } /** * 通过主键删除数据 * * @param positionId 主键 * @return 是否成功 */ @ApiOperation("通过主键删除数据") @DeleteMapping("/sysPosition/{id}") public ResponseBean deleteById(@ApiParam("对象ID") @PathVariable String id) { sysPositionService.removeLogicById(id); return ResponseBean.success("success"); } }