项审阅
跟踪器项审阅是 Codebeamer 8.0 中引入的一项功能。
|
|
“审阅中心”是另一项功能;其中的项无法通过此端点进行访问。
|
获取项审阅架构
开始新的项审阅
POST /item/review
请求正文必须包含审阅规范,其中包含:
• 要审阅的项,
• 审阅者 (用户) 列表,
• 审阅配置。
例如:用于审阅 /item/1000 的规范:
{
"item": {
"uri": "/item/1000",
"name": "Provide a new item review functionality"
},
"reviewers": [
{
"uri": "/user/1",
"name": "bond"
},
{
"uri": "/user/3",
"name": "klaus"
}
],
"config": {
"signature": 1,
"plusRole": false,
"rejects": 1
}
}
其中:
• 用户 bond 和 klaus 应为审阅者。
• 审阅者必须输入密码才能提交其投票 ("signature": 1)。
◦ "signature": 0 - 无需额外的审阅者身份验证 (此为默认值)。
◦ "signature": 1 - 审阅者必须输入其密码。
◦ "signature": 2 - 审阅者需要输入其用户名和密码。
• 如果配置 "plusRole": true (仅 Codebeamer 10.0 及更新版本),则在提交审阅 (请参阅下文) 时,还必须指定 "reviewer" 将用于执行审阅的 "role" 版本。
• 如果多个审阅者拒绝,则应将审阅视为已拒绝。
更新审阅配置
PUT /item/review
请求正文必须包含 URI 和要更新的审阅配置。例如,禁用额外的审阅者身份验证并明确指定需要批准的数量:
{
"uri": "/item/1000/version/2/review",
"config": {
"signature": 0,
"plusRole": true,
"approvals": 2
}
}
请求的批准数 (赞成票数) 将进行调整,以与审阅者的实际数量和允许的拒绝数相匹配。
在上面的示例中,有 2 个审阅者和 1 次允许拒绝,因此必要批准的实际数量将为 1 (请参阅下文)。
获取项的所有审阅
GET {itemURI}/reviews
结果是项审阅汇总/统计信息的列表。例如:
GET https://hostname/cb/rest/item/1000/reviews
[
{
"uri": "/item/1000/version/2/review",
"item": {
"uri": "/item/1000",
"name": "Provide a new item review functionality",
"version": 2,
"status": {
"id": 3,
"name": "Waiting for approval"
}
},
"config": {
"approvals": 1,
"rejects": 1,
"signature": 0,
"plusRole": true,
"closed": false
},
"voters": 2,
"votes": 0,
"approvals": 0,
"approved": false,
"rejected": false
}
]
获取关于特定项修订版本审阅的汇总/统计信息
GET {itemURI}/version/{version}/review
获取项审阅的所有审阅者/投票
GET {itemURI}/version/{version}/reviewers
例如:GET https://hostname/cb/rest/item/1000/version/2/reviewers
[
{
"reviewer": {
"uri": "/user/1",
"name": "bond"
},
"reviewedAt": "2016-07-18T16:38:45+02:00",
"role": {
"uri": "/role/3",
"name": "Product Owner"
},
"rating": 1
},
{
"reviewer": {
"uri": "/user/3",
"name": "klaus"
}
}
]
在本示例中:
• 审阅者 "bond" 已审阅并接受 ("rating" : 1),其 "Product Owner" 的 "role" (职能) 中的项。
请知悉:有关 "role" 的信息仅在 Codebeamer 10.0 及更新版本出现,如果审阅配置请求 "plusRole" : true
• 审阅者 "klaus" 尚未审阅项。
提交项审阅 (投票)
POST {itemURI}/version/{version}/review
对于指定项修订版本,请求正文必须包含 "reviewer" URI 及其投票/评级 (0=已拒绝,1=已批准),例如
{
"reviewer": "/user/klaus",
"rating": 1
}
在 Codebeamer 10.0 及之后的修订版本中,只有在审阅配置的同时要求 "reviewer" 在 "role" 中执行审阅时:("plusRole" : true),主体还必须包含角色引用,例如
{
"reviewer": "/user/klaus",
"role": "/role/Project Admin",
"rating": 1
}
如果请求了一个角色,但您没有指定 "role",或者审阅者没有此角色 (GET {userURI}/{itemURI}/roles) 来审阅项,投票/评级将被拒绝。
如果提交的投票是决定性的投票,并且适当的指定目标状况已定义,例如 "
approvedStatus",响应将包含立即执行此状态转变的所有必要信息 (请参阅
执行状态转变的响应)。
获取特定审阅者/用户的所有项审阅
GET {userURI}/item/reviews[?reviewed={true|false}]
布尔型参数 reviewed 是可选参数。默认返回已提交 (true) 和待处理 (false) 的审阅。
例如:GET https://hostname/cb/rest/user/bond/item/reviews
[
{
"uri": "/item/1000/version/2/user/1/review",
"item": {
"uri": "/item/1000",
"name": "Provide a new item review functionality",
"version": 2,
"status": {
"id": 3,
"name": "Waiting for approval"
}
},
"reviewedAt": "2016-07-18T16:38:45+02:00",
"role": {
"uri": "/role/3",
"name": "Product Owner"
},
"rating": 1
}
]
获取特定审阅者/用户和项的所有审阅
GET {userURI}/{itemURI}/reviews[?reviewed={true|false}]
GET {itemURI}/{userURI}/reviews[?reviewed={true|false}]
获取特定审阅者/用户对特定项修订版本的投票/评级
GET {userURI}/{itemURI}/version/{version}/review[?reviewed={true|false}]
GET {itemURI}/version/{version}/{userURI}/review[?reviewed={true|false}]