weaver-e10-builder 1.0.11-beta → 1.1.0

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.
Files changed (358) hide show
  1. package/dist/commands/actionflow.d.ts.map +1 -1
  2. package/dist/commands/actionflow.js +17 -3
  3. package/dist/commands/actionflow.js.map +1 -1
  4. package/dist/commands/auth.d.ts.map +1 -1
  5. package/dist/commands/auth.js +16 -0
  6. package/dist/commands/auth.js.map +1 -1
  7. package/dist/commands/form-association-manage.d.ts +3 -0
  8. package/dist/commands/form-association-manage.d.ts.map +1 -0
  9. package/dist/commands/form-association-manage.js +76 -0
  10. package/dist/commands/form-association-manage.js.map +1 -0
  11. package/dist/commands/form-association.d.ts.map +1 -1
  12. package/dist/commands/form-association.js +29 -25
  13. package/dist/commands/form-association.js.map +1 -1
  14. package/dist/commands/form-button.d.ts.map +1 -1
  15. package/dist/commands/form-button.js +71 -159
  16. package/dist/commands/form-button.js.map +1 -1
  17. package/dist/commands/form-field-linkage.d.ts +3 -0
  18. package/dist/commands/form-field-linkage.d.ts.map +1 -0
  19. package/dist/commands/form-field-linkage.js +300 -0
  20. package/dist/commands/form-field-linkage.js.map +1 -0
  21. package/dist/commands/form-list-columns.d.ts +3 -0
  22. package/dist/commands/form-list-columns.d.ts.map +1 -0
  23. package/dist/commands/form-list-columns.js +50 -0
  24. package/dist/commands/form-list-columns.js.map +1 -0
  25. package/dist/commands/form-list-permission.d.ts.map +1 -1
  26. package/dist/commands/form-list-permission.js +130 -15
  27. package/dist/commands/form-list-permission.js.map +1 -1
  28. package/dist/commands/form-list-stats.d.ts +0 -8
  29. package/dist/commands/form-list-stats.d.ts.map +1 -1
  30. package/dist/commands/form-list-stats.js +41 -133
  31. package/dist/commands/form-list-stats.js.map +1 -1
  32. package/dist/commands/form-list.d.ts.map +1 -1
  33. package/dist/commands/form-list.js +2 -126
  34. package/dist/commands/form-list.js.map +1 -1
  35. package/dist/commands/form-nlist.d.ts +22 -0
  36. package/dist/commands/form-nlist.d.ts.map +1 -0
  37. package/dist/commands/form-nlist.js +179 -0
  38. package/dist/commands/form-nlist.js.map +1 -0
  39. package/dist/commands/form-serial-mark.d.ts +0 -15
  40. package/dist/commands/form-serial-mark.d.ts.map +1 -1
  41. package/dist/commands/form-serial-mark.js +604 -137
  42. package/dist/commands/form-serial-mark.js.map +1 -1
  43. package/dist/commands/form.d.ts.map +1 -1
  44. package/dist/commands/form.js +207 -2
  45. package/dist/commands/form.js.map +1 -1
  46. package/dist/commands/interface.d.ts +3 -0
  47. package/dist/commands/interface.d.ts.map +1 -0
  48. package/dist/commands/interface.js +51 -0
  49. package/dist/commands/interface.js.map +1 -0
  50. package/dist/commands/menu-permission.d.ts.map +1 -1
  51. package/dist/commands/menu-permission.js +133 -82
  52. package/dist/commands/menu-permission.js.map +1 -1
  53. package/dist/commands/skill.d.ts +3 -0
  54. package/dist/commands/skill.d.ts.map +1 -0
  55. package/dist/commands/skill.js +112 -0
  56. package/dist/commands/skill.js.map +1 -0
  57. package/dist/commands/update.d.ts +13 -0
  58. package/dist/commands/update.d.ts.map +1 -0
  59. package/dist/commands/update.js +101 -0
  60. package/dist/commands/update.js.map +1 -0
  61. package/dist/commands/workflow-condition.d.ts.map +1 -1
  62. package/dist/commands/workflow-condition.js +3 -1
  63. package/dist/commands/workflow-condition.js.map +1 -1
  64. package/dist/commands/workflow-node-empty-handle.d.ts +13 -0
  65. package/dist/commands/workflow-node-empty-handle.d.ts.map +1 -0
  66. package/dist/commands/workflow-node-empty-handle.js +137 -0
  67. package/dist/commands/workflow-node-empty-handle.js.map +1 -0
  68. package/dist/commands/workflow.d.ts.map +1 -1
  69. package/dist/commands/workflow.js +101 -25
  70. package/dist/commands/workflow.js.map +1 -1
  71. package/dist/index.js +12 -0
  72. package/dist/index.js.map +1 -1
  73. package/dist/postinstall.d.ts +2 -0
  74. package/dist/postinstall.d.ts.map +1 -0
  75. package/dist/postinstall.js +17 -0
  76. package/dist/postinstall.js.map +1 -0
  77. package/dist/services/actionflow/command_output.d.ts +4 -0
  78. package/dist/services/actionflow/command_output.d.ts.map +1 -1
  79. package/dist/services/actionflow/command_output.js +44 -0
  80. package/dist/services/actionflow/command_output.js.map +1 -1
  81. package/dist/services/actionflow/component_registry.d.ts.map +1 -1
  82. package/dist/services/actionflow/component_registry.js +5 -1
  83. package/dist/services/actionflow/component_registry.js.map +1 -1
  84. package/dist/services/actionflow/components/action_eb_add.js +1 -1
  85. package/dist/services/actionflow/components/action_eb_add.js.map +1 -1
  86. package/dist/services/actionflow/components/approve_trigger.d.ts +5 -0
  87. package/dist/services/actionflow/components/approve_trigger.d.ts.map +1 -1
  88. package/dist/services/actionflow/components/approve_trigger.js +22 -1
  89. package/dist/services/actionflow/components/approve_trigger.js.map +1 -1
  90. package/dist/services/actionflow/components/approve_trigger_compiler.js +2 -2
  91. package/dist/services/actionflow/components/approve_trigger_compiler.js.map +1 -1
  92. package/dist/services/actionflow/components/custom_trigger.d.ts +9 -0
  93. package/dist/services/actionflow/components/custom_trigger.d.ts.map +1 -0
  94. package/dist/services/actionflow/components/custom_trigger.js +47 -0
  95. package/dist/services/actionflow/components/custom_trigger.js.map +1 -0
  96. package/dist/services/actionflow/components/enquiry_form.d.ts.map +1 -1
  97. package/dist/services/actionflow/components/enquiry_form.js +29 -3
  98. package/dist/services/actionflow/components/enquiry_form.js.map +1 -1
  99. package/dist/services/actionflow/components/event_button.d.ts +3 -0
  100. package/dist/services/actionflow/components/event_button.d.ts.map +1 -0
  101. package/dist/services/actionflow/components/event_button.js +32 -0
  102. package/dist/services/actionflow/components/event_button.js.map +1 -0
  103. package/dist/services/actionflow/components/index.d.ts.map +1 -1
  104. package/dist/services/actionflow/components/index.js +10 -0
  105. package/dist/services/actionflow/components/index.js.map +1 -1
  106. package/dist/services/actionflow/components/inner_mq_listener.d.ts +3 -0
  107. package/dist/services/actionflow/components/inner_mq_listener.d.ts.map +1 -0
  108. package/dist/services/actionflow/components/inner_mq_listener.js +40 -0
  109. package/dist/services/actionflow/components/inner_mq_listener.js.map +1 -0
  110. package/dist/services/actionflow/components/inner_mq_send.d.ts +5 -0
  111. package/dist/services/actionflow/components/inner_mq_send.d.ts.map +1 -0
  112. package/dist/services/actionflow/components/inner_mq_send.js +72 -0
  113. package/dist/services/actionflow/components/inner_mq_send.js.map +1 -0
  114. package/dist/services/actionflow/components/send_message.d.ts.map +1 -1
  115. package/dist/services/actionflow/components/send_message.js +7 -4
  116. package/dist/services/actionflow/components/send_message.js.map +1 -1
  117. package/dist/services/actionflow/context_preflight.d.ts.map +1 -1
  118. package/dist/services/actionflow/context_preflight.js +7 -1
  119. package/dist/services/actionflow/context_preflight.js.map +1 -1
  120. package/dist/services/actionflow/design_client.d.ts +13 -2
  121. package/dist/services/actionflow/design_client.d.ts.map +1 -1
  122. package/dist/services/actionflow/design_client.js +56 -8
  123. package/dist/services/actionflow/design_client.js.map +1 -1
  124. package/dist/services/actionflow/enrich_approve_trigger.d.ts.map +1 -1
  125. package/dist/services/actionflow/enrich_approve_trigger.js +31 -0
  126. package/dist/services/actionflow/enrich_approve_trigger.js.map +1 -1
  127. package/dist/services/actionflow/form_source.d.ts +2 -0
  128. package/dist/services/actionflow/form_source.d.ts.map +1 -1
  129. package/dist/services/actionflow/form_source.js +5 -0
  130. package/dist/services/actionflow/form_source.js.map +1 -1
  131. package/dist/services/actionflow/formula_service.d.ts +1 -1
  132. package/dist/services/actionflow/formula_service.d.ts.map +1 -1
  133. package/dist/services/actionflow/formula_service.js +118 -12
  134. package/dist/services/actionflow/formula_service.js.map +1 -1
  135. package/dist/services/actionflow/functions_catalog.d.ts +2 -1
  136. package/dist/services/actionflow/functions_catalog.d.ts.map +1 -1
  137. package/dist/services/actionflow/functions_catalog.js +2392 -180
  138. package/dist/services/actionflow/functions_catalog.js.map +1 -1
  139. package/dist/services/actionflow/functions_source.d.ts.map +1 -1
  140. package/dist/services/actionflow/functions_source.js +3 -0
  141. package/dist/services/actionflow/functions_source.js.map +1 -1
  142. package/dist/services/actionflow/generation_service.d.ts +11 -0
  143. package/dist/services/actionflow/generation_service.d.ts.map +1 -1
  144. package/dist/services/actionflow/generation_service.js +66 -23
  145. package/dist/services/actionflow/generation_service.js.map +1 -1
  146. package/dist/services/actionflow/plan_constraints.d.ts +5 -0
  147. package/dist/services/actionflow/plan_constraints.d.ts.map +1 -0
  148. package/dist/services/actionflow/plan_constraints.js +54 -0
  149. package/dist/services/actionflow/plan_constraints.js.map +1 -0
  150. package/dist/services/actionflow/preflight_service.d.ts +3 -0
  151. package/dist/services/actionflow/preflight_service.d.ts.map +1 -1
  152. package/dist/services/actionflow/preflight_service.js +152 -8
  153. package/dist/services/actionflow/preflight_service.js.map +1 -1
  154. package/dist/services/actionflow/readback_verifier.d.ts.map +1 -1
  155. package/dist/services/actionflow/readback_verifier.js +63 -2
  156. package/dist/services/actionflow/readback_verifier.js.map +1 -1
  157. package/dist/services/actionflow/save_workflow_draft.d.ts.map +1 -1
  158. package/dist/services/actionflow/save_workflow_draft.js +43 -2
  159. package/dist/services/actionflow/save_workflow_draft.js.map +1 -1
  160. package/dist/services/actionflow/update_service.d.ts +41 -0
  161. package/dist/services/actionflow/update_service.d.ts.map +1 -0
  162. package/dist/services/actionflow/update_service.js +767 -0
  163. package/dist/services/actionflow/update_service.js.map +1 -0
  164. package/dist/services/actionflow/workflow_compiler.d.ts.map +1 -1
  165. package/dist/services/actionflow/workflow_compiler.js +120 -12
  166. package/dist/services/actionflow/workflow_compiler.js.map +1 -1
  167. package/dist/services/condition-rules.d.ts.map +1 -1
  168. package/dist/services/condition-rules.js +3 -1
  169. package/dist/services/condition-rules.js.map +1 -1
  170. package/dist/services/esb-interface/document-parser.d.ts +6 -0
  171. package/dist/services/esb-interface/document-parser.d.ts.map +1 -0
  172. package/dist/services/esb-interface/document-parser.js +247 -0
  173. package/dist/services/esb-interface/document-parser.js.map +1 -0
  174. package/dist/services/esb-interface/importer.d.ts +9 -0
  175. package/dist/services/esb-interface/importer.d.ts.map +1 -0
  176. package/dist/services/esb-interface/importer.js +44 -0
  177. package/dist/services/esb-interface/importer.js.map +1 -0
  178. package/dist/services/esb-interface/postman-collection.d.ts +9 -0
  179. package/dist/services/esb-interface/postman-collection.d.ts.map +1 -0
  180. package/dist/services/esb-interface/postman-collection.js +125 -0
  181. package/dist/services/esb-interface/postman-collection.js.map +1 -0
  182. package/dist/services/esb-interface/types.d.ts +91 -0
  183. package/dist/services/esb-interface/types.d.ts.map +1 -0
  184. package/dist/services/esb-interface/types.js +2 -0
  185. package/dist/services/esb-interface/types.js.map +1 -0
  186. package/dist/services/form-association.d.ts +49 -0
  187. package/dist/services/form-association.d.ts.map +1 -0
  188. package/dist/services/form-association.js +279 -0
  189. package/dist/services/form-association.js.map +1 -0
  190. package/dist/services/form-button-position.d.ts +35 -0
  191. package/dist/services/form-button-position.d.ts.map +1 -0
  192. package/dist/services/form-button-position.js +109 -0
  193. package/dist/services/form-button-position.js.map +1 -0
  194. package/dist/services/form-create.d.ts.map +1 -1
  195. package/dist/services/form-create.js +4 -1
  196. package/dist/services/form-create.js.map +1 -1
  197. package/dist/services/form-list-columns.d.ts +54 -0
  198. package/dist/services/form-list-columns.d.ts.map +1 -0
  199. package/dist/services/form-list-columns.js +236 -0
  200. package/dist/services/form-list-columns.js.map +1 -0
  201. package/dist/services/form-list-stats.d.ts +44 -0
  202. package/dist/services/form-list-stats.d.ts.map +1 -0
  203. package/dist/services/form-list-stats.js +302 -0
  204. package/dist/services/form-list-stats.js.map +1 -0
  205. package/dist/services/form-nlist.d.ts +42 -0
  206. package/dist/services/form-nlist.d.ts.map +1 -0
  207. package/dist/services/form-nlist.js +332 -0
  208. package/dist/services/form-nlist.js.map +1 -0
  209. package/dist/services/skill-provision.d.ts +23 -0
  210. package/dist/services/skill-provision.d.ts.map +1 -0
  211. package/dist/services/skill-provision.js +96 -0
  212. package/dist/services/skill-provision.js.map +1 -0
  213. package/dist/services/update-check.d.ts +24 -0
  214. package/dist/services/update-check.d.ts.map +1 -0
  215. package/dist/services/update-check.js +108 -0
  216. package/dist/services/update-check.js.map +1 -0
  217. package/dist/services/workflow-initiator.js +3 -3
  218. package/dist/services/workflow-initiator.js.map +1 -1
  219. package/package.json +5 -2
  220. package/skill-docs/SKILL.md +263 -0
  221. package/skill-docs/actionflows/references/components/calendar/MeetingCreate.md +17 -0
  222. package/skill-docs/actionflows/references/components/calendar/ScheduleCreate.md +17 -0
  223. package/skill-docs/actionflows/references/components/document/AttachmentCopy.md +17 -0
  224. package/skill-docs/actionflows/references/components/document/AttachmentMove.md +17 -0
  225. package/skill-docs/actionflows/references/components/document/DocumentCopy.md +17 -0
  226. package/skill-docs/actionflows/references/components/document/DocumentDelete.md +17 -0
  227. package/skill-docs/actionflows/references/components/document/DocumentEdit.md +17 -0
  228. package/skill-docs/actionflows/references/components/document/DocumentMove.md +17 -0
  229. package/skill-docs/actionflows/references/components/document/DocumentPermissionChange.md +17 -0
  230. package/skill-docs/actionflows/references/components/document/DocumentRenewal.md +17 -0
  231. package/skill-docs/actionflows/references/components/document/DocumentRevert.md +17 -0
  232. package/skill-docs/actionflows/references/components/document/DocumentSave.md +17 -0
  233. package/skill-docs/actionflows/references/components/document/DocumentSubscription.md +17 -0
  234. package/skill-docs/actionflows/references/components/document/DocumentSubscriptionApprove.md +17 -0
  235. package/skill-docs/actionflows/references/components/document/DocumentSubscriptionSendBack.md +17 -0
  236. package/skill-docs/actionflows/references/components/document/DocumentSubscriptionWithdraw.md +17 -0
  237. package/skill-docs/actionflows/references/components/document/FileFolderSave.md +17 -0
  238. package/skill-docs/actionflows/references/components/document/GetAttachmentInfo.md +17 -0
  239. package/skill-docs/actionflows/references/components/document/GetDocumentInfo.md +17 -0
  240. package/skill-docs/actionflows/references/components/document/ModifyDocumentStatus.md +17 -0
  241. package/skill-docs/actionflows/references/components/document/ReplaceAttachment.md +17 -0
  242. package/skill-docs/actionflows/references/components/document/UpdatePrintNum.md +17 -0
  243. package/skill-docs/actionflows/references/components/ebuilder/ActionEbAdd.md +61 -0
  244. package/skill-docs/actionflows/references/components/ebuilder/ActionEbDelete.md +23 -0
  245. package/skill-docs/actionflows/references/components/ebuilder/ActionEbRecover.md +17 -0
  246. package/skill-docs/actionflows/references/components/ebuilder/ActionEbSaveVersion.md +17 -0
  247. package/skill-docs/actionflows/references/components/ebuilder/ActionEbUpdate.md +23 -0
  248. package/skill-docs/actionflows/references/components/ebuilder/DateTrigger.md +17 -0
  249. package/skill-docs/actionflows/references/components/ebuilder/EbGetDataById.md +17 -0
  250. package/skill-docs/actionflows/references/components/ebuilder/EnquiryForm.md +101 -0
  251. package/skill-docs/actionflows/references/components/ebuilder/EventButton.md +33 -0
  252. package/skill-docs/actionflows/references/components/ebuilder/EventFormData.md +17 -0
  253. package/skill-docs/actionflows/references/components/ebuilder/TimeBatchTrigger.md +17 -0
  254. package/skill-docs/actionflows/references/components/logic/Condition.md +23 -0
  255. package/skill-docs/actionflows/references/components/logic/LogicFlowSet.md +17 -0
  256. package/skill-docs/actionflows/references/components/logic/MultipleExecution.md +38 -0
  257. package/skill-docs/actionflows/references/components/logic/Output.md +17 -0
  258. package/skill-docs/actionflows/references/components/message/InnerMQSend.md +40 -0
  259. package/skill-docs/actionflows/references/components/message/SendMessage.md +17 -0
  260. package/skill-docs/actionflows/references/components/personnel/AlterPersonStatus.md +30 -0
  261. package/skill-docs/actionflows/references/components/personnel/HrmEmployeeUpdate.md +32 -0
  262. package/skill-docs/actionflows/references/components/personnel/PersonnelOnboarding.md +34 -0
  263. package/skill-docs/actionflows/references/components/trigger/CustomTrigger.md +45 -0
  264. package/skill-docs/actionflows/references/components/trigger/InnerMQListener.md +40 -0
  265. package/skill-docs/actionflows/references/components/trigger/SimpleScheduler.md +17 -0
  266. package/skill-docs/actionflows/references/components/workflow/ApproveAddSign.md +17 -0
  267. package/skill-docs/actionflows/references/components/workflow/ApproveAgreeRejectApply.md +17 -0
  268. package/skill-docs/actionflows/references/components/workflow/ApproveCommit.md +17 -0
  269. package/skill-docs/actionflows/references/components/workflow/ApproveCompletelyDelete.md +17 -0
  270. package/skill-docs/actionflows/references/components/workflow/ApproveConsulTurnTodo.md +17 -0
  271. package/skill-docs/actionflows/references/components/workflow/ApproveCreate.md +17 -0
  272. package/skill-docs/actionflows/references/components/workflow/ApproveDelete.md +17 -0
  273. package/skill-docs/actionflows/references/components/workflow/ApproveDoCirculate.md +17 -0
  274. package/skill-docs/actionflows/references/components/workflow/ApproveDoForward.md +17 -0
  275. package/skill-docs/actionflows/references/components/workflow/ApproveDoTurnTodo.md +17 -0
  276. package/skill-docs/actionflows/references/components/workflow/ApproveEntrust.md +17 -0
  277. package/skill-docs/actionflows/references/components/workflow/ApproveIntervention.md +17 -0
  278. package/skill-docs/actionflows/references/components/workflow/ApproveMandatoryArchiving.md +17 -0
  279. package/skill-docs/actionflows/references/components/workflow/ApproveManualCC.md +17 -0
  280. package/skill-docs/actionflows/references/components/workflow/ApproveRefuseRejectApply.md +17 -0
  281. package/skill-docs/actionflows/references/components/workflow/ApproveRejectApply.md +17 -0
  282. package/skill-docs/actionflows/references/components/workflow/ApproveSave.md +17 -0
  283. package/skill-docs/actionflows/references/components/workflow/ApproveSendBack.md +17 -0
  284. package/skill-docs/actionflows/references/components/workflow/ApproveShareEntry.md +17 -0
  285. package/skill-docs/actionflows/references/components/workflow/ApproveTrigger.md +84 -0
  286. package/skill-docs/actionflows/references/components/workflow/ApproveWithdraw.md +17 -0
  287. package/skill-docs/actionflows/references/components/workflow/WorkFlowDocEmpowerment.md +17 -0
  288. package/skill-docs/actionflows/references/components/workflow/WorkflowToDoc.md +17 -0
  289. package/skill-docs/actionflows/references/condition_rules.md +99 -0
  290. package/skill-docs/actionflows/references/examples/enquiry-form-batch-insert-scene2.json +1043 -0
  291. package/skill-docs/actionflows/references/function_rules.md +13 -0
  292. package/skill-docs/actionflows/references/trigger_runtime_notes.md +53 -0
  293. package/skill-docs/assets/sample/.claude/settings.local.json +8 -0
  294. package/skill-docs/assets/sample/api/formApi.js +510 -0
  295. package/skill-docs/assets/sample/config/config.js +0 -0
  296. package/skill-docs/assets/sample/config/configLoad.js +0 -0
  297. package/skill-docs/assets/sample/config/configLoad_default.js +0 -0
  298. package/skill-docs/assets/sample/config/config_default.js +0 -0
  299. package/skill-docs/assets/sample/entry.js +22 -0
  300. package/skill-docs/assets/sample/eslint.config.cjs +48 -0
  301. package/skill-docs/assets/sample/memo.md +0 -0
  302. package/skill-docs/assets/sample/readme.js +8 -0
  303. package/skill-docs/references/auth/guide-auth.md +88 -0
  304. package/skill-docs/references/coding/guide-edit-backfill.md +189 -0
  305. package/skill-docs/references/coding/guide-form-crud.md +262 -0
  306. package/skill-docs/references/coding/guide-page-code.md +224 -0
  307. package/skill-docs/references/coding/guide-page-export.md +119 -0
  308. package/skill-docs/references/coding/ref-compile-rules.md +106 -0
  309. package/skill-docs/references/common/guide-plan-template.md +201 -0
  310. package/skill-docs/references/common/ref-cli-commands.md +320 -0
  311. package/skill-docs/references/components/@weapp-Button.md +104 -0
  312. package/skill-docs/references/components/base-Badge.md +100 -0
  313. package/skill-docs/references/components/base-Dialog.md +358 -0
  314. package/skill-docs/references/components/base-Empty.md +58 -0
  315. package/skill-docs/references/components/base-Tag.md +112 -0
  316. package/skill-docs/references/components/display-Alert.md +64 -0
  317. package/skill-docs/references/components/display-Avatar.md +150 -0
  318. package/skill-docs/references/components/display-Calendar.md +263 -0
  319. package/skill-docs/references/components/display-Carousel.md +115 -0
  320. package/skill-docs/references/components/display-Collapse.md +299 -0
  321. package/skill-docs/references/components/display-FilePreview.md +49 -0
  322. package/skill-docs/references/components/display-Icon.md +66 -0
  323. package/skill-docs/references/components/display-List.md +320 -0
  324. package/skill-docs/references/components/display-Pagination.md +41 -0
  325. package/skill-docs/references/components/display-Spin.md +34 -0
  326. package/skill-docs/references/components/display-Steps.md +89 -0
  327. package/skill-docs/references/components/display-Table.md +160 -0
  328. package/skill-docs/references/components/display-Title.md +117 -0
  329. package/skill-docs/references/components/form-Checkbox.md +161 -0
  330. package/skill-docs/references/components/form-DepartmentBrowser-api.md +52 -0
  331. package/skill-docs/references/components/form-EmployeeBrowser-api.md +51 -0
  332. package/skill-docs/references/components/form-EmployeeBrowser.md +51 -0
  333. package/skill-docs/references/components/form-Input.md +123 -0
  334. package/skill-docs/references/components/form-Radio.md +145 -0
  335. package/skill-docs/references/components/form-Select.md +191 -0
  336. package/skill-docs/references/components/form-Switch.md +46 -0
  337. package/skill-docs/references/components/form-Upload.md +53 -0
  338. package/skill-docs/references/components/generic-Echarts.md +102 -0
  339. package/skill-docs/references/form/guide-create-form.md +409 -0
  340. package/skill-docs/references/form/guide-ebuilder-filter.md +73 -0
  341. package/skill-docs/references/form/guide-ebuilder-scope.md +82 -0
  342. package/skill-docs/references/form/guide-field-linkage.md +121 -0
  343. package/skill-docs/references/form/guide-form-association.md +108 -0
  344. package/skill-docs/references/form/guide-form-button.md +54 -0
  345. package/skill-docs/references/form/guide-form-data.md +48 -0
  346. package/skill-docs/references/form/guide-form-formula-functions.md +297 -0
  347. package/skill-docs/references/form/guide-form-linkage.md +185 -0
  348. package/skill-docs/references/form/guide-form-view-permission.md +38 -0
  349. package/skill-docs/references/form/guide-form-view.md +284 -0
  350. package/skill-docs/references/form/guide-list-columns.md +52 -0
  351. package/skill-docs/references/form/guide-list-stats.md +83 -0
  352. package/skill-docs/references/form/style-templates.md +44 -0
  353. package/skill-docs/references/hrm/guide-matrix.md +103 -0
  354. package/skill-docs/references/menu/system-menus.md +63 -0
  355. package/skill-docs/references/workflow/guide-workflow-action.md +172 -0
  356. package/skill-docs/references/workflow/guide-workflow-condition.md +405 -0
  357. package/skill-docs/references/workflow/guide-workflow.md +402 -0
  358. package/skill-docs/references/workflow/operator-matrix.md +74 -0
