opclawtm 1.4.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 (350) hide show
  1. package/README.md +136 -0
  2. package/dist/bin/team-manager.d.ts +6 -0
  3. package/dist/bin/team-manager.d.ts.map +1 -0
  4. package/dist/bin/team-manager.js +36 -0
  5. package/dist/bin/team-manager.js.map +1 -0
  6. package/dist/bin/team-setup.d.ts +7 -0
  7. package/dist/bin/team-setup.d.ts.map +1 -0
  8. package/dist/bin/team-setup.js +66 -0
  9. package/dist/bin/team-setup.js.map +1 -0
  10. package/dist/bin/team-uninstall.d.ts +6 -0
  11. package/dist/bin/team-uninstall.d.ts.map +1 -0
  12. package/dist/bin/team-uninstall.js +91 -0
  13. package/dist/bin/team-uninstall.js.map +1 -0
  14. package/dist/cli/commands/agent.command.d.ts +43 -0
  15. package/dist/cli/commands/agent.command.d.ts.map +1 -0
  16. package/dist/cli/commands/agent.command.js +223 -0
  17. package/dist/cli/commands/agent.command.js.map +1 -0
  18. package/dist/cli/commands/checklist.command.d.ts +35 -0
  19. package/dist/cli/commands/checklist.command.d.ts.map +1 -0
  20. package/dist/cli/commands/checklist.command.js +77 -0
  21. package/dist/cli/commands/checklist.command.js.map +1 -0
  22. package/dist/cli/commands/dept.command.d.ts +32 -0
  23. package/dist/cli/commands/dept.command.d.ts.map +1 -0
  24. package/dist/cli/commands/dept.command.js +92 -0
  25. package/dist/cli/commands/dept.command.js.map +1 -0
  26. package/dist/cli/commands/document.command.d.ts +37 -0
  27. package/dist/cli/commands/document.command.d.ts.map +1 -0
  28. package/dist/cli/commands/document.command.js +146 -0
  29. package/dist/cli/commands/document.command.js.map +1 -0
  30. package/dist/cli/commands/domain.command.d.ts +36 -0
  31. package/dist/cli/commands/domain.command.d.ts.map +1 -0
  32. package/dist/cli/commands/domain.command.js +97 -0
  33. package/dist/cli/commands/domain.command.js.map +1 -0
  34. package/dist/cli/commands/feishu.command.d.ts +63 -0
  35. package/dist/cli/commands/feishu.command.d.ts.map +1 -0
  36. package/dist/cli/commands/feishu.command.js +433 -0
  37. package/dist/cli/commands/feishu.command.js.map +1 -0
  38. package/dist/cli/commands/job.command.d.ts +39 -0
  39. package/dist/cli/commands/job.command.d.ts.map +1 -0
  40. package/dist/cli/commands/job.command.js +168 -0
  41. package/dist/cli/commands/job.command.js.map +1 -0
  42. package/dist/cli/commands/license.command.d.ts +22 -0
  43. package/dist/cli/commands/license.command.d.ts.map +1 -0
  44. package/dist/cli/commands/license.command.js +68 -0
  45. package/dist/cli/commands/license.command.js.map +1 -0
  46. package/dist/cli/commands/message-failure.command.d.ts +44 -0
  47. package/dist/cli/commands/message-failure.command.d.ts.map +1 -0
  48. package/dist/cli/commands/message-failure.command.js +137 -0
  49. package/dist/cli/commands/message-failure.command.js.map +1 -0
  50. package/dist/cli/commands/message.command.d.ts +47 -0
  51. package/dist/cli/commands/message.command.d.ts.map +1 -0
  52. package/dist/cli/commands/message.command.js +129 -0
  53. package/dist/cli/commands/message.command.js.map +1 -0
  54. package/dist/cli/commands/node.command.d.ts +76 -0
  55. package/dist/cli/commands/node.command.d.ts.map +1 -0
  56. package/dist/cli/commands/node.command.js +251 -0
  57. package/dist/cli/commands/node.command.js.map +1 -0
  58. package/dist/cli/commands/role-flow.command.d.ts +12 -0
  59. package/dist/cli/commands/role-flow.command.d.ts.map +1 -0
  60. package/dist/cli/commands/role-flow.command.js +54 -0
  61. package/dist/cli/commands/role-flow.command.js.map +1 -0
  62. package/dist/cli/commands/skill-pack.command.d.ts +41 -0
  63. package/dist/cli/commands/skill-pack.command.d.ts.map +1 -0
  64. package/dist/cli/commands/skill-pack.command.js +137 -0
  65. package/dist/cli/commands/skill-pack.command.js.map +1 -0
  66. package/dist/cli/commands/status.command.d.ts +8 -0
  67. package/dist/cli/commands/status.command.d.ts.map +1 -0
  68. package/dist/cli/commands/status.command.js +61 -0
  69. package/dist/cli/commands/status.command.js.map +1 -0
  70. package/dist/cli/commands/task.command.d.ts +105 -0
  71. package/dist/cli/commands/task.command.d.ts.map +1 -0
  72. package/dist/cli/commands/task.command.js +402 -0
  73. package/dist/cli/commands/task.command.js.map +1 -0
  74. package/dist/cli/commands/user.command.d.ts +43 -0
  75. package/dist/cli/commands/user.command.d.ts.map +1 -0
  76. package/dist/cli/commands/user.command.js +134 -0
  77. package/dist/cli/commands/user.command.js.map +1 -0
  78. package/dist/cli/index.d.ts +7 -0
  79. package/dist/cli/index.d.ts.map +1 -0
  80. package/dist/cli/index.js +863 -0
  81. package/dist/cli/index.js.map +1 -0
  82. package/dist/cli/tui/index.d.ts +45 -0
  83. package/dist/cli/tui/index.d.ts.map +1 -0
  84. package/dist/cli/tui/index.js +470 -0
  85. package/dist/cli/tui/index.js.map +1 -0
  86. package/dist/cli/tui/menus/agent-manage.menu.d.ts +8 -0
  87. package/dist/cli/tui/menus/agent-manage.menu.d.ts.map +1 -0
  88. package/dist/cli/tui/menus/agent-manage.menu.js +614 -0
  89. package/dist/cli/tui/menus/agent-manage.menu.js.map +1 -0
  90. package/dist/cli/tui/menus/dept-manage.menu.d.ts +8 -0
  91. package/dist/cli/tui/menus/dept-manage.menu.d.ts.map +1 -0
  92. package/dist/cli/tui/menus/dept-manage.menu.js +299 -0
  93. package/dist/cli/tui/menus/dept-manage.menu.js.map +1 -0
  94. package/dist/cli/tui/menus/domain-manage.menu.d.ts +8 -0
  95. package/dist/cli/tui/menus/domain-manage.menu.d.ts.map +1 -0
  96. package/dist/cli/tui/menus/domain-manage.menu.js +208 -0
  97. package/dist/cli/tui/menus/domain-manage.menu.js.map +1 -0
  98. package/dist/cli/tui/menus/feishu.menu.d.ts +8 -0
  99. package/dist/cli/tui/menus/feishu.menu.d.ts.map +1 -0
  100. package/dist/cli/tui/menus/feishu.menu.js +1727 -0
  101. package/dist/cli/tui/menus/feishu.menu.js.map +1 -0
  102. package/dist/cli/tui/menus/job-manage.menu.d.ts +16 -0
  103. package/dist/cli/tui/menus/job-manage.menu.d.ts.map +1 -0
  104. package/dist/cli/tui/menus/job-manage.menu.js +734 -0
  105. package/dist/cli/tui/menus/job-manage.menu.js.map +1 -0
  106. package/dist/cli/tui/menus/license.menu.d.ts +12 -0
  107. package/dist/cli/tui/menus/license.menu.d.ts.map +1 -0
  108. package/dist/cli/tui/menus/license.menu.js +164 -0
  109. package/dist/cli/tui/menus/license.menu.js.map +1 -0
  110. package/dist/cli/tui/menus/main.menu.d.ts +10 -0
  111. package/dist/cli/tui/menus/main.menu.d.ts.map +1 -0
  112. package/dist/cli/tui/menus/main.menu.js +94 -0
  113. package/dist/cli/tui/menus/main.menu.js.map +1 -0
  114. package/dist/cli/tui/menus/reset.menu.d.ts +10 -0
  115. package/dist/cli/tui/menus/reset.menu.d.ts.map +1 -0
  116. package/dist/cli/tui/menus/reset.menu.js +767 -0
  117. package/dist/cli/tui/menus/reset.menu.js.map +1 -0
  118. package/dist/cli/tui/menus/status.menu.d.ts +8 -0
  119. package/dist/cli/tui/menus/status.menu.d.ts.map +1 -0
  120. package/dist/cli/tui/menus/status.menu.js +123 -0
  121. package/dist/cli/tui/menus/status.menu.js.map +1 -0
  122. package/dist/cli/tui/menus/task-manage.menu.d.ts +11 -0
  123. package/dist/cli/tui/menus/task-manage.menu.d.ts.map +1 -0
  124. package/dist/cli/tui/menus/task-manage.menu.js +129 -0
  125. package/dist/cli/tui/menus/task-manage.menu.js.map +1 -0
  126. package/dist/cli/tui/menus/team-create.menu.d.ts +8 -0
  127. package/dist/cli/tui/menus/team-create.menu.d.ts.map +1 -0
  128. package/dist/cli/tui/menus/team-create.menu.js +353 -0
  129. package/dist/cli/tui/menus/team-create.menu.js.map +1 -0
  130. package/dist/config.d.ts +9 -0
  131. package/dist/config.d.ts.map +1 -0
  132. package/dist/config.js +74 -0
  133. package/dist/config.js.map +1 -0
  134. package/dist/core/auth/index.d.ts +6 -0
  135. package/dist/core/auth/index.d.ts.map +1 -0
  136. package/dist/core/auth/index.js +22 -0
  137. package/dist/core/auth/index.js.map +1 -0
  138. package/dist/core/auth/middleware.d.ts +73 -0
  139. package/dist/core/auth/middleware.d.ts.map +1 -0
  140. package/dist/core/auth/middleware.js +456 -0
  141. package/dist/core/auth/middleware.js.map +1 -0
  142. package/dist/core/auth/storage.d.ts +38 -0
  143. package/dist/core/auth/storage.d.ts.map +1 -0
  144. package/dist/core/auth/storage.js +280 -0
  145. package/dist/core/auth/storage.js.map +1 -0
  146. package/dist/core/keys/public.pem +9 -0
  147. package/dist/core/models/types.d.ts +426 -0
  148. package/dist/core/models/types.d.ts.map +1 -0
  149. package/dist/core/models/types.js +9 -0
  150. package/dist/core/models/types.js.map +1 -0
  151. package/dist/core/services/agent-template.service.d.ts +49 -0
  152. package/dist/core/services/agent-template.service.d.ts.map +1 -0
  153. package/dist/core/services/agent-template.service.js +88 -0
  154. package/dist/core/services/agent-template.service.js.map +1 -0
  155. package/dist/core/services/agent.service.d.ts +120 -0
  156. package/dist/core/services/agent.service.d.ts.map +1 -0
  157. package/dist/core/services/agent.service.js +381 -0
  158. package/dist/core/services/agent.service.js.map +1 -0
  159. package/dist/core/services/auth-profiles.service.d.ts +93 -0
  160. package/dist/core/services/auth-profiles.service.d.ts.map +1 -0
  161. package/dist/core/services/auth-profiles.service.js +220 -0
  162. package/dist/core/services/auth-profiles.service.js.map +1 -0
  163. package/dist/core/services/checklist.service.d.ts +58 -0
  164. package/dist/core/services/checklist.service.d.ts.map +1 -0
  165. package/dist/core/services/checklist.service.js +240 -0
  166. package/dist/core/services/checklist.service.js.map +1 -0
  167. package/dist/core/services/config-tracker.service.d.ts +119 -0
  168. package/dist/core/services/config-tracker.service.d.ts.map +1 -0
  169. package/dist/core/services/config-tracker.service.js +1093 -0
  170. package/dist/core/services/config-tracker.service.js.map +1 -0
  171. package/dist/core/services/crypto.service.d.ts +102 -0
  172. package/dist/core/services/crypto.service.d.ts.map +1 -0
  173. package/dist/core/services/crypto.service.js +377 -0
  174. package/dist/core/services/crypto.service.js.map +1 -0
  175. package/dist/core/services/dept.service.d.ts +92 -0
  176. package/dist/core/services/dept.service.d.ts.map +1 -0
  177. package/dist/core/services/dept.service.js +260 -0
  178. package/dist/core/services/dept.service.js.map +1 -0
  179. package/dist/core/services/document.service.d.ts +131 -0
  180. package/dist/core/services/document.service.d.ts.map +1 -0
  181. package/dist/core/services/document.service.js +368 -0
  182. package/dist/core/services/document.service.js.map +1 -0
  183. package/dist/core/services/domain.service.d.ts +50 -0
  184. package/dist/core/services/domain.service.d.ts.map +1 -0
  185. package/dist/core/services/domain.service.js +98 -0
  186. package/dist/core/services/domain.service.js.map +1 -0
  187. package/dist/core/services/feishu.service.d.ts +124 -0
  188. package/dist/core/services/feishu.service.d.ts.map +1 -0
  189. package/dist/core/services/feishu.service.js +165 -0
  190. package/dist/core/services/feishu.service.js.map +1 -0
  191. package/dist/core/services/index.d.ts +27 -0
  192. package/dist/core/services/index.d.ts.map +1 -0
  193. package/dist/core/services/index.js +89 -0
  194. package/dist/core/services/index.js.map +1 -0
  195. package/dist/core/services/job.service.d.ts +60 -0
  196. package/dist/core/services/job.service.d.ts.map +1 -0
  197. package/dist/core/services/job.service.js +190 -0
  198. package/dist/core/services/job.service.js.map +1 -0
  199. package/dist/core/services/log.service.d.ts +111 -0
  200. package/dist/core/services/log.service.d.ts.map +1 -0
  201. package/dist/core/services/log.service.js +237 -0
  202. package/dist/core/services/log.service.js.map +1 -0
  203. package/dist/core/services/message-failure.service.d.ts +65 -0
  204. package/dist/core/services/message-failure.service.d.ts.map +1 -0
  205. package/dist/core/services/message-failure.service.js +112 -0
  206. package/dist/core/services/message-failure.service.js.map +1 -0
  207. package/dist/core/services/message.service.d.ts +122 -0
  208. package/dist/core/services/message.service.d.ts.map +1 -0
  209. package/dist/core/services/message.service.js +374 -0
  210. package/dist/core/services/message.service.js.map +1 -0
  211. package/dist/core/services/node.service.d.ts +150 -0
  212. package/dist/core/services/node.service.d.ts.map +1 -0
  213. package/dist/core/services/node.service.js +257 -0
  214. package/dist/core/services/node.service.js.map +1 -0
  215. package/dist/core/services/openclaw-config.service.d.ts +187 -0
  216. package/dist/core/services/openclaw-config.service.d.ts.map +1 -0
  217. package/dist/core/services/openclaw-config.service.js +268 -0
  218. package/dist/core/services/openclaw-config.service.js.map +1 -0
  219. package/dist/core/services/preset-loader.service.d.ts +80 -0
  220. package/dist/core/services/preset-loader.service.d.ts.map +1 -0
  221. package/dist/core/services/preset-loader.service.js +379 -0
  222. package/dist/core/services/preset-loader.service.js.map +1 -0
  223. package/dist/core/services/role-flow.service.d.ts +21 -0
  224. package/dist/core/services/role-flow.service.d.ts.map +1 -0
  225. package/dist/core/services/role-flow.service.js +47 -0
  226. package/dist/core/services/role-flow.service.js.map +1 -0
  227. package/dist/core/services/setup.service.d.ts +46 -0
  228. package/dist/core/services/setup.service.d.ts.map +1 -0
  229. package/dist/core/services/setup.service.js +336 -0
  230. package/dist/core/services/setup.service.js.map +1 -0
  231. package/dist/core/services/skill-pack.service.d.ts +56 -0
  232. package/dist/core/services/skill-pack.service.d.ts.map +1 -0
  233. package/dist/core/services/skill-pack.service.js +113 -0
  234. package/dist/core/services/skill-pack.service.js.map +1 -0
  235. package/dist/core/services/task.service.d.ts +177 -0
  236. package/dist/core/services/task.service.d.ts.map +1 -0
  237. package/dist/core/services/task.service.js +397 -0
  238. package/dist/core/services/task.service.js.map +1 -0
  239. package/dist/core/services/template.service.d.ts +51 -0
  240. package/dist/core/services/template.service.d.ts.map +1 -0
  241. package/dist/core/services/template.service.js +88 -0
  242. package/dist/core/services/template.service.js.map +1 -0
  243. package/dist/core/services/user.service.d.ts +50 -0
  244. package/dist/core/services/user.service.d.ts.map +1 -0
  245. package/dist/core/services/user.service.js +111 -0
  246. package/dist/core/services/user.service.js.map +1 -0
  247. package/dist/core/utils/agent-guide-generator.d.ts +38 -0
  248. package/dist/core/utils/agent-guide-generator.d.ts.map +1 -0
  249. package/dist/core/utils/agent-guide-generator.js +187 -0
  250. package/dist/core/utils/agent-guide-generator.js.map +1 -0
  251. package/dist/core/utils/credentials-cleanup.d.ts +81 -0
  252. package/dist/core/utils/credentials-cleanup.d.ts.map +1 -0
  253. package/dist/core/utils/credentials-cleanup.js +256 -0
  254. package/dist/core/utils/credentials-cleanup.js.map +1 -0
  255. package/dist/core/utils/index.d.ts +215 -0
  256. package/dist/core/utils/index.d.ts.map +1 -0
  257. package/dist/core/utils/index.js +462 -0
  258. package/dist/core/utils/index.js.map +1 -0
  259. package/dist/core/utils/openclaw-helper.d.ts +250 -0
  260. package/dist/core/utils/openclaw-helper.d.ts.map +1 -0
  261. package/dist/core/utils/openclaw-helper.js +1629 -0
  262. package/dist/core/utils/openclaw-helper.js.map +1 -0
  263. package/dist/core/utils/template-generator.d.ts +67 -0
  264. package/dist/core/utils/template-generator.d.ts.map +1 -0
  265. package/dist/core/utils/template-generator.js +170 -0
  266. package/dist/core/utils/template-generator.js.map +1 -0
  267. package/dist/db/index.d.ts +54 -0
  268. package/dist/db/index.d.ts.map +1 -0
  269. package/dist/db/index.js +403 -0
  270. package/dist/db/index.js.map +1 -0
  271. package/dist/db/repositories/agent-template.repo.d.ts +47 -0
  272. package/dist/db/repositories/agent-template.repo.d.ts.map +1 -0
  273. package/dist/db/repositories/agent-template.repo.js +108 -0
  274. package/dist/db/repositories/agent-template.repo.js.map +1 -0
  275. package/dist/db/repositories/agent.repo.d.ts +64 -0
  276. package/dist/db/repositories/agent.repo.d.ts.map +1 -0
  277. package/dist/db/repositories/agent.repo.js +103 -0
  278. package/dist/db/repositories/agent.repo.js.map +1 -0
  279. package/dist/db/repositories/base.repository.d.ts +51 -0
  280. package/dist/db/repositories/base.repository.d.ts.map +1 -0
  281. package/dist/db/repositories/base.repository.js +107 -0
  282. package/dist/db/repositories/base.repository.js.map +1 -0
  283. package/dist/db/repositories/company.repo.d.ts +18 -0
  284. package/dist/db/repositories/company.repo.d.ts.map +1 -0
  285. package/dist/db/repositories/company.repo.js +33 -0
  286. package/dist/db/repositories/company.repo.js.map +1 -0
  287. package/dist/db/repositories/config-change.repo.d.ts +65 -0
  288. package/dist/db/repositories/config-change.repo.d.ts.map +1 -0
  289. package/dist/db/repositories/config-change.repo.js +119 -0
  290. package/dist/db/repositories/config-change.repo.js.map +1 -0
  291. package/dist/db/repositories/dept.repo.d.ts +37 -0
  292. package/dist/db/repositories/dept.repo.d.ts.map +1 -0
  293. package/dist/db/repositories/dept.repo.js +66 -0
  294. package/dist/db/repositories/dept.repo.js.map +1 -0
  295. package/dist/db/repositories/document.repo.d.ts +25 -0
  296. package/dist/db/repositories/document.repo.d.ts.map +1 -0
  297. package/dist/db/repositories/document.repo.js +51 -0
  298. package/dist/db/repositories/document.repo.js.map +1 -0
  299. package/dist/db/repositories/domain.repo.d.ts +42 -0
  300. package/dist/db/repositories/domain.repo.d.ts.map +1 -0
  301. package/dist/db/repositories/domain.repo.js +79 -0
  302. package/dist/db/repositories/domain.repo.js.map +1 -0
  303. package/dist/db/repositories/index.d.ts +24 -0
  304. package/dist/db/repositories/index.d.ts.map +1 -0
  305. package/dist/db/repositories/index.js +81 -0
  306. package/dist/db/repositories/index.js.map +1 -0
  307. package/dist/db/repositories/init-session.repo.d.ts +38 -0
  308. package/dist/db/repositories/init-session.repo.d.ts.map +1 -0
  309. package/dist/db/repositories/init-session.repo.js +112 -0
  310. package/dist/db/repositories/init-session.repo.js.map +1 -0
  311. package/dist/db/repositories/job.repo.d.ts +54 -0
  312. package/dist/db/repositories/job.repo.d.ts.map +1 -0
  313. package/dist/db/repositories/job.repo.js +119 -0
  314. package/dist/db/repositories/job.repo.js.map +1 -0
  315. package/dist/db/repositories/message-failure.repo.d.ts +92 -0
  316. package/dist/db/repositories/message-failure.repo.d.ts.map +1 -0
  317. package/dist/db/repositories/message-failure.repo.js +141 -0
  318. package/dist/db/repositories/message-failure.repo.js.map +1 -0
  319. package/dist/db/repositories/message-log.repo.d.ts +36 -0
  320. package/dist/db/repositories/message-log.repo.d.ts.map +1 -0
  321. package/dist/db/repositories/message-log.repo.js +64 -0
  322. package/dist/db/repositories/message-log.repo.js.map +1 -0
  323. package/dist/db/repositories/node.repo.d.ts +107 -0
  324. package/dist/db/repositories/node.repo.d.ts.map +1 -0
  325. package/dist/db/repositories/node.repo.js +276 -0
  326. package/dist/db/repositories/node.repo.js.map +1 -0
  327. package/dist/db/repositories/role-flow.repo.d.ts +43 -0
  328. package/dist/db/repositories/role-flow.repo.d.ts.map +1 -0
  329. package/dist/db/repositories/role-flow.repo.js +83 -0
  330. package/dist/db/repositories/role-flow.repo.js.map +1 -0
  331. package/dist/db/repositories/skill-pack.repo.d.ts +45 -0
  332. package/dist/db/repositories/skill-pack.repo.d.ts.map +1 -0
  333. package/dist/db/repositories/skill-pack.repo.js +149 -0
  334. package/dist/db/repositories/skill-pack.repo.js.map +1 -0
  335. package/dist/db/repositories/task.repo.d.ts +168 -0
  336. package/dist/db/repositories/task.repo.d.ts.map +1 -0
  337. package/dist/db/repositories/task.repo.js +381 -0
  338. package/dist/db/repositories/task.repo.js.map +1 -0
  339. package/dist/db/repositories/template.repo.d.ts +40 -0
  340. package/dist/db/repositories/template.repo.d.ts.map +1 -0
  341. package/dist/db/repositories/template.repo.js +66 -0
  342. package/dist/db/repositories/template.repo.js.map +1 -0
  343. package/dist/db/repositories/user.repo.d.ts +46 -0
  344. package/dist/db/repositories/user.repo.d.ts.map +1 -0
  345. package/dist/db/repositories/user.repo.js +75 -0
  346. package/dist/db/repositories/user.repo.js.map +1 -0
  347. package/dist/db/schema.sql +364 -0
  348. package/package.json +90 -0
  349. package/resources/preset-data-hash.enc +1 -0
  350. package/resources/preset-data.enc +1 -0
