Commit a0c7692c3c2bae3f2f2d345bd58ffe49e3c2d5da

Authored by YunaiV
1 parent ff7b9d9d

调整流程定义模块的代码

Showing 11 changed files with 184 additions and 152 deletions
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/workflow/ModelController.java renamed to yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/model/BpmModelController.java
1 -package cn.iocoder.yudao.adminserver.modules.bpm.controller.workflow; 1 +package cn.iocoder.yudao.adminserver.modules.bpm.controller.model;
2 2
3 import cn.iocoder.yudao.adminserver.modules.bpm.controller.workflow.vo.FileResp; 3 import cn.iocoder.yudao.adminserver.modules.bpm.controller.workflow.vo.FileResp;
4 -import cn.iocoder.yudao.adminserver.modules.bpm.controller.workflow.vo.model.ModelPageReqVo;  
5 -import cn.iocoder.yudao.adminserver.modules.bpm.controller.workflow.vo.model.ModelVO; 4 +import cn.iocoder.yudao.adminserver.modules.bpm.controller.model.vo.ModelPageReqVO;
  5 +import cn.iocoder.yudao.adminserver.modules.bpm.controller.model.vo.BpmModelCreateReqVO;
6 import cn.iocoder.yudao.adminserver.modules.bpm.service.workflow.BpmModelService; 6 import cn.iocoder.yudao.adminserver.modules.bpm.service.workflow.BpmModelService;
7 import cn.iocoder.yudao.framework.common.pojo.CommonResult; 7 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
8 import cn.iocoder.yudao.framework.common.pojo.PageResult; 8 import cn.iocoder.yudao.framework.common.pojo.PageResult;
9 import cn.iocoder.yudao.framework.common.util.servlet.ServletUtils; 9 import cn.iocoder.yudao.framework.common.util.servlet.ServletUtils;
10 import io.swagger.annotations.Api; 10 import io.swagger.annotations.Api;
11 import io.swagger.annotations.ApiOperation; 11 import io.swagger.annotations.ApiOperation;
12 -import lombok.RequiredArgsConstructor;  
13 -import lombok.extern.slf4j.Slf4j;  
14 import org.activiti.engine.repository.Model; 12 import org.activiti.engine.repository.Model;
  13 +import org.springframework.validation.annotation.Validated;
15 import org.springframework.web.bind.annotation.*; 14 import org.springframework.web.bind.annotation.*;
16 15
  16 +import javax.annotation.Resource;
17 import javax.servlet.http.HttpServletResponse; 17 import javax.servlet.http.HttpServletResponse;
18 import java.io.IOException; 18 import java.io.IOException;
19 19
20 -/**  
21 - * 工作流模型  
22 - * @author yunlongn  
23 - */  
24 -@Slf4j 20 +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
  21 +
  22 +@Api(tags = "流程定义")
