tencentcloud-sdk-nodejs-intl-en 3.0.1183 → 3.0.1185

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -16,6 +16,48 @@
16
16
  */
17
17
  const AbstractModel = require("../../common/abstract_model");
18
18
 
19
+ /**
20
+ * CreateAllocationUnit request structure.
21
+ * @class
22
+ */
23
+ class CreateAllocationUnitRequest extends AbstractModel {
24
+ constructor(){
25
+ super();
26
+
27
+ /**
28
+ * New cost allocation unit parent node ID.
29
+ * @type {number || null}
30
+ */
31
+ this.ParentId = null;
32
+
33
+ /**
34
+ * Specifies the name of a newly-added cost allocation unit.
35
+ * @type {string || null}
36
+ */
37
+ this.Name = null;
38
+
39
+ /**
40
+ * Month, which is the current month by default if not provided.
41
+ * @type {string || null}
42
+ */
43
+ this.Month = null;
44
+
45
+ }
46
+
47
+ /**
48
+ * @private
49
+ */
50
+ deserialize(params) {
51
+ if (!params) {
52
+ return;
53
+ }
54
+ this.ParentId = 'ParentId' in params ? params.ParentId : null;
55
+ this.Name = 'Name' in params ? params.Name : null;
56
+ this.Month = 'Month' in params ? params.Month : null;
57
+
58
+ }
59
+ }
60
+
19
61
  /**
20
62
  * DeleteAllocationTag request structure.
21
63
  * @class
@@ -286,6 +328,152 @@ Note: This field may return null, indicating that no valid values can be obtaine
286
328
  }
287
329
  }
288
330
 
331
+ /**
332
+ * ModifyAllocationRule request structure.
333
+ * @class
334
+ */
335
+ class ModifyAllocationRuleRequest extends AbstractModel {
336
+ constructor(){
337
+ super();
338
+
339
+ /**
340
+ * The edited sharing rule ID.
341
+ * @type {number || null}
342
+ */
343
+ this.RuleId = null;
344
+
345
+ /**
346
+ * Edited sharing rule name.
347
+ * @type {string || null}
348
+ */
349
+ this.Name = null;
350
+
351
+ /**
352
+ * Public sharing policy types, enumeration values are as follows: 1 - custom sharing proportion 2 - proportional allocation 3 - allocation by proportion.
353
+ * @type {number || null}
354
+ */
355
+ this.Type = null;
356
+
357
+ /**
358
+ * Edited share rules expression.
359
+ * @type {AllocationRuleExpression || null}
360
+ */
361
+ this.RuleDetail = null;
362
+
363
+ /**
364
+ * Edited sharing proportion expression.
365
+ * @type {Array.<AllocationRationExpression> || null}
366
+ */
367
+ this.RatioDetail = null;
368
+
369
+ /**
370
+ * Month, which is the current month by default if not provided.
371
+ * @type {string || null}
372
+ */
373
+ this.Month = null;
374
+
375
+ }
376
+
377
+ /**
378
+ * @private
379
+ */
380
+ deserialize(params) {
381
+ if (!params) {
382
+ return;
383
+ }
384
+ this.RuleId = 'RuleId' in params ? params.RuleId : null;
385
+ this.Name = 'Name' in params ? params.Name : null;
386
+ this.Type = 'Type' in params ? params.Type : null;
387
+
388
+ if (params.RuleDetail) {
389
+ let obj = new AllocationRuleExpression();
390
+ obj.deserialize(params.RuleDetail)
391
+ this.RuleDetail = obj;
392
+ }
393
+
394
+ if (params.RatioDetail) {
395
+ this.RatioDetail = new Array();
396
+ for (let z in params.RatioDetail) {
397
+ let obj = new AllocationRationExpression();
398
+ obj.deserialize(params.RatioDetail[z]);
399
+ this.RatioDetail.push(obj);
400
+ }
401
+ }
402
+ this.Month = 'Month' in params ? params.Month : null;
403
+
404
+ }
405
+ }
406
+
407
+ /**
408
+ * DeleteAllocationRule request structure.
409
+ * @class
410
+ */
411
+ class DeleteAllocationRuleRequest extends AbstractModel {
412
+ constructor(){
413
+ super();
414
+
415
+ /**
416
+ * The deleted sharing rule ID.
417
+ * @type {number || null}
418
+ */
419
+ this.RuleId = null;
420
+
421
+ /**
422
+ * Month, which is the current month by default if not provided.
423
+ * @type {string || null}
424
+ */
425
+ this.Month = null;
426
+
427
+ }
428
+
429
+ /**
430
+ * @private
431
+ */
432
+ deserialize(params) {
433
+ if (!params) {
434
+ return;
435
+ }
436
+ this.RuleId = 'RuleId' in params ? params.RuleId : null;
437
+ this.Month = 'Month' in params ? params.Month : null;
438
+
439
+ }
440
+ }
441
+
442
+ /**
443
+ * CreateAllocationRule response structure.
444
+ * @class
445
+ */
446
+ class CreateAllocationRuleResponse extends AbstractModel {
447
+ constructor(){
448
+ super();
449
+
450
+ /**
451
+ * Add new sharing rule ID.
452
+ * @type {number || null}
453
+ */
454
+ this.Id = null;
455
+
456
+ /**
457
+ * 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.
458
+ * @type {string || null}
459
+ */
460
+ this.RequestId = null;
461
+
462
+ }
463
+
464
+ /**
465
+ * @private
466
+ */
467
+ deserialize(params) {
468
+ if (!params) {
469
+ return;
470
+ }
471
+ this.Id = 'Id' in params ? params.Id : null;
472
+ this.RequestId = 'RequestId' in params ? params.RequestId : null;
473
+
474
+ }
475
+ }
476
+
289
477
  /**
290
478
  * Bill tag information.
291
479
  * @class
@@ -567,24 +755,42 @@ class DescribeCostSummaryByProductResponse extends AbstractModel {
567
755
  }
568
756
 
569
757
  /**
570
- * Product details
758
+ * DescribeAllocationTree response structure.
571
759
  * @class
572
760
  */
573
- class ProductInfo extends AbstractModel {
761
+ class DescribeAllocationTreeResponse extends AbstractModel {
574
762
  constructor(){
575
763
  super();
576
764
 
577
765
  /**
578
- * Product detail name identifier
766
+ * Cost allocation unit ID.
767
+ * @type {number || null}
768
+ */
769
+ this.Id = null;
770
+
771
+ /**
772
+ * Specifies the name of a cost allocation unit.
579
773
  * @type {string || null}
580
774
  */
581
775
  this.Name = null;
582
776
 
583
777
  /**
584
- * Product details
778
+ * Unique identifier of a cost allocation unit
585
779
  * @type {string || null}
586
780
  */
587
- this.Value = null;
781
+ this.TreeNodeUniqKey = null;
782
+
783
+ /**
784
+ * Specifies a subtree.
785
+ * @type {Array.<AllocationTree> || null}
786
+ */
787
+ this.Children = null;
788
+
789
+ /**
790
+ * 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.
791
+ * @type {string || null}
792
+ */
793
+ this.RequestId = null;
588
794
 
589
795
  }
590
796
 
@@ -595,8 +801,19 @@ class ProductInfo extends AbstractModel {
595
801
  if (!params) {
596
802
  return;
597
803
  }
804
+ this.Id = 'Id' in params ? params.Id : null;
598
805
  this.Name = 'Name' in params ? params.Name : null;
599
- this.Value = 'Value' in params ? params.Value : null;
806
+ this.TreeNodeUniqKey = 'TreeNodeUniqKey' in params ? params.TreeNodeUniqKey : null;
807
+
808
+ if (params.Children) {
809
+ this.Children = new Array();
810
+ for (let z in params.Children) {
811
+ let obj = new AllocationTree();
812
+ obj.deserialize(params.Children[z]);
813
+ this.Children.push(obj);
814
+ }
815
+ }
816
+ this.RequestId = 'RequestId' in params ? params.RequestId : null;
600
817
 
601
818
  }
602
819
  }
@@ -629,6 +846,63 @@ class DeleteAllocationTagResponse extends AbstractModel {
629
846
  }
630
847
  }
631
848
 
849
+ /**
850
+ * Cost allocation tree.
851
+ * @class
852
+ */
853
+ class AllocationTree extends AbstractModel {
854
+ constructor(){
855
+ super();
856
+
857
+ /**
858
+ * ID of a cost allocation unit.
859
+ * @type {number || null}
860
+ */
861
+ this.Id = null;
862
+
863
+ /**
864
+ * Cost allocation unit name.
865
+ * @type {string || null}
866
+ */
867
+ this.Name = null;
868
+
869
+ /**
870
+ * Unique identifier of a cost allocation unit
871
+ * @type {string || null}
872
+ */
873
+ this.TreeNodeUniqKey = null;
874
+
875
+ /**
876
+ * Subtree.
877
+ * @type {Array.<AllocationTree> || null}
878
+ */
879
+ this.Children = null;
880
+
881
+ }
882
+
883
+ /**
884
+ * @private
885
+ */
886
+ deserialize(params) {
887
+ if (!params) {
888
+ return;
889
+ }
890
+ this.Id = 'Id' in params ? params.Id : null;
891
+ this.Name = 'Name' in params ? params.Name : null;
892
+ this.TreeNodeUniqKey = 'TreeNodeUniqKey' in params ? params.TreeNodeUniqKey : null;
893
+
894
+ if (params.Children) {
895
+ this.Children = new Array();
896
+ for (let z in params.Children) {
897
+ let obj = new AllocationTree();
898
+ obj.deserialize(params.Children[z]);
899
+ this.Children.push(obj);
900
+ }
901
+ }
902
+
903
+ }
904
+ }
905
+
632
906
  /**
633
907
  * DescribeBillDetailForOrganization response structure.
634
908
  * @class
@@ -928,40 +1202,80 @@ Example value: 333.00000000.
928
1202
  }
929
1203
 
930
1204
  /**
931
- * Consumption details summarized by region
1205
+ * CreateAllocationRule request structure.
932
1206
  * @class
933
1207
  */
