@newpeak/barista-cli 0.1.9 → 0.1.10

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 (294) hide show
  1. package/dist/commands/liberica/index.d.ts.map +1 -1
  2. package/dist/commands/liberica/index.js +7 -0
  3. package/dist/commands/liberica/index.js.map +1 -1
  4. package/dist/commands/liberica/teams/index.d.ts +3 -0
  5. package/dist/commands/liberica/teams/index.d.ts.map +1 -0
  6. package/dist/commands/liberica/teams/index.js +15 -0
  7. package/dist/commands/liberica/teams/index.js.map +1 -0
  8. package/dist/commands/liberica/teams/issues/close.d.ts +3 -0
  9. package/dist/commands/liberica/teams/issues/close.d.ts.map +1 -0
  10. package/dist/commands/liberica/teams/issues/close.js +99 -0
  11. package/dist/commands/liberica/teams/issues/close.js.map +1 -0
  12. package/dist/commands/liberica/teams/issues/create.d.ts +3 -0
  13. package/dist/commands/liberica/teams/issues/create.d.ts.map +1 -0
  14. package/dist/commands/liberica/teams/issues/create.js +255 -0
  15. package/dist/commands/liberica/teams/issues/create.js.map +1 -0
  16. package/dist/commands/liberica/teams/issues/delete.d.ts +3 -0
  17. package/dist/commands/liberica/teams/issues/delete.d.ts.map +1 -0
  18. package/dist/commands/liberica/teams/issues/delete.js +55 -0
  19. package/dist/commands/liberica/teams/issues/delete.js.map +1 -0
  20. package/dist/commands/liberica/teams/issues/get.d.ts +3 -0
  21. package/dist/commands/liberica/teams/issues/get.d.ts.map +1 -0
  22. package/dist/commands/liberica/teams/issues/get.js +68 -0
  23. package/dist/commands/liberica/teams/issues/get.js.map +1 -0
  24. package/dist/commands/liberica/teams/issues/index.d.ts +3 -0
  25. package/dist/commands/liberica/teams/issues/index.d.ts.map +1 -0
  26. package/dist/commands/liberica/teams/issues/index.js +19 -0
  27. package/dist/commands/liberica/teams/issues/index.js.map +1 -0
  28. package/dist/commands/liberica/teams/issues/list.d.ts +3 -0
  29. package/dist/commands/liberica/teams/issues/list.d.ts.map +1 -0
  30. package/dist/commands/liberica/teams/issues/list.js +111 -0
  31. package/dist/commands/liberica/teams/issues/list.js.map +1 -0
  32. package/dist/commands/liberica/teams/issues/update.d.ts +3 -0
  33. package/dist/commands/liberica/teams/issues/update.d.ts.map +1 -0
  34. package/dist/commands/liberica/teams/issues/update.js +132 -0
  35. package/dist/commands/liberica/teams/issues/update.js.map +1 -0
  36. package/dist/commands/liberica/teams/projects/create.d.ts +3 -0
  37. package/dist/commands/liberica/teams/projects/create.d.ts.map +1 -0
  38. package/dist/commands/liberica/teams/projects/create.js +164 -0
  39. package/dist/commands/liberica/teams/projects/create.js.map +1 -0
  40. package/dist/commands/liberica/teams/projects/delete.d.ts +3 -0
  41. package/dist/commands/liberica/teams/projects/delete.d.ts.map +1 -0
  42. package/dist/commands/liberica/teams/projects/delete.js +55 -0
  43. package/dist/commands/liberica/teams/projects/delete.js.map +1 -0
  44. package/dist/commands/liberica/teams/projects/get.d.ts +3 -0
  45. package/dist/commands/liberica/teams/projects/get.d.ts.map +1 -0
  46. package/dist/commands/liberica/teams/projects/get.js +77 -0
  47. package/dist/commands/liberica/teams/projects/get.js.map +1 -0
  48. package/dist/commands/liberica/teams/projects/index.d.ts +3 -0
  49. package/dist/commands/liberica/teams/projects/index.d.ts.map +1 -0
  50. package/dist/commands/liberica/teams/projects/index.js +17 -0
  51. package/dist/commands/liberica/teams/projects/index.js.map +1 -0
  52. package/dist/commands/liberica/teams/projects/list.d.ts +3 -0
  53. package/dist/commands/liberica/teams/projects/list.d.ts.map +1 -0
  54. package/dist/commands/liberica/teams/projects/list.js +115 -0
  55. package/dist/commands/liberica/teams/projects/list.js.map +1 -0
  56. package/dist/commands/liberica/teams/projects/update.d.ts +3 -0
  57. package/dist/commands/liberica/teams/projects/update.d.ts.map +1 -0
  58. package/dist/commands/liberica/teams/projects/update.js +115 -0
  59. package/dist/commands/liberica/teams/projects/update.js.map +1 -0
  60. package/dist/commands/liberica/teams/tasks/create.d.ts +3 -0
  61. package/dist/commands/liberica/teams/tasks/create.d.ts.map +1 -0
  62. package/dist/commands/liberica/teams/tasks/create.js +88 -0
  63. package/dist/commands/liberica/teams/tasks/create.js.map +1 -0
  64. package/dist/commands/liberica/teams/tasks/delete.d.ts +3 -0
  65. package/dist/commands/liberica/teams/tasks/delete.d.ts.map +1 -0
  66. package/dist/commands/liberica/teams/tasks/delete.js +73 -0
  67. package/dist/commands/liberica/teams/tasks/delete.js.map +1 -0
  68. package/dist/commands/liberica/teams/tasks/get.d.ts +3 -0
  69. package/dist/commands/liberica/teams/tasks/get.d.ts.map +1 -0
  70. package/dist/commands/liberica/teams/tasks/get.js +51 -0
  71. package/dist/commands/liberica/teams/tasks/get.js.map +1 -0
  72. package/dist/commands/liberica/teams/tasks/index.d.ts +3 -0
  73. package/dist/commands/liberica/teams/tasks/index.d.ts.map +1 -0
  74. package/dist/commands/liberica/teams/tasks/index.js +17 -0
  75. package/dist/commands/liberica/teams/tasks/index.js.map +1 -0
  76. package/dist/commands/liberica/teams/tasks/list.d.ts +3 -0
  77. package/dist/commands/liberica/teams/tasks/list.d.ts.map +1 -0
  78. package/dist/commands/liberica/teams/tasks/list.js +82 -0
  79. package/dist/commands/liberica/teams/tasks/list.js.map +1 -0
  80. package/dist/commands/liberica/teams/tasks/update.d.ts +3 -0
  81. package/dist/commands/liberica/teams/tasks/update.d.ts.map +1 -0
  82. package/dist/commands/liberica/teams/tasks/update.js +114 -0
  83. package/dist/commands/liberica/teams/tasks/update.js.map +1 -0
  84. package/dist/commands/liberica/teams/work-logs/create.d.ts +3 -0
  85. package/dist/commands/liberica/teams/work-logs/create.d.ts.map +1 -0
  86. package/dist/commands/liberica/teams/work-logs/create.js +183 -0
  87. package/dist/commands/liberica/teams/work-logs/create.js.map +1 -0
  88. package/dist/commands/liberica/teams/work-logs/delete.d.ts +3 -0
  89. package/dist/commands/liberica/teams/work-logs/delete.d.ts.map +1 -0
  90. package/dist/commands/liberica/teams/work-logs/delete.js +55 -0
  91. package/dist/commands/liberica/teams/work-logs/delete.js.map +1 -0
  92. package/dist/commands/liberica/teams/work-logs/get.d.ts +3 -0
  93. package/dist/commands/liberica/teams/work-logs/get.d.ts.map +1 -0
  94. package/dist/commands/liberica/teams/work-logs/get.js +77 -0
  95. package/dist/commands/liberica/teams/work-logs/get.js.map +1 -0
  96. package/dist/commands/liberica/teams/work-logs/index.d.ts +3 -0
  97. package/dist/commands/liberica/teams/work-logs/index.d.ts.map +1 -0
  98. package/dist/commands/liberica/teams/work-logs/index.js +17 -0
  99. package/dist/commands/liberica/teams/work-logs/index.js.map +1 -0
  100. package/dist/commands/liberica/teams/work-logs/list.d.ts +3 -0
  101. package/dist/commands/liberica/teams/work-logs/list.d.ts.map +1 -0
  102. package/dist/commands/liberica/teams/work-logs/list.js +109 -0
  103. package/dist/commands/liberica/teams/work-logs/list.js.map +1 -0
  104. package/dist/commands/liberica/teams/work-logs/update.d.ts +3 -0
  105. package/dist/commands/liberica/teams/work-logs/update.d.ts.map +1 -0
  106. package/dist/commands/liberica/teams/work-logs/update.js +105 -0
  107. package/dist/commands/liberica/teams/work-logs/update.js.map +1 -0
  108. package/dist/commands/liberica/transfer-in-forms/batch-delete.d.ts +3 -0
  109. package/dist/commands/liberica/transfer-in-forms/batch-delete.d.ts.map +1 -0
  110. package/dist/commands/liberica/transfer-in-forms/batch-delete.js +147 -0
  111. package/dist/commands/liberica/transfer-in-forms/batch-delete.js.map +1 -0
  112. package/dist/commands/liberica/transfer-in-forms/batch-review.d.ts +3 -0
  113. package/dist/commands/liberica/transfer-in-forms/batch-review.d.ts.map +1 -0
  114. package/dist/commands/liberica/transfer-in-forms/batch-review.js +146 -0
  115. package/dist/commands/liberica/transfer-in-forms/batch-review.js.map +1 -0
  116. package/dist/commands/liberica/transfer-in-forms/batch-unreview.d.ts +3 -0
  117. package/dist/commands/liberica/transfer-in-forms/batch-unreview.d.ts.map +1 -0
  118. package/dist/commands/liberica/transfer-in-forms/batch-unreview.js +147 -0
  119. package/dist/commands/liberica/transfer-in-forms/batch-unreview.js.map +1 -0
  120. package/dist/commands/liberica/transfer-in-forms/create.d.ts +3 -0
  121. package/dist/commands/liberica/transfer-in-forms/create.d.ts.map +1 -0
  122. package/dist/commands/liberica/transfer-in-forms/create.js +168 -0
  123. package/dist/commands/liberica/transfer-in-forms/create.js.map +1 -0
  124. package/dist/commands/liberica/transfer-in-forms/get.d.ts +3 -0
  125. package/dist/commands/liberica/transfer-in-forms/get.d.ts.map +1 -0
  126. package/dist/commands/liberica/transfer-in-forms/get.js +94 -0
  127. package/dist/commands/liberica/transfer-in-forms/get.js.map +1 -0
  128. package/dist/commands/liberica/transfer-in-forms/index.d.ts +3 -0
  129. package/dist/commands/liberica/transfer-in-forms/index.d.ts.map +1 -0
  130. package/dist/commands/liberica/transfer-in-forms/index.js +21 -0
  131. package/dist/commands/liberica/transfer-in-forms/index.js.map +1 -0
  132. package/dist/commands/liberica/transfer-in-forms/list.d.ts +3 -0
  133. package/dist/commands/liberica/transfer-in-forms/list.d.ts.map +1 -0
  134. package/dist/commands/liberica/transfer-in-forms/list.js +94 -0
  135. package/dist/commands/liberica/transfer-in-forms/list.js.map +1 -0
  136. package/dist/commands/liberica/transfer-in-forms/update.d.ts +3 -0
  137. package/dist/commands/liberica/transfer-in-forms/update.d.ts.map +1 -0
  138. package/dist/commands/liberica/transfer-in-forms/update.js +206 -0
  139. package/dist/commands/liberica/transfer-in-forms/update.js.map +1 -0
  140. package/dist/commands/liberica/transfer-out-forms/batch-delete.d.ts +3 -0
  141. package/dist/commands/liberica/transfer-out-forms/batch-delete.d.ts.map +1 -0
  142. package/dist/commands/liberica/transfer-out-forms/batch-delete.js +80 -0
  143. package/dist/commands/liberica/transfer-out-forms/batch-delete.js.map +1 -0
  144. package/dist/commands/liberica/transfer-out-forms/batch-review.d.ts +3 -0
  145. package/dist/commands/liberica/transfer-out-forms/batch-review.d.ts.map +1 -0
  146. package/dist/commands/liberica/transfer-out-forms/batch-review.js +142 -0
  147. package/dist/commands/liberica/transfer-out-forms/batch-review.js.map +1 -0
  148. package/dist/commands/liberica/transfer-out-forms/batch-unreview.d.ts +3 -0
  149. package/dist/commands/liberica/transfer-out-forms/batch-unreview.d.ts.map +1 -0
  150. package/dist/commands/liberica/transfer-out-forms/batch-unreview.js +53 -0
  151. package/dist/commands/liberica/transfer-out-forms/batch-unreview.js.map +1 -0
  152. package/dist/commands/liberica/transfer-out-forms/create.d.ts +3 -0
  153. package/dist/commands/liberica/transfer-out-forms/create.d.ts.map +1 -0
  154. package/dist/commands/liberica/transfer-out-forms/create.js +191 -0
  155. package/dist/commands/liberica/transfer-out-forms/create.js.map +1 -0
  156. package/dist/commands/liberica/transfer-out-forms/get.d.ts +3 -0
  157. package/dist/commands/liberica/transfer-out-forms/get.d.ts.map +1 -0
  158. package/dist/commands/liberica/transfer-out-forms/get.js +87 -0
  159. package/dist/commands/liberica/transfer-out-forms/get.js.map +1 -0
  160. package/dist/commands/liberica/transfer-out-forms/index.d.ts +3 -0
  161. package/dist/commands/liberica/transfer-out-forms/index.d.ts.map +1 -0
  162. package/dist/commands/liberica/transfer-out-forms/index.js +21 -0
  163. package/dist/commands/liberica/transfer-out-forms/index.js.map +1 -0
  164. package/dist/commands/liberica/transfer-out-forms/list.d.ts +3 -0
  165. package/dist/commands/liberica/transfer-out-forms/list.d.ts.map +1 -0
  166. package/dist/commands/liberica/transfer-out-forms/list.js +118 -0
  167. package/dist/commands/liberica/transfer-out-forms/list.js.map +1 -0
  168. package/dist/commands/liberica/transfer-out-forms/update.d.ts +3 -0
  169. package/dist/commands/liberica/transfer-out-forms/update.d.ts.map +1 -0
  170. package/dist/commands/liberica/transfer-out-forms/update.js +197 -0
  171. package/dist/commands/liberica/transfer-out-forms/update.js.map +1 -0
  172. package/dist/core/api/client.d.ts +42 -0
  173. package/dist/core/api/client.d.ts.map +1 -1
  174. package/dist/core/api/client.js +798 -0
  175. package/dist/core/api/client.js.map +1 -1
  176. package/dist/index.js +1 -1
  177. package/dist/index.js.map +1 -1
  178. package/dist/types/index.d.ts +5 -0
  179. package/dist/types/index.d.ts.map +1 -1
  180. package/dist/types/index.js +5 -0
  181. package/dist/types/index.js.map +1 -1
  182. package/dist/types/team-issue.d.ts +87 -0
  183. package/dist/types/team-issue.d.ts.map +1 -0
  184. package/dist/types/team-issue.js +2 -0
  185. package/dist/types/team-issue.js.map +1 -0
  186. package/dist/types/team-project.d.ts +68 -0
  187. package/dist/types/team-project.d.ts.map +1 -0
  188. package/dist/types/team-project.js +2 -0
  189. package/dist/types/team-project.js.map +1 -0
  190. package/dist/types/team-task.d.ts +91 -0
  191. package/dist/types/team-task.d.ts.map +1 -0
  192. package/dist/types/team-task.js +2 -0
  193. package/dist/types/team-task.js.map +1 -0
  194. package/dist/types/team-work-log.d.ts +81 -0
  195. package/dist/types/team-work-log.d.ts.map +1 -0
  196. package/dist/types/team-work-log.js +2 -0
  197. package/dist/types/team-work-log.js.map +1 -0
  198. package/dist/types/transfer-in-form.d.ts +242 -0
  199. package/dist/types/transfer-in-form.d.ts.map +1 -0
  200. package/dist/types/transfer-in-form.js +2 -0
  201. package/dist/types/transfer-in-form.js.map +1 -0
  202. package/dist/types/transfer-out-form.d.ts +252 -0
  203. package/dist/types/transfer-out-form.d.ts.map +1 -0
  204. package/dist/types/transfer-out-form.js +4 -0
  205. package/dist/types/transfer-out-form.js.map +1 -0
  206. package/docs/commands/liberica/teams/issues/close.md +161 -0
  207. package/docs/commands/liberica/teams/issues/create.md +212 -0
  208. package/docs/commands/liberica/teams/issues/delete.md +179 -0
  209. package/docs/commands/liberica/teams/issues/get.md +167 -0
  210. package/docs/commands/liberica/teams/issues/list.md +182 -0
  211. package/docs/commands/liberica/teams/issues/tests-design.md +341 -0
  212. package/docs/commands/liberica/teams/issues/update.md +202 -0
  213. package/docs/commands/liberica/teams/projects/create.md +174 -0
  214. package/docs/commands/liberica/teams/projects/delete.md +180 -0
  215. package/docs/commands/liberica/teams/projects/get.md +150 -0
  216. package/docs/commands/liberica/teams/projects/list.md +179 -0
  217. package/docs/commands/liberica/teams/projects/update.md +175 -0
  218. package/docs/commands/liberica/teams/tasks/create.md +163 -0
  219. package/docs/commands/liberica/teams/tasks/delete.md +109 -0
  220. package/docs/commands/liberica/teams/tasks/get.md +121 -0
  221. package/docs/commands/liberica/teams/tasks/list.md +148 -0
  222. package/docs/commands/liberica/teams/tasks/update.md +158 -0
  223. package/docs/commands/liberica/teams/work-logs/create.md +151 -0
  224. package/docs/commands/liberica/teams/work-logs/delete.md +130 -0
  225. package/docs/commands/liberica/teams/work-logs/get.md +131 -0
  226. package/docs/commands/liberica/teams/work-logs/list.md +153 -0
  227. package/docs/commands/liberica/teams/work-logs/update.md +150 -0
  228. package/docs/commands/liberica/transfer-in-forms/batch-delete.md +157 -0
  229. package/docs/commands/liberica/transfer-in-forms/batch-review.md +157 -0
  230. package/docs/commands/liberica/transfer-in-forms/batch-unreview.md +157 -0
  231. package/docs/commands/liberica/transfer-in-forms/create.md +220 -0
  232. package/docs/commands/liberica/transfer-in-forms/get.md +221 -0
  233. package/docs/commands/liberica/transfer-in-forms/list.md +242 -0
  234. package/docs/commands/liberica/transfer-in-forms/update.md +185 -0
  235. package/docs/commands/liberica/transfer-out-forms/batch-delete.md +187 -0
  236. package/docs/commands/liberica/transfer-out-forms/batch-review.md +157 -0
  237. package/docs/commands/liberica/transfer-out-forms/batch-unreview.md +157 -0
  238. package/docs/commands/liberica/transfer-out-forms/create.md +280 -0
  239. package/docs/commands/liberica/transfer-out-forms/get.md +211 -0
  240. package/docs/commands/liberica/transfer-out-forms/list.md +233 -0
  241. package/docs/commands/liberica/transfer-out-forms/update.md +286 -0
  242. package/package.json +1 -1
  243. package/src/commands/liberica/index.ts +8 -1
  244. package/src/commands/liberica/teams/index.ts +17 -0
  245. package/src/commands/liberica/teams/issues/close.ts +104 -0
  246. package/src/commands/liberica/teams/issues/create.ts +254 -0
  247. package/src/commands/liberica/teams/issues/delete.ts +58 -0
  248. package/src/commands/liberica/teams/issues/get.ts +78 -0
  249. package/src/commands/liberica/teams/issues/index.ts +21 -0
  250. package/src/commands/liberica/teams/issues/list.ts +144 -0
  251. package/src/commands/liberica/teams/issues/update.ts +141 -0
  252. package/src/commands/liberica/teams/projects/create.ts +159 -0
  253. package/src/commands/liberica/teams/projects/delete.ts +58 -0
  254. package/src/commands/liberica/teams/projects/get.ts +87 -0
  255. package/src/commands/liberica/teams/projects/index.ts +19 -0
  256. package/src/commands/liberica/teams/projects/list.ts +147 -0
  257. package/src/commands/liberica/teams/projects/update.ts +117 -0
  258. package/src/commands/liberica/teams/tasks/create.ts +102 -0
  259. package/src/commands/liberica/teams/tasks/delete.ts +92 -0
  260. package/src/commands/liberica/teams/tasks/get.ts +64 -0
  261. package/src/commands/liberica/teams/tasks/index.ts +19 -0
  262. package/src/commands/liberica/teams/tasks/list.ts +102 -0
  263. package/src/commands/liberica/teams/tasks/update.ts +122 -0
  264. package/src/commands/liberica/teams/work-logs/create.ts +204 -0
  265. package/src/commands/liberica/teams/work-logs/delete.ts +58 -0
  266. package/src/commands/liberica/teams/work-logs/get.ts +87 -0
  267. package/src/commands/liberica/teams/work-logs/index.ts +19 -0
  268. package/src/commands/liberica/teams/work-logs/list.ts +141 -0
  269. package/src/commands/liberica/teams/work-logs/update.ts +120 -0
  270. package/src/commands/liberica/transfer-in-forms/batch-delete.ts +152 -0
  271. package/src/commands/liberica/transfer-in-forms/batch-review.ts +151 -0
  272. package/src/commands/liberica/transfer-in-forms/batch-unreview.ts +152 -0
  273. package/src/commands/liberica/transfer-in-forms/create.ts +179 -0
  274. package/src/commands/liberica/transfer-in-forms/get.ts +107 -0
  275. package/src/commands/liberica/transfer-in-forms/index.ts +23 -0
  276. package/src/commands/liberica/transfer-in-forms/list.ts +97 -0
  277. package/src/commands/liberica/transfer-in-forms/update.ts +213 -0
  278. package/src/commands/liberica/transfer-out-forms/batch-delete.ts +83 -0
  279. package/src/commands/liberica/transfer-out-forms/batch-review.ts +148 -0
  280. package/src/commands/liberica/transfer-out-forms/batch-unreview.ts +56 -0
  281. package/src/commands/liberica/transfer-out-forms/create.ts +194 -0
  282. package/src/commands/liberica/transfer-out-forms/get.ts +114 -0
  283. package/src/commands/liberica/transfer-out-forms/index.ts +23 -0
  284. package/src/commands/liberica/transfer-out-forms/list.ts +125 -0
  285. package/src/commands/liberica/transfer-out-forms/update.ts +197 -0
  286. package/src/core/api/client.ts +1218 -190
  287. package/src/index.ts +1 -1
  288. package/src/types/index.ts +5 -0
  289. package/src/types/team-issue.ts +94 -0
  290. package/src/types/team-project.ts +74 -0
  291. package/src/types/team-task.ts +98 -0
  292. package/src/types/team-work-log.ts +87 -0
  293. package/src/types/transfer-in-form.ts +265 -0
  294. package/src/types/transfer-out-form.ts +290 -0
