# -*- coding: UTF-8 -*- import esigntool import requests from esigntool import esign_run_print_outer # 套餐服务API - 套餐购买 - 查询类 config = esigntool.Config() # 初始化配置类 # 查询e签宝套餐余量 @esign_run_print_outer def findOrderQuantity(orgId): """ :param orgId:购买方企业账号 :return:请求响应 """ api_path = "/v3/orders/remaining-quantity?orgId={}&distributor=true".format(orgId) method = esigntool.httpMethodEnum.GET if orgId == "": print("请设置实名企业账号ID") exit() # 签名并构造签名鉴权json请求头 json_headers = esigntool.buildSignJsonHeader(config.appId, config.scert, method, esigntool.apiPathSort(api_path)) # 发起请求 resp = requests.request(method, config.host + api_path, json=None, headers=json_headers) print(resp.text) return resp.text # 查询e签宝套餐license @esign_run_print_outer def findOrderLicense(orgId): """ :param orgId:购买方企业账号 :return:请求响应 """ api_path = "/v1/mix/license/query" method = esigntool.httpMethodEnum.POST body = { "orgOid": orgId, # 机构账号ID(购买方orgId) "page": 1, "pageSize": 20 } if orgId == "": print("请设置实名企业账号ID") exit() # 签名并构造签名鉴权json请求头 json_headers = esigntool.buildSignJsonHeader(config.appId, config.scert, method, api_path, body=body) # 发起请求 resp = requests.request(method, config.host + api_path, json=body, headers=json_headers) print(resp.text) return resp.text # 查询套餐订单列表 @esign_run_print_outer def findOrderList(orgId): """ :param orgId:购买方企业账号 :return:请求响应 """ api_path = "/v3/orders/order-list?orgId={}&distributor=true".format(orgId) method = esigntool.httpMethodEnum.GET if orgId == "": print("请设置实名企业账号ID") exit() # 签名并构造签名鉴权json请求头 json_headers = esigntool.buildSignJsonHeader(config.appId, config.scert, method, esigntool.apiPathSort(api_path)) # 发起请求 resp = requests.request(method, config.host + api_path, json=None, headers=json_headers) print(resp.text) return resp.text # 查询套餐订单列表(页面版) @esign_run_print_outer def getOrderListUrl(orgId, psnId): """ :param orgId:购买方企业账号 :param PsnId:购买方企业经办人账号 :return:请求响应 """ api_path = "/v3/orders/org-order-manage-url" method = esigntool.httpMethodEnum.POST body = { "orgId": orgId, # 机构账号ID(购买方orgId) "transactorPsnId": psnId, "distributor": 'true' } if orgId == "" or psnId == "": print("请设置实名企业账号ID和经办人账号ID") exit() # 签名并构造签名鉴权json请求头 json_headers = esigntool.buildSignJsonHeader(config.appId, config.scert, method, api_path, body=body) # 发起请求 resp = requests.request(method, config.host + api_path, json=body, headers=json_headers) print(resp.text) return resp.text if __name__ == '__main__': if config.appId == "" or config.scert == "": print("请设置应用Appid和应用Secret") exit() orgId = "3236725******98cdf9f18d5" # 请输入实名企业帐号ID psnId = "12394U28935Y******T34Y3894" # 请输入实名个人帐号ID findOrderQuantity(orgId) # 查询e签宝套餐余量 findOrderLicense(orgId) # 查询e签宝套餐license findOrderList(orgId) # 查询套餐订单列表 getOrderListUrl(orgId, psnId) # 查询套餐订单列表(页面版)