" +
@@ -401,7 +401,7 @@ namespace BpsRwApp.Controllers
},
new {
rt = "010",
- tanggal = "28/04/2023",
+ tanggal = ControllerSampleData.FormatTanggal(new DateTime(2023, 4, 28)),
jumlah_unit = "504",
aksi = "
" +
"
Detail" +
diff --git a/Controllers/RincianTargetRumahMemilahController.cs b/Controllers/RincianTargetRumahMemilahController.cs
index e820bea..0496007 100644
--- a/Controllers/RincianTargetRumahMemilahController.cs
+++ b/Controllers/RincianTargetRumahMemilahController.cs
@@ -13,61 +13,124 @@ namespace BpsRwApp.Controllers
[HttpGet]
public IActionResult Table()
{
- var wilayahData = new[]
+ var wilayahDefinitions = new[]
{
- new WilayahRow(
- No: 1,
- Wilayah: "Jakarta Pusat",
- TotalJumlahPjlp: 1323,
- TotalTargetBulan: 1323,
- TotalTargetDelapanBulan: 1323,
- Targets: new[]
+ new
+ {
+ Name = "Jakarta Pusat",
+ Kelurahan = new[]
{
- new TargetRow("Cempaka Putih", 40, 40, 40),
- new TargetRow("Gambir", 48, 48, 48),
- new TargetRow("Johar Baru", 84, 84, 84),
- new TargetRow("Kemayoran", 78, 78, 78),
- new TargetRow("Menteng", 64, 64, 64),
- new TargetRow("Sawah Besar", 84, 84, 84),
- new TargetRow("Senen", 11, 11, 11),
- new TargetRow("Tanah Abang", 71, 71, 71),
- }),
- new WilayahRow(
- No: 2,
- Wilayah: "Jakarta Timur",
- TotalJumlahPjlp: 1323,
- TotalTargetBulan: 1323,
- TotalTargetDelapanBulan: 1323,
- Targets: new[]
+ "Cempaka Putih Barat",
+ "Cempaka Putih Timur",
+ "Johar Baru",
+ "Galur",
+ "Kebon Melati",
+ "Kebon Kacang",
+ "Petamburan",
+ "Kampung Bali",
+ "Bendungan Hilir",
+ "Karet Tengsin",
+ }
+ },
+ new
+ {
+ Name = "Jakarta Barat",
+ Kelurahan = new[]
{
- new TargetRow("Cakung", 48, 48, 48),
- new TargetRow("Cipayung", 78, 84, 84),
- new TargetRow("Ciracas", 48, 78, 78),
- new TargetRow("Duren Sawit", 84, 64, 64),
- new TargetRow("Jatinegara", 71, 84, 84),
- new TargetRow("Kramat Jati", 78, 11, 11),
- new TargetRow("Matraman", 84, 71, 71),
- new TargetRow("Makasar", 1323, 40, 40),
- }),
- new WilayahRow(
- No: 3,
- Wilayah: "Jakarta Barat",
- TotalJumlahPjlp: 1323,
- TotalTargetBulan: 1323,
- TotalTargetDelapanBulan: 1323,
- Targets: new[]
+ "Tomang",
+ "Kedoya Selatan",
+ "Duri Kepa",
+ "Palmerah",
+ "Kebon Jeruk",
+ "Kembangan Selatan",
+ "Kembangan Utara",
+ "Cengkareng Barat",
+ "Tegal Alur",
+ "Kamal",
+ }
+ },
+ new
+ {
+ Name = "Jakarta Selatan",
+ Kelurahan = new[]
{
- new TargetRow("Grogol Petamburan", 40, 40, 40),
- new TargetRow("Taman Sari", 48, 48, 48),
- new TargetRow("Palmerah", 84, 84, 84),
- new TargetRow("Kebon Jeruk", 78, 78, 78),
- new TargetRow("Cengkareng", 64, 64, 64),
- new TargetRow("Kembangan", 84, 84, 84),
- new TargetRow("Kalideres", 11, 11, 11),
- new TargetRow("Tambora", 71, 71, 71),
- }),
+ "Cipete Selatan",
+ "Cipete Utara",
+ "Pondok Pinang",
+ "Pondok Indah",
+ "Bangka",
+ "Tegal Parang",
+ "Ragunan",
+ "Cipedak",
+ "Pesanggrahan",
+ "Ulujami",
+ }
+ },
+ new
+ {
+ Name = "Jakarta Timur",
+ Kelurahan = new[]
+ {
+ "Cakung Timur",
+ "Penggilingan",
+ "Pulo Gebang",
+ "Rawa Terate",
+ "Duren Sawit",
+ "Pondok Kelapa",
+ "Klender",
+ "Cipinang Melayu",
+ "Halim Perdanakusuma",
+ "Matraman",
+ }
+ },
+ new
+ {
+ Name = "Jakarta Utara",
+ Kelurahan = new[]
+ {
+ "Kelapa Gading Timur",
+ "Pegangsaan Dua",
+ "Sunter Agung",
+ "Sunter Jaya",
+ "Tanjung Priok",
+ "Pademangan Barat",
+ "Ancol",
+ "Penjaringan",
+ "Pluit",
+ "Marunda",
+ }
+ },
};
+ var wilayahData = wilayahDefinitions
+ .Select((definition, wilayahIndex) =>
+ {
+ var targets = definition.Kelurahan
+ .Select((kelurahan, targetIndex) =>
+ {
+ var baseline = 35 + wilayahIndex * 5 + targetIndex * 3;
+ return new TargetRow(
+ kelurahan,
+ baseline,
+ baseline + 4,
+ baseline + 12);
+ })
+ .ToArray();
+
+ var totalJumlahPjlp = targets.Sum(target => target.JumlahPjlp);
+ var totalTargetBulan = targets.Sum(target => target.TargetBulan);
+ var totalTargetDelapanBulan = targets.Sum(target => target.TargetDelapanBulan);
+
+ return new WilayahRow(
+ No: wilayahIndex + 1,
+ Wilayah: definition.Name,
+ TotalJumlahPjlp: totalJumlahPjlp,
+ TotalTargetBulan: totalTargetBulan,
+ TotalTargetDelapanBulan: totalTargetDelapanBulan,
+ Targets: targets);
+ })
+ .ToArray();
+
var data = wilayahData
.SelectMany(region => region.Targets.Select((target, index) => new
{
diff --git a/Controllers/RumahMemilahController.cs b/Controllers/RumahMemilahController.cs
index 027cabd..8f9be84 100644
--- a/Controllers/RumahMemilahController.cs
+++ b/Controllers/RumahMemilahController.cs
@@ -13,89 +13,26 @@ namespace BpsRwApp.Controllers
[HttpGet]
public IActionResult Table()
{
- var data = new[]
- {
- new {
- kecamatan = "Kebayoran",
- jumlah_rw = 92,
- total_rumah = 701,
- rumah_aktif_memilah = 581,
- rumah_nasabah = 581,
- bank_sampah = 581,
- },
- new {
- kecamatan = "Tebet",
- jumlah_rw = 44,
- total_rumah = 934,
- rumah_aktif_memilah = 889,
- rumah_nasabah = 889,
- bank_sampah = 889,
- },
- new {
- kecamatan = "Menteng",
- jumlah_rw = 9,
- total_rumah = 1378,
- rumah_aktif_memilah = 673,
- rumah_nasabah = 673,
- bank_sampah = 673,
- },
- new {
- kecamatan = "Cilandak",
- jumlah_rw = 18,
- total_rumah = 1094,
- rumah_aktif_memilah = 790,
- rumah_nasabah = 790,
- bank_sampah = 790,
- },
- new {
- kecamatan = "Setiabudi",
- jumlah_rw = 17,
- total_rumah = 794,
- rumah_aktif_memilah = 750,
- rumah_nasabah = 750,
- bank_sampah = 750,
- },
- new {
- kecamatan = "Gambir",
- jumlah_rw = 4,
- total_rumah = 1573,
- rumah_aktif_memilah = 780,
- rumah_nasabah = 780,
- bank_sampah = 780,
- },
- new {
- kecamatan = "Cakung",
- jumlah_rw = 55,
- total_rumah = 1160,
- rumah_aktif_memilah = 553,
- rumah_nasabah = 553,
- bank_sampah = 553,
- },
- new {
- kecamatan = "Kelapa Gading",
- jumlah_rw = 95,
- total_rumah = 1663,
- rumah_aktif_memilah = 582,
- rumah_nasabah = 582,
- bank_sampah = 582,
- },
- new {
- kecamatan = "Pancoran",
- jumlah_rw = 48,
- total_rumah = 730,
- rumah_aktif_memilah = 935,
- rumah_nasabah = 935,
- bank_sampah = 935,
- },
- new {
- kecamatan = "Tanah Abang",
- jumlah_rw = 80,
- total_rumah = 1046,
- rumah_aktif_memilah = 593,
- rumah_nasabah = 593,
- bank_sampah = 593,
- },
- };
+ var data = Enumerable.Range(0, 100)
+ .Select(index =>
+ {
+ var wilayah = ControllerSampleData.WilayahSeeds[(index + 4) % ControllerSampleData.WilayahSeeds.Length];
+ var totalRumah = 720 + (index * 19 % 880);
+ var rumahAktif = totalRumah - (70 + index % 45);
+ var rumahNasabah = rumahAktif - (index % 12);
+ var bankSampah = 45 + (index % 11) * 4;
+
+ return new
+ {
+ kecamatan = $"{wilayah.Kecamatan}, {wilayah.Kota}",
+ jumlah_rw = 18 + (index % 60),
+ total_rumah = totalRumah,
+ rumah_aktif_memilah = rumahAktif,
+ rumah_nasabah = rumahNasabah,
+ bank_sampah = bankSampah,
+ };
+ })
+ .ToArray();
var response = new
{