934
- class ConsumptionRegionSummaryDataItem extends AbstractModel {
1208
+ class CreateAllocationRuleRequest extends AbstractModel {
935
1209
  constructor(){
936
1210
  super();
937
1211
 
938
1212
  /**
939
- * Region ID
940
- * @type {string || null}
1213
+ * List of sharing rules.
1214
+ * @type {AllocationRulesSummary || null}
941
1215
  */
942
- this.RegionId = null;
1216
+ this.RuleList = null;
943
1217
 
944
1218
  /**
945
- * Region name
1219
+ * Month, the current month by default if not provided.
946
1220
  * @type {string || null}
947
1221
  */
948
- this.RegionName = null;
1222
+ this.Month = null;
949
1223
 
950
- /**
951
- * Discounted total price
952
- * @type {string || null}
953
- */
954
- this.RealTotalCost = null;
1224
+ }
955
1225
 
956
- /**
957
- * Trend
958
- * @type {ConsumptionSummaryTrend || null}
959
- */
960
- this.Trend = null;
1226
+ /**
1227
+ * @private
1228
+ */
1229
+ deserialize(params) {
1230
+ if (!params) {
1231
+ return;
1232
+ }
961
1233
 
962
- /**
963
- * Product consumption details
964
- * @type {Array.<ConsumptionBusinessSummaryDataItem> || null}
1234
+ if (params.RuleList) {
1235
+ let obj = new AllocationRulesSummary();
1236
+ obj.deserialize(params.RuleList)
1237
+ this.RuleList = obj;
1238
+ }
1239
+ this.Month = 'Month' in params ? params.Month : null;
1240
+
1241
+ }
1242
+ }
1243
+
1244
+ /**
1245
+ * Consumption details summarized by region
1246
+ * @class
1247
+ */
1248
+ class ConsumptionRegionSummaryDataItem extends AbstractModel {
1249
+ constructor(){
1250
+ super();
1251
+
1252
+ /**
1253
+ * Region ID
1254
+ * @type {string || null}
1255
+ */
1256
+ this.RegionId = null;
1257
+
1258
+ /**
1259
+ * Region name
1260
+ * @type {string || null}
1261
+ */
1262
+ this.RegionName = null;
1263
+
1264
+ /**
1265
+ * Discounted total price
1266
+ * @type {string || null}
1267
+ */
1268
+ this.RealTotalCost = null;
1269
+
1270
+ /**
1271
+ * Trend
1272
+ * @type {ConsumptionSummaryTrend || null}
1273
+ */
1274
+ this.Trend = null;
1275
+
1276
+ /**
1277
+ * Product consumption details
1278
+ * @type {Array.<ConsumptionBusinessSummaryDataItem> || null}
965
1279
  */
966
1280
  this.Business = null;
967
1281
 
@@ -1196,6 +1510,41 @@ class DescribeBillResourceSummaryResponse extends AbstractModel {
1196
1510
  }
1197
1511
  }
1198
1512
 
1513
+ /**
1514
+ * DescribeGatherRuleDetail request structure.
1515
+ * @class
1516
+ */
1517
+ class DescribeGatherRuleDetailRequest extends AbstractModel {
1518
+ constructor(){
1519
+ super();
1520
+
1521
+ /**
1522
+ * Specifies the ID of the queried collection rule.
1523
+ * @type {number || null}
1524
+ */
1525
+ this.Id = null;
1526
+
1527
+ /**
1528
+ * Month, the current month by default if not provided.
1529
+ * @type {string || null}
1530
+ */
1531
+ this.Month = null;
1532
+
1533
+ }
1534
+
1535
+ /**
1536
+ * @private
1537
+ */
1538
+ deserialize(params) {
1539
+ if (!params) {
1540
+ return;
1541
+ }
1542
+ this.Id = 'Id' in params ? params.Id : null;
1543
+ this.Month = 'Month' in params ? params.Month : null;
1544
+
1545
+ }
1546
+ }
1547
+
1199
1548
  /**
1200
1549
  * Objects of reseller bill details
1201
1550
  * @class
@@ -1545,518 +1894,578 @@ Example value: [].
1545
1894
  }
1546
1895
 
1547
1896
  /**
1548
- * Summary objects for a reseller bill
1897
+ * DescribeAllocationRuleDetail request structure.
1549
1898
  * @class
1550
1899
  */
1551
- class BillDistributionResourceSummary extends AbstractModel {
1900
+ class DescribeAllocationRuleDetailRequest extends AbstractModel {
1552
1901
  constructor(){
1553
1902
  super();
1554
1903
 
1555
1904
  /**
1556
- * Product name: The name of a Tencent Cloud product purchased by the user, such as CVM.
1557
- * @type {string || null}
1905
+ * The queried sharing rule ID.
1906
+ * @type {number || null}
1558
1907
  */
1559
- this.BusinessCodeName = null;
1908
+ this.RuleId = null;
1560
1909
 
1561
1910
  /**
1562
- * Subproduct name: The subcategory of a Tencent Cloud product purchased by the user, such as CVM - Standard S1.
1911
+ * Month, which is the current month by default if not provided.
1563
1912
  * @type {string || null}
1564
1913
  */
1565
- this.ProductCodeName = null;
1914
+ this.Month = null;
1566
1915
 
1567
- /**
1568
- * Billing mode: The billing mode, which can be monthly subscription or pay-as-you-go.
1569
- * @type {string || null}
1570
- */
1571
- this.PayModeName = null;
1916
+ }
1572
1917
 
1573
- /**
1574
- * Project Name: The project to which a resource belongs, which is user-designated. If a resource has not been assigned to a project, it will automatically belong to the default project.
1575
- * @type {string || null}
1576
- */
1577
- this.ProjectName = null;
1918
+ /**
1919
+ * @private
1920
+ */
1921
+ deserialize(params) {
1922
+ if (!params) {
1923
+ return;
1924
+ }
1925
+ this.RuleId = 'RuleId' in params ? params.RuleId : null;
1926
+ this.Month = 'Month' in params ? params.Month : null;
1578
1927
 
1579
- /**
1580
- * Region: The region of a resource, e.g. South China (Guangzhou).
1581
- * @type {string || null}
1582
- */
1583
- this.RegionName = null;
1928
+ }
1929
+ }
1584
1930
 
1585
- /**
1586
- * Availability zone: The availability zone of a resource, e.g. Guangzhou Zone 3.
1587
- * @type {string || null}
1588
- */
1589
- this.ZoneName = null;
1931
+ /**
1932
+ * DescribeAllocationUnitDetail response structure.
1933
+ * @class
1934
+ */
1935
+ class DescribeAllocationUnitDetailResponse extends AbstractModel {
1936
+ constructor(){
1937
+ super();
1590
1938
 
1591
1939
  /**
1592
- * Instance ID: The object ID of a billed resource, such as a CVM instance ID. This object ID may vary due to various forms and contents of resources in different products.
1593
- * @type {string || null}
1940
+ * ID of a cost allocation unit.
1941
+ * @type {number || null}
1594
1942
  */
1595
- this.ResourceId = null;
1943
+ this.Id = null;
1596
1944
 
1597
1945
  /**
1598
- * Instance name: The resource name set by the user in the console. If it is not set, it will be empty by default.
1946
+ * Associated UIN of the cost allocation unit.
1599
1947
  * @type {string || null}
1600
1948
  */
1601
- this.ResourceName = null;
1949
+ this.Uin = null;
1602
1950
 
1603
1951
  /**
1604
- * Transaction type, which can be monthly subscription purchase, monthly subscription renewal, pay-as-you-go deduction, etc.
1952
+ * Specifies the name of a cost allocation unit.
1605
1953
  * @type {string || null}
1606
1954
  */
1607
- this.ActionTypeName = null;
1955
+ this.Name = null;
1608
1956
 
1609
1957
  /**
1610
- * Order ID: The ID of a monthly subscription order.
1611
- * @type {string || null}
1958
+ * Cost allocation unit parent node ID.
1959
+ * @type {number || null}
1612
1960
  */
1613
- this.OrderId = null;
1961
+ this.ParentId = null;
1614
1962
 
1615
1963
  /**
1616
- * Deduction time: The settlement cost deduction time.
1964
+ * Source organization name.
1617
1965
  * @type {string || null}
1618
1966
  */
1619
- this.PayTime = null;
1967
+ this.SourceName = null;
1620
1968
 
1621
1969
  /**
1622
- * Usage start time: The time at which product or service usage starts.
1970
+ * Source organization ID.
1623
1971
  * @type {string || null}
1624
1972
  */
1625
- this.FeeBeginTime = null;
1973
+ this.SourceId = null;
1626
1974
 
1627
1975
  /**
1628
- * Usage end time: The time at which product or service usage ends.
1976
+ * Specifies remark description.
1629
1977
  * @type {string || null}
1630
1978
  */
1631
- this.FeeEndTime = null;
1979
+ this.Remark = null;
1632
1980
 
1633
1981
  /**
1634
- * Configuration description: The billable item names and usage of a resource, which are displayed on the resource bill only.
1982
+ * Cost allocation unit identifier.
1635
1983
  * @type {string || null}
1636
1984
  */
1637
- this.ConfigDesc = null;
1985
+ this.TreeNodeUniqKey = null;
1638
1986
 
1639
1987
  /**
1640
- * Extended Field 1: The extended attribute information of a product, which is displayed on the resource bill only.
1641
- * @type {string || null}
1988
+ * If a cost allocation unit is set with an collection rule, return the collection rule ID. if no collection rule is set, do not return.
1989
+ * @type {number || null}
1642
1990
  */
1643
- this.ExtendField1 = null;
1991
+ this.RuleId = null;
1644
1992
 
1645
1993
  /**
1646
- * Extended field 2: The extended attribute information of a product, which is displayed on the resource bill only.
1994
+ * 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.
1647
1995
  * @type {string || null}
1648
1996
  */
1649
- this.ExtendField2 = null;
1997
+ this.RequestId = null;
1650
1998
 
1651
- /**
1652
- * Original cost. The original cost of a component = Component price x Usage x Usage duration. If a customer has applied for a fixed preferential price or contract price or if a customer is in a refund scenario, this parameter will not be displayed by default.
1653
- * @type {string || null}
1654
- */
1655
- this.TotalCost = null;
1999
+ }
2000
+
2001
+ /**
2002
+ * @private
2003
+ */
2004
+ deserialize(params) {
2005
+ if (!params) {
2006
+ return;
2007
+ }
2008
+ this.Id = 'Id' in params ? params.Id : null;
2009
+ this.Uin = 'Uin' in params ? params.Uin : null;
2010
+ this.Name = 'Name' in params ? params.Name : null;
2011
+ this.ParentId = 'ParentId' in params ? params.ParentId : null;
2012
+ this.SourceName = 'SourceName' in params ? params.SourceName : null;
2013
+ this.SourceId = 'SourceId' in params ? params.SourceId : null;
2014
+ this.Remark = 'Remark' in params ? params.Remark : null;
2015
+ this.TreeNodeUniqKey = 'TreeNodeUniqKey' in params ? params.TreeNodeUniqKey : null;
2016
+ this.RuleId = 'RuleId' in params ? params.RuleId : null;
2017
+ this.RequestId = 'RequestId' in params ? params.RequestId : null;
2018
+
2019
+ }
2020
+ }
2021
+
2022
+ /**
2023
+ * DescribeBillSummaryByProduct request structure.
2024
+ * @class
2025
+ */
2026
+ class DescribeBillSummaryByProductRequest extends AbstractModel {
2027
+ constructor(){
2028
+ super();
1656
2029
 
1657
2030
  /**
1658
- * Discount multiplier: The discount multiplier that applies to the component. If a customer has applied for a fixed preferential price or contract price or if a customer is in a refund scenario, this parameter will not be displayed by default.
2031
+ * The value must be of the same month as `EndTime`. 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.
1659
2032
  * @type {string || null}
1660
2033
  */
1661
- this.Discount = null;
2034
+ this.BeginTime = null;
1662
2035
 
1663
2036
  /**
1664
- * Offer type.
2037
+ * The value must be of the same month as `BeginTime`. 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.
1665
2038
  * @type {string || null}
1666
2039
  */
1667
- this.ReduceType = null;
2040
+ this.EndTime = null;
1668
2041
 
1669
2042
  /**
1670
- * Total amount after discount.
2043
+ * Queries bill data user's UIN
1671
2044
  * @type {string || null}
1672
2045
  */
1673
- this.RealTotalCost = null;
2046
+ this.PayerUin = null;
1674
2047
 
1675
2048
  /**
1676
- * Voucher payment: The voucher deduction amount.
2049
+ * A bill type, which corresponds to a subtotal type of L0 bills.
2050
+ This parameter has become valid since v3.0 bills took effect in May 2021.
2051
+ Valid values:
2052
+ `consume`: consumption
2053
+ `refund`: refund
2054
+ `adjustment`: bill adjustment
1677
2055
  * @type {string || null}
1678
2056
  */
1679
- this.VoucherPayAmount = null;
2057
+ this.PayType = null;
2058
+
2059
+ }
2060
+
2061
+ /**
2062
+ * @private
2063
+ */
2064
+ deserialize(params) {
2065
+ if (!params) {
2066
+ return;
2067
+ }
2068
+ this.BeginTime = 'BeginTime' in params ? params.BeginTime : null;
2069
+ this.EndTime = 'EndTime' in params ? params.EndTime : null;
2070
+ this.PayerUin = 'PayerUin' in params ? params.PayerUin : null;
2071
+ this.PayType = 'PayType' in params ? params.PayType : null;
2072
+
2073
+ }
2074
+ }
2075
+
2076
+ /**
2077
+ * Specifies the ID and name of a cost allocation unit.
2078
+ * @class
2079
+ */
2080
+ class AllocationUnit extends AbstractModel {
2081
+ constructor(){
2082
+ super();
1680
2083
 
1681
2084
  /**
1682
- * Cash credit payment: The amount paid through the user's cash account.
1683
- * @type {string || null}
2085
+ * Cost allocation unit ID.
2086
+ * @type {number || null}
1684
2087
  */
1685
- this.CashPayAmount = null;
2088
+ this.NodeId = null;
1686
2089
 
1687
2090
  /**
1688
- * Free credit payment: The amount paid with the user's free credit.
2091
+ * Specifies the name of a cost allocation rule.
1689
2092
  * @type {string || null}
1690
2093
  */
1691
- this.IncentivePayAmount = null;
2094
+ this.TreeNodeUniqKeyName = null;
1692
2095
 
1693
- /**
1694
- * Commission credit payment: The amount paid with the user's commission credit.
1695
- Note: This field may return null, indicating that no valid values can be obtained.
1696
- * @type {string || null}
2096
+ }
2097
+
2098
+ /**
2099
+ * @private
2100
+ */
2101
+ deserialize(params) {
2102
+ if (!params) {
2103
+ return;
2104
+ }
2105
+ this.NodeId = 'NodeId' in params ? params.NodeId : null;
2106
+ this.TreeNodeUniqKeyName = 'TreeNodeUniqKeyName' in params ? params.TreeNodeUniqKeyName : null;
2107
+
2108
+ }
2109
+ }
2110
+
2111
+ /**
2112
+ * Expression for sharing proportion.
2113
+ * @class
2114
+ */
2115
+ class AllocationRationExpression extends AbstractModel {
2116
+ constructor(){
2117
+ super();
2118
+
2119
+ /**
2120
+ * Cost allocation unit ID that the sharing rule belongs to.
2121
+ * @type {number || null}
1697
2122
  */
1698
- this.TransferPayAmount = null;
2123
+ this.NodeId = null;
1699
2124
 
1700
2125
  /**
1701
- * Extended field 3: The extended attribute information of a product, which is displayed on the resource bill only.
1702
- * @type {string || null}
2126
+ * Sharing proportion occupied by allocation unit, pass 0 for allocation by proportion.
2127
+ * @type {number || null}
1703
2128
  */
1704
- this.ExtendField3 = null;
2129
+ this.Ratio = null;
2130
+
2131
+ }
2132
+
2133
+ /**
2134
+ * @private
2135
+ */
2136
+ deserialize(params) {
2137
+ if (!params) {
2138
+ return;
2139
+ }
2140
+ this.NodeId = 'NodeId' in params ? params.NodeId : null;
2141
+ this.Ratio = 'Ratio' in params ? params.Ratio : null;
2142
+
2143
+ }
2144
+ }
2145
+
2146
+ /**
2147
+ * DescribeVoucherUsageDetails response structure.
2148
+ * @class
2149
+ */
2150
+ class DescribeVoucherUsageDetailsResponse extends AbstractModel {
2151
+ constructor(){
2152
+ super();
1705
2153
 
1706
2154
  /**
1707
- * Extended field 4: The extended attribute information of a product, which is displayed on the resource bill only.
2155
+ * The total number of vouchers.
2156
+ * @type {number || null}
2157
+ */
2158
+ this.TotalCount = null;
2159
+
2160
+ /**
2161
+ * The total amount used. The value of this parameter is the total amount used (USD, rounded to 8 decimal places) multiplied by 100,000,000.
2162
+ * @type {number || null}
2163
+ */
2164
+ this.TotalUsedAmount = null;
2165
+
2166
+ /**
2167
+ * The usage details.
2168
+ Note: This field may return `null`, indicating that no valid value was found.
2169
+ * @type {Array.<UsageRecords> || null}
2170
+ */
2171
+ this.UsageRecords = null;
2172
+
2173
+ /**
2174
+ * 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.
1708
2175
  * @type {string || null}
1709
2176
  */
1710
- this.ExtendField4 = null;
2177
+ this.RequestId = null;
2178
+
2179
+ }
2180
+
2181
+ /**
2182
+ * @private
2183
+ */
2184
+ deserialize(params) {
2185
+ if (!params) {
2186
+ return;
2187
+ }
2188
+ this.TotalCount = 'TotalCount' in params ? params.TotalCount : null;
2189
+ this.TotalUsedAmount = 'TotalUsedAmount' in params ? params.TotalUsedAmount : null;
2190
+
2191
+ if (params.UsageRecords) {
2192
+ this.UsageRecords = new Array();
2193
+ for (let z in params.UsageRecords) {
2194
+ let obj = new UsageRecords();
2195
+ obj.deserialize(params.UsageRecords[z]);
2196
+ this.UsageRecords.push(obj);
2197
+ }
2198
+ }
2199
+ this.RequestId = 'RequestId' in params ? params.RequestId : null;
2200
+
2201
+ }
2202
+ }
2203
+
2204
+ /**
2205
+ * Consumption summary details
2206
+ * @class
2207
+ */
2208
+ class ConsumptionSummaryTotal extends AbstractModel {
2209
+ constructor(){
2210
+ super();
1711
2211
 
1712
2212
  /**
1713
- * Extended field 5: The extended attribute information of a product, which is displayed on the resource bill only.
2213
+ * Discounted total price
1714
2214
  * @type {string || null}
1715
2215
  */
1716
- this.ExtendField5 = null;
2216
+ this.RealTotalCost = null;
2217
+
2218
+ }
2219
+
2220
+ /**
2221
+ * @private
2222
+ */
2223
+ deserialize(params) {
2224
+ if (!params) {
2225
+ return;
2226
+ }
2227
+ this.RealTotalCost = 'RealTotalCost' in params ? params.RealTotalCost : null;
2228
+
2229
+ }
2230
+ }
2231
+
2232
+ /**
2233
+ * Summary objects for a reseller bill
2234
+ * @class
2235
+ */
2236
+ class BillDistributionResourceSummary extends AbstractModel {
2237
+ constructor(){
2238
+ super();
1717
2239
 
1718
2240
  /**
1719
- * Tag information.
1720
- Note: This field may return null, indicating that no valid values can be obtained.
1721
- * @type {Array.<BillTagInfo> || null}
2241
+ * Product name: The name of a Tencent Cloud product purchased by the user, such as CVM.
2242
+ * @type {string || null}
1722
2243
  */
1723
- this.Tags = null;
2244
+ this.BusinessCodeName = null;
1724
2245
 
1725
2246
  /**
1726
- * Owner account ID: The account ID of the actual resource user.
2247
+ * Subproduct name: The subcategory of a Tencent Cloud product purchased by the user, such as CVM - Standard S1.
1727
2248
  * @type {string || null}
1728
2249
  */
1729
- this.OwnerUin = null;
2250
+ this.ProductCodeName = null;
1730
2251
 
1731
2252
  /**
1732
- * Operator account ID: The account or role ID of the operator who purchases or activates a resource.
2253
+ * Billing mode: The billing mode, which can be monthly subscription or pay-as-you-go.
1733
2254
  * @type {string || null}
1734
2255
  */
1735
- this.OperateUin = null;
2256
+ this.PayModeName = null;
1736
2257
 
1737
2258
  /**
1738
- * Product code.
2259
+ * Project Name: The project to which a resource belongs, which is user-designated. If a resource has not been assigned to a project, it will automatically belong to the default project.
1739
2260
  * @type {string || null}
1740
2261
  */
1741
- this.BusinessCode = null;
2262
+ this.ProjectName = null;
1742
2263
 
1743
2264
  /**
1744
- * Subproduct code.
2265
+ * Region: The region of a resource, e.g. South China (Guangzhou).
1745
2266
  * @type {string || null}
1746
2267
  */
1747
- this.ProductCode = null;
2268
+ this.RegionName = null;
1748
2269
 
1749
2270
  /**
1750
- * Region ID.
1751
- * @type {number || null}
2271
+ * Availability zone: The availability zone of a resource, e.g. Guangzhou Zone 3.
2272
+ * @type {string || null}
1752
2273
  */
1753
- this.RegionId = null;
2274
+ this.ZoneName = null;
1754
2275
 
1755
2276
  /**
1756
- * Instance type: The instance type of a product or service purchased, which can be resource package, RI, SP, or spot instance. Other instance types are not displayed by default.
2277
+ * Instance ID: The object ID of a billed resource, such as a CVM instance ID. This object ID may vary due to various forms and contents of resources in different products.
1757
2278
  * @type {string || null}
1758
2279
  */
1759
- this.InstanceType = null;
2280
+ this.ResourceId = null;
1760
2281
 
1761
2282
  /**
1762
- * RI deduction (cost): The amount deducted from the original cost by RI.
2283
+ * Instance name: The resource name set by the user in the console. If it is not set, it will be empty by default.
1763
2284
  * @type {string || null}
1764
2285
  */
1765
- this.OriginalCostWithRI = null;
2286
+ this.ResourceName = null;
1766
2287
 
1767
2288
  /**
1768
- * Savings plan deduction (disused).
2289
+ * Transaction type, which can be monthly subscription purchase, monthly subscription renewal, pay-as-you-go deduction, etc.
1769
2290
  * @type {string || null}
1770
2291
  */
1771
- this.SPDeduction = null;
2292
+ this.ActionTypeName = null;
1772
2293
 
1773
2294
  /**
1774
- * SP deduction (cost): The amount of cost deducted by a savings plan based on the component's original cost. SP deduction (cost) = Cost deduction by SP / SP deduction rate
2295
+ * Order ID: The ID of a monthly subscription order.
1775
2296
  * @type {string || null}
1776
2297
  */
1777
- this.OriginalCostWithSP = null;
2298
+ this.OrderId = null;
1778
2299
 
1779
2300
  /**
1780
- * Billing monthNote: This field may return null, indicating that no valid values can be obtained.
2301
+ * Deduction time: The settlement cost deduction time.
1781
2302
  * @type {string || null}
1782
2303
  */
1783
- this.BillMonth = null;
2304
+ this.PayTime = null;
1784
2305
 
1785
- }
2306
+ /**
2307
+ * Usage start time: The time at which product or service usage starts.
2308
+ * @type {string || null}
2309
+ */
2310
+ this.FeeBeginTime = null;
1786
2311
 
1787
- /**
1788
- * @private
1789
- */
1790
- deserialize(params) {
1791
- if (!params) {
1792
- return;
1793
- }
1794
- this.BusinessCodeName = 'BusinessCodeName' in params ? params.BusinessCodeName : null;
1795
- this.ProductCodeName = 'ProductCodeName' in params ? params.ProductCodeName : null;
1796
- this.PayModeName = 'PayModeName' in params ? params.PayModeName : null;
1797
- this.ProjectName = 'ProjectName' in params ? params.ProjectName : null;
1798
- this.RegionName = 'RegionName' in params ? params.RegionName : null;
1799
- this.ZoneName = 'ZoneName' in params ? params.ZoneName : null;
1800
- this.ResourceId = 'ResourceId' in params ? params.ResourceId : null;
1801
- this.ResourceName = 'ResourceName' in params ? params.ResourceName : null;
1802
- this.ActionTypeName = 'ActionTypeName' in params ? params.ActionTypeName : null;
1803
- this.OrderId = 'OrderId' in params ? params.OrderId : null;
1804
- this.PayTime = 'PayTime' in params ? params.PayTime : null;
1805
- this.FeeBeginTime = 'FeeBeginTime' in params ? params.FeeBeginTime : null;
1806
- this.FeeEndTime = 'FeeEndTime' in params ? params.FeeEndTime : null;
1807
- this.ConfigDesc = 'ConfigDesc' in params ? params.ConfigDesc : null;
1808
- this.ExtendField1 = 'ExtendField1' in params ? params.ExtendField1 : null;
1809
- this.ExtendField2 = 'ExtendField2' in params ? params.ExtendField2 : null;
1810
- this.TotalCost = 'TotalCost' in params ? params.TotalCost : null;
1811
- this.Discount = 'Discount' in params ? params.Discount : null;
1812
- this.ReduceType = 'ReduceType' in params ? params.ReduceType : null;
1813
- this.RealTotalCost = 'RealTotalCost' in params ? params.RealTotalCost : null;
1814
- this.VoucherPayAmount = 'VoucherPayAmount' in params ? params.VoucherPayAmount : null;
1815
- this.CashPayAmount = 'CashPayAmount' in params ? params.CashPayAmount : null;
1816
- this.IncentivePayAmount = 'IncentivePayAmount' in params ? params.IncentivePayAmount : null;
1817
- this.TransferPayAmount = 'TransferPayAmount' in params ? params.TransferPayAmount : null;
1818
- this.ExtendField3 = 'ExtendField3' in params ? params.ExtendField3 : null;
1819
- this.ExtendField4 = 'ExtendField4' in params ? params.ExtendField4 : null;
1820
- this.ExtendField5 = 'ExtendField5' in params ? params.ExtendField5 : null;
2312
+ /**
2313
+ * Usage end time: The time at which product or service usage ends.
2314
+ * @type {string || null}
2315
+ */
2316
+ this.FeeEndTime = null;
1821
2317
 
1822
- if (params.Tags) {
1823
- this.Tags = new Array();
1824
- for (let z in params.Tags) {
1825
- let obj = new BillTagInfo();
1826
- obj.deserialize(params.Tags[z]);
1827
- this.Tags.push(obj);
1828
- }
1829
- }
1830
- this.OwnerUin = 'OwnerUin' in params ? params.OwnerUin : null;
1831
- this.OperateUin = 'OperateUin' in params ? params.OperateUin : null;
1832
- this.BusinessCode = 'BusinessCode' in params ? params.BusinessCode : null;
1833
- this.ProductCode = 'ProductCode' in params ? params.ProductCode : null;
1834
- this.RegionId = 'RegionId' in params ? params.RegionId : null;
1835
- this.InstanceType = 'InstanceType' in params ? params.InstanceType : null;
1836
- this.OriginalCostWithRI = 'OriginalCostWithRI' in params ? params.OriginalCostWithRI : null;
1837
- this.SPDeduction = 'SPDeduction' in params ? params.SPDeduction : null;
1838
- this.OriginalCostWithSP = 'OriginalCostWithSP' in params ? params.OriginalCostWithSP : null;
1839
- this.BillMonth = 'BillMonth' in params ? params.BillMonth : null;
2318
+ /**
2319
+ * Configuration description: The billable item names and usage of a resource, which are displayed on the resource bill only.
2320
+ * @type {string || null}
2321
+ */
2322
+ this.ConfigDesc = null;
1840
2323
 
1841
- }
1842
- }
2324
+ /**
2325
+ * Extended Field 1: The extended attribute information of a product, which is displayed on the resource bill only.
2326
+ * @type {string || null}
2327
+ */
2328
+ this.ExtendField1 = null;
1843
2329
 
1844
- /**
1845
- * DescribeAllocationUnitDetail response structure.
1846
- * @class
1847
- */
1848
- class DescribeAllocationUnitDetailResponse extends AbstractModel {
1849
- constructor(){
1850
- super();
2330
+ /**
2331
+ * Extended field 2: The extended attribute information of a product, which is displayed on the resource bill only.
2332
+ * @type {string || null}
2333
+ */
2334
+ this.ExtendField2 = null;
1851
2335
 
1852
2336
  /**
1853
- * ID of a cost allocation unit.
1854
- * @type {number || null}
2337
+ * Original cost. The original cost of a component = Component price x Usage x Usage duration. If a customer has applied for a fixed preferential price or contract price or if a customer is in a refund scenario, this parameter will not be displayed by default.
2338
+ * @type {string || null}
1855
2339
  */
1856
- this.Id = null;
2340
+ this.TotalCost = null;
1857
2341
 
1858
2342
  /**
1859
- * Associated UIN of the cost allocation unit.
2343
+ * Discount multiplier: The discount multiplier that applies to the component. If a customer has applied for a fixed preferential price or contract price or if a customer is in a refund scenario, this parameter will not be displayed by default.
1860
2344
  * @type {string || null}
1861
2345
  */
1862
- this.Uin = null;
2346
+ this.Discount = null;
1863
2347
 
1864
2348
  /**
1865
- * Specifies the name of a cost allocation unit.
2349
+ * Offer type.
1866
2350
  * @type {string || null}
1867
2351
  */
1868
- this.Name = null;
2352
+ this.ReduceType = null;
1869
2353
 
1870
2354
  /**
1871
- * Cost allocation unit parent node ID.
1872
- * @type {number || null}
2355
+ * Total amount after discount.
2356
+ * @type {string || null}
1873
2357
  */
1874
- this.ParentId = null;
2358
+ this.RealTotalCost = null;
1875
2359
 
1876
2360
  /**
1877
- * Source organization name.
2361
+ * Voucher payment: The voucher deduction amount.
1878
2362
  * @type {string || null}
1879
2363
  */
1880
- this.SourceName = null;
2364
+ this.VoucherPayAmount = null;
1881
2365
 
1882
2366
  /**
1883
- * Source organization ID.
2367
+ * Cash credit payment: The amount paid through the user's cash account.
1884
2368
  * @type {string || null}
1885
2369
  */
1886
- this.SourceId = null;
2370
+ this.CashPayAmount = null;
1887
2371
 
1888
2372
  /**
1889
- * Specifies remark description.
2373
+ * Free credit payment: The amount paid with the user's free credit.
1890
2374
  * @type {string || null}
1891
2375
  */
1892
- this.Remark = null;
2376
+ this.IncentivePayAmount = null;
1893
2377
 
1894
2378
  /**
1895
- * Cost allocation unit identifier.
2379
+ * Commission credit payment: The amount paid with the user's commission credit.
2380
+ Note: This field may return null, indicating that no valid values can be obtained.
1896
2381
  * @type {string || null}
1897
2382
  */
1898
- this.TreeNodeUniqKey = null;
2383
+ this.TransferPayAmount = null;
1899
2384
 
1900
2385
  /**
1901
- * If a cost allocation unit is set with an collection rule, return the collection rule ID. if no collection rule is set, do not return.
1902
- * @type {number || null}
2386
+ * Extended field 3: The extended attribute information of a product, which is displayed on the resource bill only.
2387
+ * @type {string || null}
1903
2388
  */
1904
- this.RuleId = null;
2389
+ this.ExtendField3 = null;
1905
2390
 
1906
2391
  /**
1907
- * 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.
2392
+ * Extended field 4: The extended attribute information of a product, which is displayed on the resource bill only.
1908
2393
  * @type {string || null}
1909
2394
  */
1910
- this.RequestId = null;
1911
-
1912
- }
1913
-
1914
- /**
1915
- * @private
1916
- */
1917
- deserialize(params) {
1918
- if (!params) {
1919
- return;
1920
- }
1921
- this.Id = 'Id' in params ? params.Id : null;
1922
- this.Uin = 'Uin' in params ? params.Uin : null;
1923
- this.Name = 'Name' in params ? params.Name : null;
1924
- this.ParentId = 'ParentId' in params ? params.ParentId : null;
1925
- this.SourceName = 'SourceName' in params ? params.SourceName : null;
1926
- this.SourceId = 'SourceId' in params ? params.SourceId : null;
1927
- this.Remark = 'Remark' in params ? params.Remark : null;
1928
- this.TreeNodeUniqKey = 'TreeNodeUniqKey' in params ? params.TreeNodeUniqKey : null;
1929
- this.RuleId = 'RuleId' in params ? params.RuleId : null;
1930
- this.RequestId = 'RequestId' in params ? params.RequestId : null;
2395
+ this.ExtendField4 = null;
1931
2396
 
1932
- }
1933
- }
2397
+ /**
2398
+ * Extended field 5: The extended attribute information of a product, which is displayed on the resource bill only.
2399
+ * @type {string || null}
2400
+ */
2401
+ this.ExtendField5 = null;
1934
2402
 
1935
- /**
1936
- * DescribeBillSummaryByProduct request structure.
1937
- * @class
1938
- */
1939
- class DescribeBillSummaryByProductRequest extends AbstractModel {
1940
- constructor(){
1941
- super();
2403
+ /**
2404
+ * Tag information.
2405
+ Note: This field may return null, indicating that no valid values can be obtained.
2406
+ * @type {Array.<BillTagInfo> || null}
2407
+ */
2408
+ this.Tags = null;
1942
2409
 
1943
2410
  /**
1944
- * The value must be of the same month as `EndTime`. 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.
2411
+ * Owner account ID: The account ID of the actual resource user.
1945
2412
  * @type {string || null}
1946
2413
  */
1947
- this.BeginTime = null;
2414
+ this.OwnerUin = null;
1948
2415
 
1949
2416
  /**
1950
- * The value must be of the same month as `BeginTime`. 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.
2417
+ * Operator account ID: The account or role ID of the operator who purchases or activates a resource.
1951
2418
  * @type {string || null}
1952
2419
  */
1953
- this.EndTime = null;
2420
+ this.OperateUin = null;
1954
2421
 
1955
2422
  /**
1956
- * Queries bill data user's UIN
2423
+ * Product code.
1957
2424
  * @type {string || null}
1958
2425
  */
1959
- this.PayerUin = null;
2426
+ this.BusinessCode = null;
1960
2427
 
1961
2428
  /**
1962
- * A bill type, which corresponds to a subtotal type of L0 bills.
1963
- This parameter has become valid since v3.0 bills took effect in May 2021.
1964
- Valid values:
1965
- `consume`: consumption
1966
- `refund`: refund
1967
- `adjustment`: bill adjustment
2429
+ * Subproduct code.
1968
2430
  * @type {string || null}
1969
2431
  */
1970
- this.PayType = null;
1971
-
1972
- }
1973
-
1974
- /**
1975
- * @private
1976
- */
1977
- deserialize(params) {
1978
- if (!params) {
1979
- return;
1980
- }
1981
- this.BeginTime = 'BeginTime' in params ? params.BeginTime : null;
1982
- this.EndTime = 'EndTime' in params ? params.EndTime : null;
1983
- this.PayerUin = 'PayerUin' in params ? params.PayerUin : null;
1984
- this.PayType = 'PayType' in params ? params.PayType : null;
1985
-
1986
- }
1987
- }
1988
-
1989
- /**
1990
- * DescribeVoucherUsageDetails response structure.
1991
- * @class
1992
- */
1993
- class DescribeVoucherUsageDetailsResponse extends AbstractModel {
1994
- constructor(){
1995
- super();
2432
+ this.ProductCode = null;
1996
2433
 
1997
2434
  /**
1998
- * The total number of vouchers.
2435
+ * Region ID.
1999
2436
  * @type {number || null}
2000
2437
  */
2001
- this.TotalCount = null;
2438
+ this.RegionId = null;
2002
2439
 
2003
2440
  /**
2004
- * The total amount used. The value of this parameter is the total amount used (USD, rounded to 8 decimal places) multiplied by 100,000,000.
2005
- * @type {number || null}
2441
+ * Instance type: The instance type of a product or service purchased, which can be resource package, RI, SP, or spot instance. Other instance types are not displayed by default.
2442
+ * @type {string || null}
2006
2443
  */
2007
- this.TotalUsedAmount = null;
2444
+ this.InstanceType = null;
2008
2445
 
2009
2446
  /**
2010
- * The usage details.
2011
- Note: This field may return `null`, indicating that no valid value was found.
2012
- * @type {Array.<UsageRecords> || null}
2447
+ * RI deduction (cost): The amount deducted from the original cost by RI.
2448
+ * @type {string || null}
2013
2449
  */
2014
- this.UsageRecords = null;
2450
+ this.OriginalCostWithRI = null;
2015
2451
 
2016
2452
  /**
2017
- * 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.
2453
+ * Savings plan deduction (disused).
2018
2454
  * @type {string || null}
2019
2455
  */
2020
- this.RequestId = null;
2021
-
2022
- }
2023
-
2024
- /**
2025
- * @private
2026
- */
2027
- deserialize(params) {
2028
- if (!params) {
2029
- return;
2030
- }
2031
- this.TotalCount = 'TotalCount' in params ? params.TotalCount : null;
2032
- this.TotalUsedAmount = 'TotalUsedAmount' in params ? params.TotalUsedAmount : null;
2033
-
2034
- if (params.UsageRecords) {
2035
- this.UsageRecords = new Array();
2036
- for (let z in params.UsageRecords) {
2037
- let obj = new UsageRecords();
2038
- obj.deserialize(params.UsageRecords[z]);
2039
- this.UsageRecords.push(obj);
2040
- }
2041
- }
2042
- this.RequestId = 'RequestId' in params ? params.RequestId : null;
2043
-
2044
- }
2045
- }
2456
+ this.SPDeduction = null;
2046
2457
 
2047
- /**
2048
- * Consumption summary details
2049
- * @class
2050
- */
2051
- class ConsumptionSummaryTotal extends AbstractModel {
2052
- constructor(){
2053
- super();
2458
+ /**
2459
+ * SP deduction (cost): The amount of cost deducted by a savings plan based on the component's original cost. SP deduction (cost) = Cost deduction by SP / SP deduction rate
2460
+ * @type {string || null}
2461
+ */
2462
+ this.OriginalCostWithSP = null;
2054
2463
 
2055
2464
  /**
2056
- * Discounted total price
2465
+ * Billing monthNote: This field may return null, indicating that no valid values can be obtained.
2057
2466
  * @type {string || null}
2058
2467
  */
2059
- this.RealTotalCost = null;
2468
+ this.BillMonth = null;
2060
2469
 
2061
2470
  }
2062
2471
 
@@ -2067,7 +2476,52 @@ class ConsumptionSummaryTotal extends AbstractModel {
2067
2476
  if (!params) {
2068
2477
  return;
2069
2478
  }
2479
+ this.BusinessCodeName = 'BusinessCodeName' in params ? params.BusinessCodeName : null;
2480
+ this.ProductCodeName = 'ProductCodeName' in params ? params.ProductCodeName : null;
2481
+ this.PayModeName = 'PayModeName' in params ? params.PayModeName : null;
2482
+ this.ProjectName = 'ProjectName' in params ? params.ProjectName : null;
2483
+ this.RegionName = 'RegionName' in params ? params.RegionName : null;
2484
+ this.ZoneName = 'ZoneName' in params ? params.ZoneName : null;
2485
+ this.ResourceId = 'ResourceId' in params ? params.ResourceId : null;
2486
+ this.ResourceName = 'ResourceName' in params ? params.ResourceName : null;
2487
+ this.ActionTypeName = 'ActionTypeName' in params ? params.ActionTypeName : null;
2488
+ this.OrderId = 'OrderId' in params ? params.OrderId : null;
2489
+ this.PayTime = 'PayTime' in params ? params.PayTime : null;
2490
+ this.FeeBeginTime = 'FeeBeginTime' in params ? params.FeeBeginTime : null;
2491
+ this.FeeEndTime = 'FeeEndTime' in params ? params.FeeEndTime : null;
2492
+ this.ConfigDesc = 'ConfigDesc' in params ? params.ConfigDesc : null;
2493
+ this.ExtendField1 = 'ExtendField1' in params ? params.ExtendField1 : null;
2494
+ this.ExtendField2 = 'ExtendField2' in params ? params.ExtendField2 : null;
2495
+ this.TotalCost = 'TotalCost' in params ? params.TotalCost : null;
2496
+ this.Discount = 'Discount' in params ? params.Discount : null;
2497
+ this.ReduceType = 'ReduceType' in params ? params.ReduceType : null;
2070
2498
  this.RealTotalCost = 'RealTotalCost' in params ? params.RealTotalCost : null;
2499
+ this.VoucherPayAmount = 'VoucherPayAmount' in params ? params.VoucherPayAmount : null;
2500
+ this.CashPayAmount = 'CashPayAmount' in params ? params.CashPayAmount : null;
2501
+ this.IncentivePayAmount = 'IncentivePayAmount' in params ? params.IncentivePayAmount : null;
2502
+ this.TransferPayAmount = 'TransferPayAmount' in params ? params.TransferPayAmount : null;
2503
+ this.ExtendField3 = 'ExtendField3' in params ? params.ExtendField3 : null;
2504
+ this.ExtendField4 = 'ExtendField4' in params ? params.ExtendField4 : null;
2505
+ this.ExtendField5 = 'ExtendField5' in params ? params.ExtendField5 : null;
2506
+
2507
+ if (params.Tags) {
2508
+ this.Tags = new Array();
2509
+ for (let z in params.Tags) {
2510
+ let obj = new BillTagInfo();
2511
+ obj.deserialize(params.Tags[z]);
2512
+ this.Tags.push(obj);
2513
+ }
2514
+ }
2515
+ this.OwnerUin = 'OwnerUin' in params ? params.OwnerUin : null;
2516
+ this.OperateUin = 'OperateUin' in params ? params.OperateUin : null;
2517
+ this.BusinessCode = 'BusinessCode' in params ? params.BusinessCode : null;
2518
+ this.ProductCode = 'ProductCode' in params ? params.ProductCode : null;
2519
+ this.RegionId = 'RegionId' in params ? params.RegionId : null;
2520
+ this.InstanceType = 'InstanceType' in params ? params.InstanceType : null;
2521
+ this.OriginalCostWithRI = 'OriginalCostWithRI' in params ? params.OriginalCostWithRI : null;
2522
+ this.SPDeduction = 'SPDeduction' in params ? params.SPDeduction : null;
2523
+ this.OriginalCostWithSP = 'OriginalCostWithSP' in params ? params.OriginalCostWithSP : null;
2524
+ this.BillMonth = 'BillMonth' in params ? params.BillMonth : null;
2071
2525
 
2072
2526
  }
2073
2527
  }
@@ -2291,41 +2745,124 @@ class DescribeCostSummaryByProjectResponse extends AbstractModel {
2291
2745
  this.Total = obj;
2292
2746
  }
2293
2747
 
2294
- if (params.Data) {
2295
- this.Data = new Array();
2296
- for (let z in params.Data) {
2297
- let obj = new ConsumptionProjectSummaryDataItem();
2298
- obj.deserialize(params.Data[z]);
2299
- this.Data.push(obj);
2300
- }
2748
+ if (params.Data) {
2749
+ this.Data = new Array();
2750
+ for (let z in params.Data) {
2751
+ let obj = new ConsumptionProjectSummaryDataItem();
2752
+ obj.deserialize(params.Data[z]);
2753
+ this.Data.push(obj);
2754
+ }
2755
+ }
2756
+ this.RecordNum = 'RecordNum' in params ? params.RecordNum : null;
2757
+ this.RequestId = 'RequestId' in params ? params.RequestId : null;
2758
+
2759
+ }
2760
+ }
2761
+
2762
+ /**
2763
+ * Cost analysis project return complex type
2764
+ * @class
2765
+ */
2766
+ class AnalyseProjectDetail extends AbstractModel {
2767
+ constructor(){
2768
+ super();
2769
+
2770
+ /**
2771
+ * Project ID
2772
+ Note: This field may return null, indicating that no valid values can be obtained.
2773
+ * @type {string || null}
2774
+ */
2775
+ this.ProjectId = null;
2776
+
2777
+ /**
2778
+ * Default projectNote: This field may return null, indicating that no valid values can be obtained.
2779
+ * @type {string || null}
2780
+ */
2781
+ this.ProjectName = null;
2782
+
2783
+ }
2784
+
2785
+ /**
2786
+ * @private
2787
+ */
2788
+ deserialize(params) {
2789
+ if (!params) {
2790
+ return;
2301
2791
  }
2302
- this.RecordNum = 'RecordNum' in params ? params.RecordNum : null;
2303
- this.RequestId = 'RequestId' in params ? params.RequestId : null;
2792
+ this.ProjectId = 'ProjectId' in params ? params.ProjectId : null;
2793
+ this.ProjectName = 'ProjectName' in params ? params.ProjectName : null;
2304
2794
 
2305
2795
  }
2306
2796
  }
2307
2797
 
2308
2798
  /**
2309
- * Cost analysis project return complex type
2799
+ * Detailed summary of purchases by project
2310
2800
  * @class
2311
2801
  */
2312
- class AnalyseProjectDetail extends AbstractModel {
2802
+ class ProjectSummaryOverviewItem extends AbstractModel {
2313
2803
  constructor(){
2314
2804
  super();
2315
2805
 
2316
2806
  /**
2317
2807
  * Project ID
2318
- Note: This field may return null, indicating that no valid values can be obtained.
2319
2808
  * @type {string || null}
2320
2809
  */
2321
2810
  this.ProjectId = null;
2322
2811
 
2323
2812
  /**
2324
- * Default projectNote: This field may return null, indicating that no valid values can be obtained.
2813
+ * Project name: The project to which a resource belongs, which is user-designated. If a resource has not been assigned to a project, it will automatically belong to the default project.
2325
2814
  * @type {string || null}
2326
2815
  */
2327
2816
  this.ProjectName = null;
2328
2817
 
2818
+ /**
2819
+ * Cost ratio, to two decimal points
2820
+ * @type {string || null}
2821
+ */
2822
+ this.RealTotalCostRatio = null;
2823
+
2824
+ /**
2825
+ * Total amount after discount
2826
+ * @type {string || null}
2827
+ */
2828
+ this.RealTotalCost = null;
2829
+
2830
+ /**
2831
+ * Cash credit: The amount paid from the user’s cash account
2832
+ * @type {string || null}
2833
+ */
2834
+ this.CashPayAmount = null;
2835
+
2836
+ /**
2837
+ * Free credit: The amount paid with the user’s free credit
2838
+ * @type {string || null}
2839
+ */
2840
+ this.IncentivePayAmount = null;
2841
+
2842
+ /**
2843
+ * Voucher payment: The voucher deduction amount
2844
+ * @type {string || null}
2845
+ */
2846
+ this.VoucherPayAmount = null;
2847
+
2848
+ /**
2849
+ * Commission credit: The amount paid with the user’s commission credit.
2850
+ * @type {string || null}
2851
+ */
2852
+ this.TransferPayAmount = null;
2853
+
2854
+ /**
2855
+ * Billing month, e.g. `2019-08`
2856
+ * @type {string || null}
2857
+ */
2858
+ this.BillMonth = null;
2859
+
2860
+ /**
2861
+ * The original cost in USD. This parameter has become valid since v3.0 bills took effect in May 2021, and before that `-` was returned for this parameter. If a customer uses a contract price different from the published price, `-` will also be returned for this parameter.
2862
+ * @type {string || null}
2863
+ */
2864
+ this.TotalCost = null;
2865
+
2329
2866
  }
2330
2867
 
2331
2868
  /**
@@ -2337,6 +2874,14 @@ Note: This field may return null, indicating that no valid values can be obtaine
2337
2874
  }
2338
2875
  this.ProjectId = 'ProjectId' in params ? params.ProjectId : null;
2339
2876
  this.ProjectName = 'ProjectName' in params ? params.ProjectName : null;
2877
+ this.RealTotalCostRatio = 'RealTotalCostRatio' in params ? params.RealTotalCostRatio : null;
2878
+ this.RealTotalCost = 'RealTotalCost' in params ? params.RealTotalCost : null;
2879
+ this.CashPayAmount = 'CashPayAmount' in params ? params.CashPayAmount : null;
2880
+ this.IncentivePayAmount = 'IncentivePayAmount' in params ? params.IncentivePayAmount : null;
2881
+ this.VoucherPayAmount = 'VoucherPayAmount' in params ? params.VoucherPayAmount : null;
2882
+ this.TransferPayAmount = 'TransferPayAmount' in params ? params.TransferPayAmount : null;
2883
+ this.BillMonth = 'BillMonth' in params ? params.BillMonth : null;
2884
+ this.TotalCost = 'TotalCost' in params ? params.TotalCost : null;
2340
2885
 
2341
2886
  }
2342
2887
  }
@@ -2405,6 +2950,53 @@ Note: this field may return `null`, indicating that no valid values can be obtai
2405
2950
  }
2406
2951
  }
2407
2952
 
2953
+ /**
2954
+ * ModifyGatherRule request structure.
2955
+ * @class
2956
+ */
2957
+ class ModifyGatherRuleRequest extends AbstractModel {
2958
+ constructor(){
2959
+ super();
2960
+
2961
+ /**
2962
+ * Edit collection rule ID.
2963
+ * @type {number || null}
2964
+ */
2965
+ this.Id = null;
2966
+
2967
+ /**
2968
+ * Rule detail of the edited collection rule.
2969
+ * @type {AllocationRuleExpression || null}
2970
+ */
2971
+ this.RuleDetail = null;
2972
+
2973
+ /**
2974
+ * Month, which is the current month by default if not provided.
2975
+ * @type {string || null}
2976
+ */
2977
+ this.Month = null;
2978
+
2979
+ }
2980
+
2981
+ /**
2982
+ * @private
2983
+ */
2984
+ deserialize(params) {
2985
+ if (!params) {
2986
+ return;
2987
+ }
2988
+ this.Id = 'Id' in params ? params.Id : null;
2989
+
2990
+ if (params.RuleDetail) {
2991
+ let obj = new AllocationRuleExpression();
2992
+ obj.deserialize(params.RuleDetail)
2993
+ this.RuleDetail = obj;
2994
+ }
2995
+ this.Month = 'Month' in params ? params.Month : null;
2996
+
2997
+ }
2998
+ }
2999
+
2408
3000
  /**
2409
3001
  * DescribeBillSummaryByPayMode response structure.
2410
3002
  * @class
@@ -2563,66 +3155,65 @@ class AnalyseDetail extends AbstractModel {
2563
3155
  }
2564
3156
 
2565
3157
  /**
2566
- * Detailed summary of costs by multiple dimensions
3158
+ * DeleteGatherRule request structure.
2567
3159
  * @class
2568
3160
  */
2569
- class SummaryDetail extends AbstractModel {
3161
+ class DeleteGatherRuleRequest extends AbstractModel {
2570
3162
  constructor(){
2571
3163
  super();
2572
3164
 
2573
3165
  /**
2574
- * Bill dimension code. Note: This field may return null, indicating that no valid values can be obtained.
2575
- * @type {string || null}
3166
+ * The deleted collection rule ID.
3167
+ * @type {number || null}
2576
3168
  */
2577
- this.GroupKey = null;
3169
+ this.RuleId = null;
2578
3170
 
2579
3171
  /**
2580
- * Bill dimension value. Note: This field may return null, indicating that no valid values can be obtained.
3172
+ * Month, which is the current month by default if not provided.
2581
3173
  * @type {string || null}
2582
3174
  */
2583
- this.GroupValue = null;
3175
+ this.Month = null;
2584
3176
 
2585
- /**
2586
- * Original cost in USD. This parameter has become valid since Bill 3.0 took effect in May 2021, and before that `-` was returned for this parameter. If a customer has applied for a contract price different from the prices listed on the official website, `-` will also be returned for this parameter.
2587
- * @type {string || null}
2588
- */
2589
- this.TotalCost = null;
3177
+ }
2590
3178
 
2591
- /**
2592
- * Total amount after discount
2593
- * @type {string || null}
2594
- */
2595
- this.RealTotalCost = null;
3179
+ /**
3180
+ * @private
3181
+ */
3182
+ deserialize(params) {
3183
+ if (!params) {
3184
+ return;
3185
+ }
3186
+ this.RuleId = 'RuleId' in params ? params.RuleId : null;
3187
+ this.Month = 'Month' in params ? params.Month : null;
2596
3188
 
2597
- /**
2598
- * Cash credit: The amount paid from the user’s cash account
2599
- * @type {string || null}
2600
- */
2601
- this.CashPayAmount = null;
3189
+ }
3190
+ }
2602
3191
 
2603
- /**
2604
- * Free credit: The amount paid with the user’s free credit
2605
- * @type {string || null}
2606
- */
2607
- this.IncentivePayAmount = null;
3192
+ /**
3193
+ * DescribeAllocationRuleSummary response structure.
3194
+ * @class
3195
+ */
3196
+ class DescribeAllocationRuleSummaryResponse extends AbstractModel {
3197
+ constructor(){
3198
+ super();
2608
3199
 
2609
3200
  /**
2610
- * Voucher payment: The voucher deduction amount
2611
- * @type {string || null}
3201
+ * Sharing rule expression.
3202
+ * @type {Array.<AllocationRuleOverview> || null}
2612
3203
  */
2613
- this.VoucherPayAmount = null;
3204
+ this.RuleList = null;
2614
3205
 
2615
3206
  /**
2616
- * Commission credit: The amount paid with the user’s commission credit. Note: This field may return null, indicating that no valid values can be obtained.
2617
- * @type {string || null}
3207
+ * Total number of rules.
3208
+ * @type {number || null}
2618
3209
  */
2619
- this.TransferPayAmount = null;
3210
+ this.Total = null;
2620
3211
 
2621
3212
  /**
2622
- * Detailed summary of products. Note: This field may return null, indicating that no valid values can be obtained.
2623
- * @type {Array.<BusinessSummaryInfo> || null}
3213
+ * 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.
3214
+ * @type {string || null}
2624
3215
  */
2625
- this.Business = null;
3216
+ this.RequestId = null;
2626
3217
 
2627
3218
  }
2628
3219
 
@@ -2633,23 +3224,17 @@ class SummaryDetail extends AbstractModel {
2633
3224
  if (!params) {
2634
3225
  return;
2635
3226
  }
2636
- this.GroupKey = 'GroupKey' in params ? params.GroupKey : null;
2637
- this.GroupValue = 'GroupValue' in params ? params.GroupValue : null;
2638
- this.TotalCost = 'TotalCost' in params ? params.TotalCost : null;
2639
- this.RealTotalCost = 'RealTotalCost' in params ? params.RealTotalCost : null;
2640
- this.CashPayAmount = 'CashPayAmount' in params ? params.CashPayAmount : null;
2641
- this.IncentivePayAmount = 'IncentivePayAmount' in params ? params.IncentivePayAmount : null;
2642
- this.VoucherPayAmount = 'VoucherPayAmount' in params ? params.VoucherPayAmount : null;
2643
- this.TransferPayAmount = 'TransferPayAmount' in params ? params.TransferPayAmount : null;
2644
3227
 
2645
- if (params.Business) {
2646
- this.Business = new Array();
2647
- for (let z in params.Business) {
2648
- let obj = new BusinessSummaryInfo();
2649
- obj.deserialize(params.Business[z]);
2650
- this.Business.push(obj);
3228
+ if (params.RuleList) {
3229
+ this.RuleList = new Array();
3230
+ for (let z in params.RuleList) {
3231
+ let obj = new AllocationRuleOverview();
3232
+ obj.deserialize(params.RuleList[z]);
3233
+ this.RuleList.push(obj);
2651
3234
  }
2652
3235
  }
3236
+ this.Total = 'Total' in params ? params.Total : null;
3237
+ this.RequestId = 'RequestId' in params ? params.RequestId : null;
2653
3238
 
2654
3239
  }
2655
3240
  }
@@ -2669,10 +3254,79 @@ class AnalyseAmountDetail extends AbstractModel {
2669
3254
  this.Key = null;
2670
3255
 
2671
3256
  /**
2672
- * Whether to displayNote: This field may return null, indicating that no valid values can be obtained.
2673
- * @type {number || null}
3257
+ * Whether to displayNote: This field may return null, indicating that no valid values can be obtained.
3258
+ * @type {number || null}
3259
+ */
3260
+ this.Display = null;
3261
+
3262
+ }
3263
+
3264
+ /**
3265
+ * @private
3266
+ */
3267
+ deserialize(params) {
3268
+ if (!params) {
3269
+ return;
3270
+ }
3271
+ this.Key = 'Key' in params ? params.Key : null;
3272
+ this.Display = 'Display' in params ? params.Display : null;
3273
+
3274
+ }
3275
+ }
3276
+
3277
+ /**
3278
+ * ModifyGatherRule response structure.
3279
+ * @class
3280
+ */
3281
+ class ModifyGatherRuleResponse extends AbstractModel {
3282
+ constructor(){
3283
+ super();
3284
+
3285
+ /**
3286
+ * 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.
3287
+ * @type {string || null}
3288
+ */
3289
+ this.RequestId = null;
3290
+
3291
+ }
3292
+
3293
+ /**
3294
+ * @private
3295
+ */
3296
+ deserialize(params) {
3297
+ if (!params) {
3298
+ return;
3299
+ }
3300
+ this.RequestId = 'RequestId' in params ? params.RequestId : null;
3301
+
3302
+ }
3303
+ }
3304
+
3305
+ /**
3306
+ * CreateGatherRule request structure.
3307
+ * @class
3308
+ */
3309
+ class CreateGatherRuleRequest extends AbstractModel {
3310
+ constructor(){
3311
+ super();
3312
+
3313
+ /**
3314
+ * Cost allocation unit ID that the rule belongs to.
3315
+ * @type {number || null}
3316
+ */
3317
+ this.Id = null;
3318
+
3319
+ /**
3320
+ * Collection rule details.
3321
+ * @type {GatherRuleSummary || null}
3322
+ */
3323
+ this.RuleList = null;
3324
+
3325
+ /**
3326
+ * Month, which is the current month by default if not provided.
3327
+ * @type {string || null}
2674
3328
  */
2675
- this.Display = null;
3329
+ this.Month = null;
2676
3330
 
2677
3331
  }
2678
3332
 
@@ -2683,8 +3337,14 @@ class AnalyseAmountDetail extends AbstractModel {
2683
3337
  if (!params) {
2684
3338
  return;
2685
3339
  }
2686
- this.Key = 'Key' in params ? params.Key : null;
2687
- this.Display = 'Display' in params ? params.Display : null;
3340
+ this.Id = 'Id' in params ? params.Id : null;
3341
+
3342
+ if (params.RuleList) {
3343
+ let obj = new GatherRuleSummary();
3344
+ obj.deserialize(params.RuleList)
3345
+ this.RuleList = obj;
3346
+ }
3347
+ this.Month = 'Month' in params ? params.Month : null;
2688
3348
 
2689
3349
  }
2690
3350
  }
@@ -3007,6 +3667,34 @@ class DescribeBillSummaryByPayModeRequest extends AbstractModel {
3007
3667
  }
3008
3668
  }
3009
3669
 
3670
+ /**
3671
+ * DeleteGatherRule response structure.
3672
+ * @class
3673
+ */
3674
+ class DeleteGatherRuleResponse extends AbstractModel {
3675
+ constructor(){
3676
+ super();
3677
+
3678
+ /**
3679
+ * 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.
3680
+ * @type {string || null}
3681
+ */
3682
+ this.RequestId = null;
3683
+
3684
+ }
3685
+
3686
+ /**
3687
+ * @private
3688
+ */
3689
+ deserialize(params) {
3690
+ if (!params) {
3691
+ return;
3692
+ }
3693
+ this.RequestId = 'RequestId' in params ? params.RequestId : null;
3694
+
3695
+ }
3696
+ }
3697
+
3010
3698
  /**
3011
3699
  * The products that are applicable.
3012
3700
  * @class
@@ -3043,31 +3731,84 @@ class ApplicableProducts extends AbstractModel {
3043
3731
  }
3044
3732
 
3045
3733
  /**
3046
- * DescribeBillSummaryByProject request structure.
3734
+ * Payment mode filter criteria
3047
3735
  * @class
3048
3736
  */
3049
- class DescribeBillSummaryByProjectRequest extends AbstractModel {
3737
+ class ConditionPayMode extends AbstractModel {
3050
3738
  constructor(){
3051
3739
  super();
3052
3740
 
3053
3741
  /**
3054
- * The value must be of the same month as `EndTime`. 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.
3742
+ * Payment mode
3743
+ * @type {string || null}
3744
+ */
3745
+ this.PayMode = null;
3746
+
3747
+ /**
3748
+ * Payment mode name
3749
+ * @type {string || null}
3750
+ */
3751
+ this.PayModeName = null;
3752
+
3753
+ }
3754
+
3755
+ /**
3756
+ * @private
3757
+ */
3758
+ deserialize(params) {
3759
+ if (!params) {
3760
+ return;
3761
+ }
3762
+ this.PayMode = 'PayMode' in params ? params.PayMode : null;
3763
+ this.PayModeName = 'PayModeName' in params ? params.PayModeName : null;
3764
+
3765
+ }
3766
+ }
3767
+
3768
+ /**
3769
+ * DescribeCostSummaryByProject request structure.
3770
+ * @class
3771
+ */
3772
+ class DescribeCostSummaryByProjectRequest extends AbstractModel {
3773
+ constructor(){
3774
+ super();
3775
+
3776
+ /**
3777
+ * 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.
3055
3778
  * @type {string || null}
3056
3779
  */
3057
3780
  this.BeginTime = null;
3058
3781
 
3059
3782
  /**
3060
- * The value must be of the same month as `BeginTime`. 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.
3783
+ * 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.
3061
3784
  * @type {string || null}
3062
3785
  */
3063
3786
  this.EndTime = null;
3064
3787
 
3065
3788
  /**
3066
- * Queries bill data user's UIN
3789
+ * Data quantity per fetch. The maximum value is `100`.
3790
+ * @type {number || null}
3791
+ */
3792
+ this.Limit = null;
3793
+
3794
+ /**
3795
+ * Offset, which starts from 0 by default
3796
+ * @type {number || null}
3797
+ */
3798
+ this.Offset = null;
3799
+
3800
+ /**
3801
+ * UIN of the user querying the bill data
3067
3802
  * @type {string || null}
3068
3803
  */
3069
3804
  this.PayerUin = null;
3070
3805
 
3806
+ /**
3807
+ * Whether to return the record count. 0 for no, 1 for yes. Default is no.
3808
+ * @type {number || null}
3809
+ */
3810
+ this.NeedRecordNum = null;
3811
+
3071
3812
  }
3072
3813
 
3073
3814
  /**
@@ -3079,7 +3820,79 @@ class DescribeBillSummaryByProjectRequest extends AbstractModel {
3079
3820
  }
3080
3821
  this.BeginTime = 'BeginTime' in params ? params.BeginTime : null;
3081
3822
  this.EndTime = 'EndTime' in params ? params.EndTime : null;
3823
+ this.Limit = 'Limit' in params ? params.Limit : null;
3824
+ this.Offset = 'Offset' in params ? params.Offset : null;
3082
3825
  this.PayerUin = 'PayerUin' in params ? params.PayerUin : null;
3826
+ this.NeedRecordNum = 'NeedRecordNum' in params ? params.NeedRecordNum : null;
3827
+
3828
+ }
3829
+ }
3830
+
3831
+ /**
3832
+ * Information of the document associated with bill details
3833
+ * @class
3834
+ */
3835
+ class BillDetailAssociatedOrder extends AbstractModel {
3836
+ constructor(){
3837
+ super();
3838
+
3839
+ /**
3840
+ * Purchase order.
3841
+ Note: This field may return null, indicating that no valid values can be obtained.
3842
+ * @type {string || null}
3843
+ */
3844
+ this.PrepayPurchase = null;
3845
+
3846
+ /**
3847
+ * Renewal order.
3848
+ Note: This field may return null, indicating that no valid values can be obtained.
3849
+ * @type {string || null}
3850
+ */
3851
+ this.PrepayRenew = null;
3852
+
3853
+ /**
3854
+ * Upgrade order.
3855
+ Note: This field may return null, indicating that no valid values can be obtained.
3856
+ * @type {string || null}
3857
+ */
3858
+ this.PrepayModifyUp = null;
3859
+
3860
+ /**
3861
+ * Write-off order.
3862
+ Note: This field may return null, indicating that no valid values can be obtained.
3863
+ * @type {string || null}
3864
+ */
3865
+ this.ReverseOrder = null;
3866
+
3867
+ /**
3868
+ * The order after discount.
3869
+ Note: This field may return null, indicating that no valid values can be obtained.
3870
+ * @type {string || null}
3871
+ */
3872
+ this.NewOrder = null;
3873
+
3874
+ /**
3875
+ * The original order before discount.
3876
+ Note: This field may return null, indicating that no valid values can be obtained.
3877
+ * @type {string || null}
3878
+ */
3879
+ this.Original = null;
3880
+
3881
+ }
3882
+
3883
+ /**
3884
+ * @private
3885
+ */
3886
+ deserialize(params) {
3887
+ if (!params) {
3888
+ return;
3889
+ }
3890
+ this.PrepayPurchase = 'PrepayPurchase' in params ? params.PrepayPurchase : null;
3891
+ this.PrepayRenew = 'PrepayRenew' in params ? params.PrepayRenew : null;
3892
+ this.PrepayModifyUp = 'PrepayModifyUp' in params ? params.PrepayModifyUp : null;
3893
+ this.ReverseOrder = 'ReverseOrder' in params ? params.ReverseOrder : null;
3894
+ this.NewOrder = 'NewOrder' in params ? params.NewOrder : null;
3895
+ this.Original = 'Original' in params ? params.Original : null;
3083
3896
 
3084
3897
  }
3085
3898
  }
@@ -3731,24 +4544,30 @@ class DescribeDealsByCondResponse extends AbstractModel {
3731
4544
  }
3732
4545
 
3733
4546
  /**
3734
- * Payment mode filter criteria
4547
+ * DescribeBillSummaryByProject request structure.
3735
4548
  * @class
3736
4549
  */
3737
- class ConditionPayMode extends AbstractModel {
4550
+ class DescribeBillSummaryByProjectRequest extends AbstractModel {
3738
4551
  constructor(){
3739
4552
  super();
3740
4553
 
3741
4554
  /**
3742
- * Payment mode
4555
+ * The value must be of the same month as `EndTime`. 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.
3743
4556
  * @type {string || null}
3744
4557
  */
3745
- this.PayMode = null;
4558
+ this.BeginTime = null;
3746
4559
 
3747
4560
  /**
3748
- * Payment mode name
4561
+ * The value must be of the same month as `BeginTime`. 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.
3749
4562
  * @type {string || null}
3750
4563
  */
3751
- this.PayModeName = null;
4564
+ this.EndTime = null;
4565
+
4566
+ /**
4567
+ * Queries bill data user's UIN
4568
+ * @type {string || null}
4569
+ */
4570
+ this.PayerUin = null;
3752
4571
 
3753
4572
  }
3754
4573
 
@@ -3759,8 +4578,9 @@ class ConditionPayMode extends AbstractModel {
3759
4578
  if (!params) {
3760
4579
  return;
3761
4580
  }
3762
- this.PayMode = 'PayMode' in params ? params.PayMode : null;
3763
- this.PayModeName = 'PayModeName' in params ? params.PayModeName : null;
4581
+ this.BeginTime = 'BeginTime' in params ? params.BeginTime : null;
4582
+ this.EndTime = 'EndTime' in params ? params.EndTime : null;
4583
+ this.PayerUin = 'PayerUin' in params ? params.PayerUin : null;
3764
4584
 
3765
4585
  }
3766
4586
  }
@@ -3864,6 +4684,34 @@ Example: 2024-10-02.
3864
4684
  }
3865
4685
  }
3866
4686
 
4687
+ /**
4688
+ * DeleteAllocationRule response structure.
4689
+ * @class
4690
+ */
4691
+ class DeleteAllocationRuleResponse extends AbstractModel {
4692
+ constructor(){
4693
+ super();
4694
+
4695
+ /**
4696
+ * 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.
4697
+ * @type {string || null}
4698
+ */
4699
+ this.RequestId = null;
4700
+
4701
+ }
4702
+
4703
+ /**
4704
+ * @private
4705
+ */
4706
+ deserialize(params) {
4707
+ if (!params) {
4708
+ return;
4709
+ }
4710
+ this.RequestId = 'RequestId' in params ? params.RequestId : null;
4711
+
4712
+ }
4713
+ }
4714
+
3867
4715
  /**
3868
4716
  * Tag information.
3869
4717
  * @class
@@ -4669,13 +5517,48 @@ class AnalyseRegionDetail extends AbstractModel {
4669
5517
  Note: This field may return null, indicating that no valid values can be obtained.
4670
5518
  * @type {string || null}
4671
5519
  */
4672
- this.RegionId = null;
5520
+ this.RegionId = null;
5521
+
5522
+ /**
5523
+ * Region nameNote: This field may return null, indicating that no valid values can be obtained.
5524
+ * @type {string || null}
5525
+ */
5526
+ this.RegionName = null;
5527
+
5528
+ }
5529
+
5530
+ /**
5531
+ * @private
5532
+ */
5533
+ deserialize(params) {
5534
+ if (!params) {
5535
+ return;
5536
+ }
5537
+ this.RegionId = 'RegionId' in params ? params.RegionId : null;
5538
+ this.RegionName = 'RegionName' in params ? params.RegionName : null;
5539
+
5540
+ }
5541
+ }
5542
+
5543
+ /**
5544
+ * Product details
5545
+ * @class
5546
+ */
5547
+ class ProductInfo extends AbstractModel {
5548
+ constructor(){
5549
+ super();
5550
+
5551
+ /**
5552
+ * Product detail name identifier
5553
+ * @type {string || null}
5554
+ */
5555
+ this.Name = null;
4673
5556
 
4674
5557
  /**
4675
- * Region nameNote: This field may return null, indicating that no valid values can be obtained.
5558
+ * Product details
4676
5559
  * @type {string || null}
4677
5560
  */
4678
- this.RegionName = null;
5561
+ this.Value = null;
4679
5562
 
4680
5563
  }
4681
5564
 
@@ -4686,8 +5569,8 @@ Note: This field may return null, indicating that no valid values can be obtaine
4686
5569
  if (!params) {
4687
5570
  return;
4688
5571
  }
4689
- this.RegionId = 'RegionId' in params ? params.RegionId : null;
4690
- this.RegionName = 'RegionName' in params ? params.RegionName : null;
5572
+ this.Name = 'Name' in params ? params.Name : null;
5573
+ this.Value = 'Value' in params ? params.Value : null;
4691
5574
 
4692
5575
  }
4693
5576
  }
@@ -5632,6 +6515,75 @@ class ConsumptionResourceSummaryConditionValue extends AbstractModel {
5632
6515
  }
5633
6516
  }
5634
6517
 
6518
+ /**
6519
+ * DescribeCostSummaryByRegion response structure.
6520
+ * @class
6521
+ */
6522
+ class DescribeCostSummaryByRegionResponse extends AbstractModel {
6523
+ constructor(){
6524
+ super();
6525
+
6526
+ /**
6527
+ * Data readiness, 0 for not ready, 1 for ready
6528
+ * @type {number || null}
6529
+ */
6530
+ this.Ready = null;
6531
+
6532
+ /**
6533
+ * Consumption details
6534
+ * @type {ConsumptionSummaryTotal || null}
6535
+ */
6536
+ this.Total = null;
6537
+
6538
+ /**
6539
+ * Consumption details summarized by region
6540
+ * @type {Array.<ConsumptionRegionSummaryDataItem> || null}
6541
+ */
6542
+ this.Data = null;
6543
+
6544
+ /**
6545
+ * Record count. The system returns null when NeedRecordNum is 0.Note: This field may return null, indicating that no valid values can be obtained.
6546
+ * @type {number || null}
6547
+ */
6548
+ this.RecordNum = null;
6549
+
6550
+ /**
6551
+ * 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.
6552
+ * @type {string || null}
6553
+ */
6554
+ this.RequestId = null;
6555
+
6556
+ }
6557
+
6558
+ /**
6559
+ * @private
6560
+ */
6561
+ deserialize(params) {
6562
+ if (!params) {
6563
+ return;
6564
+ }
6565
+ this.Ready = 'Ready' in params ? params.Ready : null;
6566
+
6567
+ if (params.Total) {
6568
+ let obj = new ConsumptionSummaryTotal();
6569
+ obj.deserialize(params.Total)
6570
+ this.Total = obj;
6571
+ }
6572
+
6573
+ if (params.Data) {
6574
+ this.Data = new Array();
6575
+ for (let z in params.Data) {
6576
+ let obj = new ConsumptionRegionSummaryDataItem();
6577
+ obj.deserialize(params.Data[z]);
6578
+ this.Data.push(obj);
6579
+ }
6580
+ }
6581
+ this.RecordNum = 'RecordNum' in params ? params.RecordNum : null;
6582
+ this.RequestId = 'RequestId' in params ? params.RequestId : null;
6583
+
6584
+ }
6585
+ }
6586
+
5635
6587
  /**
5636
6588
  * DescribeCostDetail request structure.
5637
6589
  * @class
@@ -5716,6 +6668,39 @@ class DescribeCostDetailRequest extends AbstractModel {
5716
6668
  }
5717
6669
  }
5718
6670
 
6671
+ /**
6672
+ * List of collection rules.
6673
+ * @class
6674
+ */
6675
+ class GatherRuleSummary extends AbstractModel {
6676
+ constructor(){
6677
+ super();
6678
+
6679
+ /**
6680
+ * Cost allocation regular expression.
6681
+ * @type {AllocationRuleExpression || null}
6682
+ */
6683
+ this.RuleDetail = null;
6684
+
6685
+ }
6686
+
6687
+ /**
6688
+ * @private
6689
+ */
6690
+ deserialize(params) {
6691
+ if (!params) {
6692
+ return;
6693
+ }
6694
+
6695
+ if (params.RuleDetail) {
6696
+ let obj = new AllocationRuleExpression();
6697
+ obj.deserialize(params.RuleDetail)
6698
+ this.RuleDetail = obj;
6699
+ }
6700
+
6701
+ }
6702
+ }
6703
+
5719
6704
  /**
5720
6705
  * DescribeTagList request structure.
5721
6706
  * @class
@@ -5824,48 +6809,18 @@ Note: This field may return null, indicating that no valid values can be obtaine
5824
6809
  }
5825
6810
 
5826
6811
  /**
5827
- * DescribeCostSummaryByProject request structure.
6812
+ * DescribeAllocationTree request structure.
5828
6813
  * @class
5829
6814
  */
5830
- class DescribeCostSummaryByProjectRequest extends AbstractModel {
6815
+ class DescribeAllocationTreeRequest extends AbstractModel {
5831
6816
  constructor(){
5832
6817
  super();
5833
6818
 
5834
6819
  /**
5835
- * 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.
5836
- * @type {string || null}
5837
- */
5838
- this.BeginTime = null;
5839
-
5840
- /**
5841
- * 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.
5842
- * @type {string || null}
5843
- */
5844
- this.EndTime = null;
5845
-
5846
- /**
5847
- * Data quantity per fetch. The maximum value is `100`.
5848
- * @type {number || null}
5849
- */
5850
- this.Limit = null;
5851
-
5852
- /**
5853
- * Offset, which starts from 0 by default
5854
- * @type {number || null}
5855
- */
5856
- this.Offset = null;
5857
-
5858
- /**
5859
- * UIN of the user querying the bill data
6820
+ * Month, the current month by default if not provided.
5860
6821
  * @type {string || null}
5861
6822
  */
5862
- this.PayerUin = null;
5863
-
5864
- /**
5865
- * Whether to return the record count. 0 for no, 1 for yes. Default is no.
5866
- * @type {number || null}
5867
- */
5868
- this.NeedRecordNum = null;
6823
+ this.Month = null;
5869
6824
 
5870
6825
  }
5871
6826
 
@@ -5876,12 +6831,7 @@ class DescribeCostSummaryByProjectRequest extends AbstractModel {
5876
6831
  if (!params) {
5877
6832
  return;
5878
6833
  }
5879
- this.BeginTime = 'BeginTime' in params ? params.BeginTime : null;
5880
- this.EndTime = 'EndTime' in params ? params.EndTime : null;
5881
- this.Limit = 'Limit' in params ? params.Limit : null;
5882
- this.Offset = 'Offset' in params ? params.Offset : null;
5883
- this.PayerUin = 'PayerUin' in params ? params.PayerUin : null;
5884
- this.NeedRecordNum = 'NeedRecordNum' in params ? params.NeedRecordNum : null;
6834
+ this.Month = 'Month' in params ? params.Month : null;
5885
6835
 
5886
6836
  }
5887
6837
  }
@@ -6130,6 +7080,92 @@ class PayModeSummaryOverviewItem extends AbstractModel {
6130
7080
  }
6131
7081
  }
6132
7082
 
7083
+ /**
7084
+ * DescribeAllocationRuleDetail response structure.
7085
+ * @class
7086
+ */
7087
+ class DescribeAllocationRuleDetailResponse extends AbstractModel {
7088
+ constructor(){
7089
+ super();
7090
+
7091
+ /**
7092
+ * Sharing rule ID.
7093
+ * @type {number || null}
7094
+ */
7095
+ this.Id = null;
7096
+
7097
+ /**
7098
+ * Sharing rule ownership UIN.
7099
+ * @type {string || null}
7100
+ */
7101
+ this.Uin = null;
7102
+
7103
+ /**
7104
+ * Sharing rule name.
7105
+ * @type {string || null}
7106
+ */
7107
+ this.Name = null;
7108
+
7109
+ /**
7110
+ * Specifies the public area policy type. the enumeration values are as follows:.
7111
+ 1 - custom sharing proportion.
7112
+ 2 - proportional allocation.
7113
+ 3 - allocation by proportion.
7114
+ * @type {number || null}
7115
+ */
7116
+ this.Type = null;
7117
+
7118
+ /**
7119
+ * Public sharing rule expression.
7120
+ * @type {AllocationRuleExpression || null}
7121
+ */
7122
+ this.RuleDetail = null;
7123
+
7124
+ /**
7125
+ * Sharing proportion expression. returns when Type is 1 or 2.
7126
+ * @type {Array.<AllocationRationExpression> || null}
7127
+ */
7128
+ this.RatioDetail = null;
7129
+
7130
+ /**
7131
+ * 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.
7132
+ * @type {string || null}
7133
+ */
7134
+ this.RequestId = null;
7135
+
7136
+ }
7137
+
7138
+ /**
7139
+ * @private
7140
+ */
7141
+ deserialize(params) {
7142
+ if (!params) {
7143
+ return;
7144
+ }
7145
+ this.Id = 'Id' in params ? params.Id : null;
7146
+ this.Uin = 'Uin' in params ? params.Uin : null;
7147
+ this.Name = 'Name' in params ? params.Name : null;
7148
+ this.Type = 'Type' in params ? params.Type : null;
7149
+
7150
+ if (params.RuleDetail) {
7151
+ let obj = new AllocationRuleExpression();
7152
+ obj.deserialize(params.RuleDetail)
7153
+ this.RuleDetail = obj;
7154
+ }
7155
+
7156
+ if (params.RatioDetail) {
7157
+ this.RatioDetail = new Array();
7158
+ for (let z in params.RatioDetail) {
7159
+ let obj = new AllocationRationExpression();
7160
+ obj.deserialize(params.RatioDetail[z]);
7161
+ this.RatioDetail.push(obj);
7162
+ }
7163
+ }
7164
+ this.RequestId = 'RequestId' in params ? params.RequestId : null;
7165
+
7166
+ }
7167
+ }
7168
+
6133
7169
  /**
6134
7170
  * The product purchased.
6135
7171
  * @class
@@ -6578,10 +7614,68 @@ class CreateAllocationTagResponse extends AbstractModel {
6578
7614
  super();
6579
7615
 
6580
7616
  /**
6581
- * 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.
7617
+ * 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.
7618
+ * @type {string || null}
7619
+ */
7620
+ this.RequestId = null;
7621
+
7622
+ }
7623
+
7624
+ /**
7625
+ * @private
7626
+ */
7627
+ deserialize(params) {
7628
+ if (!params) {
7629
+ return;
7630
+ }
7631
+ this.RequestId = 'RequestId' in params ? params.RequestId : null;
7632
+
7633
+ }
7634
+ }
7635
+
7636
+ /**
7637
+ * ModifyAllocationUnit request structure.
7638
+ * @class
7639
+ */
7640
+ class ModifyAllocationUnitRequest extends AbstractModel {
7641
+ constructor(){
7642
+ super();
7643
+
7644
+ /**
7645
+ * ID of the modified cost allocation unit.
7646
+ * @type {number || null}
7647
+ */
7648
+ this.Id = null;
7649
+
7650
+ /**
7651
+ * Modified cost allocation unit name.
7652
+ * @type {string || null}
7653
+ */
7654
+ this.Name = null;
7655
+
7656
+ /**
7657
+ * Modified cost allocation unit source organization name.
7658
+ * @type {string || null}
7659
+ */
7660
+ this.SourceName = null;
7661
+
7662
+ /**
7663
+ * Modified allocation unit source organization ID.
7664
+ * @type {string || null}
7665
+ */
7666
+ this.SourceId = null;
7667
+
7668
+ /**
7669
+ * Cost allocation unit remark description.
7670
+ * @type {string || null}
7671
+ */
7672
+ this.Remark = null;
7673
+
7674
+ /**
7675
+ * Month, the current month by default if not provided.
6582
7676
  * @type {string || null}
6583
7677
  */
6584
- this.RequestId = null;
7678
+ this.Month = null;
6585
7679
 
6586
7680
  }
6587
7681
 
@@ -6592,7 +7686,12 @@ class CreateAllocationTagResponse extends AbstractModel {
6592
7686
  if (!params) {
6593
7687
  return;
6594
7688
  }
6595
- this.RequestId = 'RequestId' in params ? params.RequestId : null;
7689
+ this.Id = 'Id' in params ? params.Id : null;
7690
+ this.Name = 'Name' in params ? params.Name : null;
7691
+ this.SourceName = 'SourceName' in params ? params.SourceName : null;
7692
+ this.SourceId = 'SourceId' in params ? params.SourceId : null;
7693
+ this.Remark = 'Remark' in params ? params.Remark : null;
7694
+ this.Month = 'Month' in params ? params.Month : null;
6596
7695
 
6597
7696
  }
6598
7697
  }
@@ -7211,54 +8310,131 @@ Note: This field may return `null`, indicating that no valid value was found.
7211
8310
  }
7212
8311
 
7213
8312
  /**
7214
- * Information of the document associated with bill details
8313
+ * List of sharing rules.
7215
8314
  * @class
7216
8315
  */
7217
- class BillDetailAssociatedOrder extends AbstractModel {
8316
+ class AllocationRulesSummary extends AbstractModel {
7218
8317
  constructor(){
7219
8318
  super();
7220
8319
 
7221
8320
  /**
7222
- * Purchase order.
7223
- Note: This field may return null, indicating that no valid values can be obtained.
8321
+ * Add new sharing rule name.
7224
8322
  * @type {string || null}
7225
8323
  */
7226
- this.PrepayPurchase = null;
8324
+ this.Name = null;
7227
8325
 
7228
8326
  /**
7229
- * Renewal order.
7230
- Note: This field may return null, indicating that no valid values can be obtained.
8327
+ * Specifies the sharing rule policy type. the enumeration values are as follows:.
8328
+ 1 - custom sharing proportion.
8329
+ 2 - proportional allocation.
8330
+ 3 - allocation by proportion.
8331
+ * @type {number || null}
8332
+ */
8333
+ this.Type = null;
8334
+
8335
+ /**
8336
+ * Sharing rule expression.
8337
+ * @type {AllocationRuleExpression || null}
8338
+ */
8339
+ this.RuleDetail = null;
8340
+
8341
+ /**
8342
+ * Sharing proportion expression, allocation by proportion not passed.
8343
+ * @type {Array.<AllocationRationExpression> || null}
8344
+ */
8345
+ this.RatioDetail = null;
8346
+
8347
+ }
8348
+
8349
+ /**
8350
+ * @private
8351
+ */
8352
+ deserialize(params) {
8353
+ if (!params) {
8354
+ return;
8355
+ }
8356
+ this.Name = 'Name' in params ? params.Name : null;
8357
+ this.Type = 'Type' in params ? params.Type : null;
8358
+
8359
+ if (params.RuleDetail) {
8360
+ let obj = new AllocationRuleExpression();
8361
+ obj.deserialize(params.RuleDetail)
8362
+ this.RuleDetail = obj;
8363
+ }
8364
+
8365
+ if (params.RatioDetail) {
8366
+ this.RatioDetail = new Array();
8367
+ for (let z in params.RatioDetail) {
8368
+ let obj = new AllocationRationExpression();
8369
+ obj.deserialize(params.RatioDetail[z]);
8370
+ this.RatioDetail.push(obj);
8371
+ }
8372
+ }
8373
+
8374
+ }
8375
+ }
8376
+
8377
+ /**
8378
+ * Detailed summary of costs by multiple dimensions
8379
+ * @class
8380
+ */
8381
+ class SummaryDetail extends AbstractModel {
8382
+ constructor(){
8383
+ super();
8384
+
8385
+ /**
8386
+ * Bill dimension code. Note: This field may return null, indicating that no valid values can be obtained.
7231
8387
  * @type {string || null}
7232
8388
  */
7233
- this.PrepayRenew = null;
8389
+ this.GroupKey = null;
7234
8390
 
7235
8391
  /**
7236
- * Upgrade order.
7237
- Note: This field may return null, indicating that no valid values can be obtained.
8392
+ * Bill dimension value. Note: This field may return null, indicating that no valid values can be obtained.
7238
8393
  * @type {string || null}
7239
8394
  */
7240
- this.PrepayModifyUp = null;
8395
+ this.GroupValue = null;
7241
8396
 
7242
8397
  /**
7243
- * Write-off order.
7244
- Note: This field may return null, indicating that no valid values can be obtained.
8398
+ * Original cost in USD. This parameter has become valid since Bill 3.0 took effect in May 2021, and before that `-` was returned for this parameter. If a customer has applied for a contract price different from the prices listed on the official website, `-` will also be returned for this parameter.
7245
8399
  * @type {string || null}
7246
8400
  */
7247
- this.ReverseOrder = null;
8401
+ this.TotalCost = null;
7248
8402
 
7249
8403
  /**
7250
- * The order after discount.
7251
- Note: This field may return null, indicating that no valid values can be obtained.
8404
+ * Total amount after discount
7252
8405
  * @type {string || null}
7253
8406
  */
7254
- this.NewOrder = null;
8407
+ this.RealTotalCost = null;
7255
8408
 
7256
8409
  /**
7257
- * The original order before discount.
7258
- Note: This field may return null, indicating that no valid values can be obtained.
8410
+ * Cash credit: The amount paid from the user’s cash account
7259
8411
  * @type {string || null}
7260
8412
  */
7261
- this.Original = null;
8413
+ this.CashPayAmount = null;
8414
+
8415
+ /**
8416
+ * Free credit: The amount paid with the user’s free credit
8417
+ * @type {string || null}
8418
+ */
8419
+ this.IncentivePayAmount = null;
8420
+
8421
+ /**
8422
+ * Voucher payment: The voucher deduction amount
8423
+ * @type {string || null}
8424
+ */
8425
+ this.VoucherPayAmount = null;
8426
+
8427
+ /**
8428
+ * Commission credit: The amount paid with the user’s commission credit. Note: This field may return null, indicating that no valid values can be obtained.
8429
+ * @type {string || null}
8430
+ */
8431
+ this.TransferPayAmount = null;
8432
+
8433
+ /**
8434
+ * Detailed summary of products. Note: This field may return null, indicating that no valid values can be obtained.
8435
+ * @type {Array.<BusinessSummaryInfo> || null}
8436
+ */
8437
+ this.Business = null;
7262
8438
 
7263
8439
  }
7264
8440
 
@@ -7269,12 +8445,23 @@ Note: This field may return null, indicating that no valid values can be obtaine
7269
8445
  if (!params) {
7270
8446
  return;
7271
8447
  }
7272
- this.PrepayPurchase = 'PrepayPurchase' in params ? params.PrepayPurchase : null;
7273
- this.PrepayRenew = 'PrepayRenew' in params ? params.PrepayRenew : null;
7274
- this.PrepayModifyUp = 'PrepayModifyUp' in params ? params.PrepayModifyUp : null;
7275
- this.ReverseOrder = 'ReverseOrder' in params ? params.ReverseOrder : null;
7276
- this.NewOrder = 'NewOrder' in params ? params.NewOrder : null;
7277
- this.Original = 'Original' in params ? params.Original : null;
8448
+ this.GroupKey = 'GroupKey' in params ? params.GroupKey : null;
8449
+ this.GroupValue = 'GroupValue' in params ? params.GroupValue : null;
8450
+ this.TotalCost = 'TotalCost' in params ? params.TotalCost : null;
8451
+ this.RealTotalCost = 'RealTotalCost' in params ? params.RealTotalCost : null;
8452
+ this.CashPayAmount = 'CashPayAmount' in params ? params.CashPayAmount : null;
8453
+ this.IncentivePayAmount = 'IncentivePayAmount' in params ? params.IncentivePayAmount : null;
8454
+ this.VoucherPayAmount = 'VoucherPayAmount' in params ? params.VoucherPayAmount : null;
8455
+ this.TransferPayAmount = 'TransferPayAmount' in params ? params.TransferPayAmount : null;
8456
+
8457
+ if (params.Business) {
8458
+ this.Business = new Array();
8459
+ for (let z in params.Business) {
8460
+ let obj = new BusinessSummaryInfo();
8461
+ obj.deserialize(params.Business[z]);
8462
+ this.Business.push(obj);
8463
+ }
8464
+ }
7278
8465
 
7279
8466
  }
7280
8467
  }
@@ -7489,6 +8676,41 @@ class BusinessSummaryOverviewItem extends AbstractModel {
7489
8676
  }
7490
8677
  }
7491
8678
 
8679
+ /**
8680
+ * CreateGatherRule response structure.
8681
+ * @class
8682
+ */
8683
+ class CreateGatherRuleResponse extends AbstractModel {
8684
+ constructor(){
8685
+ super();
8686
+
8687
+ /**
8688
+ * Collection rule ID.
8689
+ * @type {number || null}
8690
+ */
8691
+ this.Id = null;
8692
+
8693
+ /**
8694
+ * 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.
8695
+ * @type {string || null}
8696
+ */
8697
+ this.RequestId = null;
8698
+
8699
+ }
8700
+
8701
+ /**
8702
+ * @private
8703
+ */
8704
+ deserialize(params) {
8705
+ if (!params) {
8706
+ return;
8707
+ }
8708
+ this.Id = 'Id' in params ? params.Id : null;
8709
+ this.RequestId = 'RequestId' in params ? params.RequestId : null;
8710
+
8711
+ }
8712
+ }
8713
+
7492
8714
  /**
7493
8715
  * The usage records.
7494
8716
  * @class
@@ -7540,6 +8762,34 @@ Note: This field may return `null`, indicating that no valid value was found.
7540
8762
  }
7541
8763
  }
7542
8764
 
8765
+ /**
8766
+ * ModifyAllocationRule response structure.
8767
+ * @class
8768
+ */
8769
+ class ModifyAllocationRuleResponse extends AbstractModel {
8770
+ constructor(){
8771
+ super();
8772
+
8773
+ /**
8774
+ * 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.
8775
+ * @type {string || null}
8776
+ */
8777
+ this.RequestId = null;
8778
+
8779
+ }
8780
+
8781
+ /**
8782
+ * @private
8783
+ */
8784
+ deserialize(params) {
8785
+ if (!params) {
8786
+ return;
8787
+ }
8788
+ this.RequestId = 'RequestId' in params ? params.RequestId : null;
8789
+
8790
+ }
8791
+ }
8792
+
7543
8793
  /**
7544
8794
  * DescribeVoucherInfo request structure.
7545
8795
  * @class
@@ -7776,6 +9026,48 @@ Example:ins-a2bb34
7776
9026
  }
7777
9027
  }
7778
9028
 
9029
+ /**
9030
+ * CreateAllocationUnit response structure.
9031
+ * @class
9032
+ */
9033
+ class CreateAllocationUnitResponse extends AbstractModel {
9034
+ constructor(){
9035
+ super();
9036
+
9037
+ /**
9038
+ * Specifies the ID of a newly-added cost allocation unit.
9039
+ * @type {number || null}
9040
+ */
9041
+ this.Id = null;
9042
+
9043
+ /**
9044
+ * Unique identifier of a cost allocation unit
9045
+ * @type {string || null}
9046
+ */
9047
+ this.TreeNodeUniqKey = null;
9048
+
9049
+ /**
9050
+ * 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.
9051
+ * @type {string || null}
9052
+ */
9053
+ this.RequestId = null;
9054
+
9055
+ }
9056
+
9057
+ /**
9058
+ * @private
9059
+ */
9060
+ deserialize(params) {
9061
+ if (!params) {
9062
+ return;
9063
+ }
9064
+ this.Id = 'Id' in params ? params.Id : null;
9065
+ this.TreeNodeUniqKey = 'TreeNodeUniqKey' in params ? params.TreeNodeUniqKey : null;
9066
+ this.RequestId = 'RequestId' in params ? params.RequestId : null;
9067
+
9068
+ }
9069
+ }
9070
+
7779
9071
  /**
7780
9072
  * DescribeDosageCosDetailByDate response structure.
7781
9073
  * @class
@@ -7820,72 +9112,88 @@ class DescribeDosageCosDetailByDateResponse extends AbstractModel {
7820
9112
  }
7821
9113
 
7822
9114
  /**
7823
- * Detailed summary of purchases by project
9115
+ * Cost analysis header data
7824
9116
  * @class
7825
9117
  */
7826
- class ProjectSummaryOverviewItem extends AbstractModel {
9118
+ class AnalyseHeaderTimeDetail extends AbstractModel {
7827
9119
  constructor(){
7828
9120
  super();
7829
9121
 
7830
9122
  /**
7831
- * Project ID
7832
- * @type {string || null}
7833
- */
7834
- this.ProjectId = null;
7835
-
7836
- /**
7837
- * Project name: The project to which a resource belongs, which is user-designated. If a resource has not been assigned to a project, it will automatically belong to the default project.
9123
+ * DateNote: This field may return null, indicating that no valid values can be obtained.
7838
9124
  * @type {string || null}
7839
9125
  */
7840
- this.ProjectName = null;
9126
+ this.Name = null;
7841
9127
 
7842
- /**
7843
- * Cost ratio, to two decimal points
7844
- * @type {string || null}
7845
- */
7846
- this.RealTotalCostRatio = null;
9128
+ }
7847
9129
 
7848
- /**
7849
- * Total amount after discount
7850
- * @type {string || null}
7851
- */
7852
- this.RealTotalCost = null;
9130
+ /**
9131
+ * @private
9132
+ */
9133
+ deserialize(params) {
9134
+ if (!params) {
9135
+ return;
9136
+ }
9137
+ this.Name = 'Name' in params ? params.Name : null;
7853
9138
 
7854
- /**
7855
- * Cash credit: The amount paid from the user’s cash account
7856
- * @type {string || null}
7857
- */
7858
- this.CashPayAmount = null;
9139
+ }
9140
+ }
9141
+
9142
+ /**
9143
+ * Cost allocation regular expression.
9144
+ * @class
9145
+ */
9146
+ class AllocationRuleExpression extends AbstractModel {
9147
+ constructor(){
9148
+ super();
7859
9149
 
7860
9150
  /**
7861
- * Free credit: The amount paid with the user’s free credit
9151
+ * RuleKey: cost allocation dimension.
9152
+ Enumeration value.
9153
+ ownerUin - user UIN.
9154
+ Operator UIN.
9155
+ businessCode - product-level code.
9156
+ productCode - 2-tier product code.
9157
+ itemCode - 4-tier product code.
9158
+ projectId - specifies the project ID.
9159
+ regionId.
9160
+ resourceId - specifies the resource ID.
9161
+ tag - tag key-value pair.
9162
+ payMode - billing mode.
9163
+ instanceType - instance type.
9164
+ actionType - transaction type.
7862
9165
  * @type {string || null}
7863
9166
  */
7864
- this.IncentivePayAmount = null;
9167
+ this.RuleKey = null;
7865
9168
 
7866
9169
  /**
7867
- * Voucher payment: The voucher deduction amount
9170
+ * Specifies the dimension rules for cost allocation.
9171
+ Enumeration value.
9172
+ in.
9173
+ not in.
7868
9174
  * @type {string || null}
7869
9175
  */
7870
- this.VoucherPayAmount = null;
9176
+ this.Operator = null;
7871
9177
 
7872
9178
  /**
7873
- * Commission credit: The amount paid with the user’s commission credit.
7874
- * @type {string || null}
9179
+ * Cost allocation dimension value. for example, when RuleKey is businessCode, ["p_cbs","p_sqlserver"] indicates the cost of products at the "p_cbs","p_sqlserver" level.
9180
+ * @type {Array.<string> || null}
7875
9181
  */
7876
- this.TransferPayAmount = null;
9182
+ this.RuleValue = null;
7877
9183
 
7878
9184
  /**
7879
- * Billing month, e.g. `2019-08`
9185
+ * Logical connection for cost allocation, enumeration values are as follows:.
9186
+ Create and bind a policy query an instance reset the access password of an instance.
9187
+ Create and bind a policy query an instance reset the access password of an instance.
7880
9188
  * @type {string || null}
7881
9189
  */
7882
- this.BillMonth = null;
9190
+ this.Connectors = null;
7883
9191
 
7884
9192
  /**
7885
- * The original cost in USD. This parameter has become valid since v3.0 bills took effect in May 2021, and before that `-` was returned for this parameter. If a customer uses a contract price different from the published price, `-` will also be returned for this parameter.
7886
- * @type {string || null}
9193
+ * Nested rule.
9194
+ * @type {Array.<AllocationRuleExpression> || null}
7887
9195
  */
7888
- this.TotalCost = null;
9196
+ this.Children = null;
7889
9197
 
7890
9198
  }
7891
9199
 
@@ -7896,16 +9204,19 @@ class ProjectSummaryOverviewItem extends AbstractModel {
7896
9204
  if (!params) {
7897
9205
  return;
7898
9206
  }
7899
- this.ProjectId = 'ProjectId' in params ? params.ProjectId : null;
7900
- this.ProjectName = 'ProjectName' in params ? params.ProjectName : null;
7901
- this.RealTotalCostRatio = 'RealTotalCostRatio' in params ? params.RealTotalCostRatio : null;
7902
- this.RealTotalCost = 'RealTotalCost' in params ? params.RealTotalCost : null;
7903
- this.CashPayAmount = 'CashPayAmount' in params ? params.CashPayAmount : null;
7904
- this.IncentivePayAmount = 'IncentivePayAmount' in params ? params.IncentivePayAmount : null;
7905
- this.VoucherPayAmount = 'VoucherPayAmount' in params ? params.VoucherPayAmount : null;
7906
- this.TransferPayAmount = 'TransferPayAmount' in params ? params.TransferPayAmount : null;
7907
- this.BillMonth = 'BillMonth' in params ? params.BillMonth : null;
7908
- this.TotalCost = 'TotalCost' in params ? params.TotalCost : null;
9207
+ this.RuleKey = 'RuleKey' in params ? params.RuleKey : null;
9208
+ this.Operator = 'Operator' in params ? params.Operator : null;
9209
+ this.RuleValue = 'RuleValue' in params ? params.RuleValue : null;
9210
+ this.Connectors = 'Connectors' in params ? params.Connectors : null;
9211
+
9212
+ if (params.Children) {
9213
+ this.Children = new Array();
9214
+ for (let z in params.Children) {
9215
+ let obj = new AllocationRuleExpression();
9216
+ obj.deserialize(params.Children[z]);
9217
+ this.Children.push(obj);
9218
+ }
9219
+ }
7909
9220
 
7910
9221
  }
7911
9222
  }
@@ -7960,6 +9271,34 @@ class DescribeBillSummaryForOrganizationResponse extends AbstractModel {
7960
9271
  }
7961
9272
  }
7962
9273
 
9274
+ /**
9275
+ * DeleteAllocationUnit response structure.
9276
+ * @class
9277
+ */
9278
+ class DeleteAllocationUnitResponse extends AbstractModel {
9279
+ constructor(){
9280
+ super();
9281
+
9282
+ /**
9283
+ * 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.
9284
+ * @type {string || null}
9285
+ */
9286
+ this.RequestId = null;
9287
+
9288
+ }
9289
+
9290
+ /**
9291
+ * @private
9292
+ */
9293
+ deserialize(params) {
9294
+ if (!params) {
9295
+ return;
9296
+ }
9297
+ this.RequestId = 'RequestId' in params ? params.RequestId : null;
9298
+
9299
+ }
9300
+ }
9301
+
7963
9302
  /**
7964
9303
  * Project filter criteria
7965
9304
  * @class
@@ -8115,6 +9454,94 @@ class CosDetailSets extends AbstractModel {
8115
9454
  }
8116
9455
  }
8117
9456
 
9457
+ /**
9458
+ * DescribeAllocationRuleSummary request structure.
9459
+ * @class
9460
+ */
9461
+ class DescribeAllocationRuleSummaryRequest extends AbstractModel {
9462
+ constructor(){
9463
+ super();
9464
+
9465
+ /**
9466
+ * Specifies the data quantity per fetch. the maximum value is 1000.
9467
+ * @type {number || null}
9468
+ */
9469
+ this.Limit = null;
9470
+
9471
+ /**
9472
+ * Pagination offset
9473
+ * @type {number || null}
9474
+ */
9475
+ this.Offset = null;
9476
+
9477
+ /**
9478
+ * Month, which is the current month by default if not provided.
9479
+ * @type {string || null}
9480
+ */
9481
+ this.Month = null;
9482
+
9483
+ /**
9484
+ * Public area policy type, for filtering.
9485
+ Enumeration values are as follows:.
9486
+ 1 - custom sharing proportion.
9487
+ 2 - proportional allocation.
9488
+ 3 - allocation by proportion.
9489
+ * @type {number || null}
9490
+ */
9491
+ this.Type = null;
9492
+
9493
+ /**
9494
+ * Sharing rule name or cost allocation unit name, used for fuzzy filter criteria.
9495
+ * @type {string || null}
9496
+ */
9497
+ this.Name = null;
9498
+
9499
+ }
9500
+
9501
+ /**
9502
+ * @private
9503
+ */
9504
+ deserialize(params) {
9505
+ if (!params) {
9506
+ return;
9507
+ }
9508
+ this.Limit = 'Limit' in params ? params.Limit : null;
9509
+ this.Offset = 'Offset' in params ? params.Offset : null;
9510
+ this.Month = 'Month' in params ? params.Month : null;
9511
+ this.Type = 'Type' in params ? params.Type : null;
9512
+ this.Name = 'Name' in params ? params.Name : null;
9513
+
9514
+ }
9515
+ }
9516
+
9517
+ /**
9518
+ * ModifyAllocationUnit response structure.
9519
+ * @class
9520
+ */
9521
+ class ModifyAllocationUnitResponse extends AbstractModel {
9522
+ constructor(){
9523
+ super();
9524
+
9525
+ /**
9526
+ * 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.
9527
+ * @type {string || null}
9528
+ */
9529
+ this.RequestId = null;
9530
+
9531
+ }
9532
+
9533
+ /**
9534
+ * @private
9535
+ */
9536
+ deserialize(params) {
9537
+ if (!params) {
9538
+ return;
9539
+ }
9540
+ this.RequestId = 'RequestId' in params ? params.RequestId : null;
9541
+
9542
+ }
9543
+ }
9544
+
8118
9545
  /**
8119
9546
  * Cost analysis filter box complex type
8120
9547
  * @class
@@ -8561,18 +9988,24 @@ class BillResourceSummary extends AbstractModel {
8561
9988
  }
8562
9989
 
8563
9990
  /**
8564
- * Cost analysis header data
9991
+ * DeleteAllocationUnit request structure.
8565
9992
  * @class
8566
9993
  */
8567
- class AnalyseHeaderTimeDetail extends AbstractModel {
9994
+ class DeleteAllocationUnitRequest extends AbstractModel {
8568
9995
  constructor(){
8569
9996
  super();
8570
9997
 
8571
9998
  /**
8572
- * DateNote: This field may return null, indicating that no valid values can be obtained.
9999
+ * Specifies the deleted cost allocation unit ID.
10000
+ * @type {number || null}
10001
+ */
10002
+ this.Id = null;
10003
+
10004
+ /**
10005
+ * Month, which is the current month by default if not provided.
8573
10006
  * @type {string || null}
8574
10007
  */
8575
- this.Name = null;
10008
+ this.Month = null;
8576
10009
 
8577
10010
  }
8578
10011
 
@@ -8583,42 +10016,43 @@ class AnalyseHeaderTimeDetail extends AbstractModel {
8583
10016
  if (!params) {
8584
10017
  return;
8585
10018
  }
8586
- this.Name = 'Name' in params ? params.Name : null;
10019
+ this.Id = 'Id' in params ? params.Id : null;
10020
+ this.Month = 'Month' in params ? params.Month : null;
8587
10021
 
8588
10022
  }
8589
10023
  }
8590
10024
 
8591
10025
  /**
8592
- * DescribeCostSummaryByRegion response structure.
10026
+ * DescribeGatherRuleDetail response structure.
8593
10027
  * @class
8594
10028
  */
8595
- class DescribeCostSummaryByRegionResponse extends AbstractModel {
10029
+ class DescribeGatherRuleDetailResponse extends AbstractModel {
8596
10030
  constructor(){
8597
10031
  super();
8598
10032
 
8599
10033
  /**
8600
- * Data readiness, 0 for not ready, 1 for ready
10034
+ * Specifies the collection rule ID.
8601
10035
  * @type {number || null}
8602
10036
  */
8603
- this.Ready = null;
10037
+ this.Id = null;
8604
10038
 
8605
10039
  /**
8606
- * Consumption details
8607
- * @type {ConsumptionSummaryTotal || null}
10040
+ * Associated UIN of the collection rule.
10041
+ * @type {string || null}
8608
10042
  */
8609
- this.Total = null;
10043
+ this.Uin = null;
8610
10044
 
8611
10045
  /**
8612
- * Consumption details summarized by region
8613
- * @type {Array.<ConsumptionRegionSummaryDataItem> || null}
10046
+ * Collection rule last update time.
10047
+ * @type {string || null}
8614
10048
  */
8615
- this.Data = null;
10049
+ this.UpdateTime = null;
8616
10050
 
8617
10051
  /**
8618
- * Record count. The system returns null when NeedRecordNum is 0.Note: This field may return null, indicating that no valid values can be obtained.
8619
- * @type {number || null}
10052
+ * Collection rule details.
10053
+ * @type {AllocationRuleExpression || null}
8620
10054
  */
8621
- this.RecordNum = null;
10055
+ this.RuleDetail = null;
8622
10056
 
8623
10057
  /**
8624
10058
  * 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.
@@ -8635,81 +10069,160 @@ class DescribeCostSummaryByRegionResponse extends AbstractModel {
8635
10069
  if (!params) {
8636
10070
  return;
8637
10071
  }
8638
- this.Ready = 'Ready' in params ? params.Ready : null;
10072
+ this.Id = 'Id' in params ? params.Id : null;
10073
+ this.Uin = 'Uin' in params ? params.Uin : null;
10074
+ this.UpdateTime = 'UpdateTime' in params ? params.UpdateTime : null;
8639
10075
 
8640
- if (params.Total) {
8641
- let obj = new ConsumptionSummaryTotal();
8642
- obj.deserialize(params.Total)
8643
- this.Total = obj;
10076
+ if (params.RuleDetail) {
10077
+ let obj = new AllocationRuleExpression();
10078
+ obj.deserialize(params.RuleDetail)
10079
+ this.RuleDetail = obj;
8644
10080
  }
10081
+ this.RequestId = 'RequestId' in params ? params.RequestId : null;
8645
10082
 
8646
- if (params.Data) {
8647
- this.Data = new Array();
8648
- for (let z in params.Data) {
8649
- let obj = new ConsumptionRegionSummaryDataItem();
8650
- obj.deserialize(params.Data[z]);
8651
- this.Data.push(obj);
10083
+ }
10084
+ }
10085
+
10086
+ /**
10087
+ * Overview of sharing rules.
10088
+ * @class
10089
+ */
10090
+ class AllocationRuleOverview extends AbstractModel {
10091
+ constructor(){
10092
+ super();
10093
+
10094
+ /**
10095
+ * Sharing rule ID.
10096
+ * @type {number || null}
10097
+ */
10098
+ this.RuleId = null;
10099
+
10100
+ /**
10101
+ * Sharing rule name.
10102
+ * @type {string || null}
10103
+ */
10104
+ this.RuleName = null;
10105
+
10106
+ /**
10107
+ * Public area policy type.
10108
+ Enumeration value.
10109
+ 1 - custom sharing proportion.
10110
+ 2 - proportional allocation.
10111
+ 3 - allocation by proportion.
10112
+ * @type {number || null}
10113
+ */
10114
+ this.Type = null;
10115
+
10116
+ /**
10117
+ * Last update time of the sharing rules.
10118
+ * @type {string || null}
10119
+ */
10120
+ this.UpdateTime = null;
10121
+
10122
+ /**
10123
+ * Overview of cost allocation units.
10124
+ * @type {Array.<AllocationUnit> || null}
10125
+ */
10126
+ this.AllocationNode = null;
10127
+
10128
+ }
10129
+
10130
+ /**
10131
+ * @private
10132
+ */
10133
+ deserialize(params) {
10134
+ if (!params) {
10135
+ return;
10136
+ }
10137
+ this.RuleId = 'RuleId' in params ? params.RuleId : null;
10138
+ this.RuleName = 'RuleName' in params ? params.RuleName : null;
10139
+ this.Type = 'Type' in params ? params.Type : null;
10140
+ this.UpdateTime = 'UpdateTime' in params ? params.UpdateTime : null;
10141
+
10142
+ if (params.AllocationNode) {
10143
+ this.AllocationNode = new Array();
10144
+ for (let z in params.AllocationNode) {
10145
+ let obj = new AllocationUnit();
10146
+ obj.deserialize(params.AllocationNode[z]);
10147
+ this.AllocationNode.push(obj);
8652
10148
  }
8653
10149
  }
8654
- this.RecordNum = 'RecordNum' in params ? params.RecordNum : null;
8655
- this.RequestId = 'RequestId' in params ? params.RequestId : null;
8656
10150
 
8657
10151
  }
8658
10152
  }
8659
10153
 
8660
10154
  module.exports = {
10155
+ CreateAllocationUnitRequest: CreateAllocationUnitRequest,
8661
10156
  DeleteAllocationTagRequest: DeleteAllocationTagRequest,
8662
10157
  DescribeCostSummaryByProductRequest: DescribeCostSummaryByProductRequest,
8663
10158
  DescribeCostExplorerSummaryResponse: DescribeCostExplorerSummaryResponse,
8664
10159
  ConsumptionBusinessSummaryDataItem: ConsumptionBusinessSummaryDataItem,
10160
+ ModifyAllocationRuleRequest: ModifyAllocationRuleRequest,
10161
+ DeleteAllocationRuleRequest: DeleteAllocationRuleRequest,
10162
+ CreateAllocationRuleResponse: CreateAllocationRuleResponse,
8665
10163
  BillTagInfo: BillTagInfo,
8666
10164
  ConditionBusiness: ConditionBusiness,
8667
10165
  AnalyseActionTypeDetail: AnalyseActionTypeDetail,
8668
10166
  DescribeCostExplorerSummaryRequest: DescribeCostExplorerSummaryRequest,
8669
10167
  DescribeCostSummaryByProductResponse: DescribeCostSummaryByProductResponse,
8670
- ProductInfo: ProductInfo,
10168
+ DescribeAllocationTreeResponse: DescribeAllocationTreeResponse,
8671
10169
  DeleteAllocationTagResponse: DeleteAllocationTagResponse,
10170
+ AllocationTree: AllocationTree,
8672
10171
  DescribeBillDetailForOrganizationResponse: DescribeBillDetailForOrganizationResponse,
8673
10172
  BillDetailComponentConfig: BillDetailComponentConfig,
8674
10173
  DescribeCostSummaryByResourceResponse: DescribeCostSummaryByResourceResponse,
8675
10174
  DescribeBillSummaryByRegionRequest: DescribeBillSummaryByRegionRequest,
8676
10175
  AdjustInfoDetail: AdjustInfoDetail,
10176
+ CreateAllocationRuleRequest: CreateAllocationRuleRequest,
8677
10177
  ConsumptionRegionSummaryDataItem: ConsumptionRegionSummaryDataItem,
8678
10178
  BusinessSummaryInfo: BusinessSummaryInfo,
8679
10179
  DescribeBillSummaryRequest: DescribeBillSummaryRequest,
8680
10180
  DescribeBillResourceSummaryResponse: DescribeBillResourceSummaryResponse,
10181
+ DescribeGatherRuleDetailRequest: DescribeGatherRuleDetailRequest,
8681
10182
  DistributionBillDetail: DistributionBillDetail,
8682
10183
  DescribeDosageCosDetailByDateRequest: DescribeDosageCosDetailByDateRequest,
8683
10184
  DescribeBillAdjustInfoResponse: DescribeBillAdjustInfoResponse,
8684
- BillDistributionResourceSummary: BillDistributionResourceSummary,
10185
+ DescribeAllocationRuleDetailRequest: DescribeAllocationRuleDetailRequest,
8685
10186
  DescribeAllocationUnitDetailResponse: DescribeAllocationUnitDetailResponse,
8686
10187
  DescribeBillSummaryByProductRequest: DescribeBillSummaryByProductRequest,
10188
+ AllocationUnit: AllocationUnit,
10189
+ AllocationRationExpression: AllocationRationExpression,
8687
10190
  DescribeVoucherUsageDetailsResponse: DescribeVoucherUsageDetailsResponse,
8688
10191
  ConsumptionSummaryTotal: ConsumptionSummaryTotal,
10192
+ BillDistributionResourceSummary: BillDistributionResourceSummary,
8689
10193
  DescribeCostDetailResponse: DescribeCostDetailResponse,
8690
10194
  VoucherInfos: VoucherInfos,
8691
10195
  DescribeCostSummaryByProjectResponse: DescribeCostSummaryByProjectResponse,
8692
10196
  AnalyseProjectDetail: AnalyseProjectDetail,
10197
+ ProjectSummaryOverviewItem: ProjectSummaryOverviewItem,
8693
10198
  DescribeBillSummaryByTagResponse: DescribeBillSummaryByTagResponse,
10199
+ ModifyGatherRuleRequest: ModifyGatherRuleRequest,
8694
10200
  DescribeBillSummaryByPayModeResponse: DescribeBillSummaryByPayModeResponse,
8695
10201
  DescribeBillSummaryByTagRequest: DescribeBillSummaryByTagRequest,
8696
10202
  AnalyseDetail: AnalyseDetail,
8697
- SummaryDetail: SummaryDetail,
10203
+ DeleteGatherRuleRequest: DeleteGatherRuleRequest,
10204
+ DescribeAllocationRuleSummaryResponse: DescribeAllocationRuleSummaryResponse,
8698
10205
  AnalyseAmountDetail: AnalyseAmountDetail,
10206
+ ModifyGatherRuleResponse: ModifyGatherRuleResponse,
10207
+ CreateGatherRuleRequest: CreateGatherRuleRequest,
8699
10208
  DescribeBillResourceSummaryForOrganizationRequest: DescribeBillResourceSummaryForOrganizationRequest,
8700
10209
  DescribeCostSummaryByRegionRequest: DescribeCostSummaryByRegionRequest,
8701
10210
  ConsumptionSummaryTrend: ConsumptionSummaryTrend,
8702
10211
  DescribeBillDownloadUrlRequest: DescribeBillDownloadUrlRequest,
8703
10212
  DescribeBillSummaryByPayModeRequest: DescribeBillSummaryByPayModeRequest,
10213
+ DeleteGatherRuleResponse: DeleteGatherRuleResponse,
8704
10214
  ApplicableProducts: ApplicableProducts,
8705
- DescribeBillSummaryByProjectRequest: DescribeBillSummaryByProjectRequest,
10215
+ ConditionPayMode: ConditionPayMode,
10216
+ DescribeCostSummaryByProjectRequest: DescribeCostSummaryByProjectRequest,
10217
+ BillDetailAssociatedOrder: BillDetailAssociatedOrder,
8706
10218
  BillDetail: BillDetail,
8707
10219
  DescribeBillDetailResponse: DescribeBillDetailResponse,
8708
10220
  Deal: Deal,
8709
10221
  DescribeDealsByCondResponse: DescribeDealsByCondResponse,
8710
- ConditionPayMode: ConditionPayMode,
10222
+ DescribeBillSummaryByProjectRequest: DescribeBillSummaryByProjectRequest,
8711
10223
  DescribeBillSummaryByProjectResponse: DescribeBillSummaryByProjectResponse,
8712
10224
  DescribeBillAdjustInfoRequest: DescribeBillAdjustInfoRequest,
10225
+ DeleteAllocationRuleResponse: DeleteAllocationRuleResponse,
8713
10226
  TagDataInfo: TagDataInfo,
8714
10227
  SummaryTotal: SummaryTotal,
8715
10228
  BusinessSummaryTotal: BusinessSummaryTotal,
@@ -8723,6 +10236,7 @@ module.exports = {
8723
10236
  RegionSummaryOverviewItem: RegionSummaryOverviewItem,
8724
10237
  ConsumptionProjectSummaryDataItem: ConsumptionProjectSummaryDataItem,
8725
10238
  AnalyseRegionDetail: AnalyseRegionDetail,
10239
+ ProductInfo: ProductInfo,
8726
10240
  DescribeAllocationUnitDetailRequest: DescribeAllocationUnitDetailRequest,
8727
10241
  DescribeBillSummaryForOrganizationRequest: DescribeBillSummaryForOrganizationRequest,
8728
10242
  ActionSummaryOverviewItem: ActionSummaryOverviewItem,
@@ -8733,14 +10247,17 @@ module.exports = {
8733
10247
  ConditionRegion: ConditionRegion,
8734
10248
  TagSummaryOverviewItem: TagSummaryOverviewItem,
8735
10249
  ConsumptionResourceSummaryConditionValue: ConsumptionResourceSummaryConditionValue,
10250
+ DescribeCostSummaryByRegionResponse: DescribeCostSummaryByRegionResponse,
8736
10251
  DescribeCostDetailRequest: DescribeCostDetailRequest,
10252
+ GatherRuleSummary: GatherRuleSummary,
8737
10253
  DescribeTagListRequest: DescribeTagListRequest,
8738
10254
  DescribeBillResourceSummaryForOrganizationResponse: DescribeBillResourceSummaryForOrganizationResponse,
8739
- DescribeCostSummaryByProjectRequest: DescribeCostSummaryByProjectRequest,
10255
+ DescribeAllocationTreeRequest: DescribeAllocationTreeRequest,
8740
10256
  DescribeCostSummaryByResourceRequest: DescribeCostSummaryByResourceRequest,
8741
10257
  CreateAllocationTagRequest: CreateAllocationTagRequest,
8742
10258
  ExcludedProducts: ExcludedProducts,
8743
10259
  PayModeSummaryOverviewItem: PayModeSummaryOverviewItem,
10260
+ DescribeAllocationRuleDetailResponse: DescribeAllocationRuleDetailResponse,
8744
10261
  UsageDetails: UsageDetails,
8745
10262
  AnalyseBusinessDetail: AnalyseBusinessDetail,
8746
10263
  AnalyseConditions: AnalyseConditions,
@@ -8748,27 +10265,37 @@ module.exports = {
8748
10265
  DescribeBillSummaryByProductResponse: DescribeBillSummaryByProductResponse,
8749
10266
  DescribeBillSummaryByRegionResponse: DescribeBillSummaryByRegionResponse,
8750
10267
  CreateAllocationTagResponse: CreateAllocationTagResponse,
10268
+ ModifyAllocationUnitRequest: ModifyAllocationUnitRequest,
8751
10269
  DescribeBillDownloadUrlResponse: DescribeBillDownloadUrlResponse,
8752
10270
  ConsumptionResourceSummaryDataItem: ConsumptionResourceSummaryDataItem,
8753
10271
  DescribeAccountBalanceRequest: DescribeAccountBalanceRequest,
8754
10272
  DescribeBillDetailRequest: DescribeBillDetailRequest,
8755
10273
  AnalyseZoneDetail: AnalyseZoneDetail,
8756
10274
  DescribeVoucherInfoResponse: DescribeVoucherInfoResponse,
8757
- BillDetailAssociatedOrder: BillDetailAssociatedOrder,
10275
+ AllocationRulesSummary: AllocationRulesSummary,
10276
+ SummaryDetail: SummaryDetail,
8758
10277
  DescribeAccountBalanceResponse: DescribeAccountBalanceResponse,
8759
10278
  BusinessSummaryOverviewItem: BusinessSummaryOverviewItem,
10279
+ CreateGatherRuleResponse: CreateGatherRuleResponse,
8760
10280
  UsageRecords: UsageRecords,
10281
+ ModifyAllocationRuleResponse: ModifyAllocationRuleResponse,
8761
10282
  DescribeVoucherInfoRequest: DescribeVoucherInfoRequest,
8762
10283
  DescribeDealsByCondRequest: DescribeDealsByCondRequest,
10284
+ CreateAllocationUnitResponse: CreateAllocationUnitResponse,
8763
10285
  DescribeDosageCosDetailByDateResponse: DescribeDosageCosDetailByDateResponse,
8764
- ProjectSummaryOverviewItem: ProjectSummaryOverviewItem,
10286
+ AnalyseHeaderTimeDetail: AnalyseHeaderTimeDetail,
10287
+ AllocationRuleExpression: AllocationRuleExpression,
8765
10288
  DescribeBillSummaryForOrganizationResponse: DescribeBillSummaryForOrganizationResponse,
10289
+ DeleteAllocationUnitResponse: DeleteAllocationUnitResponse,
8766
10290
  ConditionProject: ConditionProject,
8767
10291
  DescribeTagListResponse: DescribeTagListResponse,
8768
10292
  CosDetailSets: CosDetailSets,
10293
+ DescribeAllocationRuleSummaryRequest: DescribeAllocationRuleSummaryRequest,
10294
+ ModifyAllocationUnitResponse: ModifyAllocationUnitResponse,
8769
10295
  AnalyseConditionDetail: AnalyseConditionDetail,
8770
10296
  BillResourceSummary: BillResourceSummary,
8771
- AnalyseHeaderTimeDetail: AnalyseHeaderTimeDetail,
8772
- DescribeCostSummaryByRegionResponse: DescribeCostSummaryByRegionResponse,
10297
+ DeleteAllocationUnitRequest: DeleteAllocationUnitRequest,
10298
+ DescribeGatherRuleDetailResponse: DescribeGatherRuleDetailResponse,
10299
+ AllocationRuleOverview: AllocationRuleOverview,
8773
10300
 
8774
10301
  }