|
|
@@ -15,7 +15,7 @@ class FarmLandLevelStatsCard extends NumberS
|
|
|
/**
|
|
|
* 卡片标题
|
|
|
*/
|
|
|
- protected $title = '土地等级数量统计';
|
|
|
+ protected $title = '土地等级数量统计(昨天)';
|
|
|
|
|
|
/**
|
|
|
* 初始化卡片内容
|
|
|
@@ -23,7 +23,7 @@ class FarmLandLevelStatsCard extends NumberS
|
|
|
protected function init()
|
|
|
{
|
|
|
parent::init();
|
|
|
-
|
|
|
+
|
|
|
// 土地统计不需要时间范围选择,移除下拉选项
|
|
|
$this->dropdown([]);
|
|
|
}
|
|
|
@@ -37,13 +37,13 @@ class FarmLandLevelStatsCard extends NumberS
|
|
|
public function handle(Request $request)
|
|
|
{
|
|
|
$stats = $this->getLandLevelStats();
|
|
|
-
|
|
|
+
|
|
|
// 转换为NumberS需要的数据格式(键值对数组)
|
|
|
$dataList = [];
|
|
|
foreach ($stats as $stat) {
|
|
|
$dataList[$stat['name']] = $stat['count'];
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
$this->withContent($dataList);
|
|
|
}
|
|
|
|
|
|
@@ -55,14 +55,14 @@ class FarmLandLevelStatsCard extends NumberS
|
|
|
private function getLandLevelStats(): array
|
|
|
{
|
|
|
$latestStats = FarmDailyStats::orderBy('stats_date', 'desc')->first();
|
|
|
-
|
|
|
+
|
|
|
if (!$latestStats) {
|
|
|
return [];
|
|
|
}
|
|
|
|
|
|
$landTypeNames = [
|
|
|
1 => '普通土地',
|
|
|
- 2 => '红土地',
|
|
|
+ 2 => '红土地',
|
|
|
3 => '黑土地',
|
|
|
4 => '金色特殊土地',
|
|
|
5 => '蓝色特殊土地',
|
|
|
@@ -71,13 +71,13 @@ class FarmLandLevelStatsCard extends NumberS
|
|
|
|
|
|
$stats = [];
|
|
|
$totalLands = 0;
|
|
|
-
|
|
|
+
|
|
|
// 获取各个土地类型的数量
|
|
|
for ($type = 1; $type <= 6; $type++) {
|
|
|
$field = "land_type_{$type}";
|
|
|
$count = $latestStats->$field ?? 0;
|
|
|
$totalLands += $count;
|
|
|
-
|
|
|
+
|
|
|
// 只显示有数量的土地类型
|
|
|
if ($count > 0) {
|
|
|
$stats[] = [
|
|
|
@@ -86,7 +86,7 @@ class FarmLandLevelStatsCard extends NumberS
|
|
|
];
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
// 添加总计
|
|
|
if ($totalLands > 0) {
|
|
|
$stats[] = [
|
|
|
@@ -94,7 +94,7 @@ class FarmLandLevelStatsCard extends NumberS
|
|
|
'count' => $totalLands
|
|
|
];
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
return $stats;
|
|
|
}
|
|
|
}
|