
# 查询IPD项目租户字段列表 - ListIpdFields
#### 功能介绍
查询IPD项目租户字段列表，包括系统预设字段和租户自定义字段。
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-projectman/projectman_api_1002.html)。
#### 授权信息
当前API调用无需身份策略权限。
#### URI
POST /v1/ipdprojectservice/tenant/fields/query
表1Query参数 
| 参数   | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                         |
|:---|:---|:---|:---|
| page | 是    | Integer | **参数解释**： 分页索引。 **约束限制**： 不涉及 **取值范围**： 最小值1，最大值10000 **默认取值**： 不涉及 |
| size | 是    | Integer | **参数解释**： 分页大小。 **约束限制**： 不涉及 **取值范围**： 最小值5，最大值200 **默认取值**： 不涉及   |
   
#### 请求参数
表2请求Body参数 
| 参数        | 是否必选 | 参数类型                                                | 描述                                                                                                                                                                                                                                                                                                                        |
|:---|:---|:---|:---|
| search    | 否    | String                                              | **参数解释**： 关键字搜索，支持按字段标题、字段类型、字段创建人搜索。 **约束限制**： 不涉及。 **取值范围**： 不涉及。 **默认取值**： 不涉及。 |
| sort_info | 否    | [SortInfo] object | **参数解释**： 排序方式                                                                                                                                                                                                                                                                                                            |
   
 表3SortInfo 
