123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- <?php
- namespace App\Admin\Controllers;
- use App\Http\Controllers\Controller;
- use App\Model\SystemConfig;
- use Encore\Admin\Controllers\Dashboard;
- use Encore\Admin\Layout\Column;
- use Encore\Admin\Layout\Content;
- use Encore\Admin\Layout\Row;
- use Encore\Admin\Widgets\Box;
- use Encore\Admin\Widgets\Echarts\Echarts;
- use Encore\Admin\Widgets\InfoBox;
- class HomeController extends Controller
- {
- public function index(Content $content)
- {
- return $content
- ->title('首页')
- ->description('欢迎来到!')
- ->row(function (Row $row) {
- $row->column(12,function (Column $column){
- $column->append('<div style="height: 53px;"></div>');
- });
- })
- ->row(function (Row $row) {
- $row->column(3, function (Column $column) {
- $column->append(infoBox('设备总数', 'dropbox', '/admin/device_info', 'green', Sta::getDeviceCount()));
- });
- $row->column(3, function (Column $column) {
- $column->append(infoBox('在营设备', 'user-plus', '/admin/device_info?status=0', 'green', Sta::getDeviceCount(0)));
- });
- $row->column(3, function (Column $column) {
- $column->append(infoBox('设备最新版本号', 'user-plus', '/admin/setting_form', 'green', SystemConfig::get('lock_config','soft_version')));
- });
- $row->column(3, function (Column $column) {
- $column->append(infoBox('物联网卡数', 'user-plus', '/admin/phone_infos', 'green', Sta::getPhoneCount()));
- });
- })
- ->row(function (Row $row) {
- $row->column(6, function (Column $column) {
- $sta = Sta::getDeviceChart();
- $echarts = (new Echarts('设备状态', '当前设备状态', 'device'))
- ->setData($sta['d'])->setSeriesType('pie')
- ->bindLegend($sta['h']);
- $column->append(new Box('', $echarts));
- });
- $row->column(6, function (Column $column) {
- $sta = Sta::getDeviceTypeChart();
- $echarts = (new Echarts('设备类型', '当前设备状态', 'device_type'))
- ->setData($sta['d'])->setSeriesType('pie')
- ->bindLegend($sta['h']);
- $column->append(new Box('', $echarts));
- });
- });
- }
- }
- /**
- * 消息框
- * @param $name
- * @param $icon
- * @param $link
- * @param $color
- * @param $info
- * @return string HTML
- */
- function infoBox($name, $icon, $link, $color, $info)
- {
- return (new InfoBox($name, $icon, $color, $link, $info))->render();
- }
|