ソースを参照

wesmiler 报恩寺项目提交

wesmiler 4 年 前
コミット
59b8f16c09

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

@@ -77,6 +77,14 @@ class MemberController extends BaseController
     }
 
     /**
+     * 法师列表
+     * @return mixed
+     */
+    public function masterList(){
+        return $this->masterService->getDataList($this->userId);
+    }
+
+    /**
      * 加入会员
      * @return array
      */

+ 40 - 0
app/Models/MasterAdviceModel.php

@@ -0,0 +1,40 @@
+<?php
+// +----------------------------------------------------------------------
+// | Laravel框架 [ Laravel ]
+// +----------------------------------------------------------------------
+// | 版权所有 2017~2021 Laravel研发中心
+// +----------------------------------------------------------------------
+// | 官方网站: http://www.laravel.cn
+// +----------------------------------------------------------------------
+// | Author: wesmiler <12345678@qq.com>
+// +----------------------------------------------------------------------
+
+namespace App\Models;
+
+/**
+ * 法师咨询管理-模型
+ * @author wesmiler
+ * @since 2020/11/11
+ * Class MasterAdviceModel
+ * @package App\Models
+ */
+class MasterAdviceModel extends BaseModel
+{
+    // 设置数据表
+    protected $table = 'master_advices';
+
+    /**
+     * 获取记录信息
+     * @param int $id 记录ID
+     * @return array|string
+     * @author wesmiler
+     * @since 2020/11/11
+     */
+    public function getInfo($id)
+    {
+        $info = parent::getInfo($id); // TODO: Change the autogenerated stub
+
+        return $info;
+    }
+
+}

+ 1 - 1
app/Services/AdvicesService.php

@@ -14,7 +14,7 @@ namespace App\Services;
 use App\Models\AdviceModel;
 
 /**
- * 文章分类管理-服务类
+ * 反馈建议管理-服务类
  * @author wesmiler
  * @since 2020/11/11
  * Class AdvicesService

+ 44 - 1
app/Services/MasterService.php

@@ -11,9 +11,9 @@
 
 namespace App\Services;
 
+use App\Models\MasterAdviceModel;
 use App\Models\MasterModel;
 use App\Models\MemberModel;
-use App\Models\SiyuanModel;
 
 /**
  * 法师管理-服务类
@@ -49,6 +49,49 @@ class MasterService extends BaseService
     }
 
     /**
+     * 列表
+     * @return array
+     */
+    public function getDataList($userId){
+        $page = isset($params['pageSize']) ? intval($params['pageSize']) : PAGE;
+        $pageSize = isset($params['pageSize']) ? intval($params['pageSize']) : PERPAGE;
+        $dataList = $this->model::from('master as ms')
+            ->leftJoin('member as m','m.id','=','ms.user_id')
+            ->where(['ms.mark'=> 1,'ms.status'=> 1,'m.mark'=> 1,'m.status'=> 1])
+            ->where('m.id','>', 0)
+            ->whereNotIn('m.id', [$userId])
+            ->select('ms.*','m.nickname','m.avatar')
+            ->orderBy('ms.create_time', 'desc')
+            ->paginate($pageSize);
+
+        $dataList = $dataList ? $dataList->toArray() : [];
+        if ($dataList) {
+            foreach ($dataList['data'] as &$item) {
+                $item['avatar'] = $item['avatar']? get_image_url($item['avatar']):'';
+                $item['create_time'] = $item['create_time']? datetime($item['create_time'],'Y-m-d H:i:s') : '';
+
+                // 登录状态
+                $item['is_online'] = 0;
+                if(RedisService::get("auths:info:{$item['user_id']}")){
+                    $item['is_online'] = 1;
+                }
+
+                // 咨询人数
+                $adviceCount = MasterAdviceModel::where(['master_uid'=> $item['user_id'],'mark'=>1,'status'=> 1])->count('id');
+                $item['advice_count'] = $adviceCount? $adviceCount : 0;
+            }
+        }
+
+        return [
+            'code' => 0,
+            'success'=> true,
+            'msg' => '操作成功',
+            'count' => isset($dataList['total']) ? $dataList['total'] : 0,
+            'data' => isset($dataList['data']) ? $dataList['data'] : 0,
+        ];
+    }
+
+    /**
      * 申请提交
      * @param $userId
      * @return array