25 @RestController 23 @RestController
26 -@RequestMapping("/workflow/models")  
27 -@Api(tags = "工作流模型")  
28 -@RequiredArgsConstructor  
29 -public class ModelController { 24 +@RequestMapping("/bpm/model")
  25 +@Validated
  26 +public class BpmModelController {
  27 +
  28 + @Resource
  29 + private BpmModelService bpmModelService;
30 30
31 - private final BpmModelService bpmModelService; 31 + // TODO @芋艿:权限
32 32
33 @GetMapping ("/page") 33 @GetMapping ("/page")
34 @ApiOperation(value = "分页数据") 34 @ApiOperation(value = "分页数据")
35 - public CommonResult<PageResult<Model>> pageList(ModelPageReqVo modelPageReqVo) {  
36 - return CommonResult.success(bpmModelService.pageList(modelPageReqVo)); 35 + public CommonResult<PageResult<Model>> getModelPage(ModelPageReqVO pageVO) {
  36 + return success(bpmModelService.getModelPage(pageVO));
37 } 37 }
38 38
39 @PostMapping("/create") 39 @PostMapping("/create")
40 @ApiOperation(value = "新建模型") 40 @ApiOperation(value = "新建模型")
41 - public CommonResult<String> newModel(@RequestBody ModelVO modelVO) {  
42 - return bpmModelService.newModel(modelVO); 41 + public CommonResult<String> createModel(@RequestBody BpmModelCreateReqVO createRetVO) {
  42 + return success(bpmModelService.createModel(createRetVO));
43 } 43 }
44 44
45 @PostMapping("/update") 45 @PostMapping("/update")
46 @ApiOperation(value = "修改模型属性") 46 @ApiOperation(value = "修改模型属性")
47 - public CommonResult<String> updateModel(@RequestBody ModelVO modelVO) { 47 + public CommonResult<String> updateModel(@RequestBody BpmModelCreateReqVO modelVO) {
48 return bpmModelService.updateModel(modelVO); 48 return bpmModelService.updateModel(modelVO);
49 } 49 }
50 50
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/model/vo/BpmModelBaseVO.java 0 → 100644
  1 +package cn.iocoder.yudao.adminserver.modules.bpm.controller.model.vo;
  2 +
  3 +import io.swagger.annotations.ApiModelProperty;
  4 +import lombok.Data;
  5 +
  6 +import javax.validation.constraints.NotEmpty;
  7 +
  8 +/**
  9 +* 流程定义 Base VO,提供给添加、修改、详细的子 VO 使用
  10 +* 如果子 VO 存在差异的字段,请不要添加到这里,影响 Swagger 文档生成
  11 +*/
  12 +@Data
  13 +public class BpmModelBaseVO {
  14 +
  15 + @ApiModelProperty(value = "流程名称", required = true, example = "芋道")
  16 + @NotEmpty(message = "流程名称不能为空")
  17 + private String name;
  18 +
  19 + @ApiModelProperty(value = "流程描述", example = "我是描述")
  20 + @NotEmpty(message = "流程描述不能为空")
  21 + private String description;
  22 +
  23 +}
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/model/vo/BpmModelCreateReqVO.java 0 → 100644
  1 +package cn.iocoder.yudao.adminserver.modules.bpm.controller.model.vo;
  2 +
  3 +import io.swagger.annotations.ApiModel;
  4 +import io.swagger.annotations.ApiModelProperty;
  5 +import lombok.Data;
  6 +import lombok.EqualsAndHashCode;
  7 +import lombok.ToString;
  8 +
  9 +import javax.validation.constraints.NotEmpty;
  10 +
  11 +@ApiModel("流程定义的创建 Request VO")
  12 +@Data
  13 +@EqualsAndHashCode(callSuper = true)
  14 +@ToString(callSuper = true)
  15 +public class BpmModelCreateReqVO extends BpmModelBaseVO {
  16 +
  17 + @ApiModelProperty(value = "流程标识", required = true, example = "process_yudao")
  18 + @NotEmpty(message = "流程标识不能为空")
  19 + private String key;
  20 +
  21 + @ApiModelProperty(value = "BPMN XML", required = true)
  22 + @NotEmpty(message = "BPMN XML 不能为空")
  23 + private String bpmnXml;
  24 +
  25 +// @ApiModelProperty(value = "版本号")
  26 +// private Integer revision;
  27 +}
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/workflow/vo/model/ModelRespVo.java renamed to yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/model/vo/BpmModelRespVO.java
1 -package cn.iocoder.yudao.adminserver.modules.bpm.controller.workflow.vo.model; 1 +package cn.iocoder.yudao.adminserver.modules.bpm.controller.model.vo;
2 2
3 -import cn.iocoder.yudao.framework.common.pojo.PageParam;  
4 import io.swagger.annotations.ApiModel; 3 import io.swagger.annotations.ApiModel;
  4 +import io.swagger.annotations.ApiModelProperty;
5 import lombok.Data; 5 import lombok.Data;
6 import lombok.EqualsAndHashCode; 6 import lombok.EqualsAndHashCode;
7 import lombok.ToString; 7 import lombok.ToString;
8 8
9 -/**  
10 - * @author yunlong.li  
11 - */  
12 -@ApiModel("模型出口内容 Request VO") 9 +@ApiModel("流程定义 Response VO")
13 @Data 10 @Data
  11 +@EqualsAndHashCode(callSuper = true)
14 @ToString(callSuper = true) 12 @ToString(callSuper = true)
15 -public class ModelRespVo { 13 +public class BpmModelRespVO extends BpmModelBaseVO {
  14 +
  15 + @ApiModelProperty(value = "编号", required = true, example = "1024")
  16 + private String id;
  17 +
16 } 18 }
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/workflow/vo/model/ModelPageReqVo.java renamed to yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/model/vo/ModelPageReqVO.java
1 -package cn.iocoder.yudao.adminserver.modules.bpm.controller.workflow.vo.model; 1 +package cn.iocoder.yudao.adminserver.modules.bpm.controller.model.vo;
2 2
3 import cn.iocoder.yudao.framework.common.pojo.PageParam; 3 import cn.iocoder.yudao.framework.common.pojo.PageParam;
4 import io.swagger.annotations.ApiModel; 4 import io.swagger.annotations.ApiModel;
@@ -7,14 +7,14 @@ import lombok.Data; @@ -7,14 +7,14 @@ import lombok.Data;
7 import lombok.EqualsAndHashCode; 7 import lombok.EqualsAndHashCode;
8 import lombok.ToString; 8 import lombok.ToString;
9 9
10 -/**  
11 - * @author yunlong.li  
12 - */  
13 -@ApiModel("模型分页 Request VO") 10 +
  11 +@ApiModel("流程定义分页 Request VO")
14 @Data 12 @Data
15 @EqualsAndHashCode(callSuper = true) 13 @EqualsAndHashCode(callSuper = true)
16 @ToString(callSuper = true) 14 @ToString(callSuper = true)
17 -public class ModelPageReqVo extends PageParam {  
18 - @ApiModelProperty("模型名字") 15 +public class ModelPageReqVO extends PageParam {
  16 +
  17 + @ApiModelProperty(value = "名字", example = "芋道")
19 private String name; 18 private String name;
  19 +
20 } 20 }
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/workflow/vo/model/ModelVO.java deleted
1 -package cn.iocoder.yudao.adminserver.modules.bpm.controller.workflow.vo.model;  
2 -  
3 -import io.swagger.annotations.ApiModelProperty;  
4 -import lombok.Data;  
5 -  
6 -// TODO @Li:新增和更新 ModelVO 最好分开哈。  
7 -// TODO @Li:swagger 的 example 属性,还有参数校验要加一下哈。  
8 -// TODO @Li:前缀要加 Bpm 。因为是单体工程,不拆分,很容易重复类名  
9 -/**  
10 - * 新增模型 VO  
11 - * @author yunlongn  
12 - */  
13 -@Data  
14 -public class ModelVO {  
15 -  
16 - @ApiModelProperty(value = "模型Id")  
17 - private String id;  
18 -  
19 - @ApiModelProperty(value = "模型名字", required = true)  
20 - private String name;  
21 -  
22 - @ApiModelProperty(value = "模型描述")  
23 - private String description;  
24 -  
25 - @ApiModelProperty(value = "版本号")  
26 - private Integer revision;  
27 -  
28 - @ApiModelProperty(value = "key值")  
29 - private String key;  
30 -  
31 - @ApiModelProperty(value = "bpmnXml")  
32 - private String bpmnXml;  
33 -}  
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/convert/workflow/ModelConvert.java
1 package cn.iocoder.yudao.adminserver.modules.bpm.convert.workflow; 1 package cn.iocoder.yudao.adminserver.modules.bpm.convert.workflow;
2 2
3 -import cn.iocoder.yudao.adminserver.modules.bpm.controller.workflow.vo.TodoTaskRespVO;  
4 -import cn.iocoder.yudao.adminserver.modules.bpm.controller.workflow.vo.model.ModelRespVo;  
5 -import org.activiti.api.task.model.Task; 3 +import cn.iocoder.yudao.adminserver.modules.bpm.controller.model.vo.BpmModelRespVO;
6 import org.activiti.engine.repository.Model; 4 import org.activiti.engine.repository.Model;
7 -import org.activiti.engine.repository.ProcessDefinition;  
8 import org.mapstruct.Mapper; 5 import org.mapstruct.Mapper;
9 import org.mapstruct.factory.Mappers; 6 import org.mapstruct.factory.Mappers;
10 7
@@ -16,5 +13,5 @@ import org.mapstruct.factory.Mappers; @@ -16,5 +13,5 @@ import org.mapstruct.factory.Mappers;
16 public interface ModelConvert { 13 public interface ModelConvert {
17 ModelConvert INSTANCE = Mappers.getMapper(ModelConvert.class); 14 ModelConvert INSTANCE = Mappers.getMapper(ModelConvert.class);
18 15
19 - ModelRespVo convert(Model model); 16 + BpmModelRespVO convert(Model model);
20 } 17 }
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/service/workflow/BpmModelService.java
1 package cn.iocoder.yudao.adminserver.modules.bpm.service.workflow; 1 package cn.iocoder.yudao.adminserver.modules.bpm.service.workflow;
2 2
3 import cn.iocoder.yudao.adminserver.modules.bpm.controller.workflow.vo.FileResp; 3 import cn.iocoder.yudao.adminserver.modules.bpm.controller.workflow.vo.FileResp;
4 -import cn.iocoder.yudao.adminserver.modules.bpm.controller.workflow.vo.model.ModelPageReqVo;  
5 -import cn.iocoder.yudao.adminserver.modules.bpm.controller.workflow.vo.model.ModelVO; 4 +import cn.iocoder.yudao.adminserver.modules.bpm.controller.model.vo.ModelPageReqVO;
  5 +import cn.iocoder.yudao.adminserver.modules.bpm.controller.model.vo.BpmModelCreateReqVO;
6 import cn.iocoder.yudao.framework.common.pojo.CommonResult; 6 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
7 import cn.iocoder.yudao.framework.common.pojo.PageResult; 7 import cn.iocoder.yudao.framework.common.pojo.PageResult;
8 import org.activiti.engine.repository.Model; 8 import org.activiti.engine.repository.Model;
9 9
10 /** 10 /**
11 - * 工作流模型接口 11 + * 流程定义接口
  12 + *
12 * @author yunlongn 13 * @author yunlongn
13 */ 14 */
14 public interface BpmModelService { 15 public interface BpmModelService {
15 16
16 /** 17 /**
17 - * 模型数据分页返回  
18 - * @param modelPageReqVo 分页入参  
19 - * @return 分页model 18 + * 获得流程定义分页
  19 + *
  20 + * @param pageVO 分页查询
  21 + * @return 流程定义分页
20 */ 22 */
21 - // TODO @Li:getBpmModelPage。命名上,项目是 动词 + 完整实体;  
22 - PageResult<Model> pageList(ModelPageReqVo modelPageReqVo); 23 + PageResult<Model> getModelPage(ModelPageReqVO pageVO);
23 24
24 // TODO @Li:不用返回 CommonResult 25 // TODO @Li:不用返回 CommonResult
25 // TODO @Li:createBpmModal。 26 // TODO @Li:createBpmModal。
26 /** 27 /**
27 - * 新增一个模型  
28 - * @param modelVO 模型对象  
29 - * @return 返回成功 28 + * 创建流程定义
  29 + *
  30 + * @param modelVO 创建信息
  31 + * @return 创建的流程定义的编号
30 */ 32 */
31 - CommonResult<String> newModel(ModelVO modelVO); 33 + String createModel(BpmModelCreateReqVO modelVO);
32 34
33 /** 35 /**
34 * 修改模型属性,填充bpmn数据 36 * 修改模型属性,填充bpmn数据
35 * @param modelVO 模型对象 37 * @param modelVO 模型对象
36 * @return 返回成功 38 * @return 返回成功
37 */ 39 */
38 - CommonResult<String> updateModel(ModelVO modelVO); 40 + CommonResult<String> updateModel(BpmModelCreateReqVO modelVO);
39 41
40 /** 42 /**
41 * 部署模型 使模型成为一个 process 43 * 部署模型 使模型成为一个 process
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/service/workflow/impl/BpmModelServiceImpl.java
1 package cn.iocoder.yudao.adminserver.modules.bpm.service.workflow.impl; 1 package cn.iocoder.yudao.adminserver.modules.bpm.service.workflow.impl;
2 2
3 import cn.hutool.core.util.StrUtil; 3 import cn.hutool.core.util.StrUtil;
  4 +import cn.iocoder.yudao.adminserver.modules.bpm.controller.model.vo.BpmModelCreateReqVO;
  5 +import cn.iocoder.yudao.adminserver.modules.bpm.controller.model.vo.ModelPageReqVO;
4 import cn.iocoder.yudao.adminserver.modules.bpm.controller.workflow.vo.FileResp; 6 import cn.iocoder.yudao.adminserver.modules.bpm.controller.workflow.vo.FileResp;
5 -import cn.iocoder.yudao.adminserver.modules.bpm.controller.workflow.vo.model.ModelPageReqVo;  
6 -import cn.iocoder.yudao.adminserver.modules.bpm.controller.workflow.vo.model.ModelVO;  
7 import cn.iocoder.yudao.adminserver.modules.bpm.enums.BpmErrorCodeConstants; 7 import cn.iocoder.yudao.adminserver.modules.bpm.enums.BpmErrorCodeConstants;
8 import cn.iocoder.yudao.adminserver.modules.bpm.service.workflow.BpmModelService; 8 import cn.iocoder.yudao.adminserver.modules.bpm.service.workflow.BpmModelService;
9 import cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil; 9 import cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil;
10 import cn.iocoder.yudao.framework.common.pojo.CommonResult; 10 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
11 import cn.iocoder.yudao.framework.common.pojo.PageResult; 11 import cn.iocoder.yudao.framework.common.pojo.PageResult;
12 import cn.iocoder.yudao.framework.common.util.json.JsonUtils; 12 import cn.iocoder.yudao.framework.common.util.json.JsonUtils;
13 -import lombok.RequiredArgsConstructor; 13 +import cn.iocoder.yudao.framework.common.util.object.PageUtils;
14 import lombok.extern.slf4j.Slf4j; 14 import lombok.extern.slf4j.Slf4j;
15 import org.activiti.bpmn.converter.BpmnXMLConverter; 15 import org.activiti.bpmn.converter.BpmnXMLConverter;
16 import org.activiti.bpmn.model.BpmnModel; 16 import org.activiti.bpmn.model.BpmnModel;
@@ -21,7 +21,9 @@ import org.activiti.engine.repository.ModelQuery; @@ -21,7 +21,9 @@ import org.activiti.engine.repository.ModelQuery;
21 import org.apache.commons.lang3.exception.ExceptionUtils; 21 import org.apache.commons.lang3.exception.ExceptionUtils;
22 import org.springframework.stereotype.Service; 22 import org.springframework.stereotype.Service;
23 import org.springframework.util.ObjectUtils; 23 import org.springframework.util.ObjectUtils;
  24 +import org.springframework.validation.annotation.Validated;
24 25
  26 +import javax.annotation.Resource;
25 import javax.xml.stream.XMLInputFactory; 27 import javax.xml.stream.XMLInputFactory;
26 import javax.xml.stream.XMLStreamReader; 28 import javax.xml.stream.XMLStreamReader;
27 import java.io.ByteArrayInputStream; 29 import java.io.ByteArrayInputStream;
@@ -31,80 +33,75 @@ import java.util.List; @@ -31,80 +33,75 @@ import java.util.List;
31 import java.util.Optional; 33 import java.util.Optional;
32 34
33 /** 35 /**
34 - * 工作流模型实现 36 + * 流程定义实现
35 * 37 *
36 * @author yunlongn 38 * @author yunlongn
37 */ 39 */
38 -@Slf4j  
39 @Service 40 @Service
40 -@RequiredArgsConstructor 41 +@Validated
  42 +@Slf4j
41 public class BpmModelServiceImpl implements BpmModelService { 43 public class BpmModelServiceImpl implements BpmModelService {
42 44
43 - private final RepositoryService repositoryService; 45 + @Resource
  46 + private RepositoryService repositoryService;
44 47
45 @Override 48 @Override
46 - public PageResult<Model> pageList(ModelPageReqVo modelPageReqVo) { 49 + public PageResult<Model> getModelPage(ModelPageReqVO pageVO) {
47 ModelQuery modelQuery = repositoryService.createModelQuery(); 50 ModelQuery modelQuery = repositoryService.createModelQuery();
48 - String likeName = modelPageReqVo.getName();  
49 - if (StrUtil.isNotBlank(likeName)){  
50 - modelQuery.modelNameLike("%"+likeName+"%"); 51 + if (StrUtil.isNotBlank(pageVO.getName())) {
  52 + modelQuery.modelNameLike("%" + pageVO.getName() + "%"); // 模糊匹配
51 } 53 }
  54 + // 执行查询
52 List<Model> models = modelQuery.orderByCreateTime().desc() 55 List<Model> models = modelQuery.orderByCreateTime().desc()
53 - .listPage((modelPageReqVo.getPageNo() - 1) * modelPageReqVo.getPageSize(), modelPageReqVo.getPageSize());  
54 - return new PageResult<>(models, modelQuery.count()); 56 + .listPage(PageUtils.getStart(pageVO), pageVO.getPageSize());
  57 + long modelCount = modelQuery.count();
  58 + return new PageResult<>(models, modelCount);
55 } 59 }
56 60
57 @Override 61 @Override
58 - public CommonResult<String> newModel(ModelVO modelVO) {  
59 - try {  
60 - //初始化一个空模型  
61 - Model model = repositoryService.newModel();  
62 - // TODO @Li:name 可以直接赋值过去哈,不用声明一个变量  
63 - String name = Optional.ofNullable(modelVO.getName()).orElse("new-process");  
64 - //设置一些默认信息  
65 - model.setName(name);  
66 - model.setKey(Optional.ofNullable(modelVO.getKey()).orElse("processKey"));  
67 - model.setMetaInfo(JsonUtils.toJsonString(modelVO));  
68 - repositoryService.saveModel(model);  
69 - if (!ObjectUtils.isEmpty(modelVO.getBpmnXml())) {  
70 - repositoryService.addModelEditorSource(model.getId(), modelVO.getBpmnXml().getBytes(StandardCharsets.UTF_8));  
71 - }  
72 - return CommonResult.success(model.getId());  
73 - }catch (Exception e){  
74 - // TODO @Li:这里可以捕获,交给全局么?  
75 - // TODO @Li:异常,是不是 error 比较合适,然后堆栈使用 e 直接打印即可  
76 - log.info("模型创建失败!modelVO = {} e = {} ", modelVO, ExceptionUtils.getStackTrace(e));  
77 - throw ServiceExceptionUtil.exception(BpmErrorCodeConstants.BPMN_MODEL_ERROR);  
78 - } 62 + public String createModel(BpmModelCreateReqVO createReqVO) {
  63 + // TODO 芋艿:校验 key 是否重复
  64 + // 创建流程定义
  65 + Model model = repositoryService.newModel();
  66 + model.setName(createReqVO.getName());
  67 + model.setKey(createReqVO.getKey());
  68 + // TODO 芋艿:metaInfo,description、category、formId
  69 + model.setMetaInfo(JsonUtils.toJsonString(createReqVO));
  70 + // 保存流程定义
  71 + repositoryService.saveModel(model);
  72 + // 添加 BPMN XML
  73 + repositoryService.addModelEditorSource(model.getId(), StrUtil.utf8Bytes(createReqVO.getBpmnXml()));
  74 + return model.getId();
79 } 75 }
80 76
81 @Override 77 @Override
82 - public CommonResult<String> updateModel(ModelVO modelVO) {  
83 - try {  
84 - Model model = repositoryService.getModel(modelVO.getId());  
85 - if (ObjectUtils.isEmpty(model)) {  
86 - throw ServiceExceptionUtil.exception(BpmErrorCodeConstants.BPMN_MODEL_EDITOR_SOURCE_NOT_EXISTS);  
87 - }  
88 - // 只能修改名字跟描述  
89 - ModelVO modelCreateVO = JsonUtils.parseObject(model.getMetaInfo(), ModelVO.class);  
90 - if (ObjectUtils.isEmpty(modelCreateVO)) {  
91 - modelCreateVO = new ModelVO();  
92 - }  
93 - modelCreateVO.setName(modelVO.getName());  
94 - modelCreateVO.setDescription(modelVO.getDescription());  
95 - model.setMetaInfo(JsonUtils.toJsonString(modelCreateVO));  
96 - model.setName(modelVO.getName());  
97 - model.setKey(modelVO.getKey());  
98 - // 更新模型  
99 - repositoryService.saveModel(model);  
100 -  
101 - repositoryService.addModelEditorSource(model.getId(), modelVO.getBpmnXml().getBytes(StandardCharsets.UTF_8));  
102 -  
103 - return CommonResult.success("保存成功");  
104 - }catch (Exception e){  
105 - log.info("模型更新失败!modelVO = {}", modelVO, e);  
106 - throw ServiceExceptionUtil.exception(BpmErrorCodeConstants.BPMN_MODEL_ERROR);  
107 - } 78 + public CommonResult<String> updateModel(BpmModelCreateReqVO modelVO) {
  79 +// try {
  80 +// Model model = repositoryService.getModel(modelVO.getId());
  81 +// if (ObjectUtils.isEmpty(model)) {
  82 +// throw ServiceExceptionUtil.exception(BpmErrorCodeConstants.BPMN_MODEL_EDITOR_SOURCE_NOT_EXISTS);
  83 +// }
  84 +// // 只能修改名字跟描述
  85 +// BpmModelCreateReqVO modelCreateVO = JsonUtils.parseObject(model.getMetaInfo(), BpmModelCreateReqVO.class);
  86 +// if (ObjectUtils.isEmpty(modelCreateVO)) {
  87 +// modelCreateVO = new BpmModelCreateReqVO();
  88 +// }
  89 +// modelCreateVO.setName(modelVO.getName());
  90 +// modelCreateVO.setDescription(modelVO.getDescription());
  91 +// model.setMetaInfo(JsonUtils.toJsonString(modelCreateVO));
  92 +// model.setName(modelVO.getName());
  93 +// model.setKey(modelVO.getKey());
  94 +// // 更新模型
  95 +// repositoryService.saveModel(model);
  96 +//
  97 +// repositoryService.addModelEditorSource(model.getId(), modelVO.getBpmnXml().getBytes(StandardCharsets.UTF_8));
  98 +//
  99 +// return CommonResult.success("保存成功");
  100 +// }catch (Exception e){
  101 +// log.info("模型更新失败!modelVO = {}", modelVO, e);
  102 +// throw ServiceExceptionUtil.exception(BpmErrorCodeConstants.BPMN_MODEL_ERROR);
  103 +// }
  104 + return null;
108 } 105 }
109 106
110 @Override 107 @Override
yudao-admin-ui/src/api/bpm/model.js
1 import request from '@/utils/request' 1 import request from '@/utils/request'
2 2
3 -  
4 export function page(query) { 3 export function page(query) {
5 return request({ 4 return request({
6 - url: '/workflow/models/page', 5 + url: '/bpm/model/page',
7 method: 'get', 6 method: 'get',
8 params: query 7 params: query
9 }) 8 })
10 } 9 }
  10 +
11 export function exportBpmnXml(query) { 11 export function exportBpmnXml(query) {
12 return request({ 12 return request({
13 - url: '/workflow/models/exportBpmnXml', 13 + url: '/bpm/model/exportBpmnXml',
14 method: 'get', 14 method: 'get',
15 params: query 15 params: query
16 }) 16 })
@@ -18,7 +18,7 @@ export function exportBpmnXml(query) { @@ -18,7 +18,7 @@ export function exportBpmnXml(query) {
18 18
19 export function modelUpdate(data) { 19 export function modelUpdate(data) {
20 return request({ 20 return request({
21 - url: '/workflow/models/update', 21 + url: '/bpm/model/update',
22 method: 'POST', 22 method: 'POST',
23 data: data 23 data: data
24 }) 24 })
@@ -26,7 +26,7 @@ export function modelUpdate(data) { @@ -26,7 +26,7 @@ export function modelUpdate(data) {
26 26
27 export function modelSave(data) { 27 export function modelSave(data) {
28 return request({ 28 return request({
29 - url: '/workflow/models/create', 29 + url: '/bpm/model/create',
30 method: 'POST', 30 method: 'POST',
31 data: data 31 data: data
32 }) 32 })
@@ -34,14 +34,15 @@ export function modelSave(data) { @@ -34,14 +34,15 @@ export function modelSave(data) {
34 34
35 export function modelDelete(data) { 35 export function modelDelete(data) {
36 return request({ 36 return request({
37 - url: '/workflow/models/delete?modelId='+ data.modelId, 37 + url: '/bpm/model/delete?modelId='+ data.modelId,
38 method: 'POST', 38 method: 'POST',
39 data: data 39 data: data
40 }) 40 })
41 } 41 }
  42 +
42 export function modelDeploy(data) { 43 export function modelDeploy(data) {
43 return request({ 44 return request({
44 - url: '/workflow/models/deploy?modelId='+ data.modelId, 45 + url: '/bpm/model/deploy?modelId='+ data.modelId,
45 method: 'POST', 46 method: 'POST',
46 data: data 47 data: data
47 }) 48 })
yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/util/object/PageUtils.java 0 → 100644
  1 +package cn.iocoder.yudao.framework.common.util.object;
  2 +
  3 +import cn.iocoder.yudao.framework.common.pojo.PageParam;
  4 +
  5 +/**
  6 + * {@link cn.iocoder.yudao.framework.common.pojo.PageParam} 工具类
  7 + *
  8 + * @author 芋道源码
  9 + */
  10 +public class PageUtils {
  11 +
  12 + public static int getStart(PageParam pageParam) {
  13 + return (pageParam.getPageNo() - 1) * pageParam.getPageSize();
  14 + }
  15 +
  16 +}