diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/api/BpmProcessFeignClient.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/api/BpmProcessFeignClient.java
index 1a541a1d9..769fbf607 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/api/BpmProcessFeignClient.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/api/BpmProcessFeignClient.java
@@ -13,7 +13,7 @@ import org.springframework.web.bind.annotation.RequestParam;
/**
* 流程实例 Api 接口
*
- * @author 芋道源码
+ * @author hongawen
*/
@FeignClient(value = ServerInfo.BPM,path = "/bpm/processDefinition",fallbackFactory = BpmProcessFeignClientFallbackFactory.class)
public interface BpmProcessFeignClient {
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmDeleteReasonEnum.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmDeleteReasonEnum.java
index 06a9e8af7..c2755bb29 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmDeleteReasonEnum.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmDeleteReasonEnum.java
@@ -7,7 +7,7 @@ import lombok.Getter;
/**
* 流程实例/任务的删除原因枚举
*
- * @author 芋道源码
+ * @author hongawen
*/
@Getter
@AllArgsConstructor
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmModelFormTypeEnum.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmModelFormTypeEnum.java
index fb2d0e433..19e77b13d 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmModelFormTypeEnum.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmModelFormTypeEnum.java
@@ -8,7 +8,7 @@ import java.util.Arrays;
/**
* BPM 模型的表单类型的枚举
*
- * @author 芋道源码
+ * @author hongawen
*/
@Getter
@AllArgsConstructor
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmProcessInstanceStatusEnum.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmProcessInstanceStatusEnum.java
index 7df2dd49b..e87592808 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmProcessInstanceStatusEnum.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmProcessInstanceStatusEnum.java
@@ -8,7 +8,7 @@ import java.util.Arrays;
/**
* 流程实例 ProcessInstance 的状态
*
- * @author 芋道源码
+ * @author hongawen
*/
@Getter
@AllArgsConstructor
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmResponseEnum.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmResponseEnum.java
index 43aa29794..b1839e062 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmResponseEnum.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmResponseEnum.java
@@ -44,19 +44,25 @@ public enum BpmResponseEnum {
REPEAT_CATEGORY_NAME_FORM("A00568", "流程类型名称重复"),
- PROCESS_INSTANCE_NOT_EXISTS ("A00568", "流程实例不存在"),
+ REPEAT_CATEGORY_CODE_FORM("A00568", "流程类型编码重复"),
- TASK_IS_PENDING ("A00568", "当前任务处于挂起状态,不能操作"),
+ REPEAT_SIGN_NAME_FORM("A00568", "流程标识名称重复"),
- TASK_TARGET_NODE_NOT_EXISTS ("A00568", " 目标节点不存在"),
+ REPEAT_SIGN_KEY_FORM("A00568", "流程标识key重复"),
- TASK_RETURN_FAIL_SOURCE_TARGET_ERROR ("A00568", "回退任务失败,目标节点是在并行网关上或非同一路线上,不可跳转"),
+ PROCESS_INSTANCE_NOT_EXISTS("A00568", "流程实例不存在"),
+
+ TASK_IS_PENDING("A00568", "当前任务处于挂起状态,不能操作"),
+
+ TASK_TARGET_NODE_NOT_EXISTS("A00568", " 目标节点不存在"),
+
+ TASK_RETURN_FAIL_SOURCE_TARGET_ERROR("A00568", "回退任务失败,目标节点是在并行网关上或非同一路线上,不可跳转"),
PROCESS_INSTANCE_CANCEL_FAIL_NOT_EXISTS("A00568", "流程取消失败,流程不处于运行中"),
- TASK_DELEGATE_FAIL_USER_REPEAT("A00568", "任务委派失败,委派人和当前审批人为同一人"),
+ TASK_DELEGATE_FAIL_USER_REPEAT("A00568", "任务委派失败,委派人和当前审批人为同一人"),
- TASK_DELEGATE_FAIL_USER_NOT_EXISTS("A00568", "任务委派失败,被委派人不存在"),
+ TASK_DELEGATE_FAIL_USER_NOT_EXISTS("A00568", "任务委派失败,被委派人不存在"),
TASK_TRANSFER_FAIL_USER_REPEAT("A00568", "任务转办失败,转办人和当前审批人为同一人"),
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmTaskCandidateStrategyEnum.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmTaskCandidateStrategyEnum.java
index 83af136a4..c26a23671 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmTaskCandidateStrategyEnum.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmTaskCandidateStrategyEnum.java
@@ -9,7 +9,7 @@ import lombok.Getter;
*
* 例如说:分配给指定人审批
*
- * @author 芋道源码
+ * @author hongawen
*/
@Getter
@AllArgsConstructor
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmnModelConstants.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmnModelConstants.java
index b0be6c9ae..39101325a 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmnModelConstants.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/BpmnModelConstants.java
@@ -3,7 +3,7 @@ package com.njcn.bpm.enums;
/**
* BPMN XML 常量信息
*
- * @author 芋道源码
+ * @author hongawen
*/
public interface BpmnModelConstants {
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/GlobalErrorCodeConstants.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/GlobalErrorCodeConstants.java
index dbceebc14..319cf69fa 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/GlobalErrorCodeConstants.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/GlobalErrorCodeConstants.java
@@ -9,7 +9,7 @@ package com.njcn.bpm.enums;
* 虽然说,HTTP 响应状态码作为业务使用表达能力偏弱,但是使用在系统层面还是非常不错的
* 比较特殊的是,因为之前一直使用 0 作为成功,就不使用 200 啦。
*
- * @author 芋道源码
+ * @author hongawen
*/
public interface GlobalErrorCodeConstants {
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/IntArrayValuable.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/IntArrayValuable.java
index dcec39b47..dd0ad54ed 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/IntArrayValuable.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/IntArrayValuable.java
@@ -3,7 +3,7 @@ package com.njcn.bpm.enums;
/**
* 可生成 Int 数组的接口
*
- * @author 芋道源码
+ * @author hongawen
*/
public interface IntArrayValuable {
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/WebFilterOrderEnum.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/WebFilterOrderEnum.java
index 28197e7fa..eb87abc00 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/WebFilterOrderEnum.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/enums/WebFilterOrderEnum.java
@@ -5,7 +5,7 @@ package com.njcn.bpm.enums;
*
* 考虑到每个 starter 都需要用到该工具类,所以放到 common 模块下的 enums 包下
*
- * @author 芋道源码
+ * @author hongawen
*/
public interface WebFilterOrderEnum {
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/dto/BpmModelMetaInfoRespDTO.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/dto/BpmModelMetaInfoRespDTO.java
index 6570a2f4c..d89e20105 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/dto/BpmModelMetaInfoRespDTO.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/dto/BpmModelMetaInfoRespDTO.java
@@ -7,7 +7,7 @@ import lombok.Data;
* 主要用于 { Model#setMetaInfo(String)} 的存储
*
*
- * @author 芋道源码
+ * @author hongawen
*/
@Data
public class BpmModelMetaInfoRespDTO {
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/param/BpmCategoryParam.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/param/BpmCategoryParam.java
index 0961bb217..781957401 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/param/BpmCategoryParam.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/param/BpmCategoryParam.java
@@ -14,7 +14,7 @@ import java.io.Serializable;
/**
* BPM 流程分类
*
- * @author 芋道源码
+ * @author hongawen
*/
@Data
public class BpmCategoryParam implements Serializable {
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/param/BpmSignParam.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/param/BpmSignParam.java
new file mode 100644
index 000000000..18890988a
--- /dev/null
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/param/BpmSignParam.java
@@ -0,0 +1,92 @@
+package com.njcn.bpm.pojo.param;
+
+import com.njcn.common.pojo.constant.PatternRegex;
+import com.njcn.db.bo.BaseEntity;
+import com.njcn.web.constant.ValidMessage;
+import com.njcn.web.pojo.param.BaseParam;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.Pattern;
+import java.io.Serializable;
+
+/**
+ *
+ * BPM 流程标识
+ *
+ *
+ * @author hongawen
+ * @since 2024-05-13
+ */
+@Data
+public class BpmSignParam extends BaseEntity implements Serializable {
+
+
+ /**
+ * 流程名称
+ */
+ @ApiModelProperty("流程名称")
+ @NotBlank(message = "流程名称不能为空")
+ private String name;
+
+ /**
+ * 流程标识key
+ */
+ @ApiModelProperty("流程标识key")
+ @NotBlank(message = "流程标识key不能为空")
+ private String signKey;
+
+ /**
+ * 流程查看表单路径
+ */
+ @ApiModelProperty("流程查看表单路径")
+ @NotBlank(message = "流程查看表单路径不能为空")
+ private String viewPath;
+
+ /**
+ * 流程创建表单路径
+ */
+ @ApiModelProperty("流程创建表单路径")
+ private String createPath;
+
+
+ /**
+ * 更新操作实体
+ */
+ @Data
+ @EqualsAndHashCode(callSuper = true)
+ public static class BpmSignUpdateParam extends BpmSignParam {
+
+ /**
+ * 表Id
+ */
+ @ApiModelProperty("id")
+ @NotBlank(message = ValidMessage.ID_NOT_BLANK)
+ @Pattern(regexp = PatternRegex.SYSTEM_ID, message = ValidMessage.ID_FORMAT_ERROR)
+ private String id;
+
+ }
+
+
+ /**
+ * 分页查询实体
+ */
+ @Data
+ @EqualsAndHashCode(callSuper = true)
+ public static class BpmSignQueryParam extends BaseParam {
+
+
+ @ApiModelProperty("标识名称")
+ private String name;
+
+ @ApiModelProperty("标识key")
+ private String key;
+
+ }
+
+
+
+
+}
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/po/BpmCategory.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/po/BpmCategory.java
index 5d22181fa..6ecd23ec8 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/po/BpmCategory.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/po/BpmCategory.java
@@ -14,7 +14,7 @@ import java.io.Serializable;
/**
* BPM 流程分类 DO
*
- * @author 芋道源码
+ * @author hongawen
*/
@TableName("bpm_category")
@Data
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/po/BpmForm.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/po/BpmForm.java
index 5f7bd58a2..81855b48d 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/po/BpmForm.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/po/BpmForm.java
@@ -17,7 +17,7 @@ import java.util.List;
* BPM 工作流的表单定义
* 用于工作流的申请表单,需要动态配置的场景
*
- * @author 芋道源码
+ * @author hongawen
*/
@TableName(value = "bpm_form", autoResultMap = true)
@Data
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/po/BpmSign.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/po/BpmSign.java
new file mode 100644
index 000000000..fcf358d93
--- /dev/null
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/po/BpmSign.java
@@ -0,0 +1,57 @@
+package com.njcn.bpm.pojo.po;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.njcn.db.bo.BaseEntity;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ *
+ * BPM 流程标识
+ *
+ *
+ * @author hongawen
+ * @since 2024-05-13
+ */
+@Getter
+@Setter
+@TableName("bpm_sign")
+public class BpmSign extends BaseEntity implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 流程标识索引
+ */
+ private String id;
+
+ /**
+ * 流程名称
+ */
+ private String name;
+
+ /**
+ * 流程标识key
+ */
+ private String signKey;
+
+ /**
+ * 流程查看表单路径
+ */
+ private String viewPath;
+
+ /**
+ * 流程创建表单路径
+ */
+ private String createPath;
+
+ /**
+ * 状态:0-删除 1-正常
+ */
+ private Integer state;
+
+
+
+}
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/vo/BpmCategoryVO.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/vo/BpmCategoryVO.java
index 1da698994..3426b8cd1 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/vo/BpmCategoryVO.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/vo/BpmCategoryVO.java
@@ -1,13 +1,15 @@
package com.njcn.bpm.pojo.vo;
+import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
+import java.time.LocalDateTime;
/**
* BPM 流程分类 DO
*
- * @author 芋道源码
+ * @author hongawen
*/
@Data
public class BpmCategoryVO implements Serializable {
@@ -37,5 +39,10 @@ public class BpmCategoryVO implements Serializable {
*/
private Integer sort;
+ /**
+ * 创建时间
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTime;
}
\ No newline at end of file
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/vo/BpmSignVO.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/vo/BpmSignVO.java
new file mode 100644
index 000000000..2c02a1357
--- /dev/null
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/pojo/vo/BpmSignVO.java
@@ -0,0 +1,61 @@
+package com.njcn.bpm.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.njcn.db.bo.BaseEntity;
+import lombok.Data;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ *
+ * BPM 流程标识
+ *
+ *
+ * @author hongawen
+ * @since 2024-05-13
+ */
+@Data
+public class BpmSignVO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 流程标识索引
+ */
+ private String id;
+
+ /**
+ * 流程名称
+ */
+ private String name;
+
+ /**
+ * 流程标识key
+ */
+ private String signKey;
+
+ /**
+ * 流程查看表单路径
+ */
+ private String viewPath;
+
+ /**
+ * 流程创建表单路径
+ */
+ private String createPath;
+
+
+
+ /**
+ * 创建时间
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTime;
+
+
+
+}
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/BeanUtils.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/BeanUtils.java
index f4d6becbf..75ee00158 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/BeanUtils.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/BeanUtils.java
@@ -13,7 +13,7 @@ import java.util.function.Consumer;
* 1. 默认使用 {@link BeanUtil} 作为实现类,虽然不同 bean 工具的性能有差别,但是对绝大多数同学的项目,不用在意这点性能
* 2. 针对复杂的对象转换,可以搜参考 AuthConvert 实现,通过 mapstruct + default 配合实现
*
- * @author 芋道源码
+ * @author hongawen
*/
public class BeanUtils {
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/DateUtils.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/DateUtils.java
index 6000f7f2c..adaf4aeb6 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/DateUtils.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/DateUtils.java
@@ -9,7 +9,7 @@ import java.util.Date;
/**
* 时间工具类
*
- * @author 芋道源码
+ * @author hongawen
*/
public class DateUtils {
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/KeyValue.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/KeyValue.java
index 1e6472f16..807f4cd8d 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/KeyValue.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/KeyValue.java
@@ -9,7 +9,7 @@ import java.io.Serializable;
/**
* Key Value 的键值对
*
- * @author 芋道源码
+ * @author hongawen
*/
@Data
@NoArgsConstructor
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/MapUtils.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/MapUtils.java
index 78a3f6c85..a0a2e4735 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/MapUtils.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/MapUtils.java
@@ -15,7 +15,7 @@ import java.util.function.Consumer;
/**
* Map 工具类
*
- * @author 芋道源码
+ * @author hongawen
*/
public class MapUtils {
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/NumberUtils.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/NumberUtils.java
index f5a927f34..e4912a12a 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/NumberUtils.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/NumberUtils.java
@@ -8,7 +8,7 @@ import java.math.BigDecimal;
/**
* 数字的工具类,补全 {@link NumberUtil} 的功能
*
- * @author 芋道源码
+ * @author hongawen
*/
public class NumberUtils {
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/ObjectUtils.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/ObjectUtils.java
index 164548068..533cb7bc9 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/ObjectUtils.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/ObjectUtils.java
@@ -10,7 +10,7 @@ import java.util.function.Consumer;
/**
* Object 工具类
*
- * @author 芋道源码
+ * @author hongawen
*/
public class ObjectUtils {
diff --git a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/ValidationUtils.java b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/ValidationUtils.java
index 88f9bb622..0ad58cba1 100644
--- a/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/ValidationUtils.java
+++ b/pqs-bpm/bpm-api/src/main/java/com/njcn/bpm/utils/ValidationUtils.java
@@ -14,7 +14,7 @@ import java.util.regex.Pattern;
/**
* 校验工具类
*
- * @author 芋道源码
+ * @author hongawen
*/
public class ValidationUtils {
diff --git a/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/behavior/BpmActivityBehaviorFactory.java b/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/behavior/BpmActivityBehaviorFactory.java
index 5b1377f3c..39343dd56 100644
--- a/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/behavior/BpmActivityBehaviorFactory.java
+++ b/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/behavior/BpmActivityBehaviorFactory.java
@@ -14,7 +14,7 @@ import org.flowable.engine.impl.bpmn.parser.factory.DefaultActivityBehaviorFacto
* 自定义的 ActivityBehaviorFactory 实现类,目的如下:
* 1. 自定义 {@link #createUserTaskActivityBehavior(UserTask)}:实现自定义的流程任务的 assignee 负责人的分配
*
- * @author 芋道源码
+ * @author hongawen
*/
@Setter
public class BpmActivityBehaviorFactory extends DefaultActivityBehaviorFactory {
diff --git a/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/behavior/BpmSequentialMultiInstanceBehavior.java b/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/behavior/BpmSequentialMultiInstanceBehavior.java
index bf8211dda..71b9bf111 100644
--- a/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/behavior/BpmSequentialMultiInstanceBehavior.java
+++ b/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/behavior/BpmSequentialMultiInstanceBehavior.java
@@ -18,7 +18,7 @@ import java.util.Set;
*
* 本质上,实现和 {@link BpmParallelMultiInstanceBehavior} 一样,只是继承的类不一样
*
- * @author 芋道源码
+ * @author hongawen
*/
@Setter
public class BpmSequentialMultiInstanceBehavior extends SequentialMultiInstanceBehavior {
diff --git a/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/behavior/BpmUserTaskActivityBehavior.java b/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/behavior/BpmUserTaskActivityBehavior.java
index bd50dfabb..9213aea87 100644
--- a/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/behavior/BpmUserTaskActivityBehavior.java
+++ b/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/behavior/BpmUserTaskActivityBehavior.java
@@ -23,7 +23,7 @@ import java.util.Set;
* 第一步,基于分配规则,计算出分配任务的【单个】候选人。如果找不到,则直接报业务异常,不继续执行后续的流程;
* 第二步,随机选择一个候选人,则选择作为 assignee 负责人。
*
- * @author 芋道源码
+ * @author hongawen
*/
@Slf4j
public class BpmUserTaskActivityBehavior extends UserTaskActivityBehavior {
diff --git a/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/config/BpmWebConfiguration.java b/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/config/BpmWebConfiguration.java
index c78e3706a..d30aab2c2 100644
--- a/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/config/BpmWebConfiguration.java
+++ b/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/config/BpmWebConfiguration.java
@@ -8,7 +8,7 @@ import org.springframework.context.annotation.Configuration;
/**
* bpm 模块的 web 组件的 Configuration
*
- * @author 芋道源码
+ * @author hongawen
*/
@Configuration(proxyBeanMethods = false)
public class BpmWebConfiguration {
diff --git a/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/constant/BpmConstants.java b/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/constant/BpmConstants.java
index 3cf107b9c..155659032 100644
--- a/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/constant/BpmConstants.java
+++ b/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/constant/BpmConstants.java
@@ -5,7 +5,7 @@ import org.flowable.engine.runtime.ProcessInstance;
/**
* BPM 通用常量
*
- * @author 芋道源码
+ * @author hongawen
*/
public class BpmConstants {
diff --git a/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/controller/BpmSignController.java b/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/controller/BpmSignController.java
new file mode 100644
index 000000000..99dd010a8
--- /dev/null
+++ b/pqs-bpm/bpm-boot/src/main/java/com/njcn/bpm/controller/BpmSignController.java
@@ -0,0 +1,113 @@
+package com.njcn.bpm.controller;
+
+
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.njcn.bpm.pojo.param.BpmSignParam;
+import com.njcn.bpm.pojo.param.BpmSignParam;
+import com.njcn.bpm.pojo.po.BpmCategory;
+import com.njcn.bpm.pojo.po.BpmSign;
+import com.njcn.bpm.pojo.vo.BpmSignVO;
+import com.njcn.bpm.service.IBpmSignService;
+import com.njcn.bpm.service.IBpmSignService;
+import com.njcn.common.pojo.annotation.OperateInfo;
+import com.njcn.common.pojo.constant.OperateType;
+import com.njcn.common.pojo.enums.common.LogEnum;
+import com.njcn.common.pojo.enums.response.CommonResponseEnum;
+import com.njcn.common.pojo.response.HttpResult;
+import com.njcn.common.utils.HttpResultUtil;
+import com.njcn.common.utils.LogUtil;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import com.njcn.web.controller.BaseController;
+
+import javax.validation.Valid;
+import java.util.List;
+
+/**
+ *
+ * BPM 流程标识 前端控制器
+ *
+ *
+ * @author hongawen
+ * @since 2024-05-13
+ */
+@RestController
+@RequestMapping("/bpmSign")
+@Validated
+@Slf4j
+@Api(tags = "流程标识控制器")
+@RequiredArgsConstructor
+public class BpmSignController extends BaseController {
+
+ private final IBpmSignService bpmSignService;
+
+ @OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.ADD)
+ @PostMapping("/add")
+ @ApiOperation("创建流程标识")
+ @ApiImplicitParam(name = "bpmSignParam", value = "流程标识数据", required = true)
+ public HttpResult add(@Valid @RequestBody BpmSignParam bpmSignParam) {
+ String methodDescribe = getMethodDescribe("add");
+ String categoryId = bpmSignService.createSign(bpmSignParam);
+ if (StrUtil.isNotBlank(categoryId)) {
+ return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, categoryId, methodDescribe);
+ } else {
+ return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, null, methodDescribe);
+ }
+ }
+
+
+ @OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.UPDATE)
+ @PostMapping("/update")
+ @ApiOperation("更新流程标识")
+ @ApiImplicitParam(name = "updateParam", value = "流程标识数据", required = true)
+ public HttpResult