Esempio n. 1
0
    /// <summary>
    /// 支付订单
    /// </summary>
    public override void PayOrder(PayOrderData arg)
    {
        if (arg == null)
        {
            DebugLog("充值失败!充值数据为空 !" + arg);
            return;
        }
        PayDataModel sendModel = new PayDataModel()
        {
        };

        sendModel.amount       = arg.amount.ToString("#0.00");         //单位为元,小数点最多2位
        sendModel.notifyUrl    = OrderCallBackUrl;
        sendModel.cpOrderId    = arg.productId + GetCurrentTimeMiss(); //订单id:商品id号+10位数的时间戳
        sendModel.callbackInfo = arg.callbackMessage;
        sendModel.signType     = "MD5";                                //签名类型,MD5或者RSA,该参数不需要参与签名目前只支持MD5
        sendModel.accountId    = accountId;                            //让服务器赋值

        //TODO 让服务器对model进行签名再发送
        onCreateOrderSuccessComplete = (signString) =>
        {
            DebugLog("收到订单签名:" + signString);
            sendModel.sign = signString;
            string tojsonString = JsonMapper.ToJson(sendModel);
            DebugLog("jsonString:" + tojsonString);
            CallAndoridFunc("PayOrder", tojsonString);
            DebugLog("123213213222222222222222222222222");
            AndroidPlatSDKManager.Instance.ChangeSDKManagerPayOrderState(SDKManagerPayOrderState.PayOrder_CreateSuccess);
        };
        onCreateOrderSuccessComplete("qqqqqqqqqqqqq");
    }
Esempio n. 2
0
 /// <summary>
 /// 申请支付订单
 /// </summary>
 public void PayOrder(PayOrderData arg)
 {
     if (currentSDKLoginState != SDKManagerLoginState.Login_Success)
     {
         DebugLog("SDKManger 未成功登录!请再次登入!");
         return;
     }
     if (currentSDKPayOrderState == SDKManagerPayOrderState.PayOrder_Un || currentSDKPayOrderState == SDKManagerPayOrderState.PayingOrder_Success)
     {
         currentSDKPayOrderState = SDKManagerPayOrderState.PayOrder_Createing;
         currentSDKManager.PayOrder(arg);
     }
     else
     {
         DebugLog("当前正在支付或者订单支付失败!支付状态码:" + currentSDKPayOrderState);
     }
 }
Esempio n. 3
0
    /// <summary>
    /// 支付订单
    /// </summary>
    public override void PayOrder(PayOrderData arg)
    {
        if (arg == null)
        {
            DebugLog("充值失败!充值数据为空 !" + arg);
            return;
        }
        PayDataModel sendModel = new PayDataModel()
        {
        };

        sendModel.amount      = (int)(arg.amount * 100);//单位为分 - 故20元= 2000分
        sendModel.productName = arg.productName;
        sendModel.productDesc = arg.productDesc;
        sendModel.callbackUrl = OrderCallBackUrl;
        sendModel.order       = arg.productId + GetCurrentTimeMiss();//订单id:商品id号+10位数的时间戳
        sendModel.attach      = arg.callbackMessage;

        CallAndoridFunc("PayOrder", JsonMapper.ToJson(sendModel));
    }
Esempio n. 4
0
    /// <summary>
    /// 支付订单
    /// </summary>
    public override void PayOrder(PayOrderData arg)
    {
        if (arg == null)
        {
            DebugLog("充值失败!充值数据为空 !" + arg);
            return;
        }
        PayDataModel sendModel = new PayDataModel();

        sendModel.amount      = string.Format("{0:F2}", arg.amount);//单位为元,5元 = 5.00
        sendModel.productDesc = arg.productDesc;
        sendModel.productName = arg.productName;
        sendModel.requesId    = arg.productId + GetCurrentTimeMiss();//订单号

        //固定参数
        sendModel.applicationID  = appId;
        sendModel.merchantId     = merchantId;
        sendModel.merchantName   = merchantName;
        sendModel.serviceCatalog = "X6";
        sendModel.sdkChannel     = 3;

        sendModel.url         = payResultCallBackUrl;
        sendModel.currency    = "CNY";
        sendModel.country     = "CN";
        sendModel.urlVer      = "2";
        sendModel.extReserved = "侧保留字段,回调给服务器!";

        sendModel.sign = "将当前model发送给服务器签名返回的数据!";


        // 签名sign
        RsgSign(PaySignUtilgetStringForSign(sendModel), (sign) =>
        {
            sendModel.sign = sign;
            DebugLog("签名成功sign:" + sign);

            //TODO  将服务器生成的具体订单model发送给sdk
            CallAndoridFunc("PayOrder", JsonMapper.ToJson(sendModel));
            AndroidPlatSDKManager.Instance.ChangeSDKManagerPayOrderState(SDKManagerPayOrderState.PayOrder_CreateSuccess);
        });
    }
Esempio n. 5
0
    /// <summary>
    /// 支付订单
    /// </summary>
    public override void PayOrder(PayOrderData arg)
    {
        if (arg == null)
        {
            DebugLog("充值失败!充值数据为空 !" + arg);
            return;
        }
        PayDataModel sendModel = new PayDataModel()
        {
        };

        sendModel.mProductPrice = ((int)(arg.amount * 100)).ToString();//单位为分,5元 = 600
        sendModel.mProductName  = arg.productName;
        sendModel.mProductDes   = arg.productDesc;
        sendModel.mAppId        = appid;
        sendModel.mUid          = uid;

        //可选项 - 暂时不填
        //sendModel.mBlance = string.Empty;//账户余额
        //sendModel.mVip = string.Empty;//vip等级
        //sendModel.mLevel = string.Empty;//用户等级
        //sendModel.mParty = string.Empty;//工会
        //sendModel.mRoleId = string.Empty;//角色id
        //sendModel.mRoleName = string.Empty;//角色名字
        //sendModel.mServerName = string.Empty;//区服名字
        // sendModel.mExtInfo = arg.callbackMessage;//扩展参数


        //TODO 将model发送给服务器,获生成具体订单信息
        sendModel.mTransNo       = "";
        sendModel.mVivoSignature = "";


        //TODO  将服务器生成的具体订单model发送给sdk
        CallAndoridFunc("PayOrder", JsonMapper.ToJson(sendModel));
        AndroidPlatSDKManager.Instance.ChangeSDKManagerPayOrderState(SDKManagerPayOrderState.PayOrder_Createing);
    }
Esempio n. 6
0
 /// <summary>
 /// 支付订单
 /// </summary>
 public abstract void PayOrder(PayOrderData arg);