|
@@ -8,48 +8,46 @@ use app\common\library\Message;
|
|
|
use app\inter\service\WechatService;
|
|
|
|
|
|
class Wechat extends Base {
|
|
|
+ private const SUCCESS = "<xml><return_code><![CDATA[SUCCESS]]></return_code><return_msg><![CDATA[OK]]></return_msg></xml>";
|
|
|
+ public function wechatRefund(WechatService $wechatService) {
|
|
|
+ $api_key = '9759a66938e8411ad5889e2b5b394d94';
|
|
|
+ Log::record('-----微信退款----开始----');
|
|
|
+ Log::record('-----微信退款----xml----');
|
|
|
+ $xml = file_get_contents("php://input");
|
|
|
+ Log::record($xml);
|
|
|
+ Log::record('-----xml转数组--------');
|
|
|
+ $data = (array)simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA); //将微信返回的XML 转换成数组
|
|
|
+ Log::record($data);
|
|
|
+ $req_info = $data['req_info'];
|
|
|
+ // $req_info = 'Jsb+/EIaoJhD0BVWMEiFWeRuivKbS7/bs/wpgwHowHyvVNC+Kj3aiCsLHzQobul1mKwuKT/slYfoVgUQibGH+mEFcA2N10r6Qv5v+rwd7IXvMOM7iS7p9ciDD3fn+jZukjJdGME6KajDtD2rFs0MyZTqsKUTGQN1I8Q1w5aK7OISs437bXp5s4VgrxQWKNe5s18+ts2jrMoA91VXmHy024p010BiB1TJHr46cXC4zpZkeLtECkABhVlBGmDQPfw0JknMqaTriXRZPQcz2Ff/WuRPKPImiL9i0nVpcPuiFjIP863lWLfr2Aif7plPA/mJrAZ6K95hGRvAiiHqxEet7OjYMHu50OKnY/8j2pZjtBUX8Yr1fRnY+v8INLL8+CKS1tZRY0dAkilymPVOSN/naNkVILgwDrlYq5XisDMmXz2HzF1UBX0ZWNs5ltarJC8fyhLpZm1cd/prxcTB6KUm1mTnEYhToZLUlB0N2a0dCT9pm58oj8myMC6mJutCW79QCaHCtV6JIxjueErZkbWYEVSZWG+m7hcKcmcgGhqTcnXPLte5vE0imYoABZnw4uMnv9sMSVP0PhMJ8/JeeP/He/6oAHenvhPrh/J4Xpv/vCbDjVJo8Qo5xWFFG9pk/Aj1rlZiCqmJffy+TXkXceDp+wg4lEOIbZfENaqbj7gtN9RWFTjrtPapPBZzxGJQvEQKzF2TNoP7owsTUup3grDMuw/zreVYt+vYCJ/umU8D+YnTBdx9Q0Bog3qHSlEMnQten+v2X7cSwDcIzvf3UJKVD1041tiBKfJTJFvfbiT+q4vHLKcRn5q7QyWowKrGO/ZrWTIotM0m+1IRqVDHeCTGYDUMGDiQ/+1BupV135PlUg2tKHr0wIUS0wThD3z2ZZxcJ3VioCDcFmjPu128k1xqsjfz+1Np4DxiTZFR1W44wpF/E6Hwi11A440fABYGX4AF7UFBSNfStMCTjVAhcHaYY9P5AbNiUcENjwZEBWE5bcCKm2adIsdqT5isumPoFi6M5H7hL5slQoKqLadEPfazBMHE8r+m+UYLTHlCk9L/DLPmrkVk2HJzlATcg9VYTX+IPYqqv2kY/9BYW+q+O+a8gA==';
|
|
|
+ // 对加密信息进行解密,需要用到商户秘钥
|
|
|
+ $req_info_xml = openssl_decrypt(base64_decode($req_info), 'aes-256-ecb', md5($api_key),OPENSSL_RAW_DATA);
|
|
|
+ Log::record($req_info_xml);
|
|
|
+ $refund = (array)simplexml_load_string($req_info_xml, 'SimpleXMLElement', LIBXML_NOCDATA);
|
|
|
+ $refund['timestamp'] = time();
|
|
|
+ Log::record($refund);
|
|
|
+ DB::table('wechat_refund_log')->insert( array_merge($refund, $data));
|
|
|
|
|
|
- // public function wechatRefund(WechatService $wechatService) {
|
|
|
- // $repsone = '<xml><return_code><![CDATA[SUCCESS]]></return_code><return_msg><![CDATA[OK]]></return_msg></xml>';
|
|
|
- // $api_key = '9759a66938e8411ad5889e2b5b394d94';
|
|
|
- // Log::record('-----微信退款----开始----');
|
|
|
- // Log::record('-----微信退款----xml----');
|
|
|
- // $xml = file_get_contents("php://input");
|
|
|
- // Log::record($xml);
|
|
|
- // Log::record('-----xml转数组--------');
|
|
|
- // $data = (array)simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA); //将微信返回的XML 转换成数组
|
|
|
- // Log::record($data);
|
|
|
- // $req_info = $data['req_info'];
|
|
|
- // // $req_info = 'Jsb+/EIaoJhD0BVWMEiFWeRuivKbS7/bs/wpgwHowHyvVNC+Kj3aiCsLHzQobul1mKwuKT/slYfoVgUQibGH+mEFcA2N10r6Qv5v+rwd7IXvMOM7iS7p9ciDD3fn+jZukjJdGME6KajDtD2rFs0MyZTqsKUTGQN1I8Q1w5aK7OISs437bXp5s4VgrxQWKNe5s18+ts2jrMoA91VXmHy024p010BiB1TJHr46cXC4zpZkeLtECkABhVlBGmDQPfw0JknMqaTriXRZPQcz2Ff/WuRPKPImiL9i0nVpcPuiFjIP863lWLfr2Aif7plPA/mJrAZ6K95hGRvAiiHqxEet7OjYMHu50OKnY/8j2pZjtBUX8Yr1fRnY+v8INLL8+CKS1tZRY0dAkilymPVOSN/naNkVILgwDrlYq5XisDMmXz2HzF1UBX0ZWNs5ltarJC8fyhLpZm1cd/prxcTB6KUm1mTnEYhToZLUlB0N2a0dCT9pm58oj8myMC6mJutCW79QCaHCtV6JIxjueErZkbWYEVSZWG+m7hcKcmcgGhqTcnXPLte5vE0imYoABZnw4uMnv9sMSVP0PhMJ8/JeeP/He/6oAHenvhPrh/J4Xpv/vCbDjVJo8Qo5xWFFG9pk/Aj1rlZiCqmJffy+TXkXceDp+wg4lEOIbZfENaqbj7gtN9RWFTjrtPapPBZzxGJQvEQKzF2TNoP7owsTUup3grDMuw/zreVYt+vYCJ/umU8D+YnTBdx9Q0Bog3qHSlEMnQten+v2X7cSwDcIzvf3UJKVD1041tiBKfJTJFvfbiT+q4vHLKcRn5q7QyWowKrGO/ZrWTIotM0m+1IRqVDHeCTGYDUMGDiQ/+1BupV135PlUg2tKHr0wIUS0wThD3z2ZZxcJ3VioCDcFmjPu128k1xqsjfz+1Np4DxiTZFR1W44wpF/E6Hwi11A440fABYGX4AF7UFBSNfStMCTjVAhcHaYY9P5AbNiUcENjwZEBWE5bcCKm2adIsdqT5isumPoFi6M5H7hL5slQoKqLadEPfazBMHE8r+m+UYLTHlCk9L/DLPmrkVk2HJzlATcg9VYTX+IPYqqv2kY/9BYW+q+O+a8gA==';
|
|
|
- // // 对加密信息进行解密,需要用到商户秘钥
|
|
|
- // $req_info_xml = openssl_decrypt(base64_decode($req_info), 'aes-256-ecb', md5($api_key),OPENSSL_RAW_DATA);
|
|
|
- // Log::record($req_info_xml);
|
|
|
- // $refund = (array)simplexml_load_string($req_info_xml, 'SimpleXMLElement', LIBXML_NOCDATA);
|
|
|
- // $refund['timestamp'] = time();
|
|
|
- // Log::record($refund);
|
|
|
- // DB::table('wechat_refund_log')->insert( array_merge($refund, $data));
|
|
|
+ $order_id = $refund['out_trade_no'];
|
|
|
+ $order = DB::table('remote_order')->where('id', $order_id)->field('status')-find();
|
|
|
+ if(!empty($order) && $order['status'] === Application::ORDER_STATUS['CANCEL']) {
|
|
|
+ DB::table('remote_order')->where('id', $order_id)->update(['status' => Application::ORDER_STATUS['REDUCE']]);
|
|
|
+ // $wechatService->pushWechatRefund($remote_application['exam_id']);
|
|
|
+ $wechatService->pushWechatRefund($order_id);
|
|
|
+ // todo 微信消息推送
|
|
|
+ }
|
|
|
+ Log::record('-----微信结束----xml----');
|
|
|
+ return self::SUCCESS;
|
|
|
|
|
|
- // $order_id = $refund['out_trade_no'];
|
|
|
- // $order = DB::table('remote_order')->where('id', $order_id)->field('status')-find();
|
|
|
- // if(!empty($order) && $order['status'] === Application::ORDER_STATUS['CANCEL']) {
|
|
|
- // DB::table('remote_order')->where('id', $order_id)->update(['status' => Application::ORDER_STATUS['REDUCE']]);
|
|
|
- // // $wechatService->pushWechatRefund($remote_application['exam_id']);
|
|
|
- // $wechatService->pushWechatRefund($order_id);
|
|
|
- // // todo 微信消息推送
|
|
|
- // }
|
|
|
- // Log::record('-----微信结束----xml----');
|
|
|
- // return $repsone;
|
|
|
-
|
|
|
- // }
|
|
|
+ }
|
|
|
|
|
|
public function wechatCallback() {
|
|
|
// try {
|
|
|
// $param = $_REQUEST['param'];
|
|
|
- // $repsone = "<xml><return_code><![CDATA[SUCCESS]]></return_code><return_msg><![CDATA[OK]]></return_msg></xml>";
|
|
|
Log::record('-----微信支付回调----开始----');
|
|
|
|
|
|
Log::record('-----微信支付返回----xml----');
|
|
|
- $xml = file_get_contents("php://input");
|
|
|
+ // $xml = file_get_contents("php://input");
|
|
|
Log::record($xml);
|
|
|
// Log::record('-----xml转数组--------');
|
|
|
// $data = (array)simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA); //将微信返回的XML 转换成数组
|
|
@@ -101,7 +99,7 @@ class Wechat extends Base {
|
|
|
// }
|
|
|
// }
|
|
|
// Log::record('---微信支付回调---结束---');
|
|
|
- // // return $repsone;
|
|
|
+ // // return self::SUCCESS;
|
|
|
// } catch (\Throwable $th) {
|
|
|
// Log::record('支付回调异常');
|
|
|
// Log::record($th->getMessage());
|