调整设备数据6小时
parent
6cc61656cd
commit
153e830ed3
|
|
@ -116,11 +116,12 @@ class DeviceController extends Controller
|
|||
$data = $log->toArray();
|
||||
break;
|
||||
case DeviceType::Soil://土壤设备
|
||||
//当天
|
||||
$dataList = SoilMonitoringLog::where('device_id', $deviceId)->whereDate('monitored_at', now())->get()->keyBy('monitored_at')->toArray();
|
||||
//当前时间往前推6个小时;
|
||||
$startTime = now()->subHours(6);
|
||||
$dataList = SoilMonitoringLog::where('device_id', $deviceId)->where('monitored_at', '>=', $startTime)->get()->keyBy('monitored_at')->toArray();
|
||||
$data = [];
|
||||
for ($i = 0; $i < 24; $i++) {
|
||||
$_key = date('Y-m-d').' '.str_pad($i, 2, '0', STR_PAD_LEFT).':00:00';
|
||||
for ($i = 5; $i >= 0; $i--) {
|
||||
$_key = now()->subHours($i)->format('Y-m-d H').':00:00';
|
||||
$data[$_key] = null;
|
||||
if (isset($dataList[$_key])) {
|
||||
$data[$_key] = $dataList[$_key][$deviceColumn] ?? null;
|
||||
|
|
@ -129,10 +130,11 @@ class DeviceController extends Controller
|
|||
break;
|
||||
case DeviceType::WaterQuality://水质设备
|
||||
//当天
|
||||
$dataList = WaterQualityMonitoringLog::where('device_id', $deviceId)->whereDate('monitored_at', now())->get()->keyBy('monitored_at')->toArray();
|
||||
$startTime = now()->subHours(6);
|
||||
$dataList = WaterQualityMonitoringLog::where('device_id', $deviceId)->where('monitored_at', '>=', $startTime)->get()->keyBy('monitored_at')->toArray();
|
||||
$data = [];
|
||||
for ($i = 0; $i < 24; $i++) {
|
||||
$_key = date('Y-m-d').' '.str_pad($i, 2, '0', STR_PAD_LEFT).':00:00';
|
||||
for ($i = 5; $i >= 0; $i--) {
|
||||
$_key = now()->subHours($i)->format('Y-m-d H').':00:00';
|
||||
$data[$_key] = null;
|
||||
if (isset($dataList[$_key])) {
|
||||
$data[$_key] = $dataList[$_key][$deviceColumn] ?? null;
|
||||
|
|
@ -167,7 +169,8 @@ class DeviceController extends Controller
|
|||
$data = DeviceResource::collection($deviceData);
|
||||
break;
|
||||
case DeviceType::Soil->value:
|
||||
$dataList = SoilMonitoringLog::where('agricultural_base_id', $baseId)->whereDate('monitored_at', now())->get()->groupBy('device_id');
|
||||
$startTime = now()->subHours(6);
|
||||
$dataList = SoilMonitoringLog::where('agricultural_base_id', $baseId)->where('monitored_at', '>=', $startTime)->get()->groupBy('device_id');
|
||||
|
||||
foreach ($deviceData as $device) {
|
||||
$_dataList = $dataList->get($device->id);
|
||||
|
|
@ -175,8 +178,8 @@ class DeviceController extends Controller
|
|||
if ($_dataList) {
|
||||
$_dataList = $_dataList->keyBy('monitored_at')->toArray();
|
||||
}
|
||||
for ($i = 0; $i < 24; $i++) {
|
||||
$_key = date('Y-m-d').' '.str_pad($i, 2, '0', STR_PAD_LEFT).':00:00';
|
||||
for ($i = 5; $i >= 0; $i--) {
|
||||
$_key = now()->subHours($i)->format('Y-m-d H').':00:00';
|
||||
$data[$device->monitoring_point][$_key] = null;
|
||||
if (isset($_dataList[$_key])) {
|
||||
$data[$device->monitoring_point][$_key] = $_dataList[$_key][$deviceColumn] ?? null;
|
||||
|
|
@ -185,7 +188,8 @@ class DeviceController extends Controller
|
|||
}
|
||||
break;
|
||||
case DeviceType::WaterQuality->value:
|
||||
$dataList = WaterQualityMonitoringLog::where('agricultural_base_id', $baseId)->whereDate('monitored_at', now())->get()->groupBy('device_id');
|
||||
$startTime = now()->subHours(6);
|
||||
$dataList = WaterQualityMonitoringLog::where('agricultural_base_id', $baseId)->where('monitored_at', '>=', $startTime)->get()->groupBy('device_id');
|
||||
|
||||
foreach ($deviceData as $device) {
|
||||
$_dataList = $dataList->get($device->id);
|
||||
|
|
@ -193,8 +197,8 @@ class DeviceController extends Controller
|
|||
if ($_dataList) {
|
||||
$_dataList = $_dataList->keyBy('monitored_at')->toArray();
|
||||
}
|
||||
for ($i = 0; $i < 24; $i++) {
|
||||
$_key = date('Y-m-d').' '.str_pad($i, 2, '0', STR_PAD_LEFT).':00:00';
|
||||
for ($i = 5; $i >= 0; $i--) {
|
||||
$_key = now()->subHours($i)->format('Y-m-d H').':00:00';
|
||||
$data[$device->monitoring_point][$_key] = null;
|
||||
if (isset($_dataList[$_key])) {
|
||||
$data[$device->monitoring_point][$_key] = $_dataList[$_key][$deviceColumn] ?? null;
|
||||
|
|
|
|||
Loading…
Reference in New Issue