96 lines
2.9 KiB
PHP
96 lines
2.9 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
use Illuminate\Support\Facades\DB;
|
|
use Illuminate\Http\Request;
|
|
use App\Models\tabel_sensor;
|
|
|
|
class HomeController extends Controller
|
|
{
|
|
public function index()
|
|
{
|
|
return view('index');
|
|
}
|
|
|
|
public function showDataHistory()
|
|
{
|
|
$data = tabel_sensor::orderBy('time', 'desc')->paginate(10);
|
|
|
|
// Inisialisasi array untuk labels dan dataPoints
|
|
$labels = [];
|
|
$dataPointsIntensity = [];
|
|
$dataPointsSoil = [];
|
|
$dataPointsHumidity = [];
|
|
$dataPointsTemperature = [];
|
|
|
|
foreach ($data as $record) {
|
|
// Tambahkan waktu sebagai label
|
|
$labels[] = $record->time;
|
|
|
|
// Tambahkan intensitas cahaya ke dalam array dataPoints untuk intensitas cahaya
|
|
$dataPointsIntensity[] = $record->intensity;
|
|
|
|
// Tambahkan nilai soil ke dalam array dataPoints untuk soil
|
|
$dataPointsSoil[] = $record->soil;
|
|
|
|
// Tambahkan kelembapan ke dalam array dataPoints untuk kelembapan
|
|
$dataPointsHumidity[] = $record->humidity;
|
|
|
|
// Tambahkan suhu ke dalam array dataPoints untuk suhu
|
|
$dataPointsTemperature[] = $record->temperature;
|
|
}
|
|
|
|
return view('auth.dashboard', [
|
|
'data' => $data,
|
|
'labels' => $labels,
|
|
'dataPointsIntensity' => $dataPointsIntensity,
|
|
'dataPointsSoil' => $dataPointsSoil,
|
|
'dataPointsHumidity' => $dataPointsHumidity,
|
|
'dataPointsTemperature' => $dataPointsTemperature,
|
|
]);
|
|
}
|
|
|
|
public function filter(Request $request)
|
|
{
|
|
$startDate = $request->input('start_date');
|
|
$endDate = $request->input('end_date');
|
|
|
|
// Logika untuk memfilter data berdasarkan start date dan end date
|
|
$query = tabel_sensor::query();
|
|
|
|
if ($startDate) {
|
|
$query->where('time', '>=', $startDate);
|
|
}
|
|
|
|
if ($endDate) {
|
|
$query->where('time', '<=', $endDate);
|
|
}
|
|
|
|
$data = $query->orderBy('time', 'desc')->paginate(10);
|
|
|
|
// Inisialisasi array untuk labels dan dataPoints
|
|
$labels = [];
|
|
$dataPointsIntensity = [];
|
|
$dataPointsSoil = [];
|
|
$dataPointsHumidity = [];
|
|
$dataPointsTemperature = [];
|
|
|
|
foreach ($data as $record) {
|
|
$labels[] = $record->time;
|
|
$dataPointsIntensity[] = $record->intensity;
|
|
$dataPointsSoil[] = $record->soil;
|
|
$dataPointsHumidity[] = $record->humidity;
|
|
$dataPointsTemperature[] = $record->temperature;
|
|
}
|
|
|
|
return view('auth.dashboard', [
|
|
'data' => $data,
|
|
'labels' => $labels,
|
|
'dataPointsIntensity' => $dataPointsIntensity,
|
|
'dataPointsSoil' => $dataPointsSoil,
|
|
'dataPointsHumidity' => $dataPointsHumidity,
|
|
'dataPointsTemperature' => $dataPointsTemperature,
|
|
]);
|
|
}
|
|
}
|