weitiao
This commit is contained in:
@@ -3,6 +3,8 @@
|
||||
namespace App\Admin\Controllers;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Area;
|
||||
use App\Models\AreaCode;
|
||||
use Encore\Admin\Auth\Permission;
|
||||
use Encore\Admin\Facades\Admin;
|
||||
use Encore\Admin\Layout\Column;
|
||||
@@ -33,8 +35,9 @@ class HomeController extends Controller
|
||||
$admin = Admin::user();
|
||||
if ($admin->id == 1) {
|
||||
$this->getUserData();
|
||||
$this->getUserStockData();
|
||||
$this->getUserStockOrderData();
|
||||
$this->getAreaData();
|
||||
// $this->getUserStockData();
|
||||
// $this->getUserStockOrderData();
|
||||
} else {
|
||||
$this->content->row($this->setDivider('您没有权限查看数据'));
|
||||
}
|
||||
@@ -58,30 +61,6 @@ class HomeController extends Controller
|
||||
'color' => 'blue',
|
||||
'count' => User::count()
|
||||
],
|
||||
'ty' => [
|
||||
'name' => '月卡',
|
||||
'color' => 'green',
|
||||
'count' => User::query()
|
||||
->whereHas('identities', function ($q) {
|
||||
$q->where('id', 2);
|
||||
})->count()
|
||||
],
|
||||
'jk' => [
|
||||
'name' => '季卡用户数',
|
||||
'color' => 'red',
|
||||
'count' => User::query()
|
||||
->whereHas('identities', function ($q) {
|
||||
$q->where('id', 3);
|
||||
})->count()
|
||||
],
|
||||
'nk' => [
|
||||
'name' => '年卡用户数',
|
||||
'color' => 'yellow',
|
||||
'count' => User::query()
|
||||
->whereHas('identities', function ($q) {
|
||||
$q->where('id', 4);
|
||||
})->count(),
|
||||
],
|
||||
];
|
||||
|
||||
$this->content->row(function (Row $row) use ($users) {
|
||||
@@ -153,6 +132,117 @@ class HomeController extends Controller
|
||||
return $this->content;
|
||||
}
|
||||
|
||||
/**
|
||||
* Notes: 区域数据
|
||||
*
|
||||
* @Author: 玄尘
|
||||
* @Date: 2023/1/28 11:26
|
||||
* @return mixed
|
||||
*/
|
||||
public function getAreaData()
|
||||
{
|
||||
$this->content->row($this->setDivider('提货码'));
|
||||
$areas = [
|
||||
'all' => [
|
||||
'name' => '区域总数',
|
||||
'color' => 'blue',
|
||||
'link' => '/admin/areas',
|
||||
'count' => Area::count()
|
||||
],
|
||||
'stock' => [
|
||||
'name' => '提货码总数',
|
||||
'color' => 'green',
|
||||
'link' => '/admin/areas',
|
||||
'count' => Area::sum('stock')
|
||||
],
|
||||
'release' => [
|
||||
'name' => '提货码释放总数',
|
||||
'color' => 'green',
|
||||
'link' => '/admin/areas_codes',
|
||||
'count' => AreaCode::count()
|
||||
],
|
||||
'get' => [
|
||||
'name' => '提货码领取总数',
|
||||
'color' => 'green',
|
||||
'link' => '/admin/areas_codes',
|
||||
'count' => AreaCode::whereNotNull('user_id')->count()
|
||||
],
|
||||
'use' => [
|
||||
'name' => '提货码兑换总数',
|
||||
'color' => 'green',
|
||||
'link' => '/admin/areas_codes?status='.AreaCode::STATUS_USED,
|
||||
'count' => AreaCode::whereNotNull('user_id')->where('status', AreaCode::STATUS_USED)->count()
|
||||
],
|
||||
'sign' => [
|
||||
'name' => '提货码核销总数',
|
||||
'color' => 'green',
|
||||
'link' => '/admin/areas_codes?status='.AreaCode::STATUS_SIGN,
|
||||
'count' => AreaCode::whereNotNull('user_id')->where('status', AreaCode::STATUS_SIGN)->count()
|
||||
],
|
||||
];
|
||||
|
||||
$this->content->row(function (Row $row) use ($areas) {
|
||||
foreach ($areas as $area) {
|
||||
$row->column(2, function (Column $column) use ($area) {
|
||||
$column->append(new InfoBox(
|
||||
$area['name'],
|
||||
'goods',
|
||||
$area['color'],
|
||||
$area['link'],
|
||||
$area['count'],
|
||||
));
|
||||
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
return $this->content;
|
||||
}
|
||||
|
||||
public function getUserFreeData()
|
||||
{
|
||||
$this->content->row($this->setDivider('会员水库存数'));
|
||||
|
||||
$all = UserStock::query()->sum('stock');
|
||||
$holds = UserStock::query()->sum('hold');
|
||||
$sy = bcsub($all, $holds);
|
||||
|
||||
$users = [
|
||||
'all' => [
|
||||
'name' => '总数',
|
||||
'color' => 'blue',
|
||||
'count' => UserStock::query()->sum('stock')
|
||||
],
|
||||
'stock' => [
|
||||
'name' => '已提货数',
|
||||
'color' => 'green',
|
||||
'count' => UserStock::query()->sum('hold')
|
||||
],
|
||||
'sy' => [
|
||||
'name' => '待提货数',
|
||||
'color' => 'green',
|
||||
'count' => $sy
|
||||
],
|
||||
];
|
||||
|
||||
$this->content->row(function (Row $row) use ($users) {
|
||||
foreach ($users as $user) {
|
||||
$row->column(2, function (Column $column) use ($user) {
|
||||
$column->append(new InfoBox(
|
||||
$user['name'],
|
||||
'goods',
|
||||
$user['color'],
|
||||
'/admin/stocks',
|
||||
$user['count'],
|
||||
));
|
||||
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
return $this->content;
|
||||
}
|
||||
|
||||
/**
|
||||
* Notes: 提货订单数量
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user