23
23
use App \Models \Menu ;
24
24
use App \Models \Recall ;
25
25
use App \Models \User ;
26
+ use App \Models \WebView ;
26
27
use Illuminate \Http \Request ;
27
28
use Illuminate \Support \Carbon ;
28
29
use Illuminate \Support \Facades \Artisan ;
@@ -45,7 +46,7 @@ public function console ()
45
46
$ shortcutList = Menu::where ('status ' , 1 )->where ('is_shortcut ' , 1 )->orderBy ('sort ' , 'ASC ' )->get ();
46
47
foreach ($ shortcutList as $ key => $ menu ) {
47
48
//屏蔽无权限菜单
48
- if ($ menu ['auth_name ' ] && !check_admin_auth ($ menu ['auth_name ' ]. '_index ' )) {
49
+ if ($ menu ['auth_name ' ] && !check_admin_auth ($ menu ['auth_name ' ] . '_index ' )) {
49
50
unset($ shortcutList [ $ key ]);
50
51
}
51
52
}
@@ -226,40 +227,25 @@ protected function authMenu ($initData)
226
227
/**
227
228
* 获取实时统计数据 add by gui
228
229
*/
229
- public function sync_real_num ()
230
+ public function syncRealNum ()
230
231
{
231
232
$ monthDate = date ('Y-m-01 ' );
232
233
$ userId = get_login_user_id ();
233
- $ noDone = 0 ;
234
- $ againNoDone = 0 ;
235
- $ monthDone = 0 ;
236
- $ allDone = 0 ;
237
- $ noAssigner = 0 ;
238
- if (User::onlyOperatorAuth ()) {
239
- //只有话务员权限的时候
240
- $ noDone = Recall::where ('is_done ' , 0 )->where ('recall_user_id ' , $ userId )->count ('id ' );
241
- $ againNoDone = Recall::where ('is_done ' , 0 )->where ('recallstatus ' , '> ' , 0 )->where ('recall_user_id ' , $ userId )->count ('id ' );
242
- $ monthDone = Recall::where ('is_done ' , 1 )->where ('recalldate ' , '>= ' , $ monthDate )->where ('recall_user_id ' , $ userId )->count ('id ' );
243
- $ allDone = Recall::where ('is_done ' , 1 )->where ('recall_user_id ' , $ userId )->count ('id ' );
244
- } else {
245
- $ noDone = Recall::where ('is_done ' , 0 )->count ('id ' );
246
- $ againNoDone = Recall::where ('is_done ' , 0 )->where ('recallstatus ' , '> ' , 0 )->count ('id ' );
247
- $ monthDone = Recall::where ('is_done ' , 1 )->where ('recalldate ' , '>= ' , $ monthDate )->count ('id ' );
248
- $ allDone = Recall::where ('is_done ' , 1 )->count ('id ' );
249
- $ noAssigner = Recall::where ('recall_user_id ' , 0 )->count ('id ' );
250
- }
234
+ $ todayOrderCount = 0 ;
235
+ $ monthOrderCount = 0 ;
236
+ $ monthOrderMoney = '0.00 ' ;
237
+ $ memberCount = User \UserMember::count ();
251
238
252
239
253
- $ result ['no_done ' ] = $ noDone ;
254
- $ result ['again_no_done ' ] = $ againNoDone ;
255
- $ result ['month_done ' ] = $ monthDone ;
256
- $ result ['all_done ' ] = $ allDone ;
257
- $ result ['no_assigner ' ] = $ noAssigner ;
240
+ $ result ['member ' ] = $ memberCount ;
241
+ $ result ['today_order ' ] = $ todayOrderCount ;
242
+ $ result ['month_order ' ] = $ monthOrderCount ;
243
+ $ result ['month_order_money ' ] = $ monthOrderMoney ;
258
244
259
245
return ajax_success_result ('' , $ result );
260
246
}
261
247
262
- public function get_echart ()
248
+ public function getEchart ()
263
249
{
264
250
$ date_str = request ()->input ('dates ' );
265
251
$ date = array_get_date ($ date_str );
@@ -273,29 +259,36 @@ public function get_echart ()
273
259
if (empty ($ end_date )) {
274
260
$ end_date = Carbon::now ()->toDateString ();
275
261
}
276
- //已完成回访数
277
- $ doneRecall = Recall::selectRaw ('COUNT(1) as count,DATE(recalldate) as date ' )
278
- ->whereDate ('recalldate ' , '>= ' , $ start_date )
279
- ->whereDate ('recalldate ' , '<= ' , $ end_date )
280
- ->where ('is_done ' , '= ' , 1 )
281
- ->groupByRaw ('DATE(recalldate) ' )
282
- ->orderBy ('date ' , 'ASC ' );
283
- $ doneDate = [];
284
- if (User::onlyOperatorAuth ()) {
285
- //只有话务员权限的时候
286
- $ doneRecall = $ doneRecall ->where ('recall_user_id ' , get_login_user_id ());
262
+ //访问用户
263
+ $ webUser = WebView::selectRaw ('COUNT(DISTINCT web_user) as count,DATE(view_at) as date ' )
264
+ ->whereDate ('view_at ' , '>= ' , $ start_date )
265
+ ->whereDate ('view_at ' , '<= ' , $ end_date )
266
+ ->groupByRaw ('DATE(view_at) ' )
267
+ ->orderBy ('date ' , 'ASC ' )->get ();
268
+ $ userData = [];
269
+
270
+ foreach ($ webUser as $ log ) {
271
+ $ userData [ $ log ->date ] = $ log ->count ?? 0 ;
287
272
}
288
- foreach ($ doneRecall ->get () as $ log ) {
289
- $ doneDate [ $ log ->date ] = $ log ->count ?? 0 ;
273
+ //访问次数
274
+ $ webView = WebView::selectRaw ('COUNT(web_user) as count,DATE(view_at) as date ' )
275
+ ->whereDate ('view_at ' , '>= ' , $ start_date )
276
+ ->whereDate ('view_at ' , '<= ' , $ end_date )
277
+ ->groupByRaw ('DATE(view_at) ' )
278
+ ->orderBy ('date ' , 'ASC ' )->get ();
279
+ $ viewData = [];
280
+ foreach ($ webView as $ log ) {
281
+ $ viewData [ $ log ->date ] = $ log ->count ?? 0 ;
290
282
}
291
283
292
- for ($ i = 0 ; $ i < 90 ; $ i ++) {
284
+ for ($ i = 0 ; $ i < 100 ; $ i ++) {
293
285
$ _date = Carbon::parse ($ start_date )->addDays ($ i )->toDateString ();
294
286
if ($ _date > $ end_date ) {
295
287
break ;
296
288
}
297
289
$ x_data [] = $ _date ;
298
- $ series ['done ' ][] = isset ($ doneDate [ $ _date ]) ? $ doneDate [ $ _date ] : 0 ;
290
+ $ series ['users ' ][] = isset ($ userData [ $ _date ]) ? $ userData [ $ _date ] : 0 ;
291
+ $ series ['views ' ][] = isset ($ viewData [ $ _date ]) ? $ viewData [ $ _date ] : 0 ;
299
292
}
300
293
301
294
return ajax_success_result ('' , [
0 commit comments