
# 批量下线 - BatchOffline
#### 功能介绍
批量下线。
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-dataartsstudio/making_request.html)。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-dataartsstudio/abcd.html)。
- 如果使用身份策略授权，当前API调用无需身份策略权限。
 
#### URI
POST /v2/{project_id}/design/approvals/batch-offline
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                    |
|:---|:---|:---|:---|
| project_id | 是    | String | 项目ID，获取方法请参见[项目ID和账号ID](https://support.huaweicloud.com/api-dataartsstudio/projectid_accountid.html)。 |
   
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                     |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | IAM Token，通过调用IAM服务获取用户Token接口获取（响应消息头中X-Subject-Token的值） 使用Token认证时必选。                                                                |
| workspace    | 是    | String | 工作空间ID，获取方法请参见[实例ID和工作空间ID](https://support.huaweicloud.com/api-dataartsstudio/dataartsstudio_02_0350.html)。                                                           |
| X-Project-Id | 否    | String | 项目ID，获取方法请参见[项目ID和账号ID](https://support.huaweicloud.com/api-dataartsstudio/projectid_accountid.html)。 多project场景采用AK/SK认证的接口请求，则该字段必选。 |
| Content-Type | 否    | String | 默认值：application/json;charset=UTF-8 可选，有Body体的情况下必选，没有Body体则无需填写和校验。                                                                    |
   
表3请求Body参数 
| 参数                 | 是否必选 | 参数类型                                                           | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|:---|
| biz_infos          | 是    | Array of [BizInfoVO] objects | 业务信息列表。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| approver_user_id   | 是    | String                                                         | 审批人ID。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| approver_user_name | 是    | String                                                         | 审批人姓名。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| email              | 否    | String                                                         | 审批人邮箱，仅在创建审批人时填写。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| fast_approval      | 否    | Boolean                                                        | 快速审批，非正式场景，用于快速上手体验，仅在当前用户有审批权限时提供。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| schedule_time      | 否    | String                                                         | 作业调度时间。格式参照：30_18，表示18点30分。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| env_type           | 否    | String                                                         | 开发生产环境类型。 枚举值： - INVALID_TYPE: 无效环境   - DEV_TYPE: 开发环境   - PROD_TYPE: 生产环境   - DEV_PROD_TYPE: 开发生产环境    |
   
 表4BizInfoVO 
| 参数       | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
|:---|:---|:---|:---|
| biz_id   | 是    | String | 业务ID，ID字符串。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| biz_type | 是    | String | 业务实体类型。 枚举值： - AGGREGATION_LOGIC_TABLE: 汇总表   - ATOMIC_INDEX: 原子指标   - ATOMIC_METRIC: 原子指标（新）   - BIZ_CATALOG: 流程架构目录   - BIZ_METRIC: 业务指标   - CODE_TABLE: 码表   - COMMON_CONDITION: 通用限定   - COMPOSITE_METRIC: 复合指标（新）   - COMPOUND_METRIC: 复合指标   - CONDITION_GROUP: 限定分组   - DEGENERATE_DIMENSION: 退化维度   - DERIVATIVE_INDEX: 衍生指标   - DERIVED_METRIC: 衍生指标（新）   - DIMENSION: 维度   - DIMENSION_ATTRIBUTE: 维度属性   - DIMENSION_HIERARCHIES: 维度层级   - DIMENSION_LOGIC_TABLE: 维度表   - DIMENSION_TABLE_ATTRIBUTE: 维度属性   - DIRECTORY: 目录   - FACT_ATTRIBUTE: 事实表属性   - FACT_DIMENSION: 事实表维度   - FACT_LOGIC_TABLE: 事实表   - FACT_MEASURE: 事实表度量   - FUNCTION: 函数   - INFO_ARCH: 信息架构（批量修改主题使用）   - MODEL: 模型   - QUALITY_RULE: 质量规则   - SECRECY_LEVEL: 密级   - STANDARD_ELEMENT: 数据标准   - STANDARD_ELEMENT_TEMPLATE: 数据标准模板   - SUBJECT: 主题   - SUMMARY_DIMENSION_ATTRIBUTE: 汇总表维度属性   - SUMMARY_INDEX: 汇总表指标属性   - SUMMARY_TIME: 汇总表时间周期属性   - TABLE_MODEL: 关系模型（逻辑模型/物理模型）   - TABLE_MODEL_ATTRIBUTE: 关系模型属性（逻辑模型/物理模型）   - TABLE_MODEL_LOGIC: 逻辑实体   - TABLE_TYPE: 表类型   - TAG: 标签   - TIME_CONDITION: 时间限定    |
| env_type | 否    | String | 开发生产环境类型。 枚举值： - INVALID_TYPE: 无效环境   - DEV_TYPE: 开发环境   - PROD_TYPE: 生产环境   - DEV_PROD_TYPE: 开发生产环境                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
   
#### 响应参数
**状态码：200**
表5响应Body参数 
| 参数   | 参数类型                                        | 描述               |
|:---|:---|:---|
| data | [data] object | 批量下线的返回结果，成功的个数。 |
   
 表6data 
| 参数    | 参数类型                                                                | 描述         |
|:---|:---|:---|
| value | [BatchOperationVO] object | 批量下线操作返回结果 |
   
 表7BatchOperationVO 
| 参数               | 参数类型                                                                          | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
|:---|:---|:---|
| id               | String                                                                        | 批量审批ID，ID字符串。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| tenant_id        | String                                                                        | 项目ID。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| group_id         | String                                                                        | 组ID，ID字符串。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| biz_name         | String                                                                        | 业务名。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| biz_id           | String                                                                        | 业务ID，ID字符串。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| operation_status | String                                                                        | 操作结果类型枚举。RUNNING(运行中)、SUCCESS(操作成功)、FAILED(操作失败)。 枚举值： - RUNNING: 运行中   - SUCCESS: 操作成功   - FAILED: 操作失败                                                                                                                           |
| operation_type   | String                                                                        | 批量操作类型。 枚举值： - PUBLISH: 发布   - APPROVAL: 审批   - ER_REVERSE_DB: 关系建模逆向数据库   - TRANSFORM_LOGIC_MODEL: 逻辑模型转物理模型    |
| biz_info         | String                                                                        | 业务详情。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| create_by        | String                                                                        | 创建人。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| remark           | String                                                                        | remark信息。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| total            | Integer                                                                       | 总数。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| success          | Integer                                                                       | 操作成功个数。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| failed           | Integer                                                                       | 操作失败个数。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| rate             | String                                                                        | 当前进度。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| logs             | String                                                                        | 日志。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| groups           | Array of [BatchOperationVO] objects | 分组信息。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
   
**状态码：400**
表8响应Body参数 
| 参数         | 参数类型   | 描述                   |
|:---|:---|:---|
| error_code | String | 错误码，如DS.6000，请求处理失败。 |
| error_msg  | String | 错误信息。                |
| data       | Object | 返回的数据信息。             |
   
**状态码：401**
表9响应Body参数 
| 参数         | 参数类型   | 描述                   |
|:---|:---|:---|
| error_code | String | 错误码，如DS.6000，请求处理失败。 |
| error_msg  | String | 错误信息。                |
| data       | Object | 返回的数据信息。             |
   
**状态码：403**
表10响应Body参数 
| 参数         | 参数类型   | 描述                   |
|:---|:---|:---|
| error_code | String | 错误码，如DS.6000，请求处理失败。 |
| error_msg  | String | 错误信息。                |
| data       | Object | 返回的数据信息。             |
   
**状态码：404**
表11响应Body参数 
| 参数         | 参数类型   | 描述                   |
|:---|:---|:---|
| error_code | String | 错误码，如DS.6000，请求处理失败。 |
| error_msg  | String | 错误信息。                |
| data       | Object | 返回的数据信息。             |
   
#### 请求示例
根据物理表ID等参数，批量下线物理表。
```
POST https://{endpoint}/v2/{project_id}/design/approvals/batch-offline?from=standard
{
  "biz_infos" : [ {
    "biz_id" : "1229920251379118081",
    "biz_type" : "TABLE_MODEL"
  }, {
    "biz_id" : "1222853173564289024",
    "biz_type" : "TABLE_MODEL"
  } ],
  "approver_user_id" : "0833a573fe80d5401f6dc010a775569a",
  "approver_user_name" : "test_user",
  "email" : null,
  "fast_approval" : true
}
```
#### 响应示例
**状态码：200**
Success，返回data数据是 BatchOperationVO对象，批量对象在BatchOperationVO.group属性中。
```
{
  "data" : {
    "value" : {
      "id" : null,
      "tenant_id" : "0833a5737480d53b2f25c010dc1a7b88-workspace-9ce2cfd08fda4f3b95faa5ba65fa5ec3",
      "group_id" : "1230939932055457792",
      "biz_name" : null,
      "biz_id" : null,
      "operation_status" : "SUCCESS",
      "operation_type" : "OFFLINE",
      "biz_info" : null,
      "create_by" : "test_user",
      "remark" : null,
      "total" : 2,
      "success" : 2,
      "failed" : 0,
      "rate" : "1.00",
      "logs" : null,
      "groups" : [ {
        "id" : "1230939939395489792",
        "tenant_id" : "0833a5737480d53b2f25c010dc1a7b88-workspace-9ce2cfd08fda4f3b95faa5ba65fa5ec3",
        "group_id" : "1230939932055457792",
        "biz_name" : "test_czh_0416",
        "biz_id" : "1229920251379118081",
        "operation_status" : "SUCCESS",
        "operation_type" : "OFFLINE",
        "biz_info" : "{}",
        "create_by" : "test_user",
        "remark" : "PASSED",
        "total" : 0,
        "success" : 0,
        "failed" : 0,
        "rate" : null,
        "logs" : null,
        "groups" : null
      }, {
        "id" : "1230939939395489793",
        "tenant_id" : "0833a5737480d53b2f25c010dc1a7b88-workspace-9ce2cfd08fda4f3b95faa5ba65fa5ec3",
        "group_id" : "1230939932055457792",
        "biz_name" : "test_czh_0328",
        "biz_id" : "1222853173564289024",
        "operation_status" : "SUCCESS",
        "operation_type" : "OFFLINE",
        "biz_info" : "{}",
        "create_by" : "test_user",
        "remark" : "PASSED",
        "total" : 0,
        "success" : 0,
        "failed" : 0,
        "rate" : null,
        "logs" : null,
        "groups" : null
      } ]
    }
  }
}
```
**状态码：400**
BadRequest
```
{
  "error_code" : "DS.60xx",
  "error_msg" : "The user request is illegal."
}
```
**状态码：401**
Unauthorized
```
{
  "error_code" : "DS.60xx",
  "error_msg" : "User authentication failed."
}
```
**状态码：403**
Forbidden
```
{
  "error_code" : "DS.60xx",
  "error_msg" : "The user does not have permission to call this API."
}
```
**状态码：404**
Not Found
```
{
  "error_code" : "DS.60xx",
  "error_msg" : "The User Request API does not exist."
}
```
#### SDK代码示例
SDK代码示例如下。
- [Java]
  根据物理表ID等参数，批量下线物理表。
  ```
  package com.huaweicloud.sdk.test;
  import com.huaweicloud.sdk.core.auth.ICredential;
  import com.huaweicloud.sdk.core.auth.BasicCredentials;
  import com.huaweicloud.sdk.core.exception.ConnectionException;
  import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
  import com.huaweicloud.sdk.core.exception.ServiceResponseException;
  import com.huaweicloud.sdk.dataartsstudio.v1.region.DataArtsStudioRegion;
  import com.huaweicloud.sdk.dataartsstudio.v1.*;
  import com.huaweicloud.sdk.dataartsstudio.v1.model.*;
  import java.util.List;
  import java.util.ArrayList;
  public class BatchOfflineSolution {
      public static void main(String[] args) {
          // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
          // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
          String ak = System.getenv("CLOUD_SDK_AK");
          String sk = System.getenv("CLOUD_SDK_SK");
          String projectId = "{project_id}";
          ICredential auth = new BasicCredentials()
                  .withProjectId(projectId)
                  .withAk(ak)
                  .withSk(sk);
          DataArtsStudioClient client = DataArtsStudioClient.newBuilder()
                  .withCredential(auth)
                  .withRegion(DataArtsStudioRegion.valueOf("<YOUR REGION>"))
                  .build();
          BatchOfflineRequest request = new BatchOfflineRequest();
          ApprovalBatchParam body = new ApprovalBatchParam();
          List<BizInfoVO> listbodyBizInfos = new ArrayList<>();
          listbodyBizInfos.add(
              new BizInfoVO()
                  .withBizId("1229920251379118081")
                  .withBizType(BizInfoVO.BizTypeEnum.fromValue("TABLE_MODEL"))
          );
          listbodyBizInfos.add(
              new BizInfoVO()
                  .withBizId("1222853173564289024")
                  .withBizType(BizInfoVO.BizTypeEnum.fromValue("TABLE_MODEL"))
          );
          body.withFastApproval(true);
          body.withApproverUserName("test_user");
          body.withApproverUserId("0833a573fe80d5401f6dc010a775569a");
          body.withBizInfos(listbodyBizInfos);
          request.withBody(body);
          try {
              BatchOfflineResponse response = client.batchOffline(request);
              System.out.println(response.toString());
          } catch (ConnectionException e) {
              e.printStackTrace();
          } catch (RequestTimeoutException e) {
              e.printStackTrace();
          } catch (ServiceResponseException e) {
              e.printStackTrace();
              System.out.println(e.getHttpStatusCode());
              System.out.println(e.getRequestId());
              System.out.println(e.getErrorCode());
              System.out.println(e.getErrorMsg());
          }
      }
  }
  ```
- [Python]
  根据物理表ID等参数，批量下线物理表。
  ```
  # coding: utf-8
  import os
  from huaweicloudsdkcore.auth.credentials import BasicCredentials
  from huaweicloudsdkdataartsstudio.v1.region.dataartsstudio_region import DataArtsStudioRegion
  from huaweicloudsdkcore.exceptions import exceptions
  from huaweicloudsdkdataartsstudio.v1 import *
  if __name__ == "__main__":
      # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
      # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
      ak = os.environ["CLOUD_SDK_AK"]
      sk = os.environ["CLOUD_SDK_SK"]
      projectId = "{project_id}"
      credentials = BasicCredentials(ak, sk, projectId)
      client = DataArtsStudioClient.new_builder() \
          .with_credentials(credentials) \
          .with_region(DataArtsStudioRegion.value_of("<YOUR REGION>")) \
          .build()
      try:
          request = BatchOfflineRequest()
          listBizInfosbody = [
              BizInfoVO(
                  biz_id="1229920251379118081",
                  biz_type="TABLE_MODEL"
              ),
              BizInfoVO(
                  biz_id="1222853173564289024",
                  biz_type="TABLE_MODEL"
              )
          ]
          request.body = ApprovalBatchParam(
              fast_approval=True,
              approver_user_name="test_user",
              approver_user_id="0833a573fe80d5401f6dc010a775569a",
              biz_infos=listBizInfosbody
          )
          response = client.batch_offline(request)
          print(response)
      except exceptions.ClientRequestException as e:
          print(e.status_code)
          print(e.request_id)
          print(e.error_code)
          print(e.error_msg)
  ```
- [Go]
  根据物理表ID等参数，批量下线物理表。
  ```
  package main
  import (
  "fmt"
  "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
      dataartsstudio "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dataartsstudio/v1"
  "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dataartsstudio/v1/model"
      region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dataartsstudio/v1/region"
  )
  func main() {
      // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
      // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
      ak := os.Getenv("CLOUD_SDK_AK")
      sk := os.Getenv("CLOUD_SDK_SK")
      projectId := "{project_id}"
      auth, err := basic.NewCredentialsBuilder().
          WithAk(ak).
          WithSk(sk).
          WithProjectId(projectId).
          SafeBuild()
      if err != nil {
          fmt.Println(err)
          return
      }
      hcClient, err := dataartsstudio.DataArtsStudioClientBuilder().
           WithRegion(region.ValueOf("<YOUR REGION>")).
           WithCredential(auth).
           SafeBuild()
      if err != nil {
          fmt.Println(err)
          return
      }
      client := dataartsstudio.NewDataArtsStudioClient(hcClient)
      request := &model.BatchOfflineRequest{}
  bizTypeBizInfos:= model.GetBizInfoVoBizTypeEnum().TABLE_MODEL
  bizTypeBizInfos1:= model.GetBizInfoVoBizTypeEnum().TABLE_MODEL
  var listBizInfosbody = []model.BizInfoVo{
          {
              BizId: "1229920251379118081",
              BizType: &bizTypeBizInfos,
          },
          {
              BizId: "1222853173564289024",
              BizType: &bizTypeBizInfos1,
          },
      }
  fastApprovalApprovalBatchParam:= true
  request.Body = &model.ApprovalBatchParam{
  FastApproval: &fastApprovalApprovalBatchParam,
  ApproverUserName: "test_user",
  ApproverUserId: "0833a573fe80d5401f6dc010a775569a",
  BizInfos: listBizInfosbody,
  }
  response, err := client.BatchOffline(request)
  if err == nil {
          fmt.Printf("%+v\n", response)
      } else {
          fmt.Println(err)
      }
  }
  ```
- [更多]
  更多编程语言的SDK代码示例，请参见[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/DataArtsStudio/sdk?api=BatchOffline)的代码示例页签，可生成自动对应的SDK代码示例。
#### 状态码
| 状态码 | 描述                                                                   |
|:---|:---|
| 200 | Success，返回data数据是 BatchOperationVO对象，批量对象在BatchOperationVO.group属性中。 |
| 400 | BadRequest                                                           |
| 401 | Unauthorized                                                         |
| 403 | Forbidden                                                            |
| 404 | Not Found                                                            |
   
