Skip to content

Commit 3117203

Browse files
author
fengyikai
committed
trade:支持实例搜索接口
1 parent 8bf13aa commit 3117203

14 files changed

Lines changed: 469 additions & 5 deletions

File tree

ksyun/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,4 +14,4 @@
1414
# limitations under the License.
1515

1616

17-
__version__ = '1.5.8.14'
17+
__version__ = '1.5.8.15'

ksyun/client/trade/v20200114/client.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ class TradeClient(AbstractClient):
88
_apiVersion = '2020-01-14'
99
_endpoint = 'trade.api.ksyun.com'
1010
_service = 'trade'
11-
1211
def DescribeInstances(self, request):
1312
"""实例信息描述
1413
:param request: Request instance for DescribeInstances.

ksyun/client/trade/v20200114/models.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
from ksyun.common.abstract_model import AbstractModel
22

3-
43
class DescribeInstancesRequest(AbstractModel):
54
"""DescribeInstances请求参数结构体
65
"""

ksyun/client/trade/v20200831/client.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ class TradeClient(AbstractClient):
88
_apiVersion = '2020-08-31'
99
_endpoint = 'trade.api.ksyun.com'
1010
_service = 'trade'
11-
1211
def SetRenewal(self, request):
1312
"""批量设置实例续费策略
1413
:param request: Request instance for SetRenewal.

ksyun/client/trade/v20200831/models.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
from ksyun.common.abstract_model import AbstractModel
22

3-
43
class SetRenewalRequest(AbstractModel):
54
"""SetRenewal请求参数结构体
65
"""

ksyun/client/trade/v20250220/__init__.py

