
# 页面报表展示 - ListReportsv4
#### 功能介绍
此接口用于页面报表展示,同页面 测试 -\> 测试质量看板 -\> 右侧看板展示下划 -\> 自定义测试报表/自定义分布报表/进度报表
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-testman/cloudtest_03_2000.html)。
#### URI
GET /testreport/v4/{project_id}/versions/{version_id}/custom-reports
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
|:---|:---|:---|:---|
| project_id | 是    | String | **参数解释** 项目UUID，项目唯一标识，固定长度32位字符（字母和数字）。获取方式请参见[获取项目ID](https://support.huaweicloud.com/api-testman/cloudtest_03_4003.html)。 **约束限制** 不涉及 **取值范围** 32个字符组成的字符串 **默认取值** 不涉及                                                                               |
| version_id | 是    | String | **参数解释** 版本id **约束限制** 不涉及 **取值范围** 不涉及 获取方法： 从GET /v4/projects/{project_id}/iterator-infos的返回字段获取 从GET /v1/{project_id}/branches 的返回字段获取 **默认取值** 不涉及 |
   
表2Query参数 
| 参数        | 是否必选 | 参数类型    | 描述                                                                                  |
|:---|:---|:---|:---|
| type      | 是    | String  | **参数解释** 报表类型 1：首页用例库， 2：质量报告                      |
| page_no   | 否    | Integer | 页码 **默认取值：** 1    |
| page_size | 否    | Integer | 每页数量 **默认取值：** 10 |
   
#### 请求参数
无
#### 响应参数
**状态码：200**
表3响应Body参数 
| 参数    | 参数类型                                                                               | 描述         |
|:---|:---|:---|
| value | Array of [CustomReportListVo] objects | 页面报表展示返回参数 |
   
 表4CustomReportListVo 
| 参数                 | 参数类型                                                                             | 描述                     |
|:---|:---|:---|
| id                 | String                                                                           | 报表ID                   |
| name               | String                                                                           | 报表名称                   |
| workpiece_type     | String                                                                           | 工件类型(用例:case,测试套:task) |
| analysis_dimension | String                                                                           | 分析维度                   |
| compare_dimension  | String                                                                           | 对比维度                   |
| chart_data         | Array of [ReportChartDataVo] objects | 报表图表数据                 |
| filter             | [ReportFilter] object                     | 过滤条件                   |
   
 表5ReportChartDataVo 
| 参数          | 参数类型                                                                 | 描述                                                                                                                              |
|:---|:---|:---|
| id          | String                                                               | **参数解释** 报表id **取值范围** 不涉及   |
| name        | String                                                               | **参数解释** 报表名称 **取值范围** 不涉及   |
| analyze_dim | [ReportDimVo] object           | **参数解释** 分析维度数据 **取值范围** 不涉及 |
| compare_dim | Array of [ReportDimVo] objects | **参数解释** 对比维度数据 **取值范围** 不涉及 |
   
 表6ReportDimVo 
| 参数    | 参数类型    | 描述                                                                                                                          |
|:---|:---|:---|
| id    | String  | **参数解释** id **取值范围** 不涉及 |
| name  | String  | **参数解释** 名称 **取值范围** 不涉及 |
| value | Integer | **参数解释** 值 **取值范围** 不涉及  |
   
 表7ReportFilter 
| 参数           | 参数类型   | 描述    |
|:---|:---|:---|
| version_uri  | String | 版本URI |
| iterator_uri | String | 迭代URI |
   
**状态码：400**
表8响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                  |
|:---|:---|:---|
| error_code | String | **参数解释** 接口调用失败错误码 **取值范围** 不涉及  |
| error_msg  | String | **参数解释** 接口调用失败错误信息 **取值范围** 不涉及 |
   
**状态码：500**
表9响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                  |
|:---|:---|:---|
| error_code | String | **参数解释** 接口调用失败错误码 **取值范围** 不涉及  |
| error_msg  | String | **参数解释** 接口调用失败错误信息 **取值范围** 不涉及 |
   
#### 请求示例
获取进度报表数据
```
GET https://{endpoint}/testreport/v4/{project_id}/versions/{version_id}/custom-reports?type=1&page_no=1&page_size=10
{
  "project_uuid" : "098ad17656684cc5a49a4f7007517f95",
  "version_uri" : "v82q0001051ancve",
  "type" : 1,
  "page_no" : 1,
  "page_size" : 10
}
```
#### 响应示例
**状态码：200**
OK
```
{
  "value" : [ {
    "id" : "string",
    "name" : "string",
    "workpiece_type" : "string",
    "analysis_dimension" : "string",
    "compare_dimension" : "string",
    "chart_data" : [ {
      "id" : "1",
      "name" : "报表名称",
      "analyze_dim" : {
        "id" : "1",
        "name" : "名称",
        "value" : 0
      },
      "compare_dim" : [ {
        "id" : "1",
        "name" : "名称",
        "value" : 0
      } ]
    } ],
    "filter" : {
      "version_uri" : "string",
      "iterator_uri" : "string"
    }
  } ]
}
```
**状态码：400**
Bad Request
```
{
  "error_code" : "CLOUDTEST.00000001",
  "error_msg" : "返回的错误信息"
}
```
**状态码：500**
Internal Server Error
```
{
  "error_code" : "CLOUDTEST.00000001",
  "error_msg" : "返回的错误信息"
}
```
#### 状态码
| 状态码 | 描述                    |
|:---|:---|
| 200 | OK                    |
| 400 | Bad Request           |
| 500 | Internal Server Error |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-testman/ErrorCode.html)。
