86 lines
3.7 KiB
PHP
86 lines
3.7 KiB
PHP
<?php
|
|
namespace addon\cypay\shop\controller;
|
|
use addon\cypay\model\Config as ConfigModel;
|
|
use addon\cypay\model\Pay as PayModel;
|
|
use addon\cypay\model\RequestApi;
|
|
use app\model\system\Pay as PayCommon;
|
|
use app\shop\controller\BaseShop;
|
|
class Pay extends BaseShop{
|
|
|
|
public function config(){
|
|
$config_model = new ConfigModel();
|
|
if (request()->isAjax()) {
|
|
$data = [
|
|
"mch_id" => input("mch_id",""),//商户号
|
|
"private_key" => input("private_key",""),
|
|
"cj_public_key" => input("cj_public_key",""),
|
|
"pay_list" => input("pay_list",[]),
|
|
"refund_status" => input("refund_status",0),
|
|
"wechatpay" => input("wechatpay",0),
|
|
"alipay" => input("alipay",0),
|
|
"is_isp" => input("is_isp",0),
|
|
"is_cashier" => input("is_cashier",0)
|
|
];
|
|
return $config_model->setPayConfig($data, $this->site_id, $this->app_module);
|
|
} else {
|
|
$info_result = $config_model->getPayConfig($this->site_id, $this->app_module);
|
|
$info = $info_result["data"];
|
|
if (!isset($info["value"]['alipay'])) {
|
|
$info["value"]['alipay'] = 0;
|
|
}
|
|
if (!isset($info["value"]['wechatpay'])) {
|
|
$info["value"]['wechatpay'] = 0;
|
|
}
|
|
$this->assign("info", $info);
|
|
return $this->fetch("pay/config");
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 调试
|
|
public function test(){
|
|
|
|
|
|
$param = array (
|
|
'charset' => 'UTF-8',
|
|
'biz_content' => 'JdmuGYi47YirsivbBk1LVH8fNsXJae67MNMCeZ/paL1B/JALWlBXEexWoDsdW/RdDCNIjD2h0AXv55CnRndojNazqEkx2hcv96i7zCsG9ITuKrGnTl5oFL1wWb0pKzPTKAR+Hh48v8aVHX+H9C6O07eYoJIXnCpzWDD7JXwsVRlBKAs3ac48Xp6Lr6yLh/9oqhLFYte26hEsYGgeD8vtOSgHt0mT4N3QS8uAJDXDek7eyRBcA4RaK4sYJPCYT+gfxd0Y/sI/JYto0JvedZ1TNzNB29iY8hQXQX+USbHkGZQ6dBusOmL2cgS5bkFKF5ZRUKjGrF5RW9F1adxajaC7+C1Wq542/M7LQ9G7yRAHkVzQLKTMOo5Rdehonqya0Vy6jl2eh3kBhxMTt6vt4xCxv6BdKNdMtjMzgviwagTumW/1PzTWthwLhe4K2IMNZan+2+Qzw1CWlIWsrOQqdJy0SFc+HorCt1lAwWgubEQCgyEc/U+ojv1I96740D/7phwWHn1zz262Fb4YfOl+ScW9rtvYK/Kge13lZjMw4ehV+sB+TqbayHx/pATyBkcR7b8x/Y35PpZZw/uDM1MwIwwYekXq6PpR2dwl06CuK2FRx8qRm9p3AlIvi62jb3BLUUxjoZMyB9EIKbg1Ukk2DnOpj1JqpSwKZ3XBvD1RU6Vt48Y=',
|
|
'function_code' => '1000160001',
|
|
'format' => 'JSON',
|
|
'sign' => 'cD8xGXc8JSfbehyL0TSr+w3dZjWFJ1AeoJ4y6pnJak/pBuH6u2Qh2QcRUop+ty/bjTTalc7qGyurJ8Gw4X/9Qm1DaKVwWxhbC9FhifotEHl1K3oQ4xX+d1XldreDN/S87t8Jcr9AihVhw607DQKQO08DuMHfn6nzriUKN1e/Ij9btJPCnyBDRd/7xMUmkvFLyL3nhMJZvTWIsCmjk0VcbEyeCQ4nNF5H8ybiRTEEvPuig8McQttn2sy55AxSnHniTKYYg6ZWiYzw4qH4IpA09Mqi8E1dHfWectVjtCHrCPYhm8fP7Jg+QrY6nx40PXr5U+VGuoPD9LpmXuCXnDMDiw==',
|
|
'merchant_id' => '900654153100000',
|
|
'product_code' => '1000',
|
|
'sign_type' => 'RSA2',
|
|
'version' => '1.0',
|
|
'paytype' => 'cywechatpay',
|
|
'app_type' => 'weapp',
|
|
'site_id' => '2',
|
|
);
|
|
|
|
$payType = $param['paytype'] ?? '';
|
|
if($payType == 'cywechatpay'){
|
|
// 信息解密
|
|
$bizContent = (new RequestApi($param['site_id']))->handleResultContent($param['biz_content']);
|
|
$outTradeNo = explode('_', $bizContent['out_trade_no'])[0];
|
|
$payInfo = (new PayCommon())->getPayInfo($outTradeNo);
|
|
$payInfo = $payInfo['data'] ?? [];
|
|
if(!empty($payInfo)){
|
|
$pay_model = new PayModel($payInfo['site_id']);
|
|
$pay_model->payNotify($param, $bizContent, $payInfo);
|
|
}else{
|
|
trace($param, '好收银 - 异步通知 - 订单不存在');
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|