package com.ruoyi.lavorissue.controller;
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.ruoyi.framework.aspectj.lang.annotation.Log;
|
import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
|
import com.ruoyi.framework.web.controller.BaseController;
|
import com.ruoyi.framework.web.domain.AjaxResult;
|
import com.ruoyi.lavorissue.pojo.DeptPosition;
|
import com.ruoyi.lavorissue.service.DeptPositionService;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.util.CollectionUtils;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.util.List;
|
|
/**
|
* @author :yys
|
* @date : 2025/11/19 13:20
|
*/
|
@RestController
|
@Api(tags = "部门岗位")
|
@RequestMapping("/deptPosition")
|
public class DeptPositionController extends BaseController {
|
|
@Autowired
|
private DeptPositionService deptPositionService;
|
|
|
/**
|
* 递归获取部门岗位树形结构
|
* @return
|
*/
|
@GetMapping("/getDeptPositionTree")
|
@Log(title = "递归获取部门岗位树形结构", businessType = BusinessType.OTHER)
|
@ApiOperation("递归获取部门岗位树形结构")
|
public AjaxResult getDeptPositionTree() {
|
return deptPositionService.getDeptPositionTree();
|
}
|
|
/**
|
* 查询所有岗位列表
|
*/
|
@GetMapping("/list")
|
@Log(title = "查询所有岗位列表", businessType = BusinessType.OTHER)
|
@ApiOperation("查询所有岗位列表")
|
public AjaxResult list() {
|
return AjaxResult.success(deptPositionService.list(Wrappers.lambdaQuery(DeptPosition.class)
|
.eq(DeptPosition::getType, 2)));
|
}
|
|
/**
|
* 通过id递归查询所有的岗位,在通过岗位查询对应人员
|
* @param deptPosition
|
* @return
|
*/
|
@GetMapping("/getDeptPositionByDeptId")
|
@Log(title = "通过部门id递归查询所有的岗位,在通过岗位查询对应人员", businessType = BusinessType.OTHER)
|
@ApiOperation("通过部门id递归查询所有的岗位,在通过岗位查询对应人员")
|
public AjaxResult getDeptPositionByDeptId(DeptPosition deptPosition) {
|
return AjaxResult.success(deptPositionService.getDeptPositionByDeptId(deptPosition));
|
}
|
|
/**
|
* 通过id递归查询所有的岗位,在通过岗位查询对应劳保用品
|
* @param deptPosition
|
* @return
|
*/
|
@GetMapping("/getDeptPositionByDeptIdLabor")
|
@Log(title = "通过id递归查询所有的岗位,在通过岗位查询对应劳保用品", businessType = BusinessType.OTHER)
|
@ApiOperation("通过id递归查询所有的岗位,在通过岗位查询对应劳保用品")
|
public AjaxResult getDeptPositionByDeptIdLabor(DeptPosition deptPosition) {
|
return AjaxResult.success(deptPositionService.getDeptPositionByDeptIdLabor(deptPosition));
|
}
|
|
@PostMapping("/addDeptPosition")
|
@Log(title = "添加部门岗位", businessType = BusinessType.INSERT)
|
@ApiOperation("添加部门岗位")
|
public AjaxResult addDeptPosition(@RequestBody DeptPosition deptPosition) {
|
return AjaxResult.success(deptPositionService.save(deptPosition));
|
}
|
|
@PostMapping("/updateDeptPosition")
|
@Log(title = "修改部门岗位", businessType = BusinessType.UPDATE)
|
@ApiOperation("修改部门岗位")
|
public AjaxResult updateDeptPosition(@RequestBody DeptPosition deptPosition) {
|
return AjaxResult.success(deptPositionService.updateById(deptPosition));
|
}
|
|
@DeleteMapping("/deleteDeptPosition")
|
@Log(title = "删除部门岗位", businessType = BusinessType.DELETE)
|
@ApiOperation("删除部门岗位")
|
public AjaxResult deleteDeptPosition(@RequestBody List<Long> ids) {
|
if(CollectionUtils.isEmpty(ids)) return AjaxResult.error("请选择要删除的部门岗位");
|
return AjaxResult.success(deptPositionService.removeBatchByIds(ids));
|
}
|
|
}
|