package com.ycl.controller; import com.ycl.common.annotation.Log; import com.ycl.common.core.controller.BaseController; import com.ycl.common.core.domain.AjaxResult; import com.ycl.common.core.page.TableDataInfo; import com.ycl.common.enums.BusinessType; import com.ycl.common.utils.poi.ExcelUtil; import com.ycl.domain.entity.SysDeployForm; import com.ycl.domain.entity.SysForm; import com.ycl.service.ISysDeployFormService; import com.ycl.service.ISysFormService; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import java.util.List; /** * 流程表单Controller * * @author Tony * @date 2021-04-03 */ @RestController @RequiredArgsConstructor @RequestMapping("/flowable/form") public class SysFormController extends BaseController { private final ISysFormService SysFormService; private final ISysDeployFormService sysDeployFormService; /** * 查询流程表单列表 */ @PreAuthorize("@ss.hasPermi('flowable:form:list')") @GetMapping("/list") public TableDataInfo list(SysForm sysForm) { startPage(); List list = SysFormService.selectSysFormList(sysForm); return getDataTable(list); } @GetMapping("/formList") public AjaxResult formList(SysForm sysForm) { List list = SysFormService.selectSysFormList(sysForm); return AjaxResult.success(list); } /** * 导出流程表单列表 */ @PreAuthorize("@ss.hasPermi('flowable:form:export')") @Log(title = "流程表单", businessType = BusinessType.EXPORT) @GetMapping("/export") public AjaxResult export(SysForm sysForm) { List list = SysFormService.selectSysFormList(sysForm); ExcelUtil util = new ExcelUtil(SysForm.class); return util.exportExcel(list, "form"); } /** * 获取流程表单详细信息 */ @PreAuthorize("@ss.hasPermi('flowable:form:query')") @GetMapping(value = "/{formId}") public AjaxResult getInfo(@PathVariable("formId") Long formId) { return AjaxResult.success(SysFormService.selectSysFormById(formId)); } /** * 新增流程表单 */ @PreAuthorize("@ss.hasPermi('flowable:form:add')") @Log(title = "流程表单", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody SysForm sysForm) { return toAjax(SysFormService.insertSysForm(sysForm)); } /** * 修改流程表单 */ @PreAuthorize("@ss.hasPermi('flowable:form:edit')") @Log(title = "流程表单", businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@RequestBody SysForm sysForm) { return toAjax(SysFormService.updateSysForm(sysForm)); } /** * 删除流程表单 */ @PreAuthorize("@ss.hasPermi('flowable:form:remove')") @Log(title = "流程表单", businessType = BusinessType.DELETE) @DeleteMapping("/{formIds}") public AjaxResult remove(@PathVariable Long[] formIds) { return toAjax(SysFormService.deleteSysFormByIds(formIds)); } /** * 挂载流程表单 */ @Log(title = "流程表单", businessType = BusinessType.INSERT) @PostMapping("/addDeployForm") public AjaxResult addDeployForm(@RequestBody SysDeployForm sysDeployForm) { return toAjax(sysDeployFormService.insertSysDeployForm(sysDeployForm)); } }