edit back the timestamp and add kepadatan
This commit is contained in:
14
jalankan.py
14
jalankan.py
@ -1,11 +1,15 @@
|
|||||||
import subprocess
|
import subprocess
|
||||||
|
import os
|
||||||
|
|
||||||
# Jalankan app.py
|
# Path to Python in the virtual environment
|
||||||
p1 = subprocess.Popen(["python", "this.py"])
|
python_path = os.path.join("env", "bin", "python")
|
||||||
|
|
||||||
# Jalankan main.py
|
# Run this.py
|
||||||
p2 = subprocess.Popen(["python", "main1.py"])
|
p1 = subprocess.Popen([python_path, "ini_dia.py"])
|
||||||
|
|
||||||
# Tunggu keduanya selesai (opsional, biasanya biarkan berjalan)
|
# Run main1.py
|
||||||
|
p2 = subprocess.Popen([python_path, "main1.py"])
|
||||||
|
|
||||||
|
# Optional: wait for both to complete (remove if you want them to run independently)
|
||||||
p1.wait()
|
p1.wait()
|
||||||
p2.wait()
|
p2.wait()
|
||||||
|
|||||||
@ -17,7 +17,6 @@ MarkupSafe==3.0.2
|
|||||||
matplotlib==3.10.3
|
matplotlib==3.10.3
|
||||||
mpmath==1.3.0
|
mpmath==1.3.0
|
||||||
networkx==3.4.2
|
networkx==3.4.2
|
||||||
numpy==1.24.4
|
|
||||||
opencv-python==4.12.0.88
|
opencv-python==4.12.0.88
|
||||||
packaging==25.0
|
packaging==25.0
|
||||||
pandas==2.3.1
|
pandas==2.3.1
|
||||||
|
|||||||
@ -58,6 +58,7 @@
|
|||||||
<div class="stat">🔢 Total Entri Log Kendaraan: <span id="total-entries" class="loading">Loading...</span></div>
|
<div class="stat">🔢 Total Entri Log Kendaraan: <span id="total-entries" class="loading">Loading...</span></div>
|
||||||
<div class="stat">🚗 Kendaraan yang Saat Ini Berada di Antara Jalur: <span id="vehicle-zone"
|
<div class="stat">🚗 Kendaraan yang Saat Ini Berada di Antara Jalur: <span id="vehicle-zone"
|
||||||
class="loading">Loading...</span></div>
|
class="loading">Loading...</span></div>
|
||||||
|
<div class="stat">🚗 kepadatan trafik saat ini: <span id="kepadatan" class="loading">Loading...</span></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<h2>📋 10 Entri Kendaraan Terakhir</h2>
|
<h2>📋 10 Entri Kendaraan Terakhir</h2>
|
||||||
@ -80,27 +81,23 @@
|
|||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
|
||||||
function formatToMakassar(utcStr) {
|
function ubahTanggalKeBahasaIndonesia(tanggalString) {
|
||||||
const options = {
|
const hariIndonesia = [
|
||||||
timeZone: 'Asia/Makassar',
|
"Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu"
|
||||||
year: 'numeric',
|
];
|
||||||
month: 'short',
|
|
||||||
day: '2-digit',
|
|
||||||
hour: '2-digit',
|
|
||||||
minute: '2-digit',
|
|
||||||
second: '2-digit',
|
|
||||||
weekday: 'short',
|
|
||||||
hour12: false,
|
|
||||||
};
|
|
||||||
|
|
||||||
const date = new Date(utcStr);
|
const date = new Date(tanggalString);
|
||||||
const formatter = new Intl.DateTimeFormat('en-US', options);
|
if (isNaN(date.getTime())) return "Format tanggal tidak valid";
|
||||||
const parts = formatter.formatToParts(date);
|
|
||||||
|
|
||||||
const get = (type) => parts.find(p => p.type === type)?.value;
|
const hari = hariIndonesia[date.getDay()];
|
||||||
|
const tanggal = date.getDate().toString().padStart(2, "0");
|
||||||
|
const bulan = date.toLocaleString("en-US", { month: "short" }); // tetap pakai format "Jul"
|
||||||
|
const tahun = date.getFullYear();
|
||||||
|
const jam = date.toTimeString().split(" ")[0]; // ambil HH:MM:SS
|
||||||
|
|
||||||
return `${get('weekday')}, ${get('day')} ${get('month')} ${get('year')} ${get('hour')}:${get('minute')}:${get('second')} GMT+8`;
|
return `${hari}, ${tanggal} ${bulan} ${tahun} ${jam}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
async function loadData() {
|
async function loadData() {
|
||||||
try {
|
try {
|
||||||
const response = await fetch('/get_video');
|
const response = await fetch('/get_video');
|
||||||
@ -110,6 +107,14 @@
|
|||||||
document.getElementById('total-entries').textContent = data.total_entries;
|
document.getElementById('total-entries').textContent = data.total_entries;
|
||||||
document.getElementById('vehicle-zone').textContent = data.vehicles_in_zone;
|
document.getElementById('vehicle-zone').textContent = data.vehicles_in_zone;
|
||||||
|
|
||||||
|
if (data.vehicles_in_zone <= 2) {
|
||||||
|
document.getElementById('kepadatan').textContent = 'Kepadatan sepi';
|
||||||
|
} else if (data.vehicles_in_zone <= 5) {
|
||||||
|
document.getElementById('kepadatan').textContent = 'Kepadatan sedang';
|
||||||
|
} else {
|
||||||
|
document.getElementById('kepadatan').textContent = 'Kepadatan tinggi';
|
||||||
|
}
|
||||||
|
|
||||||
// Populate table
|
// Populate table
|
||||||
const tbody = document.getElementById('log-table-body');
|
const tbody = document.getElementById('log-table-body');
|
||||||
tbody.innerHTML = '';
|
tbody.innerHTML = '';
|
||||||
@ -120,7 +125,7 @@
|
|||||||
<td>${entry.id}</td>
|
<td>${entry.id}</td>
|
||||||
<td>${entry.vehicle_id}</td>
|
<td>${entry.vehicle_id}</td>
|
||||||
<td>${entry.direction}</td>
|
<td>${entry.direction}</td>
|
||||||
<td>${formatToMakassar(entry.timestamp)}</td>
|
<td>${ubahTanggalKeBahasaIndonesia(entry.timestamp)}</td>
|
||||||
<td>${entry.speed.toFixed(1)}</td>
|
<td>${entry.speed.toFixed(1)}</td>
|
||||||
`;
|
`;
|
||||||
tbody.appendChild(row);
|
tbody.appendChild(row);
|
||||||
|
|||||||
Reference in New Issue
Block a user