Whitespace-only changes.
Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
import json
2+
3+
from ksyun.common.exception.ksyun_sdk_exception import KsyunSDKException
4+
from ksyun.common.abstract_client import AbstractClient
5+
6+
7+
class TradeClient(AbstractClient):
8+
_apiVersion = '2025-02-20'
9+
_endpoint = 'trade.api.ksyun.com'
10+
_service = 'trade'
11+
12+
def ListInstanceSupportBillTypes(self, request):
13+
"""实例转正,支持重新指定正式实例的计费方式,实例获取支持的计费方式列表
14+
:param request: Request instance for ListInstanceSupportBillTypes.
15+
:type request: :class:`ksyun.client.trade.v20250220.models.ListInstanceSupportBillTypesRequest`
16+
"""
17+
try:
18+
params = request._serialize()
19+
body = self.call_judge("ListInstanceSupportBillTypes", params, "application/json")
20+
response = json.loads(body)
21+
if "Error" not in response:
22+
return body
23+
else:
24+
code = response["Error"]["Code"]
25+
message = response["Error"]["Message"]
26+
req_id = response["RequestId"]
27+
raise KsyunSDKException(code, message, req_id)
28+
except Exception as e:
29+
if isinstance(e, KsyunSDKException):
30+
raise
31+
else:
32+
raise KsyunSDKException(e.message, e.message)
33+
34+
def AddTrialToBuyTask(self, request):
35+
"""添加定时转正的任务,支持到期转正和指定时间点转正。 可重复提交,最后一次提交会覆盖之前的提交,相当于更新。
36+
:param request: Request instance for AddTrialToBuyTask.
37+
:type request: :class:`ksyun.client.trade.v20250220.models.AddTrialToBuyTaskRequest`
38+
"""
39+
try:
40+
params = request._serialize()
41+
body = self.call_judge("AddTrialToBuyTask", params, "application/json")
42+
response = json.loads(body)
43+
if "Error" not in response:
44+
return body
45+
else:
46+
code = response["Error"]["Code"]
47+
message = response["Error"]["Message"]
48+
req_id = response["RequestId"]
49+
raise KsyunSDKException(code, message, req_id)
50+
except Exception as e:
51+
if isinstance(e, KsyunSDKException):
52+
raise
53+
else:
54+
raise KsyunSDKException(e.message, e.message)
55+
56+
def DeleteTrialToBuyTask(self, request):
57+
"""取消已经提交的转正任务。
58+
:param request: Request instance for DeleteTrialToBuyTask.
59+
:type request: :class:`ksyun.client.trade.v20250220.models.DeleteTrialToBuyTaskRequest`
60+
"""
61+
try:
62+
params = request._serialize()
63+
body = self.call_judge("DeleteTrialToBuyTask", params, "application/json")
64+
response = json.loads(body)
65+
if "Error" not in response:
66+
return body
67+
else:
68+
code = response["Error"]["Code"]
69+
message = response["Error"]["Message"]
70+
req_id = response["RequestId"]
71+
raise KsyunSDKException(code, message, req_id)
72+
except Exception as e:
73+
if isinstance(e, KsyunSDKException):
74+
raise
75+
else:
76+
raise KsyunSDKException(e.message, e.message)
77+
78+
def CreateTrialToBuyNow(self, request):
79+
"""创建转正订单,立即将实例转成正式实例。
80+
:param request: Request instance for CreateTrialToBuyNow.
81+
:type request: :class:`ksyun.client.trade.v20250220.models.CreateTrialToBuyNowRequest`
82+
"""
83+
try:
84+
params = request._serialize()
85+
body = self.call_judge("CreateTrialToBuyNow", params, "application/json")
86+
response = json.loads(body)
87+
if "Error" not in response:
88+
return body
89+
else:
90+
code = response["Error"]["Code"]
91+
message = response["Error"]["Message"]
92+
req_id = response["RequestId"]
93+
raise KsyunSDKException(code, message, req_id)
94+
except Exception as e:
95+
if isinstance(e, KsyunSDKException):
96+
raise
97+
else:
98+
raise KsyunSDKException(e.message, e.message)
Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
from ksyun.common.abstract_model import AbstractModel
2+
3+
4+
class ListInstanceSupportBillTypesRequest(AbstractModel):
5+
"""ListInstanceSupportBillTypes请求参数结构体
6+
"""
7+
8+
def __init__(self):
9+
r"""实例转正,支持重新指定正式实例的计费方式,实例获取支持的计费方式列表
10+
:param instanceId: 实例ID
11+
:type PathPrefix: String
12+
"""
13+
self.instanceId = None
14+
15+
def _deserialize(self, params):
16+
if params.get("instanceId"):
17+
self.instanceId = params.get("instanceId")
18+
19+
20+
class AddTrialToBuyTaskRequest(AbstractModel):
21+
"""AddTrialToBuyTask请求参数结构体
22+
"""
23+
24+
def __init__(self):
25+
r"""添加定时转正的任务,支持到期转正和指定时间点转正。 可重复提交,最后一次提交会覆盖之前的提交,相当于更新。
26+
:param instanceId: 实例id
27+
:type PathPrefix: String
28+
:param billType: 计费方式。默认按照当前实例的计费方式进行转正。支持的计费方式列表通过ListInstanceSupportBillTypes接口获取
29+
:type PathPrefix: Int
30+
:param duration: 转正为包年包月时,必须填写正式实例购买时长,单位月
31+
:type PathPrefix: Int
32+
:param autoTrialToBuyDate: 指定转正日期,格式为yyyy-MM-dd HH:mm:ss。默认是到期时间点转正。
33+
:type PathPrefix: String
34+
"""
35+
self.instanceId = None
36+
self.billType = None
37+
self.duration = None
38+
self.autoTrialToBuyDate = None
39+
40+
def _deserialize(self, params):
41+
if params.get("instanceId"):
42+
self.instanceId = params.get("instanceId")
43+
if params.get("billType"):
44+
self.billType = params.get("billType")
45+
if params.get("duration"):
46+
self.duration = params.get("duration")
47+
if params.get("autoTrialToBuyDate"):
48+
self.autoTrialToBuyDate = params.get("autoTrialToBuyDate")
49+
50+
51+
class DeleteTrialToBuyTaskRequest(AbstractModel):
52+
"""DeleteTrialToBuyTask请求参数结构体
53+
"""
54+
55+
def __init__(self):
56+
r"""取消已经提交的转正任务。
57+
:param instanceId: 实例id
58+
:type PathPrefix: String
59+
"""
60+
self.instanceId = None
61+
62+
def _deserialize(self, params):
63+
if params.get("instanceId"):
64+
self.instanceId = params.get("instanceId")
65+
66+
67+
class CreateTrialToBuyNowRequest(AbstractModel):
68+
"""CreateTrialToBuyNow请求参数结构体
69+
"""
70+
71+
def __init__(self):
72+
r"""创建转正订单,立即将实例转成正式实例。
73+
:param instanceId: 实例ID
74+
:type PathPrefix: String
75+
:param billType: 计费方式。默认按照当前实例的计费方式进行转正。支持的计费方式列表通过ListInstanceSupportBillTypes接口获取
76+
:type PathPrefix: Int
77+
:param duration: 转正为包年包月时,必须填写正式实例购买时长,单位月
78+
:type PathPrefix: Int
79+
"""
80+
self.instanceId = None
81+
self.billType = None
82+
self.duration = None
83+
84+
def _deserialize(self, params):
85+
if params.get("instanceId"):
86+
self.instanceId = params.get("instanceId")
87+
if params.get("billType"):
88+
self.billType = params.get("billType")
89+
if params.get("duration"):
90+
self.duration = params.get("duration")