| 参数    | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
|:---|:---|:---|:---|
| field | 否    | String  | **参数解释**： 排序字段code。 **约束限制**： 不涉及 **取值范围**： 通过[查询字段模板列表](https://support.huaweicloud.com/api-projectman/ListIssueFields.html)接口获取，响应体中的**code**就是字段唯一标识。 **默认取值**： 不涉及                                                                                                                                                    |
| asc   | 否    | Boolean | **参数解释**： 是否升序。 **约束限制**： 不涉及 **取值范围**： - true：升序   - false：降序    **默认取值**： 不涉及 |
   
#### 响应参数
**状态码：200**
表4响应Body参数 
| 参数     | 参数类型                                                         | 描述              |
|:---|:---|:---|
| page   | [PageVO] object             | **参数解释**： 分页信息。 |
| result | Array of [FieldVO] objects | **参数解释**： 返回数据。 |
   
 表5PageVO 
| 参数    | 参数类型   | 描述                                                                                                                               |
|:---|:---|:---|
| page  | String | **参数解释**： 当前页。 **取值范围**： 不涉及  |
| size  | String | **参数解释**： 每页条数。 **取值范围**： 不涉及 |
| count | String | **参数解释**： 数据总数。 **取值范围**： 不涉及 |
   
 表6FieldVO 
| 参数                    | 参数类型                                                                   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
|:---|:---|:---|
| id                    | String                                                                 | **参数解释**： 字段唯一标识。 **取值范围**： 5\~32个字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| code                  | String                                                                 | **参数解释**： 字段编码。在项目中使用时一般使用code作为字段标识而不是字段ID。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| display_name          | String                                                                 | **参数解释**： 字段显示名称。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| created_by            | String                                                                 | **参数解释**： 字段创建人ID。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| created_date          | String                                                                 | **参数解释**： 字段创建时间。时间戳格式，单位毫秒。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| modified_by           | String                                                                 | **参数解释**： 字段最后修改人ID。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| modified_date         | String                                                                 | **参数解释**： 字段最后修改时间。时间戳格式，单位毫秒。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| field_type            | String                                                                 | **参数解释**： 字段类型标识。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| field_type_id         | String                                                                 | **参数解释**： 字段类型ID。用于区分不同的字段类型。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| field_type_name       | String                                                                 | **参数解释**： 字段类型名称。如单选列表、多选列表、多行文本等。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| definition_type       | String                                                                 | **参数解释**： 字段定义类型。用于区分系统字段和自定义字段。 **取值范围**： - 1：系统字段。   - 2：系统字段。   - 3：系统字段。   - 4：租户自定义字段。   - 5：项目自定义字段。    |
| show_on_card          | Boolean                                                                | **参数解释**： 是否显示在云服务类型的迭代看板卡片模式中。 **取值范围**： - true：显示。   - false：不显示。                                                                                                                                                                                                                                                                                                                                                                                                          |
| optional              | Boolean                                                                | **参数解释**： 字段是否为必填项。 **取值范围**： - true：必填。   - false：非必填。                                                                                                                                                                                                                                                                                                                                                                                                                      |
| controlled            | Boolean                                                                | **参数解释**： 字段是否受控。如果工作项已经基线，修改受控字段值时会触发变更评审。 **取值范围**： - true：受控。   - false：不受控。                                                                                                                                                                                                                                                                                                                                                                                              |
| immutable             | Boolean                                                                | **参数解释**： 字段是否不可变。更新接口无法更新不可变字段。 **取值范围**： - true：不可变。   - false：可变。                                                                                                                                                                                                                                                                                                                                                                                                         |
| no                    | Integer                                                                | **参数解释**： 字段排序序号。数值越小越靠前显示。 **取值范围**： 0\~9999的整数。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| default_value         | String                                                                 | **参数解释**： 字段默认值。创建工作项时自动填充。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| option                | [OptionEntity] object           | **参数解释**： 字段选项。单选列表类型字段的选项信息，包含选项ID、编码、显示名称等属性。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| all_options           | Array of [OptionEntity] objects | **参数解释**： 字段所有选项。多选列表类型字段的全部选项信息，数组元素包含选项ID、编码、显示名称等属性。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| has_same_display_name | Boolean                                                                | **参数解释**： 是否存在同名字段。用于检测字段名称冲突。 **取值范围**： - true：存在同名字段。   - false：不存在同名字段。                                                                                                                                                                                                                                                                                                                                                                                                   |
   
 表7OptionEntity 
| 参数            | 参数类型    | 描述                                                                                                                                                                 |
|:---|:---|:---|
| id            | String  | **参数解释**： 选项id。 **取值范围**： 不涉及                                   |
| code          | String  | **参数解释**： 选项code值。 **取值范围**： 不涉及                                |
| display_value | String  | **参数解释**： 选项名称。 **取值范围**： 不涉及                                   |
| value         | String  | **参数解释**： 选项唯一标识。 **取值范围**： 不涉及                                 |
| level         | Integer | **参数解释**： 选项层级。用于区分层级字段的层级深度。 **取值范围**： 1\~4的整数，层级字段最多支持4层。     |
| sequence      | Integer | **参数解释**： 选项排序序号。数值越小越靠前显示。 **取值范围**： 0\~2147483647。            |
| parent_id     | String  | **参数解释**： 父选项ID。层级选项中指向父级选项的标识，顶级选项为空或null。 **取值范围**： 2\~32个字符。 |
   
**状态码：400**
表8响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                                 |
|:---|:---|:---|
| error_code | String | **参数解释**： 错误码。 **取值范围**： 不涉及。                   |
| error_msg  | String | **参数解释**： 错误描述，对error_code的补充解释。 **取值范围**： 不涉及。 |
   
#### 请求示例
查询租户字段列表
```
POST https://{endpoint}/v1/ipdprojectservice/tenant/fields/query?page=1&size=10
{
  "search" : ""
}
```
#### 响应示例
**状态码：200**
ok
```
{
  "page" : {
    "page" : 1,
    "size" : 10,
    "count" : 2
  },
  "result" : [ {
    "display_name" : "更新租户字段选项2",
    "code" : "c7354343193790545920",
    "name" : "c7354343193790545920",
    "id" : "1162422376023437316",
    "show" : false,
    "description" : "",
    "default_value" : "",
    "field_type" : "pick",
    "field_id" : "1162422376023437316",
    "created_by" : "Amy",
    "created_userinfo" : {
      "user_id" : "c2d89e38a64a466f8f945f595df4402d",
      "user_num_id" : 1274137,
      "user_name" : "ForTest",
      "domain_id" : "aae03ca0d6814951980945b6eeca56cd",
      "domain_name" : "HIS_CodeArtsReq",
      "nick_name" : "Amy",
      "role_id" : null,
      "role_name" : null,
      "role_code" : null
    },
    "created_date" : "1755072691000",
    "modified_by" : "Amy",
    "modified_date" : "1755072755000",
    "definition_type" : "4",
    "field_type_id" : "10001",
    "alm_field_type_id" : "10001",
    "field_type_name" : "单选列表",
    "using_status" : true,
    "controlled" : false,
    "immutable" : false,
    "optional" : true,
    "show_on_split" : false,
    "show_on_filter" : true,
    "show_on_edit" : false,
    "show_on_table" : true,
    "sort_on_table" : true,
    "no" : 9999,
    "option" : [ {
      "id" : "1162422376023437313",
      "display_value" : "A",
      "value" : "1162422376023437313",
      "code" : "1162422376023437313",
      "value_py" : "A",
      "sequence" : 0,
      "level" : 1,
      "domain_id" : "-1",
      "belong_definition_type" : "4"
    }, {
      "id" : "1162422376023437314",
      "display_value" : "B",
      "value" : "1162422376023437314",
      "code" : "1162422376023437314",
      "value_py" : "B",
      "sequence" : 1,
      "level" : 1,
      "domain_id" : "-1",
      "belong_definition_type" : "4"
    }, {
      "id" : "1162422376023437315",
      "display_value" : "C",
      "value" : "1162422376023437315",
      "code" : "1162422376023437315",
      "value_py" : "C",
      "sequence" : 2,
      "level" : 1,
      "domain_id" : "-1",
      "belong_definition_type" : "4"
    } ],
    "option_editable" : true,
    "has_update_privilege" : false,
    "has_same_display_name" : false
  }, {
    "display_name" : "更新租户层级字段",
    "code" : "c7354346623145807872",
    "name" : "c7354346623145807872",
    "id" : "1162425805358092292",
    "show" : false,
    "description" : "",
    "default_value" : "",
    "field_type" : "pick",
    "field_id" : "1162425805358092292",
    "created_by" : "Amy",
    "created_userinfo" : {
      "user_id" : "c2d89e38a64a466f8f945f595df4402d",
      "user_num_id" : 1274137,
      "user_name" : "ForTest",
      "domain_id" : "aae03ca0d6814951980945b6eeca56cd",
      "domain_name" : "HIS_CodeArtsReq",
      "nick_name" : "Amy",
      "role_id" : null,
      "role_name" : null,
      "role_code" : null
    },
    "created_date" : "1755073508000",
    "modified_by" : "Amy",
    "modified_date" : "1755073639000",
    "definition_type" : "4",
    "field_type_id" : "10011",
    "alm_field_type_id" : "10011",
    "field_type_name" : "层级字段",
    "using_status" : true,
    "controlled" : false,
    "immutable" : false,
    "optional" : true,
    "show_on_split" : false,
    "show_on_filter" : true,
    "show_on_edit" : false,
    "show_on_table" : true,
    "sort_on_table" : true,
    "no" : 9999,
    "option" : [ {
      "id" : "1162425805358092289",
      "display_value" : "A",
      "value" : "1162425805358092289",
      "code" : "1162425805358092289",
      "value_py" : "A",
      "sequence" : 0,
      "level" : 1,
      "domain_id" : "-1",
      "belong_definition_type" : "4"
    }, {
      "id" : "1162425805358092290",
      "display_value" : "AAa1",
      "value" : "1162425805358092290",
      "code" : "1162425805358092290",
      "value_py" : "AAa1",
      "sequence" : 0,
      "level" : 2,
      "parent_id" : "1162425805358092289",
      "domain_id" : "-1",
      "belong_definition_type" : "4"
    }, {
      "id" : "1162425805358092291",
      "display_value" : "AAA1",
      "value" : "1162425805358092291",
      "code" : "1162425805358092291",
      "value_py" : "AAA1",
      "sequence" : 0,
      "level" : 3,
      "parent_id" : "1162425805358092290",
      "domain_id" : "-1",
      "belong_definition_type" : "4"
    }, {
      "id" : "1162426355597901824",
      "display_value" : "AA2",
      "value" : "1162426355597901824",
      "code" : "1162426355597901824",
      "value_py" : "AA2",
      "sequence" : 1,
      "level" : 2,
      "parent_id" : "1162425805358092289",
      "domain_id" : "-1",
      "belong_definition_type" : "4"
    }, {
      "id" : "1162426355597901825",
      "display_value" : "AAA2",
      "value" : "1162426355597901825",
      "code" : "1162426355597901825",
      "value_py" : "AAA2",
      "sequence" : 0,
      "level" : 3,
      "parent_id" : "1162426355597901824",
      "domain_id" : "-1",
      "belong_definition_type" : "4"
    } ],
    "option_editable" : true,
    "has_update_privilege" : false,
    "has_same_display_name" : false
  } ]
}
```
**状态码：400**
请求失败的响应。例如无操作权限、项目不存在。
```
{
  "error_code" : "PM.02174103",
  "error_msg" : "无操作权限"
}
```
#### 状态码
| 状态码 | 描述                     |
|:---|:---|
| 200 | ok                     |
| 400 | 请求失败的响应。例如无操作权限、项目不存在。 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-projectman/ErrorCode.html)。
