package com.ruoyi.web.controller.api; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.basic.PageInfo; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.domain.entity.TDept; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.system.dto.AddDeptDTO; import com.ruoyi.system.dto.SetDeptDTO; import com.ruoyi.system.mapper.SysUserMapper; import com.ruoyi.system.model.OaApproval; import com.ruoyi.system.query.ApprovalListQuery; import com.ruoyi.system.service.ISysUserService; import com.ruoyi.system.service.OaApprovalService; import com.ruoyi.system.service.TDeptService; import com.ruoyi.system.vo.system.ApprovalVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.util.List; import java.util.stream.Collectors; /** *

* 审批表 前端控制器 *

* * @author WuGuanFengYue * @since 2025-09-15 */ @RestController @RequestMapping("/oa-approval") @Api("审批流程设计") public class OaApprovalController { @Resource private OaApprovalService oaApprovalService; /** * 获取部门树列表 */ @ApiOperation("流程设计分页列表") @PostMapping("/pageList") public R> pageList(@RequestBody ApprovalListQuery query) { return R.ok( oaApprovalService.pageList(query)); } @ApiOperation(value = "启用禁用") @GetMapping(value = "/updateStatus") public R updateStatus(Integer id ) { OaApproval approval = oaApprovalService.getById(id); approval.setStatus(!approval.getStatus()); oaApprovalService.updateById(approval); return R.ok(); } @ApiOperation(value = "设置使用部门") @PostMapping(value = "/setDept") public R setDept(@RequestBody SetDeptDTO dto) { OaApproval approval = oaApprovalService.getById(dto.getId()); approval.setDeptIds(dto.getDeptIds()); oaApprovalService.updateById(approval); return R.ok(); } // @Log(title = "编辑部门", businessType = BusinessType.UPDATE) // @ApiOperation(value = "编辑部门") // @PostMapping(value = "/edit") // public R edit(@RequestBody AddDeptDTO dto) { // deptService.updateById(dto); // return R.ok(); // } // @ApiOperation(value = "部门详情") // @GetMapping(value = "/detail") // public R edit(@RequestParam String id) { // return R.ok(deptService.getById(id)); // } // @ApiOperation(value = "部门删除") // @DeleteMapping(value = "/delete") // @Log(title = "删除部门", businessType = BusinessType.DELETE) // public R delete(@RequestParam String id) { // Long count = deptService.lambdaQuery().eq(TDept::getParentId, id).count(); // if (count>0){ // return R.fail("当前部门存在下级部门,不可删除!"); // } // List users = sysUserMapper.selectAllList().stream().filter(e -> e.getDelFlag().equals("0") && e.getDeptId().equals(id)).collect(Collectors.toList()); // if (!users.isEmpty()){ // return R.fail("当前部门存在用户,不可删除!"); // } // deptService.removeById(Integer.valueOf(id)); // return R.ok(); // } }