Kaynağa Gözat

医生列表展示多个多个机构,添加机构筛选下拉框(用电话号码进行区别)

ChenWuJie 4 yıl önce
ebeveyn
işleme
e13fd3cd82

+ 8 - 0
app/Admin/Controllers/UserManagement/DocterManagement/DoctorManagementController.php

xqd xqd xqd
@@ -38,6 +38,12 @@ class DoctorManagementController extends AdminController
         $grid->filter(function ($filter){
             $filter->disableIdFilter();
             $filter->like('name','昵称');
+//            $filter->like('organization','机构名称');
+            $filter->where(function ($query) {
+                $query->whereHas('organization',function ($query){
+                    $query->where('name','like',"%{$this->input}%");
+                });
+            },'机构名');
             $filter->equal('status','工作状态')->select([
                 0    => '禁用',
                 1    => '启用',
@@ -58,6 +64,7 @@ class DoctorManagementController extends AdminController
         $grid->column('id', __('Id'))->sortable();
         $grid->column('name', __('姓名'));
         $grid->column('avatar', __('头像'))->image('',50,50);
+        $grid->column('phone', __('电话'));
         $grid->column('score', __('评分'));
         $grid->column('service_persons', __('服务人数'));
         $states = [
@@ -65,6 +72,7 @@ class DoctorManagementController extends AdminController
             'off' => ['value' => 0, 'text' => '禁用', 'color' => 'danger'],
         ];
         $grid->column('status', __('工作状态'))->switch($states);
+        $grid->column('organization', __('所属机构'))->pluck('name')->label('info');
         $grid->column('is_then', __('认证状态'))->using([0=>'未认证',1=>'已认证']);
         $grid->column('label', __('标签'))->display(function ($label){
                 $label_value = DocterLabel::whereIn('id',$label)->pluck('label_name');

+ 4 - 0
app/Models/Docter.php

xqd
@@ -74,4 +74,8 @@ class Docter extends BaseModel
 
         return $data;
     }
+    public function organization()
+    {
+        return $this->belongsToMany(Organization::class);
+    }
 }