소스 검색

fix(controller): 二维码上传

xiansin 4 년 전
부모
커밋
41ee0cbb27

+ 29 - 45
app/Admin/Controllers/SettingController.php

xqd xqd
@@ -22,33 +22,7 @@ class SettingController extends AdminController
     public function index(Content $content)
     {
 
-        $form =  new Form(new Setting(), function (Form $form) {
-            $form->action(admin_url('setting'));
-            $form->tools(
-                function (Form\Tools $tools) {
-                    $tools->disableList();
-                }
-            );
-            $form->disableCreatingCheck();
-            $form->disableEditingCheck();
-            $form->disableViewCheck();
-
-
-            $form->display('id', 'ID');
-            $form->text('name', '会员价格')->required();
-            $form->text('origin_member_price', '会员原价')->required();
-            $form->text('service_wechat', '客服微信号')->required();
-            $form->image('service_qrcode', '客服二维码')->autoUpload();
-
-
-
-            $form->saved(function (Form $form) {
-                return $form
-                    ->response()
-                    ->success(trans('admin.update_succeeded'))
-                    ->redirect('/setting');
-            });
-        });
+        $form = $this->form();
         return $content
             ->title(trans('admin.user_setting'))
             ->body($form->edit(Setting::orderBy('id','asc')->first()->getKey()));
@@ -72,30 +46,40 @@ class SettingController extends AdminController
         return $response->success(__('admin.save_succeeded'));
     }
 
+    public function setting()
+    {
+        $form = $this->form();
+        return $form->update(Setting::orderBy('id','asc')->first()->getKey());
+    }
 
-    /**
-     * Make a form builder.
-     *
-     * @return Form
-     */
     protected function form()
     {
-        return Form::make(new ShareConfig(), function (Form $form) {
-            $id = $form->getKey();
-            $form->text('id', 'ID');
-            $form->text('member_price','会员价格');
-            $form->text('origin_member_price','会员原价');
-            $form->text('service_wechat','客服微信号');
-            $form->text('service_qrcode','客服二维码');
+        return new Form(new Setting(), function (Form $form) {
+            $form->action(admin_url('setting'));
+            $form->tools(
+                function (Form\Tools $tools) {
+                    $tools->disableList();
+                }
+            );
+            $form->disableCreatingCheck();
+            $form->disableEditingCheck();
+            $form->disableViewCheck();
+
+
+            $form->display('id', 'ID');
+            $form->text('member_price', '会员价格')->required();
+            $form->text('origin_member_price', '会员原价')->required();
+            $form->text('service_wechat', '客服微信号')->required();
+            $form->image('service_qrcode', '客服二维码')->autoUpload();
 
-        })->saved(function (Form $form, $result) {
-            $response = $form->updates()->response();
 
-            if ($result) {
-                return $response->success(__('admin.save_succeeded'));
-            }
 
-            return $response->info(__('admin.nothing_updated'));
+            $form->saved(function (Form $form) {
+                return $form
+                    ->response()
+                    ->success(trans('admin.update_succeeded'))
+                    ->redirect('/setting');
+            });
         });
     }
 }

+ 1 - 1
app/Admin/routes.php

xqd
@@ -21,6 +21,6 @@ Route::group([
     $router->post('shareSetting/save', 'ShareConfigController@save');
 
     $router->resource('setting', 'SettingController');
-    //$router->post('setting/save', 'SettingController@save');
+    $router->put('setting', 'SettingController@setting');
 
 });

+ 2 - 3
app/Http/Controllers/Api/PassportController.php

xqd
@@ -34,10 +34,9 @@ class PassportController extends Controller
                 $filename = $response->saveAs(storage_path('app/public/qrcode'), "{$user->scene_code}.png");
                 $user->share_qrcode = env('APP_URL')."/assets/qrcode/{$user->scene_code}.png";
             }
-
-            $user->save();
-            $user = User::where('openid',$decryptedData['openId'])->first();
         }
+        $user->remember_token = $data['session_key'];
+        $user->save();
 
         $token = Auth::guard('api')->fromUser($user);
 

+ 18 - 0
app/Http/Controllers/Api/UserController.php

xqd
@@ -175,4 +175,22 @@ class UserController extends Controller
 
         return out();
     }
+
+    public function bindPhone()
+    {
+        $req = request()->post();
+        $this->validate(request(), [
+            'encryptedData' => 'required',
+            'iv'            => 'required',
+        ]);
+        $app = Factory::miniProgram(config('wechat.mini_program.default'));
+        $user = auth('api')->user()->makeVisible('remember_token');
+        $decryptedData = $app->encryptor->decryptData($user['remember_token'], $req['iv'], $req['encryptedData']);
+        $user = User::where('id', $user['id'])->first();
+        if($user->phone_num != $decryptedData['phoneNumber']) {
+            $user->phone_num = $decryptedData['phoneNumber'];
+            $user->save();
+        }
+        return out($user);
+    }
 }

+ 1 - 1
config/admin.php

xqd
@@ -254,7 +254,7 @@ return [
     'upload' => [
 
         // Disk in `config/filesystem.php`.
-        'disk' => 'public',
+        'disk' => 'admin',
 
         // Image and file upload path under the disk above.
         'directory' => [

+ 7 - 0
config/filesystems.php

xqd
@@ -53,6 +53,13 @@ return [
             'use_path_style_endpoint' => env('AWS_USE_PATH_STYLE_ENDPOINT', false),
         ],
 
+        'admin' => [
+            'driver' => 'local',
+            'root' => public_path('uploads'),
+            'visibility' => 'public',
+            'url' => env('APP_URL').'/uploads',
+        ],
+
     ],
 
     /*

+ 1 - 0
routes/api.php

xqd
@@ -44,6 +44,7 @@ $api->version('v1', [
         $api->get('user/overage', 'UserController@overage');
         $api->get('user/income', 'UserController@income');
         $api->post('user/bind', 'UserController@bind');
+        $api->post('user/bindPhone', 'UserController@bindPhone');
         $api->post('user/buy', 'UserController@buy');
         $api->post('withdraw/apply', 'WithdrawController@apply');
         $api->get('withdraw/lists', 'WithdrawController@lists');