@@ -0,0 +1,174 @@
1
+ # barista liberica teams projects create
2
+
3
+ 创建团队项目。
4
+
5
+ ## 2.1 命令元数据
6
+
7
+ | 字段 | 值 |
8
+ |------|-----|
9
+ | 完整命令 | `barista liberica teams projects create` |
10
+ | 功能描述 | 创建新的团队项目 |
11
+ | HTTP方法 | POST |
12
+ | 是否需要认证 | ✅ 是 |
13
+ | 是否支持dry-run | ✅ 是 |
14
+
15
+ ## 2.2 后端接口引用
16
+
17
+ ### Controller位置
18
+ ```
19
+ coffee-liberica-end/
20
+ └── facade/liberica-facade-enterprise/
21
+ └── src/main/java/com/newpeak/liberica/facade/enterprise/controller/team/
22
+ └── EnterpriseTeamProjectController.java
23
+ └── add(@PostResource(path = "/add", requiredPermission = true, requirePermissionCode = TeamProjectPermissionConstants.ADD_TEAM_PROJECT))
24
+ └── public ResponseData<TeamProjectResponse> add(
25
+ @RequestHeader("X-TENANT-ID") Long tenantId,
26
+ @RequestBody @Validated(BaseRequest.add.class) TeamProjectRequest teamProjectRequest
27
+ )
28
+ ```
29
+
30
+ ### Request DTO位置
31
+ ```
32
+ coffee-liberica-end/
33
+ └── business/liberica-business-team/team-api/
34
+ └── src/main/java/com/newpeak/liberica/team/api/pojo/request/
35
+ └── TeamProjectRequest.java
36
+ ├── projectCode: String (@NotBlank, max=50)
37
+ ├── projectName: String (@NotBlank, max=200)
38
+ ├── parentProjectId: Long
39
+ ├── projectLevel: Integer
40
+ ├── projectDesc: String
41
+ ├── teamProjectStatus: String (max=20)
42
+ └── tenantId: Long
43
+ ```
44
+
45
+ ### Response DTO位置
46
+ ```
47
+ coffee-liberica-end/
48
+ └── business/liberica-business-team/team-api/
49
+ └── src/main/java/com/newpeak/liberica/team/api/pojo/response/
50
+ └── TeamProjectResponse.java
51
+ ├── teamProjectId: Long
52
+ ├── projectCode: String
53
+ ├── projectName: String
54
+ ├── parentProjectId: Long
55
+ ├── projectLevel: Integer
56
+ ├── projectDesc: String
57
+ ├── teamProjectStatus: String
58
+ ├── createTime: String
59
+ └── updateTime: String
60
+ ```
61
+
62
+ ## 2.3 CLI参数设计
63
+
64
+ ### 命令结构
65
+ ```
66
+ barista liberica teams projects create [options]
67
+ ```
68
+
69
+ ### Usage
70
+ ```bash
71
+ barista liberica teams projects create --name "示例项目" --code "P001"
72
+ ```
73
+
74
+ ### 全局选项
75
+ | 选项 | 类型 | 说明 |
76
+ |------|------|------|
77
+ | `--env` | string | 目标环境(dev\|test\|prod-cn\|prod-jp) |
78
+ | `--tenant` | string | 租户代码 |
79
+ | `--dry-run` | boolean | 预览模式(不实际调用API) |
80
+ | `--json` | boolean | JSON输出 |
81
+
82
+ ### 命令选项
83
+ | 选项 | 短选项 | 类型 | 必填 | 默认值 | 说明 | 对应DTO字段 |
84
+ |------|--------|------|------|--------|------|-------------|
85
+ | --name | -n | string | ✅ | - | 项目名称 | projectName |
86
+ | --code | -c | string | ✅ | - | 项目代号 | projectCode |
87
+ | --desc | -d | string | ⬜ | - | 项目描述 | projectDesc |
88
+ | --status | -s | string | ⬜ | ACTIVE | 项目状态 | teamProjectStatus |
89
+ | --parent-id | — | string | ⬜ | - | 父项目ID | parentProjectId |
90
+ | --level | -l | number | ⬜ | 1 | 项目级别 | projectLevel |
91
+ | --json | -j | boolean | ⬜ | false | JSON格式输出 | - |
92
+
93
+ ## 2.4 字段映射表
94
+
95
+ | CLI参数 | DTO字段 | 类型转换 | 验证规则 |
96
+ |---------|---------|----------|----------|
97
+ | --name / -n | projectName | 直接传递 | @NotBlank, max=200 |
98
+ | --code / -c | projectCode | 直接传递 | @NotBlank, max=50 |
99
+ | --desc / -d | projectDesc | 直接传递 | - |
100
+ | --status / -s | teamProjectStatus | 直接传递 | max=20 |
101
+ | --parent-id | parentProjectId | string→Long | - |
102
+ | --level / -l | projectLevel | number→Integer | - |
103
+
104
+ **自动填充字段(不通过CLI参数):**
105
+ | 字段 | 来源 |
106
+ |------|------|
107
+ | tenantId | 后端从 X-TENANT-ID header 注入 |
108
+
109
+ ## 2.5 错误码引用
110
+
111
+ ### ExceptionEnum位置
112
+ ```
113
+ coffee-liberica-end/
114
+ └── business/liberica-business-team/team-api/
115
+ └── src/main/java/com/newpeak/liberica/team/api/exception/enums/
116
+ └── TeamProjectExceptionEnum.java
117
+ └── TEAM_PROJECT_NOT_EXIST("01001957001", "团队项目不存在")
118
+ ```
119
+
120
+ ### 已知错误码
121
+ | 错误码 | 错误消息 | 触发条件 |
122
+ |--------|----------|----------|
123
+ | 01001957001 | 团队项目不存在 | copy/edit 时引用的原项目不存在 |
124
+
125
+ ## 2.6 权限检查
126
+
127
+ | 检查项 | 位置 | 说明 |
128
+ |--------|------|------|
129
+ | PermissionConstants | `TeamProjectPermissionConstants.ADD_TEAM_PROJECT` | Controller层 `@PostResource(requirePermissionCode = "ADD_TEAM_PROJECT")` |
130
+
131
+ ## 2.7 实现要点
132
+
133
+ 1. **必填字段**:`--name`、`--code` 必须提供
134
+ 2. **默认值**:`--status` 默认 `ACTIVE`,`--level` 默认 `1`
135
+ 3. **Dry-run 支持**:使用 `--dry-run` 时构造请求体但不发送,显示预览信息
136
+ 4. **tenantId 来源**:来自 X-TENANT-ID header,不通过请求体传递
137
+ 5. **无 X-TENANT-ID Header**:CLI 不手动添加该 header,租户信息由后端从 JWT 中提取
138
+ 6. **ID 类型处理**:`parentProjectId` 后端使用 Long (BigInteger),CLI 使用 string 避免精度丢失
139
+
140
+ ## 2.8 示例用法
141
+
142
+ ```bash
143
+ # 最小参数创建
144
+ barista liberica teams projects create \
145
+ --name "ERP系统" \
146
+ --code "ERP"
147
+
148
+ # 完整参数创建
149
+ barista liberica teams projects create \
150
+ --name "ERP系统" \
151
+ --code "ERP" \
152
+ --desc "企业资源计划系统" \
153
+ --status ACTIVE \
154
+ --level 1
155
+
156
+ # 创建子项目
157
+ barista liberica teams projects create \
158
+ --name "销售模块" \
159
+ --code "ERP-SALES" \
160
+ --parent-id 123456789 \
161
+ --level 2
162
+
163
+ # Dry-run 预览
164
+ barista liberica teams projects create \
165
+ --name "测试项目" \
166
+ --code "TEST" \
167
+ --dry-run
168
+
169
+ # JSON 输出
170
+ barista liberica teams projects create \
171
+ --name "测试项目" \
172
+ --code "TEST" \
173
+ --json
174
+ ```
@@ -0,0 +1,180 @@
1
+ # barista liberica teams projects delete
2
+
3
+ 删除团队项目。
4
+
5
+ ## 2.1 命令元数据
6
+
7
+ | 字段 | 值 |
8
+ |------|-----|
9
+ | 完整命令 | `barista liberica teams projects delete <project-id>` |
10
+ | 功能描述 | 删除指定团队项目 |
11
+ | HTTP方法 | POST |
12
+ | 是否需要认证 | ✅ 是 |
13
+ | 是否支持dry-run | ✅ 是(默认行为) |
14
+
15
+ ## 2.2 后端接口引用
16
+
17
+ ### Controller位置
18
+ ```
19
+ coffee-liberica-end/
20
+ └── facade/liberica-facade-enterprise/
21
+ └── src/main/java/com/newpeak/liberica/facade/enterprise/controller/team/
22
+ └── EnterpriseTeamProjectController.java
23
+ └── delete(@PostResource(path = "/delete", requiredPermission = true, requirePermissionCode = TeamProjectPermissionConstants.DEL_TEAM_PROJECT))
24
+ └── public ResponseData<?> delete(
25
+ @RequestHeader("X-TENANT-ID") Long tenantId,
26
+ @RequestBody @Validated(BaseRequest.delete.class) TeamProjectRequest teamProjectRequest
27
+ )
28
+ ```
29
+
30
+ ### Request DTO位置
31
+ ```
32
+ coffee-liberica-end/
33
+ └── business/liberica-business-team/team-api/
34
+ └── src/main/java/com/newpeak/liberica/team/api/pojo/request/
35
+ └── TeamProjectRequest.java
36
+ ├── teamProjectId: Long (@NotNull on delete)
37
+ └── tenantId: Long
38
+ ```
39
+
40
+ **删除请求体结构:**
41
+ ```json
42
+ {
43
+ "teamProjectId": 123456789
44
+ }
45
+ ```
46
+
47
+ ### Response DTO位置
48
+ ```
49
+ coffee-liberica-end/
50
+ └── business/liberica-business-team/team-api/
51
+ └── src/main/java/com/newpeak/liberica/team/api/pojo/response/
52
+ └── TeamProjectResponse.java
53
+ ├── teamProjectId: Long
54
+ ├── projectCode: String
55
+ ├── projectName: String
56
+ ├── teamProjectStatus: String
57
+ └── createTime: String
58
+ ```
59
+
60
+ ## 2.3 CLI参数设计
61
+
62
+ ### 命令结构
63
+ ```
64
+ barista liberica teams projects delete <project-id> [options]
65
+ ```
66
+
67
+ ### Usage
68
+ ```bash
69
+ barista liberica teams projects delete 123456789
70
+ barista liberica teams projects delete 123456789 --force
71
+ ```
72
+
73
+ ### 全局选项
74
+ | 选项 | 类型 | 说明 |
75
+ |------|------|------|
76
+ | `--env` | string | 目标环境(dev\|test\|prod-cn\|prod-jp) |
77
+ | `--tenant` | string | 租户代码 |
78
+ | `--json` | boolean | JSON输出 |
79
+
80
+ ### 位置参数
81
+ | 参数 | 类型 | 必填 | 说明 |
82
+ |------|------|------|------|
83
+ | project-id | string | ✅ | 要删除的项目ID |
84
+
85
+ ### 命令选项
86
+ | 选项 | 短选项 | 类型 | 必填 | 默认值 | 说明 | 对应DTO字段 |
87
+ |------|--------|------|------|--------|------|-------------|
88
+ | --force | -f | boolean | ⬜ | false | 跳过确认直接删除 | - |
89
+ | --json | -j | boolean | ⬜ | false | JSON格式输出 | - |
90
+
91
+ ## 2.4 字段映射表
92
+
93
+ | CLI参数 | DTO字段 | 类型转换 | 验证规则 |
94
+ |---------|---------|----------|----------|
95
+ | project-id (位置参数) | teamProjectId | string→Long | @NotNull |
96
+
97
+ ## 2.5 确认流程
98
+
99
+ 删除操作默认启用dry-run行为,需要用户显式确认:
100
+
101
+ ### 默认行为(无--force)
102
+ ```bash
103
+ $ barista liberica teams projects delete 123456789
104
+
105
+ ⚠️ Delete Team Project
106
+
107
+ Project ID: 123456789
108
+ Name: ERP系统
109
+ Code: ERP
110
+
111
+ Add --force to confirm deletion
112
+ ```
113
+
114
+ ### 强制删除(带--force)
115
+ ```bash
116
+ $ barista liberica teams projects delete 123456789 --force
117
+
118
+ ✓ Project "ERP系统" (ID: 123456789) deleted
119
+ ```
120
+
121
+ ## 2.6 错误码引用
122
+
123
+ ### ExceptionEnum位置
124
+ ```
125
+ coffee-liberica-end/
126
+ └── business/liberica-business-team/team-api/
127
+ └── src/main/java/com/newpeak/liberica/team/api/exception/enums/
128
+ └── TeamProjectExceptionEnum.java
129
+ └── TEAM_PROJECT_NOT_EXIST("01001957001", "团队项目不存在")
130
+ ```
131
+
132
+ ### Service层业务校验
133
+ ```
134
+ coffee-liberica-end/
135
+ └── business/liberica-business-team/team-business/
136
+ └── src/main/java/com/newpeak/liberica/team/modular/business/
137
+ └── TeamProjectBusiness.java
138
+ └── del(TeamProjectRequest request)
139
+ └── 检查团队项目是否存在
140
+ └── throw new TeamServiceException(TeamProjectExceptionEnum.TEAM_PROJECT_NOT_EXIST)
141
+ ```
142
+
143
+ ### 已知错误码
144
+ | 错误码 | 错误消息 | 触发条件 |
145
+ |--------|----------|----------|
146
+ | 01001957001 | 团队项目不存在 | 删除的 project-id 不存在或已被删除 |
147
+
148
+ ## 2.7 权限检查
149
+
150
+ | 检查项 | 位置 | 说明 |
151
+ |--------|------|------|
152
+ | PermissionConstants | `TeamProjectPermissionConstants.DEL_TEAM_PROJECT` | Controller层 `@PostResource(requirePermissionCode = "DEL_TEAM_PROJECT")` |
153
+
154
+ ## 2.8 实现要点
155
+
156
+ 1. **必填参数**:`project-id` 作为位置参数必须提供
157
+ 2. **Dry-run 默认开启**:不带 `--force` 时只显示提示信息,不调用删除 API,exit(0)
158
+ 3. **强制删除**:添加 `--force` 后调用 `/delete` API 执行实际删除
159
+ 4. **ID 类型处理**:后端使用 Long (BigInteger),CLI 使用 string 避免精度丢失
160
+ 5. **权限要求**:需要 `DEL_TEAM_PROJECT` 权限
161
+ 6. **无 X-TENANT-ID Header**:CLI 不手动添加该 header,租户信息由后端从 JWT 中提取
162
+
163
+ ## 2.9 示例用法
164
+
165
+ ```bash
166
+ # 预览删除(默认行为,不实际删除)
167
+ barista liberica teams projects delete 123456789
168
+
169
+ # 强制删除
170
+ barista liberica teams projects delete 123456789 --force
171
+
172
+ # 指定环境删除
173
+ barista liberica teams projects delete 123456789 --env test --force
174
+
175
+ # JSON 输出预览
176
+ barista liberica teams projects delete 123456789 --json
177
+
178
+ # JSON 输出并强制删除
179
+ barista liberica teams projects delete 123456789 --force --json
180
+ ```
@@ -0,0 +1,150 @@
1
+ # barista liberica teams projects get
2
+
3
+ 查询团队项目详情。
4
+
5
+ ## 2.1 命令元数据
6
+
7
+ | 字段 | 值 |
8
+ |------|-----|
9
+ | 完整命令 | `barista liberica teams projects get <project-id>` |
10
+ | 功能描述 | 查询单个团队项目详情 |
11
+ | HTTP方法 | GET |
12
+ | 是否需要认证 | ✅ 是 |
13
+ | 是否支持dry-run | ⬜ 否 |
14
+
15
+ ## 2.2 后端接口引用
16
+
17
+ ### Controller位置
18
+ ```
19
+ coffee-liberica-end/
20
+ └── facade/liberica-facade-enterprise/
21
+ └── src/main/java/com/newpeak/liberica/facade/enterprise/controller/team/
22
+ └── EnterpriseTeamProjectController.java
23
+ └── detail(@GetResource(path = "/detail"))
24
+ └── public ResponseData<TeamProjectResponse> detail(
25
+ @RequestHeader("X-TENANT-ID") Long tenantId,
26
+ @ParameterObject @Validated(BaseRequest.detail.class) TeamProjectRequest teamProjectRequest
27
+ )
28
+ ```
29
+
30
+ ### Request DTO位置
31
+ ```
32
+ coffee-liberica-end/
33
+ └── business/liberica-business-team/team-api/
34
+ └── src/main/java/com/newpeak/liberica/team/api/pojo/request/
35
+ └── TeamProjectRequest.java
36
+ ├── teamProjectId: Long (@NotNull on detail)
37
+ └── tenantId: Long
38
+ ```
39
+
40
+ **请求参数结构:**
41
+ ```
42
+ GET /api/enterprise/team/project/detail?teamProjectId={id}
43
+ ```
44
+
45
+ ### Response DTO位置
46
+ ```
47
+ coffee-liberica-end/
48
+ └── business/liberica-business-team/team-api/
49
+ └── src/main/java/com/newpeak/liberica/team/api/pojo/response/
50
+ └── TeamProjectResponse.java
51
+ ├── teamProjectId: Long
52
+ ├── projectCode: String
53
+ ├── projectName: String
54
+ ├── parentProjectId: Long
55
+ ├── projectLevel: Integer
56
+ ├── projectDesc: String
57
+ ├── teamProjectStatus: String
58
+ ├── createTime: String
59
+ └── updateTime: String
60
+ ```
61
+
62
+ ## 2.3 CLI参数设计
63
+
64
+ ### 命令结构
65
+ ```
66
+ barista liberica teams projects get <project-id> [options]
67
+ ```
68
+
69
+ ### Usage
70
+ ```bash
71
+ barista liberica teams projects get 123456789
72
+ barista liberica teams projects get 123456789 --json
73
+ ```
74
+
75
+ ### 全局选项
76
+ | 选项 | 类型 | 说明 |
77
+ |------|------|------|
78
+ | `--env` | string | 目标环境(dev\|test\|prod-cn\|prod-jp) |
79
+ | `--tenant` | string | 租户代码 |
80
+ | `--json` | boolean | JSON输出 |
81
+
82
+ ### 位置参数
83
+ | 参数 | 类型 | 必填 | 说明 |
84
+ |------|------|------|------|
85
+ | project-id | string | ✅ | 项目ID |
86
+
87
+ ### 命令选项
88
+ | 选项 | 短选项 | 类型 | 必填 | 默认值 | 说明 | 对应DTO字段 |
89
+ |------|--------|------|------|--------|------|-------------|
90
+ | --json | -j | boolean | ⬜ | false | JSON格式输出 | - |
91
+
92
+ ## 2.4 字段映射表
93
+
94
+ | CLI参数 | DTO字段 | 类型转换 | 验证规则 |
95
+ |---------|---------|----------|----------|
96
+ | project-id (位置参数) | teamProjectId | string→Long | @NotNull |
97
+
98
+ ## 2.5 错误码引用
99
+
100
+ ### ExceptionEnum位置
101
+ ```
102
+ coffee-liberica-end/
103
+ └── business/liberica-business-team/team-api/
104
+ └── src/main/java/com/newpeak/liberica/team/api/exception/enums/
105
+ └── TeamProjectExceptionEnum.java
106
+ └── TEAM_PROJECT_NOT_EXIST("01001957001", "团队项目不存在")
107
+ ```
108
+
109
+ ### Service层业务校验
110
+ ```
111
+ coffee-liberica-end/
112
+ └── business/liberica-business-team/team-business/
113
+ └── src/main/java/com/newpeak/liberica/team/modular/business/
114
+ └── TeamProjectBusiness.java
115
+ └── detail(TeamProjectRequest request)
116
+ └── 检查团队项目是否存在
117
+ └── throw new TeamServiceException(TeamProjectExceptionEnum.TEAM_PROJECT_NOT_EXIST)
118
+ ```
119
+
120
+ ### 已知错误码
121
+ | 错误码 | 错误消息 | 触发条件 |
122
+ |--------|----------|----------|
123
+ | 01001957001 | 团队项目不存在 | 查询的 project-id 不存在或已被删除 |
124
+
125
+ ## 2.6 权限检查
126
+
127
+ | 检查项 | 位置 | 说明 |
128
+ |--------|------|------|
129
+ | 注解 | `@GetResource(path = "/detail")` | 无 requiredPermission(详情查询无需权限码) |
130
+
131
+ ## 2.7 实现要点
132
+
133
+ 1. **必填参数**:`project-id` 作为位置参数必须提供
134
+ 2. **API 调用方式**:通过 URL 查询参数传递 `teamProjectId`,如 `/detail?teamProjectId={id}`
135
+ 3. **ID 类型处理**:后端使用 Long (BigInteger),CLI 使用 string 避免精度丢失
136
+ 4. **输出格式**:默认以键值对形式展示项目详情;`--json` 时输出完整响应 JSON
137
+ 5. **错误处理**:如果返回 `!response.success`,输出错误信息并 `process.exit(1)`
138
+
139
+ ## 2.8 示例用法
140
+
141
+ ```bash
142
+ # 查询详情
143
+ barista liberica teams projects get 123456789
144
+
145
+ # JSON 输出
146
+ barista liberica teams projects get 123456789 --json
147
+
148
+ # 指定环境
149
+ barista liberica teams projects get 123456789 --env test
150
+ ```
@@ -0,0 +1,179 @@
1
+ # barista liberica teams projects list
2
+
3
+ 分页查询团队项目列表。
4
+
5
+ ## 2.1 命令元数据
6
+
7
+ | 字段 | 值 |
8
+ |------|-----|
9
+ | 完整命令 | `barista liberica teams projects list` |
10
+ | 功能描述 | 分页查询团队项目列表 |
11
+ | HTTP方法 | GET |
12
+ | 是否需要认证 | ✅ 是 |
13
+ | 是否支持dry-run | ⬜ 否 |
14
+
15
+ ## 2.2 后端接口引用
16
+
17
+ ### Controller位置
18
+ ```
19
+ coffee-liberica-end/
20
+ └── facade/liberica-facade-enterprise/
21
+ └── src/main/java/com/newpeak/liberica/facade/enterprise/controller/team/
22
+ └── EnterpriseTeamProjectController.java
23
+ └── page(@GetResource(path = "/page"))
24
+ └── public ResponseData<PageResult<TeamProjectResponse>> page(
25
+ @RequestHeader("X-TENANT-ID") Long tenantId,
26
+ @ParameterObject TeamProjectQueryRequest teamProjectQueryRequest
27
+ )
28
+ ```
29
+
30
+ ### Request DTO位置
31
+ ```
32
+ coffee-liberica-end/
33
+ └── business/liberica-business-team/team-api/
34
+ └── src/main/java/com/newpeak/liberica/team/api/pojo/request/
35
+ └── TeamProjectQueryRequest.java
36
+ ├── pageNo: Long (分页当前页,0-based)
37
+ ├── pageSize: Long (分页大小)
38
+ ├── teamProjectId: Long (项目ID)
39
+ ├── projectCode: String (项目代号,模糊搜索)
40
+ ├── projectName: String (项目名称,模糊搜索)
41
+ ├── parentProjectId: Long (父项目ID)
42
+ ├── projectLevel: Integer (项目级别)
43
+ ├── projectDesc: String (项目描述)
44
+ ├── teamProjectStatus: String (项目状态)
45
+ └── teamProjectIdList: Set<Long> (项目ID集合)
46
+ ```
47
+
48
+ ### Response DTO位置
49
+ ```
50
+ coffee-liberica-end/
51
+ └── business/liberica-business-team/team-api/
52
+ └── src/main/java/com/newpeak/liberica/team/api/pojo/response/
53
+ └── TeamProjectResponse.java
54
+ ├── teamProjectId: Long
55
+ ├── projectCode: String
56
+ ├── projectName: String
57
+ ├── parentProjectId: Long
58
+ ├── projectLevel: Integer
59
+ ├── projectDesc: String
60
+ ├── teamProjectStatus: String
61
+ ├── createTime: String
62
+ └── updateTime: String
63
+ ```
64
+
65
+ ### 分页包装器
66
+ ```
67
+ cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult
68
+ ├── totalRows: long
69
+ ├── pageSize: long
70
+ ├── pageNo: long
71
+ └── rows: List<TeamProjectResponse>
72
+ ```
73
+
74
+ ## 2.3 CLI参数设计
75
+
76
+ ### 命令结构
77
+ ```
78
+ barista liberica teams projects list [options]
79
+ ```
80
+
81
+ ### Usage
82
+ ```bash
83
+ barista liberica teams projects list
84
+ barista liberica teams projects list --page 2 --size 50
85
+ ```
86
+
87
+ ### 全局选项
88
+ | 选项 | 类型 | 说明 |
89
+ |------|------|------|
90
+ | `--env` | string | 目标环境(dev\|test\|prod-cn\|prod-jp) |
91
+ | `--tenant` | string | 租户代码 |
92
+ | `--json` | boolean | JSON输出 |
93
+
94
+ ### 命令选项
95
+ | 选项 | 短选项 | 类型 | 必填 | 默认值 | 说明 | 对应DTO字段 |
96
+ |------|--------|------|------|--------|------|-------------|
97
+ | --page | -p | number | ⬜ | 1 | 页码(1-based) | pageNo |
98
+ | --size | -s | number | ⬜ | 20 | 每页条数 | pageSize |
99
+ | --code | -c | string | ⬜ | - | 按项目代号搜索 | projectCode |
100
+ | --name | -n | string | ⬜ | - | 按项目名称模糊搜索 | projectName |
101
+ | --status | — | string | ⬜ | - | 按状态筛选 | teamProjectStatus |
102
+ | --parent-id | — | string | ⬜ | - | 按父项目ID筛选 | parentProjectId |
103
+ | --level | -l | number | ⬜ | - | 按项目级别筛选 | projectLevel |
104
+
105
+ ## 2.4 字段映射表
106
+
107
+ | CLI参数 | DTO字段 | 类型转换 | 验证规则 |
108
+ |---------|---------|----------|----------|
109
+ | --page / -p | pageNo | number→Long, CLI page - 1 | >= 0 |
110
+ | --size / -s | pageSize | number→Long | > 0 |
111
+ | --code / -c | projectCode | 直接传递 | max=50 |
112
+ | --name / -n | projectName | 直接传递 | max=200 |
113
+ | --status | teamProjectStatus | 直接传递 | max=20 |
114
+ | --parent-id | parentProjectId | string→Long | - |
115
+ | --level / -l | projectLevel | number→Integer | - |
116
+
117
+ ## 2.5 错误码引用
118
+
119
+ ### ExceptionEnum位置
120
+ ```
121
+ coffee-liberica-end/
122
+ └── business/liberica-business-team/team-api/
123
+ └── src/main/java/com/newpeak/liberica/team/api/exception/enums/
124
+ └── TeamProjectExceptionEnum.java
125
+ └── TEAM_PROJECT_NOT_EXIST("01001957001", "团队项目不存在")
126
+ ```
127
+
128
+ ### 已知错误码
129
+ | 错误码 | 错误消息 | 触发条件 |
130
+ |--------|----------|----------|
131
+ | 01001957001 | 团队项目不存在 | 详情/编辑/删除时ID不存在 |
132
+
133
+ ## 2.6 权限检查
134
+
135
+ | 检查项 | 位置 | 说明 |
136
+ |--------|------|------|
137
+ | 注解 | `@GetResource(path = "/page")` | 无 requiredPermission(列表查询无需权限码) |
138
+
139
+ **注意**:list 和 page 接口在 Controller 层无需权限校验,数据范围通过 tenantId 隔离。
140
+
141
+ ## 2.7 实现要点
142
+
143
+ 1. **分页默认值**:page=1, size=20
144
+ 2. **分页转换**:CLI 使用 1-based 页码,API 使用 0-based,转换公式 `pageNo = options.page - 1`
145
+ 3. **响应字段**:后端返回 `rows`、`totalRows`、`pageNo`、`pageSize`,不使用 `records` 或 `total`
146
+ 4. **ID 类型处理**:`teamProjectId`、`parentProjectId` 等 ID 字段后端使用 Long (BigInteger),CLI 使用 string 避免精度丢失
147
+ 5. **无结果处理**:返回空列表,不抛出异常
148
+ 6. **输出格式**:表格形式展示 ID、Code、Name、Level、Status
149
+
150
+ ## 2.8 示例用法
151
+
152
+ ```bash
153
+ # 默认分页
154
+ barista liberica teams projects list
155
+
156
+ # 指定页码和每页条数
157
+ barista liberica teams projects list --page 2 --size 50
158
+
159
+ # 按状态筛选
160
+ barista liberica teams projects list --status ACTIVE
161
+
162
+ # 按项目代号搜索
163
+ barista liberica teams projects list --code "ERP"
164
+
165
+ # 按项目名称搜索
166
+ barista liberica teams projects list --name "生产系统"
167
+
168
+ # 按父项目ID筛选
169
+ barista liberica teams projects list --parent-id 123456789
170
+
171
+ # 按项目级别筛选
172
+ barista liberica teams projects list --level 1
173
+
174
+ # 组合筛选
175
+ barista liberica teams projects list --status ACTIVE --level 1
176
+
177
+ # JSON 输出
178
+ barista liberica teams projects list --json
179
+ ```