2020.02新版
This commit is contained in:
46
plugins/alipay/notify.php
Normal file
46
plugins/alipay/notify.php
Normal file
@@ -0,0 +1,46 @@
|
||||
<?php
|
||||
if(!defined('IN_PLUGIN'))exit();
|
||||
|
||||
require_once(PAY_ROOT."inc/AlipayTradeService.php");
|
||||
|
||||
|
||||
//计算得出通知验证结果
|
||||
$alipaySevice = new AlipayTradeService($config);
|
||||
//$alipaySevice->writeLog(var_export($_POST,true));
|
||||
$verify_result = $alipaySevice->check($_POST);
|
||||
|
||||
if($verify_result) {//验证成功
|
||||
//商户订单号
|
||||
|
||||
$out_trade_no = daddslashes($_POST['out_trade_no']);
|
||||
|
||||
//支付宝交易号
|
||||
|
||||
$trade_no = daddslashes($_POST['trade_no']);
|
||||
|
||||
//交易状态
|
||||
$trade_status = $_POST['trade_status'];
|
||||
|
||||
//买家支付宝
|
||||
$buyer_id = daddslashes($_POST['buyer_id']);
|
||||
|
||||
//交易金额
|
||||
$total_amount = $_POST['total_amount'];
|
||||
|
||||
if($_POST['trade_status'] == 'TRADE_FINISHED') {
|
||||
//退款日期超过可退款期限后(如三个月可退款),支付宝系统发送该交易状态通知
|
||||
}
|
||||
else if ($_POST['trade_status'] == 'TRADE_SUCCESS') {
|
||||
if($out_trade_no == TRADE_NO && round($total_amount,2)==round($order['money'],2) && $order['status']==0){
|
||||
if($DB->exec("update `pre_order` set `status` ='1' where `trade_no`='".TRADE_NO."'")){
|
||||
$DB->exec("update `pre_order` set `api_trade_no` ='$trade_no',`endtime` ='$date',`buyer` ='$buyer_id',`date` =NOW() where `trade_no`='".TRADE_NO."'");
|
||||
processOrder($order);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
echo "success";
|
||||
}
|
||||
else {
|
||||
//验证失败
|
||||
echo "fail";
|
||||
Reference in New Issue
Block a user