购买软路由-支付

This commit is contained in:
“wanyongkang”
2022-03-22 16:05:07 +08:00
parent 53e75f65c8
commit aab0d282c1
21 changed files with 304 additions and 63 deletions

View File

@@ -3,6 +3,7 @@
namespace app\common;
use extend\alipay\Alipay as AlipaySdk;
use app\ros\model\Order as OrderModel;
class Alipay {
@@ -30,47 +31,25 @@ class Alipay {
if ($flag) {
$invest_service = new InvestModel();
$update_data = [];
$order_model = new OrderModel();
$order_no=$_POST['out_trade_no'];
$alipay_no = $_POST['trade_no'];
//获取充值信息
$invest_info = $invest_service->getOne(['order_no'=>$order_no]);
$order_info = $order_model->getOne(['order_no'=>$order_no]);
//更新余额
$user_model = new UserModel();
if (!empty($order_info['ali_wx_no'])) {
die;
}
$money = abs($invest_info['money']);
$userid = $invest_info['user_id'];
$balance = $user_model->getOne(['id'=>$userid],'balance')['balance'];
$old_balance= $balance;
$balance += $money;
$data = [
'balance' => $balance
];
$user_model->updateOne(['id'=>$userid,'balance'=>$old_balance],$data);
$balance_model = new BalanceModel();
$balance_data = [
'user_id' => $userid,
'money' => $money,
'old_balance' => $old_balance,
'new_balance' => $balance,
'type' => 1,
];
$balance_model->add($balance_data);
$update_data = [];
//更新充值订单
$update_data['alipay_no'] = $alipay_no;
$update_data['ali_wx_no'] = $alipay_no;
$update_data['status'] = 1;
$update_data['old_money'] = $old_balance;
$update_data['new_money'] = $balance;
$invest_service->updateOne(['order_no'=>$order_no],$update_data);
$order_model->updateOne(['order_no'=>$order_no],$update_data);
}
}

52
app/common/Wxpay.php Normal file
View File

@@ -0,0 +1,52 @@
<?php
namespace app\common;
use app\ros\model\Order as OrderModel;
class Wxpay {
/**
* @description: 获取支付宝是否支付成功
* @param {*}
* @return {*}
*/
public function wxpayVerify() {
//接收数据
$xmlData = file_get_contents('php://input');
libxml_disable_entity_loader(true);
$data = json_decode(json_encode(simplexml_load_string($xmlData, 'SimpleXMLElement', LIBXML_NOCDATA)), true);
$order_model = new OrderModel();
$order_no = $data['out_trade_no'];
$wx_no = $data['transaction_id'];
//获取充值信息
$order_info = $order_model->getOne(['order_no'=>$order_no]);
if (!empty($order_info['ali_wx_no'])) {
die;
}
//判断算出的签名和通知信息的签名是否一致
if($data['result_code'] == 'SUCCESS' && $data['appid'] == 'wx18e5b4f42773c3ec' && $data['mch_id'] == '1571608411'){
$update_data = [];
//更新充值订单
$update_data['ali_wx_no'] = $wx_no;
$update_data['status'] = 1;
$order_model->updateOne(['order_no'=>$order_no],$update_data);
//处理完成之后,告诉微信成功结果
echo '<xml>
<return_code><![CDATA[SUCCESS]]></return_code>
<return_msg><![CDATA[OK]]></return_msg>
</xml>';
exit();
}
}
}