UNPKG

tencentcloud-sdk-nodejs-intl-en

Version:
1,777 lines (1,504 loc) • 585 kB
/* * Copyright (c) 2018 Tencent. 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. */ const AbstractModel = require("../../common/abstract_model"); /** * CreateAllocationUnit request structure. * @class */ class CreateAllocationUnitRequest extends AbstractModel { constructor(){ super(); /** * New cost allocation unit parent node ID. * @type {number || null} */ this.ParentId = null; /** * Specifies the name of a newly-added cost allocation unit. * @type {string || null} */ this.Name = null; /** * Month, which is the current month by default if not provided. * @type {string || null} */ this.Month = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.ParentId = 'ParentId' in params ? params.ParentId : null; this.Name = 'Name' in params ? params.Name : null; this.Month = 'Month' in params ? params.Month : null; } } /** * DescribeBillAdjustInfo response structure. * @class */ class DescribeBillAdjustInfoResponse extends AbstractModel { constructor(){ super(); /** * <p>Total data</p> * @type {number || null} */ this.Total = null; /** * <p>Detailed data</p> * @type {Array.<AdjustInfoDetail> || null} */ this.Data = null; /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Total = 'Total' in params ? params.Total : null; if (params.Data) { this.Data = new Array(); for (let z in params.Data) { let obj = new AdjustInfoDetail(); obj.deserialize(params.Data[z]); this.Data.push(obj); } } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * DescribeCostSummaryByProduct request structure. * @class */ class DescribeCostSummaryByProductRequest extends AbstractModel { constructor(){ super(); /** * The value must be of the same month as `EndTime`. The query period must start and end on the same month and the query result returned will be of the entire month. For example, if both `BeginTime` and `EndTime` are `2018-09`, the data returned will be for the entire month of September 2018. * @type {string || null} */ this.BeginTime = null; /** * The value must be of the same month as `BeginTime`. The query period must start and end on the same month and the query result returned will be of the entire month. For example, if both `BeginTime` and `EndTime` are `2018-09`, the data returned will be for the entire month of September 2018. * @type {string || null} */ this.EndTime = null; /** * Data quantity per fetch. The maximum value is 100. * @type {number || null} */ this.Limit = null; /** * Offset, which starts from 0 by default * @type {number || null} */ this.Offset = null; /** * UIN of the user querying the bill data * @type {string || null} */ this.PayerUin = null; /** * Whether to return the record count. 0 for no, 1 for yes. Default is no. * @type {number || null} */ this.NeedRecordNum = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.BeginTime = 'BeginTime' in params ? params.BeginTime : null; this.EndTime = 'EndTime' in params ? params.EndTime : null; this.Limit = 'Limit' in params ? params.Limit : null; this.Offset = 'Offset' in params ? params.Offset : null; this.PayerUin = 'PayerUin' in params ? params.PayerUin : null; this.NeedRecordNum = 'NeedRecordNum' in params ? params.NeedRecordNum : null; } } /** * DescribeBudget response structure. * @class */ class DescribeBudgetResponse extends AbstractModel { constructor(){ super(); /** * Budget project detail * @type {DataForBudgetInfoPage || null} */ this.Data = null; /** * prompt Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.Message = null; /** * Return code * @type {number || null} */ this.Code = null; /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } if (params.Data) { let obj = new DataForBudgetInfoPage(); obj.deserialize(params.Data) this.Data = obj; } this.Message = 'Message' in params ? params.Message : null; this.Code = 'Code' in params ? params.Code : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * DescribeCPQBillingMapping request structure. * @class */ class DescribeCPQBillingMappingRequest extends AbstractModel { constructor(){ super(); /** * Offset * @type {string || null} */ this.Offset = null; /** * The number of entries returned at a time. The maximum value is `100`. * @type {string || null} */ this.Limit = null; /** * Quoted subproduct name * @type {string || null} */ this.SpuName = null; /** * Quoted product name * @type {string || null} */ this.CategoryName = null; /** * Product name * @type {string || null} */ this.BusinessName = null; /** * Subproduct name * @type {string || null} */ this.ProductName = null; /** * Component type name * @type {string || null} */ this.ComponentName = null; /** * Component name * @type {string || null} */ this.ItemName = null; /** * Product code * @type {string || null} */ this.BusinessCode = null; /** * Subproduct code * @type {string || null} */ this.ProductCode = null; /** * Component type code * @type {string || null} */ this.ComponentCode = null; /** * Component code * @type {string || null} */ this.ItemCode = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Offset = 'Offset' in params ? params.Offset : null; this.Limit = 'Limit' in params ? params.Limit : null; this.SpuName = 'SpuName' in params ? params.SpuName : null; this.CategoryName = 'CategoryName' in params ? params.CategoryName : null; this.BusinessName = 'BusinessName' in params ? params.BusinessName : null; this.ProductName = 'ProductName' in params ? params.ProductName : null; this.ComponentName = 'ComponentName' in params ? params.ComponentName : null; this.ItemName = 'ItemName' in params ? params.ItemName : null; this.BusinessCode = 'BusinessCode' in params ? params.BusinessCode : null; this.ProductCode = 'ProductCode' in params ? params.ProductCode : null; this.ComponentCode = 'ComponentCode' in params ? params.ComponentCode : null; this.ItemCode = 'ItemCode' in params ? params.ItemCode : null; } } /** * Consumption details summarized by product * @class */ class ConsumptionBusinessSummaryDataItem extends AbstractModel { constructor(){ super(); /** * Product name code * @type {string || null} */ this.BusinessCode = null; /** * Product name * @type {string || null} */ this.BusinessCodeName = null; /** * Discounted total price * @type {string || null} */ this.RealTotalCost = null; /** * Cost trend * @type {ConsumptionSummaryTrend || null} */ this.Trend = null; /** * Cash * @type {string || null} */ this.CashPayAmount = null; /** * Bonus * @type {string || null} */ this.IncentivePayAmount = null; /** * Voucher * @type {string || null} */ this.VoucherPayAmount = null; /** * Royalty amount * @type {string || null} */ this.TransferPayAmount = null; /** * Cash payment (pre-tax) * @type {string || null} */ this.AmountBeforeTax = null; /** * Tax * @type {string || null} */ this.Tax = null; /** * Region name (only shown in regional summary) * @type {string || null} */ this.RegionName = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.BusinessCode = 'BusinessCode' in params ? params.BusinessCode : null; this.BusinessCodeName = 'BusinessCodeName' in params ? params.BusinessCodeName : null; this.RealTotalCost = 'RealTotalCost' in params ? params.RealTotalCost : null; if (params.Trend) { let obj = new ConsumptionSummaryTrend(); obj.deserialize(params.Trend) this.Trend = obj; } this.CashPayAmount = 'CashPayAmount' in params ? params.CashPayAmount : null; this.IncentivePayAmount = 'IncentivePayAmount' in params ? params.IncentivePayAmount : null; this.VoucherPayAmount = 'VoucherPayAmount' in params ? params.VoucherPayAmount : null; this.TransferPayAmount = 'TransferPayAmount' in params ? params.TransferPayAmount : null; this.AmountBeforeTax = 'AmountBeforeTax' in params ? params.AmountBeforeTax : null; this.Tax = 'Tax' in params ? params.Tax : null; this.RegionName = 'RegionName' in params ? params.RegionName : null; } } /** * ModifyGatherRule request structure. * @class */ class ModifyGatherRuleRequest extends AbstractModel { constructor(){ super(); /** * Edit collection rule ID. * @type {number || null} */ this.Id = null; /** * Rule detail of the edited collection rule. * @type {AllocationRuleExpression || null} */ this.RuleDetail = null; /** * Month, which is the current month by default if not provided. * @type {string || null} */ this.Month = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Id = 'Id' in params ? params.Id : null; if (params.RuleDetail) { let obj = new AllocationRuleExpression(); obj.deserialize(params.RuleDetail) this.RuleDetail = obj; } this.Month = 'Month' in params ? params.Month : null; } } /** * Budget threshold notification * @class */ class BudgetWarn extends AbstractModel { constructor(){ super(); /** * ACTUAL amount FORECAST Amount * @type {string || null} */ this.WarnType = null; /** * PERCENTAGE Percentage of the budget amount, ABS Fixed value * @type {string || null} */ this.CalType = null; /** * Threshold (greater than or equal to 0) * @type {string || null} */ this.ThresholdValue = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.WarnType = 'WarnType' in params ? params.WarnType : null; this.CalType = 'CalType' in params ? params.CalType : null; this.ThresholdValue = 'ThresholdValue' in params ? params.ThresholdValue : null; } } /** * ModifyAllocationRule request structure. * @class */ class ModifyAllocationRuleRequest extends AbstractModel { constructor(){ super(); /** * The edited sharing rule ID. * @type {number || null} */ this.RuleId = null; /** * Edited sharing rule name. * @type {string || null} */ this.Name = null; /** * Public sharing policy types, enumeration values are as follows: 1 - custom sharing proportion 2 - proportional allocation 3 - allocation by proportion. * @type {number || null} */ this.Type = null; /** * Edited share rules expression. * @type {AllocationRuleExpression || null} */ this.RuleDetail = null; /** * Edited sharing proportion expression. * @type {Array.<AllocationRationExpression> || null} */ this.RatioDetail = null; /** * Month, which is the current month by default if not provided. * @type {string || null} */ this.Month = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RuleId = 'RuleId' in params ? params.RuleId : null; this.Name = 'Name' in params ? params.Name : null; this.Type = 'Type' in params ? params.Type : null; if (params.RuleDetail) { let obj = new AllocationRuleExpression(); obj.deserialize(params.RuleDetail) this.RuleDetail = obj; } if (params.RatioDetail) { this.RatioDetail = new Array(); for (let z in params.RatioDetail) { let obj = new AllocationRationExpression(); obj.deserialize(params.RatioDetail[z]); this.RatioDetail.push(obj); } } this.Month = 'Month' in params ? params.Month : null; } } /** * DeleteAllocationRule request structure. * @class */ class DeleteAllocationRuleRequest extends AbstractModel { constructor(){ super(); /** * The deleted sharing rule ID. * @type {number || null} */ this.RuleId = null; /** * Month, which is the current month by default if not provided. * @type {string || null} */ this.Month = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RuleId = 'RuleId' in params ? params.RuleId : null; this.Month = 'Month' in params ? params.Month : null; } } /** * CreateAllocationRule response structure. * @class */ class CreateAllocationRuleResponse extends AbstractModel { constructor(){ super(); /** * Add new sharing rule ID. * @type {number || null} */ this.Id = null; /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Id = 'Id' in params ? params.Id : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * Bill tag information. * @class */ class BillTagInfo extends AbstractModel { constructor(){ super(); /** * Cost allocation tag key * @type {string || null} */ this.TagKey = null; /** * Tag value * @type {string || null} */ this.TagValue = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.TagKey = 'TagKey' in params ? params.TagKey : null; this.TagValue = 'TagValue' in params ? params.TagValue : null; } } /** * Total amount of a cost allocation bill * @class */ class AllocationOverviewTotal extends AbstractModel { constructor(){ super(); /** * Total fees: Total Fees (Cash) + Total Fees (Royalty Amount) + Total Fees (Free Credit) + Total Fees (Voucher) Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.RealTotalCost = null; /** * Cash: Total fees of cash Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.CashPayAmount = null; /** * Free credit: Total fees of free credit Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.IncentivePayAmount = null; /** * Voucher: Total fees of voucher Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.VoucherPayAmount = null; /** * Royalty amount: Total fees of royalty amount Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.TransferPayAmount = null; /** * Pre-tax price after discount * @type {string || null} */ this.CostBeforeTax = null; /** * Tax * @type {string || null} */ this.Tax = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RealTotalCost = 'RealTotalCost' in params ? params.RealTotalCost : null; this.CashPayAmount = 'CashPayAmount' in params ? params.CashPayAmount : null; this.IncentivePayAmount = 'IncentivePayAmount' in params ? params.IncentivePayAmount : null; this.VoucherPayAmount = 'VoucherPayAmount' in params ? params.VoucherPayAmount : null; this.TransferPayAmount = 'TransferPayAmount' in params ? params.TransferPayAmount : null; this.CostBeforeTax = 'CostBeforeTax' in params ? params.CostBeforeTax : null; this.Tax = 'Tax' in params ? params.Tax : null; } } /** * CreateInstance response structure. * @class */ class CreateInstanceResponse extends AbstractModel { constructor(){ super(); /** * Order ID * @type {string || null} */ this.OrderId = null; /** * Instance id list. Empty list will be returned once product delivery is delayed. * @type {Array.<string> || null} */ this.InstanceIdList = null; /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.OrderId = 'OrderId' in params ? params.OrderId : null; this.InstanceIdList = 'InstanceIdList' in params ? params.InstanceIdList : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * Query returns complete budget information * @class */ class BudgetExtend extends AbstractModel { constructor(){ super(); /** * Budget Name * @type {string || null} */ this.BudgetName = null; /** * Budget limit * @type {string || null} */ this.BudgetQuota = null; /** * DAY, MONTH, QUARTER, YEAR * @type {string || null} */ this.CycleType = null; /** * BILL System bill, CONSUMPTION Consumption bill * @type {string || null} */ this.BillType = null; /** * COST Original price, REAL_COST Actual fee, CASH Cash, INCENTIVE Free credit, VOUCHER Voucher, TRANSFER Allocated fees (royalty amount), TAX Tax, AMOUNT_BEFORE_TAX Cash payment (before tax) * @type {string || null} */ this.FeeType = null; /** * Validity start time 2025-01-01 * @type {string || null} */ this.PeriodBegin = null; /** * Validity end time 2025-12-01 * @type {string || null} */ this.PeriodEnd = null; /** * COST,USAGE,RI,SP * @type {string || null} */ this.Dimensions = null; /** * FIX fixed value, CYCLE different value * @type {string || null} */ this.PlanType = null; /** * threshold alert * @type {Array.<BudgetWarn> || null} */ this.WarnJson = null; /** * User UIN * @type {number || null} */ this.PayerUin = null; /** * fluctuation alert * @type {Array.<WaveThresholdForm> || null} */ this.WaveThresholdJson = null; /** * Budget remark * @type {string || null} */ this.BudgetNote = null; /** * Custom sending object information * @type {string || null} */ this.SendDetail = null; /** * Default uin sent * @type {number || null} */ this.DefaultMode = null; /** * CUS custom budget, ZERO_COST zero-cost budget template, BY_MONTH monthly cost budget template Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.TemplateType = null; /** * (1, "Not over budget") (2, "Overspend") * @type {number || null} */ this.MoneyStatus = null; /** * Reminder count * @type {number || null} */ this.RemindTimes = null; /** * Creation time * @type {string || null} */ this.CreateTime = null; /** * Update budget time * @type {string || null} */ this.UpdateTime = null; /** * Associated Id of the budget * @type {string || null} */ this.BudgetId = null; /** * NO_FORECAST (Not set) FORECAST_NO_DATA (Set up prediction but no data) FORECAST_HAS_DATA (Set up prediction with predictive data) Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.HasForecast = null; /** * predicted fee Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.ForecastCost = null; /** * Projection progress Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.ForecastProgress = null; /** * actual fee * @type {string || null} */ this.RealCost = null; /** * Custom send * @type {Array.<BudgetSendInfoDto> || null} */ this.BudgetSendInfoForm = null; /** * current cycle * @type {string || null} */ this.CurDateDesc = null; /** * EXPIRED ACTIVE UNACTIVATED Invalid ACTIVATED To be effective * @type {string || null} */ this.BudgetStatus = null; /** * Budget dimension range condition Note: This field may return null, indicating that no valid values can be obtained. * @type {BudgetConditionsForm || null} */ this.DimensionsRange = null; /** * Budget progress Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.BudgetProgress = null; /** * Budget Type is set to budget planning and returns the budget limit Note: This field may return null, indicating that no valid values can be obtained. * @type {Array.<BudgetPlan> || null} */ this.BudgetQuotaJson = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.BudgetName = 'BudgetName' in params ? params.BudgetName : null; this.BudgetQuota = 'BudgetQuota' in params ? params.BudgetQuota : null; this.CycleType = 'CycleType' in params ? params.CycleType : null; this.BillType = 'BillType' in params ? params.BillType : null; this.FeeType = 'FeeType' in params ? params.FeeType : null; this.PeriodBegin = 'PeriodBegin' in params ? params.PeriodBegin : null; this.PeriodEnd = 'PeriodEnd' in params ? params.PeriodEnd : null; this.Dimensions = 'Dimensions' in params ? params.Dimensions : null; this.PlanType = 'PlanType' in params ? params.PlanType : null; if (params.WarnJson) { this.WarnJson = new Array(); for (let z in params.WarnJson) { let obj = new BudgetWarn(); obj.deserialize(params.WarnJson[z]); this.WarnJson.push(obj); } } this.PayerUin = 'PayerUin' in params ? params.PayerUin : null; if (params.WaveThresholdJson) { this.WaveThresholdJson = new Array(); for (let z in params.WaveThresholdJson) { let obj = new WaveThresholdForm(); obj.deserialize(params.WaveThresholdJson[z]); this.WaveThresholdJson.push(obj); } } this.BudgetNote = 'BudgetNote' in params ? params.BudgetNote : null; this.SendDetail = 'SendDetail' in params ? params.SendDetail : null; this.DefaultMode = 'DefaultMode' in params ? params.DefaultMode : null; this.TemplateType = 'TemplateType' in params ? params.TemplateType : null; this.MoneyStatus = 'MoneyStatus' in params ? params.MoneyStatus : null; this.RemindTimes = 'RemindTimes' in params ? params.RemindTimes : null; this.CreateTime = 'CreateTime' in params ? params.CreateTime : null; this.UpdateTime = 'UpdateTime' in params ? params.UpdateTime : null; this.BudgetId = 'BudgetId' in params ? params.BudgetId : null; this.HasForecast = 'HasForecast' in params ? params.HasForecast : null; this.ForecastCost = 'ForecastCost' in params ? params.ForecastCost : null; this.ForecastProgress = 'ForecastProgress' in params ? params.ForecastProgress : null; this.RealCost = 'RealCost' in params ? params.RealCost : null; if (params.BudgetSendInfoForm) { this.BudgetSendInfoForm = new Array(); for (let z in params.BudgetSendInfoForm) { let obj = new BudgetSendInfoDto(); obj.deserialize(params.BudgetSendInfoForm[z]); this.BudgetSendInfoForm.push(obj); } } this.CurDateDesc = 'CurDateDesc' in params ? params.CurDateDesc : null; this.BudgetStatus = 'BudgetStatus' in params ? params.BudgetStatus : null; if (params.DimensionsRange) { let obj = new BudgetConditionsForm(); obj.deserialize(params.DimensionsRange) this.DimensionsRange = obj; } this.BudgetProgress = 'BudgetProgress' in params ? params.BudgetProgress : null; if (params.BudgetQuotaJson) { this.BudgetQuotaJson = new Array(); for (let z in params.BudgetQuotaJson) { let obj = new BudgetPlan(); obj.deserialize(params.BudgetQuotaJson[z]); this.BudgetQuotaJson.push(obj); } } } } /** * Product filter criteria * @class */ class ConditionBusiness extends AbstractModel { constructor(){ super(); /** * Product name code * @type {string || null} */ this.BusinessCode = null; /** * Product name * @type {string || null} */ this.BusinessCodeName = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.BusinessCode = 'BusinessCode' in params ? params.BusinessCode : null; this.BusinessCodeName = 'BusinessCodeName' in params ? params.BusinessCodeName : null; } } /** * Cost analysis transaction type complex type * @class */ class AnalyseActionTypeDetail extends AbstractModel { constructor(){ super(); /** * Transaction type code * @type {string || null} */ this.ActionType = null; /** * Transaction type Name * @type {string || null} */ this.ActionTypeName = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.ActionType = 'ActionType' in params ? params.ActionType : null; this.ActionTypeName = 'ActionTypeName' in params ? params.ActionTypeName : null; } } /** * DescribeBudget request structure. * @class */ class DescribeBudgetRequest extends AbstractModel { constructor(){ super(); /** * Page number, int * @type {number || null} */ this.PageNo = null; /** * Number of items per page, integer * @type {number || null} */ this.PageSize = null; /** * Budget project id * @type {string || null} */ this.BudgetId = null; /** * Budget Name * @type {string || null} */ this.BudgetName = null; /** * EXPIRED, ACTIVE, ACTIVATED pending activation * @type {string || null} */ this.BudgetStatus = null; /** * DAY day MONTH monthly QUARTER quarter YEAR annual * @type {Array.<string> || null} */ this.CycleTypes = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.PageNo = 'PageNo' in params ? params.PageNo : null; this.PageSize = 'PageSize' in params ? params.PageSize : null; this.BudgetId = 'BudgetId' in params ? params.BudgetId : null; this.BudgetName = 'BudgetName' in params ? params.BudgetName : null; this.BudgetStatus = 'BudgetStatus' in params ? params.BudgetStatus : null; this.CycleTypes = 'CycleTypes' in params ? params.CycleTypes : null; } } /** * DescribeCostExplorerSummary request structure. * @class */ class DescribeCostExplorerSummaryRequest extends AbstractModel { constructor(){ super(); /** * The start time of the period in the format of yyyy-mm-dd hh:ii:ss. * @type {string || null} */ this.BeginTime = null; /** * The end time of the period in the format of yyyy-mm-dd hh:ii:ss. * @type {string || null} */ this.EndTime = null; /** * Bill type: 1-cost bill, 2-consumption bill * @type {string || null} */ this.BillType = null; /** * Statistical period: day-day, month-month; * @type {string || null} */ this.PeriodType = null; /** * Classification dimension (data aggregation dimension). Query classification dimension. (Use classification dimension code input parameter.) Input parameter enumeration value:default = Total only feeType = Fee typebillType = Bill typebusiness = Product product = Sub-productregion=Region zone = Availability zoneactionType = Transaction typepayMode = Billing modetags = Tagproject = ProjectpayerUin = Payer accountownerUin = User account * @type {string || null} */ this.Dimensions = null; /** * Fee type: cost-discounted total cost, totalCost-original price cost * @type {string || null} */ this.FeeType = null; /** * Quantity. The maximum value per page is 100. * @type {number || null} */ this.PageSize = null; /** * Starting page, where PageNo=1 indicates the first page, PageNo=2 indicates the second page, and so on. * @type {number || null} */ this.PageNo = null; /** * Cost allocation tag key * @type {string || null} */ this.TagKeyStr = null; /** * Whether the filter box is needed: 1- indicates it is needed, 0- indicates it is not needed. If it is not specified, it is not required by default. * @type {string || null} */ this.NeedConditionValue = null; /** * Filter parameters * @type {AnalyseConditions || null} */ this.Conditions = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.BeginTime = 'BeginTime' in params ? params.BeginTime : null; this.EndTime = 'EndTime' in params ? params.EndTime : null; this.BillType = 'BillType' in params ? params.BillType : null; this.PeriodType = 'PeriodType' in params ? params.PeriodType : null; this.Dimensions = 'Dimensions' in params ? params.Dimensions : null; this.FeeType = 'FeeType' in params ? params.FeeType : null; this.PageSize = 'PageSize' in params ? params.PageSize : null; this.PageNo = 'PageNo' in params ? params.PageNo : null; this.TagKeyStr = 'TagKeyStr' in params ? params.TagKeyStr : null; this.NeedConditionValue = 'NeedConditionValue' in params ? params.NeedConditionValue : null; if (params.Conditions) { let obj = new AnalyseConditions(); obj.deserialize(params.Conditions) this.Conditions = obj; } } } /** * Product cascade filter value * @class */ class BillBusinessLink extends AbstractModel { constructor(){ super(); /** * Product code * @type {string || null} */ this.BusinessCode = null; /** * Product name * @type {string || null} */ this.BusinessCodeName = null; /** * Subproduct * @type {Array.<BillProductLink> || null} */ this.Children = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.BusinessCode = 'BusinessCode' in params ? params.BusinessCode : null; this.BusinessCodeName = 'BusinessCodeName' in params ? params.BusinessCodeName : null; if (params.Children) { this.Children = new Array(); for (let z in params.Children) { let obj = new BillProductLink(); obj.deserialize(params.Children[z]); this.Children.push(obj); } } } } /** * DescribeCostSummaryByProduct response structure. * @class */ class DescribeCostSummaryByProductResponse extends AbstractModel { constructor(){ super(); /** * Data readiness, 0 for not ready, 1 for ready * @type {number || null} */ this.Ready = null; /** * Consumption details * @type {ConsumptionSummaryTotal || null} */ this.Total = null; /** * Consumption details summarized by product * @type {Array.<ConsumptionBusinessSummaryDataItem> || null} */ this.Data = null; /** * Record count. If NeedRecordNum is 0, null is returned. * @type {number || null} */ this.RecordNum = null; /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Ready = 'Ready' in params ? params.Ready : null; if (params.Total) { let obj = new ConsumptionSummaryTotal(); obj.deserialize(params.Total) this.Total = obj; } if (params.Data) { this.Data = new Array(); for (let z in params.Data) { let obj = new ConsumptionBusinessSummaryDataItem(); obj.deserialize(params.Data[z]); this.Data.push(obj); } } this.RecordNum = 'RecordNum' in params ? params.RecordNum : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * DescribeAllocationTree response structure. * @class */ class DescribeAllocationTreeResponse extends AbstractModel { constructor(){ super(); /** * Cost allocation unit ID. * @type {number || null} */ this.Id = null; /** * Specifies the name of a cost allocation unit. * @type {string || null} */ this.Name = null; /** * Unique identifier of a cost allocation unit * @type {string || null} */ this.TreeNodeUniqKey = null; /** * Specifies a subtree. * @type {Array.<AllocationTree> || null} */ this.Children = null; /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Id = 'Id' in params ? params.Id : null; this.Name = 'Name' in params ? params.Name : null; this.TreeNodeUniqKey = 'TreeNodeUniqKey' in params ? params.TreeNodeUniqKey : null; if (params.Children) { this.Children = new Array(); for (let z in params.Children) { let obj = new AllocationTree(); obj.deserialize(params.Children[z]); this.Children.push(obj); } } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * Monthly overview amount details of a cost allocation bill * @class */ class AllocationMonthOverviewDetail extends AbstractModel { constructor(){ super(); /** * Collected fees (cash): Cash directly collected to the cost allocation unit based on the collection rules * @type {string || null} */ this.GatherCashPayAmount = null; /** * Collected fees (voucher): Resource vouchers directly collected to the cost allocation unit based on the collection rules * @type {string || null} */ this.GatherVoucherPayAmount = null; /** * Collected fees (free credit): Resource free credit directly collected to the cost allocation unit based on the collection rules * @type {string || null} */ this.GatherIncentivePayAmount = null; /** * Collected fees (royalty amount): Resource royalty amount directly collected to the cost allocation unit based on the collection rules * @type {string || null} */ this.GatherTransferPayAmount = null; /** * Allocated fees (cash): Resource cash allocated to the cost allocation unit based on the allocation rules * @type {string || null} */ this.AllocateCashPayAmount = null; /** * Allocated fees (vouchers): Resource vouchers allocated to the cost allocation unit based on the allocation rules * @type {string || null} */ this.AllocateVoucherPayAmount = null; /** * Allocated fees (free credit): Resource free credit allocated to the cost allocation unit based on the allocation rules * @type {string || null} */ this.AllocateIncentivePayAmount = null; /** * Allocated fees (royalty amount): Resource royalty amount allocated to the cost allocation unit based on the allocation rules * @type {string || null} */ this.AllocateTransferPayAmount = null; /** * Total fees (cash): Total fees of the cost allocation unit, Collected Fees (Cash) + Allocated fees (Cash) * @type {string || null} */ this.TotalCashPayAmount = null; /** * Total fees (voucher): Total fees of the cost allocation unit, Collected Fees (Voucher) + Allocated fees (Voucher) * @type {string || null} */ this.TotalVoucherPayAmount = null; /** * Total fees (free credit): Total fees of the cost allocation unit, Collected Fees (Free Credit) + Allocated fees (Free Credit) * @type {string || null} */ this.TotalIncentivePayAmount = null; /** * Total fees (royalty amount): Total cost of the cost allocation unit, Collected Fees (Royalty Amount) + Allocated fees (Royalty Amount) * @type {string || null} */ this.TotalTransferPayAmount = null; /** * Collected fees (discounted total): Total resource amount after discount directly collected to the cost allocation unit based on the collection rules * @type {string || null} */ this.GatherRealCost = null; /** * Allocated fees (discounted total): Total resource amount after discount directly allocated to the cost allocation unit based on the allocation rules * @type {string || null} */ this.AllocateRealCost = null; /** * Total fees (discounted total): Total fees of the cost allocation unit, Collected Fees (discounted total) + Allocated fees (discounted total) * @type {string || null} */ this.RealTotalCost = null; /** * Proportion (discounted total): Total fees (discounted total) of the Cost Allocation Unit/Total Fees (discounted total) * 100% * @type {string || null} */ this.Ratio = null; /** * Month-on-month ratio (discounted total): [Total fees (discounted total) of the cost allocation unit in this month - Total fees (discounted total) of the cost allocation unit in the previous month]/Total fees (discounted total) of the cost allocation unit in the previous month * 100% * @type {string || null} */ this.Trend = null; /** * Sequential Comparison Arrow upward - Upward downward - Downward none - Stable * @type {string || null} */ this.TrendType = null; /** * AllocateCostBeforeTax * @type {string || null} */ this.AllocateCostBeforeTax = null; /** * GatherCostBeforeTax * @type {string || null} */ this.GatherCostBeforeTax = null; /** * TotalCostBeforeTax * @type {string || null} */ this.TotalCostBeforeTax = null; /** * AllocateTax * @type {string || null} */ this.AllocateTax = null; /** * GatherTax * @type {string || null} */ this.GatherTax = null; /** * TotalTax * @type {string || null} */ this.TotalTax = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.GatherCashPayAmount = 'GatherCashPayAmount' in params ? params.GatherCashPayAmount : null; this.GatherVoucherPayAmount = 'GatherVoucherPayAmount' in params ? params.GatherVoucherPayAmount : null; this.GatherIncentivePayAmount = 'GatherIncentivePayAmount' in params ? params.GatherIncentivePayAmount : null; this.GatherTransferPayAmount = 'GatherTransferPayAmount' in params ? params.GatherTransferPayAmount : null; this.AllocateCashPayAmount = 'AllocateCashPayAmount' in params ? params.AllocateCashPayAmount : null; this.AllocateVoucherPayAmount = 'AllocateVoucherPayAmount' in params ? params.AllocateVoucherPayAmount : null; this.AllocateIncentivePayAmount = 'AllocateIncentivePayAmount' in params ? params.AllocateIncentivePayAmount : null; this.AllocateTransferPayAmount = 'AllocateTransferPayAmount' in params ? params.AllocateTransferPayAmount : null; this.TotalCashPayAmount = 'TotalCashPayAmount' in params ? params.TotalCashPayAmount : null; this.TotalVoucherPayAmount = 'TotalVoucherPayAmount' in params ? params.TotalVoucherPayAmount : null; this.TotalIncentivePayAmount = 'TotalIncentivePayAmount' in params ? params.TotalIncentivePayAmount : null; this.TotalTransferPayAmount = 'TotalTransferPayAmount' in params ? params.TotalTransferPayAmount : null; this.GatherRealCost = 'GatherRealCost' in params ? params.GatherRealCost : null; this.AllocateRealCost = 'AllocateRealCost' in params ? params.AllocateRealCost : null; this.RealTotalCost = 'RealTotalCost' in params ? params.RealTotalCost : null; this.Ratio = 'Ratio' in params ? params.Ratio : null; this.Trend = 'Trend' in params ? params.Trend : null; this.TrendType = 'TrendType' in params ? params.TrendType : null; this.AllocateCostBeforeTax = 'AllocateCostBeforeTax' in params ? params.AllocateCostBeforeTax : null; this.GatherCostBeforeTax = 'GatherCostBeforeTax' in params ? params.GatherCostBeforeTax : null; this.TotalCostBeforeTax = 'TotalCostBeforeTax' in params ? params.TotalCostBeforeTax : null; this.AllocateTax = 'AllocateTax' in params ? params.AllocateTax : null; this.GatherTax = 'GatherTax' in params ? params.GatherTax : null; this.TotalTax = 'TotalTax' in params ? params.TotalTax : null; } } /** * Cost allocation tree. * @class */ class AllocationTree extends AbstractModel { constructor(){ super(); /** * ID of a cost allocation unit. * @type {number || null} */ this.Id = null; /** * Cost allocation unit name. * @type {string || null} */ this.Name = null; /** * Unique identifier of a cost allocation unit * @type {string || null} */ this.TreeNodeUniqKey = null; /** * Subtree. * @type {Array.<AllocationTree> || null} */ this.Children = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Id = 'Id' in params ? params.Id : null; this.Name = 'Name' in params ? params.Name : null; this.TreeNodeUniqKey = 'TreeNodeUniqKey' in params ? params.TreeNodeUniqKey : null; if (params.Children) { this.Children = new Array(); for (let z in params.Children) { let obj = new AllocationTree(); obj.deserialize(params.Children[z]);