| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- /**
- * 流程节点 type 判定(含历史数据:isolation / releaseIsolation 及中文旧值)
- */
- export function isWorkflowLockSchemeType(t: string | undefined | null): boolean {
- return t === 'lock' || t === 'isolation' || t === '隔离' || t === '隔离/方案';
- }
- export function isWorkflowUnlockSchemeType(t: string | undefined | null): boolean {
- return t === 'unlock' || t === 'releaseIsolation' || t === '解除隔离';
- }
- export function isWorkflowCoLockType(t: string | undefined | null): boolean {
- return t === 'coLock' || t === '共锁';
- }
- export function isWorkflowUnlockCoLockType(t: string | undefined | null): boolean {
- return t === 'unlockCoLock' || t === '解除共锁';
- }
- /** 与「上锁」节点相同的校验与配置结构(含共锁) */
- export function isWorkflowLockLikeValidationType(t: string | undefined | null): boolean {
- return isWorkflowLockSchemeType(t) || isWorkflowCoLockType(t);
- }
- /** 与「解锁」节点相同的校验结构(含解除共锁) */
- export function isWorkflowUnlockLikeValidationType(t: string | undefined | null): boolean {
- return isWorkflowUnlockSchemeType(t) || isWorkflowUnlockCoLockType(t);
- }
- /** 右侧配置:隔离方式、隔离点、关联方案节点等整块 UI */
- export function isWorkflowIsolationSchemePanelType(t: string | undefined | null): boolean {
- return (
- isWorkflowLockSchemeType(t) ||
- isWorkflowUnlockSchemeType(t) ||
- isWorkflowCoLockType(t) ||
- isWorkflowUnlockCoLockType(t)
- );
- }
- /** 画布/持久化中的 type 映射到当前左侧模板节点 type(用于 nodeConfigs 来查找) */
- export function resolveWorkflowPaletteType(t: string | undefined | null): string {
- if (!t) return '';
- if (t === 'isolation' || t === '隔离' || t === '隔离/方案') return 'lock';
- if (t === 'releaseIsolation' || t === '解除隔离') return 'unlock';
- if (t === '共锁') return 'coLock';
- if (t === '解除共锁') return 'unlockCoLock';
- return t;
- }
- /** 解除类节点关联的「方案源」节点 type 是否匹配 */
- export function isWorkflowUnlockParentMatch(
- unlockNodeType: string | undefined | null,
- parentNodeType: string | undefined | null
- ): boolean {
- if (isWorkflowUnlockCoLockType(unlockNodeType)) {
- return isWorkflowCoLockType(parentNodeType);
- }
- if (isWorkflowUnlockSchemeType(unlockNodeType)) {
- return isWorkflowLockSchemeType(parentNodeType);
- }
- return false;
- }
|