Add remaining project files (exclude ignored folders)
This commit is contained in:
@@ -0,0 +1,79 @@
|
||||
<?php
|
||||
header('Content-Type: application/json');
|
||||
|
||||
include "../config/connect.php";
|
||||
|
||||
// Ambil tahun dan bulan dari query string, jika tidak ada gunakan tahun dan bulan saat ini
|
||||
$tahun = date('Y');
|
||||
$bulan = isset($_GET['m']) ? $_GET['m'] : date('m');
|
||||
$id = isset($_GET['i']) ? $_GET['i'] : '6258';
|
||||
|
||||
// Mengambil data dari database berdasarkan tahun dan bulan
|
||||
$stmt = $pdo->prepare("SELECT * FROM monitoring_pelanggan WHERE id_pelanggan = :id AND YEAR(waktu) = :tahun AND MONTH(waktu) = :bulan");
|
||||
$stmt->bindParam(':id', $id, PDO::PARAM_INT);
|
||||
$stmt->bindParam(':tahun', $tahun);
|
||||
$stmt->bindParam(':bulan', $bulan);
|
||||
$stmt->execute();
|
||||
$monitor = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||
|
||||
// Memeriksa apakah data ditemukan
|
||||
if (!empty($monitor)) {
|
||||
$status = [];
|
||||
$waktu = [];
|
||||
|
||||
$status[] = 4;
|
||||
$waktu[] = date('Y-'.$bulan.'-01 00:00:01');
|
||||
|
||||
$days = date('d') - 1; // Mendapatkan jumlah hari dalam bulan
|
||||
|
||||
// Saya ingin data per harinya ada sesuai dengan status hari sebelumnya
|
||||
for ($day = 2; $day <= $days; $day++) {
|
||||
$wak = date('Y-'.$bulan.'-'.str_pad($day, 2, '0', STR_PAD_LEFT));
|
||||
$found = false;
|
||||
|
||||
foreach ($monitor as $row) {
|
||||
if (substr($row['waktu'], 0, 10) == $wak) {
|
||||
$status[] = $row['status'];
|
||||
$waktu[] = $row['waktu'];
|
||||
$found = true;
|
||||
// break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!$found) {
|
||||
$status[] = 4; // Status default
|
||||
$waktu[] = $wak . ' 00:00:00'; // Waktu default
|
||||
$status[] = 4; // Status default
|
||||
$waktu[] = $wak . ' 09:00:00'; // Waktu default
|
||||
$status[] = 4; // Status default
|
||||
$waktu[] = $wak . ' 18:00:00'; // Waktu default
|
||||
}
|
||||
}
|
||||
|
||||
// Tambahkan status dan waktu saat ini
|
||||
$status[] = 4; // Menambahkan status sekarang
|
||||
if (date('m') == $bulan) {
|
||||
$waktu[] = date('Y-m-d H:i:s'); // Menambahkan waktu saat ini
|
||||
} else {
|
||||
$date = new DateTime('last day of previous month');
|
||||
$waktu[] = $date->format('Y-m-d 00:00:00');
|
||||
}
|
||||
|
||||
// Mengisi data ke dalam array hasil
|
||||
$data = [
|
||||
'status' => $status,
|
||||
'waktu' => $waktu,
|
||||
];
|
||||
} else {
|
||||
// Jika tidak ada data ditemukan
|
||||
$d1 = date('Y-'.$bulan.'-01 00:00:01');
|
||||
$d2 = date('Y-'.$bulan.'-t H:i:s'); // Menggunakan 't' untuk hari terakhir dalam bulan
|
||||
$data = [
|
||||
'status' => [4, 4],
|
||||
'waktu' => [$d1, $d2],
|
||||
];
|
||||
}
|
||||
|
||||
// Mengirimkan data sebagai JSON
|
||||
echo json_encode($data);
|
||||
?>
|
||||
Reference in New Issue
Block a user