菜单,首页数据

This commit is contained in:
2025-03-16 15:08:37 +08:00
parent 27e70a5148
commit 825d0df7bf
11 changed files with 367 additions and 9 deletions

View File

@ -16,7 +16,15 @@
namespace app\index\controller;
use plugin\cms\model\CmsArticle;
use plugin\cms\model\CmsThumb;
use plugin\points_mall\model\PointsMallGoods;
use plugin\points_mall\model\PointsMallOrder;
use plugin\ticket\model\TicketTicket;
use plugin\ticket\model\TicketTicketInter;
use plugin\ticket\model\TicketTicketOuter;
use think\admin\Controller;
use think\db\Raw;
class Index extends Controller
{
@ -24,4 +32,32 @@ class Index extends Controller
{
$this->redirect(sysuri('admin/login/index'));
}
public function dashboard() {
$this->t_0_0_0 = PointsMallGoods::query()->where('status', '=', 1)->where('deleted', '=', 0)->count();
$this->t_0_0_1 = PointsMallGoods::query()->where('status', '=', 1)->where('deleted', '=', 0)->sum(new Raw("`stock_total` - `stock_sales`"));
$this->t_0_1_0 = PointsMallGoods::query()->where('deleted', '=', 0)->count();
$this->t_0_1_1 = PointsMallGoods::query()->where('deleted', '=', 0)->sum(new Raw("`stock_total` - `stock_sales`"));
$this->t_1_0 = PointsMallOrder::query()->count();
$this->t_1_1 = PointsMallOrder::query()->where('status', '=', 2)->count();
$this->t_1_2 = PointsMallOrder::query()->where('status', '=', 4)->count();
$this->t_1_3 = PointsMallOrder::query()->where('status', '=', 6)->count();
$this->t_2_0_0 = TicketTicket::query()->count();
$this->t_2_0_1 = TicketTicket::query()->where('status', '=', -1)->count();
$this->t_2_1_0 = TicketTicketInter::query()->where('status', '=', 0)->count();
$this->t_2_1_1 = TicketTicketInter::query()->where('status', '=', 0)->count();
$this->t_2_2_0 = TicketTicketOuter::query()->where('status', '=', 0)->count();
$this->t_2_2_1 = TicketTicketOuter::query()->where('status', '=', 0)->count();
$this->t_3_0 = CmsArticle::query()->count();
$this->t_3_1 = CmsThumb::query()->where('is_audit', '=', 0)->count();
$this->t_3_2 = CmsThumb::query()->where('is_audit', '=', 1)->count();
$this->fetch();
}
}

35
app/index/view/full.html Normal file
View File

@ -0,0 +1,35 @@
<!DOCTYPE html>
<html lang="zh">
<head>
<title>{block name="title"}{$title|default=''}{if !empty($title)} · {/if}{:sysconf('site_name')}{/block}</title>
<meta charset="utf-8">
<meta name="renderer" content="webkit">
<meta name="format-detection" content="telephone=no">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=0.4">
<link rel="stylesheet" href="__ROOT__/static/plugs/layui/css/layui.css?at={:date('md')}">
<link rel="stylesheet" href="__ROOT__/static/theme/css/iconfont.css?at={:date('md')}">
<link rel="stylesheet" href="__ROOT__/static/theme/css/console.css?at={:date('md')}">
<link rel="stylesheet" href="__ROOT__/static/extra/style.css?at={:date('md')}">
{if file_exists(syspath("public/static/extra/icon/iconfont.css"))}
<link rel="stylesheet" href="__ROOT__/static/extra/icon/iconfont.css?at={:date('md')}">
{/if}
{block name="style"}{/block}
<script src="__ROOT__/static/plugs/jquery/pace.min.js"></script>
<script src="{:url('admin/api.plugs/script',[],false,false)}"></script>
</head>
<body class="layui-layout-body">
{block name='body'}
<div class="layui-layout layui-layout-admin layui-layout-left-hide">
<div class="layui-body think-bg-white margin-0 padding-0" style="top:0">{block name='content'}{/block}</div>
</div>
{/block}
<script src="__ROOT__/static/plugs/layui/layui.js"></script>
<script src="__ROOT__/static/plugs/require/require.js"></script>
<script src="__ROOT__/static/admin.js"></script>
<script src="__ROOT__/static/extra/script.js"></script>
{block name='script'}{/block}
</body>
</html>

View File

