查询个人工作台工作项列表
功能介绍
需要获取当前登录用户在租户空间中的所有工作项列表,包括原始需求、系统特性、研发需求、缺陷、任务类型,可调用此接口。用户可以根据类型、优先级、创建时间、更新时间、计划完成时间、状态、归属项目筛选出需要的工作项信息。
调用方法
请参见如何调用API。
URI
POST /v1/ipdprojectservice/projects/tenant/query
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
project_id |
否 |
String |
参数解释: 项目的32位uuid,项目唯一标识,通过查询项目列表(WorkSpace服务)接口获取,响应消息体中的project_id字段的值就是项目ID。 约束限制: 多个项目使用英文逗号分隔。每次最多支持10个项目查询,超出部分会截取去重后的前10个项目Id。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
issue_type |
是 |
String |
参数解释: 工作项类型。 约束限制: 多值使用英文逗号分隔。 取值范围:
默认取值: 不涉及。 |
请求参数
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
filter |
否 |
Array of Map<String,ConditionVO> objects |
参数解释: 查询过滤器的数组,每个数组元素就是一个查询条件,数组元素为Map<String, ConditionVO>类型,Map中的key表示查询的列,ConditionVO表示查询条件的值,值的来源根据key动态选择。 示例filter元素 {"descendants.plan_pi":{"values":["956200745322848257"],"operator":"||"}} ,表示查询项目下发布为956200745322848257的工作项。可以将这个查询条件翻译为SQL,select ... where plan_pi in ("956200745322848257"). plan_pi作为key ("descendants."表示在树形结构中搜索符合条件的子工作项,非必要条件。一般场景下,plan作为key即可),发布的id作为查询条件的值。如果要查询多个发布下的工作项,values数组中放入多个发布的id作为数组元素即可。 约束限制: 最大长度200。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
filter_mode |
否 |
String |
参数解释: 过滤模式 约束限制: 最大长度512。 取值范围:
默认取值: AND_OR |
|
page |
否 |
PageInfoVO object |
参数解释: 分页信息。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
sort |
否 |
Array of SortInfo objects |
参数解释: 排序条件。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
values |
否 |
Array of strings |
参数解释: 查询条件的值。 取值范围: 根据查询条件的key确定。如key为plan_pi,值则为发布的id;如果key为assignee等人员类型字段,值为用户id;若key为created_date等日期时间类型字段,一般为[1760284800000,1760371199999]这种起止时间戳,精确到毫秒。 约束限制: 最大长度200 |
|
operator |
否 |
String |
参数解释: 操作符 约束限制: 不涉及 取值范围: "||":表示查询目标和values之间的关系为或; "!":表示查询目标和values之间的关系为非; "=":表示查询目标和values之间的关系为等于,通常values中只有一个元素时使用; "<>"、"<"、">":表示查询目标和values之间的关系为区间、小于、大于,通常用于日期时间、整数类型的过滤,包含边界值。 默认取值: "||" |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
page_no |
否 |
Integer |
参数解释: 分页索引 约束限制: 不涉及 取值范围: 最小值1,最大值10000 默认取值: 1 |
|
page_size |
否 |
Integer |
参数解释: 分页大小 约束限制: 不涉及 取值范围: 最小值5,最大值200 默认取值: 200 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
field |
否 |
String |
参数解释: 排序字段code 约束限制: 不涉及 取值范围: 对应字段的唯一code,可选值可以通过查询字段模板列表接口获取,响应体中的code就是字段唯一标识。 默认取值: 不涉及 |
|
asc |
否 |
Boolean |
参数解释: 是否升序 约束限制: 不涉及 取值范围: true(是) false(否) 默认取值: 不涉及 |
响应参数
状态码:200
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
status |
String |
参数解释: 返回状态。 取值范围: success:响应成功 error:响应失败 |
|
message |
String |
参数解释: 信息 取值范围: 不涉及 |
|
result |
Map<String,Object> |
参数解释: 结果数据 |
状态码:400
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
error_code |
String |
错误码 |
|
error_msg |
String |
错误描述,对error_code的补充解释。 |
请求示例
查询个人工作台中状态为初始,优先级为高的第一页研发需求,每页15条
https://{endpoint}/v1/ipdprojectservice/projects/tenant/query?issue_type=IR,US&project_id=4f967f6f05554273b0476da123e73b41
{
"page" : {
"page_no" : 1,
"page_size" : 15
},
"filter" : [ {
"category" : {
"values" : [ "IR", "US", "AR", "SR" ],
"operator" : "||"
}
}, {
"priority" : {
"values" : [ "高" ],
"operator" : "||"
}
}, {
"status" : {
"values" : [ "Start" ],
"operator" : "||"
}
} ]
}
响应示例
状态码:200
OK
{
"status" : "success",
"message" : null,
"result" : {
"total" : 1,
"issues" : [ {
"promised" : null,
"type" : "raw requirement",
"src_domain" : {
"id" : "965714701520515072",
"name" : "IPD-系统设备类-0217",
"title" : "IPD-系统设备类-0217",
"project_id" : "e4b0424709934bd1a54753e70336564d",
"parent_id" : null,
"category" : "Project",
"created_by" : "a360371833bf4c558f796fd707b44daf",
"model_id" : "10001"
},
"domain_id" : {
"id" : "965714701520515072",
"name" : "IPD-系统设备类-0217",
"title" : "IPD-系统设备类-0217",
"project_id" : "e4b0424709934bd1a54753e70336564d",
"parent_id" : null,
"category" : "Project",
"created_by" : "a360371833bf4c558f796fd707b44daf",
"model_id" : "10001"
},
"send_from" : "",
"number" : "RR20240402742063",
"send_to" : "",
"convolution_actual_hours" : null,
"workload_man_day" : null,
"id" : "981935538274476033",
"state" : "正在工作",
"stay_days" : 1,
"assigned_cc" : null,
"submit_time" : "1712041275000",
"workitem2label" : null,
"close_time" : null,
"priority" : {
"id" : "965714705672876036",
"display_value" : "中",
"value" : "中",
"code" : "中",
"value_py" : "2",
"sequence" : 2,
"level" : 1,
"domain_id" : "965714701520515072",
"belong_definition_type" : "5"
},
"modified_date" : "1712041276000",
"created_by" : {
"watcher" : null,
"user_id" : "a360371833bf4c558f796fd707b44daf",
"user_num_id" : 4091,
"user_name" : "devcloud_devcloud_01",
"domain_id" : "4e919d73499648e3b0292cd3cbef806a",
"domain_name" : "devcloud_devcloud_01",
"nick_name" : "测试账号",
"role_id" : "8dc2cd191a104148a77f937681f9a5d6,6af50476ba89492698d237fb6fa456d6",
"role_name" : "项目管理员,项目经理",
"role_code" : "project_admin,Project manager",
"image_id" : null,
"region" : null,
"has_removed" : null
},
"break_status" : {
"id" : "965714705672876041",
"display_value" : "未分解",
"value" : "undecomposed",
"code" : "undecomposed",
"value_py" : "undecomposed",
"sequence" : 2,
"level" : 1,
"domain_id" : "965714701520515072",
"belong_definition_type" : "5"
},
"status_modified_date" : "1712041276000",
"canceled" : null,
"expect_delivery_time" : null,
"parent_id" : null,
"assignee" : {
"watcher" : null,
"user_id" : "a360371833bf4c558f796fd707b44daf",
"user_num_id" : 4091,
"user_name" : "devcloud_devcloud_01",
"domain_id" : "4e919d73499648e3b0292cd3cbef806a",
"domain_name" : "devcloud_devcloud_01",
"nick_name" : "测试账号",
"role_id" : "8dc2cd191a104148a77f937681f9a5d6,6af50476ba89492698d237fb6fa456d6",
"role_name" : "项目管理员,项目经理",
"role_code" : "project_admin,Project manager",
"image_id" : null,
"region" : null,
"has_removed" : null
},
"region" : "region",
"status" : {
"id" : "965714705815482388",
"belonging" : "START",
"space_id" : "965714701520515072",
"name" : "分析",
"status_category" : null,
"code" : "Analyse",
"definition_type" : "5",
"belong_definition_type" : 3,
"belong_scope" : null,
"display_value" : "分析",
"position" : 2,
"displayable" : 1,
"editable" : 1,
"deletable" : 1,
"mutable" : 1,
"title_py" : "fx",
"builtin" : null,
"label" : null,
"description" : null,
"created_by" : "a360371833bf4c558f796fd707b44daf",
"created_userinfo" : null,
"created_on" : null,
"created_date" : 1708202727000,
"modified_date" : 1708202727000,
"modified_by" : "a360371833bf4c558f796fd707b44daf",
"category_code" : null,
"editing_fields" : null,
"associate" : null,
"linkage_node_fields" : false
},
"tenant_id" : "4e919d73499648e3b0292cd3cbef806a",
"link" : "",
"is_suspended" : null,
"change_status" : null,
"title" : "RR-01",
"sum_workload_man_day" : null,
"plan_end_date" : null,
"rr2ir" : "",
"convolution_plan_hours" : null,
"submitted_by" : [ {
"watcher" : null,
"user_id" : "a360371833bf4c558f796fd707b44daf",
"user_num_id" : 4091,
"user_name" : "devcloud_devcloud_01",
"domain_id" : "4e919d73499648e3b0292cd3cbef806a",
"domain_name" : "devcloud_devcloud_01",
"nick_name" : "测试账号",
"role_id" : "8dc2cd191a104148a77f937681f9a5d6,6af50476ba89492698d237fb6fa456d6",
"role_name" : "项目管理员,项目经理",
"role_code" : "project_admin,Project manager",
"image_id" : null,
"region" : null,
"has_removed" : null
} ],
"rr2us" : "",
"cascade_delete" : "none",
"recipient" : [ {
"watcher" : null,
"user_id" : "a360371833bf4c558f796fd707b44daf",
"user_num_id" : 4091,
"user_name" : "devcloud_devcloud_01",
"domain_id" : "4e919d73499648e3b0292cd3cbef806a",
"domain_name" : "devcloud_devcloud_01",
"nick_name" : "测试账号",
"role_id" : "8dc2cd191a104148a77f937681f9a5d6,6af50476ba89492698d237fb6fa456d6",
"role_name" : "项目管理员,项目经理",
"role_code" : "project_admin,Project manager",
"image_id" : null,
"region" : null,
"has_removed" : null
} ],
"modified_by" : {
"watcher" : null,
"user_id" : "a360371833bf4c558f796fd707b44daf",
"user_num_id" : 4091,
"user_name" : "devcloud_devcloud_01",
"domain_id" : "4e919d73499648e3b0292cd3cbef806a",
"domain_name" : "devcloud_devcloud_01",
"nick_name" : "测试账号",
"role_id" : "8dc2cd191a104148a77f937681f9a5d6,6af50476ba89492698d237fb6fa456d6",
"role_name" : "项目管理员,项目经理",
"role_code" : "project_admin,Project manager",
"image_id" : null,
"region" : null,
"has_removed" : null
},
"created_date" : "1712041275000",
"closed_flag" : null,
"category" : "RR",
"collaborative_status" : [ ],
"setup" : true
} ]
}
}
状态码
|
状态码 |
描述 |
|---|---|
|
200 |
OK |
|
400 |
错误信息 |
错误码
请参见错误码。