From 07f2d3a1bda4d7a8a0c74419d58c77bec588f84d Mon Sep 17 00:00:00 2001 From: wang hou sheng <76928547+wanghousheng@users.noreply.github.com> Date: Thu, 11 Apr 2024 10:30:47 +0800 Subject: [PATCH] 1 --- app/api/controller/Wxserver.php | 68 +++++++++++++------------- app/common/library/wxserver/Server.php | 4 +- 2 files changed, 37 insertions(+), 35 deletions(-) diff --git a/app/api/controller/Wxserver.php b/app/api/controller/Wxserver.php index ebbfe8fb..f099d61a 100644 --- a/app/api/controller/Wxserver.php +++ b/app/api/controller/Wxserver.php @@ -13,6 +13,7 @@ use think\facade\Db; class Wxserver extends BaseController { + public function verifyTicket() { $xmlData = file_get_contents("php://input"); @@ -48,41 +49,40 @@ class Wxserver extends BaseController $nonce = $this->request->get('nonce'); if ($signature && $timestamp && $nonce) { if ($obj->checkSignature($signature, $timestamp, $nonce)) { - Db::table('yoshop_wx_server')->insertGetId(['content' => '签名正确', 'created_at' => $time]); - } - } - $xmlData = file_get_contents("php://input"); - if ($xmlData) { - Db::table('yoshop_wx_server')->insertGetId(['content' => $xmlData, 'created_at' => $time]); - $data = $obj->decryptXml($xmlData); - Db::table('yoshop_wx_server')->insertGetId(['content' => json_encode($data), 'created_at' => $time]); - if (!empty($data['MsgType'])) { - if ($data['MsgType'] == 'event' && !empty($data['Event'])) { - $up = []; - if ($data['Event'] == 'weapp_audit_success') { - $up['audit_status'] = 2; - } elseif ($data['Event'] == 'weapp_audit_fail') { - $up['audit_status'] = 3; - } elseif ($data['Event'] == 'weapp_audit_delay') { - $up['audit_status'] = 4; + $xmlData = file_get_contents("php://input"); + if ($xmlData) { + Db::table('yoshop_wx_server')->insertGetId(['content' => $xmlData, 'created_at' => $time]); + $data = $obj->decryptXml($xmlData); + Db::table('yoshop_wx_server')->insertGetId(['content' => json_encode($data), 'created_at' => $time]); + if (!empty($data['MsgType'])) { + if ($data['MsgType'] == 'event' && !empty($data['Event'])) { + $up = []; + if ($data['Event'] == 'weapp_audit_success') { + $up['audit_status'] = 2; + } elseif ($data['Event'] == 'weapp_audit_fail') { + $up['audit_status'] = 3; + } elseif ($data['Event'] == 'weapp_audit_delay') { + $up['audit_status'] = 4; + } + if (!empty($data['Reason'])) { + $up['audit_reason'] = $data['Reason']; + } + if ($up && $appid) { + $model = new WxserverAccount(); + $model->update($up, ['appid' => $appid]); + } + echo 'success'; + } elseif ($data['MsgType'] == 'text' && !empty($data['Content'])) { + if ($data['Content'] == 'TESTCOMPONENT_MSG_TYPE_TEXT') { + $data['Content'] = 'TESTCOMPONENT_MSG_TYPE_TEXT_callback'; + echo $this->responseText($data); + } elseif (strpos($data['Content'], 'QUERY_AUTH_CODE:') !== false) { + Db::table('yoshop_wx_server')->insertGetId(['content' => '给客服发送消息', 'created_at' => $time]); + $query_auth_code = trim(str_replace("QUERY_AUTH_CODE:", "", $data['Content'])); + $obj->apiText($query_auth_code, $data['FromUserName']); + } + } } - if (!empty($data['Reason'])) { - $up['audit_reason'] = $data['Reason']; - } - if ($up && $appid) { - $model = new WxserverAccount(); - $model->update($up, ['appid' => $appid]); - } - echo 'success'; - } elseif ($data['MsgType'] == 'text' && !empty($data['Content'])) { - if ($data['Content'] == 'TESTCOMPONENT_MSG_TYPE_TEXT') { - $data['Content'] = 'TESTCOMPONENT_MSG_TYPE_TEXT_callback'; - echo $this->responseText($data); - } elseif (strpos($data['Content'], 'QUERY_AUTH_CODE:') !== false) { - $query_auth_code = trim(str_replace("QUERY_AUTH_CODE:", "", $data['Content'])); - $obj->apiText($query_auth_code, $data['FromUserName']); - } - } } } diff --git a/app/common/library/wxserver/Server.php b/app/common/library/wxserver/Server.php index fa3d701b..94ea187c 100644 --- a/app/common/library/wxserver/Server.php +++ b/app/common/library/wxserver/Server.php @@ -470,6 +470,7 @@ class Server $result = $this->curlPost($url, json_encode($data)); $result = json_decode($result, true); if (!empty($result['authorization_info']['authorizer_access_token'])) { + Db::table('yoshop_wx_server')->insertGetId(['content' => '获取到给客户发送信息token', 'created_at' => date('Y-m-d H:i:s')]); $token = $result['authorization_info']['authorizer_access_token']; $url = 'https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=' . $token; $data = []; @@ -478,7 +479,8 @@ class Server $data['text'] = [ 'content' => $authorization_code . '$_from_api', ]; - $this->curlPost($url, json_encode($data)); + $arr = $this->curlPost($url, json_encode($data)); + Db::table('yoshop_wx_server')->insertGetId(['content' => json_encode($arr), 'created_at' => date('Y-m-d H:i:s')]); } }