bps-rw/Controllers/DataRwController.cs

130 lines
4.3 KiB
C#

using Microsoft.AspNetCore.Mvc;
namespace BpsRwApp.Controllers
{
[Route("/[controller]/[action]")]
public class DataRwController : AppControllerBase
{
public IActionResult Index()
{
return View();
}
[HttpGet]
public IActionResult Table()
{
var rows = new[]
{
new {
rw = "001",
kecamatan = "Kebayoran",
jumlah_rumah_memilah = 581,
jumlah_rumah_nasabah = 701,
jumlah_bank_sampah = 581,
},
new {
rw = "002",
kecamatan = "Tebet",
jumlah_rumah_memilah = 889,
jumlah_rumah_nasabah = 934,
jumlah_bank_sampah = 889,
},
new {
rw = "003",
kecamatan = "Menteng",
jumlah_rumah_memilah = 673,
jumlah_rumah_nasabah = 1378,
jumlah_bank_sampah = 673,
},
new {
rw = "004",
kecamatan = "Cilandak",
jumlah_rumah_memilah = 790,
jumlah_rumah_nasabah = 1094,
jumlah_bank_sampah = 790,
},
new {
rw = "005",
kecamatan = "Setiabudi",
jumlah_rumah_memilah = 750,
jumlah_rumah_nasabah = 794,
jumlah_bank_sampah = 750,
},
new {
rw = "006",
kecamatan = "Gambir",
jumlah_rumah_memilah = 780,
jumlah_rumah_nasabah = 1573,
jumlah_bank_sampah = 780,
},
new {
rw = "007",
kecamatan = "Cakung",
jumlah_rumah_memilah = 552,
jumlah_rumah_nasabah = 1160,
jumlah_bank_sampah = 552,
},
new {
rw = "008",
kecamatan = "Kelapa Gading",
jumlah_rumah_memilah = 582,
jumlah_rumah_nasabah = 1663,
jumlah_bank_sampah = 582,
},
new {
rw = "009",
kecamatan = "Pancoran",
jumlah_rumah_memilah = 935,
jumlah_rumah_nasabah = 730,
jumlah_bank_sampah = 935,
},
new {
rw = "010",
kecamatan = "Tanah Abang",
jumlah_rumah_memilah = 593,
jumlah_rumah_nasabah = 1046,
jumlah_bank_sampah = 593,
},
};
var data = rows
.Select(row => new
{
row.rw,
row.kecamatan,
row.jumlah_rumah_memilah,
row.jumlah_rumah_nasabah,
row.jumlah_bank_sampah,
aksi = BuildActionButton(
row.rw,
row.kecamatan,
row.jumlah_rumah_memilah,
row.jumlah_rumah_nasabah,
row.jumlah_bank_sampah)
})
.ToArray();
var response = new
{
data = data
};
return Json(response);
static string BuildActionButton(
string rw,
string kecamatan,
int jumlahRumahMemilah,
int jumlahRumahNasabah,
int jumlahBankSampah)
{
return "<div class=\"flex gap-2\">" +
$"<button type=\"button\" class=\"btn bg-white rounded-full btn-xs btn-view-detail\" data-rw=\"{rw}\" data-kecamatan=\"{kecamatan}\" data-jumlah-rumah-memilah=\"{jumlahRumahMemilah}\" data-jumlah-rumah-nasabah=\"{jumlahRumahNasabah}\" data-jumlah-bank-sampah=\"{jumlahBankSampah}\">" +
"Detail" +
"</button>" +
"</div>";
}
}
}
}