|
@@ -0,0 +1,93 @@
|
|
|
|
+<?php
|
|
|
|
+
|
|
|
|
+namespace App\Http\Controllers\Api;
|
|
|
|
+
|
|
|
|
+use App\Service\Weixin\WeixinService;
|
|
|
|
+use App\Service\Weixin\WxEmployeeService;
|
|
|
|
+use Illuminate\Http\Request;
|
|
|
|
+
|
|
|
|
+class WeixinController extends BaseController
|
|
|
|
+{
|
|
|
|
+ //开发者密码:
|
|
|
|
+ /**
|
|
|
|
+ * 用于微信token验证,全部通用,前提token都为qingyao
|
|
|
|
+ * @param Request $request
|
|
|
|
+ * @return void
|
|
|
|
+ */
|
|
|
|
+ public function weixin(Request $request)
|
|
|
|
+ {
|
|
|
|
+ file_put_contents('1.txt',json_encode($request->all()));
|
|
|
|
+
|
|
|
|
+ $data = $request->all();
|
|
|
|
+ $signature = $data["signature"];
|
|
|
|
+ $timestamp = $data["timestamp"];
|
|
|
|
+ $nonce = $data["nonce"];
|
|
|
|
+
|
|
|
|
+ $token = 'qingyao';
|
|
|
|
+ $tmpArr = array($token, $timestamp, $nonce);
|
|
|
|
+ sort($tmpArr, SORT_STRING);
|
|
|
|
+ $tmpStr = implode( $tmpArr );
|
|
|
|
+ $tmpStr = sha1( $tmpStr );
|
|
|
|
+
|
|
|
|
+ if( $tmpStr == $signature ){
|
|
|
|
+ echo $data['echostr'];die;
|
|
|
|
+ }else{
|
|
|
|
+ die('fail');
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public function setWebHook(Request $request){
|
|
|
|
+ $service = new WeixinService();
|
|
|
|
+ list($status,$msg) = $service->setWebHook($request->all());
|
|
|
|
+ return $this->json_return($status,$msg,'');
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 重定向获取unionid
|
|
|
|
+ * @param Request $request
|
|
|
|
+ * @return void
|
|
|
|
+ */
|
|
|
|
+ public function getUnionid(Request $request){
|
|
|
|
+ $service = new WeixinService();
|
|
|
|
+ $res = $service->getUnionid($request->all());
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 获取openid
|
|
|
|
+ * @param Request $request
|
|
|
|
+ * @return void
|
|
|
|
+ */
|
|
|
|
+ public function getOpenid(Request $request){
|
|
|
|
+ $service = new WeixinService();
|
|
|
|
+ list($status,$data) = $service->getOpenid($request->all());
|
|
|
|
+ if ($status) {
|
|
|
|
+ return $this->json_return(200, '', $data);
|
|
|
|
+ } else {
|
|
|
|
+ return $this->json_return(201, $data);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public function setUser(Request $request)
|
|
|
|
+ {
|
|
|
|
+ $service = new WxEmployeeService();
|
|
|
|
+ list($status, $data) = $service->setUser($request->all());
|
|
|
|
+
|
|
|
|
+ if ($status) {
|
|
|
|
+ return $this->json_return(200, '', $data);
|
|
|
|
+ } else {
|
|
|
|
+ return $this->json_return(201, $data);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public function login(Request $request)
|
|
|
|
+ {
|
|
|
|
+ $service = new WxEmployeeService();
|
|
|
|
+ list($status, $data) = $service->login($request->all(),$request->header('ciphertext'));
|
|
|
|
+
|
|
|
|
+ if ($status) {
|
|
|
|
+ return $this->json_return(200, '', $data);
|
|
|
|
+ } else {
|
|
|
|
+ return $this->json_return(201, $data);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+}
|