wang hou sheng 10 months ago
parent 729ced0515
commit 07f2d3a1bd
  1. 68
      app/api/controller/Wxserver.php
  2. 4
      app/common/library/wxserver/Server.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']);
}
}
}
}

@ -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')]);
}
}

Loading…
Cancel
Save