package com.ruoyi.web.controller.api; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; 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.enums.BusinessType; import com.ruoyi.system.dto.SetApprovalDTO; import com.ruoyi.system.dto.SetDeptDTO; import com.ruoyi.system.model.OaApproval; import com.ruoyi.system.model.OaApprovalFlowNode; import com.ruoyi.system.query.ApprovalListQuery; import com.ruoyi.system.service.ISysUserService; import com.ruoyi.system.service.OaApprovalFlowNodeService; import com.ruoyi.system.service.OaApprovalService; import com.ruoyi.system.vo.system.ApprovalFlowNodeVO; 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 @Api(tags ="审批流程") @RequestMapping("/oa-approval-flow-node") public class OaApprovalFlowNodeController { @Resource private OaApprovalFlowNodeService oaApprovalFlowNodeService; @Resource private ISysUserService sysUserService; /** * 审批流程设计列表 */ @ApiOperation("审批流程设计列表") @PostMapping("list") public R> list(@RequestBody ApprovalListQuery query) { return R.ok( oaApprovalFlowNodeService.pageList(query)); } @ApiOperation(value = "启用禁用") @GetMapping(value = "/updateStatus") public R updateStatus(Integer id ) { OaApprovalFlowNode approval = oaApprovalFlowNodeService.getById(id); approval.setStatus(!approval.getStatus()); oaApprovalFlowNodeService.updateById(approval); return R.ok(); } @ApiOperation(value = "是否需要签名") @GetMapping(value = "/updateSign") public R updateSign(Integer id ) { OaApprovalFlowNode approval = oaApprovalFlowNodeService.getById(id); approval.setSignFlag(!approval.getSignFlag()); oaApprovalFlowNodeService.updateById(approval); return R.ok(); } @ApiOperation(value = "根据部门查询人员列表") @GetMapping(value = "/listUserByDeptId") public R> listUserByDeptId(Integer id ) { List users = sysUserService.selectAllList().stream() .filter(e -> e.getStatus().equals("0") && e.getDeptId().equals(id.toString())) .collect(Collectors.toList()); return R.ok(users); } @Log(title = "审批流程-设置审批人", businessType = BusinessType.UPDATE) @ApiOperation(value = "设置审批人") @PostMapping(value = "/setApproval") public R setDept(@RequestBody SetApprovalDTO dto) { LambdaUpdateWrapper oaApprovalFlowNodeLambdaUpdateWrapper = new LambdaUpdateWrapper<>(); oaApprovalFlowNodeLambdaUpdateWrapper.eq(OaApprovalFlowNode::getId,dto.getId()); oaApprovalFlowNodeLambdaUpdateWrapper.set(OaApprovalFlowNode::getApprovalType,dto.getApprovalType()); if (dto.getApprovalType() == 1){ oaApprovalFlowNodeLambdaUpdateWrapper.set(OaApprovalFlowNode::getApprovalIds,null); }else{ oaApprovalFlowNodeLambdaUpdateWrapper.set(OaApprovalFlowNode::getApprovalIds,dto.getApprovalIds()); } oaApprovalFlowNodeService.update(oaApprovalFlowNodeLambdaUpdateWrapper); return R.ok(); } }