ksyun/client/trade/v20250321/__init__.py

Whitespace-only changes.
Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
import json
2+
3+
from ksyun.common.exception.ksyun_sdk_exception import KsyunSDKException
4+
from ksyun.common.abstract_client import AbstractClient
5+
6+
7+
class TradeClient(AbstractClient):
8+
_apiVersion = '2025-03-21'
9+
_endpoint = 'trade.api.ksyun.com'
10+
_service = 'trade'
11+
12+
def QueryUnPayOrders(self, request):
13+
"""查询主账号待支付的订单列表
14+
:param request: Request instance for QueryUnPayOrders.
15+
:type request: :class:`ksyun.client.trade.v20250321.models.QueryUnPayOrdersRequest`
16+
"""
17+
try:
18+
params = request._serialize()
19+
body = self.call_judge("QueryUnPayOrders", params, "application/x-www-form-urlencoded")
20+
response = json.loads(body)
21+
if "Error" not in response:
22+
return body
23+
else:
24+
code = response["Error"]["Code"]
25+
message = response["Error"]["Message"]
26+
req_id = response["RequestId"]
27+
raise KsyunSDKException(code, message, req_id)
28+
except Exception as e:
29+
if isinstance(e, KsyunSDKException):
30+
raise
31+
else:
32+
raise KsyunSDKException(e.message, e.message)
33+
34+
def QueryOrderInfo(self, request):
35+
"""根据订单ID查询订单信息
36+
:param request: Request instance for QueryOrderInfo.
37+
:type request: :class:`ksyun.client.trade.v20250321.models.QueryOrderInfoRequest`
38+
"""
39+
try:
40+
params = request._serialize()
41+
body = self.call_judge("QueryOrderInfo", params, "application/x-www-form-urlencoded")
42+
response = json.loads(body)
43+
if "Error" not in response:
44+
return body
45+
else:
46+
code = response["Error"]["Code"]
47+
message = response["Error"]["Message"]
48+
req_id = response["RequestId"]
49+
raise KsyunSDKException(code, message, req_id)
50+
except Exception as e:
51+
if isinstance(e, KsyunSDKException):
52+
raise
53+
else:
54+
raise KsyunSDKException(e.message, e.message)
55+
56+
def CancelOrder(self, request):
57+
"""取消还未支付的订单,取消后不能再支付
58+
:param request: Request instance for CancelOrder.
59+
:type request: :class:`ksyun.client.trade.v20250321.models.CancelOrderRequest`
60+
"""
61+
try:
62+
params = request._serialize()
63+
body = self.call_judge("CancelOrder", params, "application/x-www-form-urlencoded")
64+
response = json.loads(body)
65+
if "Error" not in response:
66+
return body
67+
else:
68+
code = response["Error"]["Code"]
69+
message = response["Error"]["Message"]
70+
req_id = response["RequestId"]
71+
raise KsyunSDKException(code, message, req_id)
72+
except Exception as e:
73+
if isinstance(e, KsyunSDKException):
74+
raise
75+
else:
76+
raise KsyunSDKException(e.message, e.message)
77+
78+
def LaunchPayOrder(self, request):
79+
"""通过订单ID支付订单,会自动扣余额的金额
80+
:param request: Request instance for LaunchPayOrder.
81+
:type request: :class:`ksyun.client.trade.v20250321.models.LaunchPayOrderRequest`
82+
"""
83+
try:
84+
params = request._serialize()
85+
body = self.call_judge("LaunchPayOrder", params, "application/x-www-form-urlencoded")
86+
response = json.loads(body)
87+
if "Error" not in response:
88+
return body
89+
else:
90+
code = response["Error"]["Code"]
91+
message = response["Error"]["Message"]
92+
req_id = response["RequestId"]
93+
raise KsyunSDKException(code, message, req_id)
94+
except Exception as e:
95+
if isinstance(e, KsyunSDKException):
96+
raise
97+
else:
98+
raise KsyunSDKException(e.message, e.message)

0 commit comments

Comments
 (0)