feat: add module Data Kelurahan

main
Kevin Hendrawan 2025-11-20 01:14:11 +07:00
parent 57f82200ca
commit 0af28227bf
3 changed files with 199 additions and 0 deletions

View File

@ -0,0 +1,127 @@
using Microsoft.AspNetCore.Mvc;
namespace BankSampahApp.Controllers.Main
{
[Route("Main/[controller]/[action]")]
public class DataKelurahanController : Controller
{
public IActionResult Index()
{
return View("~/Views/Main/DataKelurahan/Index.cshtml");
}
[HttpGet]
public IActionResult Table()
{
var data = new[]
{
new {
nama_kelurahan = "KELURAHAN MELATI",
jumlah_bank_sampah = 5,
jumlah_nasabah = 320,
jumlah_rumah_memilah = 210,
jumlah_rw = 12,
nama_pendamping = "Rina Suryani"
},
new {
nama_kelurahan = "KELURAHAN MAWAR",
jumlah_bank_sampah = 3,
jumlah_nasabah = 185,
jumlah_rumah_memilah = 140,
jumlah_rw = 8,
nama_pendamping = "Budi Hartono"
},
new {
nama_kelurahan = "KELURAHAN KENANGA",
jumlah_bank_sampah = 4,
jumlah_nasabah = 260,
jumlah_rumah_memilah = 190,
jumlah_rw = 10,
nama_pendamping = "Siti Aminah"
},
new {
nama_kelurahan = "KELURAHAN ANGGREK",
jumlah_bank_sampah = 6,
jumlah_nasabah = 410,
jumlah_rumah_memilah = 300,
jumlah_rw = 14,
nama_pendamping = "Rahmat Hidayat"
},
new {
nama_kelurahan = "KELURAHAN CEMPAKA",
jumlah_bank_sampah = 2,
jumlah_nasabah = 120,
jumlah_rumah_memilah = 85,
jumlah_rw = 6,
nama_pendamping = "Nur Aisyah"
},
new {
nama_kelurahan = "KELURAHAN DAHLIA",
jumlah_bank_sampah = 7,
jumlah_nasabah = 540,
jumlah_rumah_memilah = 420,
jumlah_rw = 15,
nama_pendamping = "Andre Permana"
},
new {
nama_kelurahan = "KELURAHAN FLAMBOYAN",
jumlah_bank_sampah = 5,
jumlah_nasabah = 350,
jumlah_rumah_memilah = 260,
jumlah_rw = 11,
nama_pendamping = "Yuni Kurniasih"
},
new {
nama_kelurahan = "KELURAHAN BOUGENVILLE",
jumlah_bank_sampah = 3,
jumlah_nasabah = 178,
jumlah_rumah_memilah = 130,
jumlah_rw = 7,
nama_pendamping = "Dwi Saputra"
},
new {
nama_kelurahan = "KELURAHAN TERATAI",
jumlah_bank_sampah = 4,
jumlah_nasabah = 240,
jumlah_rumah_memilah = 170,
jumlah_rw = 9,
nama_pendamping = "Laila Hasanah"
},
new {
nama_kelurahan = "KELURAHAN KEMUNING",
jumlah_bank_sampah = 6,
jumlah_nasabah = 480,
jumlah_rumah_memilah = 350,
jumlah_rw = 13,
nama_pendamping = "Eko Prabowo"
},
new {
nama_kelurahan = "KELURAHAN SOKA",
jumlah_bank_sampah = 2,
jumlah_nasabah = 115,
jumlah_rumah_memilah = 90,
jumlah_rw = 5,
nama_pendamping = "Dewi Kartika"
},
new {
nama_kelurahan = "KELURAHAN JATI",
jumlah_bank_sampah = 5,
jumlah_nasabah = 330,
jumlah_rumah_memilah = 240,
jumlah_rw = 12,
nama_pendamping = "Hendri Setiawan"
},
};
var response = new
{
data = data
};
return Json(response);
}
}
}

View File

@ -0,0 +1,64 @@
@{
ViewData["Title"] = "Data Kelurahan";
}
<div class="flex flex-col gap-2 md:flex-row md:justify-between md:gap-0">
<div class="prose">
<span class="text-xl font-semibold text-gray-900 font-['Plus_Jakarta_Sans']">
Data Kelurahan
</span>
</div>
</div>
<div class="h-6"></div>
<div class="card bg-white shadow-sm">
<div class="card-body p-2">
<div class="w-full overflow-x-auto">
<table class="table-zebra table w-full" id="example">
<!-- head -->
<thead>
<tr>
<th class="w-[10%]">No</th>
<th class="w-[25%]">Nama Kelurahan</th>
<th class="w-[10%]">Jumlah Bank Sampah</th>
<th class="w-[10%]">Jumlah Nasabah</th>
<th class="w-[10%]">Jumlah Rumah Memilah</th>
<th class="w-[10%]">Jumlah RW</th>
<th class="w-[25%]">Nama Pendamping</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</div>
</div>
</div>
@section Scripts {
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Main/DataKelurahan/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'nama_kelurahan' },
{ data: 'jumlah_bank_sampah' },
{ data: 'jumlah_nasabah' },
{ data: 'jumlah_rumah_memilah' },
{ data: 'jumlah_rw' },
{ data: 'nama_pendamping' },
]
});
});
</script>
}

View File

@ -67,6 +67,14 @@
</a> </a>
</li> </li>
<!-- Data Kelurahan -->
<li>
<a asp-controller="DataKelurahan" asp-action="Index" class="rounded-full @(controller == "DataKelurahan" ? "menu-active" : "")">
<i class="ph ph-buildings me-2 text-lg"></i>
Data Kelurahan
</a>
</li>
<!-- Transaksi Laporan --> <!-- Transaksi Laporan -->
<li> <li>
<a asp-controller="TransaksiLaporan" asp-action="Index" class="rounded-full @(controller == "TransaksiLaporan" ? "menu-active" : "")"> <a asp-controller="TransaksiLaporan" asp-action="Index" class="rounded-full @(controller == "TransaksiLaporan" ? "menu-active" : "")">