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.ApprovalNodeClassVo; import com.project.approval.domain.bo.editBo.ApprovalNodeClassBo; import com.project.approval.domain.bo.queryBo.ApprovalNodeClassQueryBo; import com.project.approval.service.IApprovalNodeClassService; 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/class") public class ApprovalNodeClassController extends BaseController { private final IApprovalNodeClassService iApprovalNodeClassService; @ApiOperation("查询流程节点分类列表") @GetMapping("/list") public TableDataInfo list(ApprovalNodeClassQueryBo bo) { startPage(); List list = iApprovalNodeClassService.queryList(bo); return getDataTable(list); } @ApiOperation("导出流程节点分类列表") //@PreAuthorize("@ss.hasPermi('approval:class:export')") @Log(title = "流程节点分类", businessType = BusinessType.EXPORT) @GetMapping("/export") @RepeatSubmit public AjaxResult export(ApprovalNodeClassQueryBo bo) { List list = iApprovalNodeClassService.queryList(bo); ExcelUtil util = new ExcelUtil(ApprovalNodeClassVo.class); return util.exportExcel(list, "流程节点分类"); } @ApiOperation("获取流程节点分类详细信息") @GetMapping("/{nodeClassId}") public AjaxResult getInfo(@PathVariable("nodeClassId" ) Long nodeClassId) { return AjaxResult.success(iApprovalNodeClassService.queryById(nodeClassId)); } @ApiOperation("新增流程节点分类") //@PreAuthorize("@ss.hasPermi('approval:class:add')") @Log(title = "流程节点分类", businessType = BusinessType.INSERT) @PostMapping("/add") @RepeatSubmit public AjaxResult add(@RequestBody ApprovalNodeClassBo bo) { return toAjax(iApprovalNodeClassService.insertByBo(bo) ? 1 : 0); } @ApiOperation("修改流程节点分类") //@PreAuthorize("@ss.hasPermi('approval:class:edit')") @Log(title = "流程节点分类", businessType = BusinessType.UPDATE) @PostMapping("/upd") @RepeatSubmit public AjaxResult upd(@RequestBody ApprovalNodeClassBo bo) { return toAjax(iApprovalNodeClassService.updateByBo(bo) ? 1 : 0); } @ApiOperation("删除流程节点分类") //@PreAuthorize("@ss.hasPermi('approval:class:remove')") @Log(title = "流程节点分类" , businessType = BusinessType.DELETE) @DeleteMapping("/{nodeClassIds}") @RepeatSubmit public AjaxResult remove(@PathVariable Long[] nodeClassIds) { return toAjax(iApprovalNodeClassService.deleteByIds(Arrays.asList(nodeClassIds)) ? 1 : 0); } }