Appearance
升级到BladeX4
TIP
新项目请直接使用私服项目blade-workflow或blade-workflow-boot中的bladex4分支
工作流插件升级到BladeX4主要有5点。
- 升级flowable7.x
- 修改User、Dept系统等包名
- 修改BeanUtil.copy
- 修改swagger注解
DANGER
- 全局替换均指的是在
plugin/workflow(Boot)目录下或在blade-plugin/blade-workflow(Cloud)项目下全局替换 - 替换时请勾选替换选项框的
Match case和Words选项。中文状态下为区分大小写和单词选项。 - 复制请直接指向需要复制的内容,点击右侧复制按钮(Copy Code)进行复制。自己拖动选择容易误复制空格回车等选项。
升级flowable7.x
1、修改pom.xml中flowable的版本(截止到2024-04-01,flowable最新发布版为7.0.1)
xml
<dependency>
<groupId>org.flowable</groupId>
<artifactId>flowable-spring-boot-starter</artifactId>
<version>7.0.1</version>
</dependency>2、确保application.yaml中的flowable.database-schema-update为true
TIP
- 启动项目后flowable会自动执行升级sql。
- 若不执行请参考flowable升级sql,或自行百度解决。
修改User、Dept等包名
Cloud
在blade-plugin/blade-workflow项目下全局替换
java
import org.springblade.system.entity.User;java
import org.springblade.system.pojo.entity.User;java
import org.springblade.system.entity.Dept;java
import org.springblade.system.pojo.entity.Dept;Boot
在plugin/workflow目录下全局替换
java
import org.springblade.modules.system.entity.User;java
import org.springblade.modules.system.pojo.entity.User;java
import org.springblade.modules.system.entity.Dept;java
import org.springblade.modules.system.pojo.entity.Dept;修改BeanUtil.copy为BeanUtil.copyProperties
在plugin/workflow(Boot)目录下或在blade-plugin/blade-workflow(Cloud)项目下全局替换
java
BeanUtil.copy替换为
java
BeanUtil.copyProperties修改swagger注解
swagger2升级swagger3注解类基本上全部需要修改,以下需要在plugin/workflow(Boot)目录下或在blade-plugin/blade-workflow(Cloud)项目下全局替换29次。
TIP
若觉得太繁琐或者看的眼花,可自己参考以下表格替换。
| swagger2 | swagger3 | 注解位置 |
|---|---|---|
| @Api | @Tag(name = “接口类描述”) | Controller 类 |
| @ApiOperation | @Operation(summary =“接口方法描述”) | Controller 方法 |
| @ApiImplicitParams | @Parameters | Controller 方法 |
| @ApiImplicitParam | @Parameter(description=“参数描述”) | Controller 方法的 @Parameters 里 |
| @ApiParam | @Parameter(description=“参数描述”) | Controller 方法的参数上 |
| @ApiIgnore | @Parameter(hidden = true) | - |
| @ApiModel | @Schema | DTO类上 |
| @ApiModelProperty | @Schema | DTO属性上 |
1、
java
import io.swagger.annotations.Api;java
import io.swagger.v3.oas.annotations.tags.Tag;2、
java
import io.swagger.annotations.*;java
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Parameters;3、
java
@Api(value =java
@Tag(name =4、
java
@Api(tags =java
@Tag(name =5、
java
@Api("java
@Tag(name = "6、
java
tags =java
description =7、
java
import io.swagger.annotations.ApiOperation;java
import io.swagger.v3.oas.annotations.Operation;8、
java
@ApiOperationjava
@Operation9、
java
@Operation("java
@Operation(summary = "10、
java
@Operation(value =java
@Operation(summary =11、
java
, notes =java
, description =12、
java
import io.swagger.annotations.ApiImplicitParams;java
import io.swagger.v3.oas.annotations.Parameters;13、
java
@ApiImplicitParamsjava
@Parameters14、
java
import io.swagger.annotations.ApiImplicitParam;java
import io.swagger.v3.oas.annotations.Parameter;15、
java
import io.swagger.annotations.ApiParam;java
import io.swagger.v3.oas.annotations.Parameter;16、
java
@ApiImplicitParamjava
@Parameter17、
java
@ApiParam(value =java
@Parameter(name =18、
java
, value =java
, description =19、
java
import springfox.documentation.annotations.ApiIgnore;java
TIP
空行也需要原样复制,空表示替换删除
20、
java
@ApiIgnorejava
@Parameter(hidden = true)21、
java
import io.swagger.annotations.ApiModel;java
import io.swagger.v3.oas.annotations.media.Schema;22、
java
import io.swagger.annotations.ApiModelProperty;java
import io.swagger.v3.oas.annotations.media.Schema;23、
java
@ApiModeljava
@Schema24、
java
@ApiModelProperty(value =java
@Schema(description =25、
java
@ApiModelProperty("java
@Schema(description = "26、
java
@Schema(value =java
@Schema(name =27、
java
import javax.validation.Valid;java
TIP
空行也需要原样复制,空表示替换删除
28、
java
import javax.validation.Valid;java
TIP
空行也需要原样复制,空表示替换删除
29、
java
@Validjava
TIP
空行也需要原样复制,空表示替换删除