Exemplo n.º 1
0
 public function UpmpPayFeedback($payResult, $orderId)
 {
     $logger = Logger::getLogger('mobilerecharge');
     $logger->debug("开始处理银联支付({$orderId})返回的数据");
     if ($payResult == "cace2a1f74fa974808c185f17ef557de" || $payResult == "00") {
         $logger->debug("正在处理银联支付({$orderId})返回的数据 : 支付成功");
         $payResult = array();
         $payResult["returnCode"] = 1;
         MobileRecharge::PayFeedback($payResult, $orderId);
     } else {
         $logger->debug("结束处理银联支付({$orderId})返回的数据 : 支付失败");
     }
 }
 public function changePayTranstatus($bkordernumber, $transStatus, $paytype)
 {
     $dbmsale = new DB_mssale();
     $nowdate = date("Y-m-d H:i:s");
     switch (trim($paytype)) {
         case "coupon":
             //购买抵用券
             $query = "update tb_couponsale set fd_couponsale_payrq = '{$transStatus}' where fd_couponsale_bkordernumber = '{$bkordernumber}' ";
             $this->DB_test->query($query);
             $query = "update  tb_agentpaymoneylist set fd_agpm_payrq ='{$transStatus}',fd_agpm_datetime = now()  where fd_agpm_bkordernumber = '{$bkordernumber}'";
             $this->DB_test->query($query);
             break;
         case "creditcard":
             //信用卡还款
             $query = "update tb_creditcardglist set fd_ccglist_payrq ='{$transStatus}',fd_ccglist_paydate = '{$nowdate}' where fd_ccglist_bkordernumber = '{$bkordernumber}'";
             $this->DB_test->query($query);
             $query = "update  tb_agentpaymoneylist set fd_agpm_payrq ='{$transStatus}',fd_agpm_datetime = now()  where fd_agpm_bkordernumber = '{$bkordernumber}'";
             $this->DB_test->query($query);
             break;
         case "recharge":
             //充值
             $query = "update  tb_rechargeglist set fd_rechargelist_payrq ='{$transStatus}' where fd_rechargelist_bkordernumber = '{$bkordernumber}'";
             $this->DB_test->query($query);
             $query = "update  tb_agentpaymoneylist set fd_agpm_payrq ='{$transStatus}',fd_agpm_datetime = now()  where fd_agpm_bkordernumber = '{$bkordernumber}'";
             $this->DB_test->query($query);
             $rechange = 'account';
             break;
         case "repay":
             //还贷款
             $query = "update  tb_repaymoneyglist set fd_repmglist_payrq ='{$transStatus}' ,fd_repmglist_paydate ='{$nowdate}'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t          where fd_repmglist_bkordernumber = '{$bkordernumber}'";
             $this->DB_test->query($query);
             $query = "update  tb_agentpaymoneylist set fd_agpm_payrq ='{$transStatus}',fd_agpm_datetime = now()  where fd_agpm_bkordernumber = '{$bkordernumber}'";
             $this->DB_test->query($query);
             break;
         case "order":
             //订单付款
             $query = "update tb_orderpayglist set fd_oplist_payrq ='{$transStatus}',fd_oplist_paydate = '{$nowdate}' where fd_oplist_bkordernumber = '{$bkordernumber}'";
             $this->DB_test->query($query);
             $query = "update  tb_agentpaymoneylist set fd_agpm_payrq ='{$transStatus}',fd_agpm_datetime = now()  where fd_agpm_bkordernumber = '{$bkordernumber}'";
             $this->DB_test->query($query);
             $rechange = 'order';
             break;
         case "tfmg":
             //转账汇款
             $query = "update  tb_transfermoneyglist set fd_tfmglist_payrq ='{$transStatus}' ,fd_tfmglist_paydate ='{$nowdate}'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t          where fd_tfmglist_bkordernumber = '{$bkordernumber}'";
             $this->DB_test->query($query);
             $query = "update  tb_agentpaymoneylist set fd_agpm_payrq ='{$transStatus}',fd_agpm_datetime = now()  where fd_agpm_bkordernumber = '{$bkordernumber}'";
             $this->DB_test->query($query);
             break;
         case "suptfmg":
             //转账汇款
             $query = "update  tb_transfermoneyglist set fd_tfmglist_payrq ='{$transStatus}' ,fd_tfmglist_paydate ='{$nowdate}'\n\t\t\t\t\t\t  where fd_tfmglist_bkordernumber = '{$bkordernumber}'";
             $this->DB_test->query($query);
             $query = "update  tb_agentpaymoneylist set fd_agpm_payrq ='{$transStatus}',fd_agpm_datetime = now()  where fd_agpm_bkordernumber = '{$bkordernumber}'";
             $this->DB_test->query($query);
             break;
         case "mobilerecharge":
             //手机充值
             MobileRecharge::UpmpPayFeedback($transStatus, $bkordernumber);
             break;
         case "qqrecharge":
             //手机充值
             $query = "update tb_qqrechargelist set fd_mrclist_payrq ='{$transStatus}' where  fd_mrclist_bkordernumber = '{$bkordernumber}'";
             $this->DB_test->query($query);
             if ($transStatus == '00') {
                 // echo "<br>这是调用欧飞接口:".$query;
                 $return = $this->Tfb_ThirdApi->qqrecharge($bkordernumber, $transStatus);
                 return $return;
                 // exit;
                 //return
             }
             break;
         case "utility":
             if ($transStatus == '00') {
                 return true;
             } else {
                 return false;
             }
         case "gamerecharge":
             if ($transStatus == '00') {
                 return true;
             } else {
                 return false;
             }
         default:
             break;
     }
     switch ($rechange) {
         case "account":
             $query = "select fd_agpm_paycardid as paycardid,fd_agpm_authorid as authorid , fd_agpm_bkmoney as bkmoney," . "fd_agpm_paytype as paytype , fd_agpm_bkordernumber as bkordernumber \n\t\t\t\t\t\t\t\t\t\t  from tb_agentpaymoneylist where fd_agpm_bkordernumber = '{$bkordernumber}' and fd_agpm_payrq = '00' \n\t\t\t\t\t\t\t\t\t\t  limit 1";
             //交易成功的才执行
             if ($this->DB_test->execute($query)) {
                 $arr_payinfo = $this->DB_test->get_one($query);
                 if ($this->TfbAccount->changeAccountglist($arr_payinfo)) {
                     $getacc = $this->TfbAccount->changeAccount($arr_payinfo);
                 }
             }
             break;
         case "order":
             /*				$query = "select fd_oplist_paycardid as paycardid,fd_oplist_authorid as authorid , fd_oplist_paymoney as bkmoney," .
             				"fd_oplist_paytype as paytype , fd_oplist_bkordernumber as bkordernumber 
             										  from tb_orderpayglist where fd_oplist_bkordernumber = '$bkordernumber' and fd_oplist_payrq = '00' 
             										  limit 1"; //交易成功的才执行 
             				if ($this->DB_test->execute($query)) {
             					$arr_payinfo = $this->DB_test->get_one($query);
             
             					if ($this->TfbAccount->changeAccountglist($arr_payinfo)) //如果账户流水改变,则修改账户金额
             						{
             						$getacc = $this->TfbAccount->changeAccount($arr_payinfo);
             					}
             				}*/
             $query = "select fd_oplist_orderid as orderid from tb_orderpayglist where fd_oplist_payrq ='00' " . "and  fd_oplist_bkordernumber = '{$bkordernumber}'";
             $arr_oporderinfo = $this->DB_test->get_one($query);
             $orderid = $arr_oporderinfo['orderid'];
             $query = "update web_order set fd_order_state = '7' where fd_order_id = '{$orderid}'";
             $dbmsale->query($query);
             break;
     }
     return true;
 }
