Supported DescribeSavingsPlansUsageTotal.

This commit is contained in:
sdk-team
2021-08-10 09:13:31 +00:00
parent 11e315b724
commit 5df0ee7c86
23 changed files with 1480 additions and 1 deletions

View File

@@ -1,3 +1,9 @@
2021-08-10 Version: 1.36.847
- Supported DescribeSavingsPlansUsageTotal.
- Supported DescribeSavingsPlansUsageDetail.
- Supported DescribeSavingsPlansCoverageTotal.
- Supported DescribeSavingsPlansCoverageDetail.
2021-08-10 Version: 1.36.846
- Export instance relative API.

View File

@@ -1 +1 @@
1.36.846
1.36.847

View File

@@ -61,6 +61,14 @@ set(bssopenapi_public_header_model
include/alibabacloud/bssopenapi/model/DescribeResourceUsageDetailResult.h
include/alibabacloud/bssopenapi/model/DescribeResourceUsageTotalRequest.h
include/alibabacloud/bssopenapi/model/DescribeResourceUsageTotalResult.h
include/alibabacloud/bssopenapi/model/DescribeSavingsPlansCoverageDetailRequest.h
include/alibabacloud/bssopenapi/model/DescribeSavingsPlansCoverageDetailResult.h
include/alibabacloud/bssopenapi/model/DescribeSavingsPlansCoverageTotalRequest.h
include/alibabacloud/bssopenapi/model/DescribeSavingsPlansCoverageTotalResult.h
include/alibabacloud/bssopenapi/model/DescribeSavingsPlansUsageDetailRequest.h
include/alibabacloud/bssopenapi/model/DescribeSavingsPlansUsageDetailResult.h
include/alibabacloud/bssopenapi/model/DescribeSavingsPlansUsageTotalRequest.h
include/alibabacloud/bssopenapi/model/DescribeSavingsPlansUsageTotalResult.h
include/alibabacloud/bssopenapi/model/DescribeSplitItemBillRequest.h
include/alibabacloud/bssopenapi/model/DescribeSplitItemBillResult.h
include/alibabacloud/bssopenapi/model/EnableBillGenerationRequest.h
@@ -228,6 +236,14 @@ set(bssopenapi_src
src/model/DescribeResourceUsageDetailResult.cc
src/model/DescribeResourceUsageTotalRequest.cc
src/model/DescribeResourceUsageTotalResult.cc
src/model/DescribeSavingsPlansCoverageDetailRequest.cc
src/model/DescribeSavingsPlansCoverageDetailResult.cc
src/model/DescribeSavingsPlansCoverageTotalRequest.cc
src/model/DescribeSavingsPlansCoverageTotalResult.cc
src/model/DescribeSavingsPlansUsageDetailRequest.cc
src/model/DescribeSavingsPlansUsageDetailResult.cc
src/model/DescribeSavingsPlansUsageTotalRequest.cc
src/model/DescribeSavingsPlansUsageTotalResult.cc
src/model/DescribeSplitItemBillRequest.cc
src/model/DescribeSplitItemBillResult.cc
src/model/EnableBillGenerationRequest.cc

View File

@@ -62,6 +62,14 @@
#include "model/DescribeResourceUsageDetailResult.h"
#include "model/DescribeResourceUsageTotalRequest.h"
#include "model/DescribeResourceUsageTotalResult.h"
#include "model/DescribeSavingsPlansCoverageDetailRequest.h"
#include "model/DescribeSavingsPlansCoverageDetailResult.h"
#include "model/DescribeSavingsPlansCoverageTotalRequest.h"
#include "model/DescribeSavingsPlansCoverageTotalResult.h"
#include "model/DescribeSavingsPlansUsageDetailRequest.h"
#include "model/DescribeSavingsPlansUsageDetailResult.h"
#include "model/DescribeSavingsPlansUsageTotalRequest.h"
#include "model/DescribeSavingsPlansUsageTotalResult.h"
#include "model/DescribeSplitItemBillRequest.h"
#include "model/DescribeSplitItemBillResult.h"
#include "model/EnableBillGenerationRequest.h"
@@ -255,6 +263,18 @@ namespace AlibabaCloud
typedef Outcome<Error, Model::DescribeResourceUsageTotalResult> DescribeResourceUsageTotalOutcome;
typedef std::future<DescribeResourceUsageTotalOutcome> DescribeResourceUsageTotalOutcomeCallable;
typedef std::function<void(const BssOpenApiClient*, const Model::DescribeResourceUsageTotalRequest&, const DescribeResourceUsageTotalOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeResourceUsageTotalAsyncHandler;
typedef Outcome<Error, Model::DescribeSavingsPlansCoverageDetailResult> DescribeSavingsPlansCoverageDetailOutcome;
typedef std::future<DescribeSavingsPlansCoverageDetailOutcome> DescribeSavingsPlansCoverageDetailOutcomeCallable;
typedef std::function<void(const BssOpenApiClient*, const Model::DescribeSavingsPlansCoverageDetailRequest&, const DescribeSavingsPlansCoverageDetailOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeSavingsPlansCoverageDetailAsyncHandler;
typedef Outcome<Error, Model::DescribeSavingsPlansCoverageTotalResult> DescribeSavingsPlansCoverageTotalOutcome;
typedef std::future<DescribeSavingsPlansCoverageTotalOutcome> DescribeSavingsPlansCoverageTotalOutcomeCallable;
typedef std::function<void(const BssOpenApiClient*, const Model::DescribeSavingsPlansCoverageTotalRequest&, const DescribeSavingsPlansCoverageTotalOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeSavingsPlansCoverageTotalAsyncHandler;
typedef Outcome<Error, Model::DescribeSavingsPlansUsageDetailResult> DescribeSavingsPlansUsageDetailOutcome;
typedef std::future<DescribeSavingsPlansUsageDetailOutcome> DescribeSavingsPlansUsageDetailOutcomeCallable;
typedef std::function<void(const BssOpenApiClient*, const Model::DescribeSavingsPlansUsageDetailRequest&, const DescribeSavingsPlansUsageDetailOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeSavingsPlansUsageDetailAsyncHandler;
typedef Outcome<Error, Model::DescribeSavingsPlansUsageTotalResult> DescribeSavingsPlansUsageTotalOutcome;
typedef std::future<DescribeSavingsPlansUsageTotalOutcome> DescribeSavingsPlansUsageTotalOutcomeCallable;
typedef std::function<void(const BssOpenApiClient*, const Model::DescribeSavingsPlansUsageTotalRequest&, const DescribeSavingsPlansUsageTotalOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeSavingsPlansUsageTotalAsyncHandler;
typedef Outcome<Error, Model::DescribeSplitItemBillResult> DescribeSplitItemBillOutcome;
typedef std::future<DescribeSplitItemBillOutcome> DescribeSplitItemBillOutcomeCallable;
typedef std::function<void(const BssOpenApiClient*, const Model::DescribeSplitItemBillRequest&, const DescribeSplitItemBillOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeSplitItemBillAsyncHandler;
@@ -506,6 +526,18 @@ namespace AlibabaCloud
DescribeResourceUsageTotalOutcome describeResourceUsageTotal(const Model::DescribeResourceUsageTotalRequest &request)const;
void describeResourceUsageTotalAsync(const Model::DescribeResourceUsageTotalRequest& request, const DescribeResourceUsageTotalAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
DescribeResourceUsageTotalOutcomeCallable describeResourceUsageTotalCallable(const Model::DescribeResourceUsageTotalRequest& request) const;
DescribeSavingsPlansCoverageDetailOutcome describeSavingsPlansCoverageDetail(const Model::DescribeSavingsPlansCoverageDetailRequest &request)const;
void describeSavingsPlansCoverageDetailAsync(const Model::DescribeSavingsPlansCoverageDetailRequest& request, const DescribeSavingsPlansCoverageDetailAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
DescribeSavingsPlansCoverageDetailOutcomeCallable describeSavingsPlansCoverageDetailCallable(const Model::DescribeSavingsPlansCoverageDetailRequest& request) const;
DescribeSavingsPlansCoverageTotalOutcome describeSavingsPlansCoverageTotal(const Model::DescribeSavingsPlansCoverageTotalRequest &request)const;
void describeSavingsPlansCoverageTotalAsync(const Model::DescribeSavingsPlansCoverageTotalRequest& request, const DescribeSavingsPlansCoverageTotalAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
DescribeSavingsPlansCoverageTotalOutcomeCallable describeSavingsPlansCoverageTotalCallable(const Model::DescribeSavingsPlansCoverageTotalRequest& request) const;
DescribeSavingsPlansUsageDetailOutcome describeSavingsPlansUsageDetail(const Model::DescribeSavingsPlansUsageDetailRequest &request)const;
void describeSavingsPlansUsageDetailAsync(const Model::DescribeSavingsPlansUsageDetailRequest& request, const DescribeSavingsPlansUsageDetailAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
DescribeSavingsPlansUsageDetailOutcomeCallable describeSavingsPlansUsageDetailCallable(const Model::DescribeSavingsPlansUsageDetailRequest& request) const;
DescribeSavingsPlansUsageTotalOutcome describeSavingsPlansUsageTotal(const Model::DescribeSavingsPlansUsageTotalRequest &request)const;
void describeSavingsPlansUsageTotalAsync(const Model::DescribeSavingsPlansUsageTotalRequest& request, const DescribeSavingsPlansUsageTotalAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
DescribeSavingsPlansUsageTotalOutcomeCallable describeSavingsPlansUsageTotalCallable(const Model::DescribeSavingsPlansUsageTotalRequest& request) const;
DescribeSplitItemBillOutcome describeSplitItemBill(const Model::DescribeSplitItemBillRequest &request)const;
void describeSplitItemBillAsync(const Model::DescribeSplitItemBillRequest& request, const DescribeSplitItemBillAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
DescribeSplitItemBillOutcomeCallable describeSplitItemBillCallable(const Model::DescribeSplitItemBillRequest& request) const;

View File

@@ -0,0 +1,63 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSCOVERAGEDETAILREQUEST_H_
#define ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSCOVERAGEDETAILREQUEST_H_
#include <string>
#include <vector>
#include <alibabacloud/core/RpcServiceRequest.h>
#include <alibabacloud/bssopenapi/BssOpenApiExport.h>
namespace AlibabaCloud
{
namespace BssOpenApi
{
namespace Model
{
class ALIBABACLOUD_BSSOPENAPI_EXPORT DescribeSavingsPlansCoverageDetailRequest : public RpcServiceRequest
{
public:
DescribeSavingsPlansCoverageDetailRequest();
~DescribeSavingsPlansCoverageDetailRequest();
std::string getPeriodType()const;
void setPeriodType(const std::string& periodType);
long getBillOwnerId()const;
void setBillOwnerId(long billOwnerId);
std::string getStartPeriod()const;
void setStartPeriod(const std::string& startPeriod);
std::string getEndPeriod()const;
void setEndPeriod(const std::string& endPeriod);
std::string getToken()const;
void setToken(const std::string& token);
int getMaxResults()const;
void setMaxResults(int maxResults);
private:
std::string periodType_;
long billOwnerId_;
std::string startPeriod_;
std::string endPeriod_;
std::string token_;
int maxResults_;
};
}
}
}
#endif // !ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSCOVERAGEDETAILREQUEST_H_

View File

@@ -0,0 +1,78 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSCOVERAGEDETAILRESULT_H_
#define ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSCOVERAGEDETAILRESULT_H_
#include <string>
#include <vector>
#include <utility>
#include <alibabacloud/core/ServiceResult.h>
#include <alibabacloud/bssopenapi/BssOpenApiExport.h>
namespace AlibabaCloud
{
namespace BssOpenApi
{
namespace Model
{
class ALIBABACLOUD_BSSOPENAPI_EXPORT DescribeSavingsPlansCoverageDetailResult : public ServiceResult
{
public:
struct Data
{
struct Item
{
float postpaidCost;
std::string userName;
std::string instanceSpec;
std::string instanceId;
long userId;
std::string endPeriod;
std::string currency;
std::string region;
float totalAmount;
float deductAmount;
float coveragePercentage;
std::string startPeriod;
};
int totalCount;
std::string nextToken;
std::vector<Item> items;
};
DescribeSavingsPlansCoverageDetailResult();
explicit DescribeSavingsPlansCoverageDetailResult(const std::string &payload);
~DescribeSavingsPlansCoverageDetailResult();
std::string getMessage()const;
Data getData()const;
std::string getCode()const;
bool getSuccess()const;
protected:
void parse(const std::string &payload);
private:
std::string message_;
Data data_;
std::string code_;
bool success_;
};
}
}
}
#endif // !ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSCOVERAGEDETAILRESULT_H_

View File

@@ -0,0 +1,57 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSCOVERAGETOTALREQUEST_H_
#define ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSCOVERAGETOTALREQUEST_H_
#include <string>
#include <vector>
#include <alibabacloud/core/RpcServiceRequest.h>
#include <alibabacloud/bssopenapi/BssOpenApiExport.h>
namespace AlibabaCloud
{
namespace BssOpenApi
{
namespace Model
{
class ALIBABACLOUD_BSSOPENAPI_EXPORT DescribeSavingsPlansCoverageTotalRequest : public RpcServiceRequest
{
public:
DescribeSavingsPlansCoverageTotalRequest();
~DescribeSavingsPlansCoverageTotalRequest();
std::string getPeriodType()const;
void setPeriodType(const std::string& periodType);
long getBillOwnerId()const;
void setBillOwnerId(long billOwnerId);
std::string getStartPeriod()const;
void setStartPeriod(const std::string& startPeriod);
std::string getEndPeriod()const;
void setEndPeriod(const std::string& endPeriod);
private:
std::string periodType_;
long billOwnerId_;
std::string startPeriod_;
std::string endPeriod_;
};
}
}
}
#endif // !ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSCOVERAGETOTALREQUEST_H_

View File

@@ -0,0 +1,72 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSCOVERAGETOTALRESULT_H_
#define ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSCOVERAGETOTALRESULT_H_
#include <string>
#include <vector>
#include <utility>
#include <alibabacloud/core/ServiceResult.h>
#include <alibabacloud/bssopenapi/BssOpenApiExport.h>
namespace AlibabaCloud
{
namespace BssOpenApi
{
namespace Model
{
class ALIBABACLOUD_BSSOPENAPI_EXPORT DescribeSavingsPlansCoverageTotalResult : public ServiceResult
{
public:
struct Data
{
struct TotalCoverage
{
float deductAmount;
float coveragePercentage;
};
struct Item
{
float percentage;
std::string period;
};
std::vector<Item> periodCoverage;
TotalCoverage totalCoverage;
};
DescribeSavingsPlansCoverageTotalResult();
explicit DescribeSavingsPlansCoverageTotalResult(const std::string &payload);
~DescribeSavingsPlansCoverageTotalResult();
std::string getMessage()const;
Data getData()const;
std::string getCode()const;
bool getSuccess()const;
protected:
void parse(const std::string &payload);
private:
std::string message_;
Data data_;
std::string code_;
bool success_;
};
}
}
}
#endif // !ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSCOVERAGETOTALRESULT_H_

View File

@@ -0,0 +1,63 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSUSAGEDETAILREQUEST_H_
#define ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSUSAGEDETAILREQUEST_H_
#include <string>
#include <vector>
#include <alibabacloud/core/RpcServiceRequest.h>
#include <alibabacloud/bssopenapi/BssOpenApiExport.h>
namespace AlibabaCloud
{
namespace BssOpenApi
{
namespace Model
{
class ALIBABACLOUD_BSSOPENAPI_EXPORT DescribeSavingsPlansUsageDetailRequest : public RpcServiceRequest
{
public:
DescribeSavingsPlansUsageDetailRequest();
~DescribeSavingsPlansUsageDetailRequest();
std::string getPeriodType()const;
void setPeriodType(const std::string& periodType);
long getBillOwnerId()const;
void setBillOwnerId(long billOwnerId);
std::string getStartPeriod()const;
void setStartPeriod(const std::string& startPeriod);
std::string getEndPeriod()const;
void setEndPeriod(const std::string& endPeriod);
std::string getToken()const;
void setToken(const std::string& token);
int getMaxResults()const;
void setMaxResults(int maxResults);
private:
std::string periodType_;
long billOwnerId_;
std::string startPeriod_;
std::string endPeriod_;
std::string token_;
int maxResults_;
};
}
}
}
#endif // !ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSUSAGEDETAILREQUEST_H_

View File

@@ -0,0 +1,79 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSUSAGEDETAILRESULT_H_
#define ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSUSAGEDETAILRESULT_H_
#include <string>
#include <vector>
#include <utility>
#include <alibabacloud/core/ServiceResult.h>
#include <alibabacloud/bssopenapi/BssOpenApiExport.h>
namespace AlibabaCloud
{
namespace BssOpenApi
{
namespace Model
{
class ALIBABACLOUD_BSSOPENAPI_EXPORT DescribeSavingsPlansUsageDetailResult : public ServiceResult
{
public:
struct Data
{
struct Item
{
std::string status;
float postpaidCost;
std::string userName;
std::string instanceId;
float savedCost;
float deductValue;
float usagePercentage;
std::string type;
long userId;
std::string endPeriod;
std::string currency;
float poolValue;
std::string startPeriod;
};
int totalCount;
std::string nextToken;
std::vector<Item> items;
};
DescribeSavingsPlansUsageDetailResult();
explicit DescribeSavingsPlansUsageDetailResult(const std::string &payload);
~DescribeSavingsPlansUsageDetailResult();
std::string getMessage()const;
Data getData()const;
std::string getCode()const;
bool getSuccess()const;
protected:
void parse(const std::string &payload);
private:
std::string message_;
Data data_;
std::string code_;
bool success_;
};
}
}
}
#endif // !ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSUSAGEDETAILRESULT_H_

View File

@@ -0,0 +1,57 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSUSAGETOTALREQUEST_H_
#define ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSUSAGETOTALREQUEST_H_
#include <string>
#include <vector>
#include <alibabacloud/core/RpcServiceRequest.h>
#include <alibabacloud/bssopenapi/BssOpenApiExport.h>
namespace AlibabaCloud
{
namespace BssOpenApi
{
namespace Model
{
class ALIBABACLOUD_BSSOPENAPI_EXPORT DescribeSavingsPlansUsageTotalRequest : public RpcServiceRequest
{
public:
DescribeSavingsPlansUsageTotalRequest();
~DescribeSavingsPlansUsageTotalRequest();
std::string getPeriodType()const;
void setPeriodType(const std::string& periodType);
long getBillOwnerId()const;
void setBillOwnerId(long billOwnerId);
std::string getStartPeriod()const;
void setStartPeriod(const std::string& startPeriod);
std::string getEndPeriod()const;
void setEndPeriod(const std::string& endPeriod);
private:
std::string periodType_;
long billOwnerId_;
std::string startPeriod_;
std::string endPeriod_;
};
}
}
}
#endif // !ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSUSAGETOTALREQUEST_H_

View File

@@ -0,0 +1,74 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSUSAGETOTALRESULT_H_
#define ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSUSAGETOTALRESULT_H_
#include <string>
#include <vector>
#include <utility>
#include <alibabacloud/core/ServiceResult.h>
#include <alibabacloud/bssopenapi/BssOpenApiExport.h>
namespace AlibabaCloud
{
namespace BssOpenApi
{
namespace Model
{
class ALIBABACLOUD_BSSOPENAPI_EXPORT DescribeSavingsPlansUsageTotalResult : public ServiceResult
{
public:
struct Data
{
struct TotalUsage
{
float postpaidCost;
float poolValue;
float savedCost;
float usagePercentage;
};
struct Item
{
float percentage;
std::string period;
};
TotalUsage totalUsage;
std::vector<Item> periodCoverage;
};
DescribeSavingsPlansUsageTotalResult();
explicit DescribeSavingsPlansUsageTotalResult(const std::string &payload);
~DescribeSavingsPlansUsageTotalResult();
std::string getMessage()const;
Data getData()const;
std::string getCode()const;
bool getSuccess()const;
protected:
void parse(const std::string &payload);
private:
std::string message_;
Data data_;
std::string code_;
bool success_;
};
}
}
}
#endif // !ALIBABACLOUD_BSSOPENAPI_MODEL_DESCRIBESAVINGSPLANSUSAGETOTALRESULT_H_

View File

@@ -41,6 +41,8 @@ namespace AlibabaCloud
void setLastToken(const std::string& lastToken);
std::string getInstanceSpec()const;
void setInstanceSpec(const std::string& instanceSpec);
std::string getProdCode()const;
void setProdCode(const std::string& prodCode);
std::string getEndTime()const;
void setEndTime(const std::string& endTime);
bool getIncludeShare()const;
@@ -58,6 +60,7 @@ namespace AlibabaCloud
std::string deductedInstanceId_;
std::string lastToken_;
std::string instanceSpec_;
std::string prodCode_;
std::string endTime_;
bool includeShare_;
std::string commodityCode_;

View File

@@ -771,6 +771,150 @@ BssOpenApiClient::DescribeResourceUsageTotalOutcomeCallable BssOpenApiClient::de
return task->get_future();
}
BssOpenApiClient::DescribeSavingsPlansCoverageDetailOutcome BssOpenApiClient::describeSavingsPlansCoverageDetail(const DescribeSavingsPlansCoverageDetailRequest &request) const
{
auto endpointOutcome = endpointProvider_->getEndpoint();
if (!endpointOutcome.isSuccess())
return DescribeSavingsPlansCoverageDetailOutcome(endpointOutcome.error());
auto outcome = makeRequest(endpointOutcome.result(), request);
if (outcome.isSuccess())
return DescribeSavingsPlansCoverageDetailOutcome(DescribeSavingsPlansCoverageDetailResult(outcome.result()));
else
return DescribeSavingsPlansCoverageDetailOutcome(outcome.error());
}
void BssOpenApiClient::describeSavingsPlansCoverageDetailAsync(const DescribeSavingsPlansCoverageDetailRequest& request, const DescribeSavingsPlansCoverageDetailAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
{
auto fn = [this, request, handler, context]()
{
handler(this, request, describeSavingsPlansCoverageDetail(request), context);
};
asyncExecute(new Runnable(fn));
}
BssOpenApiClient::DescribeSavingsPlansCoverageDetailOutcomeCallable BssOpenApiClient::describeSavingsPlansCoverageDetailCallable(const DescribeSavingsPlansCoverageDetailRequest &request) const
{
auto task = std::make_shared<std::packaged_task<DescribeSavingsPlansCoverageDetailOutcome()>>(
[this, request]()
{
return this->describeSavingsPlansCoverageDetail(request);
});
asyncExecute(new Runnable([task]() { (*task)(); }));
return task->get_future();
}
BssOpenApiClient::DescribeSavingsPlansCoverageTotalOutcome BssOpenApiClient::describeSavingsPlansCoverageTotal(const DescribeSavingsPlansCoverageTotalRequest &request) const
{
auto endpointOutcome = endpointProvider_->getEndpoint();
if (!endpointOutcome.isSuccess())
return DescribeSavingsPlansCoverageTotalOutcome(endpointOutcome.error());
auto outcome = makeRequest(endpointOutcome.result(), request);
if (outcome.isSuccess())
return DescribeSavingsPlansCoverageTotalOutcome(DescribeSavingsPlansCoverageTotalResult(outcome.result()));
else
return DescribeSavingsPlansCoverageTotalOutcome(outcome.error());
}
void BssOpenApiClient::describeSavingsPlansCoverageTotalAsync(const DescribeSavingsPlansCoverageTotalRequest& request, const DescribeSavingsPlansCoverageTotalAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
{
auto fn = [this, request, handler, context]()
{
handler(this, request, describeSavingsPlansCoverageTotal(request), context);
};
asyncExecute(new Runnable(fn));
}
BssOpenApiClient::DescribeSavingsPlansCoverageTotalOutcomeCallable BssOpenApiClient::describeSavingsPlansCoverageTotalCallable(const DescribeSavingsPlansCoverageTotalRequest &request) const
{
auto task = std::make_shared<std::packaged_task<DescribeSavingsPlansCoverageTotalOutcome()>>(
[this, request]()
{
return this->describeSavingsPlansCoverageTotal(request);
});
asyncExecute(new Runnable([task]() { (*task)(); }));
return task->get_future();
}
BssOpenApiClient::DescribeSavingsPlansUsageDetailOutcome BssOpenApiClient::describeSavingsPlansUsageDetail(const DescribeSavingsPlansUsageDetailRequest &request) const
{
auto endpointOutcome = endpointProvider_->getEndpoint();
if (!endpointOutcome.isSuccess())
return DescribeSavingsPlansUsageDetailOutcome(endpointOutcome.error());
auto outcome = makeRequest(endpointOutcome.result(), request);
if (outcome.isSuccess())
return DescribeSavingsPlansUsageDetailOutcome(DescribeSavingsPlansUsageDetailResult(outcome.result()));
else
return DescribeSavingsPlansUsageDetailOutcome(outcome.error());
}
void BssOpenApiClient::describeSavingsPlansUsageDetailAsync(const DescribeSavingsPlansUsageDetailRequest& request, const DescribeSavingsPlansUsageDetailAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
{
auto fn = [this, request, handler, context]()
{
handler(this, request, describeSavingsPlansUsageDetail(request), context);
};
asyncExecute(new Runnable(fn));
}
BssOpenApiClient::DescribeSavingsPlansUsageDetailOutcomeCallable BssOpenApiClient::describeSavingsPlansUsageDetailCallable(const DescribeSavingsPlansUsageDetailRequest &request) const
{
auto task = std::make_shared<std::packaged_task<DescribeSavingsPlansUsageDetailOutcome()>>(
[this, request]()
{
return this->describeSavingsPlansUsageDetail(request);
});
asyncExecute(new Runnable([task]() { (*task)(); }));
return task->get_future();
}
BssOpenApiClient::DescribeSavingsPlansUsageTotalOutcome BssOpenApiClient::describeSavingsPlansUsageTotal(const DescribeSavingsPlansUsageTotalRequest &request) const
{
auto endpointOutcome = endpointProvider_->getEndpoint();
if (!endpointOutcome.isSuccess())
return DescribeSavingsPlansUsageTotalOutcome(endpointOutcome.error());
auto outcome = makeRequest(endpointOutcome.result(), request);
if (outcome.isSuccess())
return DescribeSavingsPlansUsageTotalOutcome(DescribeSavingsPlansUsageTotalResult(outcome.result()));
else
return DescribeSavingsPlansUsageTotalOutcome(outcome.error());
}
void BssOpenApiClient::describeSavingsPlansUsageTotalAsync(const DescribeSavingsPlansUsageTotalRequest& request, const DescribeSavingsPlansUsageTotalAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
{
auto fn = [this, request, handler, context]()
{
handler(this, request, describeSavingsPlansUsageTotal(request), context);
};
asyncExecute(new Runnable(fn));
}
BssOpenApiClient::DescribeSavingsPlansUsageTotalOutcomeCallable BssOpenApiClient::describeSavingsPlansUsageTotalCallable(const DescribeSavingsPlansUsageTotalRequest &request) const
{
auto task = std::make_shared<std::packaged_task<DescribeSavingsPlansUsageTotalOutcome()>>(
[this, request]()
{
return this->describeSavingsPlansUsageTotal(request);
});
asyncExecute(new Runnable([task]() { (*task)(); }));
return task->get_future();
}
BssOpenApiClient::DescribeSplitItemBillOutcome BssOpenApiClient::describeSplitItemBill(const DescribeSplitItemBillRequest &request) const
{
auto endpointOutcome = endpointProvider_->getEndpoint();

View File

@@ -0,0 +1,95 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <alibabacloud/bssopenapi/model/DescribeSavingsPlansCoverageDetailRequest.h>
using AlibabaCloud::BssOpenApi::Model::DescribeSavingsPlansCoverageDetailRequest;
DescribeSavingsPlansCoverageDetailRequest::DescribeSavingsPlansCoverageDetailRequest() :
RpcServiceRequest("bssopenapi", "2017-12-14", "DescribeSavingsPlansCoverageDetail")
{
setMethod(HttpRequest::Method::Post);
}
DescribeSavingsPlansCoverageDetailRequest::~DescribeSavingsPlansCoverageDetailRequest()
{}
std::string DescribeSavingsPlansCoverageDetailRequest::getPeriodType()const
{
return periodType_;
}
void DescribeSavingsPlansCoverageDetailRequest::setPeriodType(const std::string& periodType)
{
periodType_ = periodType;
setParameter("PeriodType", periodType);
}
long DescribeSavingsPlansCoverageDetailRequest::getBillOwnerId()const
{
return billOwnerId_;
}
void DescribeSavingsPlansCoverageDetailRequest::setBillOwnerId(long billOwnerId)
{
billOwnerId_ = billOwnerId;
setParameter("BillOwnerId", std::to_string(billOwnerId));
}
std::string DescribeSavingsPlansCoverageDetailRequest::getStartPeriod()const
{
return startPeriod_;
}
void DescribeSavingsPlansCoverageDetailRequest::setStartPeriod(const std::string& startPeriod)
{
startPeriod_ = startPeriod;
setParameter("StartPeriod", startPeriod);
}
std::string DescribeSavingsPlansCoverageDetailRequest::getEndPeriod()const
{
return endPeriod_;
}
void DescribeSavingsPlansCoverageDetailRequest::setEndPeriod(const std::string& endPeriod)
{
endPeriod_ = endPeriod;
setParameter("EndPeriod", endPeriod);
}
std::string DescribeSavingsPlansCoverageDetailRequest::getToken()const
{
return token_;
}
void DescribeSavingsPlansCoverageDetailRequest::setToken(const std::string& token)
{
token_ = token;
setParameter("Token", token);
}
int DescribeSavingsPlansCoverageDetailRequest::getMaxResults()const
{
return maxResults_;
}
void DescribeSavingsPlansCoverageDetailRequest::setMaxResults(int maxResults)
{
maxResults_ = maxResults;
setParameter("MaxResults", std::to_string(maxResults));
}

View File

@@ -0,0 +1,105 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <alibabacloud/bssopenapi/model/DescribeSavingsPlansCoverageDetailResult.h>
#include <json/json.h>
using namespace AlibabaCloud::BssOpenApi;
using namespace AlibabaCloud::BssOpenApi::Model;
DescribeSavingsPlansCoverageDetailResult::DescribeSavingsPlansCoverageDetailResult() :
ServiceResult()
{}
DescribeSavingsPlansCoverageDetailResult::DescribeSavingsPlansCoverageDetailResult(const std::string &payload) :
ServiceResult()
{
parse(payload);
}
DescribeSavingsPlansCoverageDetailResult::~DescribeSavingsPlansCoverageDetailResult()
{}
void DescribeSavingsPlansCoverageDetailResult::parse(const std::string &payload)
{
Json::Reader reader;
Json::Value value;
reader.parse(payload, value);
setRequestId(value["RequestId"].asString());
auto dataNode = value["Data"];
if(!dataNode["TotalCount"].isNull())
data_.totalCount = std::stoi(dataNode["TotalCount"].asString());
if(!dataNode["NextToken"].isNull())
data_.nextToken = dataNode["NextToken"].asString();
auto allItemsNode = dataNode["Items"]["Item"];
for (auto dataNodeItemsItem : allItemsNode)
{
Data::Item itemObject;
if(!dataNodeItemsItem["UserId"].isNull())
itemObject.userId = std::stol(dataNodeItemsItem["UserId"].asString());
if(!dataNodeItemsItem["UserName"].isNull())
itemObject.userName = dataNodeItemsItem["UserName"].asString();
if(!dataNodeItemsItem["InstanceId"].isNull())
itemObject.instanceId = dataNodeItemsItem["InstanceId"].asString();
if(!dataNodeItemsItem["Region"].isNull())
itemObject.region = dataNodeItemsItem["Region"].asString();
if(!dataNodeItemsItem["InstanceSpec"].isNull())
itemObject.instanceSpec = dataNodeItemsItem["InstanceSpec"].asString();
if(!dataNodeItemsItem["Currency"].isNull())
itemObject.currency = dataNodeItemsItem["Currency"].asString();
if(!dataNodeItemsItem["CoveragePercentage"].isNull())
itemObject.coveragePercentage = std::stof(dataNodeItemsItem["CoveragePercentage"].asString());
if(!dataNodeItemsItem["DeductAmount"].isNull())
itemObject.deductAmount = std::stof(dataNodeItemsItem["DeductAmount"].asString());
if(!dataNodeItemsItem["TotalAmount"].isNull())
itemObject.totalAmount = std::stof(dataNodeItemsItem["TotalAmount"].asString());
if(!dataNodeItemsItem["PostpaidCost"].isNull())
itemObject.postpaidCost = std::stof(dataNodeItemsItem["PostpaidCost"].asString());
if(!dataNodeItemsItem["StartPeriod"].isNull())
itemObject.startPeriod = dataNodeItemsItem["StartPeriod"].asString();
if(!dataNodeItemsItem["EndPeriod"].isNull())
itemObject.endPeriod = dataNodeItemsItem["EndPeriod"].asString();
data_.items.push_back(itemObject);
}
if(!value["Success"].isNull())
success_ = value["Success"].asString() == "true";
if(!value["Code"].isNull())
code_ = value["Code"].asString();
if(!value["Message"].isNull())
message_ = value["Message"].asString();
}
std::string DescribeSavingsPlansCoverageDetailResult::getMessage()const
{
return message_;
}
DescribeSavingsPlansCoverageDetailResult::Data DescribeSavingsPlansCoverageDetailResult::getData()const
{
return data_;
}
std::string DescribeSavingsPlansCoverageDetailResult::getCode()const
{
return code_;
}
bool DescribeSavingsPlansCoverageDetailResult::getSuccess()const
{
return success_;
}

View File

@@ -0,0 +1,73 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <alibabacloud/bssopenapi/model/DescribeSavingsPlansCoverageTotalRequest.h>
using AlibabaCloud::BssOpenApi::Model::DescribeSavingsPlansCoverageTotalRequest;
DescribeSavingsPlansCoverageTotalRequest::DescribeSavingsPlansCoverageTotalRequest() :
RpcServiceRequest("bssopenapi", "2017-12-14", "DescribeSavingsPlansCoverageTotal")
{
setMethod(HttpRequest::Method::Post);
}
DescribeSavingsPlansCoverageTotalRequest::~DescribeSavingsPlansCoverageTotalRequest()
{}
std::string DescribeSavingsPlansCoverageTotalRequest::getPeriodType()const
{
return periodType_;
}
void DescribeSavingsPlansCoverageTotalRequest::setPeriodType(const std::string& periodType)
{
periodType_ = periodType;
setParameter("PeriodType", periodType);
}
long DescribeSavingsPlansCoverageTotalRequest::getBillOwnerId()const
{
return billOwnerId_;
}
void DescribeSavingsPlansCoverageTotalRequest::setBillOwnerId(long billOwnerId)
{
billOwnerId_ = billOwnerId;
setParameter("BillOwnerId", std::to_string(billOwnerId));
}
std::string DescribeSavingsPlansCoverageTotalRequest::getStartPeriod()const
{
return startPeriod_;
}
void DescribeSavingsPlansCoverageTotalRequest::setStartPeriod(const std::string& startPeriod)
{
startPeriod_ = startPeriod;
setParameter("StartPeriod", startPeriod);
}
std::string DescribeSavingsPlansCoverageTotalRequest::getEndPeriod()const
{
return endPeriod_;
}
void DescribeSavingsPlansCoverageTotalRequest::setEndPeriod(const std::string& endPeriod)
{
endPeriod_ = endPeriod;
setParameter("EndPeriod", endPeriod);
}

View File

@@ -0,0 +1,86 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <alibabacloud/bssopenapi/model/DescribeSavingsPlansCoverageTotalResult.h>
#include <json/json.h>
using namespace AlibabaCloud::BssOpenApi;
using namespace AlibabaCloud::BssOpenApi::Model;
DescribeSavingsPlansCoverageTotalResult::DescribeSavingsPlansCoverageTotalResult() :
ServiceResult()
{}
DescribeSavingsPlansCoverageTotalResult::DescribeSavingsPlansCoverageTotalResult(const std::string &payload) :
ServiceResult()
{
parse(payload);
}
DescribeSavingsPlansCoverageTotalResult::~DescribeSavingsPlansCoverageTotalResult()
{}
void DescribeSavingsPlansCoverageTotalResult::parse(const std::string &payload)
{
Json::Reader reader;
Json::Value value;
reader.parse(payload, value);
setRequestId(value["RequestId"].asString());
auto dataNode = value["Data"];
auto allPeriodCoverageNode = dataNode["PeriodCoverage"]["Item"];
for (auto dataNodePeriodCoverageItem : allPeriodCoverageNode)
{
Data::Item itemObject;
if(!dataNodePeriodCoverageItem["Period"].isNull())
itemObject.period = dataNodePeriodCoverageItem["Period"].asString();
if(!dataNodePeriodCoverageItem["Percentage"].isNull())
itemObject.percentage = std::stof(dataNodePeriodCoverageItem["Percentage"].asString());
data_.periodCoverage.push_back(itemObject);
}
auto totalCoverageNode = dataNode["TotalCoverage"];
if(!totalCoverageNode["CoveragePercentage"].isNull())
data_.totalCoverage.coveragePercentage = std::stof(totalCoverageNode["CoveragePercentage"].asString());
if(!totalCoverageNode["DeductAmount"].isNull())
data_.totalCoverage.deductAmount = std::stof(totalCoverageNode["DeductAmount"].asString());
if(!value["Success"].isNull())
success_ = value["Success"].asString() == "true";
if(!value["Code"].isNull())
code_ = value["Code"].asString();
if(!value["Message"].isNull())
message_ = value["Message"].asString();
}
std::string DescribeSavingsPlansCoverageTotalResult::getMessage()const
{
return message_;
}
DescribeSavingsPlansCoverageTotalResult::Data DescribeSavingsPlansCoverageTotalResult::getData()const
{
return data_;
}
std::string DescribeSavingsPlansCoverageTotalResult::getCode()const
{
return code_;
}
bool DescribeSavingsPlansCoverageTotalResult::getSuccess()const
{
return success_;
}

View File

@@ -0,0 +1,95 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <alibabacloud/bssopenapi/model/DescribeSavingsPlansUsageDetailRequest.h>
using AlibabaCloud::BssOpenApi::Model::DescribeSavingsPlansUsageDetailRequest;
DescribeSavingsPlansUsageDetailRequest::DescribeSavingsPlansUsageDetailRequest() :
RpcServiceRequest("bssopenapi", "2017-12-14", "DescribeSavingsPlansUsageDetail")
{
setMethod(HttpRequest::Method::Post);
}
DescribeSavingsPlansUsageDetailRequest::~DescribeSavingsPlansUsageDetailRequest()
{}
std::string DescribeSavingsPlansUsageDetailRequest::getPeriodType()const
{
return periodType_;
}
void DescribeSavingsPlansUsageDetailRequest::setPeriodType(const std::string& periodType)
{
periodType_ = periodType;
setParameter("PeriodType", periodType);
}
long DescribeSavingsPlansUsageDetailRequest::getBillOwnerId()const
{
return billOwnerId_;
}
void DescribeSavingsPlansUsageDetailRequest::setBillOwnerId(long billOwnerId)
{
billOwnerId_ = billOwnerId;
setParameter("BillOwnerId", std::to_string(billOwnerId));
}
std::string DescribeSavingsPlansUsageDetailRequest::getStartPeriod()const
{
return startPeriod_;
}
void DescribeSavingsPlansUsageDetailRequest::setStartPeriod(const std::string& startPeriod)
{
startPeriod_ = startPeriod;
setParameter("StartPeriod", startPeriod);
}
std::string DescribeSavingsPlansUsageDetailRequest::getEndPeriod()const
{
return endPeriod_;
}
void DescribeSavingsPlansUsageDetailRequest::setEndPeriod(const std::string& endPeriod)
{
endPeriod_ = endPeriod;
setParameter("EndPeriod", endPeriod);
}
std::string DescribeSavingsPlansUsageDetailRequest::getToken()const
{
return token_;
}
void DescribeSavingsPlansUsageDetailRequest::setToken(const std::string& token)
{
token_ = token;
setParameter("Token", token);
}
int DescribeSavingsPlansUsageDetailRequest::getMaxResults()const
{
return maxResults_;
}
void DescribeSavingsPlansUsageDetailRequest::setMaxResults(int maxResults)
{
maxResults_ = maxResults;
setParameter("MaxResults", std::to_string(maxResults));
}

View File

@@ -0,0 +1,107 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <alibabacloud/bssopenapi/model/DescribeSavingsPlansUsageDetailResult.h>
#include <json/json.h>
using namespace AlibabaCloud::BssOpenApi;
using namespace AlibabaCloud::BssOpenApi::Model;
DescribeSavingsPlansUsageDetailResult::DescribeSavingsPlansUsageDetailResult() :
ServiceResult()
{}
DescribeSavingsPlansUsageDetailResult::DescribeSavingsPlansUsageDetailResult(const std::string &payload) :
ServiceResult()
{
parse(payload);
}
DescribeSavingsPlansUsageDetailResult::~DescribeSavingsPlansUsageDetailResult()
{}
void DescribeSavingsPlansUsageDetailResult::parse(const std::string &payload)
{
Json::Reader reader;
Json::Value value;
reader.parse(payload, value);
setRequestId(value["RequestId"].asString());
auto dataNode = value["Data"];
if(!dataNode["TotalCount"].isNull())
data_.totalCount = std::stoi(dataNode["TotalCount"].asString());
if(!dataNode["NextToken"].isNull())
data_.nextToken = dataNode["NextToken"].asString();
auto allItemsNode = dataNode["Items"]["Item"];
for (auto dataNodeItemsItem : allItemsNode)
{
Data::Item itemObject;
if(!dataNodeItemsItem["UserId"].isNull())
itemObject.userId = std::stol(dataNodeItemsItem["UserId"].asString());
if(!dataNodeItemsItem["UserName"].isNull())
itemObject.userName = dataNodeItemsItem["UserName"].asString();
if(!dataNodeItemsItem["InstanceId"].isNull())
itemObject.instanceId = dataNodeItemsItem["InstanceId"].asString();
if(!dataNodeItemsItem["StartPeriod"].isNull())
itemObject.startPeriod = dataNodeItemsItem["StartPeriod"].asString();
if(!dataNodeItemsItem["EndPeriod"].isNull())
itemObject.endPeriod = dataNodeItemsItem["EndPeriod"].asString();
if(!dataNodeItemsItem["Status"].isNull())
itemObject.status = dataNodeItemsItem["Status"].asString();
if(!dataNodeItemsItem["Type"].isNull())
itemObject.type = dataNodeItemsItem["Type"].asString();
if(!dataNodeItemsItem["UsagePercentage"].isNull())
itemObject.usagePercentage = std::stof(dataNodeItemsItem["UsagePercentage"].asString());
if(!dataNodeItemsItem["PoolValue"].isNull())
itemObject.poolValue = std::stof(dataNodeItemsItem["PoolValue"].asString());
if(!dataNodeItemsItem["DeductValue"].isNull())
itemObject.deductValue = std::stof(dataNodeItemsItem["DeductValue"].asString());
if(!dataNodeItemsItem["PostpaidCost"].isNull())
itemObject.postpaidCost = std::stof(dataNodeItemsItem["PostpaidCost"].asString());
if(!dataNodeItemsItem["SavedCost"].isNull())
itemObject.savedCost = std::stof(dataNodeItemsItem["SavedCost"].asString());
if(!dataNodeItemsItem["Currency"].isNull())
itemObject.currency = dataNodeItemsItem["Currency"].asString();
data_.items.push_back(itemObject);
}
if(!value["Success"].isNull())
success_ = value["Success"].asString() == "true";
if(!value["Code"].isNull())
code_ = value["Code"].asString();
if(!value["Message"].isNull())
message_ = value["Message"].asString();
}
std::string DescribeSavingsPlansUsageDetailResult::getMessage()const
{
return message_;
}
DescribeSavingsPlansUsageDetailResult::Data DescribeSavingsPlansUsageDetailResult::getData()const
{
return data_;
}
std::string DescribeSavingsPlansUsageDetailResult::getCode()const
{
return code_;
}
bool DescribeSavingsPlansUsageDetailResult::getSuccess()const
{
return success_;
}

View File

@@ -0,0 +1,73 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <alibabacloud/bssopenapi/model/DescribeSavingsPlansUsageTotalRequest.h>
using AlibabaCloud::BssOpenApi::Model::DescribeSavingsPlansUsageTotalRequest;
DescribeSavingsPlansUsageTotalRequest::DescribeSavingsPlansUsageTotalRequest() :
RpcServiceRequest("bssopenapi", "2017-12-14", "DescribeSavingsPlansUsageTotal")
{
setMethod(HttpRequest::Method::Post);
}
DescribeSavingsPlansUsageTotalRequest::~DescribeSavingsPlansUsageTotalRequest()
{}
std::string DescribeSavingsPlansUsageTotalRequest::getPeriodType()const
{
return periodType_;
}
void DescribeSavingsPlansUsageTotalRequest::setPeriodType(const std::string& periodType)
{
periodType_ = periodType;
setParameter("PeriodType", periodType);
}
long DescribeSavingsPlansUsageTotalRequest::getBillOwnerId()const
{
return billOwnerId_;
}
void DescribeSavingsPlansUsageTotalRequest::setBillOwnerId(long billOwnerId)
{
billOwnerId_ = billOwnerId;
setParameter("BillOwnerId", std::to_string(billOwnerId));
}
std::string DescribeSavingsPlansUsageTotalRequest::getStartPeriod()const
{
return startPeriod_;
}
void DescribeSavingsPlansUsageTotalRequest::setStartPeriod(const std::string& startPeriod)
{
startPeriod_ = startPeriod;
setParameter("StartPeriod", startPeriod);
}
std::string DescribeSavingsPlansUsageTotalRequest::getEndPeriod()const
{
return endPeriod_;
}
void DescribeSavingsPlansUsageTotalRequest::setEndPeriod(const std::string& endPeriod)
{
endPeriod_ = endPeriod;
setParameter("EndPeriod", endPeriod);
}

View File

@@ -0,0 +1,90 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <alibabacloud/bssopenapi/model/DescribeSavingsPlansUsageTotalResult.h>
#include <json/json.h>
using namespace AlibabaCloud::BssOpenApi;
using namespace AlibabaCloud::BssOpenApi::Model;
DescribeSavingsPlansUsageTotalResult::DescribeSavingsPlansUsageTotalResult() :
ServiceResult()
{}
DescribeSavingsPlansUsageTotalResult::DescribeSavingsPlansUsageTotalResult(const std::string &payload) :
ServiceResult()
{
parse(payload);
}
DescribeSavingsPlansUsageTotalResult::~DescribeSavingsPlansUsageTotalResult()
{}
void DescribeSavingsPlansUsageTotalResult::parse(const std::string &payload)
{
Json::Reader reader;
Json::Value value;
reader.parse(payload, value);
setRequestId(value["RequestId"].asString());
auto dataNode = value["Data"];
auto allPeriodCoverageNode = dataNode["PeriodCoverage"]["Item"];
for (auto dataNodePeriodCoverageItem : allPeriodCoverageNode)
{
Data::Item itemObject;
if(!dataNodePeriodCoverageItem["Period"].isNull())
itemObject.period = dataNodePeriodCoverageItem["Period"].asString();
if(!dataNodePeriodCoverageItem["Percentage"].isNull())
itemObject.percentage = std::stof(dataNodePeriodCoverageItem["Percentage"].asString());
data_.periodCoverage.push_back(itemObject);
}
auto totalUsageNode = dataNode["TotalUsage"];
if(!totalUsageNode["UsagePercentage"].isNull())
data_.totalUsage.usagePercentage = std::stof(totalUsageNode["UsagePercentage"].asString());
if(!totalUsageNode["PostpaidCost"].isNull())
data_.totalUsage.postpaidCost = std::stof(totalUsageNode["PostpaidCost"].asString());
if(!totalUsageNode["PoolValue"].isNull())
data_.totalUsage.poolValue = std::stof(totalUsageNode["PoolValue"].asString());
if(!totalUsageNode["SavedCost"].isNull())
data_.totalUsage.savedCost = std::stof(totalUsageNode["SavedCost"].asString());
if(!value["Success"].isNull())
success_ = value["Success"].asString() == "true";
if(!value["Code"].isNull())
code_ = value["Code"].asString();
if(!value["Message"].isNull())
message_ = value["Message"].asString();
}
std::string DescribeSavingsPlansUsageTotalResult::getMessage()const
{
return message_;
}
DescribeSavingsPlansUsageTotalResult::Data DescribeSavingsPlansUsageTotalResult::getData()const
{
return data_;
}
std::string DescribeSavingsPlansUsageTotalResult::getCode()const
{
return code_;
}
bool DescribeSavingsPlansUsageTotalResult::getSuccess()const
{
return success_;
}

View File

@@ -60,6 +60,17 @@ void QueryDPUtilizationDetailRequest::setInstanceSpec(const std::string& instanc
setParameter("InstanceSpec", instanceSpec);
}
std::string QueryDPUtilizationDetailRequest::getProdCode()const
{
return prodCode_;
}
void QueryDPUtilizationDetailRequest::setProdCode(const std::string& prodCode)
{
prodCode_ = prodCode;
setParameter("ProdCode", prodCode);
}
std::string QueryDPUtilizationDetailRequest::getEndTime()const
{
return endTime_;