feat(REQ-4418) - 调整节点配置模型
This commit is contained in:
parent
916c47a3a6
commit
3da15cb8e4
@ -8,23 +8,35 @@ package cn.axzo.workflow.common.enums;
|
||||
*/
|
||||
public enum ApproverSpecifyEnum {
|
||||
|
||||
position("position", "指定岗位"),
|
||||
role("role", "指定角色"),
|
||||
identity("identity", "指定身份"),
|
||||
initiatorLeader("initiatorLeader", "发起人主管"),
|
||||
initiatorLeaderRecursion("initiatorLeaderRecursion", "发起人多级主管"),
|
||||
fixedPerson("fixedPerson", "固定人员"),
|
||||
preNodeSpecified("preNodeSpecified", "上级节点指定"),
|
||||
initiatorSpecified("initiatorSpecified", "发起时指定"),
|
||||
position("position", "指定岗位", 1),
|
||||
role("role", "指定角色", 1),
|
||||
identity("identity", "指定身份", 1),
|
||||
initiatorLeader("initiatorLeader", "发起人主管", 1),
|
||||
initiatorLeaderRecursion("initiatorLeaderRecursion", "发起人多级主管", 1),
|
||||
fixedPerson("fixedPerson", "固定人员", 1),
|
||||
preNodeSpecified("preNodeSpecified", "上级节点指定", 1),
|
||||
initiatorSpecified("initiatorSpecified", "发起时指定", 1),
|
||||
// 该枚举,目前主要为了区别签署业务与审批业务的不同配法,选择该项时,意味着该节点是由二方后端自由消费 BpmnSignApproverLimit 配置
|
||||
signerRelated("signerRelated", "签署人相关组织"),
|
||||
signerRelated("signerRelated", "签署人相关组织", 1),
|
||||
|
||||
// 新配置规则的审批人指定方式
|
||||
position_v2("position_v2", "指定岗位", 2),
|
||||
role_v2("role_v2", "指定角色", 2),
|
||||
identity_v2("identity_v2", "指定身份", 2),
|
||||
initiatorSpecified_v2("initiatorSpecified_v2", "发起人自选", 2),
|
||||
initiator_v2("initiator_v2", "发起人自己", 2),
|
||||
initiatorLeader_v2("initiatorLeader_v2", "发起人主管", 2),
|
||||
fixedPerson_v2("fixedPerson_v2", "固定人员", 2),
|
||||
;
|
||||
|
||||
private String type;
|
||||
private String desc;
|
||||
private Integer version;
|
||||
|
||||
ApproverSpecifyEnum(String type, String desc) {
|
||||
ApproverSpecifyEnum(String type, String desc, Integer version) {
|
||||
this.type = type;
|
||||
this.desc = desc;
|
||||
this.version = version;
|
||||
}
|
||||
|
||||
public String getType() {
|
||||
@ -42,4 +54,12 @@ public enum ApproverSpecifyEnum {
|
||||
public void setDesc(String desc) {
|
||||
this.desc = desc;
|
||||
}
|
||||
|
||||
public Integer getVersion() {
|
||||
return version;
|
||||
}
|
||||
|
||||
public void setVersion(Integer version) {
|
||||
this.version = version;
|
||||
}
|
||||
}
|
||||
|
||||
@ -0,0 +1,41 @@
|
||||
package cn.axzo.workflow.common.enums;
|
||||
|
||||
/**
|
||||
* 审批人指定的二次范围限定枚举
|
||||
*
|
||||
* @author wangli
|
||||
* @since 2025-08-13 14:32
|
||||
*/
|
||||
public enum ApproverSpecifyRangeEnum {
|
||||
|
||||
positions_within_the_project("positions_within_the_project", "项目内岗位"),
|
||||
positions_within_the_project_construction_units("positions_within_the_project_construction_units", "项目内参建单位的企业岗位"),
|
||||
specified_org("specified_org", "审批单指定的末级组织"),
|
||||
initiator("initiator", "审批单发起人"),
|
||||
pre_node_approver("pre_node_approver", "上节点审批人"),
|
||||
;
|
||||
|
||||
private String type;
|
||||
private String desc;
|
||||
|
||||
ApproverSpecifyRangeEnum(String type, String desc) {
|
||||
this.type = type;
|
||||
this.desc = desc;
|
||||
}
|
||||
|
||||
public String getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
public void setType(String type) {
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
public String getDesc() {
|
||||
return desc;
|
||||
}
|
||||
|
||||
public void setDesc(String desc) {
|
||||
this.desc = desc;
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,29 @@
|
||||
package cn.axzo.workflow.common.enums;
|
||||
|
||||
/**
|
||||
* 审批人指定的范围“单位”枚举
|
||||
*
|
||||
* @author wangli
|
||||
* @since 2025-08-13 15:05
|
||||
*/
|
||||
public enum ApproverSpecifyRangeUnitEnum {
|
||||
in_project("in_project", "项目内"),
|
||||
in_ent("in_ent", "企业内"),
|
||||
;
|
||||
private final String type;
|
||||
private final String desc;
|
||||
|
||||
ApproverSpecifyRangeUnitEnum(String type, String desc) {
|
||||
this.type = type;
|
||||
this.desc = desc;
|
||||
}
|
||||
|
||||
public String getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
public String getDesc() {
|
||||
return desc;
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,42 @@
|
||||
package cn.axzo.workflow.common.enums;
|
||||
|
||||
/**
|
||||
* 参建单位类型枚举
|
||||
* <p>
|
||||
* 拷贝自 cn.axzo.orgmanax.dto.cooperateship.enums.CooperateShipTypeEnum
|
||||
*
|
||||
* @author wangli
|
||||
* @since 2025-08-13 14:51
|
||||
*/
|
||||
public enum CooperateShipTypeEnum {
|
||||
PROJ_PRIMARY_CONTRACTING_UNIT(1, "施工总承包"),
|
||||
PROJ_CONSTRUCTION_UNIT(2, "建设单位"),
|
||||
PROJ_SUPERVISION_UNIT(3, "监理单位"),
|
||||
PROJ_LABOR_SUBCONTRACTING(4, "劳务分包"),
|
||||
PROJ_PROFESSIONAL_SUBCONTRACTING(5, "专业承包"),
|
||||
OMS(6, "OMS"),
|
||||
ENT_COMMON(7, "企业通用"),
|
||||
ENT_TEAM(8, "企业内班组"),
|
||||
PROJ_TEAM(9, "项目内班组"),
|
||||
ENT_GROUP(10, "企业内小组"),
|
||||
PROJ_GROUP(11, "项目内小组"),
|
||||
SURVEY_UNIT(12, "地勘单位"),
|
||||
DESIGN_UNIT(13, "设计单位"),
|
||||
OTHER(30, "其他");
|
||||
|
||||
private final Integer code;
|
||||
private final String desc;
|
||||
|
||||
CooperateShipTypeEnum(Integer code, String desc) {
|
||||
this.code = code;
|
||||
this.desc = desc;
|
||||
}
|
||||
|
||||
public Integer getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
public String getDesc() {
|
||||
return desc;
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,30 @@
|
||||
package cn.axzo.workflow.common.enums;
|
||||
|
||||
/**
|
||||
* TODO
|
||||
*
|
||||
* @author wangli
|
||||
* @since 2025-08-13 15:13
|
||||
*/
|
||||
public enum InitiatorSpecifiedRangeEnum {
|
||||
SelfAndChildrenInProject("SelfAndChildrenInProject", "项目内本组织及其下属组织所有成员"),
|
||||
SelfInProject("SelfInProject", "项目内本组织所有成员"),
|
||||
inProject("inProject", "项目内所有成员"),
|
||||
inEnt("inEnt", "企业内所有成员"),
|
||||
;
|
||||
private final String type;
|
||||
private final String desc;
|
||||
|
||||
InitiatorSpecifiedRangeEnum(String type, String desc) {
|
||||
this.type = type;
|
||||
this.desc = desc;
|
||||
}
|
||||
|
||||
public String getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
public String getDesc() {
|
||||
return desc;
|
||||
}
|
||||
}
|
||||
@ -4,7 +4,12 @@ import cn.axzo.workflow.common.enums.ApprovalMethodEnum;
|
||||
import cn.axzo.workflow.common.enums.ApproverEmptyHandleTypeEnum;
|
||||
import cn.axzo.workflow.common.enums.ApproverScopeEnum;
|
||||
import cn.axzo.workflow.common.enums.ApproverSpecifyEnum;
|
||||
import cn.axzo.workflow.common.enums.ApproverSpecifyRangeEnum;
|
||||
import cn.axzo.workflow.common.enums.ApproverSpecifyRangeUnitEnum;
|
||||
import cn.axzo.workflow.common.enums.BpmnFlowNodeMode;
|
||||
import cn.axzo.workflow.common.enums.CooperateShipTypeEnum;
|
||||
import cn.axzo.workflow.common.enums.InitiatorSpecifiedRangeEnum;
|
||||
import cn.axzo.workflow.common.enums.SignApproverOrgLimitEnum;
|
||||
import cn.axzo.workflow.common.model.request.form.FormPermissionMetaInfo;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
@ -52,6 +57,43 @@ public class BpmnJsonNodeProperty {
|
||||
@NotBlank(message = "审批人指定不能为空")
|
||||
private ApproverSpecifyEnum approverSpecify;
|
||||
|
||||
//*************** 针对新配置中的岗位、角色、身份的扩展配置 Start ****************
|
||||
@ApiModelProperty(value = "任务节点:对选择的 approverSpecify 做的二次范围限定配置")
|
||||
private ApproverSpecifyRangeEnum approverSpecifyRange;
|
||||
/**
|
||||
* cn.axzo.orgmanax.dto.cooperateship.enums.CooperateShipTypeEnum
|
||||
*/
|
||||
@ApiModelProperty(value = "任务节点: 当选择approverSpecifyRange的值为positions_within_the_project_construction_units,做的二次范围限定配置的级联选择")
|
||||
private CooperateShipTypeEnum cooperateShipType;
|
||||
|
||||
@ApiModelProperty(value = "任务节点: 当选择approverSpecifyRange的值为specified_org,做的二次范围限定配置的级联选择的值")
|
||||
private SignApproverOrgLimitEnum approverSpecifyRangeOrgLimit;
|
||||
|
||||
/**
|
||||
* 该属性,当 approverSpecify = initiatorLeader_v2 时,也会被应用为限定单位内主管还是项目内主管
|
||||
*/
|
||||
@ApiModelProperty(value = "任务节点: 当选择approverSpecifyRange的值为specified_org,做的二次范围限定配置的级联选择的值")
|
||||
private ApproverSpecifyRangeUnitEnum approverSpecifyRangeUnit;
|
||||
|
||||
//*************** 针对新配置中的岗位、角色、身份的扩展配置 End ****************
|
||||
|
||||
//*************** approverSpecify 为 initiatorSpecified_v2 发起人自选时的一些扩展配置 Start ****************
|
||||
@ApiModelProperty(value = "任务节点: 当选择approverSpecify的值为 initiatorSpecified_v2,做的范围选择的值")
|
||||
private InitiatorSpecifiedRangeEnum initiatorSpecifyRange;
|
||||
@ApiModelProperty(value = "是否开起发起人的筛选策略")
|
||||
private Boolean InitiatorSpecifiedFilter;
|
||||
/**
|
||||
* 需要排除的身份类型
|
||||
*/
|
||||
@ApiModelProperty(value = "需要排除的身份类型")
|
||||
private List<String> excludeIdentityTypes;
|
||||
/**
|
||||
* 需要排查的参建单位类型
|
||||
*/
|
||||
@ApiModelProperty(value = "需要排除的参建单位类型")
|
||||
private List<String> excludeCooperateShipTypes;
|
||||
//*************** approverSpecify 为 initiatorSpecified_v2 发起人自选时的一些扩展配置 End ****************
|
||||
|
||||
/**
|
||||
* 签署确认节点的审批人限定规则
|
||||
*/
|
||||
@ -159,4 +201,16 @@ public class BpmnJsonNodeProperty {
|
||||
@ApiModelProperty(value = "表单字段权限控制")
|
||||
private List<FormPermissionMetaInfo> fieldPermission;
|
||||
|
||||
/**
|
||||
* 区域过滤开关
|
||||
*/
|
||||
@ApiModelProperty(value = "区域过滤开关", notes = "true: 开启区域过滤, false: 关闭区域过滤")
|
||||
private Boolean areaFilterEnable;
|
||||
|
||||
/**
|
||||
* 专业过滤开关
|
||||
*/
|
||||
@ApiModelProperty(value = "专业过滤开关", notes = "true: 开启专业过滤, false: 关闭专业过滤")
|
||||
private Boolean specialtyFilterEnable;
|
||||
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user