Dashboard.php 909 Bytes
<?php
declare(strict_types=1);

namespace app\controller\admin;

use app\BaseController;
use think\facade\Db;

class Dashboard extends BaseController
{
    public function stats()
    {
        $pending   = Db::name('work')->where('status', 'pending')->count();
        $approved  = Db::name('work')->where('status', 'approved')->count();
        $rejected  = Db::name('work')->where('status', 'rejected')->count();
        $mpUsers   = Db::name('mp_user')->count();
        $wxUsers   = Db::name('mp_user')->whereRaw("openid IS NOT NULL AND openid <> ''")->count();

        return json([
            'code' => 0,
            'msg'  => 'ok',
            'data' => [
                'pending'   => $pending,
                'approved'  => $approved,
                'rejected'  => $rejected,
                'mp_users'  => $mpUsers,
                'wx_users'  => $wxUsers,
            ],
        ]);
    }
}