コード例 #1
0
def cancelOrder(params):
    print "##### refundQuery() #####"
    p0_Cmd = formatString(params["p0_Cmd"])
    p1_MerId = getOnePar("p1_MerId")
    pb_TrxId = formatString(params["pb_TrxId"])
    pv_Ver = formatString(params["pv_Ver"])
    keyValue = getOnePar("keyValue")
    hmac = digestUtil.getHmac([p0_Cmd, p1_MerId, pb_TrxId, pv_Ver], keyValue)

    cancelParams = {}
    cancelParams["p0_Cmd"] = p0_Cmd
    cancelParams["p1_MerId"] = p1_MerId
    cancelParams["pb_TrxId"] = pb_TrxId
    cancelParams["hmac"] = hmac

    cancelOrderURL = getOnePar("cancelOrderURL")
    print "cancelParams: ", cancelParams
    print "cancelOrderURL: ", cancelOrderURL
    cancelResult = {}
    r0_Cmd = ""
    r1_Code = ""
    hmacFromYeepay = ""
    errorMsg = ""
    hmacError = ""
    responseList = []
    try:
        responseList = httpUtils.URLGet(cancelOrderURL, cancelParams)
        print "responseList, ", responseList
    except Exception, e:
        print e
コード例 #2
0
def refundQuery(params):
    print "##### refundQuery() #####"
    p0_Cmd = "RefundResults"
    p1_MerId = getOnePar("p1_MerId")
    p2_Order = formatString(params["p2_Order"])
    pb_TrxId = formatString(params["pb_TrxId"])
    keyValue = getOnePar("keyValue")
    hmac = digestUtil.getHmac([p0_Cmd, p1_MerId, p2_Order, pb_TrxId], keyValue)

    refundQueryParams = {}
    refundQueryParams["p0_Cmd"] = p0_Cmd
    refundQueryParams["p1_MerId"] = p1_MerId
    refundQueryParams["p2_Order"] = p2_Order
    refundQueryParams["pb_TrxId"] = pb_TrxId
    refundQueryParams["hmac"] = hmac
    refundQueryURL = getOnePar("refundQueryURL")
    refundQueryResult = {}
    r0_Cmd = ""
    r1_Code = ""
    r2_TrxId = ""
    r4_Order = ""
    refundStatus = ""
    refundFrpStatus = ""
    hmacFromYeepay = ""
    errorMsg = ""
    hmacError = ""
    responseList = []
    try:
        responseList = httpUtils.URLGet(refundQueryURL, refundQueryParams)
        print "responseList, ", responseList
    except Exception, e:
        print e
コード例 #3
0
def verifyCallbackHmac(stringValue, hmacFromYeepay):
    print "##### verifyCallbackHmac() #####"
    keyValue = getOnePar("keyValue")
    sourceData = ""
    for item in stringValue:
        sourceData += item
    print "sourceData: ", sourceData
    localHmac = digestUtil.getHmac(stringValue, keyValue)
    if localHmac == hmacFromYeepay:
        return True
    else:
        return False
コード例 #4
0
def queryByOrder(order):
    print "#### queryByOrder() ####"
    p0_Cmd = "QueryOrdDetail"
    p1_MerId = getOnePar("p1_MerId")
    p2_Order = order
    pd_Ver = "3.0"
    keyValue = getOnePar("keyValue")
    hmac = digestUtil.getHmac([p0_Cmd, p1_MerId, p2_Order, pd_Ver], keyValue)

    queryParams = {}
    queryParams.setdefault("p0_Cmd", p0_Cmd)
    queryParams.setdefault("p1_MerId", p1_MerId)
    queryParams.setdefault("p2_Order", p2_Order)
    queryParams.setdefault("hmac", hmac)
    queryURL = getOnePar("queryURL")
    print "queryParams: ", queryParams
    print "queryURL: ", queryURL
    queryResult = {}
    r0_Cmd = ""
    r1_Code = ""
    r2_TrxId = ""
    r3_Amt = ""
    r4_Cur = ""
    r5_Pid = ""
    r6_Order = ""
    r8_MP = ""
    rw_RefundRequestID = ""
    rx_CreateTime = ""
    ry_FinishTime = ""
    rz_RefundAmount = ""
    rb_PayStatus = ""
    rc_RefundCount = ""
    rd_RefundAmt = ""
    hmacFromYeepay = ""
    errorMsg = ""
    hmacError = ""
    responseList = []
    try:
        responseList = httpUtils.URLGet(queryURL, queryParams)
        print "responseList: ", responseList
    except Exception, e:
        print e
