Explorar o código

wesmiler 报恩寺项目提交

wesmiler %!s(int64=4) %!d(string=hai) anos
pai
achega
b654dea1c2

+ 11 - 0
app/Http/Controllers/Api/v1/MemberController.php

@@ -44,11 +44,22 @@ class MemberController extends BaseController
      */
     public function info(){
         $type = request()->get('type', 1);
+        $userId = request()->get('user_id', 0);
         $info = $this->service->getUserInfo(['m.id'=> $this->userId],'',$type);
         return message(MESSAGE_OK,true, $info);
     }
 
     /**
+     * 获取用户信息
+     * @return array|mixed
+     */
+    public function master(){
+        $userId = request()->get('user_id', 0);
+        $info = $this->masterService->getUserInfo($userId,$this->userId);
+        return message(MESSAGE_OK,true, $info);
+    }
+
+    /**
      * 保存资料
      * @param MemberValidator $validator
      * @return array

+ 46 - 0
app/Services/MasterService.php

@@ -11,9 +11,11 @@
 
 namespace App\Services;
 
+use App\Models\FansModel;
 use App\Models\MasterAdviceModel;
 use App\Models\MasterModel;
 use App\Models\MemberModel;
+use App\Models\SiyuanModel;
 
 /**
  * 法师管理-服务类
@@ -93,6 +95,50 @@ class MasterService extends BaseService
     }
 
     /**
+     * 获取用户信息
+     * @param $openid OPENID
+     * @param array $field m用户表
+     * @return array
+     */
+    public function getUserInfo($uid, $userId=0)
+    {
+        $info = $this->model::from('master as ms')
+            ->leftJoin('member as m','m.id','=','ms.user_id')
+            ->where(['ms.user_id'=> $uid,'ms.mark'=> 1,'ms.status'=> 1,'m.mark'=> 1,'m.status'=> 1])
+            ->where('m.id','>', 0)
+            ->select('ms.*','m.nickname','m.avatar')
+            ->first();
+        $info = $info ? $info->toArray() : [];
+        if (isset($info['avatar'])) {
+            $info['avatar'] = $info['avatar'] ? get_image_url($info['avatar']) : '';
+        }
+
+        if($info){
+            $info['idcard_front_preview'] = $info['idcard_front']? get_image_url($info['idcard_front']) : '';
+            $info['idcard_back_preview'] = $info['idcard_back']? get_image_url($info['idcard_back']) : '';
+
+            $info['description_text'] = $info['description']? str_replace("\n","<br>", $info['description']) : '';
+
+            // 评分
+            $score = MasterAdviceModel::where(['master_uid'=> $uid,'status'=> 1,'pid'=> 0])
+                ->select(\DB::raw("sum('score)/count('id) as score"))
+                ->get();
+            $info['score'] = $score? $score : 0;
+
+            // 是否评分过
+            $info['is_score'] = 0;
+            $adviceInfo = MasterAdviceModel::where(['master_uid'=> $uid,'user_id'=> $userId,'status'=> 1])
+                ->sellect(['id','score'])
+                ->first();
+            if($adviceInfo){
+                $info['is_score'] = $adviceInfo->score>0? 2 : 1;
+            }
+        }
+
+        return $info;
+    }
+
+    /**
      * 申请提交
      * @param $userId
      * @return array

+ 2 - 0
app/Services/MemberService.php

@@ -158,6 +158,8 @@ class MemberService extends BaseService
                     $master['idcard_back_preview'] = $master['idcard_back']? get_image_url($master['idcard_back']) : '';
 
                     $master['description_text'] = $master['description']? str_replace("\n","<br>", $master['description']) : '';
+
+
                 }
                 $info['master'] = $master? $master : [];
             }

+ 1 - 0
routes/api.php

@@ -47,6 +47,7 @@ Route::any('/notify/refund/{scene}', [\App\Http\Controllers\Api\v1\NotifyControl
 
 // 用户
 Route::post('/member/info', [\App\Http\Controllers\Api\v1\MemberController::class, 'info']);
+Route::post('/member/master', [\App\Http\Controllers\Api\v1\MemberController::class, 'master']);
 Route::post('/member/save', [\App\Http\Controllers\Api\v1\MemberController::class, 'saveInfo']);
 Route::post('/member/vip', [\App\Http\Controllers\Api\v1\MemberController::class, 'vip']);
 Route::post('/member/sign', [\App\Http\Controllers\Api\v1\MemberController::class, 'sign']);