feat: add field and data
parent
242a2cb9bd
commit
76f7367b0a
|
|
@ -13,27 +13,42 @@ namespace BpsRwApp.Controllers
|
||||||
[HttpGet]
|
[HttpGet]
|
||||||
public IActionResult Table()
|
public IActionResult Table()
|
||||||
{
|
{
|
||||||
var data = Enumerable.Range(1, 50)
|
var data = Enumerable.Range(1, 50)
|
||||||
.Select(index =>
|
.Select(index =>
|
||||||
{
|
{
|
||||||
var wilayah = ControllerSampleData.WilayahSeeds[(index - 1) % ControllerSampleData.WilayahSeeds.Length];
|
var wilayah = ControllerSampleData.WilayahSeeds[(index - 1) % ControllerSampleData.WilayahSeeds.Length];
|
||||||
var jumlahRumahMemilah = 520 + (index * 11 % 260);
|
var namaPendamping = ControllerSampleData.PersonNames[(index - 1) % ControllerSampleData.PersonNames.Length];
|
||||||
var jumlahRumahNasabah = jumlahRumahMemilah + 40 + (index % 7) * 6;
|
|
||||||
var jumlahBankSampah = 40 + (index * 3 % 90);
|
|
||||||
var rw = index.ToString("D3");
|
var rw = index.ToString("D3");
|
||||||
var kecamatan = $"{wilayah.Kecamatan}, {wilayah.Kota}";
|
var kota = wilayah.Kota;
|
||||||
|
var checklist = 20 + (index * 7 % 80);
|
||||||
|
var jumlahFoto = 5;
|
||||||
|
var jumlahRumah = 500 + (index * 13 % 500);
|
||||||
|
var jumlahRumahMemilah = jumlahRumah - (50 + index % 30);
|
||||||
|
var presentaseRumahMemilah = Math.Round((double)jumlahRumahMemilah / jumlahRumah * 100);
|
||||||
|
var jumlahRumahNasabah = jumlahRumahMemilah - (10 + index % 20);
|
||||||
|
var jumlahBankSampah = jumlahRumahMemilah - (10 + index % 20);
|
||||||
|
|
||||||
return new
|
return new
|
||||||
{
|
{
|
||||||
rw,
|
rw,
|
||||||
kecamatan,
|
kota,
|
||||||
|
nama_pendamping = namaPendamping,
|
||||||
|
checklist,
|
||||||
|
jumlah_foto = jumlahFoto,
|
||||||
|
jumlah_rumah = jumlahRumah,
|
||||||
jumlah_rumah_memilah = jumlahRumahMemilah,
|
jumlah_rumah_memilah = jumlahRumahMemilah,
|
||||||
|
presentase_rumah_memilah = $"{presentaseRumahMemilah}%",
|
||||||
jumlah_rumah_nasabah = jumlahRumahNasabah,
|
jumlah_rumah_nasabah = jumlahRumahNasabah,
|
||||||
jumlah_bank_sampah = jumlahBankSampah,
|
jumlah_bank_sampah = jumlahBankSampah,
|
||||||
aksi = BuildActionButton(
|
aksi = BuildActionButton(
|
||||||
rw,
|
rw,
|
||||||
kecamatan,
|
kota,
|
||||||
|
namaPendamping,
|
||||||
|
checklist,
|
||||||
|
jumlahFoto,
|
||||||
|
jumlahRumah,
|
||||||
jumlahRumahMemilah,
|
jumlahRumahMemilah,
|
||||||
|
presentaseRumahMemilah,
|
||||||
jumlahRumahNasabah,
|
jumlahRumahNasabah,
|
||||||
jumlahBankSampah)
|
jumlahBankSampah)
|
||||||
};
|
};
|
||||||
|
|
@ -49,17 +64,32 @@ namespace BpsRwApp.Controllers
|
||||||
|
|
||||||
static string BuildActionButton(
|
static string BuildActionButton(
|
||||||
string rw,
|
string rw,
|
||||||
string kecamatan,
|
string kota,
|
||||||
|
string namaPendamping,
|
||||||
|
int checklist,
|
||||||
|
int jumlahFoto,
|
||||||
|
int jumlahRumah,
|
||||||
int jumlahRumahMemilah,
|
int jumlahRumahMemilah,
|
||||||
|
double presentaseRumahMemilih,
|
||||||
int jumlahRumahNasabah,
|
int jumlahRumahNasabah,
|
||||||
int jumlahBankSampah)
|
int jumlahBankSampah)
|
||||||
{
|
{
|
||||||
return "<div class=\"flex gap-2\">" +
|
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}\">" +
|
$"<button type=\"button\" class=\"btn bg-white rounded-full btn-xs btn-view-detail\" " +
|
||||||
|
$"data-rw=\"{rw}\" " +
|
||||||
|
$"data-kota=\"{kota}\" " +
|
||||||
|
$"data-nama-pendamping=\"{namaPendamping}\" " +
|
||||||
|
$"data-checklist=\"{checklist}\" " +
|
||||||
|
$"data-jumlah-foto=\"{jumlahFoto}\" " +
|
||||||
|
$"data-jumlah-rumah=\"{jumlahRumah}\" " +
|
||||||
|
$"data-jumlah-rumah-memilah=\"{jumlahRumahMemilah}\" " +
|
||||||
|
$"data-presentase-rumah-memilah=\"{presentaseRumahMemilih}\" " +
|
||||||
|
$"data-jumlah-rumah-nasabah=\"{jumlahRumahNasabah}\" " +
|
||||||
|
$"data-jumlah-bank-sampah=\"{jumlahBankSampah}\">" +
|
||||||
"Detail" +
|
"Detail" +
|
||||||
"</button>" +
|
"</button>" +
|
||||||
"</div>";
|
"</div>";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -84,10 +84,18 @@
|
||||||
<span class="text-gray-500">Jumlah KK</span>
|
<span class="text-gray-500">Jumlah KK</span>
|
||||||
<span class="font-semibold">341</span>
|
<span class="font-semibold">341</span>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="flex flex-col">
|
||||||
|
<span class="text-gray-500">Jumlah Rumah</span>
|
||||||
|
<span class="font-semibold" id="detail-jumlah-rumah">-</span>
|
||||||
|
</div>
|
||||||
<div class="flex flex-col">
|
<div class="flex flex-col">
|
||||||
<span class="text-gray-500">Jumlah Rumah Memilah</span>
|
<span class="text-gray-500">Jumlah Rumah Memilah</span>
|
||||||
<span class="font-semibold" id="detail-jumlah-rumah-memilah">-</span>
|
<span class="font-semibold" id="detail-jumlah-rumah-memilah">-</span>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="flex flex-col">
|
||||||
|
<span class="text-gray-500">Presentase Rumah Memilah</span>
|
||||||
|
<span class="font-semibold" id="detail-presentase-rumah-memilah">-</span>
|
||||||
|
</div>
|
||||||
<div class="flex flex-col">
|
<div class="flex flex-col">
|
||||||
<span class="text-gray-500">Jumlah Rumah Nasabah</span>
|
<span class="text-gray-500">Jumlah Rumah Nasabah</span>
|
||||||
<span class="font-semibold" id="detail-jumlah-rumah-nasabah">-</span>
|
<span class="font-semibold" id="detail-jumlah-rumah-nasabah">-</span>
|
||||||
|
|
@ -114,11 +122,19 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="flex flex-col">
|
<div class="flex flex-col">
|
||||||
<span class="text-gray-500">Kota / Kabupaten</span>
|
<span class="text-gray-500">Kota / Kabupaten</span>
|
||||||
<span class="font-semibold">Kota Adm. Jakarta Barat</span>
|
<span class="font-semibold" id="detail-kota">-</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex flex-col">
|
<div class="flex flex-col">
|
||||||
<span class="text-gray-500">Kecamatan</span>
|
<span class="text-gray-500">Nama Pendamping</span>
|
||||||
<span class="font-semibold" id="detail-kecamatan">-</span>
|
<span class="font-semibold" id="detail-nama-pendamping">-</span>
|
||||||
|
</div>
|
||||||
|
<div class="flex flex-col">
|
||||||
|
<span class="text-gray-500">Checklist</span>
|
||||||
|
<span class="font-semibold" id="detail-checklist">-</span>
|
||||||
|
</div>
|
||||||
|
<div class="flex flex-col">
|
||||||
|
<span class="text-gray-500">Jumlah Foto</span>
|
||||||
|
<span class="font-semibold" id="detail-jumlah-foto">-</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="grid grid-cols-1 md:grid-cols-2 md:gap-2">
|
<div class="grid grid-cols-1 md:grid-cols-2 md:gap-2">
|
||||||
<div class="flex flex-col">
|
<div class="flex flex-col">
|
||||||
|
|
@ -158,12 +174,17 @@
|
||||||
<table class="table-zebra table" id="example">
|
<table class="table-zebra table" id="example">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th class="w-[5%]">No</th>
|
<th class="w-[3%]">No</th>
|
||||||
<th class="w-[5%]">RW</th>
|
<th class="w-[5%]">RW</th>
|
||||||
<th class="w-[40%]">Kota</th>
|
<th class="w-[12%]">Kota</th>
|
||||||
<th class="w-[15%]">Jumlah Rumah Memilah</th>
|
<th class="w-[15%]">Nama Pendamping</th>
|
||||||
<th class="w-[15%]">Jumlah Rumah Nasabah</th>
|
<th class="w-[8%]">Checklist</th>
|
||||||
<th class="w-[15%]">Jumlah Bank Sampah</th>
|
<th class="w-[8%]">Jumlah Foto</th>
|
||||||
|
<th class="w-[10%]">Jumlah Rumah</th>
|
||||||
|
<th class="w-[10%]">Jumlah Rumah Memilah</th>
|
||||||
|
<th class="w-[12%]">Presentase Rumah Memilah</th>
|
||||||
|
<th class="w-[10%]">Jumlah Rumah Nasabah</th>
|
||||||
|
<th class="w-[10%]">Jumlah Bank Sampah</th>
|
||||||
<th class="w-[5%]">Aksi</th>
|
<th class="w-[5%]">Aksi</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
|
|
@ -196,8 +217,13 @@
|
||||||
const detailModal = document.getElementById('rw-detail-modal');
|
const detailModal = document.getElementById('rw-detail-modal');
|
||||||
const detailElements = {
|
const detailElements = {
|
||||||
rw: document.getElementById('detail-rw'),
|
rw: document.getElementById('detail-rw'),
|
||||||
kecamatan: document.getElementById('detail-kecamatan'),
|
kota: document.getElementById('detail-kota'),
|
||||||
|
namaPendamping: document.getElementById('detail-nama-pendamping'),
|
||||||
|
checklist: document.getElementById('detail-checklist'),
|
||||||
|
jumlahFoto: document.getElementById('detail-jumlah-foto'),
|
||||||
|
jumlahRumah: document.getElementById('detail-jumlah-rumah'),
|
||||||
rumahMemilah: document.getElementById('detail-jumlah-rumah-memilah'),
|
rumahMemilah: document.getElementById('detail-jumlah-rumah-memilah'),
|
||||||
|
presentaseRumahMemilah: document.getElementById('detail-presentase-rumah-memilah'),
|
||||||
rumahNasabah: document.getElementById('detail-jumlah-rumah-nasabah'),
|
rumahNasabah: document.getElementById('detail-jumlah-rumah-nasabah'),
|
||||||
bankSampah: document.getElementById('detail-jumlah-bank-sampah')
|
bankSampah: document.getElementById('detail-jumlah-bank-sampah')
|
||||||
};
|
};
|
||||||
|
|
@ -212,8 +238,13 @@
|
||||||
columns: [
|
columns: [
|
||||||
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
|
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
|
||||||
{ data: 'rw' },
|
{ data: 'rw' },
|
||||||
{ data: 'kecamatan' },
|
{ data: 'kota' },
|
||||||
|
{ data: 'nama_pendamping' },
|
||||||
|
{ data: 'checklist' },
|
||||||
|
{ data: 'jumlah_foto' },
|
||||||
|
{ data: 'jumlah_rumah' },
|
||||||
{ data: 'jumlah_rumah_memilah' },
|
{ data: 'jumlah_rumah_memilah' },
|
||||||
|
{ data: 'presentase_rumah_memilah' },
|
||||||
{ data: 'jumlah_rumah_nasabah' },
|
{ data: 'jumlah_rumah_nasabah' },
|
||||||
{ data: 'jumlah_bank_sampah' },
|
{ data: 'jumlah_bank_sampah' },
|
||||||
{ data: 'aksi' },
|
{ data: 'aksi' },
|
||||||
|
|
@ -229,8 +260,13 @@
|
||||||
|
|
||||||
const dataset = this.dataset;
|
const dataset = this.dataset;
|
||||||
detailElements.rw.textContent = dataset.rw || '-';
|
detailElements.rw.textContent = dataset.rw || '-';
|
||||||
detailElements.kecamatan.textContent = dataset.kecamatan || '-';
|
detailElements.kota.textContent = dataset.kota || '-';
|
||||||
|
detailElements.namaPendamping.textContent = dataset.namaPendamping || '-';
|
||||||
|
detailElements.checklist.textContent = dataset.checklist || '-';
|
||||||
|
detailElements.jumlahFoto.textContent = dataset.jumlahFoto || '-';
|
||||||
|
detailElements.jumlahRumah.textContent = dataset.jumlahRumah || '-';
|
||||||
detailElements.rumahMemilah.textContent = dataset.jumlahRumahMemilah || '-';
|
detailElements.rumahMemilah.textContent = dataset.jumlahRumahMemilah || '-';
|
||||||
|
detailElements.presentaseRumahMemilah.textContent = dataset.presentaseRumahMemilah + '%' || '-';
|
||||||
detailElements.rumahNasabah.textContent = dataset.jumlahRumahNasabah || '-';
|
detailElements.rumahNasabah.textContent = dataset.jumlahRumahNasabah || '-';
|
||||||
detailElements.bankSampah.textContent = dataset.jumlahBankSampah || '-';
|
detailElements.bankSampah.textContent = dataset.jumlahBankSampah || '-';
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue