weaver-work-cli 0.1.23 → 0.1.25

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/README.md +33 -3
  2. package/dist/core/output.js +53 -1
  3. package/dist/internal/e10/auth/commands.js +210 -17
  4. package/dist/internal/e10/auth/crypto.js +52 -12
  5. package/dist/internal/e10/auth/xiaoe.js +117 -35
  6. package/dist/internal/e10/context.js +3 -3
  7. package/dist/internal/e10/request-runtime.js +46 -4
  8. package/dist/shortcuts/caizhilian/file-upload/metadata.js +124 -0
  9. package/dist/shortcuts/caizhilian/file-upload/multipart.js +47 -0
  10. package/dist/shortcuts/caizhilian/file-upload/protocol.js +116 -0
  11. package/dist/shortcuts/caizhilian/file-upload/receipt.js +37 -0
  12. package/dist/shortcuts/caizhilian/host.js +13 -5
  13. package/dist/shortcuts/caizhilian/operations/handlers/file-upload.js +72 -179
  14. package/dist/shortcuts/caizhilian/operations/handlers/fileops.js +67 -1
  15. package/dist/shortcuts/caizhilian/operations/handlers/folder.js +701 -4
  16. package/dist/shortcuts/caizhilian/operations/handlers/setting-attach.js +198 -0
  17. package/dist/shortcuts/caizhilian/operations/registry.js +5 -1
  18. package/dist/shortcuts/caizhilian/operations/shared.js +32 -0
  19. package/dist/shortcuts/caizhilian/operations/specs.js +67 -0
  20. package/dist/shortcuts/workflow/continuation.js +14 -9
  21. package/dist/shortcuts/workflow/endpoints.js +11 -1
  22. package/dist/shortcuts/workflow/index.js +55 -1
  23. package/dist/shortcuts/workflow/operations/flow-status.js +63 -0
  24. package/dist/shortcuts/workflow/operations/form.js +1822 -547
  25. package/dist/shortcuts/workflow/operations/read.js +414 -13
  26. package/dist/shortcuts/workflow/operations/shared.js +28 -0
  27. package/dist/shortcuts/workflow/operations/write.js +5 -5
  28. package/dist/shortcuts/workflow/operations.js +8 -6
  29. package/dist/shortcuts/workflow/stdout-compact.js +33 -0
  30. package/docs/caizhilian.md +12 -5
  31. package/docs/e10-auth.md +25 -3
  32. package/node_modules/@napi-rs/keyring/LICENSE +21 -0
  33. package/node_modules/@napi-rs/keyring/README.md +19 -0
  34. package/node_modules/@napi-rs/keyring/index.d.ts +166 -0
  35. package/node_modules/@napi-rs/keyring/index.js +514 -0
  36. package/node_modules/@napi-rs/keyring/keytar.d.ts +53 -0
  37. package/node_modules/@napi-rs/keyring/keytar.js +26 -0
  38. package/node_modules/@napi-rs/keyring/package.json +125 -0
  39. package/node_modules/@napi-rs/keyring-darwin-arm64/README.md +3 -0
  40. package/node_modules/@napi-rs/keyring-darwin-arm64/keyring.darwin-arm64.node +0 -0
  41. package/node_modules/@napi-rs/keyring-darwin-arm64/package.json +32 -0
  42. package/node_modules/commander/LICENSE +22 -0
  43. package/node_modules/commander/Readme.md +1149 -0
  44. package/node_modules/commander/esm.mjs +16 -0
  45. package/node_modules/commander/index.js +24 -0
  46. package/node_modules/commander/lib/argument.js +149 -0
  47. package/node_modules/commander/lib/command.js +2662 -0
  48. package/node_modules/commander/lib/error.js +39 -0
  49. package/node_modules/commander/lib/help.js +709 -0
  50. package/node_modules/commander/lib/option.js +367 -0
  51. package/node_modules/commander/lib/suggestSimilar.js +101 -0
  52. package/node_modules/commander/package-support.json +16 -0
  53. package/node_modules/commander/package.json +82 -0
  54. package/node_modules/commander/typings/esm.d.mts +3 -0
  55. package/node_modules/commander/typings/index.d.ts +1045 -0
  56. package/package.json +5 -1
  57. package/skills/weaver-e10-builder/SKILL.md +281 -0
  58. package/skills/weaver-e10-builder/_catalog.md +94 -0
  59. package/skills/weaver-e10-builder/actionflows/CONTEXT.md +71 -0
  60. package/skills/weaver-e10-builder/actionflows/SKILL.md +176 -0
  61. package/skills/weaver-e10-builder/actionflows/docs/adr/0001-generated-actionflow-cleanup-identity.md +5 -0
  62. package/skills/weaver-e10-builder/actionflows/docs/adr/0002-preserve-existing-actionflow-on-update.md +36 -0
  63. package/skills/weaver-e10-builder/actionflows/references/components/calendar/MeetingCreate.md +19 -0
  64. package/skills/weaver-e10-builder/actionflows/references/components/calendar/ScheduleCreate.md +17 -0
  65. package/skills/weaver-e10-builder/actionflows/references/components/database/DMLExecute.md +38 -0
  66. package/skills/weaver-e10-builder/actionflows/references/components/document/AttachmentCopy.md +17 -0
  67. package/skills/weaver-e10-builder/actionflows/references/components/document/AttachmentMove.md +17 -0
  68. package/skills/weaver-e10-builder/actionflows/references/components/document/DocumentCopy.md +17 -0
  69. package/skills/weaver-e10-builder/actionflows/references/components/document/DocumentDelete.md +17 -0
  70. package/skills/weaver-e10-builder/actionflows/references/components/document/DocumentEdit.md +17 -0
  71. package/skills/weaver-e10-builder/actionflows/references/components/document/DocumentMove.md +17 -0
  72. package/skills/weaver-e10-builder/actionflows/references/components/document/DocumentPermissionChange.md +17 -0
  73. package/skills/weaver-e10-builder/actionflows/references/components/document/DocumentRenewal.md +17 -0
  74. package/skills/weaver-e10-builder/actionflows/references/components/document/DocumentRevert.md +17 -0
  75. package/skills/weaver-e10-builder/actionflows/references/components/document/DocumentSave.md +17 -0
  76. package/skills/weaver-e10-builder/actionflows/references/components/document/DocumentSubscription.md +17 -0
  77. package/skills/weaver-e10-builder/actionflows/references/components/document/DocumentSubscriptionApprove.md +17 -0
  78. package/skills/weaver-e10-builder/actionflows/references/components/document/DocumentSubscriptionSendBack.md +17 -0
  79. package/skills/weaver-e10-builder/actionflows/references/components/document/DocumentSubscriptionWithdraw.md +17 -0
  80. package/skills/weaver-e10-builder/actionflows/references/components/document/FileFolderSave.md +17 -0
  81. package/skills/weaver-e10-builder/actionflows/references/components/document/GetAttachmentInfo.md +17 -0
  82. package/skills/weaver-e10-builder/actionflows/references/components/document/GetDocumentInfo.md +17 -0
  83. package/skills/weaver-e10-builder/actionflows/references/components/document/ModifyDocumentStatus.md +17 -0
  84. package/skills/weaver-e10-builder/actionflows/references/components/document/ReplaceAttachment.md +17 -0
  85. package/skills/weaver-e10-builder/actionflows/references/components/document/UpdatePrintNum.md +17 -0
  86. package/skills/weaver-e10-builder/actionflows/references/components/ebuilder/ActionEbAdd.md +100 -0
  87. package/skills/weaver-e10-builder/actionflows/references/components/ebuilder/ActionEbDelete.md +23 -0
  88. package/skills/weaver-e10-builder/actionflows/references/components/ebuilder/ActionEbRecover.md +17 -0
  89. package/skills/weaver-e10-builder/actionflows/references/components/ebuilder/ActionEbSaveVersion.md +17 -0
  90. package/skills/weaver-e10-builder/actionflows/references/components/ebuilder/ActionEbUpdate.md +67 -0
  91. package/skills/weaver-e10-builder/actionflows/references/components/ebuilder/DateTrigger.md +32 -0
  92. package/skills/weaver-e10-builder/actionflows/references/components/ebuilder/EbGetDataById.md +17 -0
  93. package/skills/weaver-e10-builder/actionflows/references/components/ebuilder/EnquiryForm.md +107 -0
  94. package/skills/weaver-e10-builder/actionflows/references/components/ebuilder/EventButton.md +33 -0
  95. package/skills/weaver-e10-builder/actionflows/references/components/ebuilder/EventFormData.md +19 -0
  96. package/skills/weaver-e10-builder/actionflows/references/components/ebuilder/TimeBatchTrigger.md +19 -0
  97. package/skills/weaver-e10-builder/actionflows/references/components/http/Http.md +77 -0
  98. package/skills/weaver-e10-builder/actionflows/references/components/logic/Condition.md +23 -0
  99. package/skills/weaver-e10-builder/actionflows/references/components/logic/LogicFlowSet.md +17 -0
  100. package/skills/weaver-e10-builder/actionflows/references/components/logic/MultipleExecution.md +38 -0
  101. package/skills/weaver-e10-builder/actionflows/references/components/logic/Output.md +37 -0
  102. package/skills/weaver-e10-builder/actionflows/references/components/message/InnerMQSend.md +50 -0
  103. package/skills/weaver-e10-builder/actionflows/references/components/message/SendMessage.md +30 -0
  104. package/skills/weaver-e10-builder/actionflows/references/components/personnel/AlterPersonStatus.md +30 -0
  105. package/skills/weaver-e10-builder/actionflows/references/components/personnel/HrmEmployeeUpdate.md +34 -0
  106. package/skills/weaver-e10-builder/actionflows/references/components/personnel/PersonnelAlterType.md +38 -0
  107. package/skills/weaver-e10-builder/actionflows/references/components/personnel/PersonnelOnboarding.md +36 -0
  108. package/skills/weaver-e10-builder/actionflows/references/components/serverless/ServerlessAction.md +42 -0
  109. package/skills/weaver-e10-builder/actionflows/references/components/trigger/CustomTrigger.md +82 -0
  110. package/skills/weaver-e10-builder/actionflows/references/components/trigger/InnerMQListener.md +41 -0
  111. package/skills/weaver-e10-builder/actionflows/references/components/trigger/SimpleScheduler.md +19 -0
  112. package/skills/weaver-e10-builder/actionflows/references/components/trigger/WebHookTrigger.md +91 -0
  113. package/skills/weaver-e10-builder/actionflows/references/components/workflow/ApproveAddSign.md +17 -0
  114. package/skills/weaver-e10-builder/actionflows/references/components/workflow/ApproveAgreeRejectApply.md +17 -0
  115. package/skills/weaver-e10-builder/actionflows/references/components/workflow/ApproveCommit.md +17 -0
  116. package/skills/weaver-e10-builder/actionflows/references/components/workflow/ApproveConsulTurnTodo.md +17 -0
  117. package/skills/weaver-e10-builder/actionflows/references/components/workflow/ApproveCreate.md +17 -0
  118. package/skills/weaver-e10-builder/actionflows/references/components/workflow/ApproveDelete.md +19 -0
  119. package/skills/weaver-e10-builder/actionflows/references/components/workflow/ApproveDoCirculate.md +17 -0
  120. package/skills/weaver-e10-builder/actionflows/references/components/workflow/ApproveDoForward.md +17 -0
  121. package/skills/weaver-e10-builder/actionflows/references/components/workflow/ApproveDoTurnTodo.md +17 -0
  122. package/skills/weaver-e10-builder/actionflows/references/components/workflow/ApproveEntrust.md +19 -0
  123. package/skills/weaver-e10-builder/actionflows/references/components/workflow/ApproveIntervention.md +17 -0
  124. package/skills/weaver-e10-builder/actionflows/references/components/workflow/ApproveMandatoryArchiving.md +17 -0
  125. package/skills/weaver-e10-builder/actionflows/references/components/workflow/ApproveManualCC.md +17 -0
  126. package/skills/weaver-e10-builder/actionflows/references/components/workflow/ApproveRefuseRejectApply.md +17 -0
  127. package/skills/weaver-e10-builder/actionflows/references/components/workflow/ApproveRejectApply.md +17 -0
  128. package/skills/weaver-e10-builder/actionflows/references/components/workflow/ApproveSave.md +17 -0
  129. package/skills/weaver-e10-builder/actionflows/references/components/workflow/ApproveSendBack.md +17 -0
  130. package/skills/weaver-e10-builder/actionflows/references/components/workflow/ApproveShareEntry.md +17 -0
  131. package/skills/weaver-e10-builder/actionflows/references/components/workflow/ApproveTrigger.md +99 -0
  132. package/skills/weaver-e10-builder/actionflows/references/components/workflow/ApproveWithdraw.md +17 -0
  133. package/skills/weaver-e10-builder/actionflows/references/components/workflow/WorkFlowDocEmpowerment.md +17 -0
  134. package/skills/weaver-e10-builder/actionflows/references/components/workflow/WorkflowToDoc.md +17 -0
  135. package/skills/weaver-e10-builder/actionflows/references/condition_rules.md +100 -0
  136. package/skills/weaver-e10-builder/actionflows/references/dynamic_capability_matrix.md +39 -0
  137. package/skills/weaver-e10-builder/actionflows/references/dynamic_resources.md +41 -0
  138. package/skills/weaver-e10-builder/actionflows/references/examples/enquiry-form-batch-insert-scene2.json +1043 -0
  139. package/skills/weaver-e10-builder/actionflows/references/function_rules.md +15 -0
  140. package/skills/weaver-e10-builder/actionflows/references/trigger_runtime_notes.md +53 -0
  141. package/skills/weaver-e10-builder/assets/dom-structure/Bar.json +341 -0
  142. package/skills/weaver-e10-builder/assets/dom-structure/BarStack.json +341 -0
  143. package/skills/weaver-e10-builder/assets/dom-structure/Bubble.json +323 -0
  144. package/skills/weaver-e10-builder/assets/dom-structure/Calendar.json +515 -0
  145. package/skills/weaver-e10-builder/assets/dom-structure/Circular.json +337 -0
  146. package/skills/weaver-e10-builder/assets/dom-structure/CollapsePanel.json +289 -0
  147. package/skills/weaver-e10-builder/assets/dom-structure/Comment.json +617 -0
  148. package/skills/weaver-e10-builder/assets/dom-structure/CountDown.json +755 -0
  149. package/skills/weaver-e10-builder/assets/dom-structure/DigitalPanel.json +191 -0
  150. package/skills/weaver-e10-builder/assets/dom-structure/EbButton.json +387 -0
  151. package/skills/weaver-e10-builder/assets/dom-structure/FastCreate.json +242 -0
  152. package/skills/weaver-e10-builder/assets/dom-structure/Gauge.json +282 -0
  153. package/skills/weaver-e10-builder/assets/dom-structure/HBar.json +336 -0
  154. package/skills/weaver-e10-builder/assets/dom-structure/HBarStack.json +337 -0
  155. package/skills/weaver-e10-builder/assets/dom-structure/Line.json +341 -0
  156. package/skills/weaver-e10-builder/assets/dom-structure/NList.json +712 -0
  157. package/skills/weaver-e10-builder/assets/dom-structure/NavBar.json +274 -0
  158. package/skills/weaver-e10-builder/assets/dom-structure/NavPanel.json +390 -0
  159. package/skills/weaver-e10-builder/assets/dom-structure/NewTab.json +606 -0
  160. package/skills/weaver-e10-builder/assets/dom-structure/Nightingale.json +336 -0
  161. package/skills/weaver-e10-builder/assets/dom-structure/PageHeader.json +205 -0
  162. package/skills/weaver-e10-builder/assets/dom-structure/Picture.json +209 -0
  163. package/skills/weaver-e10-builder/assets/dom-structure/Pie.json +338 -0
  164. package/skills/weaver-e10-builder/assets/dom-structure/ProgressChart.json +299 -0
  165. package/skills/weaver-e10-builder/assets/dom-structure/SearchGlobal.json +628 -0
  166. package/skills/weaver-e10-builder/assets/dom-structure/Slide.json +489 -0
  167. package/skills/weaver-e10-builder/assets/dom-structure/Treemap.json +324 -0
  168. package/skills/weaver-e10-builder/assets/factory/chart-dimensions.json +536 -0
  169. package/skills/weaver-e10-builder/assets/factory/example-btn-progress-collapse-configured.json +2515 -0
  170. package/skills/weaver-e10-builder/assets/factory/example-configured-2.json +13805 -0
  171. package/skills/weaver-e10-builder/assets/factory/example-configured.json +6735 -0
  172. package/skills/weaver-e10-builder/assets/factory/factory-bar-stack.json +326 -0
  173. package/skills/weaver-e10-builder/assets/factory/factory-bar.json +222 -0
  174. package/skills/weaver-e10-builder/assets/factory/factory-bubble.json +322 -0
  175. package/skills/weaver-e10-builder/assets/factory/factory-calendar.json +325 -0
  176. package/skills/weaver-e10-builder/assets/factory/factory-circular.json +320 -0
  177. package/skills/weaver-e10-builder/assets/factory/factory-collapse-panel.json +132 -0
  178. package/skills/weaver-e10-builder/assets/factory/factory-comment.json +388 -0
  179. package/skills/weaver-e10-builder/assets/factory/factory-count-down.json +198 -0
  180. package/skills/weaver-e10-builder/assets/factory/factory-digital-panel.json +108 -0
  181. package/skills/weaver-e10-builder/assets/factory/factory-eb-button.json +150 -0
  182. package/skills/weaver-e10-builder/assets/factory/factory-fast-create.json +62 -0
  183. package/skills/weaver-e10-builder/assets/factory/factory-gauge.json +312 -0
  184. package/skills/weaver-e10-builder/assets/factory/factory-h-bar-stack.json +328 -0
  185. package/skills/weaver-e10-builder/assets/factory/factory-h-bar.json +326 -0
  186. package/skills/weaver-e10-builder/assets/factory/factory-line.json +212 -0
  187. package/skills/weaver-e10-builder/assets/factory/factory-nav-bar.json +167 -0
  188. package/skills/weaver-e10-builder/assets/factory/factory-nav-menu.json +144 -0
  189. package/skills/weaver-e10-builder/assets/factory/factory-nav-panel.json +338 -0
  190. package/skills/weaver-e10-builder/assets/factory/factory-new-tab.json +163 -0
  191. package/skills/weaver-e10-builder/assets/factory/factory-nightingale.json +312 -0
  192. package/skills/weaver-e10-builder/assets/factory/factory-nlist.json +112 -0
  193. package/skills/weaver-e10-builder/assets/factory/factory-page-header.json +171 -0
  194. package/skills/weaver-e10-builder/assets/factory/factory-picture.json +169 -0
  195. package/skills/weaver-e10-builder/assets/factory/factory-pie.json +212 -0
  196. package/skills/weaver-e10-builder/assets/factory/factory-progress-chart.json +162 -0
  197. package/skills/weaver-e10-builder/assets/factory/factory-search-global.json +104 -0
  198. package/skills/weaver-e10-builder/assets/factory/factory-slide.json +164 -0
  199. package/skills/weaver-e10-builder/assets/factory/factory-treemap.json +322 -0
  200. package/skills/weaver-e10-builder/assets/icons.db +0 -0
  201. package/skills/weaver-e10-builder/assets/sample/.claude/settings.local.json +8 -0
  202. package/skills/weaver-e10-builder/assets/sample/api/formApi.js +510 -0
  203. package/skills/weaver-e10-builder/assets/sample/config/config.js +0 -0
  204. package/skills/weaver-e10-builder/assets/sample/config/configLoad.js +0 -0
  205. package/skills/weaver-e10-builder/assets/sample/config/configLoad_default.js +0 -0
  206. package/skills/weaver-e10-builder/assets/sample/config/config_default.js +0 -0
  207. package/skills/weaver-e10-builder/assets/sample/entry.js +22 -0
  208. package/skills/weaver-e10-builder/assets/sample/eslint.config.cjs +48 -0
  209. package/skills/weaver-e10-builder/assets/sample/memo.md +0 -0
  210. package/skills/weaver-e10-builder/assets/sample/readme.js +8 -0
  211. package/skills/weaver-e10-builder/references/app/guide-app-publish.md +92 -0
  212. package/skills/weaver-e10-builder/references/auth/guide-auth.md +88 -0
  213. package/skills/weaver-e10-builder/references/coding/guide-edit-backfill.md +189 -0
  214. package/skills/weaver-e10-builder/references/coding/guide-form-crud.md +262 -0
  215. package/skills/weaver-e10-builder/references/coding/guide-page-code.md +244 -0
  216. package/skills/weaver-e10-builder/references/coding/guide-page-export.md +119 -0
  217. package/skills/weaver-e10-builder/references/coding/ref-compile-rules.md +130 -0
  218. package/skills/weaver-e10-builder/references/common/guide-plan-template.md +164 -0
  219. package/skills/weaver-e10-builder/references/common/map.md +153 -0
  220. package/skills/weaver-e10-builder/references/common/ref-cli-commands.md +635 -0
  221. package/skills/weaver-e10-builder/references/components/@weapp-Button.md +104 -0
  222. package/skills/weaver-e10-builder/references/components/base-Badge.md +100 -0
  223. package/skills/weaver-e10-builder/references/components/base-Dialog.md +358 -0
  224. package/skills/weaver-e10-builder/references/components/base-Empty.md +58 -0
  225. package/skills/weaver-e10-builder/references/components/base-Tag.md +112 -0
  226. package/skills/weaver-e10-builder/references/components/display-Alert.md +64 -0
  227. package/skills/weaver-e10-builder/references/components/display-Avatar.md +150 -0
  228. package/skills/weaver-e10-builder/references/components/display-Calendar.md +263 -0
  229. package/skills/weaver-e10-builder/references/components/display-Carousel.md +115 -0
  230. package/skills/weaver-e10-builder/references/components/display-Collapse.md +299 -0
  231. package/skills/weaver-e10-builder/references/components/display-FilePreview.md +49 -0
  232. package/skills/weaver-e10-builder/references/components/display-Icon.md +66 -0
  233. package/skills/weaver-e10-builder/references/components/display-List.md +320 -0
  234. package/skills/weaver-e10-builder/references/components/display-Pagination.md +41 -0
  235. package/skills/weaver-e10-builder/references/components/display-Spin.md +34 -0
  236. package/skills/weaver-e10-builder/references/components/display-Steps.md +89 -0
  237. package/skills/weaver-e10-builder/references/components/display-Table.md +160 -0
  238. package/skills/weaver-e10-builder/references/components/display-Title.md +117 -0
  239. package/skills/weaver-e10-builder/references/components/form-Checkbox.md +161 -0
  240. package/skills/weaver-e10-builder/references/components/form-DepartmentBrowser-api.md +52 -0
  241. package/skills/weaver-e10-builder/references/components/form-EmployeeBrowser-api.md +51 -0
  242. package/skills/weaver-e10-builder/references/components/form-EmployeeBrowser.md +51 -0
  243. package/skills/weaver-e10-builder/references/components/form-Input.md +123 -0
  244. package/skills/weaver-e10-builder/references/components/form-Radio.md +145 -0
  245. package/skills/weaver-e10-builder/references/components/form-Select.md +191 -0
  246. package/skills/weaver-e10-builder/references/components/form-Switch.md +46 -0
  247. package/skills/weaver-e10-builder/references/components/form-Upload.md +53 -0
  248. package/skills/weaver-e10-builder/references/components/generic-Echarts.md +102 -0
  249. package/skills/weaver-e10-builder/references/ebuilder-designer/guide-designer-components.md +130 -0
  250. package/skills/weaver-e10-builder/references/ebuilder-designer/guide-designer-css.md +127 -0
  251. package/skills/weaver-e10-builder/references/ebuilder-designer/guide-designer-factory.md +460 -0
  252. package/skills/weaver-e10-builder/references/ebuilder-designer/guide-designer-version.md +111 -0
  253. package/skills/weaver-e10-builder/references/ebuilder-designer/guide-designer.md +288 -0
  254. package/skills/weaver-e10-builder/references/esb-interface/guide-import.md +34 -0
  255. package/skills/weaver-e10-builder/references/form/guide-create-form.md +248 -0
  256. package/skills/weaver-e10-builder/references/form/guide-ebuilder-filter.md +73 -0
  257. package/skills/weaver-e10-builder/references/form/guide-ebuilder-scope.md +82 -0
  258. package/skills/weaver-e10-builder/references/form/guide-field-linkage.md +123 -0
  259. package/skills/weaver-e10-builder/references/form/guide-form-archive-permission.md +175 -0
  260. package/skills/weaver-e10-builder/references/form/guide-form-association.md +124 -0
  261. package/skills/weaver-e10-builder/references/form/guide-form-button.md +169 -0
  262. package/skills/weaver-e10-builder/references/form/guide-form-data.md +78 -0
  263. package/skills/weaver-e10-builder/references/form/guide-form-formula-functions.md +343 -0
  264. package/skills/weaver-e10-builder/references/form/guide-form-layout-incremental.md +90 -0
  265. package/skills/weaver-e10-builder/references/form/guide-form-layout-planning.md +68 -0
  266. package/skills/weaver-e10-builder/references/form/guide-form-linkage.md +269 -0
  267. package/skills/weaver-e10-builder/references/form/guide-form-message.md +74 -0
  268. package/skills/weaver-e10-builder/references/form/guide-form-physical-table.md +146 -0
  269. package/skills/weaver-e10-builder/references/form/guide-form-serial-mark.md +47 -0
  270. package/skills/weaver-e10-builder/references/form/guide-form-sub-detail.md +82 -0
  271. package/skills/weaver-e10-builder/references/form/guide-form-view-permission.md +38 -0
  272. package/skills/weaver-e10-builder/references/form/guide-form-view.md +371 -0
  273. package/skills/weaver-e10-builder/references/form/guide-formula-linkage.md +281 -0
  274. package/skills/weaver-e10-builder/references/form/guide-list-columns.md +52 -0
  275. package/skills/weaver-e10-builder/references/form/guide-list-custom-text.md +52 -0
  276. package/skills/weaver-e10-builder/references/form/guide-list-stats.md +136 -0
  277. package/skills/weaver-e10-builder/references/form/guide-virtual-form.md +156 -0
  278. package/skills/weaver-e10-builder/references/form/ref-form-fields.md +293 -0
  279. package/skills/weaver-e10-builder/references/form/style-templates.md +97 -0
  280. package/skills/weaver-e10-builder/references/hrm/guide-matrix.md +245 -0
  281. package/skills/weaver-e10-builder/references/hrm/guide-org-employee.md +155 -0
  282. package/skills/weaver-e10-builder/references/menu/system-menus.md +75 -0
  283. package/skills/weaver-e10-builder/references/report/add-dataset-registration-guide.md +139 -0
  284. package/skills/weaver-e10-builder/references/report/ai-report-workflow.md +412 -0
  285. package/skills/weaver-e10-builder/references/report/api-report-build-fast-path.md +275 -0
  286. package/skills/weaver-e10-builder/references/report/app-datasource-lookup-guide.md +230 -0
  287. package/skills/weaver-e10-builder/references/report/cell-config-echo-guide.md +163 -0
  288. package/skills/weaver-e10-builder/references/report/cell-transform-guide.md +147 -0
  289. package/skills/weaver-e10-builder/references/report/condition-format-guide.md +140 -0
  290. package/skills/weaver-e10-builder/references/report/cross-dataset-filter-guide.md +304 -0
  291. package/skills/weaver-e10-builder/references/report/dataset-query-filter-guide.md +235 -0
  292. package/skills/weaver-e10-builder/references/report/dataset-sidebar-ops-guide.md +280 -0
  293. package/skills/weaver-e10-builder/references/report/dataset-table-field-contract-guide.md +339 -0
  294. package/skills/weaver-e10-builder/references/report/datasource-metadata-guide.md +365 -0
  295. package/skills/weaver-e10-builder/references/report/datasource-selection-and-parent-filter-guide.md +148 -0
  296. package/skills/weaver-e10-builder/references/report/date-range-query-reference.md +102 -0
  297. package/skills/weaver-e10-builder/references/report/default-header-style-guide.md +70 -0
  298. package/skills/weaver-e10-builder/references/report/designer-blank-prevention-guide.md +111 -0
  299. package/skills/weaver-e10-builder/references/report/event-hreflink-guide.md +184 -0
  300. package/skills/weaver-e10-builder/references/report/field-bind-exact-match-guide.md +208 -0
  301. package/skills/weaver-e10-builder/references/report/formula-cell-api-guide.md +258 -0
  302. package/skills/weaver-e10-builder/references/report/guide-report-build.md +131 -0
  303. package/skills/weaver-e10-builder/references/report/guide-report-modify.md +100 -0
  304. package/skills/weaver-e10-builder/references/report/guide-report-multisource.md +143 -0
  305. package/skills/weaver-e10-builder/references/report/guide-report-query.md +98 -0
  306. package/skills/weaver-e10-builder/references/report/hidden-row-and-header-merge-guide.md +100 -0
  307. package/skills/weaver-e10-builder/references/report/layout-showlocation-freeze-guide.md +167 -0
  308. package/skills/weaver-e10-builder/references/report/preaggregate-auto-disable-guide.md +107 -0
  309. package/skills/weaver-e10-builder/references/report/query-condition-api-guide.md +890 -0
  310. package/skills/weaver-e10-builder/references/report/ref-report-commands.md +122 -0
  311. package/skills/weaver-e10-builder/references/report/ref-report-pitfalls.md +226 -0
  312. package/skills/weaver-e10-builder/references/report/report-baseinfo-defaults-guide.md +117 -0
  313. package/skills/weaver-e10-builder/references/report/report-building-guide.md +511 -0
  314. package/skills/weaver-e10-builder/references/report/report-config-schema.md +445 -0
  315. package/skills/weaver-e10-builder/references/report/report-create-modes-guide.md +182 -0
  316. package/skills/weaver-e10-builder/references/report/report-data-model.md +447 -0
  317. package/skills/weaver-e10-builder/references/report/report-delivery-contract.md +101 -0
  318. package/skills/weaver-e10-builder/references/report/report-designer-feature-map.md +500 -0
  319. package/skills/weaver-e10-builder/references/report/report-internal-error-guide.md +78 -0
  320. package/skills/weaver-e10-builder/references/report/report-knowledge-base.md +389 -0
  321. package/skills/weaver-e10-builder/references/report/report-lifecycle-api-guide.md +392 -0
  322. package/skills/weaver-e10-builder/references/report/report-list-page-ops-guide.md +191 -0
  323. package/skills/weaver-e10-builder/references/report/report-permission-guide.md +365 -0
  324. package/skills/weaver-e10-builder/references/report/report-requirement-analysis-template.md +202 -0
  325. package/skills/weaver-e10-builder/references/report/report-self-check-guide.md +164 -0
  326. package/skills/weaver-e10-builder/references/report/safe-partial-save-guide.md +151 -0
  327. package/skills/weaver-e10-builder/references/report/snowflake-id-precision-guide.md +84 -0
  328. package/skills/weaver-e10-builder/references/report/spec-build-schema.md +294 -0
  329. package/skills/weaver-e10-builder/references/report/targeted-fix-guide.md +97 -0
  330. package/skills/weaver-e10-builder/references/report/user-request-scope-only-guide.md +82 -0
  331. package/skills/weaver-e10-builder/references/workflow/guide-function-management.md +154 -0
  332. package/skills/weaver-e10-builder/references/workflow/guide-opinion-settings.md +126 -0
  333. package/skills/weaver-e10-builder/references/workflow/guide-workflow-action.md +174 -0
  334. package/skills/weaver-e10-builder/references/workflow/guide-workflow-auth-resp.md +224 -0
  335. package/skills/weaver-e10-builder/references/workflow/guide-workflow-condition.md +447 -0
  336. package/skills/weaver-e10-builder/references/workflow/guide-workflow-node-layout.md +181 -0
  337. package/skills/weaver-e10-builder/references/workflow/guide-workflow-odoc-setting.md +248 -0
  338. package/skills/weaver-e10-builder/references/workflow/guide-workflow-odoc.md +68 -0
  339. package/skills/weaver-e10-builder/references/workflow/guide-workflow.md +527 -0
  340. package/skills/weaver-e10-builder/references/workflow/operator-matrix.md +76 -0
  341. package/skills/weaver-e10-caizhilian/SKILL.md +14 -4
  342. package/skills/weaver-e10-caizhilian/references/file-upload.md +100 -295
  343. package/skills/weaver-e10-caizhilian/references/files.md +15 -0
  344. package/skills/weaver-e10-caizhilian/references/folder.md +31 -3
  345. package/skills/weaver-e10-caizhilian/references/setting-attach.md +48 -3
  346. package/skills/weaver-e10-caizhilian/references/source-manifest.json +634 -25
  347. package/skills/weaver-e10-jiuchuanhui/SKILL.md +9 -1
  348. package/skills/weaver-e10-shared/SKILL.md +19 -5
  349. package/skills/weaver-e10-shared/references/e10-auth-and-session.md +25 -5
  350. package/skills/weaver-e10-workflow/SKILL.md +28 -47
  351. package/skills/weaver-e10-workflow/references/source-manifest.json +46 -36
  352. package/skills/weaver-e10-workflow/references/workflow-batch.md +2 -4
  353. package/skills/weaver-e10-workflow/references/workflow-create.md +261 -86
  354. package/skills/weaver-e10-workflow/references/workflow-edit.md +2 -1
  355. package/skills/weaver-e10-workflow/references/workflow-memory.md +3 -6
  356. package/skills/weaver-e10-workflow/references/workflow-operate.md +2 -1
  357. package/skills/weaver-e10-workflow/references/workflow-query.md +11 -9
  358. package/skills/weaver-e10-workflow/references/workflow-share.md +2 -0
@@ -0,0 +1,230 @@
1
+ # 应用内数据源查找(强制优先级)
2
+
3
+ > **适用**:能力一/五、API 从零搭建报表时,需要把「需求里的表单/数据源名称」解析为 `sourceId`。
4
+ > **核心规则**:**先当前应用、后别处**;命中即停;**禁止**固定 `sleep`;**禁止**为找表启动 浏览器自动化 开应用页。
5
+
6
+ ---
7
+
8
+ ## 一、判定顺序(任务开始后第一步)
9
+
10
+ | 输入 | 解析 appId | 找 sourceId |
11
+ |------|------------|-------------|
12
+ | **appId + 数据源名** | 直接用 | **① 应用内**(§二)→ 未命中再 **② 别处**(§三,有限次) |
13
+ | **appName + 数据源名** | `GET /api/bs/ebuilder/app/list?name={appName}&pageNo=1&pageSize=20` **1 次** | 同上 |
14
+ | **仅数据源名,无 app** | — | 直接 §三(须带关键字) |
15
+ | **appId + sourceId 已给** | 直接用 | **跳过查找**,直接 `addDataset` |
16
+
17
+ **禁止(已指定 app 时的首轮)**:
18
+
19
+ - 一上来就 `GET /ds/group` 全系统遍历
20
+ - 对每个 `groupId` 循环 `listByPage` 空扫
21
+ - 多 module(`ebuilder` / `bs` / `datasource`)无关键字轮询试探
22
+ - **先拉系统级分页再本地过滤「当前应用」**(分页也必须带 appId)
23
+ - **`sleep` / `setTimeout` 固定等待** 代替「读接口直到有数据」
24
+ - **浏览器自动化 打开应用详情页** 扫网络找表单( ~17s,且非必要)
25
+
26
+ **强制优先级**:`e10-cli report find` = `getList/{appId}` → 未命中再问用户 / 有限次应用内关键字 listByPage → **最后**才别处。
27
+ 见 `session-build-performance-guide.md` §二。
28
+
29
+ ---
30
+
31
+ ## 二、应用内查找(已指定 appId · 优先 · 通常 1 次)
32
+
33
+ ### 2.0 未指定准确表名(强制 · 二次确认)
34
+
35
+ > **事故模式**:需求只写业务描述(如「资产统计」「党员发展」)未给表单名 → Agent 模糊匹配错表 → 数据集字段对不上。
36
+
37
+ | 用户输入 | Agent 行为 | 绑定 |
38
+ |----------|------------|------|
39
+ | **已给准确表名** 且应用内 **exact 唯一** | 可 `find form` 后绑定 | `autoBind=true`(建议仍口头确认) |
40
+ | **未给表名** / 只给业务词 / 报表名 | **只在当前应用** `getList/{appId}` 检索 → 按关键字打分出候选 | **`needConfirm=true`,禁止 addDataset** |
41
+ | **模糊命中 1 条或多条** | 展示候选(表名 + sourceId) | **必须等用户确认** 后再绑 |
42
+ | 应用内无候选 | 问用户准确表名/sourceId;**禁止**立刻全系统 `/ds/group` | 不绑 |
43
+
44
+ **二次确认话术(强制)**:
45
+
46
+ ```text
47
+ 需求未指定准确表名。已在当前应用内检索到以下候选,请确认用哪一张(回复表名或 sourceId):
48
+ 1. {nameA}(sourceId=…)
49
+ 2. {nameB}(sourceId=…)
50
+ 若都不是,请给出准确表单名或 sourceId。
51
+ ```
52
+
53
+ **禁止**:未确认就 `addDataset` / 落库绑字段;禁止用报表标题「看起来像」的表直接当数据源。
54
+
55
+ CLI:
56
+
57
+ ```bash
58
+ e10-cli report find <appId> --list
59
+ e10-cli report find <appId> --suggest "资产,台账"
60
+ e10-cli report find <appId> "准确表单名" # exact 才可 autoBind
61
+ ```
62
+
63
+ exit code **3** = 须二次确认(`needConfirm=true`)。
64
+
65
+ 按优先级尝试,**命中即停**(合计计入 §六预算):
66
+
67
+ ### 2.1 【首选 · eteams 已验证】应用表单列表
68
+
69
+ ```
70
+ GET /api/bs/ebuilder/form/obj/getList/{appId}?apid={appId}
71
+ ```
72
+
73
+ - Header:`eteamsid` + `Cookie: ETEAMSID=…` + `ebBusinessId={appId}`
74
+ - 响应为应用内表单数组(或包在 `data`);按 `name` **精确或包含**匹配需求表名
75
+ - 取命中项的 **`id`** 作为 `sourceId`(`addDataset` 用)
76
+ - **示例**:应用 `786501450842480640` 中「进销存-销售单」→ `787599094054395904`
77
+
78
+ ```javascript
79
+ async function findFormInApp(host, headers, appId, formName) {
80
+ const j = await get(`${host}/api/bs/ebuilder/form/obj/getList/${appId}`, { apid: appId }, headers);
81
+ const rows = Array.isArray(j.data) ? j.data : Array.isArray(j) ? j : j.data?.list || [];
82
+ const exact = rows.find((r) => r.name === formName);
83
+ if (exact) return String(exact.id);
84
+ const fuzzy = rows.find((r) => String(r.name || '').includes(formName) || formName.includes(String(r.name || '')));
85
+ return fuzzy ? String(fuzzy.id) : null;
86
+ }
87
+ ```
88
+
89
+ ### 2.2 CLI(表单类 · 优先)
90
+
91
+ ```bash
92
+ e10-cli report find <appId> <表单名> # 推荐(本包唯一 CLI 入口)
93
+ node e10-cli report find <appId> <表单名> # 仅 CLI 未装时
94
+ ```
95
+
96
+ 若 `e10-cli report` auth 与 `e10-login` 不同步失败 → **改走 §2.1**,不要去找 e10-cli。
97
+
98
+ 字段核对(已有 sourceId 后):
99
+
100
+ ```bash
101
+ # 报表侧(推荐):
102
+ # GET /api/bs/edc/dataset/fieldsBySource?sourceId=&sourceType=logic&groupId=weaver-ebuilder-form-service
103
+ # 或 addDataset 后 fieldsAndOriginFields?isFront=true
104
+ ```
105
+
106
+ ### 2.3 HTTP 备用(仅当 §2.1 失败)
107
+
108
+ ```
109
+ GET /api/datasource/ds/listByPage?sourceType=logic&appid={appId}&condition={关键字}&pageNo=1&pageSize=50
110
+ GET /api/ebuilder/form/ds/listByPage?sourceType=LOGIC&groupId=0&name={关键字}&appId={appId}&pageNo=1&pageSize=50
111
+ ```
112
+
113
+ > **注意**:部分环境 `form/ds/listByPage` 会 500;**不要**因此改去开 浏览器自动化,应回退 §2.1 或进入 §三 / 询问用户。
114
+
115
+ ---
116
+
117
+ ## 三、别处检索(应用内未命中 或 未给 app)
118
+
119
+ **仅当**:应用内 §二已试完仍无命中,**或**用户未指定应用。
120
+
121
+ 1. `GET /api/datasource/ds/listByPage`(或 `/api/{module}/ds/listByPage`)带 **`name`/`condition` 关键字** + 必要时 `groupId`
122
+ 2. **禁止**无关键字翻页扫全库
123
+ 3. 仍计入 §六预算;用尽 → **打断询问**,不要继续盲扫
124
+
125
+ > ** 坑(<your-e10-host>)**:按「应用名」找应用这条路在本环境不可用 ——
126
+ > `GET /api/bs/ebuilder/app/list?name={kw}` 与 `e10-cli report app-search --name {kw}` **服务端忽略 `name`**,
127
+ > 恒返回全量 998 条且顺序固定,**不能**靠它定位应用。找不到表时:直接用 `ds/listByPage` 关键字搜数据源,或向用户要 appId/sourceId。
128
+
129
+ 若用户其实给了应用名但 Agent 漏解析 → 应先补 `app/list` 再回 §二,而不是直接全系统扫。
130
+
131
+ ---
132
+
133
+ ## 四、与报表 API 闭环(禁止固定 sleep)
134
+
135
+ ```
136
+ 解析 appId(若需要,最多 1 次 app/list)
137
+ → findFormInApp / §二(优先 getList)
138
+ → [未命中] §三 别处(有限次)
139
+ → POST addDataset(sourceId)
140
+ → poll GET dataset/list?reportId= 直到出现匹配 sourceId 的行(见下)
141
+ → GET fieldsAndOriginFields?datasetId=&isFront=true&reportId=
142
+ ```
143
+
144
+ ### 4.1 addDataset 后:轮询代替 sleep(强制)
145
+
146
+ **禁止** `await sleep(800)` / `setTimeout(800)` 之类固定等待。
147
+
148
+ ```javascript
149
+ async function waitDatasetBySource(reportId, sourceId, { tries = 8, gapMs = 100 } = {}) {
150
+ for (let i = 0; i < tries; i++) {
151
+ const list = await getDatasetList(reportId); // GET /api/bs/edc/dataset/list?hasField=true&reportId=
152
+ const hit = (list || []).find((d) => String(d.sourceId) === String(sourceId));
153
+ if (hit) return hit;
154
+ await new Promise((r) => setTimeout(r, gapMs)); // 仅短间隔重试,非「盲等 800ms」
155
+ }
156
+ throw new Error(`dataset not ready for sourceId=${sourceId}`);
157
+ }
158
+ ```
159
+
160
+ - 首包常立刻命中(~60ms);未就绪再 100ms 级重试,总等待远小于固定 800ms。
161
+ - `addDataset` 不返回 `datasetId` → **必须**按 **sourceId** 匹配,禁止按下标 `[0]`。
162
+
163
+ ---
164
+
165
+ ## 五、HTTP 客户端优先(强制 · 性能)
166
+
167
+ | 做法 | 说明 |
168
+ |------|------|
169
+ | **首选** | Node `https` / `fetch` / 浏览器自动化 **仅** `request` API 发 HTTP(若已有 context) |
170
+ | **禁止为找表** | `chromium.launch` + `page.goto(应用详情)` 扫表单(~0.6s+0.5s+打开页数秒) |
171
+ | **禁止为纯 API 建表** | 仅为 `baseInfo/addDataset/save` 而启动浏览器;用 https + multipart 即可 |
172
+
173
+ 纯 API 路径找表 + 建表可压到数秒;浏览器自动化 启浏览器 alone ≈ **1s+**。
174
+
175
+ ---
176
+
177
+ ## 六、探测预算与打断询问(强制 · 防空耗)
178
+
179
+ ### 6.1 单次任务硬上限
180
+
181
+ | 项 | 上限 | 说明 |
182
+ |----|------|------|
183
+ | 应用解析 `app/list` | **1** | 已有 appId 则 0 |
184
+ | **应用内**找表(`getList` / `form list` / scoped listByPage) | **合计 ≤ 2** | 换关键字也算;命中即停 |
185
+ | **别处** `group` + `listByPage`(应用内未中或未给 app) | **合计 ≤ 3** | 必须带 name;禁止翻页空扫 |
186
+ | 同一关键字换 module 无脑重试 | **禁止** | |
187
+ | 固定 `sleep` ≥ 300ms 等数据集 | **禁止** | 用 §4.1 轮询 |
188
+ | 浏览器自动化 开应用页找表 | **禁止** | |
189
+
190
+ ### 6.2 何时必须打断并询问用户
191
+
192
+ 1. §6.1 预算用尽仍无唯一命中。
193
+ 2. 关键字命中多条,无法确认。
194
+ 3. 表名与应用内列表对不上。
195
+ 4. 连续 2 轮仍在换词/换接口盲扫。
196
+ 5. **用户未指定准确表名**(仅业务描述/报表名)→ 应用内 `--suggest`/`--list` 后 **二次确认**(§2.0);**禁止**静默绑定。
197
+ 6. **模糊匹配**(`match=fuzzy`)→ 即使只有 1 条也必须确认。
198
+
199
+ 询问:应用?准确表名或 **sourceId**?多候选点选哪张?
200
+
201
+ ### 6.3 禁止的空耗行为
202
+
203
+ - 未给 app 时先全系统 group「碰运气」
204
+ - 已给 app 却跳过 §二直接别处扫
205
+ - 固定 sleep、开浏览器扫页、输出长探测日志代替提问
206
+
207
+ ---
208
+
209
+ ## 七、耗时对照(优化目标)
210
+
211
+ | 路径 | 典型耗时 | 说明 |
212
+ |------|----------|------|
213
+ | `getList/{appId}` 应用内命中 | **~0.2–0.5s** | **推荐** |
214
+ | 固定 sleep(800) + 浏览器自动化 启浏览器 | **~2s+** | **禁止** |
215
+ | 浏览器自动化 打开应用详情扫表单 | **~15–20s** | **禁止** |
216
+ | 全系统 group 遍历 | **数秒~数十秒** | 仅 §三兜底 |
217
+
218
+ API 从零搭建:数据源定位应控制在 **2 秒内**(已给 app 时);整段建表(已知名)目标 **≤ 5s**(不含用户确认)。
219
+
220
+ ---
221
+
222
+ ## 八、与现有文档关系
223
+
224
+ | 文档 | 关系 |
225
+ |------|------|
226
+ | `e10-cli report find` | 应用内 `getList` 找 sourceId(无 sleep/无浏览器) |
227
+ | `api-report-build-fast-path.md` | 建表流程 §〇 / 性能纪律引用本节 |
228
+ | `datasource-metadata-guide.md` | 有 app → 本节;无 app → §三 |
229
+ | `datasource-selection-and-parent-filter-guide.md` | 少挂源 |
230
+ | `e10-cli-integration.md` | 本包不含 e10-cli;勿扫描 |
@@ -0,0 +1,163 @@
1
+ # 单元格配置回显契约(数字格式 / 日期分组 / 统计等)
2
+
3
+ > **根因(已验证 · 设计器 `main.js` `getFormaterInfo`)**:工具栏「数字格式」按下拉回显时,用 `getFormaterInfo(formatter, formatterType)` 在目录中查找:`item.id === formatter || item.key1 === formatterType[0]`。
4
+ > 若只写了近似的 `formatter`(如 `¥#,##0.00`)而 `formatterType` 仍为 `["common"]`,会**命中「常规」**,预览可能仍按货币算,但工具栏回显为「常规」。
5
+ > **日期分组**等右侧属性回显依赖 `fields[].groupType`(及 workbook `style.cellType.groupType`);重建 workbook 时 **禁止丢** `groupType` / `formatterType`。
6
+
7
+ ---
8
+
9
+ ## 一、硬约束
10
+
11
+ 1. **写数字格式必须「formatter + formatterType」成对**,且取值来自下表目录,禁止自造格式串。
12
+ 2. **写日期分组必须写 `groupType` 枚举**(见 §三),并写入 `fields[].groupType` + workbook `style.cellType.groupType`。
13
+ 3. **重建 workbook(`fieldToCell`)须透传**:`groupType`、`formatterType`、`countType`、`orderType`、`displayType`、`expandType`;`tag.formatterType` 与 `fields[].formatterType` 一致。
14
+ 4. **禁止整表一键刷单元格样式/边框**(用户未点名区域时):见 `user-request-scope-only-guide.md`;若用户要求「整表设样式」→ **提示不支持全量**,请其给出区域(如 B3:H5)。
15
+ 5. **字体/字号**须匹配设计器支持列表;不支持时 **提示用户**,按默认字号继续落库,**不要卡住**(见 §五)。
16
+ 6. **同款样式复用(强制 · 性能)**:多个单元格配置**相同**数字格式/字体/边框/对齐时 → **只校验/确认一次**,其余格 **深拷贝同一 style 模板**;**禁止**逐格再跑 `validate format`、禁止逐格翻 JSON 样例对照。
17
+
18
+ ---
19
+
20
+ ## 一补充、同款样式复用(强制)
21
+
22
+ | 场景 | 正确做法 | 禁止 |
23
+ |------|----------|------|
24
+ | N 个度量列都要「货币」 | `e10-cli report validate format --map "货币"` **一次** → 得到成对 formatter/formatterType → 赋给所有目标格 | 对每一格再 `--map` / 再读一遍样例 JSON |
25
+ | 同区标题行同字体同色 | 建 `styleHeader` 对象,循环 `Object.assign` / 结构化克隆 | 每格单独拼 style、每格问目录 |
26
+ | 交付前抽检 | 对**唯一样式指纹**各验 1 次即可 | 按 cells.length 循环 `validate format --file` |
27
+
28
+ **指纹示例**:`formatterType[0] + '|' + formatter + '|' + font + '|' + backColor`
29
+ 相同指纹 → 直接复用已通过的 style 对象引用(或深拷贝),**不再**走 JSON 样例确认。
30
+
31
+ ## 二、数字格式目录(工具栏回显参照)
32
+
33
+ > 来源:设计器静态资源 `main.js` 中格式下拉 `g()` 目录。`¥` 为全角 `U+FFE5`(JSON 中写 `\uFFE5`)。
34
+
35
+ | 中文(工具栏) | `style.formatter`(必须全等) | `formatterType[0]`(key1) |
36
+ |----------------|------------------------------|----------------------------|
37
+ | 常规 | `General` | `common` |
38
+ | 数值 | `0.00_);[Red](0.00)` | `value` |
39
+ | **货币** | `"¥"#,##0.00_);[Red]("¥"#,##0.00)` | **`huobi`** |
40
+ | 会计专用 | `_ "¥"* #,##0.00_ ;_ "¥"* -#,##0.00_ ;_ "¥"* "-"??_ ;_ @_ ` | `kuaiji` |
41
+ | 短日期 | `yyyy/m/d;@__@` | `shortdate` |
42
+ | 长日期 | `yyyy"年"m"月"d"日";@` | `longdate` |
43
+ | 时间 | `h:mm:ss;@` | `time` |
44
+ | 百分比 | `0.00%` | `percent` |
45
+ | 分数 | `# ?/?` | `fenshu` |
46
+ | 科学计数 | `0.00E+00` | `kexuejishu` |
47
+ | 文本 | `@` | `text` |
48
+ | 其他 | (自定义) | `custom` |
49
+
50
+ ### 错误写法(会导致回显「常规」)
51
+
52
+ | 错误 | 原因 |
53
+ |------|------|
54
+ | `formatter: "¥#,##0.00"` + `formatterType: ["common"]` | id 不在目录;key1=common → 命中常规 |
55
+ | 只改 `formatter`、不改 `formatterType` | key1 仍为 common → 常规 |
56
+ | 半角 `¥`(U+00A5)代替全角 `¥`(U+FFE5) | 与目录 id 不全等 |
57
+
58
+ ### 正确写入示例(货币)
59
+
60
+ ```json
61
+ {
62
+ "style": {
63
+ "formatter": "\"¥\"#,##0.00_);[Red](\"¥\"#,##0.00)"
64
+ },
65
+ "formatterType": ["huobi"],
66
+ "tag": { "formatterType": ["huobi"] }
67
+ }
68
+ ```
69
+
70
+ UI 内部拼串形态(勿原样当 formatter):`"<formatter>__@__<key1>"`,如 `..."__@__huobi`。
71
+
72
+ ---
73
+
74
+ ## 三、日期分组(右侧「单元格」面板回显)
75
+
76
+ | 中文 | `groupType`(落库 / cellType) |
77
+ |------|-------------------------------|
78
+ | 不设置 | `none`(或未设置;面板默认) |
79
+ | **年份** | **`year`** |
80
+ | 年月 | `yearmonth`(部分 UI 文案控件曾用 `yearAndMonth`,**落库一律 `yearmonth`**) |
81
+ | 月份 | `month` |
82
+ | 年月日 | `yearmonthday` |
83
+ | 年周 | `yearweekday` |
84
+ | 月周 | `monthweekday` |
85
+
86
+ ### 写入要求
87
+
88
+ 1. `fields[].groupType = "year"`(等)
89
+ 2. workbook `style.cellType.groupType` 同步(`fieldToCell` 必须带上,禁止只改 fields 行却重建时丢掉)
90
+ 3. 回读校验:`getReportDevInfo` → 目标格 `groupType` 等于预期
91
+ 4. **选中正确单元格再看回显**(例:D5=年月字段才看「日期分组」;在金额格上看必然是「不设置」)
92
+
93
+ ---
94
+
95
+ ## 四、其它常见配置项回显对照(检查清单)
96
+
97
+ | 设计器位置 | 配置项 | 回显字段 | 注意 |
98
+ |------------|--------|----------|------|
99
+ | 开始 · 数字格式 | 常规/货币/… | `style.formatter` + `formatterType`/`tag.formatterType` | §二 成对 |
100
+ | 单元格 · 日期分组 | 年份/年月/… | `groupType` | §三 |
101
+ | 单元格 · 显示 | 分组/列表/… | `displayType` | `Group` / `List` / … |
102
+ | 单元格 · 扩展 | 纵向/横向/不扩展 | `expandType` | |
103
+ | 单元格 · 汇总 | 求和/计数/… | `countType` | |
104
+ | 单元格 · 排序 | 升/降/无 | `orderType` | `asc`/`desc`/`no` |
105
+ | 开始 · 字体 | 字体名/字号/粗斜体/下划线 | `style.font`、`textDecoration` | §五 |
106
+ | 开始 · 颜色/填充/边框 | fore/back/border* | `style.*` | 禁止未点名整表刷 |
107
+ | 左父格筛选 | 筛选字段 | `leftFilterField` 完整 fieldKey | 见 cross-dataset 回显 |
108
+ | 查询条件 | 类型/默认值 | saveQueryItem 形态 | 见 query-condition 回显 |
109
+ | 数据集名 | 左侧列表名 | addDataset `sourceName`=`{表}(业务模块)` | 见 add-dataset |
110
+
111
+ **原则**:凡设计器有下拉/单选回显的项,必须以**平台枚举/目录全等值**写入;「看起来生效、面板不对」优先查是否写了近似值或缺了成对字段。
112
+
113
+ ---
114
+
115
+ ## 五、字体与字号(不支持时提示、不卡住)
116
+
117
+ 1. 写入前用 CLI `validate format` / 本指南目录校验字体、字号是否在设计器支持列表内。
118
+ 2. **不支持**(例:用户要 10 号但当前租户目录无 10)→ **明确提示用户**:「报表不支持 N 号字体,已按默认字号(通常 12)展示」→ **继续用默认字号落库**,禁止中断任务。
119
+ - **禁止变通**:不要手工换算 px(如 10pt→`13.3333px`)绕过目录。后端不校验会照存,但设计器无该项、工具栏回显异常,属于假装支持。
120
+ 3. 字体名优先使用设计器可选名(如 `微软雅黑`);未知字体 → 提示并回退默认字体,同样不卡住。
121
+
122
+ ---
123
+
124
+ ## 六、禁止整表全量设样式 / 边框(提示话术)
125
+
126
+ 用户要求「整表单元格样式 / 整表边框」时:
127
+
128
+ > **不支持**:报表不允许对**整个报表**一次性全量设置单元格样式或边框样式(易误伤未点名区域,且与「仅改用户点名项」冲突)。
129
+ > 请给出具体区域(如 `B3:H5` 或「表头行」),我再按区域设置。
130
+
131
+ 然后 **不要执行**整表 style/border patch。
132
+
133
+ ---
134
+
135
+ ## 七、CLI
136
+
137
+ ```bash
138
+ # 校验 / 规范化数字格式与日期分组(不落库)
139
+ e10-cli report validate format --map "货币"
140
+ # 「转换」面板(字段转换/HTML/条码/隐藏/文字方向)→ cell-transform-guide.md
141
+ e10-cli report validate transform --map "人员"
142
+ e10-cli report validate transform --map "部门全路径"
143
+ e10-cli report validate transform --list
144
+ ```
145
+ e10-cli report validate format --map "货币"
146
+ e10-cli report validate format --map "年份"
147
+ e10-cli report validate format --file cell.json
148
+
149
+ # 线上回读检查(formatterType 与 groupType)
150
+ e10-cli report verify format <reportId> [appId]
151
+ ```
152
+
153
+ 脚本:`e10-cli report verify format`。
154
+
155
+ ---
156
+
157
+ ## 八、Agent 检查清单
158
+
159
+ - [ ] 货币等格式:formatter **全等**目录 id,且 `formatterType`/`tag` = 对应 key1(货币=`huobi`)
160
+ - [ ] 日期分组:`groupType` 为 `year`/`yearmonth`/…;workbook cellType 未丢
161
+ - [ ] 重建 workbook 使用已修补的 `fieldToCell`(透传 groupType/formatterType)
162
+ - [ ] 未点名禁止整表刷样式/边框;不支持字号已提示并默认继续
163
+ - [ ] 回读 VERIFY:目标格 `formatter`+`formatterType`、`groupType` 与需求一致
@@ -0,0 +1,147 @@
1
+ # 单元格「转换」面板(强制)
2
+
3
+ > **UI**:设计器右侧 **单元格 → 转换**(选中 Field 格时)
4
+ > **源码**:`AnalysisFieldCellType` · `Trans.getTransInstance` · 设计器 `route_ReportDesigner`
5
+ > **CLI**:`e10-cli report validate transform --map "人员"` / `--file cell.json`
6
+ > **落库**:须同时写入 `fields[]` 与 workbook `style.cellType`(`fieldToCell` 已透传)
7
+
8
+ ---
9
+
10
+ ## 〇、结论(扫描结果)
11
+
12
+ | UI 能力 | 落库键 | Skill 此前 | 现状 |
13
+ |---------|--------|------------|------|
14
+ | 字段转换(人员/部门/…) | `transType` + `browserType` / `transSelectOptions` | 帮助文案不全;`report-data-model` 枚举**错误** | **本文 + validate + fieldToCell** |
15
+ | HTML转换 | **`isHtml`** `"0"|"1"`(不是 transType) | 未正确文档化 | ✅ |
16
+ | 前缀/后缀 | **`prefixAndSuffix`** `["前","后"]` | 仅一笔带过 | ✅ |
17
+ | 条码 | **`qrcodeType`** `no|barcode|qrcode`(± `qrcodelink`) | 误写成 FieldType | ✅ |
18
+ | 隐藏内容 | **`hiddenContext`** `"0"|"1"`(拼写 Context) | 易与显示方式混淆 | ✅ |
19
+ | 文字方向 | **`textDirection`** 枚举 | 知识库有枚举、无面板映射 | ✅ |
20
+
21
+ **禁止**再用 `person` / `department` / `image` / `html` / `barcode` 当作单一 `transType`。
22
+
23
+ ---
24
+
25
+ ## 一、字段转换 `transType`
26
+
27
+ ### 1.1 UI → 落库(设计器当前)
28
+
29
+ | UI 文案 | `transType` | 附加字段 |
30
+ |---------|-------------|---------|
31
+ | 无 | `default` | — |
32
+ | **人员** | **`browser`** | `browserType:[{id:"HrmEmployeeComInfo"}]` |
33
+ | **部门** | **`browser`** | `browserType:[{id:"HrmDepartmentComInfo"}]` |
34
+ | **部门全路径** | **`browser`** | `browserType:[{id:"HrmDepartmentAllPathComInfo"}]` |
35
+ | Checkbox | `checkbox` | — |
36
+ | 选择框 | `select` | `transSelectOptions:[{selectValue,selectName},…]` |
37
+ | 颜色选择框 | `colorSelect` | `transSelectOptions`(`selectName` 常为颜色值) |
38
+ | 分值图标 | `scoreIcon` | `transSelectOptions:[{id:"scoreIconId",selectValue:"1",selectName:"<最大分>"}]` |
39
+ | 斜线文字 | `slashWord` | `transSelectOptions:[{id:"slashWordId",selectValue:"slashWord",selectName:"TopLeftDownRight"|"DownLeftTopRight"}]`;文案最多 3 段,半角 `;` 分隔 |
40
+ | 关联类型 | `browser` | 弹窗写入 `browserType`(如 `{module,type}` / ComInfo id,**以实际请求为准**) |
41
+ | 图片 | `picture` | — |
42
+
43
+ > Java 仍兼容遗留 `hrm` / `dept` / `subcom` / `fill`,**新写禁止**用遗留值;人员/部门一律走 `browser`+ComInfo。
44
+
45
+ ### 1.2 双写示例(人员)
46
+
47
+ ```json
48
+ {
49
+ "transType": "browser",
50
+ "browserType": [{ "id": "HrmEmployeeComInfo" }],
51
+ "isHtml": "0",
52
+ "qrcodeType": "no",
53
+ "prefixAndSuffix": ["", ""],
54
+ "hiddenContext": "0",
55
+ "textDirection": "FromLeftToRight"
56
+ }
57
+ ```
58
+
59
+ `fields[].browserType` / `transSelectOptions` / `prefixAndSuffix` 在 DB 侧常为 **JSON 字符串**;workbook `cellType` 侧为数组。
60
+
61
+ ---
62
+
63
+ ## 二、HTML转换 · `isHtml`
64
+
65
+ | UI | 值 |
66
+ |----|-----|
67
+ | 否 | `"0"` |
68
+ | 是 | `"1"` |
69
+
70
+ 为 `"1"` 时运行时按 HTML 处理/剥离(见 `AnalysisParams`)。**不是** `transType=html`。
71
+
72
+ ---
73
+
74
+ ## 三、前缀 / 后缀 · `prefixAndSuffix`
75
+
76
+ ```json
77
+ "prefixAndSuffix": ["前缀文本", "后缀文本"]
78
+ ```
79
+
80
+ 默认 `["",""]`。重建 workbook 时禁止丢掉该键。
81
+
82
+ ---
83
+
84
+ ## 四、条码 · `qrcodeType`
85
+
86
+ | UI | 值 |
87
+ |----|-----|
88
+ | 无 | `no` |
89
+ | 条码 | `barcode` |
90
+ | 二维码 | `qrcode` |
91
+
92
+ 二维码可选:`qrcodelink` = `"1"` / `"0"`(是否包含移动端地址)。**不是** `transType`。
93
+
94
+ ---
95
+
96
+ ## 五、隐藏内容 · `hiddenContext`
97
+
98
+ | UI | 值 |
99
+ |----|-----|
100
+ | 否 | `"0"` |
101
+ | 是 | `"1"` |
102
+
103
+ 键名是 **`hiddenContext`**(Context,不是 Content)。与「显示方式」`displayType` **无关**。
104
+
105
+ ---
106
+
107
+ ## 六、文字方向 · `textDirection`
108
+
109
+ | UI | 值 |
110
+ |----|-----|
111
+ | 从左向右 | `FromLeftToRight`(默认) |
112
+ | 从右向左 | `FromRightToLeft` |
113
+ | 竖排 | `VerticalArrangement` |
114
+ | 顺时针旋转 90° | `CW` |
115
+ | 逆时针旋转 90° | `CCW` |
116
+
117
+ ---
118
+
119
+ ## 七、Agent / CLI
120
+
121
+ ```bash
122
+ e10-cli report validate transform --map "人员"
123
+ e10-cli report validate transform --map "部门全路径"
124
+ e10-cli report validate transform --map "二维码"
125
+ e10-cli report validate transform --file cell-transform.json
126
+ e10-cli report validate transform --list
127
+ ```
128
+
129
+ 定点改转换时:改 `fields[]` 对应键 → `safe_report_save` / `fieldToCell` 透传到 workbook → 回读核对。
130
+
131
+ ---
132
+
133
+ ## 八、禁令
134
+
135
+ - 禁止 `transType=person|department|image|html|barcode|hidden`
136
+ - 禁止人员/部门只写 `transType=hrm|dept`(遗留)
137
+ - 禁止重建 workbook 时丢掉转换键
138
+ - 禁止把「隐藏内容」当成「显示方式=不显示」
139
+
140
+ ---
141
+
142
+ ## 关联
143
+
144
+ - `cell-config-echo-guide.md` — 数字格式 / 日期分组 / 字体
145
+ - `report-designer-feature-map.md` — 右侧面板总览
146
+ - `report-data-model.md` §八 — 已废弃错误表,以本文为准
147
+ - `safe_report_save.js` — `fieldToCell` 透传
@@ -0,0 +1,140 @@
1
+ # 条件格式(突出显示 / 数据条 / 图标集)
2
+
3
+ > **源码**:`ReportUtil.generateConditionRule`(`weaver-edc-common-report-analysis`)
4
+ > **UI**:设计器「开始 → 条件格式」
5
+ > **落库唯一有效点**:`fields[].conditionRule` / workbook `style.cellType.conditionRule`
6
+ > 结构:`{ highlightDatas, lineDatas, iconDatas }`(**不是** sheet 级 `conditionalFormats`,后者不持久化)
7
+ > **禁黑盒**:禁止下载 SpreadJS / 设计器 chunk 循环试探;见 `session-build-performance-guide.md`
8
+
9
+ ---
10
+
11
+ ## 〇、性能与交付(强制)
12
+
13
+ 1. 写入前用 CLI 映射/校验,**禁止**反复保存探结构
14
+ 2. 布局已落库 → **先交设计器地址**,条件格式校验可后置补丁
15
+ 3. 映射不到 → **提示用户确认**,不要开逆向循环
16
+
17
+ ---
18
+
19
+ ## 一、硬约束(突出显示)
20
+
21
+ 1. **只写平台已识别的 `relation`**。未知值(如 `highlight:between`)会被引擎**静默跳过**。
22
+ 2. **区间必须用一条 `highlight:interval`**;禁止拆成两条 `greater`+`less` 冒充 AND(多规则是 OR)。
23
+ 3. **配置前先映射再写入**;映射不到或冲突 → **提示用户确认**。
24
+
25
+ ---
26
+
27
+ ## 二、突出显示 `relation` 白名单
28
+
29
+ | 中文 | `relation` | value |
30
+ |------|------------|-------|
31
+ | 大于 | `highlight:greater` | value1 |
32
+ | 大于等于 | `highlight:greaterAndEquals` | value1 |
33
+ | 小于 | `highlight:less` | value1 |
34
+ | 小于等于 | `highlight:lessAndEquals` | value1 |
35
+ | 等于 | `highlight:equals` | value1 |
36
+ | 不等于 | `highlight:noEquals` | value1 |
37
+ | **介于** | **`highlight:interval`** | value1=下界,value2=上界 |
38
+ | 文本包含 | `highlight:include` | value1 |
39
+ | 发生日期 | `highlight:happenDate` | value1 |
40
+ | 重复值 | `highlight:sameValue` | — |
41
+
42
+ **禁止**:`highlight:between` → 改 `interval`;缩写 `gt/lte` 等。
43
+
44
+ ### 自然语言 → 突出显示
45
+
46
+ | 说法 | 映射 |
47
+ |------|------|
48
+ | 大于 N | `greater` |
49
+ | 介于 1 和 5 / 1–5 | **一条** `interval` |
50
+ | 文本包含 xx | `include` |
51
+
52
+ 多档示例:「>0 红;>5 蓝」→ `interval(1,5)` 红 + `greater(5)` 蓝粗。
53
+
54
+ ---
55
+
56
+ ## 三、数据条(lineDatas)
57
+
58
+ 落库:**`lineDatas`**(引擎 `ruleType=databar`)。
59
+
60
+ ```json
61
+ {
62
+ "lineDatas": [
63
+ {
64
+ "index": 0,
65
+ "leftType": "min",
66
+ "leftValue": "",
67
+ "rightType": "max",
68
+ "rightValue": "",
69
+ "gradient": "gradient",
70
+ "color": "#6495ED",
71
+ "negativeFillColor": "#FF0000"
72
+ }
73
+ ]
74
+ }
75
+ ```
76
+
77
+ | 字段 | 取值 |
78
+ |------|------|
79
+ | `leftType`/`rightType` | `min`/`max`/`custom` |
80
+ | `gradient` | `gradient`(渐变)\| `solid`(实心) |
81
+ | `color` / `negativeFillColor` | 正/负色 |
82
+
83
+ CLI:`e10-cli report validate condition --map "数据条"` / `--map "实心数据条"`
84
+
85
+ ---
86
+
87
+ ## 四、图标集(iconDatas)
88
+
89
+ 落库:**`iconDatas`**(引擎 `ruleType=iconset`;UI 文案偶写 iconSets,JSON **必须** `iconDatas`)。
90
+
91
+ ```json
92
+ {
93
+ "iconDatas": [
94
+ {
95
+ "index": 0,
96
+ "iconSetType": "0",
97
+ "iconCriteria": [
98
+ { "iconValue": "67", "isGreaterThanOrEqualTo": true, "iconValueType": 1 },
99
+ { "iconValue": "33", "isGreaterThanOrEqualTo": true, "iconValueType": 1 }
100
+ ]
101
+ }
102
+ ]
103
+ }
104
+ ```
105
+
106
+ | 字段 | 说明 |
107
+ |------|------|
108
+ | `iconSetType` | **字符串**;常用 `"0"`/`"1"`/`"2"`/`"3"`(方向/形状/标记/等级类) |
109
+ | `iconCriteria` | 分档阈值 |
110
+
111
+ CLI:`e10-cli report validate condition --map "图标集"`
112
+
113
+ ---
114
+
115
+ ## 五、不支持 / 冲突
116
+
117
+ 映射不到 → 明确告知并请用户确认;禁止静默、禁止黑盒下载。
118
+ 多条 greater 样式不同 → 提示重叠冲突,建议 interval + greater。
119
+
120
+ ---
121
+
122
+ ## 六、写入清单
123
+
124
+ 1. `conditionRule = { highlightDatas?, lineDatas?, iconDatas? }` → fields + workbook cellType
125
+ 2. save 成功 → **先交设计器 URL**
126
+ 3. 可选 `verify condition` 后置
127
+
128
+ ---
129
+
130
+ ## 七、CLI
131
+
132
+ ```bash
133
+ e10-cli report validate condition --file rule.json
134
+ e10-cli report validate condition --map "介于 1 5"
135
+ e10-cli report validate condition --map "数据条"
136
+ e10-cli report validate condition --map "图标集"
137
+ e10-cli report verify condition <reportId> [appId]
138
+ ```
139
+
140
+ 脚本:`e10-cli report verify condition`。