Files
juipphp/app/common/controller/Alipay.php

166 lines
4.6 KiB
PHP
Raw Normal View History

2022-03-21 17:59:31 +08:00
<?php
2022-04-09 14:40:58 +08:00
namespace app\common\controller;
2022-03-21 17:59:31 +08:00
use extend\alipay\Alipay as AlipaySdk;
2022-03-22 16:05:07 +08:00
use app\ros\model\Order as OrderModel;
2023-12-26 16:37:09 +08:00
use app\http\model\User as UserModel;
use app\http\model\Recharge as RechargeModel;
2024-02-01 17:13:32 +08:00
use app\jinyou\model\ProductOrder as ProductOrderModel;
use app\jinyou\model\Account as AccountModel;
use app\jinyou\model\Package as PackageModel;
2022-03-21 17:59:31 +08:00
class Alipay {
/**
* @description: 获取支付宝是否支付成功
* @param {*}
* @return {*}
*/
public function alipayVerify() {
$ali = new AlipaySdk();
2023-11-16 13:24:26 +08:00
$flag = $ali->payVerify2($_POST);
2022-03-21 17:59:31 +08:00
if($flag){
$status = $_POST['trade_status'];
$flag = false;
2024-01-13 09:41:38 +08:00
if ($status == 'TRADE_SUCCESS') {
2022-03-21 17:59:31 +08:00
$flag = true;
}
if ($flag) {
2022-03-22 16:05:07 +08:00
$order_model = new OrderModel();
2022-03-21 17:59:31 +08:00
$order_no=$_POST['out_trade_no'];
$alipay_no = $_POST['trade_no'];
//获取充值信息
2022-03-22 16:05:07 +08:00
$order_info = $order_model->getOne(['order_no'=>$order_no]);
2022-03-21 17:59:31 +08:00
2022-03-22 16:05:07 +08:00
if (!empty($order_info['ali_wx_no'])) {
die;
}
2022-03-21 17:59:31 +08:00
2022-03-22 16:05:07 +08:00
$update_data = [];
2022-03-21 17:59:31 +08:00
//更新充值订单
2022-03-22 16:05:07 +08:00
$update_data['ali_wx_no'] = $alipay_no;
2022-03-21 17:59:31 +08:00
$update_data['status'] = 1;
2022-03-22 16:05:07 +08:00
$order_model->updateOne(['order_no'=>$order_no],$update_data);
2022-03-21 17:59:31 +08:00
}
}
echo 'success';
}
2023-12-26 16:37:09 +08:00
public function httpalipayVerify() {
$ali = new AlipaySdk();
$flag = $ali->payVerify2($_POST);
if($flag){
$status = $_POST['trade_status'];
$flag = false;
2024-01-13 09:41:38 +08:00
if ($status == 'TRADE_SUCCESS') {
2023-12-26 16:37:09 +08:00
$flag = true;
}
if ($flag) {
$recharge_model = new RechargeModel();
$order_no=$_POST['out_trade_no'];
$alipay_no = $_POST['trade_no'];
//获取充值信息
$order_info = $recharge_model->getOne(['order_no'=>$order_no]);
if (!empty($order_info['ali_wx_no'])) {
die;
}
$update_data = [];
//更新充值订单
$update_data['ali_wx_no'] = $alipay_no;
$update_data['pay_status'] = 1;
if($recharge_model->updateOne(['order_no'=>$order_no],$update_data)) {
$user_model = new UserModel();
$user_info = $user_model->getOne(['Id' => $order_info['user_id']]);
$user_update = [];
$user_update['ju_money'] = $user_info['ju_money'] + $order_info['ju_money'];
$user_model->updateOne(['Id'=>$order_info['user_id']],$user_update);
}
}
}
echo 'success';
}
2024-02-01 17:13:32 +08:00
public function jinyoualipayverify() {
$ali = new AlipaySdk();
$flag = $ali->payVerify2($_POST);
if($flag){
$status = $_POST['trade_status'];
$flag = false;
if ($status == 'TRADE_SUCCESS') {
$flag = true;
}
if ($flag) {
$order_model = new ProductOrderModel();
$order_no=$_POST['out_trade_no'];
$alipay_no = $_POST['trade_no'];
//获取充值信息
$order_info = $order_model->getOne(['OrderNo'=>$order_no]);
if (!empty($order_info['TradeNo'])) {
die;
}
$update_data = [];
//更新充值订单
$update_data['TradeNo'] = $alipay_no;
$update_data['OrderState'] = 90;
if($order_model->updateOne(['OrderNo'=>$order_no],$update_data)) {
$account_info = json_decode($order_info['remark2']);
$user_model = new UserModel();
$user_info = $user_model->getOne(['Id' => $order_info['UserId']]);
$package_model = new PackageModel;//套餐详情
$package_info = $package_model->getOne(['Id' => $account_info['package_id']]);
$account_model = new AccountModel;
$account_model->open_account($account_info,$user_info,$package_info);
}
}
}
echo 'success';
}
2023-12-26 16:37:09 +08:00
2022-03-21 17:59:31 +08:00
}