@@ -0,0 +1,284 @@
1
+ # 表单视图:新建与验收
2
+
3
+ 表单创建后已有默认台账;只有用户明确需要额外视图时才创建。表格视图是 `nListView` 数据列表,和普通 `formView` 是两条不同链路。
4
+
5
+ ## 需求判别
6
+
7
+ - “新建表单” → `form create --fields`。
8
+ - “客户信息表需要一个客户信息视图”等普通列表需求 → 先查询并复用该表单默认台账;“客户信息表”和“客户信息”的名称差异不构成额外新建理由。
9
+ - “在已有表单下明确新增一个额外表格视图” → `form table-view create`;命令必须同时保存显示列并回读。
10
+ - “在已有表单下新增表单视图” → `form view create --type formView`,随后必须 `form view populate`;不得新建另一张表单。
11
+
12
+ ## 默认台账复用
13
+
14
+ 1. 用 `form list-view <objId> <appId>` 查询已有列表,确认目标属于当前表单且用途符合需求,记录实际名称和 listId。存在多个候选时核对数据范围、权限和展示配置,不仅凭名称或第一条记录选择。
15
+ 2. 普通列表需求直接在该 listId 上配置显示列、筛选、排序、统计和事件;需要整组配置显示列时用 `form list-columns <objId> <appId> <listId> --set @columns.json`。`table-view ensure` 只用于空列补齐,不负责视图选择或重命名。
16
+ 3. 默认保留平台生成的名称,不统一去掉末尾“表”字。用户明确要求名称对齐时应改已有视图名称并保留 ID;目前 CLI 未提供视图重命名命令,不能用新建同用途视图代替改名。表单名、视图名和菜单名分别处理。
17
+ 4. 只有明确需要“我的客户”“重点客户”等额外独立视图,或不同展示类型时,才进入新增流程。已有重复视图需先核对菜单、关联页签等引用及配置,不能自动删除。
18
+
19
+ 例如:已建“客户信息表”,方案中的“客户信息视图”可由其默认台账满足,plan 标记“复用默认台账”,填写实际 listId 即可。
20
+
21
+ ## 命令
22
+
23
+ ```bash
24
+ # 查询表单下全部视图
25
+ e10-cli form view list <objId> <appId>
26
+
27
+ # 创建可用表格视图;默认放入全部已有字段
28
+ e10-cli form table-view create <objId> <appId> "审批数据表格" --pc-only
29
+
30
+ # 创建看板视图(默认 PC + FLOW 布局)
31
+ e10-cli form view create <objId> <appId> "按状态看板" --type kanbanView
32
+
33
+ # 新增表单视图——流式布局(FLOW)
34
+ e10-cli form view create <objId> <appId> "新增-流式视图" --type formView --layout-type FLOW
35
+
36
+ # 新增表单视图——表格式布局(EXCEL)
37
+ e10-cli form view create <objId> <appId> "新增-EXCEL视图" --type formView --layout-type EXCEL
38
+
39
+ # 第 2 步:把已有字段按目标布局类型填入新建 formView(流式/EXCEL 各自生成对应组件)
40
+ e10-cli form view populate <objId> <appId> <viewId>
41
+
42
+ # 创建移动端日历视图
43
+ e10-cli form view create <objId> <appId> "交付日历" \
44
+ --type calendarView --terminal MOBILE --layout-type FLOW
45
+ ```
46
+
47
+ **给已有表单加表单视图是两步闭环**(缺一不可):
48
+ 1. `form view create --type formView --layout-type FLOW|EXCEL` —— 建一个**空**的 formView 实体,`--layout-type` 决定流式(FLOW)还是表格式(EXCEL)。同一张表单可同时存在多个 formView,布局类型可不同(如一张表既加流式视图又加 EXCEL 视图)。
49
+ 2. `form view populate <objId> <appId> <viewId>` —— 把已有字段按目标布局类型填进去。流式视图生成流式组件、EXCEL 视图生成表格定位,**不得把 EXCEL 定位直接复制到 FLOW 视图**。
50
+
51
+ `form view populate` 以原表单 `formId` 读取字段,以新视图 `viewId` 作为 `layoutMultiId` 读取目标布局,再按目标的 FLOW/EXCEL 类型重新生成字段组件并独立回读。不得把视图的 `versionId` 或 `pageLayoutId` 当成 `formId`。
52
+
53
+ 看板、日历、思维导图目前只确认创建实体和视图列表回读,尚不能据此宣称设计器已有可用组件。
54
+
55
+ 普通 `form view create --type` 只接受:
56
+
57
+ - `formView`:详情视图
58
+ - `kanbanView`:看板视图
59
+ - `calendarView`:日历视图
60
+ - `mindMapView`:思维导图视图
61
+ - `multiView`:多维表格视图(无 layoutType/terminalType,带 `extConfig:{listVersion:5}`)。**数据维度**:缺省主表(`subFormId:""/subFormMain:false`);明细表维度用 `--detail <明细名>`(按名解析明细 subFormId)或 `--sub-form-id <明细subFormId>`(直传),传值即 `subFormId:<明细subFormId>/subFormMain:true`。明细子表名/subFormId 用 `dataset/v1/getFields` detailFields 查(真 subFormId 在 `fields[].subFormId`,非 `dt.id`)。**多维表格显示列**复用台账同一套 `saveNListConfig/getNListConfig`,直接用 `form list-columns <objId> <appId> <multiView的viewId> --add <fieldId>` 加列。
62
+
63
+ `tableView`/`nListView` 不得传给普通视图命令。真实表格视图固定使用 `form table-view create`。
64
+
65
+ ## 额外表格视图新建闭环
66
+
67
+ ```bash
68
+ # 1. 已确认需要额外独立视图,再查询目标表单和已有列表
69
+ e10-cli form list <appId>
70
+ e10-cli form list-view <objId> <appId>
71
+
72
+ # 2. 创建 nListView、写入全部业务显示列和隐藏数据主键、独立回读
73
+ e10-cli --json form table-view create <objId> <appId> "<表格视图名>" --pc-only
74
+
75
+ # 3. 再次独立查询表单下列表
76
+ e10-cli --json form list-view <objId> <appId>
77
+ ```
78
+
79
+ 命令先用 `viewType=nListView` 创建,再以新 `listId` 读取 PC 配置;业务列必须取自 `/api/ebuilder/common/ds/fields` 的完整字段对象,不能只拼字段 ID。保存时保留服务端配置和隐藏主键 `id=5`,最后回读 `tableField` 和列表实体。命令只拦截完全同名的视图,不识别简称或业务用途;执行前必须完成复用判断,不能因名称未完全匹配就新建。已有同名视图时停止,不盲目重建。
80
+
81
+ `--pc-only` 只用于已确认本次验收为 PC 的场景。未指定时,命令必须取得真实 MOBILE 配置,禁止用 PC 配置推导移动端。
82
+
83
+ 服务器通过必须同时满足:
84
+
85
+ - 创建后按返回 `listId` 找到同名列表。
86
+ - `persisted=true`。
87
+ - `visibleFieldCount` 等于目标业务字段数。
88
+ - `tableFieldCount` 还包含隐藏主键。
89
+ - 再查 `form list-view` 仍能按相同 ID 和名称找到。
90
+
91
+ 前端无数据时可以没有数据行,但必须看见业务字段列头;否则仍是空壳,不能验收。
92
+
93
+ ## 表格视图展示样式
94
+
95
+ ```bash
96
+ e10-cli --json form table-view style <objId> <appId> <listId> <style>
97
+ ```
98
+
99
+ `style` 使用前台语义,不直接让使用者猜内部 `mode`:
100
+
101
+ | style | 前台展示样式 | mode |
102
+ |---|---|---|
103
+ | `table` | 表格式 | `1` |
104
+ | `list` | 列表式 | `2` |
105
+ | `left-diagram` | 左图式 | `3` |
106
+ | `horizontal-list` | 横向列表式 | `4` |
107
+ | `above` | 上图式 | `5` |
108
+ | `grid` | 网格列表式 | `7` |
109
+ | `editable` | 可编辑表格(编辑态) | `11` |
110
+
111
+ 可编辑表格内部还有数据态 `8` 和只读态 `9`;用户要求“改成可编辑表格”时必须使用编辑态 `11`,不得把只读态 `9` 当成完成。
112
+
113
+ 命令先确认 `listId` 属于目标 `objId`,分别读取完整 PC/MOBILE 配置,只修改 PC 顶层 `mode`,保存后重新读取 PC 配置。移动端配置必须原样保留;读取不到时,只有明确 `--pc-only` 才允许继续。
114
+
115
+ 前端验收:重新进入“基础设置 → 展示样式”仍显示“可编辑表格”,并且列表进入可编辑状态。
116
+
117
+ ## 常用搜索显示方式
118
+
119
+ ```bash
120
+ # PC 常用搜索显示为高级搜索;filter 表示筛选
121
+ e10-cli --json form table-view search-style <objId> <appId> <listId> advanced
122
+ ```
123
+
124
+ 显示方式固定为 `advanced → commonSearchType="0"`、`filter → commonSearchType="1"`,不得直接猜内部值。
125
+
126
+ 命令先确认 `listId` 属于目标表单,完整保留 PC 其他配置和真实 MOBILE 配置,保存后重新读取目标属性。前端验收:“常用搜索 → 基础信息 → 显示方式”能正常打开,且刷新后仍为目标方式;若配置页异常,接口回读成功也不能验收。
127
+
128
+ ## 常用搜索字段
129
+
130
+ ```bash
131
+ e10-cli --json form table-view search-field add <objId> <appId> <listId> <fieldId>
132
+
133
+ # 按前端字段设置面板配置搜索项
134
+ e10-cli --json form table-view search-field configure \
135
+ <objId> <appId> <listId> <fieldId> \
136
+ --display-name "单据名称" \
137
+ --default-value "111" \
138
+ --required 0 \
139
+ --full-match 0 \
140
+ --condition like
141
+ ```
142
+
143
+ 命令必须从当前数据源接口取得完整字段模型,按前端最终保存结构生成搜索项:字段 `id` 与独立的 18 位 `filterId` 不得混用,字段自身 `multiSelect` 原样保留,搜索默认配置单独写入 `listFilterDefaultSets`。保存时完整保留 PC 其他配置和真实 MOBILE 配置,再独立回读字段及条件关系。
144
+
145
+ 具体配置固定映射:
146
+
147
+ - `--default-value`:固定默认值,写为 `defaultType="1"` 与 `startValue`;`--clear-default` 清除。`Select` 字段可传选项名称或选项 ID,CLI 必须从当前数据源解析为唯一真实 ID,并保留完整选项对象供前端回显。
148
+ - `--required 0|1`:条件是否必填,写为字段级 `required`。
149
+ - `--full-match 0|1`:搜索内容是否完整匹配,写入 `listFilterDefaultSets.searchContentFullMatches`。
150
+ - `--condition like|eq|...`:必须来自该字段实际允许的条件,同时更新字段层与默认设置层。
151
+ - `--display-name`:更新搜索项 `showName`;不得覆盖原字段名和字段 ID。
152
+
153
+ 前端验收:打开“搜索配置”不报异常,目标字段出现在常用搜索字段中;刷新列表后可使用该字段发起搜索。只通过接口回读不能验收。
154
+
155
+ ## 台账显示列/搜索/排序/统计/视图数据条件/行事件/启用分组/视图权限/分类搜索(list-columns / list-search / list-sort / list-stats / list-filter / list-event / list-group / list-permission / list-search-group)
156
+
157
+ 直接改默认台账(nListView)的显示列、搜索条件、排序、顶部统计、视图数据条件。listId 取 `form list-view` 返回的列表视图 ID。默认改 PC 端;`list-columns --terminal mobile` 可改移动端显示列。**保存时先读回真实移动端 mConfig 原样回传,不会清空移动端**(`saveNListConfig` 一次请求里 `config`→PC 端、`mConfig`→移动端,两端列集合/uid 各自独立)。只有明确目标只使用 PC、移动端配置确实不存在时,才加 `--pc-only`。
158
+
159
+ ```bash
160
+ # 查看当前显示列
161
+ e10-cli form list-columns <objId> <appId> <listId>
162
+
163
+ # 批量追加字段到显示列 / 移除字段
164
+ e10-cli form list-columns <objId> <appId> <listId> --add <fieldId1> <fieldId2>
165
+ e10-cli form list-columns <objId> <appId> <listId> --remove <fieldId1> <fieldId2>
166
+
167
+ # 按文件完整设置业务列顺序、宽度和格式(未列入的业务列会移除)
168
+ e10-cli form list-columns <objId> <appId> <listId> --set @columns.json --json
169
+ # 详见 references/form/guide-list-columns.md
170
+
171
+ # 列显示格式:千分位/小数位(Number/Money 列,走列对象 format/decimalLength)
172
+ e10-cli form list-format <objId> <appId> <listId> <fieldId> --thousandths --decimal 2
173
+ e10-cli form list-format <objId> <appId> <listId> <fieldId> --no-thousandths
174
+ # 列显示单位:后缀/前缀(走列 showTrans.ruleConfig,与千分位是两套机制)
175
+ e10-cli form list-unit <objId> <appId> <listId> <fieldId> "(元)"
176
+
177
+ # 配置搜索:--add 进搜索面板,--quick 加顶部快捷筛选(均支持多字段)
178
+ e10-cli form list-search <objId> <appId> <listId> --add <fieldId1> <fieldId2>
179
+ e10-cli form list-search <objId> <appId> <listId> --quick <fieldId1> <fieldId2>
180
+ # 主表字段直接从 ds/fields 解析;明细子字段经 getFormField 单取元数据(ds/fields 合并不展开)
181
+
182
+ # 配置排序 / 清除(--field 支持多个,按传入顺序多级排序;--order 对所有字段生效)
183
+ e10-cli form list-sort <objId> <appId> <listId> --field <fieldId1> <fieldId2> --order ASC
184
+ e10-cli form list-sort <objId> <appId> <listId> --clear
185
+
186
+ # 主表/明细统计完整指南:references/form/guide-list-stats.md
187
+ # 明细 count 支持只填 type/subFormId;批量入口:form list-stats detail
188
+ # PC/MOBILE 可能共享统计项;以保存后的 mobileStatistics 为准,不能承诺只影响 PC
189
+ # 顶部统计:type=sum 求和 / count 计数 / avg 平均 / max 最大 / min 最小
190
+ # 可选:thousandths=true 千分位 / decimalPlaces="2" 小数位 / unit="万" 单位(unitType=tenThousand)
191
+ e10-cli form list-stats <objId> <appId> <listId> --add '{"fieldId":"...","type":"sum","name":"合同总金额","thousandths":true,"decimalPlaces":"2","unit":"万"}'
192
+
193
+ # 条件统计:conditions 数组构造明文条件树填 rootdata(发明文保存成功、读回也是明文,无需 LZW 编码)
194
+ # func: eq 等于 / neq 不等于 / in 属于 / notIn 不属于 / like 包含 / notLike 不包含 / gt 大于 / lt 小于 / range 区间 / isNull 为空 / isNotNull 不为空
195
+ # 单选 Select 用 eq;notEq/between 为兼容别名自动归一为 neq/range;range 的 value 用数组 [起,止];value 填选项 valueKey、text 填显示名;多条件默认 AND
196
+ e10-cli form list-stats <objId> <appId> <listId> --add '{"fieldId":"金额fieldId","type":"sum","name":"研发合同额","thousandths":true,"unit":"万","conditions":[{"fieldId":"项目类型fieldId","func":"eq","value":"研发valueKey","text":"研发"}]}'
197
+ e10-cli form list-stats <objId> <appId> <listId> --remove <statId> # 平台 statisticsList 是 upsert 语义,删除靠标 operation:DELETE(splice 不删)
198
+
199
+ # 视图数据条件:台账只显示满足条件的数据(走 saveNListConfig config.filter,明文条件树,非独立接口——
200
+ # conditionEditor/saveOrUpdate 表单级不挂视图、saveBaseinfo 带 conditionData 都是错误端点)
201
+ # func 取值同条件统计(eq 等于 / neq 不等于 / in 属于 / notIn 不属于 / like 包含 / notLike 不包含 / gt 大于 / lt 小于 / range 区间 / isNull 为空 / isNotNull 不为空,单选 Select 用 eq);value 填选项 valueKey,text 填显示名;多条件默认 AND
202
+ e10-cli form list-filter <objId> <appId> <listId> --add '{"conditions":[{"fieldId":"项目类型fieldId","func":"eq","value":"研发valueKey","text":"研发"}]}'
203
+ e10-cli form list-filter <objId> <appId> <listId> --clear
204
+
205
+ # 行事件:点击行数据 NewPage 打开(走 saveNListConfig config.eventGroup,明文 JSON,config+mConfig 都要写)
206
+ # --add-page 选页面:pageId 缺省 "1/<objId>"(表单新建布局),"0/<objId>"=显示布局
207
+ # 打开方式 openMode(linkInfo.openMode 权威,page.openMode 恒 4):
208
+ # 当前页面=4 / 新窗口=0 / 弹出窗口=5 / 右侧滑出=1(缺省) / 右侧推出=7
209
+ # 弹出/滑出/推出 带弹窗宽高(--modal-width/--modal-height,缺省 50%);滑出/推出 额外带 winSizeNew(--win-size,缺省 100%)
210
+ # --add-field 选字段(URL取自行内字段值,urlFieldText/Type自动补)
211
+ e10-cli form list-event <objId> <appId> <listId> --add-page '{"pageName":"新建数据"}'
212
+ e10-cli form list-event <objId> <appId> <listId> --add-page '{"pageId":"0/<objId>","pageName":"显示布局","openMode":"当前页面"}'
213
+ e10-cli form list-event <objId> <appId> <listId> --add-page '{"pageName":"弹窗详情","openMode":"弹出窗口"}' --modal-width 80%
214
+ e10-cli form list-event <objId> <appId> <listId> --add-page '{"pageName":"侧滑详情","openMode":"右侧推出"}' --win-size 60%
215
+ e10-cli form list-event <objId> <appId> <listId> --add-field '{"urlFieldId":"字段id"}'
216
+ e10-cli form list-event <objId> <appId> <listId> --clear
217
+
218
+ # 字段事件(列点击 list-click,区别于行事件 list-event):点某列数据打开该行显示布局(带数据 ID)
219
+ # 打开方式 --open-mode:当前页面/新窗口/弹出窗口/右侧滑出(缺省)/右侧推出;滑出/推出 --win-size 设宽度(缺省 800px,可 50%)
220
+ e10-cli form list-click <objId> <appId> <listId> <fieldId> --open-mode 右侧推出 --win-size 50%
221
+ e10-cli form list-click <objId> <appId> <listId> <fieldId> --target <目标表单objId> --open-mode 弹出窗口
222
+ e10-cli form list-click <objId> <appId> <listId> <fieldId> --clear
223
+
224
+ # 启用分组:台账按某字段分组聚合显示(走 saveNListConfig config.enableGroup 对象 {enable,groupField,groupSize})
225
+ # saveNListConfig 持久化成功,不走 designer/layout/save LZW。group-field 用完整字段对象(自动从 ds/fields 取)
226
+ e10-cli form list-group <objId> <appId> <listId> --enable --group-field <分组字段fieldId> --group-size 100
227
+ e10-cli form list-group <objId> <appId> <listId> --disable # 禁用但保留 groupField/groupSize(仅 enable=false)
228
+
229
+ # 台账视图权限(查阅/查看权限):谁能查看这个台账(走 list/permission/save + getList,专用端点,full-replace 语义 omit即删)
230
+ # selectedType: all(所有人) / user(人员,带--name) / role(角色,--name 缺省自动查) / matrix(矩阵,用 --add-raw 传整对象)
231
+ e10-cli form list-permission <objId> <appId> <listId> --add-all
232
+ e10-cli form list-permission <objId> <appId> <listId> --add-user <userId> --name <人员名>
233
+ e10-cli form list-permission <objId> <appId> <listId> --add-role <roleId> # --name 缺省自动从角色树查名
234
+ e10-cli form list-permission <objId> <appId> <listId> --add-role <roleId> --share-level 2 # 加同一角色另一个共享级别
235
+ e10-cli form list-permission <objId> <appId> <listId> --add-role <roleId> --seclevel 30-80 # 安全级别范围
236
+ e10-cli form list-permission <objId> <appId> <listId> --add-raw '{"selectedType":"matrix","name":"...","dataid":"矩阵id",...}'
237
+ e10-cli form list-permission <objId> <appId> <listId> --remove <权限id>
238
+ e10-cli form list-permission <objId> <appId> <listId> --clear
239
+
240
+ # 每条授权对象的两个可配维度(抓包坐实,mulinquan 2026-09-02):
241
+ # 安全级别 = levelScope.minShowlevel/maxShowlevel(字符串范围,--seclevel <min>-<max>,如 0-100 / 30-80;role 缺省 0-100、all 缺省空)
242
+ # 共享级别 = roleLevel(实测: 总部=1 分部=2 全部=3)。同一角色可按不同共享级别各存一条(同 role 两条 roleLevel 1/2 并存)→ 去重键含 roleLevel
243
+ # 幂等:目标(含 roleLevel)已存在时跳过保存,打印「无变化」
244
+
245
+ # 分类搜索:按选项字段分类筛选(走 saveNListConfig config.searchConditions.groupFilters)
246
+ # 仅主表选项类字段(Select/RadioBox/CheckBox),不支持明细字段(产品边界)
247
+ e10-cli form list-search-group <objId> <appId> <listId> --add <选项字段fieldId>
248
+ e10-cli form list-search-group <objId> <appId> <listId> --remove <fieldId>
249
+ e10-cli form list-search-group <objId> <appId> <listId> --clear
250
+ ```
251
+
252
+ 字段 ID 来自 `form read <objId> --app-id <appId>` 或 `form list-columns` 当前列(系统列如 `2`创建者/`3`创建时间也可增删;`5`数据ID主键自动保留,禁止移除)。显示列命令保存后回读校验,`otherTerminalPreserved:true` 表示另一终端配置核对一致。
253
+
254
+ ## formView 固定闭环
255
+
256
+ ```bash
257
+ # 1. 确认目标表单与现有视图
258
+ e10-cli form list <appId>
259
+ e10-cli form view list <objId> <appId>
260
+
261
+ # 2. 创建视图并从输出取得 viewId
262
+ e10-cli --json form view create <objId> <appId> "<视图名>" --type formView
263
+
264
+ # 3. 填充已有字段并独立回读
265
+ e10-cli --json form view populate <objId> <appId> <viewId>
266
+ ```
267
+
268
+ `populate` 只有同时满足以下条件才算服务器验证通过:
269
+
270
+ - `success=true`
271
+ - `componentCount > 0`
272
+ - `fieldComponentCount > 0`
273
+ - 重复执行返回 `alreadyPopulated=true`
274
+
275
+ 服务器验证通过后仍需用户确认前端不是空画布、字段名称和特殊配置正确。
276
+
277
+ ## 执行与验收
278
+
279
+ 1. 计划中写明表单 objId、视图名称、类型和终端;用户确认后再写入。
280
+ 2. CLI 先调用 `createView`,再查询该表单的完整视图列表;创建响应本身不是验收。`formView` 随后调用 `populate`:`原 formId + viewId(layoutMultiId)` 读取目标布局,保留目标页面元数据,按目标布局类型重建已有字段组件并保存。
281
+ 3. 回读以返回的 viewId 优先;服务端未返回 ID 时,才按名称、类型和终端唯一匹配。多个候选视图时停止并让用户确认。
282
+ 4. `populate` 回读组件数量和字段 ID;用户再确认新视图设计页出现表单既有字段,而非只有“未分组”的空画布。
283
+
284
+ 服务器成功和独立回读成功但尚未前端确认时,只能标记为“待前端确认”。
@@ -0,0 +1,52 @@
1
+ # 台账显示列批量配置
2
+
3
+ 适用于已有 `nListView`、`multiView` 的显示列。`listId` 取 `form list-view <objId> <appId>`;新建表格视图仍使用 `form table-view create`。关联浏览框的显示字段使用 `form ebuilder-columns`。
4
+
5
+ ## 查看、追加、移除
6
+
7
+ ```shell
8
+ e10-cli form list-columns <objId> <appId> <listId> --json
9
+ e10-cli form list-columns <objId> <appId> <listId> --add <字段ID1> <字段ID2> --json
10
+ e10-cli form list-columns <objId> <appId> <listId> --remove <字段ID1> <字段ID2> --json
11
+ ```
12
+
13
+ `--add` 按输入顺序追加到隐藏主键之前,已存在的列复用原配置;重复执行且无变化时返回 `unchanged:true`,不保存。`--remove` 可与 `--add` 同时使用,但不能对同一字段同时增删。移除不存在的列会报错;数据主键禁止移除。
14
+
15
+ ## 一次设置顺序、宽度和格式
16
+
17
+ 先读取当前列,按需求生成 UTF-8 的 `columns.json`。数组表示**完整业务列清单**:未列入的业务列会移除;数组顺序就是显示顺序。字段 ID 使用字符串,支持 `fieldId` 或 `id`,也支持仅填 ID 字符串。
18
+
19
+ ```json
20
+ [
21
+ {"fieldId":"1310832462830059523","width":220},
22
+ {"fieldId":"1310832462830059527","width":150,"format":"yyyy-MM-dd"},
23
+ {"fieldId":"1310832462830059528","width":150,"format":"THOUSANDS","decimalLength":2}
24
+ ]
25
+ ```
26
+
27
+ ```shell
28
+ e10-cli form list-columns <objId> <appId> <listId> --set @columns.json --json
29
+ ```
30
+
31
+ 示例 ID 来自维森测试93项目任务表,其他表单需替换。`--set` 不能与增删选项混用;空数组只保留数据主键。配置文件不是原始 `tableField` 快照,不要填隐藏主键、uid、eventGroup 等内部属性。
32
+
33
+ | 属性 | 语义 |
34
+ |---|---|
35
+ | `fieldId` / `id` | 必填,当前表单的字段 ID,不可重复 |
36
+ | `text` | 非空显示名称 |
37
+ | `width` | 正数列宽,新列默认 150 |
38
+ | `format` | 日期格式或数值 `THOUSANDS`;`null` 清除 |
39
+ | `decimalLength` | 0–20 整数;`null` 清除 |
40
+ | `hidden` | 是否隐藏业务列,布尔值 |
41
+ | `viewDataDetail` | 是否显示关联数据详情,布尔值 |
42
+
43
+ 已有列只覆盖明确提供的属性,未指定的格式、单位、点击事件、uid 等保留;新列从字段元数据构造。明细子字段从 `ds/fields` 嵌套目录解析,必要时 `getFormField` 补查;设置 `mainField:false`,不带明细展开容器属性。不能把明细子表容器作为普通列添加。
44
+
45
+ ## 保存与验收
46
+
47
+ - 默认改 PC,可用 `--terminal mobile` 修改移动端 `tableField`;移动端卡片布局的 `listField/cardLayout` 不属于此命令。
48
+ - 全部字段与参数解析成功后,只调用一次 `saveNListConfig`。先读取真实 PC/MOBILE 配置,另一终端原样回传;读取失败默认中止。仅明确只用 PC 时允许 `--pc-only`,此时若移动端读取失败,结果标明未保留校验。
49
+ - 自动保留隐藏数据主键,缺失时补齐。保存后回读核对列 ID、顺序、属性以及另一终端配置;仅忽略平台每次读取重新生成的按钮动作/事件 ID。
50
+ - `verified:true` 表示接口回读通过。回读不一致时返回错误,保存可能已发生,应读取配置定位差异后处理;页面实际显示仍按需求验收。
51
+
52
+ 计划模板的「台账/视图配置 → 显示列批量设置」记录目标视图、终端、增量或整组模式、字段顺序、宽度/格式、配置文件路径与回读/页面验收结果。
@@ -0,0 +1,83 @@
1
+ # 顶部统计:主表与明细
2
+
3
+ `form list-stats` 配置已有台账视图的顶部统计。支持 sum/count/avg/max/min,以及千分位、小数位、万/亿单位、条件统计。来源表单 `objId`、应用 `appId`、目标视图 `listId` 与明细子表 `subFormId` 是不同 ID。
4
+
5
+ ## 查询及单项配置
6
+
7
+ ```bash
8
+ e10-cli form list-stats <objId> <appId> <listId> --json
9
+ e10-cli form list-stats <objId> <appId> <listId> --add @stat.json
10
+ e10-cli form list-stats <objId> <appId> <listId> --remove <statId>
11
+ ```
12
+
13
+ 主表与明细字段均使用真实 fieldId;CLI 展开 `ds/fields` 的明细分组,未命中时按 `getFormField` 补查。字段必须属于当前表单,指定 subFormId 时必须与字段实际归属一致。
14
+
15
+ 付款金额统计示例:
16
+
17
+ ```json
18
+ {
19
+ "fieldId": "1310832033224278033",
20
+ "type": "sum",
21
+ "name": "合同付款金额",
22
+ "decimalPlaces": "2",
23
+ "thousandths": true
24
+ }
25
+ ```
26
+
27
+ 明细记录计数可省略 fieldId:
28
+
29
+ ```json
30
+ {
31
+ "type": "count",
32
+ "subFormId": "1310832033224278030",
33
+ "name": "付款记录数"
34
+ }
35
+ ```
36
+
37
+ 计数写为 `fieldId="5" + subFormId`,统计明细记录数。传明细字段做 count 也会转成该子表的记录计数,并非此字段非空值计数。主表记录计数可使用 `{"type":"count","name":"记录数"}`;已有传主表 fieldId 的用法继续接受。
38
+
39
+ 主表的 subFormId 写 `-1`,明细写实际子表 ID。**当前平台会将明细字段 sum 等字段聚合回读的 subFormId 规范化为 `-1`,仍由唯一 fieldId 定位明细字段;明细 count 必须保留子表 ID。** 回读校验兼容这种规范化,不允许字段或计数子表发生变化。
40
+
41
+ 格式参数:`thousandths` 为布尔值;`decimalPlaces` 为 -1 或 0–20 的整数;单位支持 `unit: "万"/"亿"` 或 `unitType: "none"/"tenThousand"/"hundredMillion"`。主表保持原默认小数位 -1,明细非计数默认 2,计数默认 -1。sum/avg 要求数值字段。
42
+
43
+ ## 条件统计
44
+
45
+ ```json
46
+ {
47
+ "fieldId": "1310832033224278033",
48
+ "type": "sum",
49
+ "name": "正数付款金额",
50
+ "conditions": [
51
+ {"fieldId": "1310832033224278033", "func": "gt", "value": 0}
52
+ ]
53
+ }
54
+ ```
55
+
56
+ 条件支持主表字段和本次统计子表字段,多个条件默认 AND。`valueField` 可引用字段 ID 或唯一名称,字段引用也校验子表归属。跨其他明细子表的条件拒绝保存,避免产生不明确的关联语义。
57
+
58
+ 条件写入明文 `rootdata`,无需 LZW。明细节点携带 `mainField=false`、`subTableId` 等信息;不能把它当成主表字段。操作符与现有条件构建器一致:eq/neq/gt/lt/range/aggregate/unaggregate/contains/uncontains/empty/nempty/startWith/endWith,支持原兼容别名。
59
+
60
+ ## 批量明细统计
61
+
62
+ ```bash
63
+ e10-cli form list-stats detail <objId> <appId> <listId> <subFormId> --fields <金额fieldId> --name-prefix "付款-"
64
+ ```
65
+
66
+ 为指定数值字段分别生成 sum,并增加一项子表 count;一次保存。省略 `--fields` 时使用字段目录中该子表的全部数值字段。名称为“前缀+字段名+合计”和“前缀+子表名+记录数”。
67
+
68
+ 重复运行时,已有同名同配置项会复用并返回 `unchanged/reused`,不会重复新增;同名不同配置则报错,应先查询并明确移除旧项。批量操作同样可以使用 `--pc-only`。
69
+
70
+ ## 保存与移动端
71
+
72
+ - 保留 PC 完整配置,仅更新 `listStatistics`;删除用 `operation: DELETE`,不能只从数组移除。
73
+ - 读取真实移动端配置作为 `mConfig` 原样回传。默认移动端读取失败就停止;仅明确不使用移动端时加 `--pc-only`。
74
+ - 保存后校验新增项、原有项、删除结果及移动端配置。`verified: true` 表示配置回读一致,不等于已经核对实际统计数值。
75
+ - **维森测试93当前平台按 listId 共享 PC/MOBILE 统计项。** 当保存前后两端统计集合均对应一致时,返回 `mobileStatistics: "shared"`;改统计会同时影响两端。移动端独有统计丢失或其他配置变化仍报错。不要承诺共享环境下“只改 PC 统计”。
76
+ - 比较移动端配置时,仅排除已实证每次读取会重建的按钮事件临时 ID;业务按钮 ID、动作内容、列配置等仍核对。`mobilePreserved` 表示移动端其余配置及独立统计得到保护。
77
+ - 如果提示“已保存,但回读不一致”,先查询统计和移动端状态,不直接重试新增。
78
+
79
+ ## 计划与验收
80
+
81
+ 计划模板 3.3 的顶部统计项应记录:视图 ID、主表/明细范围、子表名称/ID、字段名称/ID、聚合方式、条件、格式、统计项 ID、PC/MOBILE 共享状态及验证结果。
82
+
83
+ 在“合同付款”视图验证:明细金额 sum、子表 count、明细条件、主表回归、重复运行、删除回读和移动端保护。不要改写用户已经配置的“合同付款金额”“付款记录数”;使用独立名称测试,结束清理临时项。实际金额与记录数须另用已知数据核对,不能仅凭保存成功认定数值正确。
@@ -0,0 +1,44 @@
1
+ # 表单布局样式模板
2
+
3
+ > `form layout init --style-template <名|id>` 用这些模板初始化布局。模板列表基本不变,以下为内置 PC/EXCEL 模板(共 20 个)。
4
+
5
+ | styleTemplateId | 模板名 | 说明 |
6
+ |---|---|---|
7
+ | `700000000000000007` | 标准版 | 默认推荐,字段可编辑 |
8
+ | `700000000000000008` | 表格版 | **注意:生成的 comps 默认只读** |
9
+ | `700000000000000009` | 紧凑版 | |
10
+ | `700000000000000010` | 轻便版 | |
11
+ | `830421425497325568` | 靛青线条 | |
12
+ | `830662158415355904` | 简约深蓝 | |
13
+ | `830714355284320256` | 极简淡蓝 | |
14
+ | `830718787623460864` | 现代简约 | |
15
+ | `830722618751066113` | 商务淡蓝 | |
16
+ | `830743788745531393` | 极简白 | |
17
+ | `830749075757998081` | 极简灰 | |
18
+ | `830751622581329920` | 清新蓝绿 | |
19
+ | `830764108161785857` | 淡蓝水晶 | |
20
+ | `830765800429674496` | 银光浅灰 | |
21
+ | `831747419499700225` | 暗夜流光 | |
22
+ | `831759140499447809` | 公文样式 | |
23
+ | `831897833480421377` | 淡雅丁香 | |
24
+ | `917557790734188546` | 商务蓝 | |
25
+ | `933871446777094145` | 碧海蓝天 | |
26
+ | `1000599952745676801` | 青蓝冰水 | |
27
+
28
+ ## 用法
29
+
30
+ ```bash
31
+ # 用模板名(推荐,好记)
32
+ e10-cli form layout init <objId> <appId> --style-template 标准版
33
+
34
+ # 或用 id
35
+ e10-cli form layout init <objId> <appId> --style-template 700000000000000007
36
+
37
+ # 指定视图 + 只读/必填
38
+ e10-cli form layout init <objId> <appId> --view-id <viewId> --style-template 紧凑版 --read-only
39
+ ```
40
+
41
+ ## 注意
42
+
43
+ - 模板只影响**布局样式**(间距/边框/配色),不影响字段的 readOnly/required(这俩由 `--read-only`/`--required` 或 fields.json 控制)。
44
+ - `表格版`(008)历史问题:生成的 comps 默认 readOnly=true。`form layout init` 会显式按 `--read-only`(默认 false 可编辑)覆盖,所以即使用 008 也能可编辑。
@@ -0,0 +1,103 @@
1
+ # HRM 条件矩阵指南
2
+
3
+ > 矩阵 = 「条件维度(行)→ 值维度(列)」的映射查询表。例如:部门 + 费用类型 → 审批人。用于流程中的矩阵对应操作者类型。
4
+
5
+ ## 命令参考
6
+
7
+ ### 矩阵管理
8
+
9
+ | 命令 | 说明 |
10
+ |------|------|
11
+ | `e10-cli matrix create <name>` | 新建矩阵。`--type 0=分部/1=部门/2=自定义` `--desc` `--org-id` |
12
+ | `e10-cli matrix update <id>` | 更新矩阵。`--name` `--desc` `--type` |
13
+ | `e10-cli matrix list` | 查询矩阵列表。`--name` `--enable-status` `--org-id` |
14
+ | `e10-cli matrix config <id>` | 查看矩阵配置(条件字段 + 值字段) |
15
+ | `e10-cli matrix config-edit <id>` | 编辑配置。`--condition` `--value` 或 `--config` 一次性提交 |
16
+ | `e10-cli matrix enable <id>` | 启用矩阵 |
17
+ | `e10-cli matrix disable <id>` | 停用矩阵 |
18
+ | `e10-cli matrix delete <ids...>` | 删除矩阵 |
19
+
20
+ ### 矩阵数据维护
21
+
22
+ | 命令 | 说明 |
23
+ |------|------|
24
+ | `e10-cli matrix data list <matrixId>` | 分页查询矩阵数据行。`--condition` `--value` 过滤 |
25
+ | `e10-cli matrix data save <matrixId> --rows @file` | 保存数据行(新增/修改)。简写: `[{"字段configId":["实体ID"]}]` |
26
+ | `e10-cli matrix data delete <matrixId> <ids...>` | 删除数据行 |
27
+ | `e10-cli matrix data template <matrixId>` | 下载导入模板(Excel) |
28
+ | `e10-cli matrix data import <matrixId> <file>` | 从 Excel 导入。`--mode add/cover` |
29
+
30
+ ---
31
+
32
+ ## 典型工作流
33
+
34
+ ```bash
35
+ # 1. 创建矩阵
36
+ e10-cli matrix create "审批人映射表" --type 2 --desc "部门→审批人"
37
+
38
+ # 2. 查 ID
39
+ e10-cli matrix list --name "审批人"
40
+
41
+ # 3. 配字段(条件=部门,值=审批人)—— 注意:首次配置可能需在 UI 操作
42
+ e10-cli matrix config-edit <matrixId> \
43
+ --condition '[{"type":"department","name":"所属部门"}]' \
44
+ --value '[{"type":"resource","name":"审批人","singleType":1}]'
45
+
46
+ # 4. 启用
47
+ e10-cli matrix enable <matrixId>
48
+
49
+ # 5. 填数据
50
+ echo '[{"<条件configId>":["<部门ID>"],"<值configId>":["<人员ID>"]}]' > rows.json
51
+ e10-cli matrix data save <matrixId> --rows @rows.json
52
+
53
+ # 6. 查数据
54
+ e10-cli matrix data list <matrixId>
55
+
56
+ # 7. 在流程中使用矩阵
57
+ e10-cli workflow set-operator <wf> <nodeId> --type matrix \
58
+ --matrix-id <matrixId> --value-config-id <值configId> \
59
+ --matrix-rule "<条件configId>:1:1:1"
60
+ ```
61
+
62
+ ---
63
+
64
+ ## 字段类型枚举
65
+
66
+ | 中文 | API 值 |
67
+ |------|--------|
68
+ | 人员 | `resource` |
69
+ | 部门 | `department` |
70
+ | 分部 | `subcompany` |
71
+ | 岗位 | `position` |
72
+ | 客户 | `customer` |
73
+ | 项目 | `project` |
74
+ | 数据源 | `datasource` |
75
+
76
+ ## config-edit 参数
77
+
78
+ ```json
79
+ {
80
+ "id": "<矩阵ID>",
81
+ "conditionConfigList": [
82
+ { "type": "department", "name": "显示名", "sort": 1 }
83
+ ],
84
+ "valueConfigList": [
85
+ { "type": "resource", "name": "显示名", "singleType": 1, "sort": 1 }
86
+ ],
87
+ "conditionDelList": [],
88
+ "valueDelList": []
89
+ }
90
+ ```
91
+
92
+ > `singleType`: 0=多选, 1=单选。条件字段不传,值字段必传。
93
+
94
+ ## data save 简写格式
95
+
96
+ ```json
97
+ [
98
+ {"<条件configId>": ["<实体ID>"], "<值configId>": ["<实体ID>"]}
99
+ ]
100
+ ```
101
+
102
+ CLI 自动查 config 判断 `conditionAble` 标记并展开为完整格式。
103
+
@@ -0,0 +1,63 @@
1
+ # 系统内置菜单 URL 参考
2
+
3
+ 通过 `savePublishMenu` API 挂载系统内置页面到应用菜单。menuUrl 格式固定,禁止瞎编。
4
+
5
+ > **暂不支持 H5/移动端菜单**。移动端是独立体系(不同 URL + 不同 pageId),目前尚未整理完整,禁止 AI 自行编造。
6
+
7
+ ---
8
+
9
+ ## PC 端菜单
10
+
11
+ ### 工作流页面 (pageType: WORKFLOW)
12
+
13
+ | 菜单名 | pageId | menuUrl |
14
+ |--------|--------|---------|
15
+ | 待办流程 | todo | `/sp/ebdfpage/workflow/{appId}_todo` |
16
+ | 已办流程 | done | `/sp/ebdfpage/workflow/{appId}_done` |
17
+ | 我提交的流程 | mine | `/sp/ebdfpage/workflow/{appId}_mine` |
18
+ | 共享给我的流程 | share | `/sp/ebdfpage/workflow/{appId}_share` |
19
+ | 下属的待办流程 | subordinates | `/sp/ebdfpage/workflow/{appId}_subordinates` |
20
+ | 全部流程 | all | `/sp/ebdfpage/workflow/{appId}_all` |
21
+ | 草稿流程 | draft | `/sp/ebdfpage/workflow/{appId}_draft` |
22
+ | 流程监控 | monitor | `/sp/ebdfpage/workflow/{appId}_monitor` |
23
+
24
+ ### 独立页面(不跟 appId)
25
+
26
+ | 菜单名 | pageId | menuUrl |
27
+ |--------|--------|---------|
28
+ | 提交申请 | newflow | `/sp/ebdfpage/ebflowpage/create/` |
29
+
30
+ ### 其他系统页面
31
+
32
+ | 菜单名 | pageId | pageType | menuUrl |
33
+ |--------|--------|----------|---------|
34
+ | 我的关注 | followList | BASE | `/sp/ebdfpage/followlist/{appId}` |
35
+ | 共享给我的 | shareList | BASE | `/sp/ebdfpage/sharelist/{appId}` |
36
+
37
+ ---
38
+
39
+ ## 用法
40
+
41
+ ```json
42
+ {
43
+ "content": "待办流程",
44
+ "menuType": "1",
45
+ "page": {
46
+ "pageId": "todo",
47
+ "pageName": "待办流程",
48
+ "pageType": "WORKFLOW",
49
+ "appid": "{appId}"
50
+ },
51
+ "menuUrl": "/sp/ebdfpage/workflow/{appId}_todo",
52
+ "shareMap": [{
53
+ "id": "0",
54
+ "content": "所有人",
55
+ "permissionId": "sys_view",
56
+ "targetType": 11,
57
+ "sourceType": 1,
58
+ "objIdList": ["所有人"]
59
+ }]
60
+ }
61
+ ```
62
+
63
+ > **只有包含工作流的应用**才能挂载工作流系统页面。表单台账会自动挂入菜单,无需手动操作。