98 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			98 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| /**
 | |
|  * 商业使用授权协议
 | |
|  * 
 | |
|  * Copyright (c) 2025 [云泽网]. 保留所有权利.
 | |
|  * 
 | |
|  * 本软件仅供评估使用。任何商业用途必须获得书面授权许可。
 | |
|  * 未经授权商业使用本软件属于侵权行为,将承担法律责任。
 | |
|  * 
 | |
|  * 授权购买请联系: 357099073@qq.com
 | |
|  * 官方网站: https://www.yunzer.cn
 | |
|  * 
 | |
|  * 评估用户须知:
 | |
|  * 1. 禁止移除版权声明
 | |
|  * 2. 禁止用于生产环境
 | |
|  * 3. 禁止转售或分发
 | |
|  */
 | |
| 
 | |
| /**
 | |
|  * 后台管理系统-用户管理
 | |
|  */
 | |
| namespace app\admin\controller;
 | |
| use app\admin\controller\BaseController;
 | |
| use think\facade\View;
 | |
| use think\facade\Request;
 | |
| use think\facade\Db;
 | |
| use app\admin\controller\Log;
 | |
| use think\App;
 | |
| use app\admin\model\User\Users;
 | |
| 
 | |
| 
 | |
| class UsersController extends BaseController
 | |
| {
 | |
|     /**
 | |
|      * 统计用户数量
 | |
|      */
 | |
|     public function counts()
 | |
|     {
 | |
|         try {
 | |
|             // 统计用户总数
 | |
|             $total = Users::where('delete_time', 0)
 | |
|                 ->where('status', 1)
 | |
|                 ->count();
 | |
|                 
 | |
|             // 获取今日新增用户数
 | |
|             $today = strtotime(date('Y-m-d'));
 | |
|             $todayNew = Users::where('delete_time', 0)
 | |
|                 ->where('status', 1)
 | |
|                 ->where('create_time', '>=', $today)
 | |
|                 ->count();
 | |
|                 
 | |
|             // 获取最近7天的用户数据
 | |
|             $dates = [];
 | |
|             $counts = [];
 | |
|             $totalCounts = []; // 存储每天的总用户数
 | |
|             
 | |
|             for ($i = 6; $i >= 0; $i--) {
 | |
|                 $date = date('Y-m-d', strtotime("-$i days"));
 | |
|                 $start = strtotime($date);
 | |
|                 $end = $start + 86400;
 | |
|                 
 | |
|                 // 获取当天新增用户数
 | |
|                 $count = Users::where('delete_time', 0)
 | |
|                     ->where('status', 1)
 | |
|                     ->where('create_time', '>=', $start)
 | |
|                     ->where('create_time', '<', $end)
 | |
|                     ->count();
 | |
|                     
 | |
|                 // 获取截至当天的总用户数
 | |
|                 $totalCount = Users::where('delete_time', 0)
 | |
|                     ->where('status', 1)
 | |
|                     ->where('create_time', '<', $end)
 | |
|                     ->count();
 | |
|                     
 | |
|                 $dates[] = $date;
 | |
|                 $counts[] = $count;
 | |
|                 $totalCounts[] = $totalCount;
 | |
|             }
 | |
|             
 | |
|             return json([
 | |
|                 'code' => 0,
 | |
|                 'msg' => '获取成功',
 | |
|                 'data' => [
 | |
|                     'total' => $total,
 | |
|                     'todayNew' => $todayNew,
 | |
|                     'dates' => $dates,
 | |
|                     'counts' => $counts,
 | |
|                     'totalCounts' => $totalCounts
 | |
|                 ]
 | |
|             ]);
 | |
|         } catch (\Exception $e) {
 | |
|             return json([
 | |
|                 'code' => 1,
 | |
|                 'msg' => '获取失败:' . $e->getMessage()
 | |
|             ]);
 | |
|         }
 | |
|     }
 | |
| } |