Swdz-WangHaiJun 4 năm trước cách đây
mục cha
commit
89c710f7ed

+ 20 - 30
app/Community/Controllers/ApiController.php

xqd xqd xqd xqd xqd xqd xqd xqd xqd xqd xqd xqd xqd
@@ -18,6 +18,7 @@ use App\Models\TimePeriod;
 use Carbon\Carbon;
 use EasyWeChat\Factory;
 use Encore\Admin\Facades\Admin;
+use Illuminate\Support\Facades\DB;
 use mysql_xdevapi\Exception;
 
 class ApiController extends Controller
@@ -33,6 +34,7 @@ class ApiController extends Controller
         $data['type'] = request('type');
         $is_have = PatientRemark::where($data)->first();
         $data['remark'] = request('remark');
+        if(empty($data['remark'])) return redirect('/cdms/nurse_users');
         if($is_have){
             PatientRemark::where(['id'=>$is_have->id])->update(['remark'=>$data['remark']]);
         } else {
@@ -109,21 +111,22 @@ class ApiController extends Controller
     {
 
         $set_time = request('time');//时间
-        $org_id = request('org_id');//机构
-        $docter_id = request('docter_id');//医生
+        $user = Admin::user();
+        $org_id = $user->org_id;
+        $doc_id = $user->docter_id;
 
+        $docter_id = request('docter_id');
+        $role = request('role');
 
-//        $set_time = '2020-11-30至2020-12-06';
-//        $org_id = 1;
-//        $docter_id = 47;
-        $role = 2;
+        $is_docter = CdmsUsers::where('docter_id',$doc_id)->where('docter_id','!=','')->first();
 
-        if(empty($set_time) || empty($org_id) || empty($docter_id)){
+        if(empty($set_time)){
             return json_encode(['status'=>601,'msg'=>'缺少必要参数','data'=>'']);
-        } else{
-//            echo 'what happend';
         }
 
+        if($is_docter){
+            $role =2;
+        }
 
         $all_time = explode('至',$set_time);
         if(count($all_time) <2){
@@ -135,7 +138,6 @@ class ApiController extends Controller
         $first_day = strtotime($all_time[0]);
 //        DB::enableQueryLog();
         $sche_dule = Schedule::whereBetween('schedule_day',[$start_time,$end_time])
-            ->where(['docter_id'=>$docter_id])
             ->pluck('id')
             ->toArray();
 //        echo '<pre>';
@@ -184,28 +186,22 @@ class ApiController extends Controller
         $times[] = TimePeriod::where('start_time_period','>=',$schedule_config['morning_start'])->where('end_time_period','<=',$schedule_config['morning_end'])->pluck('id')->toArray();
         $times[] = TimePeriod::where('start_time_period','>=',$schedule_config['afternoon_start'])->where('end_time_period','<=',$schedule_config['afternoon_end'])->pluck('id')->toArray();
         $times[] = TimePeriod::where('start_time_period','>=',$schedule_config['evening_start'])->where('end_time_period','<=',$schedule_config['evening_end'])->pluck('id')->toArray();
+
         if(empty($sche_dule)){
             return ['status'=>200,'msg'=>'ok','data'=>['docter'=>$sche_dule_arr,'org_id'=>$org_id,'docter_id'=>$docter_id]];
         }
-
-        $role = 2;
         if($role == 1){
             $ids = DocterOrganization::where(['organization_id'=>$org_id])->pluck('docter_id');
-            $list = Docter::whereIn('id',$ids)->get(['id as value','name as label'])->toArray();
             $name = Organization::where('id',$docter_id)->value('name');
-
             $user_id = $org_id;
-            for ($i = 1; $i<7; $i++){
+            for ($i = 0; $i<6; $i++){
                 $str_time =  date('Y-m-d',($first_day + $i * 86400));
                 for($j=0;$j<3;$j++){
                     //检测上午
                     $is_mo_have = SchedulePeriod::whereIn('schedule_id',$sche_dule)->where('schedule_date',$str_time)->whereIn('time_period_id',$times[$j])
-                        ->where('organization_id','!=',$org_id)->count();
-                    ['schedule_id'=>$sche_dule,'schedule_date'=>$str_time,'organization_id'=>$org_id,'docter_id'=>$docter_id];
-
+                        ->where('docter_id','!=',$docter_id)->count();
                     $is_self = SchedulePeriod::whereIn('schedule_id',$sche_dule)->where('schedule_date',$str_time)->whereIn('time_period_id',$times[$j])
-                        ->where('organization_id',$org_id)->count();
-
+                        ->where('docter_id',$docter_id)->count();
                     if($is_self){
                         $sche_dule_arr[$j][$week_arr[$i]] = true;
                     }
@@ -217,7 +213,6 @@ class ApiController extends Controller
         } else {
 
             $ids = DocterOrganization::where(['docter_id'=>$docter_id])->pluck('organization_id');
-            $list = Organization::whereIn('id',$ids)->get(['id as value','name as label'])->toArray();
             $name = Docter::where('id',$docter_id)->value('name');
             $user_id = $docter_id;
             for ($i=0; $i<=6; $i++){
@@ -228,8 +223,6 @@ class ApiController extends Controller
                         ->where('organization_id','!=',$org_id)->where('docter_id','=',$docter_id)->count();
                     $is_mo_self = SchedulePeriod::whereIn('schedule_id',$sche_dule)->where('schedule_date',$str_time)->whereIn('time_period_id',$times[$j])
                         ->where('organization_id',$org_id)->where('docter_id',$docter_id)->count();
-//                    echo $i.'--'.$j.'is_self---'.$is_mo_self.'<br>';
-
                     if($is_mo_self){
                         $sche_dule_arr[$j][$week_arr[$i]] = true;
                     }
@@ -251,7 +244,6 @@ class ApiController extends Controller
 
         $data['docter'] = $sche_dule_arr;
         $data['name'] = $name;
-//        $data['list'] = $list;
 
         $data['role'] = $role;
         $data['user_id'] = $user_id;
@@ -374,9 +366,8 @@ class ApiController extends Controller
 
                     if($val == true){
                         $data['schedule_date'] = $start_time ;
-
                         foreach ($schedule_time as $time_id){
-                            $is_have = SchedulePeriod::where(['time_period_id'=>$time_id,'type'=>($i),'docter_id'=>$docter_id,'schedule_date'=>$real_time,'organization_id'=>$org_id,'docter_id'=>$docter_id,'schedule_id'=>$schedule_id])->value('id');
+                            $is_have = SchedulePeriod::where(['time_period_id'=>$time_id,'type'=>($i),'schedule_date'=>$real_time,'organization_id'=>$org_id])->value('id');
                             if($is_have) break;
                             $time_insert['time_period_id'] = $time_id;
                             $info[] = $time_insert;
@@ -385,7 +376,7 @@ class ApiController extends Controller
                     } else {
                         $data['schedule_date'] = $start_time;
                         foreach ($schedule_time as $time_id){
-                            $is_have = SchedulePeriod::where(['time_period_id'=>$time_id,'type'=>($i),'docter_id'=>$docter_id,'schedule_date'=>$real_time,'organization_id'=>$org_id,'docter_id'=>$docter_id,'schedule_id'=>$schedule_id])->value('id');
+                            $is_have = SchedulePeriod::where(['time_period_id'=>$time_id,'type'=>($i),'schedule_date'=>$real_time,'organization_id'=>$org_id,'docter_id'=>$docter_id,'schedule_id'=>$schedule_id])->value('id');
                             if($is_have)  SchedulePeriod::where(['time_period_id'=>$time_id,'type'=>($i),'docter_id'=>$docter_id,'schedule_date'=>$real_time,'organization_id'=>$org_id,'docter_id'=>$docter_id,'schedule_id'=>$schedule_id])->delete();
                         }
                     }
@@ -407,7 +398,7 @@ class ApiController extends Controller
         $org_id = $user->org_id;
         $docter_id = $user->docter_id;
 
-        $is_docter = CdmsUsers::where('docter_id',$docter_id)->first();
+        $is_docter = CdmsUsers::where('docter_id',$docter_id)->where('docter_id','!=','')->first();
         if(empty($org_id) && empty($docter_id)){
             return json_encode(['status'=>601,'msg'=>'缺少必要参数','data'=>'']);
         }
@@ -418,7 +409,7 @@ class ApiController extends Controller
         $lists =[];
         if($role == 1){
             $ids = DocterOrganization::where(['organization_id'=>$org_id])->pluck('docter_id')->toArray();
-            $list = Docter::whereIn('id',$ids)->get(['id','name']);
+            $list = Docter::whereIn('id',$ids)->where('is_then',1)->get(['id','name']);
             foreach ($list as $val){
                 $lists[] = ['value'=>$val->id,'label'=>$val->name];
             }
@@ -444,7 +435,6 @@ class ApiController extends Controller
     public function get_chat_order()
     {
         $org_id = 1;
-//        $docter_id = 1;
         $docter_id = request('docter_id');
         if(empty($docter_id)){
             return json_encode(['status'=>601,'msg'=>'缺少必要参数','data'=>'']);

+ 10 - 0
app/Community/Controllers/NurseController.php

xqd xqd xqd
@@ -5,6 +5,7 @@ namespace App\Community\Controllers;
 use App\Models\Docter;
 use App\Models\DocterOrganization;
 use App\Models\Nurse;
+use App\Models\Organization;
 use Encore\Admin\Controllers\AdminController;
 use Encore\Admin\Facades\Admin;
 use Encore\Admin\Form;
@@ -29,6 +30,10 @@ class NurseController extends AdminController
     {
         $grid = new Grid(new Nurse());
         $grid->disableCreateButton(false);
+        $org_id = Admin::user()->org_id;
+        if($org_id){
+            $grid->model()->where(['org_id'=>$org_id]);
+        }
         $grid->column('id', __('ID'));
         $grid->column('name', __('项目名称'))->editable();
         $grid->column('used', __('已使用'))->display(function ($w){
@@ -80,6 +85,11 @@ class NurseController extends AdminController
         $org_id = $user->org_id;
         $form->text('name', __('项目名称'));
         $form->text('price', __('价格'));
+        $form->hidden('org_id')->value($org_id);
+//        if($org_id){
+//        } else {
+//            $form->select('org_id','机构')->options(Organization::pluck('name','id'));
+//        }
         $form->multipleSelect('docters','服务医生')->options(function () use ($org_id) {
             if(empty($org_id)){
                 return  Docter::pluck('name','id');

+ 7 - 5
app/Community/Controllers/NurseUserController.php

xqd
@@ -77,11 +77,13 @@ class NurseUserController extends AdminController
         $form->setAction('/cdms/api/paitent_remark');
         $form->hidden('patient_id');
         $org_id = Admin::user()->org_id;
-        $form->hidden('org_id')->default(intval($org_id));
-        $form->hidden('type')->default(1);
-        $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->hidden('type')->value(1);
+        if($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');
+            });
+        }
         return $form;
     }
 }

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

xqd xqd
@@ -3,6 +3,7 @@
 namespace App\Community\Controllers;
 
 use App\Models\Office;
+use App\Models\Organization;
 use Encore\Admin\Controllers\AdminController;
 use Encore\Admin\Facades\Admin;
 use Encore\Admin\Form;
@@ -68,8 +69,14 @@ class OfficeController extends AdminController
     protected function form()
     {
         $form = new Form(new Office());
+        $org_id = Admin::user()->org_id;
+        if($org_id){
+            $form->hidden('org_id', __('名称'))->value(Admin::user()->org_id);
+        } else {
+            $orglist = Organization::pluck('name','id');
+            $form->select('org_id', __('名称'))->options($orglist);
+        }
         $form->text('name', __('名称'));
-        $form->hidden('org_id', __('名称'))->value(Admin::user()->org_id);
         $form->setWidth(6);
         return $form;
     }

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

xqd
@@ -89,7 +89,8 @@ class OrderNurseController extends AdminController
         });
 
         $grid->actions(function ($actions) {
-            if($actions->row->orders->order_status  < 2 ){
+//            dd($actions->row->orders);
+            if(!empty($actions->row->orders) && $actions->row->orders->order_status< 2 ){
                 $actions->add(new Finished());
             }
             $actions->add(new DelNurse());

+ 1 - 1
app/Community/Controllers/ScheduleController.php

xqd
@@ -25,7 +25,7 @@ class ScheduleController extends AdminController
             $id = $docter_id;
         }
         $url = '/cdms/chat_view?id='.$docter_id;
-        $content->body('<iframe src="/cdms/schedule_view?id='.$id.'" style="width: 100%;height:800px;border: none"></iframe>');
+        $content->body('<iframe src="/cdms/schedule_view?id='.$id.'" style="width:100%;height:800px;border: none"></iframe>');
         return $content;
     }
 

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

xqd xqd
@@ -30,6 +30,9 @@ class VaccineController extends AdminController
         $grid = new Grid(new Vaccine());
 
         $org_id = Admin::user()->org_id;
+        if($org_id){
+            $grid->model()->where(['org_id'=>$org_id]);
+        }
         $grid->disableCreateButton(false);
         $grid->column('id', __('ID'));
         $grid->column('name', __('疫苗名称'));
@@ -95,8 +98,13 @@ class VaccineController extends AdminController
     {
         $form = new Form(new Vaccine());
 
+        $orglist = Organization::pluck('name','id');
+        $org_id = Admin::user()->org_id;
+        if($org_id){
+            $orglist = Organization::where(['id'=>$org_id])->pluck('name','id');
+        }
         $form->select('type', __('类型'))->options([1=>'一类',2=>'二类'])->default(1);
-        $form->select('org_id','机构')->options(Organization::pluck('name','id'))->rules('required',['requried'=>'请选择机构']);
+        $form->select('org_id','机构')->options($orglist)->rules('required',['requried'=>'请选择机构']);
         $form->text('name', __('疫苗名称'))->rules('required',['requried'=>'请填写疫苗名称']);
         $form->text('supplier', __('厂家'))->rules('required',['requried'=>'请填写厂家信息']);
         $form->number('price', __('价格'))->rules('required',['requried'=>'请填写价格']);

+ 1 - 1
app/Models/Office.php

xqd
@@ -13,6 +13,6 @@ class Office extends BaseModel
 
     public function organizations()
     {
-        return $this->hasMany(Organization::class,'id','org_id');
+        return $this->hasOne(Organization::class,'id','org_id');
     }
 }

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 0 - 0
public/cdms/static/js/app.426d1eed.js


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 0 - 0
public/cdms/static/js/app.81757419.js


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 0 - 0
public/cdms/static/js/app.8628ae9c.js


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 0 - 0
public/cdms/static/js/app.e96ab16e.js


BIN
public/favicon.ico


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 1 - 0
public/jquery-3.5.1.min.js


+ 3 - 2
resources/views/cdms/order_detail.blade.php

xqd xqd
@@ -72,11 +72,12 @@
     var id = {{$data->id}}
     $('.complet').click(function () {
         $.post('/cdms/api/update_order',{'id':id,'status':4},function (res) {
+            console.log(res)
             if(res.code == 200){
                 alert('操作成功')
                 location.reload();
             } else{
-                alert(res.msg)
+                alert('操作失敗')
             }
         });
     })
@@ -86,7 +87,7 @@
                 alert('接单成功')
                 location.reload();
             } else{
-                alert(res.msg)
+                alert('接单失敗')
             }
         });
     })

+ 1 - 1
resources/views/cdms/schedule.blade.php

xqd
@@ -1 +1 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="favicon.ico"><title>scheduling</title><link href="static/css/app.999c8fb4.css" rel="preload" as="style"><link href="static/css/chunk-vendors.767f701c.css" rel="preload" as="style"><link href="static/js/app.426d1eed.js" rel="preload" as="script"><link href="static/js/chunk-vendors.e71f87b8.js" rel="preload" as="script"><link href="static/css/chunk-vendors.767f701c.css" rel="stylesheet"><link href="static/css/app.999c8fb4.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but scheduling doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div><script src="static/js/chunk-vendors.e71f87b8.js"></script><script src="static/js/app.426d1eed.js"></script></body></html>
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="favicon.ico"><title>scheduling</title><link href="static/css/app.999c8fb4.css" rel="preload" as="style"><link href="static/css/chunk-vendors.767f701c.css" rel="preload" as="style"><link href="static/js/app.215f8c27.js" rel="preload" as="script"><link href="static/js/chunk-vendors.e71f87b8.js" rel="preload" as="script"><link href="static/css/chunk-vendors.767f701c.css" rel="stylesheet"><link href="static/css/app.999c8fb4.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but scheduling doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div><script src="static/js/chunk-vendors.e71f87b8.js"></script><script src="static/js/app.215f8c27.js"></script></body></html>

Một số tệp đã không được hiển thị bởi vì quá nhiều tập tin thay đổi trong này khác