dcat-admin表格新增数据统计卡片

实现效果

在这里插入图片描述

控制器部分

Controller内新增index方法

use App\Admin\Metrics\Examples\ShareCount;
use Dcat\Admin\Layout\Content;
use Dcat\Admin\Layout\Row as DcatRow;

public function index(Content $content)
{
	return $content->body(function (DcatRow $row) {
		// 第一个参数是所占行内大小,第二个参数是卡片数据处理类
		$row->column(4, new ShareCount());
	})
	->body($this->grid());
}

统计数据处理部分

在Admin\Metrics\Examples中新建数据处理文件

<?php
namespace App\Admin\Metrics\Examples;

use Dcat\Admin\Widgets\Metrics\Line;
use Illuminate\Http\Request;

class ShareCount extends Line {


    protected function init()
    {
        parent::init();

        $this->title('转发数据');
        $this->dropdown([
            '7' => '过去7天',
            '30' => '过去30天',
        ]);
    }

    public function handle(Request $request)
    {
        $option = $request->get('option');
        switch ($option) {
            case '30':
            	//你的逻辑处理逻辑
                break;
            case '7':
            default:
            	//你的逻辑处理逻辑
                break;
        }
        $data = 1000; //总计数量
        $chart = [];//数组
        // 卡片内容
        $this->withContent(count($data).'次');
        // 图表数据
        $this->withChart($chart);
    }

    /**
     * 设置图表数据.
     *
     * @param array $data
     *
     * @return $this
     */
    public function withChart(array $data)
    {
    	// $data 数据格式为[12,231,24,45,46,54,7,65,3]纯数字的一维数组
        return $this->chart([
            'series' => [
                [
                    'name' => $this->title,
                    'data' => $data,
                ],
            ],
        ]);
    }

    /**
     * 设置卡片内容.
     *
     * @param string $content
     *
     * @return $this
     */
    public function withContent($content)
    {
    	//自定义卡片样式
        return $this->content(
            <<<HTML
<div class="d-flex justify-content-between align-items-center mt-1" style="margin-bottom: 2px">
    <h2 class="ml-1 font-lg-1">{$content}</h2>
    <span class="mb-0 mr-1 text-80">{$this->title}</span>
</div>
HTML
        );
    }
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Dcat Admin是一个基于Laravel-admin二次开发而成的后台构建工具,只需很少的代码即可构建出一个功能完善的高颜值后台系统。支持页面一键生成CURD代码,内置丰富的后台常用组件,开箱即用,让开发者告别冗杂的HTML代码。Dcat Admin后台构建工具特点用户管理 RBAC 权限管理,支持无限极权限节点 菜单管理 使用 pjax 构建无刷新页面,支持按需加载静态资源,可以无限扩展组件而不影响整体性能 松耦合的页面构建与数据操作设计,可轻松切换数据源 多主题切换,内置多种主题色 可轻松构建无菜单栏的独立页面(如可用于构建弹窗选择器等功能) 插件功能 可视化代码生成器,可根据数据表一键生成增删改查页面 数据表格构建工具,内置丰富的表格常用功能(如组合表头、数据导出、搜索、快捷创建、批量操作等) 树状表格功能构建工具,支持分页和局部加载 数据表单构建工具,内置丰富的表单类型,支持表单异步提交 分步表单构建工具 弹窗表单构建工具 数据详情页构建工具 无限层级树页面构建工具,支持用拖拽的方式实现数据的层级、排序等操作 内置丰富的常用页面组件(如图表、数据统计卡片、下拉菜单、Tab 卡片、提示工具等) Section 功能(类似 Wordpress 的 Filter 和 blade 模板的 section 标签) 异步文件上传表单,支持分块多线程上传 多应用/多后台(暂未实现) 插件市场,只需在管理页面轻轻点击鼠标即可完成插件的安装、更新和卸载等操作(暂未实现)Dcat Admin后台构建工具环境PHP >= 7.1.0 Laravel 5.5.0 ~ 7.* Fileinfo PHP ExtensionDcat Admin截图

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值