yingzi 2 лет назад
Родитель
Сommit
4abec6d477
2 измененных файлов с 37 добавлено и 1 удалено
  1. 34 1
      app/api/controller/User.php
  2. 3 0
      app/api/route/user.php

+ 34 - 1
app/api/controller/User.php

@@ -643,6 +643,27 @@ class User extends BaseController
         return app('json')->success("设置成功");
     }
     
+    
+    /**
+     * 获取邀请海报小程序码
+     * @param Request $request
+     */
+    public function getWxmpInviteQrcode(Request $request){
+        $weixinA = new weixina();
+        $data = $weixinA->getUnlimitedQRCode("pages/index/index","scene=".$request->user["uid"]);
+        if(empty($data)){
+            return app('json')->fail("小程序码获取失败".$weixinA->error);
+        }
+        $base64 = 'data:'.$data['contentType'].';base64,'.base64_encode($data['buffer']);
+        $res = $this->uploadImageBase64("wximg",$base64,1);
+        if($res["code"]!=1){
+            return app('json')->fail($res["msg"]);
+        }
+        $inviteData = (new SysModel)->getData("invite");
+        $bgimg = $inviteData["img"];
+        return app('json')->success(["qrcode"=>$res["url"],"bgimg"=>$bgimg]);
+    }
+    
     /**
      * 获取小程序码
      * @param Request $request
@@ -761,7 +782,7 @@ class User extends BaseController
      * @param type $code
      * @param type $base64
      */
-    public function uploadImageBase64($code,$base64){
+    public function uploadImageBase64($code,$base64,$isQiniu=0){
         $sysData = (new SysModel())->where("id",1)->find();
         $uploadConfig = config('filesystem');
         //验证base64格式
@@ -791,6 +812,18 @@ class User extends BaseController
         if(!file_put_contents($filePath, base64_decode(str_replace($result[1], '', $base64)))){
             return ["code"=>-1,"msg"=>"文件报错失败"];
         }
+        //七牛上传
+        if($isQiniu==1){
+            $qiniu   = new  Qiniu;
+            $img_url = $qiniu->updateFile('img', $filePath, $filePath);
+            if (empty($img_url['url'])) {
+                return ["code"=>-1,"msg"=>"文件报错失败:".$qiniu->getError()];
+            }
+            @unlink($filePath);
+            return ["code"=>1,"url"=>str_replace("\\", "/", $img_url)];
+        }
+        
+        
         $savePath = $sysData['system_url'].config('filesystem.disks.resource.url').DIRECTORY_SEPARATOR.$hashName;
         return ["code"=>1,"url"=>str_replace("\\", "/", $savePath)];
     }

+ 3 - 0
app/api/route/user.php

@@ -49,6 +49,9 @@ Route::group('user', function () {
     Route::rule('qiniuUploadToken', 'User/qiniuUploadToken');
     //七牛图片上传
     Route::rule('qiniuUpload', 'User/qiniuUpload');
+    //获取小程序邀请码
+    Route::rule('getWxmpInviteQrcode', 'User/getWxmpInviteQrcode');
+