@ -0,0 +1,187 @@
{extend name='main'}
{block name='content'}
<div class="layui-tab">
<ul class="layui-tab-title">
<li class="layui-this">商品信息</li>
<li>订单信息</li>
<li>工单信息</li>
<li>内容信息</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<!-- 出售中的商品种类和数量及仓库中商品种类和数量 -->
<div class="layui-row layui-col-space15">
<div class="layui-col-md3">
<div class="layui-card">
<div class="layui-card-header">
<a data-open="/points_mall/goods/index">出售中的商品</a>
</div>
<div class="layui-card-body">
<p>种类: {$t_0_0_0} </p>
<p>数量: {$t_0_0_1} </p>
</div>
</div>
</div>
<div class="layui-col-md3">
<div class="layui-card">
<div class="layui-card-header">
<a data-open="/points_mall/goods/index">仓库中的商品</a>
</div>
<div class="layui-card-body">
<p>种类: {$t_0_1_0} </p>
<p>数量: {$t_0_1_1} </p>
</div>
</div>
</div>
</div>
</div>
<div class="layui-tab-item">
<!-- 订单信息内容 -->
<div class="layui-row layui-col-space15">
<div class="layui-col-md3">
<div class="layui-card">
<div class="layui-card-header">
<a data-open="/points_mall/order/index">总订单数</a>
</div>
<div class="layui-card-body">
<p>{$t_1_0} </p>
</div>
</div>
</div>
<div class="layui-col-md3">
<div class="layui-card">
<div class="layui-card-header">
<a data-open="/points_mall/order/index?status=2">待付款订单</a>
</div>
<div class="layui-card-body">
<p>{$t_1_1} </p>
</div>
</div>
</div>
<div class="layui-col-md3">
<div class="layui-card">
<div class="layui-card-header">
<a data-open="/points_mall/order/index?status=4">待发货订单</a>
</div>
<div class="layui-card-body">
<p>{$t_1_2} </p>
</div>
</div>
</div>
<div class="layui-col-md3">
<div class="layui-card">
<div class="layui-card-header">
<a data-open="/points_mall/order/index?status=6">已完成订单</a>
</div>
<div class="layui-card-body">
<p>{$t_1_3} </p>
</div>
</div>
</div>
</div>
</div>
<div class="layui-tab-item">
<!-- 工单信息内容 -->
<div class="layui-row layui-col-space15">
<div class="layui-col-md4">
<div class="layui-card">
<div class="layui-card-header">
<a data-open="/ticket/ticket/index.html">工单总数</a>
</div>
<div class="layui-card-body">
<p>{$t_2_0_0} </p>
</div>
</div>
</div>
<div class="layui-col-md4">
<div class="layui-card">
<div class="layui-card-header">
<a data-open="/ticket/ticket_inter/index.html">内部工单未完成数</a>
</div>
<div class="layui-card-body">
<p>{$t_2_1_0} </p>
</div>
</div>
</div>
<div class="layui-col-md4">
<div class="layui-card">
<div class="layui-card-header">
<a data-open="/ticket/ticket_outer/index.html">外部工单未完成数</a>
</div>
<div class="layui-card-body">
<p>{$t_2_2_0} </p>
</div>
</div>
</div>
<div class="layui-col-md4">
<div class="layui-card">
<div class="layui-card-header">
<a data-open="/ticket/ticket/index.html">待审核工单数</a>
</div>
<div class="layui-card-body">
<p>{$t_2_0_1} </p>
</div>
</div>
</div>
<div class="layui-col-md4">
<div class="layui-card">
<div class="layui-card-header">
<a data-open="/ticket/ticket_inter/index.html">内部工单即将超期数</a>
</div>
<div class="layui-card-body">
<p>{$t_2_1_1} </p>
</div>
</div>
</div>
<div class="layui-col-md4">
<div class="layui-card">
<div class="layui-card-header">
<a data-open="/ticket/ticket_outer/index.html">外部工单即将超期数</a>
</div>
<div class="layui-card-body">
<p>{$t_2_2_1} </p>
</div>
</div>
</div>
</div>
</div>
<div class="layui-tab-item">
<div class="layui-row layui-col-space15">
<div class="layui-col-md4">
<div class="layui-card">
<div class="layui-card-header">
<a data-open="/cms/article/index">新闻资讯统计</a>
</div>
<div class="layui-card-body">
<p>总数: {$t_3_0} </p>
</div>
</div>
</div>
<div class="layui-col-md4">
<div class="layui-card">
<div class="layui-card-header">
<a data-open="/cms/thumb/index">点赞城市待审核数</a>
</div>
<div class="layui-card-body">
<p>待审核: {$t_3_1} </p>
</div>
</div>
</div>
<div class="layui-col-md4">
<div class="layui-card">
<div class="layui-card-header">
<a data-open="/cms/thumb/index">点赞城市已审核数</a>
</div>
<div class="layui-card-body">
<p>已审核: {$t_3_2} </p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
{/block}

23
app/index/view/main.html Normal file
View File

@ -0,0 +1,23 @@
<div class="layui-card">
{block name='style'}{/block}
{block name='header'}
{notempty name='title'}
<div class="layui-card-header">
<span class="layui-icon font-s10 color-desc margin-right-5">&#xe65b;</span>{$title|lang}
<div class="pull-right">{block name='button'}{/block}</div>
</div>
{/notempty}
{/block}
<div class="layui-card-line"></div>
<div class="layui-card-body">
<div class="layui-card-html">
{notempty name='showErrorMessage'}
<div class="think-box-notify" type="error">
<b>{:lang('系统提示:')}</b><span>{$showErrorMessage|raw}</span>
</div>
{/notempty}
{block name='content'}{/block}
</div>
</div>
{block name='script'}{/block}
</div>

23
app/index/view/table.html Normal file
View File

@ -0,0 +1,23 @@
<div class="layui-card">
{block name='style'}{/block}
{block name='header'}
{notempty name='title'}
<div class="layui-card-header">
<span class="layui-icon font-s10 color-desc margin-right-5">&#xe65b;</span>{$title|lang}
<div class="pull-right">{block name='button'}{/block}</div>
</div>
{/notempty}
{/block}
<div class="layui-card-line"></div>
<div class="layui-card-body">
<div class="layui-card-table">
{notempty name='showErrorMessage'}
<div class="think-box-notify" type="error">
<b>{:lang('系统提示:')}</b><span>{$showErrorMessage|raw}</span>
</div>
{/notempty}
{block name='content'}{/block}
</div>
</div>
{block name='script'}{/block}
</div>