Aller au contenu principal

Spark Task CLI:任务设计器

Traduction en coursCe guide est actuellement disponible en chinois simplifié. Une version traduite sera ajoutée ultérieurement.

spark-designer task 是 Spark Task CLI 的设计态入口,用于操作 Spark Tasks 设计资产。推荐顺序是:先确认认证 profile,再选择 App 和可编辑版本,读取现有资产,最后执行明确的写操作。

:::warning 设计态与运行态不同 保存设计器资产不会自动改变 TEST 或 PROD。运行环境只有在对应设计版本发布后才会使用新配置。 :::

1. 选择 App 与版本​

列出可访问的 App:

spark-designer task app list
spark-designer task app list --keyword sample

选择当前 App:

spark-designer task app use spark-sample
spark-designer task current

查看或选择设计版本:

spark-designer task version list
spark-designer task version entry
spark-designer task current

version entry 会解析当前可编辑的入口版本。需要显式创建开发版本时:

spark-designer task version create \
--name "Purchase Approval V2" \
--version-code purchase-v2

当前 App、版本和后续选择的工作流记录在本机 ~/.spark/config.json,不会改变其他用户的页面上下文。

2. 读取任务资产​

spark-designer task type list
spark-designer task category list
spark-designer task field list
spark-designer task field types
spark-designer task form list
spark-designer task step list
spark-designer task step types
spark-designer task workflow list
spark-designer task permission list

需要脚本处理时追加 --json:

spark-designer task field list --json
spark-designer task workflow list --json

3. 任务类型与字段​

spark-designer task type save \
--key PURCHASE \
--name "Purchase Request"

查看服务端实际注册的字段类型,再创建字段:

spark-designer task field types

spark-designer task field save \
--code AMOUNT \
--label Amount \
--type number

在 Spark Console 页面中新建字段时,Field Key 由系统自动生成,用户不需要填写。field save 面向 CLI 自动化创建场景,因此要求调用方提供稳定的 --code;如果字段已经由页面创建,应先运行 field list 读取实际 Code,不要根据 Label 猜测。

删除资产属于高影响操作:

spark-designer task field delete <fieldId> --yes
spark-designer task type delete <taskTypeId> --yes

4. 表单与步骤​

查看已有表单和可复用步骤:

spark-designer task form list
spark-designer task step list
spark-designer task step types

表单布局本身是结构化设计资产。简单场景可以通过 form save 保存,复杂布局建议从已验证的 package 或表单 payload 文件处理,不要在聊天中手写大段 JSON:

spark-designer task form save \
--key purchaseCreate \
--name "Purchase Create" \
--layout-json '<validated-layout-json>'

Step 是可跨工作流复用的业务环节。工作流节点可以通过 --step <code|name> 绑定已存在 Step,便于跨流程统计同类环节。

5. 权限方案​

spark-designer task permission list
spark-designer task permission options
spark-designer task permission items --schema-id <schemaId>

先查看某项权限支持的授权类型:

spark-designer task permission grant-types --perm-code BROWSE

增加或移除授权:

spark-designer task permission grant \
--schema-id <schemaId> \
--perm-code BROWSE \
--grant-type <grantType> \
--grant-param <value>

spark-designer task permission remove-grant \
--schema-id <schemaId> \
--item-id <itemId> \
--yes

查询组织对象用于权限或处理人规则:

spark-designer task org users --keyword alice
spark-designer task org departments --keyword Finance
spark-designer task org roles --keyword Approver
spark-designer task org groups --keyword Purchase

6. 翻译与设计包​

spark-designer task i18n view --entity field --json
spark-designer task i18n export-sheet --entity field --output i18n-field.xlsx
spark-designer task i18n import-sheet --entity field --file i18n-field.xlsx --yes

设计包适合迁移、备份和环境间比对:

spark-designer task package export --output task-designer-package.json
spark-designer task package validate --file task-designer-package.json
spark-designer task package diff --file task-designer-package.json
spark-designer task package apply --file task-designer-package.json --yes

package apply 是批量写操作。应用前应先执行 validate 和 diff,并确认目标 App 与版本。

7. 自动化检查​

spark-designer task check field-registry
spark-designer task check readiness --yes
spark-designer task check workflow-config --yes
spark-designer task check form-layout --yes
spark-designer task check permission-config --yes

部分检查会创建并自动清理临时设计资产,因此需要 --yes。执行前应确认当前 App 和版本:

spark-designer task current

8. Purchase Approval 示例起点​

spark auth status
spark-designer task app use spark-sample
spark-designer task current
spark-designer task type list
spark-designer task field list
spark-designer task form list
spark-designer task step list
spark-designer task workflow list

找到 Purchase Approval 后,继续阅读 工作流语义化编辑。设计完成并发布后,通过 任务运行期与 Worklist 验证任务数据。