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