0f9104ace7909aae354aa6473056d0deda00d505.svn-base 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. package cn.com.goldenwater.dcproj.controller.mend.bpm;
  2. import cn.com.goldenwater.core.web.BaseController;
  3. import cn.com.goldenwater.core.web.BaseResponse;
  4. import com.github.pagehelper.PageInfo;
  5. import com.workflow.bpm.api.bpmservices.ProcessCfgService;
  6. import com.workflow.bpm.api.bpmservices.co.info.DocumentConfigInfo;
  7. import com.workflow.bpm.api.bpmservices.co.processconfig.*;
  8. import com.workflow.bpm.api.bpmservices.dto.*;
  9. import com.workflow.common.exception.BusinessException;
  10. import com.workflow.common.exception.impl.CommonErrorCode;
  11. import com.workflow.common.struct.head.Page;
  12. import com.workflow.common.struct.req.impl.APIRequestPage;
  13. import com.workflow.common.struct.res.Result;
  14. import com.workflow.common.struct.res.ResultPage;
  15. import com.workflow.common.util.convert.ConvertBeanUtils;
  16. import io.swagger.annotations.Api;
  17. import io.swagger.annotations.ApiOperation;
  18. import org.apache.commons.lang.StringUtils;
  19. import org.springframework.beans.factory.annotation.Autowired;
  20. import org.springframework.web.bind.annotation.*;
  21. import java.util.List;
  22. import java.util.Objects;
  23. /**
  24. * Description:
  25. * Author: admin
  26. */
  27. @Api(tags = "流程定义")
  28. @RestController
  29. @RequestMapping("/bis/insp/pblm/plist/bpm/cfg")
  30. public class ProcessCfgController extends BaseController {
  31. @Autowired
  32. private ProcessCfgService processCfgService;
  33. //@RequiresPermissions("bmpc.definition.query.list")
  34. @ApiOperation(value = "查询流程定义",notes = "分页")
  35. @RequestMapping(value="/v1/workflow/procdef",method = RequestMethod.GET)
  36. public BaseResponse<PageInfo<ResProcesscfgDTO>> get_procdef(ReqQueryProcCfgDTO reqQueryProcCfgDTO) {
  37. if (Objects.isNull(reqQueryProcCfgDTO)) {
  38. throw new BusinessException(CommonErrorCode.ParamIsNull);
  39. }
  40. QueryProcCfgCO queryProcCfgCO = new QueryProcCfgCO();
  41. Page page = new Page();
  42. ConvertBeanUtils.copyPropertiesBySource(reqQueryProcCfgDTO,queryProcCfgCO);
  43. ConvertBeanUtils.copyPropertiesBySource(reqQueryProcCfgDTO,page);
  44. APIRequestPage<QueryProcCfgCO> requestPage = new APIRequestPage<>();
  45. requestPage.setContent(queryProcCfgCO);
  46. requestPage.setPage(page);
  47. ResultPage<List<ResProcesscfgDTO>> listResultPage = processCfgService.queryProcessCfgPage(requestPage);
  48. listResultPage.setPageClass(ResProcesscfgDTO.class);
  49. PageInfo<ResProcesscfgDTO> newPage = new PageInfo<>();
  50. newPage.setPageSize(listResultPage.getPage().getPageSize());
  51. newPage.setTotal(listResultPage.getPage().getTotal());
  52. newPage.setPageNum(listResultPage.getPage().getPageNo());
  53. newPage.setList(listResultPage.getContent());
  54. return buildSuccessResponse(newPage);
  55. }
  56. //@RequiresPermissions("bmpc.definition.add")
  57. @ApiOperation(value = "新增")
  58. @PostMapping("/v1/workflow/procdef")
  59. public BaseResponse post_procdef(@RequestBody ReqPostProcCfgDTO reqPostProcCfgDTO) {
  60. if (Objects.isNull(reqPostProcCfgDTO)) {
  61. throw new BusinessException(CommonErrorCode.ParamIsNull);
  62. }
  63. AddProcessCfgCO addProcessCfgCO = new AddProcessCfgCO();
  64. ConvertBeanUtils.copyPropertiesBySource(reqPostProcCfgDTO,addProcessCfgCO);
  65. return buildSuccessResponse(processCfgService.addProcdef(addProcessCfgCO).getContent());
  66. }
  67. //@RequiresPermissions("bmpc.definition.edit")
  68. @ApiOperation(value = "更新")
  69. @PutMapping("/v1/workflow/procdef")
  70. public BaseResponse put_procdef(@RequestBody ReqPutProcCfgDTO reqPutProcCfgDTO) {
  71. UpdateProcessCfgCO updateProcessCfgCO = new UpdateProcessCfgCO();
  72. ConvertBeanUtils.copyPropertiesBySource(reqPutProcCfgDTO,updateProcessCfgCO);
  73. return buildSuccessResponse(processCfgService.updateProcdef(updateProcessCfgCO).getContent());
  74. }
  75. //@RequiresPermissions("bmpc.definition.diagram")
  76. @ApiOperation(value = "保存流程图")
  77. @PostMapping("/v1/workflow/bpmn")
  78. public BaseResponse post_saveflowchart(@RequestBody ReqSaveFlowChartDTO reqSaveFlowChartDTO) {
  79. if (Objects.isNull(reqSaveFlowChartDTO)) {
  80. throw new BusinessException(CommonErrorCode.ParamIsNull);
  81. }
  82. SaveFlowChartCO saveFlowChartCO = new SaveFlowChartCO();
  83. ConvertBeanUtils.copyPropertiesBySource(reqSaveFlowChartDTO,saveFlowChartCO);
  84. return buildSuccessResponse(processCfgService.saveFlowChart(saveFlowChartCO).getContent());
  85. }
  86. //@RequiresPermissions("bmpc.definition.diagram")
  87. @ApiOperation(value = "查询流程图")
  88. @GetMapping("/v1/workflow/bpmn/{bpmProcCfgId}")
  89. public BaseResponse post_queryflowchart(@PathVariable String bpmProcCfgId) {
  90. if (StringUtils.isEmpty(bpmProcCfgId)) {
  91. throw new BusinessException(CommonErrorCode.ParamIsNull);
  92. }
  93. return buildSuccessResponse(processCfgService.queryFlowChart(bpmProcCfgId).getContent());
  94. }
  95. //@RequiresPermissions("bmpc.definition.process.deploy")
  96. @ApiOperation(value = "部署流程定义")
  97. @GetMapping("/v1/workflow/procdef/{bpmProcCfgId}/{version}/release")
  98. public Result<?> post_deployProcdef(@PathVariable("bpmProcCfgId") String bpmProcCfgId,
  99. @PathVariable("version") String version) {
  100. if (StringUtils.isEmpty(bpmProcCfgId)) {
  101. throw new BusinessException(CommonErrorCode.ParamIsNull);
  102. }
  103. DeployProcCfgCO deployProcCfgCO = new DeployProcCfgCO();
  104. deployProcCfgCO.setBpmProcCfgId(bpmProcCfgId);
  105. deployProcCfgCO.setVersion(version);
  106. return processCfgService.deployProcCfg(deployProcCfgCO);
  107. }
  108. //@RequiresPermissions("base.bpm.operation")
  109. @ApiOperation(value = "查询流程定义明细")
  110. @GetMapping("/v1/workflow/procdef/{bpmProcCfgId}")
  111. public BaseResponse<ResProcesscfgDTO> get_queryprocdefdetail(@PathVariable String bpmProcCfgId) {
  112. if (StringUtils.isEmpty(bpmProcCfgId)) {
  113. throw new BusinessException(CommonErrorCode.ParamIsNull);
  114. }
  115. return buildSuccessResponse(processCfgService.queryProcdefDetail(bpmProcCfgId).getContent());
  116. }
  117. //@RequiresPermissions("bmpc.definition.delete")
  118. @ApiOperation(value = "删除")
  119. @DeleteMapping("/v1/workflow/procdef/{bpmProcCfgId}")
  120. public BaseResponse delete_procConfig(@PathVariable String bpmProcCfgId) {
  121. if (StringUtils.isEmpty(bpmProcCfgId)) {
  122. throw new BusinessException(CommonErrorCode.ParamIsNull);
  123. }
  124. return buildSuccessResponse(processCfgService.delProcCfgViaId(bpmProcCfgId).getContent());
  125. }
  126. @ApiOperation(value = "查询第一个节点文档配置")
  127. @GetMapping("/v1/workflow/bpmn/firstNode/docCfg")
  128. public BaseResponse<List<DocumentConfigInfo>> get_qryFirstNodeDocCfg(@RequestParam String procDefCode) {
  129. if (StringUtils.isEmpty(procDefCode)) {
  130. throw new BusinessException(CommonErrorCode.ParamIsNull);
  131. }
  132. return buildSuccessResponse(processCfgService.post_qryFirstNodeDocCfg(procDefCode).getContent());
  133. }
  134. }