meeglesdk 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +191 -0
- package/dist/client.d.ts +186 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +197 -0
- package/dist/client.js.map +1 -0
- package/dist/core/base-service.d.ts +156 -0
- package/dist/core/base-service.d.ts.map +1 -0
- package/dist/core/base-service.js +240 -0
- package/dist/core/base-service.js.map +1 -0
- package/dist/core/errors.d.ts +181 -0
- package/dist/core/errors.d.ts.map +1 -0
- package/dist/core/errors.js +250 -0
- package/dist/core/errors.js.map +1 -0
- package/dist/core/rate-limiter.d.ts +72 -0
- package/dist/core/rate-limiter.d.ts.map +1 -0
- package/dist/core/rate-limiter.js +269 -0
- package/dist/core/rate-limiter.js.map +1 -0
- package/dist/core/request.d.ts +270 -0
- package/dist/core/request.d.ts.map +1 -0
- package/dist/core/request.js +842 -0
- package/dist/core/request.js.map +1 -0
- package/dist/core/token-manager.d.ts +134 -0
- package/dist/core/token-manager.d.ts.map +1 -0
- package/dist/core/token-manager.js +412 -0
- package/dist/core/token-manager.js.map +1 -0
- package/dist/helpers/auth.d.ts +7 -0
- package/dist/helpers/auth.d.ts.map +1 -0
- package/dist/helpers/auth.js +19 -0
- package/dist/helpers/auth.js.map +1 -0
- package/dist/index.d.ts +72 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +61 -0
- package/dist/index.js.map +1 -0
- package/dist/service/auth/index.d.ts +96 -0
- package/dist/service/auth/index.d.ts.map +1 -0
- package/dist/service/auth/index.js +163 -0
- package/dist/service/auth/index.js.map +1 -0
- package/dist/service/config/basic.d.ts +37 -0
- package/dist/service/config/basic.d.ts.map +1 -0
- package/dist/service/config/basic.js +54 -0
- package/dist/service/config/basic.js.map +1 -0
- package/dist/service/config/config.d.ts +27 -0
- package/dist/service/config/config.d.ts.map +1 -0
- package/dist/service/config/config.js +34 -0
- package/dist/service/config/config.js.map +1 -0
- package/dist/service/config/field.d.ts +50 -0
- package/dist/service/config/field.d.ts.map +1 -0
- package/dist/service/config/field.js +74 -0
- package/dist/service/config/field.js.map +1 -0
- package/dist/service/config/relation.d.ts +53 -0
- package/dist/service/config/relation.d.ts.map +1 -0
- package/dist/service/config/relation.js +66 -0
- package/dist/service/config/relation.js.map +1 -0
- package/dist/service/config/resource.d.ts +59 -0
- package/dist/service/config/resource.d.ts.map +1 -0
- package/dist/service/config/resource.js +75 -0
- package/dist/service/config/resource.js.map +1 -0
- package/dist/service/config/role.d.ts +55 -0
- package/dist/service/config/role.d.ts.map +1 -0
- package/dist/service/config/role.js +90 -0
- package/dist/service/config/role.js.map +1 -0
- package/dist/service/config/template.d.ts +65 -0
- package/dist/service/config/template.d.ts.map +1 -0
- package/dist/service/config/template.js +95 -0
- package/dist/service/config/template.js.map +1 -0
- package/dist/service/measure/index.d.ts +26 -0
- package/dist/service/measure/index.d.ts.map +1 -0
- package/dist/service/measure/index.js +36 -0
- package/dist/service/measure/index.js.map +1 -0
- package/dist/service/measure/query.d.ts +56 -0
- package/dist/service/measure/query.d.ts.map +1 -0
- package/dist/service/measure/query.js +86 -0
- package/dist/service/measure/query.js.map +1 -0
- package/dist/service/space/relation.d.ts +63 -0
- package/dist/service/space/relation.d.ts.map +1 -0
- package/dist/service/space/relation.js +102 -0
- package/dist/service/space/relation.js.map +1 -0
- package/dist/service/space/space.d.ts +81 -0
- package/dist/service/space/space.d.ts.map +1 -0
- package/dist/service/space/space.js +110 -0
- package/dist/service/space/space.js.map +1 -0
- package/dist/service/tenant/tenant.d.ts +52 -0
- package/dist/service/tenant/tenant.d.ts.map +1 -0
- package/dist/service/tenant/tenant.js +75 -0
- package/dist/service/tenant/tenant.js.map +1 -0
- package/dist/service/user/group.d.ts +47 -0
- package/dist/service/user/group.d.ts.map +1 -0
- package/dist/service/user/group.js +70 -0
- package/dist/service/user/group.js.map +1 -0
- package/dist/service/user/query.d.ts +25 -0
- package/dist/service/user/query.d.ts.map +1 -0
- package/dist/service/user/query.js +26 -0
- package/dist/service/user/query.js.map +1 -0
- package/dist/service/user/search.d.ts +25 -0
- package/dist/service/user/search.d.ts.map +1 -0
- package/dist/service/user/search.js +26 -0
- package/dist/service/user/search.js.map +1 -0
- package/dist/service/user/user.d.ts +37 -0
- package/dist/service/user/user.d.ts.map +1 -0
- package/dist/service/user/user.js +46 -0
- package/dist/service/user/user.js.map +1 -0
- package/dist/service/view/query.d.ts +52 -0
- package/dist/service/view/query.d.ts.map +1 -0
- package/dist/service/view/query.js +76 -0
- package/dist/service/view/query.js.map +1 -0
- package/dist/service/view/view.d.ts +76 -0
- package/dist/service/view/view.d.ts.map +1 -0
- package/dist/service/view/view.js +108 -0
- package/dist/service/view/view.js.map +1 -0
- package/dist/service/workitem/attachment.d.ts +143 -0
- package/dist/service/workitem/attachment.d.ts.map +1 -0
- package/dist/service/workitem/attachment.js +231 -0
- package/dist/service/workitem/attachment.js.map +1 -0
- package/dist/service/workitem/batch.d.ts +135 -0
- package/dist/service/workitem/batch.d.ts.map +1 -0
- package/dist/service/workitem/batch.js +146 -0
- package/dist/service/workitem/batch.js.map +1 -0
- package/dist/service/workitem/chat.d.ts +42 -0
- package/dist/service/workitem/chat.d.ts.map +1 -0
- package/dist/service/workitem/chat.js +50 -0
- package/dist/service/workitem/chat.js.map +1 -0
- package/dist/service/workitem/comment.d.ts +139 -0
- package/dist/service/workitem/comment.d.ts.map +1 -0
- package/dist/service/workitem/comment.js +180 -0
- package/dist/service/workitem/comment.js.map +1 -0
- package/dist/service/workitem/review.d.ts +44 -0
- package/dist/service/workitem/review.d.ts.map +1 -0
- package/dist/service/workitem/review.js +49 -0
- package/dist/service/workitem/review.js.map +1 -0
- package/dist/service/workitem/search.d.ts +213 -0
- package/dist/service/workitem/search.d.ts.map +1 -0
- package/dist/service/workitem/search.js +242 -0
- package/dist/service/workitem/search.js.map +1 -0
- package/dist/service/workitem/subtask.d.ts +193 -0
- package/dist/service/workitem/subtask.d.ts.map +1 -0
- package/dist/service/workitem/subtask.js +247 -0
- package/dist/service/workitem/subtask.js.map +1 -0
- package/dist/service/workitem/workItem.d.ts +225 -0
- package/dist/service/workitem/workItem.d.ts.map +1 -0
- package/dist/service/workitem/workItem.js +310 -0
- package/dist/service/workitem/workItem.js.map +1 -0
- package/dist/service/workitem/workflow.d.ts +214 -0
- package/dist/service/workitem/workflow.d.ts.map +1 -0
- package/dist/service/workitem/workflow.js +281 -0
- package/dist/service/workitem/workflow.js.map +1 -0
- package/dist/service/workitem/workhour.d.ts +63 -0
- package/dist/service/workitem/workhour.d.ts.map +1 -0
- package/dist/service/workitem/workhour.js +93 -0
- package/dist/service/workitem/workhour.js.map +1 -0
- package/dist/types/auth.d.ts +115 -0
- package/dist/types/auth.d.ts.map +1 -0
- package/dist/types/auth.js +6 -0
- package/dist/types/auth.js.map +1 -0
- package/dist/types/common.d.ts +354 -0
- package/dist/types/common.d.ts.map +1 -0
- package/dist/types/common.js +14 -0
- package/dist/types/common.js.map +1 -0
- package/dist/types/config.d.ts +305 -0
- package/dist/types/config.d.ts.map +1 -0
- package/dist/types/config.js +6 -0
- package/dist/types/config.js.map +1 -0
- package/dist/types/index.d.ts +13 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +13 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/measure.d.ts +55 -0
- package/dist/types/measure.d.ts.map +1 -0
- package/dist/types/measure.js +6 -0
- package/dist/types/measure.js.map +1 -0
- package/dist/types/space.d.ts +164 -0
- package/dist/types/space.d.ts.map +1 -0
- package/dist/types/space.js +6 -0
- package/dist/types/space.js.map +1 -0
- package/dist/types/tenant.d.ts +106 -0
- package/dist/types/tenant.d.ts.map +1 -0
- package/dist/types/tenant.js +6 -0
- package/dist/types/tenant.js.map +1 -0
- package/dist/types/user.d.ts +110 -0
- package/dist/types/user.d.ts.map +1 -0
- package/dist/types/user.js +6 -0
- package/dist/types/user.js.map +1 -0
- package/dist/types/view.d.ts +162 -0
- package/dist/types/view.d.ts.map +1 -0
- package/dist/types/view.js +6 -0
- package/dist/types/view.js.map +1 -0
- package/dist/types/workitem.d.ts +1523 -0
- package/dist/types/workitem.d.ts.map +1 -0
- package/dist/types/workitem.js +6 -0
- package/dist/types/workitem.js.map +1 -0
- package/package.json +43 -0
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 评论服务
|
|
3
|
+
* 100% 参考 Meego API 文档
|
|
4
|
+
*
|
|
5
|
+
* 提供工作项评论的创建、查询、更新、删除功能
|
|
6
|
+
*/
|
|
7
|
+
import { BaseService } from '../../core/base-service.js';
|
|
8
|
+
/** API 路径 */
|
|
9
|
+
export const API_PATHS = {
|
|
10
|
+
/** 添加评论 */
|
|
11
|
+
CREATE: '/open_api/:project_key/work_item/:work_item_type_key/:work_item_id/comment/create',
|
|
12
|
+
/** 查询评论 */
|
|
13
|
+
LIST: '/open_api/:project_key/work_item/:work_item_type_key/:work_item_id/comments',
|
|
14
|
+
/** 更新评论 */
|
|
15
|
+
UPDATE: '/open_api/:project_key/work_item/:work_item_type_key/:work_item_id/comment/:comment_id',
|
|
16
|
+
/** 删除评论 */
|
|
17
|
+
DELETE: '/open_api/:project_key/work_item/:work_item_type_key/:work_item_id/comment/:comment_id',
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* 评论服务
|
|
21
|
+
*
|
|
22
|
+
* 提供工作项评论的创建、查询、更新、删除功能
|
|
23
|
+
*/
|
|
24
|
+
export class CommentService extends BaseService {
|
|
25
|
+
/**
|
|
26
|
+
* 添加评论
|
|
27
|
+
*
|
|
28
|
+
* 在指定工作项下添加一条评论,添加的评论内容会出现在工作项详情页评论/备注 tab 页中
|
|
29
|
+
*
|
|
30
|
+
* @param projectKey 空间 ID 或域名
|
|
31
|
+
* @param workItemTypeKey 工作项类型
|
|
32
|
+
* @param workItemId 工作项 ID
|
|
33
|
+
* @param request 创建请求(content 或 rich_text 二选一,都有值时 rich_text 优先)
|
|
34
|
+
* @param options 请求选项
|
|
35
|
+
* @returns 新建的评论 ID(字符串格式,避免大整数精度丢失)
|
|
36
|
+
*
|
|
37
|
+
* @example
|
|
38
|
+
* ```typescript
|
|
39
|
+
* // 添加纯文本评论
|
|
40
|
+
* const commentId = await client.workItem.comment.create('my-project', 'story', 123456, {
|
|
41
|
+
* content: '这是一条测试评论',
|
|
42
|
+
* });
|
|
43
|
+
* console.log(commentId); // "7587846609728458752"
|
|
44
|
+
*
|
|
45
|
+
* // 添加富文本评论
|
|
46
|
+
* const commentId = await client.workItem.comment.create('my-project', 'story', 123456, {
|
|
47
|
+
* rich_text: [
|
|
48
|
+
* {
|
|
49
|
+
* type: 'paragraph',
|
|
50
|
+
* content: [
|
|
51
|
+
* { type: 'text', text: '加粗文字', attrs: { fontColor: 'green', fontSize: 'h1' } }
|
|
52
|
+
* ]
|
|
53
|
+
* }
|
|
54
|
+
* ]
|
|
55
|
+
* });
|
|
56
|
+
* ```
|
|
57
|
+
*/
|
|
58
|
+
async create(projectKey, workItemTypeKey, workItemId, request, options) {
|
|
59
|
+
return this.post(API_PATHS.CREATE, request, {
|
|
60
|
+
...options,
|
|
61
|
+
pathParams: {
|
|
62
|
+
project_key: projectKey,
|
|
63
|
+
work_item_type_key: workItemTypeKey,
|
|
64
|
+
work_item_id: String(workItemId),
|
|
65
|
+
...options?.pathParams,
|
|
66
|
+
},
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* 查询评论列表
|
|
71
|
+
*
|
|
72
|
+
* 获取指定工作项下的所有评论信息,按照创建时间升序返回
|
|
73
|
+
*
|
|
74
|
+
* @param projectKey 空间 ID 或域名
|
|
75
|
+
* @param workItemTypeKey 工作项类型
|
|
76
|
+
* @param workItemId 工作项 ID
|
|
77
|
+
* @param query 分页参数
|
|
78
|
+
* @param options 请求选项
|
|
79
|
+
* @returns 分页的评论列表
|
|
80
|
+
*
|
|
81
|
+
* @example
|
|
82
|
+
* ```typescript
|
|
83
|
+
* // 获取所有评论
|
|
84
|
+
* const result = await client.workItem.comment.list('my-project', 'story', 123456);
|
|
85
|
+
* console.log(result.pagination.total); // 评论总数
|
|
86
|
+
* console.log(result.data); // 评论列表
|
|
87
|
+
*
|
|
88
|
+
* // 分页获取评论
|
|
89
|
+
* const result = await client.workItem.comment.list('my-project', 'story', 123456, {
|
|
90
|
+
* page_size: 20,
|
|
91
|
+
* page_num: 1,
|
|
92
|
+
* });
|
|
93
|
+
* ```
|
|
94
|
+
*/
|
|
95
|
+
async list(projectKey, workItemTypeKey, workItemId, query, options) {
|
|
96
|
+
return this.getPaginated(API_PATHS.LIST, {
|
|
97
|
+
...options,
|
|
98
|
+
pathParams: {
|
|
99
|
+
project_key: projectKey,
|
|
100
|
+
work_item_type_key: workItemTypeKey,
|
|
101
|
+
work_item_id: String(workItemId),
|
|
102
|
+
...options?.pathParams,
|
|
103
|
+
},
|
|
104
|
+
query: query ? { ...query } : undefined,
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* 更新评论
|
|
109
|
+
*
|
|
110
|
+
* 更新指定评论的内容,仅评论创建人可以更新该评论
|
|
111
|
+
*
|
|
112
|
+
* @param projectKey 空间 ID 或域名
|
|
113
|
+
* @param workItemTypeKey 工作项类型
|
|
114
|
+
* @param workItemId 工作项 ID
|
|
115
|
+
* @param commentId 评论 ID(字符串格式)
|
|
116
|
+
* @param request 更新请求(content 或 rich_text 二选一,都有值时 rich_text 优先)
|
|
117
|
+
* @param options 请求选项
|
|
118
|
+
*
|
|
119
|
+
* @example
|
|
120
|
+
* ```typescript
|
|
121
|
+
* // 更新为纯文本评论
|
|
122
|
+
* await client.workItem.comment.update('my-project', 'story', 123456, '7587846609728458752', {
|
|
123
|
+
* content: '更新后的评论内容',
|
|
124
|
+
* });
|
|
125
|
+
*
|
|
126
|
+
* // 更新为富文本评论
|
|
127
|
+
* await client.workItem.comment.update('my-project', 'story', 123456, commentId, {
|
|
128
|
+
* rich_text: [
|
|
129
|
+
* {
|
|
130
|
+
* type: 'paragraph',
|
|
131
|
+
* content: [
|
|
132
|
+
* { type: 'text', text: '更新后的富文本', attrs: { fontColor: 'red' } }
|
|
133
|
+
* ]
|
|
134
|
+
* }
|
|
135
|
+
* ]
|
|
136
|
+
* });
|
|
137
|
+
* ```
|
|
138
|
+
*/
|
|
139
|
+
async update(projectKey, workItemTypeKey, workItemId, commentId, request, options) {
|
|
140
|
+
await this.put(API_PATHS.UPDATE, request, {
|
|
141
|
+
...options,
|
|
142
|
+
pathParams: {
|
|
143
|
+
project_key: projectKey,
|
|
144
|
+
work_item_type_key: workItemTypeKey,
|
|
145
|
+
work_item_id: String(workItemId),
|
|
146
|
+
comment_id: commentId,
|
|
147
|
+
...options?.pathParams,
|
|
148
|
+
},
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* 删除评论
|
|
153
|
+
*
|
|
154
|
+
* 删除工作项下一条指定的评论信息,仅评论创建人可以删除评论
|
|
155
|
+
*
|
|
156
|
+
* @param projectKey 空间 ID 或域名
|
|
157
|
+
* @param workItemTypeKey 工作项类型
|
|
158
|
+
* @param workItemId 工作项 ID
|
|
159
|
+
* @param commentId 评论 ID(字符串格式)
|
|
160
|
+
* @param options 请求选项
|
|
161
|
+
*
|
|
162
|
+
* @example
|
|
163
|
+
* ```typescript
|
|
164
|
+
* await client.workItem.comment.remove('my-project', 'story', 123456, '7587846609728458752');
|
|
165
|
+
* ```
|
|
166
|
+
*/
|
|
167
|
+
async remove(projectKey, workItemTypeKey, workItemId, commentId, options) {
|
|
168
|
+
await this.delete(API_PATHS.DELETE, {
|
|
169
|
+
...options,
|
|
170
|
+
pathParams: {
|
|
171
|
+
project_key: projectKey,
|
|
172
|
+
work_item_type_key: workItemTypeKey,
|
|
173
|
+
work_item_id: String(workItemId),
|
|
174
|
+
comment_id: commentId,
|
|
175
|
+
...options?.pathParams,
|
|
176
|
+
},
|
|
177
|
+
});
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
//# sourceMappingURL=comment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comment.js","sourceRoot":"","sources":["../../../src/service/workitem/comment.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,WAAW,EAA8B,MAAM,4BAA4B,CAAC;AASrF,aAAa;AACb,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,WAAW;IACX,MAAM,EAAE,mFAAmF;IAC3F,WAAW;IACX,IAAI,EAAE,6EAA6E;IACnF,WAAW;IACX,MAAM,EAAE,wFAAwF;IAChG,WAAW;IACX,MAAM,EAAE,wFAAwF;CACjG,CAAC;AAEF;;;;GAIG;AACH,MAAM,OAAO,cAAe,SAAQ,WAAW;IAC7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACH,KAAK,CAAC,MAAM,CACV,UAAkB,EAClB,eAAuB,EACvB,UAAkB,EAClB,OAA6B,EAC7B,OAAuC;QAEvC,OAAO,IAAI,CAAC,IAAI,CACd,SAAS,CAAC,MAAM,EAChB,OAAO,EACP;YACE,GAAG,OAAO;YACV,UAAU,EAAE;gBACV,WAAW,EAAE,UAAU;gBACvB,kBAAkB,EAAE,eAAe;gBACnC,YAAY,EAAE,MAAM,CAAC,UAAU,CAAC;gBAChC,GAAG,OAAO,EAAE,UAAU;aACvB;SACF,CACF,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,KAAK,CAAC,IAAI,CACR,UAAkB,EAClB,eAAuB,EACvB,UAAkB,EAClB,KAAyB,EACzB,OAAwC;QAExC,OAAO,IAAI,CAAC,YAAY,CACtB,SAAS,CAAC,IAAI,EACd;YACE,GAAG,OAAO;YACV,UAAU,EAAE;gBACV,WAAW,EAAE,UAAU;gBACvB,kBAAkB,EAAE,eAAe;gBACnC,YAAY,EAAE,MAAM,CAAC,UAAU,CAAC;gBAChC,GAAG,OAAO,EAAE,UAAU;aACvB;YACD,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS;SACxC,CACF,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,KAAK,CAAC,MAAM,CACV,UAAkB,EAClB,eAAuB,EACvB,UAAkB,EAClB,SAAiB,EACjB,OAA6B,EAC7B,OAAqC;QAErC,MAAM,IAAI,CAAC,GAAG,CACZ,SAAS,CAAC,MAAM,EAChB,OAAO,EACP;YACE,GAAG,OAAO;YACV,UAAU,EAAE;gBACV,WAAW,EAAE,UAAU;gBACvB,kBAAkB,EAAE,eAAe;gBACnC,YAAY,EAAE,MAAM,CAAC,UAAU,CAAC;gBAChC,UAAU,EAAE,SAAS;gBACrB,GAAG,OAAO,EAAE,UAAU;aACvB;SACF,CACF,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,MAAM,CACV,UAAkB,EAClB,eAAuB,EACvB,UAAkB,EAClB,SAAiB,EACjB,OAAqC;QAErC,MAAM,IAAI,CAAC,MAAM,CACf,SAAS,CAAC,MAAM,EAChB;YACE,GAAG,OAAO;YACV,UAAU,EAAE;gBACV,WAAW,EAAE,UAAU;gBACvB,kBAAkB,EAAE,eAAe;gBACnC,YAAY,EAAE,MAAM,CAAC,UAAU,CAAC;gBAChC,UAAU,EAAE,SAAS;gBACrB,GAAG,OAAO,EAAE,UAAU;aACvB;SACF,CACF,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 评审服务
|
|
3
|
+
* 100% 参考 Meego API 文档
|
|
4
|
+
*/
|
|
5
|
+
import { BaseService, type ServiceRequestOptions } from '../../core/base-service.js';
|
|
6
|
+
import type { UpdateReviewRequest, ReviewBatchQueryRequest, ReviewBatchQueryResponse, ReviewConclusionOptionRequest, ReviewConclusionOption } from '../../types/workitem.js';
|
|
7
|
+
/** API 路径 */
|
|
8
|
+
export declare const API_PATHS: {
|
|
9
|
+
/** 修改评审结论和评审意见 */
|
|
10
|
+
UPDATE_REVIEW: string;
|
|
11
|
+
/** 批量查询评审意见、评审结论 */
|
|
12
|
+
BATCH_QUERY_REVIEW: string;
|
|
13
|
+
/** 评审结论标签值查询 */
|
|
14
|
+
QUERY_CONCLUSION_OPTION: string;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* 评审服务
|
|
18
|
+
*/
|
|
19
|
+
export declare class ReviewService extends BaseService {
|
|
20
|
+
/**
|
|
21
|
+
* 修改评审结论和评审意见
|
|
22
|
+
*
|
|
23
|
+
* @param request 更新请求
|
|
24
|
+
* @param options 请求选项
|
|
25
|
+
*/
|
|
26
|
+
update(request: UpdateReviewRequest, options?: ServiceRequestOptions<void>): Promise<void>;
|
|
27
|
+
/**
|
|
28
|
+
* 批量查询评审意见、评审结论
|
|
29
|
+
*
|
|
30
|
+
* @param request 查询请求
|
|
31
|
+
* @param options 请求选项
|
|
32
|
+
* @returns 评审信息
|
|
33
|
+
*/
|
|
34
|
+
batchQuery(request: ReviewBatchQueryRequest, options?: ServiceRequestOptions<ReviewBatchQueryResponse>): Promise<ReviewBatchQueryResponse>;
|
|
35
|
+
/**
|
|
36
|
+
* 评审结论标签值查询
|
|
37
|
+
*
|
|
38
|
+
* @param request 查询请求
|
|
39
|
+
* @param options 请求选项
|
|
40
|
+
* @returns 评审结论标签列表
|
|
41
|
+
*/
|
|
42
|
+
queryConclusionOptions(request: ReviewConclusionOptionRequest, options?: ServiceRequestOptions<ReviewConclusionOption[]>): Promise<ReviewConclusionOption[]>;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=review.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review.d.ts","sourceRoot":"","sources":["../../../src/service/workitem/review.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,KAAK,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACrF,OAAO,KAAK,EACV,mBAAmB,EACnB,uBAAuB,EACvB,wBAAwB,EACxB,6BAA6B,EAC7B,sBAAsB,EACvB,MAAM,yBAAyB,CAAC;AAEjC,aAAa;AACb,eAAO,MAAM,SAAS;IACpB,kBAAkB;;IAElB,oBAAoB;;IAEpB,gBAAgB;;CAEjB,CAAC;AAEF;;GAEG;AACH,qBAAa,aAAc,SAAQ,WAAW;IAC5C;;;;;OAKG;IACG,MAAM,CACV,OAAO,EAAE,mBAAmB,EAC5B,OAAO,CAAC,EAAE,qBAAqB,CAAC,IAAI,CAAC,GACpC,OAAO,CAAC,IAAI,CAAC;IAIhB;;;;;;OAMG;IACG,UAAU,CACd,OAAO,EAAE,uBAAuB,EAChC,OAAO,CAAC,EAAE,qBAAqB,CAAC,wBAAwB,CAAC,GACxD,OAAO,CAAC,wBAAwB,CAAC;IAIpC;;;;;;OAMG;IACG,sBAAsB,CAC1B,OAAO,EAAE,6BAA6B,EACtC,OAAO,CAAC,EAAE,qBAAqB,CAAC,sBAAsB,EAAE,CAAC,GACxD,OAAO,CAAC,sBAAsB,EAAE,CAAC;CAGrC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 评审服务
|
|
3
|
+
* 100% 参考 Meego API 文档
|
|
4
|
+
*/
|
|
5
|
+
import { BaseService } from '../../core/base-service.js';
|
|
6
|
+
/** API 路径 */
|
|
7
|
+
export const API_PATHS = {
|
|
8
|
+
/** 修改评审结论和评审意见 */
|
|
9
|
+
UPDATE_REVIEW: '/open_api/work_item/finished/update',
|
|
10
|
+
/** 批量查询评审意见、评审结论 */
|
|
11
|
+
BATCH_QUERY_REVIEW: '/open_api/work_item/finished/batch_query',
|
|
12
|
+
/** 评审结论标签值查询 */
|
|
13
|
+
QUERY_CONCLUSION_OPTION: '/open_api/work_item/finished/query_conclusion_option',
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* 评审服务
|
|
17
|
+
*/
|
|
18
|
+
export class ReviewService extends BaseService {
|
|
19
|
+
/**
|
|
20
|
+
* 修改评审结论和评审意见
|
|
21
|
+
*
|
|
22
|
+
* @param request 更新请求
|
|
23
|
+
* @param options 请求选项
|
|
24
|
+
*/
|
|
25
|
+
async update(request, options) {
|
|
26
|
+
await this.post(API_PATHS.UPDATE_REVIEW, request, options);
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* 批量查询评审意见、评审结论
|
|
30
|
+
*
|
|
31
|
+
* @param request 查询请求
|
|
32
|
+
* @param options 请求选项
|
|
33
|
+
* @returns 评审信息
|
|
34
|
+
*/
|
|
35
|
+
async batchQuery(request, options) {
|
|
36
|
+
return this.post(API_PATHS.BATCH_QUERY_REVIEW, request, options);
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* 评审结论标签值查询
|
|
40
|
+
*
|
|
41
|
+
* @param request 查询请求
|
|
42
|
+
* @param options 请求选项
|
|
43
|
+
* @returns 评审结论标签列表
|
|
44
|
+
*/
|
|
45
|
+
async queryConclusionOptions(request, options) {
|
|
46
|
+
return this.post(API_PATHS.QUERY_CONCLUSION_OPTION, request, options);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=review.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review.js","sourceRoot":"","sources":["../../../src/service/workitem/review.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAA8B,MAAM,4BAA4B,CAAC;AASrF,aAAa;AACb,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,kBAAkB;IAClB,aAAa,EAAE,qCAAqC;IACpD,oBAAoB;IACpB,kBAAkB,EAAE,0CAA0C;IAC9D,gBAAgB;IAChB,uBAAuB,EAAE,sDAAsD;CAChF,CAAC;AAEF;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,WAAW;IAC5C;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CACV,OAA4B,EAC5B,OAAqC;QAErC,MAAM,IAAI,CAAC,IAAI,CAAO,SAAS,CAAC,aAAa,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,UAAU,CACd,OAAgC,EAChC,OAAyD;QAEzD,OAAO,IAAI,CAAC,IAAI,CAA2B,SAAS,CAAC,kBAAkB,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7F,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,sBAAsB,CAC1B,OAAsC,EACtC,OAAyD;QAEzD,OAAO,IAAI,CAAC,IAAI,CAA2B,SAAS,CAAC,uBAAuB,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAClG,CAAC;CACF"}
|
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 搜索服务
|
|
3
|
+
* 100% 参考 Meego API 文档
|
|
4
|
+
*
|
|
5
|
+
* 提供工作项的多种搜索方式:
|
|
6
|
+
* - 筛选(单空间/跨空间)
|
|
7
|
+
* - 复杂条件搜索
|
|
8
|
+
* - 关联工作项搜索
|
|
9
|
+
* - 全局搜索
|
|
10
|
+
*/
|
|
11
|
+
import { BaseService, type ServiceRequestOptions } from '../../core/base-service.js';
|
|
12
|
+
import type { PaginatedResult } from '../../types/common.js';
|
|
13
|
+
import type { WorkItem, FilterWorkItemsRequest, FilterWorkItemsAcrossProjectRequest, SearchWorkItemsByParamsRequest, SearchByRelationRequest, CompositiveSearchRequest, CompositiveSearchItem } from '../../types/workitem.js';
|
|
14
|
+
/** API 路径 */
|
|
15
|
+
export declare const API_PATHS: {
|
|
16
|
+
/** 筛选工作项(单空间) */
|
|
17
|
+
FILTER: string;
|
|
18
|
+
/** 筛选工作项(跨空间) */
|
|
19
|
+
FILTER_ACROSS_PROJECT: string;
|
|
20
|
+
/** 复杂条件搜索(单空间) */
|
|
21
|
+
SEARCH_BY_PARAMS: string;
|
|
22
|
+
/** 关联工作项搜索(单空间) */
|
|
23
|
+
SEARCH_BY_RELATION: string;
|
|
24
|
+
/** 全局搜索 */
|
|
25
|
+
COMPOSITIVE_SEARCH: string;
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* 搜索服务
|
|
29
|
+
*
|
|
30
|
+
* 提供工作项的多种搜索能力
|
|
31
|
+
*/
|
|
32
|
+
export declare class SearchService extends BaseService {
|
|
33
|
+
/**
|
|
34
|
+
* 筛选工作项(单空间)
|
|
35
|
+
*
|
|
36
|
+
* 在指定空间内,根据工作项名称、用户、ID、时间、状态等条件筛选工作项
|
|
37
|
+
*
|
|
38
|
+
* @param projectKey 空间 ID 或域名
|
|
39
|
+
* @param request 筛选请求
|
|
40
|
+
* @param options 请求选项
|
|
41
|
+
* @returns 分页的工作项列表(最多 5000 条)
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* ```typescript
|
|
45
|
+
* // 按工作项类型和名称筛选
|
|
46
|
+
* const result = await client.workItem.search.filter('my-project', {
|
|
47
|
+
* work_item_type_keys: ['story'],
|
|
48
|
+
* work_item_name: '需求',
|
|
49
|
+
* page_size: 20,
|
|
50
|
+
* });
|
|
51
|
+
*
|
|
52
|
+
* // 按工作项 ID 列表精确查询
|
|
53
|
+
* const result = await client.workItem.search.filter('my-project', {
|
|
54
|
+
* work_item_type_keys: ['story', 'bug'],
|
|
55
|
+
* work_item_ids: [123, 456, 789],
|
|
56
|
+
* });
|
|
57
|
+
*
|
|
58
|
+
* // 按时间范围筛选
|
|
59
|
+
* const result = await client.workItem.search.filter('my-project', {
|
|
60
|
+
* work_item_type_keys: ['story'],
|
|
61
|
+
* created_at: {
|
|
62
|
+
* start: Date.now() - 7 * 24 * 60 * 60 * 1000, // 7天前
|
|
63
|
+
* end: Date.now(),
|
|
64
|
+
* },
|
|
65
|
+
* });
|
|
66
|
+
* ```
|
|
67
|
+
*/
|
|
68
|
+
filter(projectKey: string, request: FilterWorkItemsRequest, options?: ServiceRequestOptions<WorkItem>): Promise<PaginatedResult<WorkItem>>;
|
|
69
|
+
/**
|
|
70
|
+
* 筛选工作项(跨空间)
|
|
71
|
+
*
|
|
72
|
+
* 跨多个空间搜索符合条件的工作项
|
|
73
|
+
*
|
|
74
|
+
* @param request 筛选请求
|
|
75
|
+
* @param options 请求选项
|
|
76
|
+
* @returns 分页的工作项列表(最多 5000 条)
|
|
77
|
+
*
|
|
78
|
+
* @example
|
|
79
|
+
* ```typescript
|
|
80
|
+
* // 跨空间筛选需求
|
|
81
|
+
* const result = await client.workItem.search.filterAcrossProject({
|
|
82
|
+
* work_item_type_key: 'story',
|
|
83
|
+
* project_keys: ['project1', 'project2'],
|
|
84
|
+
* work_item_name: '需求',
|
|
85
|
+
* });
|
|
86
|
+
*
|
|
87
|
+
* // 按用户筛选
|
|
88
|
+
* const result = await client.workItem.search.filterAcrossProject({
|
|
89
|
+
* work_item_type_key: 'story',
|
|
90
|
+
* search_user: {
|
|
91
|
+
* user_keys: ['user123'],
|
|
92
|
+
* field_key: 'created_by',
|
|
93
|
+
* },
|
|
94
|
+
* });
|
|
95
|
+
* ```
|
|
96
|
+
*/
|
|
97
|
+
filterAcrossProject(request: FilterWorkItemsAcrossProjectRequest, options?: ServiceRequestOptions<WorkItem>): Promise<PaginatedResult<WorkItem>>;
|
|
98
|
+
/**
|
|
99
|
+
* 复杂条件搜索(单空间)
|
|
100
|
+
*
|
|
101
|
+
* 使用复杂的搜索条件组合搜索工作项,支持多种操作符和嵌套条件
|
|
102
|
+
*
|
|
103
|
+
* @param projectKey 空间 ID 或域名
|
|
104
|
+
* @param workItemTypeKey 工作项类型
|
|
105
|
+
* @param request 搜索请求
|
|
106
|
+
* @param options 请求选项
|
|
107
|
+
* @returns 分页的工作项列表(最多 5000 条)
|
|
108
|
+
*
|
|
109
|
+
* @example
|
|
110
|
+
* ```typescript
|
|
111
|
+
* // 搜索指定 ID 的工作项
|
|
112
|
+
* const result = await client.workItem.search.searchByParams('my-project', 'story', {
|
|
113
|
+
* search_group: {
|
|
114
|
+
* conjunction: 'AND',
|
|
115
|
+
* search_params: [
|
|
116
|
+
* {
|
|
117
|
+
* param_key: 'work_item_id',
|
|
118
|
+
* value: [123456],
|
|
119
|
+
* operator: 'HAS ANY OF',
|
|
120
|
+
* },
|
|
121
|
+
* ],
|
|
122
|
+
* },
|
|
123
|
+
* });
|
|
124
|
+
*
|
|
125
|
+
* // 组合条件搜索
|
|
126
|
+
* const result = await client.workItem.search.searchByParams('my-project', 'story', {
|
|
127
|
+
* search_group: {
|
|
128
|
+
* conjunction: 'AND',
|
|
129
|
+
* search_params: [
|
|
130
|
+
* { param_key: 'priority', value: ['P0', 'P1'], operator: 'HAS ANY OF' },
|
|
131
|
+
* { param_key: 'created_at', value: 1700000000000, operator: '>=' },
|
|
132
|
+
* ],
|
|
133
|
+
* },
|
|
134
|
+
* expand: { need_workflow: true },
|
|
135
|
+
* });
|
|
136
|
+
* ```
|
|
137
|
+
*/
|
|
138
|
+
searchByParams(projectKey: string, workItemTypeKey: string, request: SearchWorkItemsByParamsRequest, options?: ServiceRequestOptions<WorkItem>): Promise<PaginatedResult<WorkItem>>;
|
|
139
|
+
/**
|
|
140
|
+
* 搜索关联工作项
|
|
141
|
+
*
|
|
142
|
+
* 获取与指定工作项存在关联关系的工作项列表
|
|
143
|
+
*
|
|
144
|
+
* @param projectKey 空间 ID 或域名
|
|
145
|
+
* @param workItemTypeKey 工作项类型
|
|
146
|
+
* @param workItemId 工作项 ID
|
|
147
|
+
* @param request 搜索请求
|
|
148
|
+
* @param options 请求选项
|
|
149
|
+
* @returns 分页的关联工作项列表(最多 2000 条)
|
|
150
|
+
*
|
|
151
|
+
* @example
|
|
152
|
+
* ```typescript
|
|
153
|
+
* // 获取需求关联的缺陷列表
|
|
154
|
+
* const result = await client.workItem.search.searchByRelation(
|
|
155
|
+
* 'my-project',
|
|
156
|
+
* 'story',
|
|
157
|
+
* 123456,
|
|
158
|
+
* {
|
|
159
|
+
* relation_work_item_type_key: 'issue',
|
|
160
|
+
* relation_key: '_field_linked_story',
|
|
161
|
+
* }
|
|
162
|
+
* );
|
|
163
|
+
*
|
|
164
|
+
* // 使用对接标识查询
|
|
165
|
+
* const result = await client.workItem.search.searchByRelation(
|
|
166
|
+
* 'my-project',
|
|
167
|
+
* 'story',
|
|
168
|
+
* 123456,
|
|
169
|
+
* {
|
|
170
|
+
* relation_work_item_type_key: 'bug',
|
|
171
|
+
* relation_key: 'my_relation_alias',
|
|
172
|
+
* relation_type: 1, // 使用对接标识
|
|
173
|
+
* }
|
|
174
|
+
* );
|
|
175
|
+
* ```
|
|
176
|
+
*/
|
|
177
|
+
searchByRelation(projectKey: string, workItemTypeKey: string, workItemId: number, request: SearchByRelationRequest, options?: ServiceRequestOptions<WorkItem>): Promise<PaginatedResult<WorkItem>>;
|
|
178
|
+
/**
|
|
179
|
+
* 全局搜索
|
|
180
|
+
*
|
|
181
|
+
* 按照标题、描述、人员等多字段跨空间搜索工作项或视图
|
|
182
|
+
*
|
|
183
|
+
* @param request 搜索请求
|
|
184
|
+
* @param options 请求选项
|
|
185
|
+
* @returns 分页的搜索结果(最多 200 条)
|
|
186
|
+
*
|
|
187
|
+
* @example
|
|
188
|
+
* ```typescript
|
|
189
|
+
* // 搜索工作项
|
|
190
|
+
* const result = await client.workItem.search.compositiveSearch({
|
|
191
|
+
* query_type: 'workitem',
|
|
192
|
+
* query: '测试需求',
|
|
193
|
+
* query_sub_type: ['story'],
|
|
194
|
+
* page_size: 20,
|
|
195
|
+
* });
|
|
196
|
+
*
|
|
197
|
+
* // 搜索视图
|
|
198
|
+
* const result = await client.workItem.search.compositiveSearch({
|
|
199
|
+
* query_type: 'view',
|
|
200
|
+
* query: '我的视图',
|
|
201
|
+
* });
|
|
202
|
+
*
|
|
203
|
+
* // 限定空间范围搜索
|
|
204
|
+
* const result = await client.workItem.search.compositiveSearch({
|
|
205
|
+
* query_type: 'workitem',
|
|
206
|
+
* query: '紧急',
|
|
207
|
+
* project_keys: ['project1', 'project2'],
|
|
208
|
+
* });
|
|
209
|
+
* ```
|
|
210
|
+
*/
|
|
211
|
+
compositiveSearch(request: CompositiveSearchRequest, options?: ServiceRequestOptions<CompositiveSearchItem>): Promise<PaginatedResult<CompositiveSearchItem>>;
|
|
212
|
+
}
|
|
213
|
+
//# sourceMappingURL=search.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../src/service/workitem/search.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,WAAW,EAAE,KAAK,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACrF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EACV,QAAQ,EACR,sBAAsB,EACtB,mCAAmC,EACnC,8BAA8B,EAC9B,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACtB,MAAM,yBAAyB,CAAC;AAEjC,aAAa;AACb,eAAO,MAAM,SAAS;IACpB,iBAAiB;;IAEjB,iBAAiB;;IAEjB,kBAAkB;;IAElB,mBAAmB;;IAGnB,WAAW;;CAEZ,CAAC;AAEF;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,WAAW;IAC5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACG,MAAM,CACV,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,sBAAsB,EAC/B,OAAO,CAAC,EAAE,qBAAqB,CAAC,QAAQ,CAAC,GACxC,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IAUrC;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACG,mBAAmB,CACvB,OAAO,EAAE,mCAAmC,EAC5C,OAAO,CAAC,EAAE,qBAAqB,CAAC,QAAQ,CAAC,GACxC,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IAIrC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuCG;IACG,cAAc,CAClB,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,8BAA8B,EACvC,OAAO,CAAC,EAAE,qBAAqB,CAAC,QAAQ,CAAC,GACxC,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IAWrC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;IACG,gBAAgB,CACpB,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,MAAM,EACvB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,uBAAuB,EAChC,OAAO,CAAC,EAAE,qBAAqB,CAAC,QAAQ,CAAC,GACxC,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IAYrC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACG,iBAAiB,CACrB,OAAO,EAAE,wBAAwB,EACjC,OAAO,CAAC,EAAE,qBAAqB,CAAC,qBAAqB,CAAC,GACrD,OAAO,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC;CAOnD"}
|