diff --git a/Laravel/app/Http/Controllers/API/Admin/YeWu/AppointmentTypeController.php b/Laravel/app/Http/Controllers/API/Admin/YeWu/AppointmentTypeController.php
new file mode 100644
index 0000000..892ea54
--- /dev/null
+++ b/Laravel/app/Http/Controllers/API/Admin/YeWu/AppointmentTypeController.php
@@ -0,0 +1,36 @@
+whereBetween('s_list.reservation_date', $searchInfo['dateRange']);
+ }
+ $list=$list
+ ->where(['s_list.list_status' => 2, 's_list.is_del' => 0, 's_list.is_nullify' => 0])
+ ->select('appointment_type_id', 's_appointment_type.name', DB::raw('count(*) as count'))
+ ->leftJoin('s_appointment_type', 's_list.appointment_type_id', '=', 's_appointment_type.id')
+ ->groupBy('appointment_type_id', 's_appointment_type.name') // 添加 s_appointment_type.name 到 groupBy
+ ->get();
+
+ //按月统计
+ $monthList = DB::table('s_list');
+ if(isset($searchInfo['dateRange'])){
+ $monthList=$monthList->whereBetween('s_list.reservation_date', $searchInfo['dateRange']);
+ }
+ $monthList=$monthList
+ ->where(['s_list.list_status' => 2,'s_list.is_del' => 0,'s_list.is_nullify' => 0])
+ ->select(DB::raw('DATE_FORMAT(s_list.reservation_date, "%Y-%m") as month'), DB::raw('count(*) as count'))
+ ->groupBy('month')->get();
+ return \Yz::Return(true, '操作成功', ['list'=>$list,'monthList'=>$monthList]);
+ }
+}
diff --git a/Laravel/app/Http/Controllers/API/Admin/YeWu/WorkMainController.php b/Laravel/app/Http/Controllers/API/Admin/YeWu/WorkMainController.php
index 30423d9..129cde1 100644
--- a/Laravel/app/Http/Controllers/API/Admin/YeWu/WorkMainController.php
+++ b/Laravel/app/Http/Controllers/API/Admin/YeWu/WorkMainController.php
@@ -330,4 +330,26 @@ class WorkMainController extends Controller
return \Yz::Return(true,'查询完成',['list'=>$list,'count'=>$count]);
}
+ //开单统计
+ public function CountMakeList(){
+ $searchInfo = request('searchInfo');
+ $list = DB::table('s_list')
+ ->where(['s_list.is_del' => 0, 's_list.is_nullify' => 0]);
+ if(isset($searchInfo['dateRange'])){
+ $list=$list->whereBetween('s_list.created_at', $searchInfo['dateRange']);
+ }
+ //开单总量
+ $count=$list;
+ $count=$count->count();
+ //按月开单量统计
+ $MonthCountList=$list;
+ $MonthCountList=$MonthCountList
+ ->select(DB::raw('DATE_FORMAT(s_list.reservation_date, "%Y-%m") as month'), DB::raw('count(*) as count'))
+ ->groupBy(DB::raw('DATE_FORMAT(s_list.reservation_date, "%Y-%m")'))->get();
+ //预约总量
+ $appointmentCount=$list;
+ $appointmentCount=$appointmentCount->where(['s_list.list_status'=>2])->count();
+ return \Yz::Return(true, '操作成功', ['MonthCountList'=>$MonthCountList,'Count'=>$count,'AppointmentCount'=>$appointmentCount]);
+ }
+
}
diff --git a/Laravel/routes/api.php b/Laravel/routes/api.php
index 61196eb..93a1cc8 100644
--- a/Laravel/routes/api.php
+++ b/Laravel/routes/api.php
@@ -99,6 +99,8 @@ Route::group(['middleware'=>['checktoken','log'],'prefix'=>'v1'],function () {
Route::post('admin/InpatientWardDel','App\Http\Controllers\API\Admin\YeWu\InpatientWardController@Del');//删除病区
Route::post('admin/SignIn','App\Http\Controllers\API\Admin\YeWu\SignInController@SignIn');//签到
Route::post('admin/CancelSign','App\Http\Controllers\API\Admin\YeWu\SignInController@CancelSign');//取消签到
+ Route::post('admin/countAppointmentType','App\Http\Controllers\API\Admin\YeWu\AppointmentTypeController@countAppointmentType');//预约渠道统计
+ Route::post('admin/CountMakeList','App\Http\Controllers\API\Admin\YeWu\WorkMainController@CountMakeList');//开单统计
});
//暂时不加权限
diff --git a/YiJi-admin/src/api/api.js b/YiJi-admin/src/api/api.js
index ebe83f7..43504ac 100644
--- a/YiJi-admin/src/api/api.js
+++ b/YiJi-admin/src/api/api.js
@@ -349,4 +349,12 @@ export const CheckIsDaiJian = (data = {}) => {
//医生端取消预约
export const DoctorCancelYuYue = (data = {}) => {
return axios({ url: import.meta.env.VITE_APP_API + 'admin/DoctorCancelYuYue', data: data })
+}
+//预约渠道统计
+export const countAppointmentType = (data = {}) => {
+ return axios({ url: import.meta.env.VITE_APP_API + 'v1/admin/countAppointmentType', data: data })
+}
+//开单统计
+export const CountMakeList = (data = {}) => {
+ return axios({ url: import.meta.env.VITE_APP_API + 'v1/admin/CountMakeList', data: data })
}
\ No newline at end of file
diff --git a/YiJi-admin/src/router/index.js b/YiJi-admin/src/router/index.js
index 84bd39c..825ba25 100644
--- a/YiJi-admin/src/router/index.js
+++ b/YiJi-admin/src/router/index.js
@@ -184,6 +184,20 @@ const router = createRouter({
meta: {
title: '资源信息列表'
}
+ },{
+ path: '/info/AppointmentTj',
+ name: 'InfoAppointmentTj',
+ component: () => import('../views/Info/AppointmentTj.vue'),
+ meta: {
+ title: '预约统计'
+ }
+ },{
+ path: '/info/MakeListTj',
+ name: 'InfoMakeListTj',
+ component: () => import('../views/Info/MakeListTj.vue'),
+ meta: {
+ title: '开单统计'
+ }
}]
},
diff --git a/YiJi-admin/src/views/Info/AppointmentTj.vue b/YiJi-admin/src/views/Info/AppointmentTj.vue
new file mode 100644
index 0000000..2e077b3
--- /dev/null
+++ b/YiJi-admin/src/views/Info/AppointmentTj.vue
@@ -0,0 +1,132 @@
+
+
+
+
+
+
+ 搜索
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/YiJi-admin/src/views/Info/MakeListTj.vue b/YiJi-admin/src/views/Info/MakeListTj.vue
new file mode 100644
index 0000000..6bb6910
--- /dev/null
+++ b/YiJi-admin/src/views/Info/MakeListTj.vue
@@ -0,0 +1,144 @@
+
+
+
+
+
+
+ 搜索
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file