package com.project.admin.controller.approval; import java.util.List; import java.util.Arrays; import com.project.common.annotation.RepeatSubmit; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import com.project.common.annotation.Log; import com.project.common.core.controller.BaseController; import com.project.common.core.domain.AjaxResult; import com.project.common.enums.BusinessType; import com.project.approval.domain.vo.ApprovalNodeVo; import com.project.approval.domain.bo.editBo.ApprovalNodeBo; import com.project.approval.domain.bo.queryBo.ApprovalNodeQueryBo; import com.project.approval.service.IApprovalNodeService; import com.project.common.utils.poi.ExcelUtil; import com.project.common.core.page.TableDataInfo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; /** * 流程节点Controller * * @author manton */ @Api(value = "流程节点控制器", tags = {"流程节点管理"}) @RequiredArgsConstructor(onConstructor_ = @Autowired) @RestController @RequestMapping("/approval/node") public class ApprovalNodeController extends BaseController { private final IApprovalNodeService iApprovalNodeService; @ApiOperation("查询流程节点列表") @GetMapping("/list") public TableDataInfo list(ApprovalNodeQueryBo bo) { startPage(); List list = iApprovalNodeService.queryList(bo); return getDataTable(list); } @ApiOperation("导出流程节点列表") //@PreAuthorize("@ss.hasPermi('approval:node:export')") @Log(title = "流程节点", businessType = BusinessType.EXPORT) @GetMapping("/export") @RepeatSubmit public AjaxResult export(ApprovalNodeQueryBo bo) { List list = iApprovalNodeService.queryList(bo); ExcelUtil util = new ExcelUtil(ApprovalNodeVo.class); return util.exportExcel(list, "流程节点"); } @ApiOperation("获取流程节点详细信息") @GetMapping("/{nodeId}") public AjaxResult getInfo(@PathVariable("nodeId" ) Long nodeId) { return AjaxResult.success(iApprovalNodeService.queryById(nodeId)); } @ApiOperation("新增流程节点") //@PreAuthorize("@ss.hasPermi('approval:node:add')") @Log(title = "流程节点", businessType = BusinessType.INSERT) @PostMapping("/add") @RepeatSubmit public AjaxResult add(@RequestBody ApprovalNodeBo bo) { return toAjax(iApprovalNodeService.insertByBo(bo) ? 1 : 0); } @ApiOperation("修改流程节点") //@PreAuthorize("@ss.hasPermi('approval:node:edit')") @Log(title = "流程节点", businessType = BusinessType.UPDATE) @PostMapping("/upd") @RepeatSubmit public AjaxResult upd(@RequestBody ApprovalNodeBo bo) { return toAjax(iApprovalNodeService.updateByBo(bo) ? 1 : 0); } @ApiOperation("删除流程节点") //@PreAuthorize("@ss.hasPermi('approval:node:remove')") @Log(title = "流程节点" , businessType = BusinessType.DELETE) @DeleteMapping("/{nodeIds}") @RepeatSubmit public AjaxResult remove(@PathVariable Long[] nodeIds) { return toAjax(iApprovalNodeService.deleteByIds(Arrays.asList(nodeIds)) ? 1 : 0); } }