124 lines
3.3 KiB
PHP
124 lines
3.3 KiB
PHP
<?php
|
|
include '../template/template1.php';
|
|
|
|
function formatBulanIndonesia($bulan) {
|
|
$namaBulan = [
|
|
'01' => 'Januari', '02' => 'Februari', '03' => 'Maret', '04' => 'April',
|
|
'05' => 'Mei', '06' => 'Juni', '07' => 'Juli', '08' => 'Agustus',
|
|
'09' => 'September', '10' => 'Oktober', '11' => 'November', '12' => 'Desember'
|
|
];
|
|
return $namaBulan[$bulan] ?? "Tidak Diketahui";
|
|
}
|
|
|
|
function formatTanggalIndonesia($tanggal) {
|
|
return date('d-m-Y', strtotime($tanggal));
|
|
}
|
|
|
|
// Get year from URL parameter or default to current year
|
|
$tahun = isset($_GET['tahun']) ? $_GET['tahun'] : date('Y');
|
|
|
|
// Set tanggal awal dan akhir berdasarkan tahun yang dipilih
|
|
$tanggal_awal = "$tahun-01-01";
|
|
$tanggal_akhir = "$tahun-12-31";
|
|
|
|
// Ambil data pesanan
|
|
$query = "SELECT id_order, id_pembeli, metode_pembayaran, total_harga, status_order, alamat, tanggal_order
|
|
FROM orders
|
|
WHERE tanggal_order BETWEEN ? AND ? AND status_order = 'selesai'
|
|
ORDER BY tanggal_order DESC";
|
|
$stmt = $conn->prepare($query);
|
|
$stmt->bind_param("ss", $tanggal_awal, $tanggal_akhir);
|
|
$stmt->execute();
|
|
$result = $stmt->get_result();
|
|
?>
|
|
|
|
<!DOCTYPE html>
|
|
<html lang="id">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<title>Cetak Laporan Tahunan</title>
|
|
<style>
|
|
@media print {
|
|
.btn-print {
|
|
display: none;
|
|
}
|
|
}
|
|
|
|
body {
|
|
font-family: Arial, sans-serif;
|
|
margin: 20px;
|
|
font-size: 14px;
|
|
}
|
|
|
|
h2, p {
|
|
text-align: center;
|
|
}
|
|
|
|
table {
|
|
width: 100%;
|
|
border-collapse: collapse;
|
|
margin-top: 20px;
|
|
}
|
|
|
|
th, td {
|
|
border: 1px solid #000;
|
|
padding: 8px;
|
|
text-align: left;
|
|
}
|
|
|
|
th {
|
|
background-color: #f2f2f2;
|
|
}
|
|
|
|
.footer {
|
|
margin-top: 30px;
|
|
text-align: center;
|
|
font-size: 12px;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
|
|
<h2>Laporan Tahunan</h2>
|
|
<p>Tahun: <?php echo $tahun; ?></p>
|
|
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th>No</th>
|
|
<th>ID Order</th>
|
|
<th>ID Pembeli</th>
|
|
<th>Metode Pembayaran</th>
|
|
<th>Total Harga</th>
|
|
<th>Alamat</th>
|
|
<th>Tanggal Order</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<?php $no = 1; while ($row = $result->fetch_assoc()) { ?>
|
|
<tr>
|
|
<td><?= $no++; ?></td>
|
|
<td><?= htmlspecialchars($row['id_order']); ?></td>
|
|
<td><?= htmlspecialchars($row['id_pembeli']); ?></td>
|
|
<td><?= htmlspecialchars($row['metode_pembayaran']); ?></td>
|
|
<td>Rp <?= number_format($row['total_harga'], 0, ',', '.'); ?></td>
|
|
<td><?= substr($row['alamat'], 0, 30); ?><?= strlen($row['alamat']) > 30 ? '...' : '' ?></td>
|
|
<td><?= formatTanggalIndonesia($row['tanggal_order']); ?></td>
|
|
</tr>
|
|
<?php } ?>
|
|
</tbody>
|
|
</table>
|
|
|
|
<div class="footer">
|
|
<button class="btn-print" onclick="window.print()">Cetak Laporan</button>
|
|
<p>Terima kasih atas kepercayaannya.</p>
|
|
</div>
|
|
|
|
</body>
|
|
</html>
|
|
|
|
<?php
|
|
$stmt->close();
|
|
$conn->close();
|
|
?>
|