weaver-e10-builder 1.5.5 → 1.5.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/actionflow.d.ts.map +1 -1
- package/dist/commands/actionflow.js +6 -0
- package/dist/commands/actionflow.js.map +1 -1
- package/dist/commands/form-layout.d.ts.map +1 -1
- package/dist/commands/form-layout.js +137 -0
- package/dist/commands/form-layout.js.map +1 -1
- package/dist/commands/form-serial-mark.d.ts.map +1 -1
- package/dist/commands/form-serial-mark.js +7 -1
- package/dist/commands/form-serial-mark.js.map +1 -1
- package/dist/commands/form-view.d.ts.map +1 -1
- package/dist/commands/form-view.js +11 -2
- package/dist/commands/form-view.js.map +1 -1
- package/dist/commands/form.js +1 -1
- package/dist/commands/form.js.map +1 -1
- package/dist/commands/org.d.ts +7 -4
- package/dist/commands/org.d.ts.map +1 -1
- package/dist/commands/org.js +92 -54
- package/dist/commands/org.js.map +1 -1
- package/dist/commands/workflow-node-validate.d.ts.map +1 -1
- package/dist/commands/workflow-node-validate.js +159 -15
- package/dist/commands/workflow-node-validate.js.map +1 -1
- package/dist/commands/workflow.d.ts.map +1 -1
- package/dist/commands/workflow.js +23 -5
- package/dist/commands/workflow.js.map +1 -1
- package/dist/core/crypto.d.ts +19 -0
- package/dist/core/crypto.d.ts.map +1 -1
- package/dist/core/crypto.js +70 -35
- package/dist/core/crypto.js.map +1 -1
- package/dist/services/actionflow/components/action_eb_update_compiler.d.ts.map +1 -1
- package/dist/services/actionflow/components/action_eb_update_compiler.js +3 -1
- package/dist/services/actionflow/components/action_eb_update_compiler.js.map +1 -1
- package/dist/services/actionflow/components/custom_trigger.d.ts.map +1 -1
- package/dist/services/actionflow/components/custom_trigger.js +2 -0
- package/dist/services/actionflow/components/custom_trigger.js.map +1 -1
- package/dist/services/actionflow/components/event_button.d.ts.map +1 -1
- package/dist/services/actionflow/components/event_button.js +2 -0
- package/dist/services/actionflow/components/event_button.js.map +1 -1
- package/dist/services/actionflow/components/event_form_data.d.ts.map +1 -1
- package/dist/services/actionflow/components/event_form_data.js +2 -0
- package/dist/services/actionflow/components/event_form_data.js.map +1 -1
- package/dist/services/actionflow/components/form_data_builder.d.ts +23 -0
- package/dist/services/actionflow/components/form_data_builder.d.ts.map +1 -0
- package/dist/services/actionflow/components/form_data_builder.js +106 -0
- package/dist/services/actionflow/components/form_data_builder.js.map +1 -0
- package/dist/services/actionflow/components/hrm_actions.d.ts +1 -0
- package/dist/services/actionflow/components/hrm_actions.d.ts.map +1 -1
- package/dist/services/actionflow/components/hrm_actions.js +136 -44
- package/dist/services/actionflow/components/hrm_actions.js.map +1 -1
- package/dist/services/actionflow/components/inner_mq_listener.d.ts.map +1 -1
- package/dist/services/actionflow/components/inner_mq_listener.js +2 -0
- package/dist/services/actionflow/components/inner_mq_listener.js.map +1 -1
- package/dist/services/actionflow/components/webhook_trigger.d.ts.map +1 -1
- package/dist/services/actionflow/components/webhook_trigger.js +6 -5
- package/dist/services/actionflow/components/webhook_trigger.js.map +1 -1
- package/dist/services/actionflow/components/workflow_actions.d.ts.map +1 -1
- package/dist/services/actionflow/components/workflow_actions.js +6 -3
- package/dist/services/actionflow/components/workflow_actions.js.map +1 -1
- package/dist/services/actionflow/formula_service.d.ts +1 -1
- package/dist/services/actionflow/formula_service.d.ts.map +1 -1
- package/dist/services/actionflow/formula_service.js +14 -7
- package/dist/services/actionflow/formula_service.js.map +1 -1
- package/dist/services/actionflow/hrm_source.d.ts +2 -0
- package/dist/services/actionflow/hrm_source.d.ts.map +1 -1
- package/dist/services/actionflow/hrm_source.js +4 -0
- package/dist/services/actionflow/hrm_source.js.map +1 -1
- package/dist/services/actionflow/preflight_service.d.ts.map +1 -1
- package/dist/services/actionflow/preflight_service.js +62 -0
- package/dist/services/actionflow/preflight_service.js.map +1 -1
- package/dist/services/actionflow/workflow_compiler.d.ts.map +1 -1
- package/dist/services/actionflow/workflow_compiler.js +19 -22
- package/dist/services/actionflow/workflow_compiler.js.map +1 -1
- package/dist/services/form-layout-copy-default.d.ts +94 -0
- package/dist/services/form-layout-copy-default.d.ts.map +1 -0
- package/dist/services/form-layout-copy-default.js +157 -0
- package/dist/services/form-layout-copy-default.js.map +1 -0
- package/dist/services/form-layout-insert.js +1 -1
- package/dist/services/form-layout-insert.js.map +1 -1
- package/dist/services/form-view-populate.d.ts +76 -0
- package/dist/services/form-view-populate.d.ts.map +1 -0
- package/dist/services/form-view-populate.js +171 -0
- package/dist/services/form-view-populate.js.map +1 -0
- package/dist/services/form-view.d.ts +4 -0
- package/dist/services/form-view.d.ts.map +1 -1
- package/dist/services/form-view.js +49 -90
- package/dist/services/form-view.js.map +1 -1
- package/dist/services/org-department.d.ts +30 -17
- package/dist/services/org-department.d.ts.map +1 -1
- package/dist/services/org-department.js +45 -65
- package/dist/services/org-department.js.map +1 -1
- package/package.json +1 -1
- package/skill-docs/SKILL.md +278 -282
- package/skill-docs/_catalog.md +87 -86
- package/skill-docs/actionflows/references/components/personnel/HrmEmployeeUpdate.md +3 -1
- package/skill-docs/actionflows/references/components/personnel/PersonnelAlterType.md +38 -0
- package/skill-docs/actionflows/references/components/personnel/PersonnelOnboarding.md +36 -34
- package/skill-docs/actionflows/references/components/trigger/WebHookTrigger.md +4 -2
- package/skill-docs/references/common/guide-plan-template.md +12 -4
- package/skill-docs/references/common/map.md +152 -0
- package/skill-docs/references/common/ref-cli-commands.md +8 -2
- package/skill-docs/references/form/guide-form-view.md +28 -0
- package/skill-docs/references/workflow/guide-workflow.md +20 -2
|
@@ -6,8 +6,9 @@
|
|
|
6
6
|
import { genSfId, normalizeNumericFrontId } from './id_generator.js';
|
|
7
7
|
import fs from 'node:fs';
|
|
8
8
|
import { get, getCompiler, getNodePost } from './components/index.js';
|
|
9
|
+
import { buildEsbFormDataDto, buildEsbFormField } from './components/form_data_builder.js';
|
|
9
10
|
import { findInMetadata, getTargetFormFields, getWorkflowDetailNames, getTargetDetailFields, getWorkflowDetailFields, getWorkflowFieldIds, workflowFieldId, getWorkflowContextFields, getWorkflowContextFieldsByKey } from './runtime_metadata.js';
|
|
10
|
-
import { buildPersonFormula,
|
|
11
|
+
import { buildPersonFormula, buildAssignBean, attachEsbAssign, resolveEnumConstant, resolveParamKey, resolveSourceFieldLabel, resolveSourceFieldType, normalizeConstantAssignment, lookupTargetFieldMeta, formulaFixedForAssignSwitch, formulaSystemVar, formulaContext, assignFlatContextDirect, getFormulaFn, formulaFunction, contextRootForComponent, contextTableNameForRoot, normalizeContextParamKey, } from './formula_service.js';
|
|
11
12
|
import { buildFormulaReference, buildUpdateFieldCondition } from './components/action_eb_update_compiler.js';
|
|
12
13
|
import { resolveCustomTriggerDtoId } from './custom_trigger_context.js';
|
|
13
14
|
import { resolveSystemParameter, isDateSystemParameter } from './system_params.js';
|
|
@@ -443,7 +444,7 @@ export function fillSetting(result, updates, mapping, constants, formula, meta,
|
|
|
443
444
|
const sourceType = field.type ?? '';
|
|
444
445
|
fieldType = { String: 'Text', string: 'Text', Number: 'NumberComponent', number: 'NumberComponent' }[sourceType] ?? (sourceType || 'Text');
|
|
445
446
|
}
|
|
446
|
-
main[String(fid)] =
|
|
447
|
+
main[String(fid)] = buildEsbFormField(String(fid), u, fieldType, meta, appId, String(eventId), 'OPERATE_EQUAL', componentType, false, assignmentMode);
|
|
447
448
|
}
|
|
448
449
|
}
|
|
449
450
|
if (mapping && typeof mapping === 'object' && !Array.isArray(mapping)) {
|
|
@@ -456,7 +457,7 @@ export function fillSetting(result, updates, mapping, constants, formula, meta,
|
|
|
456
457
|
const tfid = String(targetFieldId.target || '');
|
|
457
458
|
if (!tfid)
|
|
458
459
|
throw new Error(`mapping 系统变量值缺少目标字段 id: 应传 {'target':'<目标字段id>', 'systemValue':'currentUser'}`);
|
|
459
|
-
main[tfid] =
|
|
460
|
+
main[tfid] = buildEsbFormField(tfid, { kind: 'system_variable', key: svKey }, 'Text', meta, appId, String(eventId), 'OPERATE_EQUAL', componentType, false, assignmentMode);
|
|
460
461
|
continue;
|
|
461
462
|
}
|
|
462
463
|
const declaredKind = String(targetFieldId.kind || targetFieldId.assignmentKind || 'context');
|
|
@@ -512,7 +513,7 @@ export function fillSetting(result, updates, mapping, constants, formula, meta,
|
|
|
512
513
|
const srcFt = resolveSourceFieldType(srcParamKey, meta);
|
|
513
514
|
const targetMeta = lookupTargetFieldMeta(raw, result);
|
|
514
515
|
const targetFt = String(targetMeta?.componentKey || targetMeta?.type || srcFt || 'Text');
|
|
515
|
-
main[raw] =
|
|
516
|
+
main[raw] = buildEsbFormField(raw, assignment, targetFt, meta, appId, String(eventId), operate, componentType, false, assignmentMode);
|
|
516
517
|
}
|
|
517
518
|
else {
|
|
518
519
|
let raw = String(targetFieldId);
|
|
@@ -530,7 +531,7 @@ export function fillSetting(result, updates, mapping, constants, formula, meta,
|
|
|
530
531
|
const srcFt = resolveSourceFieldType(refKey, meta);
|
|
531
532
|
const targetMeta = lookupTargetFieldMeta(raw, result);
|
|
532
533
|
const targetFt = String(targetMeta?.componentKey || targetMeta?.type || srcFt || 'Text');
|
|
533
|
-
main[raw] =
|
|
534
|
+
main[raw] = buildEsbFormField(raw, assignment, targetFt, meta, appId, String(eventId), operate, componentType, false, assignmentMode);
|
|
534
535
|
}
|
|
535
536
|
}
|
|
536
537
|
}
|
|
@@ -549,7 +550,7 @@ export function fillSetting(result, updates, mapping, constants, formula, meta,
|
|
|
549
550
|
// 固定枚举值的外层 fieldType 必须是目标组件类型(例如 Select),
|
|
550
551
|
// 与手工保存 JSON 一致;使用默认 Text 会导致设计器下拉回显为空。
|
|
551
552
|
const targetFieldType = String(fieldMeta?.componentKey || fieldMeta?.type || ft);
|
|
552
|
-
main[tfid] =
|
|
553
|
+
main[tfid] = buildEsbFormField(tfid, assignment, targetFieldType, meta, appId, String(eventId), operateC, componentType, false, assignmentMode);
|
|
553
554
|
}
|
|
554
555
|
}
|
|
555
556
|
if (formula && typeof formula === 'object' && !Array.isArray(formula)) {
|
|
@@ -560,7 +561,7 @@ export function fillSetting(result, updates, mapping, constants, formula, meta,
|
|
|
560
561
|
if (String(fspec.kind || '') === 'function') {
|
|
561
562
|
const fieldMeta = lookupTargetFieldMeta(String(targetFieldId), result);
|
|
562
563
|
const targetFieldType = String(fieldMeta?.componentKey || fieldMeta?.type || fspec.resultType || 'Number');
|
|
563
|
-
main[String(targetFieldId)] =
|
|
564
|
+
main[String(targetFieldId)] = buildEsbFormField(String(targetFieldId), fspec, targetFieldType, meta, appId, String(eventId), 'OPERATE_EQUAL', componentType, false, assignmentMode);
|
|
564
565
|
continue;
|
|
565
566
|
}
|
|
566
567
|
const op = fspec.op || 'add';
|
|
@@ -609,15 +610,11 @@ export function fillSetting(result, updates, mapping, constants, formula, meta,
|
|
|
609
610
|
main[fidS] = { formFieldKey: '', value: { original: false, operate: 'OPERATE_EQUAL', fieldKey: fidS, multiSelect: false } };
|
|
610
611
|
}
|
|
611
612
|
}
|
|
612
|
-
result.setting = {
|
|
613
|
+
result.setting = buildEsbFormDataDto(main, [], {
|
|
613
614
|
opType: result.opType ?? 'insert',
|
|
614
615
|
updatePolicy: result.updatePolicy ?? 'ALL',
|
|
615
|
-
dataDrWithCalc: false,
|
|
616
|
-
main,
|
|
617
|
-
detail: [],
|
|
618
|
-
deleteMainFields: [],
|
|
619
616
|
updateFieldCondition: { updateField: [] },
|
|
620
|
-
};
|
|
617
|
+
});
|
|
621
618
|
}
|
|
622
619
|
// ── filter 筛选条件树 ───────────────────────────────────────
|
|
623
620
|
function isFilterGroup(value) {
|
|
@@ -1416,7 +1413,7 @@ export function buildSettingDetail(nodeData, detailItems, meta, appId, eventId,
|
|
|
1416
1413
|
assignment.detailLabel = refDetail;
|
|
1417
1414
|
const targetMeta = targetDetailFields[raw] || {};
|
|
1418
1415
|
const targetType = String(targetMeta.componentKey || targetMeta.type || 'Text');
|
|
1419
|
-
eleData[raw] =
|
|
1416
|
+
eleData[raw] = buildEsbFormField(raw, assignment, targetType, meta, appId, eventId, operate, nodeType, true, '');
|
|
1420
1417
|
}
|
|
1421
1418
|
else {
|
|
1422
1419
|
let raw = String(targetFieldId);
|
|
@@ -1431,7 +1428,7 @@ export function buildSettingDetail(nodeData, detailItems, meta, appId, eventId,
|
|
|
1431
1428
|
assignment = { kind: 'context', paramKey: String(sourceKey), label: resolveSourceFieldLabel(String(sourceKey), meta, String(sourceKey)) };
|
|
1432
1429
|
const targetMeta = targetDetailFields[raw] || {};
|
|
1433
1430
|
const targetType = String(targetMeta.componentKey || targetMeta.type || 'Text');
|
|
1434
|
-
eleData[raw] =
|
|
1431
|
+
eleData[raw] = buildEsbFormField(raw, assignment, targetType, meta, appId, eventId, operate, nodeType, true, '');
|
|
1435
1432
|
}
|
|
1436
1433
|
}
|
|
1437
1434
|
}
|
|
@@ -1442,7 +1439,7 @@ export function buildSettingDetail(nodeData, detailItems, meta, appId, eventId,
|
|
|
1442
1439
|
const value = resolveEnumConstant(valueRaw, targetMeta);
|
|
1443
1440
|
const [assignment, ft] = normalizeConstantAssignment(value, 'Text');
|
|
1444
1441
|
const targetType = String(targetMeta.componentKey || targetMeta.type || ft);
|
|
1445
|
-
eleData[targetFieldId] =
|
|
1442
|
+
eleData[targetFieldId] = buildEsbFormField(targetFieldId, assignment, targetType, meta, appId, eventId, 'OPERATE_EQUAL', nodeType, true, '');
|
|
1446
1443
|
}
|
|
1447
1444
|
}
|
|
1448
1445
|
const formula = item.formula || {};
|
|
@@ -1456,7 +1453,7 @@ export function buildSettingDetail(nodeData, detailItems, meta, appId, eventId,
|
|
|
1456
1453
|
continue;
|
|
1457
1454
|
const targetMeta = targetDetailFields[String(targetFieldId)] || {};
|
|
1458
1455
|
const targetType = String(targetMeta.componentKey || targetMeta.type || formulaSpec.resultType || 'Text');
|
|
1459
|
-
eleData[String(targetFieldId)] =
|
|
1456
|
+
eleData[String(targetFieldId)] = buildEsbFormField(String(targetFieldId), formulaSpec, targetType, meta, appId, eventId, 'OPERATE_EQUAL', nodeType, true, '');
|
|
1460
1457
|
}
|
|
1461
1458
|
}
|
|
1462
1459
|
// detail 自动按名补全
|
|
@@ -1512,7 +1509,7 @@ export function autoFillDetailMapping(eleData, item, targetFormId, meta, appId,
|
|
|
1512
1509
|
const assignment = { kind: 'context', paramKey: srcPk, label: tname };
|
|
1513
1510
|
if (bvLabel)
|
|
1514
1511
|
assignment.detailLabel = bvLabel;
|
|
1515
|
-
eleData[tidS] =
|
|
1512
|
+
eleData[tidS] = buildEsbFormField(tidS, assignment, String(tmeta.componentKey || tmeta.type || 'Text'), meta, appId, eventId, 'OPERATE_EQUAL', nodeType, true, '');
|
|
1516
1513
|
}
|
|
1517
1514
|
}
|
|
1518
1515
|
// ── convert_node ────────────────────────────────────────────
|
|
@@ -1567,7 +1564,7 @@ export function convertNode(draftAction, isEvent = false, meta = null, appId = '
|
|
|
1567
1564
|
delete nodeData.setting;
|
|
1568
1565
|
const main = (setting || {}).main || {};
|
|
1569
1566
|
const detailOut = (setting || {}).detail || [];
|
|
1570
|
-
nodeData.formData =
|
|
1567
|
+
nodeData.formData = buildEsbFormDataDto(main, detailOut);
|
|
1571
1568
|
// ApproveCreateDTO 没有使用 fields;目标字段仅用于编译 mapping,不能写入保存 DTO。
|
|
1572
1569
|
if (nodeType !== 'ApproveCreate') {
|
|
1573
1570
|
const fieldsMetaKey = String(formDataPayload.fieldsMetaKey || '_bizFields');
|
|
@@ -1588,7 +1585,7 @@ export function convertNode(draftAction, isEvent = false, meta = null, appId = '
|
|
|
1588
1585
|
}
|
|
1589
1586
|
else if (formDataPayload && typeof formDataPayload === 'object') {
|
|
1590
1587
|
// 声明 formDataPayload 的组件即使没有字段映射,也显式携带表单数据容器。
|
|
1591
|
-
nodeData.formData ??=
|
|
1588
|
+
nodeData.formData ??= buildEsbFormDataDto();
|
|
1592
1589
|
if (nodeType !== 'ApproveCreate')
|
|
1593
1590
|
nodeData.fields ??= { main: [], detail: [] };
|
|
1594
1591
|
nodeData.formDataId ??= genSfId();
|
|
@@ -1639,7 +1636,7 @@ export function convertNode(draftAction, isEvent = false, meta = null, appId = '
|
|
|
1639
1636
|
continue;
|
|
1640
1637
|
const targetFieldMeta = lookupTargetFieldMeta(raw, nodeData);
|
|
1641
1638
|
const targetFieldType = String(targetFieldMeta?.componentKey || targetFieldMeta?.type || 'Text');
|
|
1642
|
-
main[raw] =
|
|
1639
|
+
main[raw] = buildEsbFormField(raw, { kind: 'context', paramKey: String(sourceKey), label: String(sourceKey) }, targetFieldType, meta || {}, appId, eventNodeId || nidStr, operate, nodeType, false, assignmentMode);
|
|
1643
1640
|
}
|
|
1644
1641
|
}
|
|
1645
1642
|
if (pendingConstants && typeof pendingConstants === 'object') {
|
|
@@ -1656,7 +1653,7 @@ export function convertNode(draftAction, isEvent = false, meta = null, appId = '
|
|
|
1656
1653
|
rawV = resolveEnumConstant(rawV, targetFieldMeta);
|
|
1657
1654
|
const [assignment, ft] = normalizeConstantAssignment(rawV, 'Text');
|
|
1658
1655
|
const targetFieldType = String(targetFieldMeta?.componentKey || targetFieldMeta?.type || ft);
|
|
1659
|
-
main[targetFieldId] =
|
|
1656
|
+
main[targetFieldId] = buildEsbFormField(targetFieldId, assignment, targetFieldType, meta || {}, appId, eventNodeId || nidStr, operateC, nodeType, false, assignmentMode);
|
|
1660
1657
|
}
|
|
1661
1658
|
}
|
|
1662
1659
|
nodeData.setting.main = main;
|