コード例 #5
0
def refundByTrxId(params):
    print "#### refundByTrxId() ####"
    p0_Cmd = formatString(params["p0_Cmd"])
    p1_MerId = getOnePar("p1_MerId")
    pb_TrxId = formatString(params["pb_TrxId"])
    p3_Amt = formatString(params["p3_Amt"])
    p4_Cur = formatString(params["p4_Cur"])
    p5_Desc = formatString(params["p5_Desc"])
    keyValue = getOnePar("keyValue")
    strArr = [p0_Cmd, p1_MerId, pb_TrxId, p3_Amt, p4_Cur, p5_Desc]
    hmac = digestUtil.getHmac(strArr, keyValue)
    print hmac
    refundParams = {}
    refundParams["p0_Cmd"] = p0_Cmd
    refundParams["p1_MerId"] = p1_MerId
    refundParams["pb_TrxId"] = pb_TrxId
    refundParams["p3_Amt"] = p3_Amt
    refundParams["p4_Cur"] = p4_Cur
    refundParams["p5_Desc"] = p5_Desc
    refundParams["hmac"] = hmac
    print "refundParams: ", refundParams
    refundURL = getOnePar("refundURL")
    refundResult = {}
    r0_Cmd = ""
    r1_Code = ""
    r2_TrxId = ""
    r3_Amt = ""
    r4_Cur = ""
    r4_Order = ""
    rf_fee = ""
    hmacFromYeepay = ""
    errorMsg = ""
    hmacError = ""
    responseList = []
    try:
        responseList = httpUtils.URLGet(refundURL, refundParams)
        print "responseList: ", responseList
    except Exception, e:
        print e
