Beispiel #1
0
def base(is_private,channel, needforward=True, **extra):
    if is_private == False:
        env_name, root_url, live_key, app_id = datagen.get_current_env()
    else:
        env_name, root_url, live_key, app_id = datagen.get_my_env()

    url = "{0}/v1/charges".format(root_url)

    # request body
    charge = Model.ChargeBase.ChargeDict()
    charge['order_no'] = random_str(10)
    charge['subject'] = "Autopay_TestOrder4{0}".format(channel)
    charge['body'] = "appletesting4Pay"
    charge['amount'] = 10
    charge['channel'] = channel
    charge['currency'] = "cny"
    charge['client_ip'] = "127.0.0.1"
    id = [("id", app_id)]
    charge['app'] = dict(id)
    charge['extra'] = extra

    myCharge = APIClient._http_call(url, "POST", "json", "json", None, {"Authorization": "Bearer {0}".format(live_key)},
                                    30, **charge)
    print(myCharge)

    if (needforward):
        time.sleep(5)
        Forward.forward_json(myCharge)
    else:
        return myCharge
Beispiel #2
0
def GetChargeList100_Refund_ByChannel(channel, mode):
    if mode == 0:
        env_name, root_url, live_key, app_id = datagen.get_my_env()
    else:
        env_name, root_url, live_key, app_id = datagen.get_test_env()

    url = "{0}/v1/charges/".format(root_url)
    params = {}
    params["channel"] = channel
    params["limit"] = 100
    params["paid"] = True
    if channel == "alipay":
        params["refunded"] = True
    else:
        params["refunded"] = False
    params["app[id]"] = app_id
    response = APIClient._http_call(
        url, 1, "json", None, {}, {"Authorization": "Bearer {0}".format(live_key)}, 30, **params
    )
    if response["data"] is None or len(response["data"]) == 0:
        logging.info("GetCharge_NoRefund_ByChannel: " + channel + " No charge returned")
        print "GetCharge_NoRefund_ByChannel: " + channel + " No charge returned"
        return
    charge = response["data"]
    return charge
Beispiel #3
0
def GetCharge(is_private,chargeid):
    if is_private==False:
        env_name, root_url, live_key,app_id = datagen.get_current_env()
    else:
        env_name, root_url, live_key,app_id = datagen.get_my_env()

    url = "{0}/v1/charges/{1}".format(root_url,chargeid)
    params ={}
    response = APIClient._http_call(url, 1, 'json', None, {}, {"Authorization": "Bearer {0}".format(live_key)}, 30,
                                    **params)
    print response
Beispiel #4
0
def send(is_private,charge_id, content):
    if is_private==False:
        env_name, root_url, live_key, app_id = datagen.get_current_env()
    else:
        env_name, root_url, live_key, app_id = datagen.get_my_env()

    url = "{0}/notify/charges/{1}".format(root_url, charge_id)
    if isinstance(content, basestring):
        data = {}
        data['value'] = content
        response = APIClient._http_call(url, 'POST', 'text', 'form-urlencoded', None, {}, 30, **data)
    else:
        response = APIClient._http_call(url, 'POST', 'text', 'json', None, {}, 30, **content)
    return response
Beispiel #5
0
def GetOrderList_NotRefund(mode):
    if mode == 0:
        env_name, root_url, live_key, app_id = datagen.get_my_env()
    else:
        env_name, root_url, live_key, app_id = datagen.get_test_env()

    url = "{0}/v1/charges/".format(root_url)
    params = {}
    params["limit"] = 2
    params["paid"] = True
    params["refunded"] = False
    params["app[id]"] = app_id
    response = APIClient._http_call(
        url, 1, "json", None, {}, {"Authorization": "Bearer {0}".format(live_key)}, 30, **params
    )
    if response["data"] == None or len(response["data"]) == 0:
        logging.info("GetOrder_NoRefund_ByChannel: " + " No charge returned")
        print "GetCharge_NoRefund_ByChannel: " + " No charge returned"
        return
    charge = response["data"]
    return charge[0]["order_no"], charge[1]["order_no"]