@@ -0,0 +1,165 @@
1
+ "use strict";
2
+ /**
3
+ * Feishu Integration Service
4
+ *
5
+ * Provides Feishu group notifications, message pushing and other features
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.feishuService = void 0;
9
+ exports.generateTextMessage = generateTextMessage;
10
+ exports.generatePostMessage = generatePostMessage;
11
+ exports.generateTaskAssignedMessage = generateTaskAssignedMessage;
12
+ exports.generateNodeCompletedMessage = generateNodeCompletedMessage;
13
+ exports.generateReviewRequestMessage = generateReviewRequestMessage;
14
+ exports.generateTaskCompletedMessage = generateTaskCompletedMessage;
15
+ exports.generateTimeoutWarningMessage = generateTimeoutWarningMessage;
16
+ exports.getDepartmentFeishuGroup = getDepartmentFeishuGroup;
17
+ exports.getAgentFeishuBot = getAgentFeishuBot;
18
+ exports.buildWebhookUrl = buildWebhookUrl;
19
+ exports.sendMessage = sendMessage;
20
+ const agent_repo_1 = require("../../db/repositories/agent.repo");
21
+ const dept_repo_1 = require("../../db/repositories/dept.repo");
22
+ /**
23
+ * Generate text message
24
+ */
25
+ function generateTextMessage(text) {
26
+ return {
27
+ msg_type: 'text',
28
+ content: { text }
29
+ };
30
+ }
31
+ /**
32
+ * Generate rich text message
33
+ */
34
+ function generatePostMessage(title, content) {
35
+ return {
36
+ msg_type: 'post',
37
+ content: {
38
+ post: {
39
+ zh_cn: {
40
+ title,
41
+ content
42
+ }
43
+ }
44
+ }
45
+ };
46
+ }
47
+ /**
48
+ * Generate task assigned notification message
49
+ */
50
+ function generateTaskAssignedMessage(params) {
51
+ return generatePostMessage('📋 新任务分配', [
52
+ [{ tag: 'text', text: '任务ID: ' }, { tag: 'text', text: params.task_id }],
53
+ [{ tag: 'text', text: '标题: ' }, { tag: 'text', text: params.title }],
54
+ [{ tag: 'text', text: '负责人: ' }, { tag: 'text', text: params.manager_name }],
55
+ [{ tag: 'text', text: '优先级: ' }, { tag: 'text', text: params.priority || 'medium' }]
56
+ ]);
57
+ }
58
+ /**
59
+ * Generate node completed notification message
60
+ */
61
+ function generateNodeCompletedMessage(params) {
62
+ return generatePostMessage('✅ 节点完成', [
63
+ [{ tag: 'text', text: '任务ID: ' }, { tag: 'text', text: params.task_id }],
64
+ [{ tag: 'text', text: '节点: ' }, { tag: 'text', text: params.node_name }],
65
+ [{ tag: 'text', text: '执行者: ' }, { tag: 'text', text: params.executor_name }]
66
+ ]);
67
+ }
68
+ /**
69
+ * Generate review request notification message
70
+ */
71
+ function generateReviewRequestMessage(params) {
72
+ return generatePostMessage('🔍 审核请求', [
73
+ [{ tag: 'text', text: '任务ID: ' }, { tag: 'text', text: params.task_id }],
74
+ [{ tag: 'text', text: '节点: ' }, { tag: 'text', text: params.node_name }],
75
+ [{ tag: 'text', text: '执行者: ' }, { tag: 'text', text: params.executor_name }],
76
+ [{ tag: 'text', text: '\n请及时审核执行成果。' }]
77
+ ]);
78
+ }
79
+ /**
80
+ * Generate task completed notification message
81
+ */
82
+ function generateTaskCompletedMessage(params) {
83
+ return generatePostMessage('🎉 任务完成', [
84
+ [{ tag: 'text', text: '任务ID: ' }, { tag: 'text', text: params.task_id }],
85
+ [{ tag: 'text', text: '标题: ' }, { tag: 'text', text: params.title }],
86
+ [{ tag: 'text', text: '摘要: ' }, { tag: 'text', text: params.summary || '无' }]
87
+ ]);
88
+ }
89
+ /**
90
+ * Generate timeout warning message
91
+ */
92
+ function generateTimeoutWarningMessage(params) {
93
+ return generatePostMessage('⚠️ 节点超时警告', [
94
+ [{ tag: 'text', text: '任务ID: ' }, { tag: 'text', text: params.task_id }],
95
+ [{ tag: 'text', text: '节点: ' }, { tag: 'text', text: params.node_name }],
96
+ [{ tag: 'text', text: '执行者: ' }, { tag: 'text', text: params.executor_name }],
97
+ [{ tag: 'text', text: '超时: ' }, { tag: 'text', text: `${params.overdue_hours}小时` }],
98
+ [{ tag: 'text', text: '\n请及时处理或升级。' }]
99
+ ]);
100
+ }
101
+ /**
102
+ * Get department's Feishu group ID
103
+ */
104
+ function getDepartmentFeishuGroup(departmentId) {
105
+ const dept = dept_repo_1.departmentRepository.findById(departmentId);
106
+ return dept?.feishu_group_id || null;
107
+ }
108
+ /**
109
+ * Get agent's Feishu bot ID
110
+ */
111
+ function getAgentFeishuBot(agentId) {
112
+ const agent = agent_repo_1.agentRepository.findById(agentId);
113
+ return agent?.feishu_bot_id || null;
114
+ }
115
+ /**
116
+ * Build Feishu Webhook URL
117
+ */
118
+ function buildWebhookUrl(webhookKey) {
119
+ return `https://open.feishu.cn/open-apis/bot/v2/hook/${webhookKey}`;
120
+ }
121
+ /**
122
+ * Send Feishu message
123
+ *
124
+ * @param webhookUrl Feishu Webhook URL
125
+ * @param message Feishu message object
126
+ * @returns Send result
127
+ *
128
+ * @example
129
+ * // Agent calls via OpenClaw example:
130
+ * const webhookUrl = feishuService.buildWebhookUrl(webhookKey);
131
+ * const message = feishuService.generateTaskAssignedMessage({...});
132
+ * const result = await feishuService.sendMessage(webhookUrl, message);
133
+ */
134
+ async function sendMessage(webhookUrl, message) {
135
+ try {
136
+ const response = await fetch(webhookUrl, {
137
+ method: 'POST',
138
+ headers: { 'Content-Type': 'application/json' },
139
+ body: JSON.stringify(message)
140
+ });
141
+ const result = await response.json();
142
+ // Feishu API returns statusCode === 0 for success
143
+ return { success: result.statusCode === 0 };
144
+ }
145
+ catch (error) {
146
+ return { success: false, error: String(error) };
147
+ }
148
+ }
149
+ /**
150
+ * Feishu integration service
151
+ */
152
+ exports.feishuService = {
153
+ generateTextMessage,
154
+ generatePostMessage,
155
+ generateTaskAssignedMessage,
156
+ generateNodeCompletedMessage,
157
+ generateReviewRequestMessage,
158
+ generateTaskCompletedMessage,
159
+ generateTimeoutWarningMessage,
160
+ getDepartmentFeishuGroup,
161
+ getAgentFeishuBot,
162
+ buildWebhookUrl,
163
+ sendMessage
164
+ };
165
+ //# sourceMappingURL=feishu.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feishu.service.js","sourceRoot":"","sources":["../../../src/core/services/feishu.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Service Exports
3
+ */
4
+ export { UserService, userService } from './user.service';
5
+ export { MessageFailureService, messageFailureService } from './message-failure.service';
6
+ export { setupService } from './setup.service';
7
+ export { DeptService, deptService } from './dept.service';
8
+ export { AgentService, agentService } from './agent.service';
9
+ export { JobService, jobService } from './job.service';
10
+ export { SkillPackService, skillPackService } from './skill-pack.service';
11
+ export { feishuService } from './feishu.service';
12
+ export { OpenClawConfigManager, openClawConfigManager } from './openclaw-config.service';
13
+ export type { AgentConfig, BindingConfig, OpenClawConfig } from './openclaw-config.service';
14
+ export * from './auth-profiles.service';
15
+ export { DomainService, domainService } from './domain.service';
16
+ export * from './crypto.service';
17
+ export { TaskService, taskService } from './task.service';
18
+ export { NodeService, nodeService } from './node.service';
19
+ export { MessageService, messageService } from './message.service';
20
+ export { TemplateService, templateService } from './template.service';
21
+ export { AgentTemplateService, agentTemplateService } from './agent-template.service';
22
+ export { RoleFlowService, roleFlowService } from './role-flow.service';
23
+ export * from './preset-loader.service';
24
+ export { DocumentService, documentService } from './document.service';
25
+ export { LogService, logService } from './log.service';
26
+ export type { LogEntry } from './log.service';
27
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/services/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG1D,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAGzF,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AACzF,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAG5F,cAAc,yBAAyB,CAAC;AAGxC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGhE,cAAc,kBAAkB,CAAC;AAGjC,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG1D,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGnE,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACtF,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAGvE,cAAc,yBAAyB,CAAC;AAGxC,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGtE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACvD,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ /**
3
+ * Service Exports
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
17
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.logService = exports.LogService = exports.documentService = exports.DocumentService = exports.roleFlowService = exports.RoleFlowService = exports.agentTemplateService = exports.AgentTemplateService = exports.templateService = exports.TemplateService = exports.messageService = exports.MessageService = exports.nodeService = exports.NodeService = exports.taskService = exports.TaskService = exports.domainService = exports.DomainService = exports.openClawConfigManager = exports.OpenClawConfigManager = exports.feishuService = exports.skillPackService = exports.SkillPackService = exports.jobService = exports.JobService = exports.agentService = exports.AgentService = exports.deptService = exports.DeptService = exports.setupService = exports.messageFailureService = exports.MessageFailureService = exports.userService = exports.UserService = void 0;
21
+ // User service (v1.1.5)
22
+ var user_service_1 = require("./user.service");
23
+ Object.defineProperty(exports, "UserService", { enumerable: true, get: function () { return user_service_1.UserService; } });
24
+ Object.defineProperty(exports, "userService", { enumerable: true, get: function () { return user_service_1.userService; } });
25
+ // Message Failure service (v1.1.5)
26
+ var message_failure_service_1 = require("./message-failure.service");
27
+ Object.defineProperty(exports, "MessageFailureService", { enumerable: true, get: function () { return message_failure_service_1.MessageFailureService; } });
28
+ Object.defineProperty(exports, "messageFailureService", { enumerable: true, get: function () { return message_failure_service_1.messageFailureService; } });
29
+ // Core services
30
+ var setup_service_1 = require("./setup.service");
31
+ Object.defineProperty(exports, "setupService", { enumerable: true, get: function () { return setup_service_1.setupService; } });
32
+ var dept_service_1 = require("./dept.service");
33
+ Object.defineProperty(exports, "DeptService", { enumerable: true, get: function () { return dept_service_1.DeptService; } });
34
+ Object.defineProperty(exports, "deptService", { enumerable: true, get: function () { return dept_service_1.deptService; } });
35
+ var agent_service_1 = require("./agent.service");
36
+ Object.defineProperty(exports, "AgentService", { enumerable: true, get: function () { return agent_service_1.AgentService; } });
37
+ Object.defineProperty(exports, "agentService", { enumerable: true, get: function () { return agent_service_1.agentService; } });
38
+ var job_service_1 = require("./job.service");
39
+ Object.defineProperty(exports, "JobService", { enumerable: true, get: function () { return job_service_1.JobService; } });
40
+ Object.defineProperty(exports, "jobService", { enumerable: true, get: function () { return job_service_1.jobService; } });
41
+ var skill_pack_service_1 = require("./skill-pack.service");
42
+ Object.defineProperty(exports, "SkillPackService", { enumerable: true, get: function () { return skill_pack_service_1.SkillPackService; } });
43
+ Object.defineProperty(exports, "skillPackService", { enumerable: true, get: function () { return skill_pack_service_1.skillPackService; } });
44
+ var feishu_service_1 = require("./feishu.service");
45
+ Object.defineProperty(exports, "feishuService", { enumerable: true, get: function () { return feishu_service_1.feishuService; } });
46
+ // OpenClaw config related services
47
+ var openclaw_config_service_1 = require("./openclaw-config.service");
48
+ Object.defineProperty(exports, "OpenClawConfigManager", { enumerable: true, get: function () { return openclaw_config_service_1.OpenClawConfigManager; } });
49
+ Object.defineProperty(exports, "openClawConfigManager", { enumerable: true, get: function () { return openclaw_config_service_1.openClawConfigManager; } });
50
+ // Auth Profiles related services
51
+ __exportStar(require("./auth-profiles.service"), exports);
52
+ // Domain service (v1.0.0 - P0)
53
+ var domain_service_1 = require("./domain.service");
54
+ Object.defineProperty(exports, "DomainService", { enumerable: true, get: function () { return domain_service_1.DomainService; } });
55
+ Object.defineProperty(exports, "domainService", { enumerable: true, get: function () { return domain_service_1.domainService; } });
56
+ // Crypto service (v1.0.0 - P0)
57
+ __exportStar(require("./crypto.service"), exports);
58
+ // Task management services (v1.0.0 - P1)
59
+ var task_service_1 = require("./task.service");
60
+ Object.defineProperty(exports, "TaskService", { enumerable: true, get: function () { return task_service_1.TaskService; } });
61
+ Object.defineProperty(exports, "taskService", { enumerable: true, get: function () { return task_service_1.taskService; } });
62
+ var node_service_1 = require("./node.service");
63
+ Object.defineProperty(exports, "NodeService", { enumerable: true, get: function () { return node_service_1.NodeService; } });
64
+ Object.defineProperty(exports, "nodeService", { enumerable: true, get: function () { return node_service_1.nodeService; } });
65
+ // Message service (v1.0.0 - P1)
66
+ var message_service_1 = require("./message.service");
67
+ Object.defineProperty(exports, "MessageService", { enumerable: true, get: function () { return message_service_1.MessageService; } });
68
+ Object.defineProperty(exports, "messageService", { enumerable: true, get: function () { return message_service_1.messageService; } });
69
+ // Template services (v1.0.0 - P2)
70
+ var template_service_1 = require("./template.service");
71
+ Object.defineProperty(exports, "TemplateService", { enumerable: true, get: function () { return template_service_1.TemplateService; } });
72
+ Object.defineProperty(exports, "templateService", { enumerable: true, get: function () { return template_service_1.templateService; } });
73
+ var agent_template_service_1 = require("./agent-template.service");
74
+ Object.defineProperty(exports, "AgentTemplateService", { enumerable: true, get: function () { return agent_template_service_1.AgentTemplateService; } });
75
+ Object.defineProperty(exports, "agentTemplateService", { enumerable: true, get: function () { return agent_template_service_1.agentTemplateService; } });
76
+ var role_flow_service_1 = require("./role-flow.service");
77
+ Object.defineProperty(exports, "RoleFlowService", { enumerable: true, get: function () { return role_flow_service_1.RoleFlowService; } });
78
+ Object.defineProperty(exports, "roleFlowService", { enumerable: true, get: function () { return role_flow_service_1.roleFlowService; } });
79
+ // Preset loader (v1.0.0 - P1)
80
+ __exportStar(require("./preset-loader.service"), exports);
81
+ // Document service (v1.0.1)
82
+ var document_service_1 = require("./document.service");
83
+ Object.defineProperty(exports, "DocumentService", { enumerable: true, get: function () { return document_service_1.DocumentService; } });
84
+ Object.defineProperty(exports, "documentService", { enumerable: true, get: function () { return document_service_1.documentService; } });
85
+ // Log service (v1.1.4)
86
+ var log_service_1 = require("./log.service");
87
+ Object.defineProperty(exports, "LogService", { enumerable: true, get: function () { return log_service_1.LogService; } });
88
+ Object.defineProperty(exports, "logService", { enumerable: true, get: function () { return log_service_1.logService; } });
89
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/services/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;AAEH,wBAAwB;AACxB,+CAA0D;AAAjD,2GAAA,WAAW,OAAA;AAAE,2GAAA,WAAW,OAAA;AAEjC,mCAAmC;AACnC,qEAAyF;AAAhF,gIAAA,qBAAqB,OAAA;AAAE,gIAAA,qBAAqB,OAAA;AAErD,gBAAgB;AAChB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,+CAA0D;AAAjD,2GAAA,WAAW,OAAA;AAAE,2GAAA,WAAW,OAAA;AACjC,iDAA6D;AAApD,6GAAA,YAAY,OAAA;AAAE,6GAAA,YAAY,OAAA;AACnC,6CAAuD;AAA9C,yGAAA,UAAU,OAAA;AAAE,yGAAA,UAAU,OAAA;AAC/B,2DAA0E;AAAjE,sHAAA,gBAAgB,OAAA;AAAE,sHAAA,gBAAgB,OAAA;AAC3C,mDAAiD;AAAxC,+GAAA,aAAa,OAAA;AAEtB,mCAAmC;AACnC,qEAAyF;AAAhF,gIAAA,qBAAqB,OAAA;AAAE,gIAAA,qBAAqB,OAAA;AAGrD,iCAAiC;AACjC,0DAAwC;AAExC,+BAA+B;AAC/B,mDAAgE;AAAvD,+GAAA,aAAa,OAAA;AAAE,+GAAA,aAAa,OAAA;AAErC,+BAA+B;AAC/B,mDAAiC;AAEjC,yCAAyC;AACzC,+CAA0D;AAAjD,2GAAA,WAAW,OAAA;AAAE,2GAAA,WAAW,OAAA;AACjC,+CAA0D;AAAjD,2GAAA,WAAW,OAAA;AAAE,2GAAA,WAAW,OAAA;AAEjC,gCAAgC;AAChC,qDAAmE;AAA1D,iHAAA,cAAc,OAAA;AAAE,iHAAA,cAAc,OAAA;AAEvC,kCAAkC;AAClC,uDAAsE;AAA7D,mHAAA,eAAe,OAAA;AAAE,mHAAA,eAAe,OAAA;AACzC,mEAAsF;AAA7E,8HAAA,oBAAoB,OAAA;AAAE,8HAAA,oBAAoB,OAAA;AACnD,yDAAuE;AAA9D,oHAAA,eAAe,OAAA;AAAE,oHAAA,eAAe,OAAA;AAEzC,8BAA8B;AAC9B,0DAAwC;AAExC,4BAA4B;AAC5B,uDAAsE;AAA7D,mHAAA,eAAe,OAAA;AAAE,mHAAA,eAAe,OAAA;AAEzC,uBAAuB;AACvB,6CAAuD;AAA9C,yGAAA,UAAU,OAAA;AAAE,yGAAA,UAAU,OAAA"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * 职业服务
3
+ */
4
+ import { Job } from '../models/types';
5
+ export declare class JobService {
6
+ /**
7
+ * 创建职业
8
+ */
9
+ create(data: {
10
+ id?: string;
11
+ name: string;
12
+ domain_id?: string;
13
+ skill_pack_ids?: string[];
14
+ is_preset?: number;
15
+ }): {
16
+ success: boolean;
17
+ job?: Job;
18
+ message: string;
19
+ };
20
+ /**
21
+ * 获取职业(自动解密预置数据)
22
+ */
23
+ getById(id: string): Job | undefined;
24
+ /**
25
+ * 列出所有职业(自动解密预置数据)
26
+ */
27
+ listAll(): Job[];
28
+ /**
29
+ * 根据领域获取职业列表
30
+ */
31
+ listByDomain(domainId: string): Job[];
32
+ /**
33
+ * 更新职业(只能更新用户自定义职业)
34
+ */
35
+ update(id: string, data: {
36
+ name?: string;
37
+ domain_id?: string;
38
+ skill_pack_ids?: string[];
39
+ }): {
40
+ success: boolean;
41
+ message: string;
42
+ };
43
+ /**
44
+ * 删除职业(只能删除用户自定义职业)
45
+ */
46
+ delete(id: string): {
47
+ success: boolean;
48
+ message: string;
49
+ };
50
+ /**
51
+ * 获取职业关联的技能包ID列表(自动解密)
52
+ */
53
+ getSkillPackIds(jobId: string): string[];
54
+ /**
55
+ * 检查是否可以修改
56
+ */
57
+ canModify(id: string): boolean;
58
+ }
59
+ export declare const jobService: JobService;
60
+ //# sourceMappingURL=job.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"job.service.d.ts","sourceRoot":"","sources":["../../../src/core/services/job.service.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAItC,qBAAa,UAAU;IACrB;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE;QACX,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;QAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GAAG;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,GAAG,CAAC,EAAE,GAAG,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;IAiBpD;;OAEG;IACH,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,GAAG,GAAG,SAAS;IAsCpC;;OAEG;IACH,OAAO,IAAI,GAAG,EAAE;IAqChB;;OAEG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG,EAAE;IA8BrC;;OAEG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;IAejI;;OAEG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;IAezD;;OAEG;IACH,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE;IAWxC;;OAEG;IACH,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;CAG/B;AAED,eAAO,MAAM,UAAU,YAAmB,CAAC"}
@@ -0,0 +1,190 @@
1
+ "use strict";
2
+ /**
3
+ * 职业服务
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.jobService = exports.JobService = void 0;
7
+ const job_repo_1 = require("../../db/repositories/job.repo");
8
+ const utils_1 = require("../utils");
9
+ const crypto_service_1 = require("./crypto.service");
10
+ class JobService {
11
+ /**
12
+ * 创建职业
13
+ */
14
+ create(data) {
15
+ try {
16
+ const jobId = data.id || (0, utils_1.generateJobId)();
17
+ // 用户创建的职业,skill_pack_ids 存储为 JSON 字符串(不加密)
18
+ const job = job_repo_1.jobRepository.create({
19
+ id: jobId,
20
+ name: data.name,
21
+ domain_id: data.domain_id || null,
22
+ skill_pack_ids: data.skill_pack_ids ? JSON.stringify(data.skill_pack_ids) : null,
23
+ is_preset: data.is_preset ?? 0
24
+ });
25
+ return { success: true, job, message: '职业创建成功' };
26
+ }
27
+ catch (error) {
28
+ return { success: false, message: `创建失败: ${error instanceof Error ? error.message : String(error)}` };
29
+ }
30
+ }
31
+ /**
32
+ * 获取职业(自动解密预置数据)
33
+ */
34
+ getById(id) {
35
+ const job = job_repo_1.jobRepository.findById(id);
36
+ if (!job)
37
+ return undefined;
38
+ // 如果是预置数据,解密 name 和 skill_pack_ids
39
+ if (job.is_preset === 1) {
40
+ let decryptedName = job.name;
41
+ let decryptedSkillPackIds = job.skill_pack_ids;
42
+ // 解密名称
43
+ if (job.name && (0, crypto_service_1.isEncrypted)(job.name)) {
44
+ try {
45
+ decryptedName = (0, crypto_service_1.decryptSync)(job.name);
46
+ }
47
+ catch {
48
+ // 解密失败,保留原值
49
+ }
50
+ }
51
+ // 解密技能包ID列表
52
+ if (job.skill_pack_ids && (0, crypto_service_1.isEncrypted)(job.skill_pack_ids)) {
53
+ try {
54
+ const decrypted = (0, crypto_service_1.decryptSync)(job.skill_pack_ids);
55
+ decryptedSkillPackIds = decrypted;
56
+ }
57
+ catch {
58
+ // 解密失败,保留原值
59
+ }
60
+ }
61
+ return {
62
+ ...job,
63
+ name: decryptedName,
64
+ skill_pack_ids: decryptedSkillPackIds
65
+ };
66
+ }
67
+ return job;
68
+ }
69
+ /**
70
+ * 列出所有职业(自动解密预置数据)
71
+ */
72
+ listAll() {
73
+ const jobs = job_repo_1.jobRepository.findAll();
74
+ return jobs.map(job => {
75
+ if (job.is_preset === 1) {
76
+ let decryptedName = job.name;
77
+ let decryptedSkillPackIds = job.skill_pack_ids;
78
+ // 解密名称
79
+ if (job.name && (0, crypto_service_1.isEncrypted)(job.name)) {
80
+ try {
81
+ decryptedName = (0, crypto_service_1.decryptSync)(job.name);
82
+ }
83
+ catch {
84
+ // 解密失败,保留原值
85
+ }
86
+ }
87
+ // 解密技能包ID列表
88
+ if (job.skill_pack_ids && (0, crypto_service_1.isEncrypted)(job.skill_pack_ids)) {
89
+ try {
90
+ const decrypted = (0, crypto_service_1.decryptSync)(job.skill_pack_ids);
91
+ decryptedSkillPackIds = decrypted;
92
+ }
93
+ catch {
94
+ // 解密失败,保留原值
95
+ }
96
+ }
97
+ return {
98
+ ...job,
99
+ name: decryptedName,
100
+ skill_pack_ids: decryptedSkillPackIds
101
+ };
102
+ }
103
+ return job;
104
+ });
105
+ }
106
+ /**
107
+ * 根据领域获取职业列表
108
+ */
109
+ listByDomain(domainId) {
110
+ const jobs = job_repo_1.jobRepository.findByDomain(domainId);
111
+ return jobs.map(job => {
112
+ if (job.is_preset === 1) {
113
+ let decryptedName = job.name;
114
+ let decryptedSkillPackIds = job.skill_pack_ids;
115
+ if (job.name && (0, crypto_service_1.isEncrypted)(job.name)) {
116
+ try {
117
+ decryptedName = (0, crypto_service_1.decryptSync)(job.name);
118
+ }
119
+ catch { }
120
+ }
121
+ if (job.skill_pack_ids && (0, crypto_service_1.isEncrypted)(job.skill_pack_ids)) {
122
+ try {
123
+ decryptedSkillPackIds = (0, crypto_service_1.decryptSync)(job.skill_pack_ids);
124
+ }
125
+ catch { }
126
+ }
127
+ return {
128
+ ...job,
129
+ name: decryptedName,
130
+ skill_pack_ids: decryptedSkillPackIds
131
+ };
132
+ }
133
+ return job;
134
+ });
135
+ }
136
+ /**
137
+ * 更新职业(只能更新用户自定义职业)
138
+ */
139
+ update(id, data) {
140
+ // 检查是否为预置数据
141
+ if (job_repo_1.jobRepository.isPreset(id)) {
142
+ return { success: false, message: '预置职业不允许修改' };
143
+ }
144
+ // 用户自定义职业,skill_pack_ids 存储为 JSON 字符串
145
+ job_repo_1.jobRepository.updateJob(id, {
146
+ name: data.name,
147
+ domain_id: data.domain_id,
148
+ skill_pack_ids: data.skill_pack_ids ? JSON.stringify(data.skill_pack_ids) : null
149
+ });
150
+ return { success: true, message: '职业更新成功' };
151
+ }
152
+ /**
153
+ * 删除职业(只能删除用户自定义职业)
154
+ */
155
+ delete(id) {
156
+ // 检查是否为预置数据
157
+ if (job_repo_1.jobRepository.isPreset(id)) {
158
+ return { success: false, message: '预置职业不允许删除' };
159
+ }
160
+ const job = job_repo_1.jobRepository.findById(id);
161
+ if (!job) {
162
+ return { success: false, message: '职业不存在' };
163
+ }
164
+ job_repo_1.jobRepository.delete(id);
165
+ return { success: true, message: '职业已删除' };
166
+ }
167
+ /**
168
+ * 获取职业关联的技能包ID列表(自动解密)
169
+ */
170
+ getSkillPackIds(jobId) {
171
+ const job = this.getById(jobId);
172
+ if (!job || !job.skill_pack_ids)
173
+ return [];
174
+ try {
175
+ return JSON.parse(job.skill_pack_ids);
176
+ }
177
+ catch {
178
+ return [];
179
+ }
180
+ }
181
+ /**
182
+ * 检查是否可以修改
183
+ */
184
+ canModify(id) {
185
+ return !job_repo_1.jobRepository.isPreset(id);
186
+ }
187
+ }
188
+ exports.JobService = JobService;
189
+ exports.jobService = new JobService();
190
+ //# sourceMappingURL=job.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"job.service.js","sourceRoot":"","sources":["../../../src/core/services/job.service.ts"],"names":[],"mappings":"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"}