You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
320 lines
12 KiB
320 lines
12 KiB
<?php
|
|
|
|
namespace app\home\controller;
|
|
|
|
use app\home\service\ClickPayService;
|
|
use app\home\service\HTPayService;
|
|
use app\home\service\IndPayService;
|
|
use app\home\service\MoPayService;
|
|
use app\home\service\NicePayService;
|
|
use app\home\service\PayService;
|
|
use app\home\service\QeaePayService;
|
|
use app\home\service\StarPayService;
|
|
use app\home\service\TrcPayService;
|
|
use app\home\service\XdPayService;
|
|
use think\facade\Log;
|
|
use think\response\Json;
|
|
use think\Request;
|
|
|
|
/***
|
|
* 处理支付业务
|
|
*/
|
|
class Pay extends HomeBaseController
|
|
{
|
|
public function payChannel(Request $request): Json
|
|
{
|
|
$data['is_online'] = $request->post('is_online', 1);
|
|
$result = (new PayService())->getPaymentList($data);
|
|
return json($result);
|
|
}
|
|
|
|
public function BankList(Request $request): Json
|
|
{
|
|
$result = (new IndPayService())->getBankList();
|
|
return json($result);
|
|
}
|
|
|
|
/**
|
|
* 用户充值接口
|
|
* @return Json
|
|
*/
|
|
public function rechargeApply(Request $request): Json
|
|
{
|
|
$data['user_id'] = $request->userId;
|
|
$data['account_type'] = $request->post('account_type');
|
|
$data['country'] = $request->post('country');
|
|
$data['recharge_channel'] = $request->post('recharge_channel');
|
|
$data['recharge_num'] = $request->post('recharge_num');
|
|
$data['is_online'] = $request->post('is_online', 1);
|
|
$data['file_id'] = $request->post('file_id', 0);
|
|
$data['product'] = $request->post('product', '');
|
|
$data['extra'] = $request->post('extra', '');
|
|
$result = (new PayService())->insertRechargeApply($data);
|
|
return json($result);
|
|
}
|
|
public function getTRC20BuyList(Request $request): Json
|
|
{
|
|
$result=(new StarPayService())->getTRC20BuyList();
|
|
return json($result);
|
|
}
|
|
public function starPayNotify(Request $request)
|
|
{
|
|
Log::info('starPay支付异步回调:' . json_encode($_REQUEST));
|
|
|
|
$data['merchant_no'] = $request->post('merchant_no');
|
|
$data['timestamp'] = $request->post('timestamp');
|
|
$data['sign_type'] = $request->post('sign_type');
|
|
$data['sign'] = $request->post('sign');
|
|
//$data['params'] = json_decode($request->post('params'),true);
|
|
$data['params'] = $request->post('params');
|
|
Log::info('starPay支付异步回调:' . json_encode($data));
|
|
$result = (new StarPayService())->starPayNotify($data);
|
|
return $result;
|
|
}
|
|
public function indPayNotify(Request $request)
|
|
{
|
|
Log::info('支付异步回调:' . json_encode($_REQUEST));
|
|
$data['busi_code'] = $request->post('busi_code');
|
|
$data['err_code'] = $request->post('err_code');
|
|
$data['err_msg'] = $request->post('err_msg');
|
|
$data['mer_no'] = $request->post('mer_no');
|
|
$data['mer_order_no'] = $request->post('mer_order_no');
|
|
$data['order_amount'] = $request->post('order_amount');
|
|
$data['order_no'] = $request->post('order_no');
|
|
$data['order_time'] = $request->post('order_time');
|
|
$data['pay_amount'] = $request->post('pay_amount');
|
|
$data['pay_time'] = $request->post('pay_time');
|
|
$data['status'] = $request->post('status');
|
|
$data['sign'] = $request->post('sign');
|
|
Log::info('支付异步回调:' . json_encode($data));
|
|
$result = (new IndPayService())->indPayNotify($data);
|
|
return $result['msg'];
|
|
}
|
|
|
|
public function indPayQuery(Request $request)
|
|
{
|
|
Log::info('支付同步回调:' . json_encode($_REQUEST));
|
|
$data['busi_code'] = $request->post('busi_code');
|
|
$data['err_code'] = $request->post('err_code');
|
|
$data['err_msg'] = $request->post('err_msg');
|
|
$data['mer_no'] = $request->post('mer_no');
|
|
$data['mer_order_no'] = $request->post('mer_order_no');
|
|
$data['order_amount'] = $request->post('order_amount');
|
|
$data['order_no'] = $request->post('order_no');
|
|
$data['order_time'] = $request->post('order_time');
|
|
$data['pay_amount'] = $request->post('pay_amount');
|
|
$data['pay_time'] = $request->post('pay_time');
|
|
$data['status'] = $request->post('status');
|
|
$data['sign'] = $request->post('sign');
|
|
Log::info('支付同步回调:' . json_encode($data));
|
|
return 'SUCCESS';
|
|
}
|
|
|
|
public function singleNotify(Request $request)
|
|
{
|
|
Log::info('代付回调:' . json_encode($_REQUEST));
|
|
$data['err_code'] = $request->post('err_code');
|
|
$data['err_msg'] = $request->post('err_msg');
|
|
$data['mer_no'] = $request->post('mer_no');
|
|
$data['mer_order_no'] = $request->post('mer_order_no');
|
|
$data['order_amount'] = $request->post('order_amount');
|
|
$data['ccy_no'] = $request->post('ccy_no');
|
|
$data['order_no'] = $request->post('order_no');
|
|
$data['create_time'] = $request->post('create_time');
|
|
$data['pay_time'] = $request->post('pay_time');
|
|
$data['status'] = $request->post('status');
|
|
$data['sign'] = $request->post('sign');
|
|
Log::info('代付回调:' . json_encode($data));
|
|
$result = (new IndPayService())->singleIndNotify($data);
|
|
return $result['msg'];
|
|
}
|
|
|
|
public function payNotify(Request $request)
|
|
{
|
|
$data = $request->post('data');
|
|
$result = (new TrcPayService())->TrcpayNotify($data);
|
|
return $result;
|
|
}
|
|
|
|
public function OrderConfirm(Request $request)
|
|
{
|
|
$data = $request->post('data');
|
|
$result = (new TrcPayService())->dealOrderConfirm($data);
|
|
return $result;
|
|
}
|
|
|
|
public function wallet(Request $request)
|
|
{
|
|
(new TrcPayService())->WalletAddress();
|
|
}
|
|
|
|
public function htPayNotify(Request $request)
|
|
{
|
|
Log::info('合泰回调:' . json_encode($_REQUEST));
|
|
$data['amount'] = $request->post('amount');
|
|
$data['mchId'] = $request->post('mchId');
|
|
$data['mchOrderNo'] = $request->post('mchOrderNo');
|
|
$data['merRetMsg'] = $request->post('merRetMsg');
|
|
$data['signType'] = $request->post('signType');
|
|
$data['tradeResult'] = $request->post('tradeResult');
|
|
$data['sign'] = $request->post('sign');
|
|
$result = (new HTPayService())->qrNotify($data);
|
|
return 'success';
|
|
}
|
|
|
|
public function arPayNotify(Request $request)
|
|
{
|
|
Log::info('合泰代付回调:' . json_encode($_REQUEST));
|
|
$data['amount'] = $request->post('amount');
|
|
$data['mchId'] = $request->post('mchId');
|
|
$data['mchOrderNo'] = $request->post('mchOrderNo');
|
|
$data['signType'] = $request->post('signType');
|
|
$data['tradeResult'] = $request->post('tradeResult');
|
|
$data['sign'] = $request->post('sign');
|
|
$result = (new HTPayService())->arNotify($data);
|
|
return 'success';
|
|
}
|
|
|
|
public function XdPayNotify(Request $request)
|
|
{
|
|
Log::info('Xdpay代收回调:' . json_encode($_REQUEST));
|
|
$data['platOrderId'] = $request->post('platOrderId');
|
|
$data['orderId'] = $request->post('orderId');
|
|
$data['amount'] = $request->post('amount');
|
|
$data['status'] = $request->post('status');
|
|
$data['reverse'] = $request->post('reverse');
|
|
$data['remark'] = $request->post('remark');
|
|
$data['sign'] = $request->post('sign');
|
|
$result = (new XdPayService())->xdpayNotify($data);
|
|
return 'success';
|
|
}
|
|
|
|
public function XdPayAppNotify(Request $request)
|
|
{
|
|
Log::info('Xdpay代付回调:' . json_encode($_REQUEST));
|
|
$data['platOrderId'] = $request->post('platOrderId');
|
|
$data['orderId'] = $request->post('orderId');
|
|
$data['amount'] = $request->post('amount');
|
|
$data['status'] = $request->post('status');
|
|
$data['reverse'] = $request->post('reverse');
|
|
$data['remark'] = $request->post('remark');
|
|
$data['sign'] = $request->post('sign');
|
|
$result = (new XdPayService())->xdpayApplyNotify($data);
|
|
return 'success';
|
|
}
|
|
|
|
public function NicePayNotify(Request $request)
|
|
{
|
|
Log::info('NicePay代收回调:' . json_encode($_REQUEST));
|
|
$data['amount'] = $request->post('amount');
|
|
$data['order'] = $request->post('order');
|
|
$data['status'] = $request->post('status');
|
|
$data['sign'] = $request->post('sign');
|
|
$result = (new NicePayService())->NicePayNotify($data);
|
|
return 'success';
|
|
}
|
|
|
|
public function NicePayApplyNotify(Request $request)
|
|
{
|
|
Log::info('NicePay代付回调:' . json_encode($_REQUEST));
|
|
$data['amount'] = $request->post('amount');
|
|
$data['order'] = $request->post('order');
|
|
$data['status'] = $request->post('status');
|
|
$data['sign'] = $request->post('sign');
|
|
$result = (new NicePayService())->NicePayApplyNotify($data);
|
|
return 'success';
|
|
}
|
|
|
|
public function MoPayNotify(Request $request)
|
|
{
|
|
Log::info('MoPay代收回调:' . json_encode($_REQUEST));
|
|
$data['memberid'] = $request->post('memberid');
|
|
$data['orderid'] = $request->post('orderid');
|
|
$data['transaction_id'] = $request->post('transaction_id');
|
|
$data['amount'] = $request->post('amount');
|
|
$data['datetime'] = $request->post('datetime');
|
|
$data['returncode'] = $request->post('returncode');
|
|
$data['attach'] = $request->post('attach');
|
|
$data['sign'] = $request->post('sign');
|
|
$result = (new MoPayService())->moPayNotify($data);
|
|
return 'ok';
|
|
}
|
|
|
|
public function moPayAppNotify(Request $request)
|
|
{
|
|
Log::info('Mopay代付回调:' . json_encode($_REQUEST));
|
|
$data['memberid'] = $request->post('memberid');
|
|
$data['orderid'] = $request->post('orderid');
|
|
$data['transaction_id'] = $request->post('transaction_id');
|
|
$data['amount'] = $request->post('amount');
|
|
$data['datetime'] = $request->post('datetime');
|
|
$data['returncode'] = $request->post('returncode');
|
|
$data['attach'] = $request->post('attach');
|
|
$data['sign'] = $request->post('sign');
|
|
$result = (new MoPayService())->moPayApplyNotify($data);
|
|
return 'ok';
|
|
}
|
|
|
|
// QEAE支付回调
|
|
public function QeaePayNotify(Request $request)
|
|
{
|
|
Log::info('Qeaepay支付回调:' . json_encode($_REQUEST));
|
|
$data['tradeResult'] = $request->post('tradeResult');
|
|
$data['orderNo'] = $request->post('orderNo');
|
|
$data['mchId'] = $request->post('mchId');
|
|
$data['mchOrderNo'] = $request->post('mchOrderNo');
|
|
$data['oriAmount'] = $request->post('oriAmount');
|
|
$data['amount'] = $request->post('oriAmount');
|
|
$data['orderDate'] = $request->post('orderDate');
|
|
$data['sign_type'] = $request->post('signType');
|
|
$data['sign'] = $request->post('sign');
|
|
$result = (new QeaePayService())->qeaePayNotify($data);
|
|
return 'success';
|
|
}
|
|
|
|
// QEAE代付回调
|
|
public function QeaePayAppNotify(Request $request)
|
|
{
|
|
Log::info('Qeae代付回调:' . json_encode($_REQUEST));
|
|
$data['tradeResult'] = $request->post('tradeResult');
|
|
$data['merTransferId'] = $request->post('merTransferId'); // 商家转账订单号
|
|
$data['merNo'] = $request->post('merNo');
|
|
$data['tradeNo'] = $request->post('tradeNo');
|
|
$data['transferAmount'] = $request->post('transferAmount');
|
|
$data['applyDate'] = $request->post('applyDate');
|
|
$data['version'] = $request->post('version');
|
|
$data['respCode'] = $request->post('respCode');
|
|
$data['sign'] = $request->post('sign');
|
|
$data['sign_type'] = $request->post('signType');
|
|
$result = (new QeaePayService())->qeaePayApplyNotify($data);
|
|
return 'success';
|
|
}
|
|
|
|
public function test(Request $request)
|
|
{
|
|
// $amount=1000;
|
|
// $order_no='ht'.rand(10000,99999);
|
|
// (new HTPayService())->arPay($order_no,$amount,'101','65243451224','test');
|
|
(new TrcPayService())->getTrcBalance();
|
|
|
|
}
|
|
|
|
// Click 代收(充值)回调
|
|
public function ClickPayNotify()
|
|
{
|
|
$res = $this->request->param();
|
|
Log::info('Clickpay 代收(充值)回调000:' . json_encode($res));
|
|
$result = (new ClickPayService())->clickPayNotify($res);
|
|
return json($result);
|
|
}
|
|
|
|
// Click 代付回调
|
|
public function ClickPayApplyNotify(Request $request)
|
|
{
|
|
$res = $this->request->param();
|
|
Log::info('Clickpay 代付回调000:' . json_encode($res));
|
|
$result = (new ClickPayService())->clickPayApplyNotify($res);
|
|
return json($result);
|
|
}
|
|
|
|
}
|