Exemplo n.º 3
0
<?php

// 20140728
require_once "../../include/config.inc.php";
require_once "../../class/Logger.php";
Logger::configure("../../class/Logger.ini");
$now = time();
$logger = Logger::getLogger('yibaopay');
$logger->info("开始处理易宝异步返回的数据({$now}) : " . $_SERVER["QUERY_STRING"]);
echo "success";
require_once "YiBaoPay.php";
$payResult = YiBaoPay::Feedback($_GET, "", "", true);
$logger->info("正在处理易宝异步返回的数据({$now}) : " . print_r($payResult, true));
if ($payResult["r6_Order"] != "") {
    $orderId = $payResult["r6_Order"];
    $payType = substr($orderId, 3, 3);
    switch ($payType) {
        case "mrc":
            // 手机充值业务
            require_once "../../class/mobilerecharge.php";
            $logger->info("正在处理易宝异步返回的数据({$now}) : 开始手机充值业务");
            MobileRecharge::YiBaoPayFeedback($payResult, $orderId);
            $logger->info("正在处理易宝异步返回的数据({$now}) : 完成手机充值业务");
            break;
    }
}
 public function PayWithVerifyCode()
 {
     $now = time();
     $logger = Logger::getLogger('mobilerecharge');
     $logger->debug("开始使用验证码进行验证后充值({$now})");
     $authorId = trim($this->arr_channelinfo['authorid']);
     // 用户ID
     $msgBody = $this->arr_body;
     foreach ($msgBody as $key => $value) {
         $msgBody[$key] = trim($value);
     }
     // 必填的字段
     $requiredField = array("orderId", "verifyCode");
     foreach ($requiredField as $key => $value) {
         if ($msgBody[$value] == "") {
             ErrorReponse::reponError(array('retcode' => '200', 'retmsg' => '用户输入信息不完整'));
         }
     }
     $logger->info("正在使用验证码进行验证后充值({$now}) : 输入的信息包括" . print_r($msgBody, true));
     $cardInfo = array("orderId" => $msgBody['orderId'], "verifyCode" => $msgBody['verifyCode']);
     $payResult = YiBaoPay::PayWithVerifyCode($cardInfo);
     $logger->info("完成易宝支付({$now}), 返回的结果" . print_r($payResult, true));
     MobileRecharge::YiBaoPayFeedback($payResult, $msgBody['orderId']);
     if ($payResult['r1_Code'] == "1") {
         $retcode = "0";
         $arr_message = array("result" => "success", "message" => "支付成功,正在为您充值中");
     } else {
         $retcode = "200";
         $arr_message = array("result" => "fail", "message" => $payResult['errorMsg']);
     }
     $arr_msg['msgbody']['result'] = $arr_message['result'];
     $arr_msg['msgbody']['message'] = $arr_message['message'];
     $logger->info("完成使用验证码进行验证后充值({$now}) : 返回的信息包括" . print_r($arr_msg['msgbody'], true));
     $returnvalue = array("msgbody" => $arr_msg['msgbody']);
     $returnval = TfbxmlResponse::ResponsetoApp($retcode, $returnvalue);
     return $returnval;
 }