コード例 #6
0
def getPayURL(kargs):
    print "#### getPayURL() ####"
    params = copy.deepcopy(default_params)
    params.update(kargs)
    p0_Cmd = formatString(params["p0_Cmd"])
    p1_MerId = getOnePar("p1_MerId")
    p2_Order = formatString(params["p2_Order"])
    p3_Amt = formatString(params["p3_Amt"])
    p4_Cur = formatString(params["p4_Cur"])
    p5_Pid = formatString(params["p5_Pid"])
    p6_Pcat = formatString(params["p6_Pcat"])  # 商品种类
    p7_Pdesc = formatString(params["p7_Pdesc"])  # 商品描述
    p8_Url = formatString(params["p8_Url"])
    if getOnePar("p8_Url"):
        p8_Url = getOnePar("p8_Url")
    p9_SAF = formatString(params["p9_SAF"])
    pa_MP = formatString(params["pa_MP"])
    pd_FrpId = formatString(params["pd_FrpId"])

    pm_Period = formatString(fillNoneKey("pm_Period", params))
    pn_Unit = formatString(fillNoneKey("pn_Unit", params))
    pr_NeedResponse = formatString(params["pr_NeedResponse"])
    pt_UserName = formatString(fillNoneKey("pt_UserName", params))
    pt_PostalCode = formatString(fillNoneKey("pt_PostalCode", params))
    pt_Address = formatString(fillNoneKey("pt_Address", params))
    pt_TeleNo = formatString(fillNoneKey("pt_TeleNo", params))
    pt_Mobile = formatString(fillNoneKey("pt_Mobile", params))
    pt_Email = formatString(fillNoneKey("pt_Email", params))
    keyValue = getOnePar("keyValue")

    strArr = [
        p0_Cmd, p1_MerId, p2_Order, p3_Amt, p4_Cur, p5_Pid, p6_Pcat, p7_Pdesc,
        p8_Url, p9_SAF, pa_MP, pd_FrpId, pm_Period, pn_Unit, pr_NeedResponse,
        pt_UserName, pt_PostalCode, pt_Address, pt_TeleNo, pt_Mobile, pt_Email
    ]
    hmac = digestUtil.getHmac(strArr, keyValue)

    try:
        p0_Cmd = p0_Cmd.decode("utf-8").encode("gbk")
        p1_MerId = p1_MerId.decode("utf-8").encode("gbk")
        p2_Order = p2_Order.decode("utf-8").encode("gbk")
        p3_Amt = p3_Amt.decode("utf-8").encode("gbk")
        p4_Cur = p4_Cur.decode("utf-8").encode("gbk")
        p5_Pid = p5_Pid.decode("utf-8").encode("gbk")
        p6_Pcat = p6_Pcat.decode("utf-8").encode("gbk")
        p7_Pdesc = p7_Pdesc.decode("utf-8").encode("gbk")
        p8_Url = p8_Url.decode("utf-8").encode("gbk")
        p9_SAF = p9_SAF.decode("utf-8").encode("gbk")
        pa_MP = pa_MP.decode("utf-8").encode("gbk")
        pd_FrpId = pd_FrpId.decode("utf-8").encode("gbk")
        pm_Period = pm_Period.decode("utf-8").encode("gbk")
        pn_Unit = pn_Unit.decode("utf-8").encode("gbk")
        pr_NeedResponse = pr_NeedResponse.decode("utf-8").encode("gbk")
        pt_UserName = pt_UserName.decode("utf-8").encode("gbk")
        pt_PostalCode = pt_PostalCode.decode("utf-8").encode("gbk")
        pt_Address = pt_Address.decode("utf-8").encode("gbk")
        pt_TeleNo = pt_TeleNo.decode("utf-8").encode("gbk")
        pt_Mobile = pt_Mobile.decode("utf-8").encode("gbk")
        pt_Email = pt_Email.decode("utf-8").encode("gbk")
        hmac = hmac.decode("utf-8").encode("gbk")
    except Exception, e:
        print e
コード例 #7
0
                elif itemKey == "rz_RefundAmount":
                    rz_RefundAmount = itemValue
                elif itemKey == "rb_PayStatus":
                    rb_PayStatus = itemValue
                elif itemKey == "rc_RefundCount":
                    rc_RefundCount = itemValue
                elif itemKey == "rd_RefundAmt":
                    rd_RefundAmt = itemValue
                elif itemKey == "hmac":
                    hmacFromYeepay = itemValue
        stringArr = [
            r0_Cmd, r1_Code, r2_TrxId, r3_Amt, r4_Cur, r5_Pid, r6_Order, r8_MP,
            rw_RefundRequestID, rx_CreateTime, ry_FinishTime, rz_RefundAmount,
            rb_PayStatus, rc_RefundCount, rd_RefundAmt
        ]
        localHmac = digestUtil.getHmac(stringArr, keyValue)
        if localHmac != hmacFromYeepay:
            hmacError = "Hmac不匹配! hmacFromYeepay: %s; localHmac: %s" % (
                hmacFromYeepay, localHmac)
            temp = ""
            for ele in stringArr:
                temp += ele

    queryResult["r0_Cmd"] = r0_Cmd
    queryResult["r1_Code"] = r1_Code
    queryResult["r2_TrxId"] = r2_TrxId
    queryResult["r3_Amt"] = r3_Amt
    queryResult["r4_Cur"] = r4_Cur
    queryResult["r5_Pid"] = r5_Pid
    queryResult["r6_Order"] = r6_Order
    queryResult["r8_MP"] = r8_MP