FarmMetricsController.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. <?php
  2. namespace App\Module\Farm\AdminControllers;
  3. use App\Module\Farm\AdminControllers\Metrics\FarmLandLevelStatsCard;
  4. use App\Module\Farm\AdminControllers\Metrics\FarmLandTrendChart;
  5. use App\Module\Farm\AdminControllers\Metrics\FarmHouseRanking;
  6. use App\Module\Farm\AdminControllers\Metrics\FarmLandOutputStatsCard;
  7. use UCore\DcatAdmin\AdminController;
  8. use Dcat\Admin\Layout\Content;
  9. use Dcat\Admin\Layout\Row;
  10. use Dcat\Admin\Layout\Column;
  11. use Spatie\RouteAttributes\Attributes\Get;
  12. /**
  13. * 农场统计图表控制器
  14. *
  15. * @AdminController(
  16. * title="农场统计图表",
  17. * permission="farm.metrics",
  18. * menu_title="统计图表",
  19. * menu_parent="农场管理",
  20. * menu_order=101
  21. * )
  22. */
  23. class FarmMetricsController extends AdminController
  24. {
  25. #[Get('admin/farm-metrics')]
  26. public function index(Content $content)
  27. {
  28. return $content
  29. ->header('农场统计图表')
  30. ->description('农场模块数据统计分析')
  31. ->body(function (Row $row) {
  32. $row->column(6, function (Column $column) {
  33. // 土地等级数量统计(多行数字)
  34. $column->row(new FarmLandLevelStatsCard());
  35. // 多线折线图 - 土地类型趋势
  36. $column->row(new FarmLandTrendChart());
  37. });
  38. $row->column(6, function (Column $column) {
  39. $column->row(function (Row $row) {
  40. // 房屋等级排名卡片
  41. $row->column(12, new FarmHouseRanking());
  42. // 各个等级土地的产出果实统计(使用作物日志表)
  43. $row->column(12, new FarmLandOutputStatsCard());
  44. });
  45. });
  46. });
  47. }
  48. }