Sfoglia il codice sorgente

列表页排序修改

Swdz-WangHaiJun 4 anni fa
parent
commit
e81fa9c72a

+ 0 - 1
app/Admin/Actions/Community/Notice/sendNotice.php

xqd
@@ -14,7 +14,6 @@ class sendNotice extends BatchAction
     public function handle(Collection $collection)
     {
         foreach ($collection as $model) {
-            dd($model->toArray());
             $openid = User::where('id',$model->id)->value('openid');
             $content = request('content');
             $remark= request('remark');

+ 1 - 0
app/Community/Controllers/ApplyServiceController.php

xqd
@@ -28,6 +28,7 @@ class ApplyServiceController extends AdminController
     {
         $grid = new Grid(new Serviceapplys());
 
+        $grid->model()->orderByDesc('id');
         $grid->column('id', __('Id'));
         $grid->column('docter.avatar', __('头像'))->image('',50,50);
         $grid->column('docter.id', __('医生ID'));

+ 2 - 2
app/Community/Controllers/DocterAccountController.php

xqd
@@ -55,8 +55,8 @@ class DocterAccountController extends  AdminController
 //            $form->multipleSelect('roles', trans('tenancy.roles'))->options($roleModel::where('org_id',$org_id)->get()->pluck('name', 'id'));
 //        }
 
-        $form->multipleSelect('roles', trans('tenancy.roles'))->options($roleModel::get()->pluck('name', 'id'));
-    
+        $form->multipleSelect('roles', trans('tenancy.roles'))->options($roleModel::whereIn('name',['门诊医生','儿保医生','计免医生','图文咨询','所有医生'])->get()->pluck('name', 'id'));
+
         $form->display('created_at', trans('tenancy.created_at'));
         $form->display('updated_at', trans('tenancy.updated_at'));
 

+ 9 - 7
app/Community/Controllers/DocterOrgController.php

xqd xqd xqd
@@ -36,6 +36,7 @@ class DocterOrgController extends AdminController
 
 //        $grid->disableCreateButton(false);
         $is_manager = Admin::user()->isRole('manager');
+        $grid->model()->orderByDesc('id');
         $grid->column('id', __('Id'));
         $grid->column('docter.name', __('成员名称'));
         if($is_manager){
@@ -45,6 +46,12 @@ class DocterOrgController extends AdminController
                 return $org_name ?? '总后台';
             });
         }
+        $grid->column('docter.office_id', __('所属部门'))->display(function ($w){
+            return Office::where(['id'=>$w])->value('name');
+        });
+        $grid->column('docter.qualification_id', __('认证资质'))->display(function ($w){
+            return Qualification::where(['id'=>$w])->value('name');
+        });
         $grid->column('docter.sex', __('性别'))->display(function ($w){
             return $w==1?'男':'女';
         });;
@@ -55,13 +62,8 @@ class DocterOrgController extends AdminController
             if(empty($w)) return '未知';
             $type = DocterOrganization::$_doct_type;
             return $type[$w];
-        });
-        $grid->column('docter.office_id', __('所属部门'))->display(function ($w){
-            return Office::where(['id'=>$w])->value('name');
-        });
-        $grid->column('docter.qualification_id', __('认证资质'))->display(function ($w){
-            return Qualification::where(['id'=>$w])->value('name');
-        });
+        })->label('info');
+
 
         $grid->actions(function ($actions){
             $actions->disableDelete();

+ 2 - 0
app/Community/Controllers/DocterVerifyController.php

xqd
@@ -35,6 +35,8 @@ class DocterVerifyController extends AdminController
             $org_id = $user->org_id;
             $grid->model()->where(['organization_id'=>$org_id]);
         }
+        $grid->model()->orderByDesc('id');
+
         $grid->column('id', __('Id'));
         $grid->column('docter.name', __('医生'));
         $grid->column('docter.sex', __('性别'))->using(['未知','男','女']);

+ 3 - 0
app/Community/Controllers/HomeController.php

xqd
@@ -20,6 +20,9 @@ class HomeController extends Controller
     }
     public function home(Content $content)
     {
+        if(!Admin::user()->isAdministrator()){
+            return redirect('/cdms/notices');
+        }
         return $content
             ->title('数据概况')
             ->description('社区段实时数据')

+ 5 - 2
app/Community/Controllers/NoticeController.php

xqd
@@ -30,13 +30,16 @@ class NoticeController extends AdminController
     {
 
         $content = new Content();
-
-    $content->title('通知公告')
+        $content->title('通知公告')
         ->description('公告列表');
         $user = Admin::user();
         $org_id = $user->org_id;
         $docter_id = $user->docter_id;
         $notice = CommunityNotice::get();
+
+        if($org_id){
+            $notice = CommunityNotice::where('organization_id',$org_id)->get();
+        }
         $content->view('cdms.notice',['notice'=>$notice]);
         return $content;
     }

+ 22 - 9
app/Community/Controllers/NurseUserController.php

xqd xqd xqd
@@ -5,6 +5,7 @@ namespace App\Community\Controllers;
 use App\Models\Order;
 use App\Models\OrderNurse;
 use App\Models\PatientRemark;
+use App\Models\Serviceapplys;
 use EasyWeChat\Factory;
 use Encore\Admin\Controllers\AdminController;
 use Encore\Admin\Facades\Admin;
@@ -31,18 +32,26 @@ class NurseUserController extends AdminController
         $grid = new Grid(new Order());
         $is_amdin = Admin::user()->isRole('administrator');
 
-        if(!$is_amdin){
-            $grid->model()->where(['organization_id'=>Admin::user()->org_id,'product_type'=>5]);
-        }
-
+        $grid->model()->orderByDesc('id');
         $grid->model()->GroupBy('patient_id');
         $grid->column('orderPatient.name', __('姓名'));
         $grid->column('orderUser.nickname', __('监护人'));
         $grid->column('orderPatient.phone', __('监护人手机号'));
         $grid->column('orderPatient.birthday', __('出生日期'));
-        $grid->column('patient_id', __('备注'))->display(function ($w){
-            return PatientRemark::where(['org_id'=>intval(Admin::user()->org_id),'patient_id'=>$w,'type'=>1])->value('remark');
-        });
+
+        if(!$is_amdin){
+            $grid->model()->where(['organization_id'=>Admin::user()->org_id,'product_type'=>5]);
+            $grid->column('patient_id', __('备注'))->display(function ($w){
+                return PatientRemark::where(['org_id'=>intval(Admin::user()->org_id),'patient_id'=>$w,'type'=>1])->value('remark');
+            });
+        }
+        if($is_amdin){
+            $grid->actions(function ($actions){
+                $actions->disableDelete();
+                $actions->disableView();
+                $actions->disableEdit();
+            });
+        }
 
         $grid->filter(function ($flter){
             $flter->like('orderPatient.name','请输入用户姓名');
@@ -77,13 +86,17 @@ class NurseUserController extends AdminController
         $form->setAction('/cdms/api/paitent_remark');
         $form->hidden('patient_id');
         $org_id = Admin::user()->org_id;
-        $form->hidden('org_id')->value(intval($org_id));
         $form->hidden('type')->value(1);
-        if($org_id){
+        if(!empty($org_id)){
             $form->textarea('remark','备注')->default(function () use ($org_id,$form){
                 return PatientRemark::where(['org_id'=>intval($org_id),'patient_id'=>$form->model()->patient_id,'type'=>1])->value('remark');
             });
+
         }
+            $form->hidden('org_id')->value(intval($org_id));
+        $form->saving(function ($form){
+            $form->type = 1;
+        });
         return $form;
     }
 }

+ 1 - 0
app/Community/Controllers/OfficeController.php

xqd
@@ -27,6 +27,7 @@ class OfficeController extends AdminController
     protected function grid()
     {
         $grid = new Grid(new Office());
+        $grid->model()->orderByDesc('id');
         $is_admin = Admin::user()->isRole('administrator');
         if(!$is_admin){
             $grid->model()->where(['org_id'=>Admin::user()->org_id]);

+ 2 - 0
app/Community/Controllers/OrderController.php

xqd
@@ -29,6 +29,8 @@ class OrderController extends AdminController
         $grid = new Grid(new Order());
         $user = Admin::user();
         $is_admin = Admin::user()->inRoles(['administrator','devloper']);
+        $grid->model()->orderByDesc('id');
+
         //检查是否是门诊医生
         $is_docter = $user->isRole('opc');
         if(!$is_admin){

+ 1 - 0
app/Community/Controllers/OrderNurseController.php

xqd
@@ -34,6 +34,7 @@ class OrderNurseController extends AdminController
     protected function grid()
     {
         $grid = new Grid(new OrderNurse());
+        $grid->model()->orderByDesc('id');
 
         $user = Admin::user();
         $is_admin = Admin::user()->inRoles(['administrator','developer']);

+ 2 - 0
app/Community/Controllers/OrderVaccinesController.php

xqd
@@ -33,6 +33,8 @@ class OrderVaccinesController extends AdminController
     protected function grid()
     {
         $grid = new Grid(new Order());
+        $grid->model()->orderByDesc('id');
+
         $user = Admin::user();
         $is_admin = Admin::user()->inRoles(['administrator','devloper']);
         //检查是否是门诊医生

+ 1 - 0
app/Community/Controllers/OrganizationController.php

xqd
@@ -29,6 +29,7 @@ class OrganizationController extends AdminController
     protected function grid()
     {
         $grid = new Grid(new Organization());
+        $grid->model()->orderByDesc('id');
 
         $grid->column('name', __('社区医院'));
         $type = request('product_type',4);

+ 2 - 1
app/Community/Controllers/PermissionController.php

xqd xqd
@@ -10,7 +10,7 @@ use Encore\Admin\Form;
 use Encore\Admin\Grid;
 use Encore\Admin\Show;
 
-class PermissionController extends AdminController
+class  PermissionController extends AdminController
 {
     /**
      * Title for current resource.
@@ -30,6 +30,7 @@ class PermissionController extends AdminController
 
         $user = Admin::user();
         $is_admin = Admin::user()->inRoles(['administrator','devloper']);
+        $grid->model()->orderByDesc('id');
         $grid->disableCreateButton(false);
 //        $is_manager = Admin::user()->isRole('manager');
         if(!$is_admin){

+ 36 - 30
app/Community/Controllers/ServiceController.php

xqd xqd xqd
@@ -20,7 +20,7 @@ class ServiceController extends AdminController
      *
      * @var string
      */
-    protected $title = '服务';
+    protected $title = '医生服务';
 
     /**
      * Make a grid builder.
@@ -30,41 +30,47 @@ class ServiceController extends AdminController
     protected function grid()
     {
         $grid = new Grid(new Serviceapplys());
+        $grid->model()->orderByDesc('id');
 
         $status = request('status',2);
-
+//
         $grid->tools(function ($tools) {
             $tools->batch(function ($batch) {
                 $batch->disableDelete();
             });
         });
 
-        if($status == 2){
-            $grid->column('ondocter.name','医生姓名');
-            $grid->column('ondocter.phone_price','咨询价格');
-            $grid->column('step_price','步进价格')->display(function (){
-                $step = Doctertimes::where(['docter_id'=>$this->id])->value('step_price');
-                return $step;
-            });
+        $grid->column('ondocter.name','医生姓名');
+        $grid->column('ondocter.phone_price','咨询价格');
+        $grid->column('step_price','步进价格')->display(function (){
+            $step = Doctertimes::where(['docter_id'=>$this->id])->value('step_price');
+            return $step;
+        });
 
-            $grid->column('orders','总订单数')->display(function (){
+        $grid->column('orders','总订单数')->display(function (){
 
-                $order_type = Order::where(['docter_id'=>$this->id,'product_type'=>1])->count();
-                return $order_type;
-            });
-            $grid->column('orders_actions','进行中数')->display(function (){
-                $action = Order::where(['docter_id'=>$this->id,'product_type'=>1,'order_status'=>3])->count();
-                return $action;
-            });
-            $grid->column('orders_inishs','完成数')->display(function (){
-                $finish = Order::where(['docter_id'=>$this->id,'product_type'=>1,'order_status'=>4])->count();
-                return $finish;
-            });
-            $grid->column('orders_anomaly','异常数')->display(function (){
-                $anomaly = Order::where(['docter_id'=>$this->id,'product_type'=>1])->whereIn('order_status',[1,2,5])->count();
-                return $anomaly;
-            });
-        } else {
+            $order_type = Order::where(['docter_id'=>$this->id,'product_type'=>1])->count();
+            return $order_type;
+        });
+        $grid->column('orders_actions','进行中数')->display(function (){
+            $action = Order::where(['docter_id'=>$this->id,'product_type'=>1,'order_status'=>3])->count();
+            return $action;
+        });
+        $grid->column('orders_inishs','完成数')->display(function (){
+            $finish = Order::where(['docter_id'=>$this->id,'product_type'=>1,'order_status'=>4])->count();
+            return $finish;
+        });
+        $grid->column('orders_anomaly','异常数')->display(function (){
+            $anomaly = Order::where(['docter_id'=>$this->id,'product_type'=>1])->whereIn('order_status',[1,2,5])->count();
+            return $anomaly;
+        });
+
+        $grid->column('status', __('状态'))->using([1=>'审核',2=>'已通过',3=>'已拒绝'])->label([
+            1 => 'warning',
+            2 => 'success',
+            3 => 'default'
+        ]);
+        if($status == 7) {
 
             $grid->column('id', __('Id'));
             $grid->column('ondocter.avatar', __('头像'))->image('',50,50);
@@ -91,10 +97,10 @@ class ServiceController extends AdminController
             $actions->disableEdit();
             $actions->disableView();
             $actions->disableDelete();
-            if($actions->row->status == 1){
-                $actions->add(new ApplysAction());
-                $actions->add(new RefuseAction());
-            }
+//            if($actions->row->status == 1){
+//                $actions->add(new ApplysAction());
+//                $actions->add(new RefuseAction());
+//            }
         });
 
 

+ 2 - 0
app/Community/Controllers/UserNoticeController.php

xqd
@@ -29,6 +29,8 @@ class UserNoticeController extends AdminController
         $grid = new Grid(new Order());
 
         $grid->model()->GroupBy('patient_id');
+        $grid->model()->orderByDesc('id');
+
         $user = Admin::user();
         if(empty(request('product_type'))){
             $user_ids = Order::whereIn('product_type',[4,5])->distinct()->pluck('user_id');

+ 4 - 3
app/Community/Controllers/Vaccine/OrganizationVaccineController.php

xqd xqd
@@ -38,7 +38,7 @@ class OrganizationVaccineController extends AdminController
         $grid->column('id', __('Id'));
         $grid->column('organization.name', __('机构'));
         $grid->column('vaccine.name', __('疫苗'));
-        $grid->column('stock', __('库存'));
+        $grid->column('stock', __('库存'))->editable();
         $grid->column('created_at', __('创建时间'));
         $grid->column('updated_at', __('更新时间'));
 
@@ -76,14 +76,15 @@ class OrganizationVaccineController extends AdminController
         $is_admin = Admin::user()->isAdministrator();
         if($is_admin){
             if($form->isEditing()){
-                $form->select('org_id','机构')->options(Organization::pluck('name','id'))->disable();
+                $form->select('org_id','机构')->options(Organization::pluck('name','id'))->readOnly();
+                $form->select('vaccine_id', __('疫苗'))->options(Vaccine::pluck('name','id'))->readOnly();
             } else {
                 $form->select('org_id','机构')->options(Organization::pluck('name','id'));
+                $form->select('vaccine_id', __('疫苗'))->options(Vaccine::pluck('name','id'));
             }
         } else {
             $form->hidden('org_id')->value(Admin::user()->org_id);
         }
-        $form->select('vaccine_id', __('疫苗'))->options(Vaccine::pluck('name','id'));
         $form->text('stock', __('库存'))->rules('required',['required'=>'请输入库存']);
 
         return $form;

+ 9 - 10
app/Community/Controllers/VaccineController.php

xqd xqd
@@ -4,6 +4,7 @@ namespace App\Community\Controllers;
 
 use App\Models\Order;
 use App\Models\Organization;
+use App\Models\OrganizationVaccine;
 use App\Models\OrganizationVaccines;
 use App\Models\Vaccine;
 use Encore\Admin\Controllers\AdminController;
@@ -29,24 +30,22 @@ class VaccineController extends AdminController
     protected function grid()
     {
         $grid = new Grid(new Vaccine());
+        $grid->model()->orderByDesc('id');
 
-        $org_id = Admin::user()->org_id;
-        if($org_id){
-            $ids = OrganizationVaccines::where(['org_id'=>$org_id])->pluck('vaccine_id')->toArray();
-            $grid->model()->where('org_id',$org_id);
-        }
         $grid->disableCreateButton(false);
         $grid->column('id', __('ID'));
         $grid->column('name', __('疫苗名称'));
         $grid->column('type', __('类别'))->editable('select',[1=>'一类',2=>'二类']);
-        $grid->column('stock', __('剩余库存'))->editable();
-        $grid->column('org_id', __('已使用量'))->display(function () use ($org_id) {
-           return Order::where(['product_type'=>4,'organization_id'=>$org_id])->wherehas('orderVaccine',function ($query){
+        $grid->column('stocks', __('剩余库存'))->display(function (){
+            return OrganizationVaccine::where(['vaccine_id'=>$this->id])->sum('stock');
+        });
+        $grid->column('org_id', __('已使用量'))->display(function ()  {
+           return Order::where(['product_type'=>4])->wherehas('orderVaccine',function ($query){
                 $query->where('vaccine_id',$this->id);
             })->count();
         });
-        $grid->column('today_num', __('今日预约'))->display(function () use ($org_id) {
-            return Order::where(['product_type'=>4,'organization_id'=>$org_id])->wherehas('orderVaccine',function ($query){
+        $grid->column('today_num', __('今日预约'))->display(function ()  {
+            return Order::where(['product_type'=>4])->wherehas('orderVaccine',function ($query){
                 $query->where('vaccine_id',$this->id);
             })->count();
         });;

+ 2 - 0
app/Community/Controllers/VaccineUserController.php

xqd
@@ -27,6 +27,8 @@ class VaccineUserController extends AdminController
     protected function grid()
     {
         $grid = new Grid(new Order());
+        $grid->model()->orderByDesc('id');
+
         $is_amdin = Admin::user()->isRole('administrator');
         $user = Admin::user();
         if(!$is_amdin){

+ 3 - 1
app/Community/routes.php

xqd xqd xqd
@@ -2,6 +2,7 @@
 //常规路由
 Route::get('/', 'HomeController@home');
 Route::get('/home', 'HomeController@home');
+
 Route::get('/total_schedule', 'HomeController@schedule');
 Route::resource('nurses', NurseController::class);
 Route::resource('nurse_users', NurseUserController::class);
@@ -9,6 +10,8 @@ Route::resource('order_nurses', OrderNurseController::class);
 Route::resource('vaccines', VaccineController::class);
 Route::resource('order_vaccines', OrderVaccinesController::class);
 Route::resource('vaccine_users', VaccineUserController::class);
+Route::resource('organization_vaccines', Vaccine\OrganizationVaccineController::class);
+
 Route::resource('docters', DocterOrgController::class);
 Route::resource('offices', OfficeController::class);
 Route::resource('orders', OrderController::class);
@@ -18,7 +21,6 @@ Route::resource('docter_verifies', DocterVerifyController::class);
 Route::resource('docter_account', DocterAccountController::class);
 Route::resource('docter_chats', DocterChatController::class);
 
-Route::resource('organization_vaccines', Vaccine\OrganizationVacschedulecineController::class);
 //服务管理
 Route::resource('services', ServiceController::class);
 Route::resource('orgservice', OrganizationController::class);