diff --git a/Controllers/SpjDriverUpstController/DetailController.cs b/Controllers/SpjDriverUpstController/DetailController.cs index 1d9d903..92daf74 100644 --- a/Controllers/SpjDriverUpstController/DetailController.cs +++ b/Controllers/SpjDriverUpstController/DetailController.cs @@ -51,6 +51,18 @@ namespace eSPJ.Controllers.SpjDriverUpstController return View("~/Views/Admin/Transport/SpjDriverUpst/DetailPenjemputan/DetailBatal.cshtml"); } + [HttpGet("detail-selesai")] + public IActionResult DetailSelesai() + { + return View("~/Views/Admin/Transport/SpjDriverUpst/DetailPenjemputan/DetailSelesai.cshtml"); + } + + [HttpGet("detail-selesai-tanpa-tps")] + public IActionResult DetailSelesaiTanpaTps() + { + return View("~/Views/Admin/Transport/SpjDriverUpst/DetailPenjemputan/DetailSelesaiTanpaTps.cshtml"); + } + [HttpPost("")] [ValidateAntiForgeryToken] public async Task Submit([FromForm] DetailPenjemputanRequest request) diff --git a/Views/Admin/Transport/SpjDriverUpst/DetailPenjemputan/DetailSelesai.cshtml b/Views/Admin/Transport/SpjDriverUpst/DetailPenjemputan/DetailSelesai.cshtml new file mode 100644 index 0000000..652e4a1 --- /dev/null +++ b/Views/Admin/Transport/SpjDriverUpst/DetailPenjemputan/DetailSelesai.cshtml @@ -0,0 +1,190 @@ +@{ + Layout = "~/Views/Admin/Transport/SpjDriverUpst/Shared/_Layout.cshtml"; + ViewData["Title"] = "Detail SPJ"; +} + +
+
+
+ + + +

Detail SPJ

+
+
+
+ +
+
+
+
+
+
-
+
-
+
+

-

+

-

+
+
+ +
+
+ +
+
+

No. SPJ

+

-

+
+
+

Plat Nomor

+

-

+
+
+

No. Pintu

+

-

+
+
+

Petugas

+

-

+
+
+
+ +
+
+

Ringkasan Timbangan

+
+ +
+
+

Organik

+

0,00 kg

+
+
+

Anorganik

+

0,00 kg

+
+
+

Residu

+

0,00 kg

+
+
+ +
+

Total Keseluruhan

+

0,00 kg

+
+
+ +
+
+

Daftar TPS

+
+
+
+
+ + +@section Scripts { + +} diff --git a/Views/Admin/Transport/SpjDriverUpst/DetailPenjemputan/DetailSelesaiTanpaTps.cshtml b/Views/Admin/Transport/SpjDriverUpst/DetailPenjemputan/DetailSelesaiTanpaTps.cshtml new file mode 100644 index 0000000..bd5c71e --- /dev/null +++ b/Views/Admin/Transport/SpjDriverUpst/DetailPenjemputan/DetailSelesaiTanpaTps.cshtml @@ -0,0 +1,126 @@ +@{ + Layout = "~/Views/Admin/Transport/SpjDriverUpst/Shared/_Layout.cshtml"; + ViewData["Title"] = "Detail SPJ"; +} + +
+
+
+ + + +

Detail SPJ

+
+
+
+ +
+
+
+
+
+
-
+
-
+
+

-

+

-

+
+
+ +
+
+ +
+
+

No. SPJ

+

-

+
+
+

Plat Nomor

+

-

+
+
+

No. Pintu

+

-

+
+
+

Petugas

+

-

+
+
+
+ +
+
+

Ringkasan Timbangan

+
+ +
+
+

Organik

+

0,00 kg

+
+
+

Anorganik

+

0,00 kg

+
+
+

Residu

+

0,00 kg

+
+
+ +
+

Total Keseluruhan

+

0,00 kg

+
+
+ + +
+ + +
+ +@section Scripts { + +} diff --git a/Views/Admin/Transport/SpjDriverUpst/Home/Index.cshtml b/Views/Admin/Transport/SpjDriverUpst/Home/Index.cshtml index 83f32e0..6e2d57d 100644 --- a/Views/Admin/Transport/SpjDriverUpst/Home/Index.cshtml +++ b/Views/Admin/Transport/SpjDriverUpst/Home/Index.cshtml @@ -139,11 +139,26 @@
- +
- Selesai + Selesai + +
+

CV Tri Mitra Utama - Shell Radio Dalam

+

Jakarta Selatan

+
+ Ada 3 TPS +
+
+
+ + +
+
+
+ Selesai

CV Tri Berkah Sejahtera

@@ -158,7 +173,7 @@
- Batal + Batal

CV Tri Berkah Sejahtera

diff --git a/wwwroot/driver/css/watch.css b/wwwroot/driver/css/watch.css index 5725f9e..e68ab2c 100644 --- a/wwwroot/driver/css/watch.css +++ b/wwwroot/driver/css/watch.css @@ -109,6 +109,8 @@ --text-xl--line-height: calc(1.75 / 1.25); --text-2xl: 1.5rem; --text-2xl--line-height: calc(2 / 1.5); + --text-5xl: 3rem; + --text-5xl--line-height: 1; --font-weight-medium: 500; --font-weight-semibold: 600; --font-weight-bold: 700; @@ -567,6 +569,12 @@ .col-auto { grid-column: auto; } + .col-span-1 { + grid-column: span 1 / span 1; + } + .col-span-2 { + grid-column: span 2 / span 2; + } .float-end { float: inline-end; } @@ -798,6 +806,12 @@ .ml-auto { margin-left: auto; } + .line-clamp-2 { + overflow: hidden; + display: -webkit-box; + -webkit-box-orient: vertical; + -webkit-line-clamp: 2; + } .line-clamp-3 { overflow: hidden; display: -webkit-box; @@ -861,6 +875,9 @@ .h-3 { height: calc(var(--spacing) * 3); } + .h-3\.5 { + height: calc(var(--spacing) * 3.5); + } .h-4 { height: calc(var(--spacing) * 4); } @@ -969,6 +986,9 @@ .w-3 { width: calc(var(--spacing) * 3); } + .w-3\.5 { + width: calc(var(--spacing) * 3.5); + } .w-4 { width: calc(var(--spacing) * 4); } @@ -1074,6 +1094,9 @@ .shrink { flex-shrink: 1; } + .shrink-0 { + flex-shrink: 0; + } .flex-grow { flex-grow: 1; } @@ -1212,6 +1235,9 @@ .gap-1 { gap: calc(var(--spacing) * 1); } + .gap-1\.5 { + gap: calc(var(--spacing) * 1.5); + } .gap-2 { gap: calc(var(--spacing) * 2); } @@ -2088,6 +2114,9 @@ .px-2 { padding-inline: calc(var(--spacing) * 2); } + .px-2\.5 { + padding-inline: calc(var(--spacing) * 2.5); + } .px-3 { padding-inline: calc(var(--spacing) * 3); } @@ -2109,6 +2138,9 @@ .py-1 { padding-block: calc(var(--spacing) * 1); } + .py-1\.5 { + padding-block: calc(var(--spacing) * 1.5); + } .py-2 { padding-block: calc(var(--spacing) * 2); } @@ -2127,6 +2159,9 @@ .py-6 { padding-block: calc(var(--spacing) * 6); } + .py-10 { + padding-block: calc(var(--spacing) * 10); + } .py-12 { padding-block: calc(var(--spacing) * 12); } @@ -2380,6 +2415,9 @@ .text-wrap { text-wrap: wrap; } + .wrap-break-word { + overflow-wrap: break-word; + } .break-all { word-break: break-all; } @@ -2398,6 +2436,12 @@ .text-blue-700 { color: var(--color-blue-700); } + .text-blue-700\/60 { + color: color-mix(in srgb, oklch(48.8% 0.243 264.376) 60%, transparent); + @supports (color: color-mix(in lab, red, red)) { + color: color-mix(in oklab, var(--color-blue-700) 60%, transparent); + } + } .text-blue-800 { color: var(--color-blue-800); } @@ -2815,6 +2859,13 @@ } } } + .group-hover\:border-gray-200 { + &:is(:where(.group):hover *) { + @media (hover: hover) { + border-color: var(--color-gray-200); + } + } + } .group-hover\:text-gray-500 { &:is(:where(.group):hover *) { @media (hover: hover) { @@ -2836,6 +2887,14 @@ } } } + .group-hover\:shadow { + &:is(:where(.group):hover *) { + @media (hover: hover) { + --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)); + box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); + } + } + } .group-hover\:shadow-md { &:is(:where(.group):hover *) { @media (hover: hover) { @@ -2962,6 +3021,13 @@ } } } + .hover\:border-gray-200 { + &:hover { + @media (hover: hover) { + border-color: var(--color-gray-200); + } + } + } .hover\:border-orange-200 { &:hover { @media (hover: hover) { @@ -3280,6 +3346,11 @@ scale: var(--tw-scale-x) var(--tw-scale-y); } } + .sm\:grid-cols-4 { + @media (width >= 40rem) { + grid-template-columns: repeat(4, minmax(0, 1fr)); + } + } .lg\:max-w-sm { @media (width >= 64rem) { max-width: var(--container-sm); diff --git a/wwwroot/driver/json/selesai-data.json b/wwwroot/driver/json/selesai-data.json new file mode 100644 index 0000000..c86fb7d --- /dev/null +++ b/wwwroot/driver/json/selesai-data.json @@ -0,0 +1,66 @@ +{ + "selesai": { + "namaPerusahaan": "CV Tri Mitra Utama - Shell Radio Dalam", + "alamat": "Jl. Radio Dalam Raya No.6C, Gandaria Utara, Kebayoran Baru, Kota Adm. Jakarta Selatan 12140", + "tanggalSelesai": "2026-03-10T11:20:00", + "status": "Selesai", + "nomorSpj": "SPJ/07-2025/PKM/000476", + "platNomor": "B 9632 TOR", + "nomorPintu": "JRC 005", + "petugas": { + "driver": "Muammar Fikri", + "checker": "Rizky Ananda" + }, + "timbangan": { + "organik": 186.4, + "anorganik": 92.15, + "residu": 28.35, + "total": 306.9 + }, + "tpsList": [ + { + "id": 1, + "kode": "TPS-01", + "nama": "TPS RW 01 Gandaria Utara", + "status": "Selesai", + "alamat": "Jl. H. Nawi Dalam Gg. Keluarga No.12, Kebayoran Baru", + "waktuSelesai": "2026-03-10T09:15:00", + "timbangan": { + "organik": 62.4, + "anorganik": 31.25, + "residu": 8.1, + "total": 101.75 + } + }, + { + "id": 2, + "kode": "TPS-02", + "nama": "TPS Pasar Mayestik", + "status": "Batal", + "alamat": "Jl. Tebah III, Gunung, Kebayoran Baru", + "waktuBatal": "2026-03-10T10:02:00", + "keterangan": "Akses kendaraan tertutup aktivitas bongkar muat pasar sehingga penjemputan TPS ini dibatalkan.", + "timbangan": { + "organik": 0, + "anorganik": 0, + "residu": 0, + "total": 0 + } + }, + { + "id": 3, + "kode": "TPS-03", + "nama": "TPS Komersial Radio Dalam", + "status": "Selesai", + "alamat": "Jl. Radio Dalam Raya Sisi Timur, Kebayoran Baru", + "waktuSelesai": "2026-03-10T10:48:00", + "timbangan": { + "organik": 69.2, + "anorganik": 32.5, + "residu": 10.9, + "total": 112.6 + } + } + ] + } +} diff --git a/wwwroot/driver/json/selesai-tanpa-tps-data.json b/wwwroot/driver/json/selesai-tanpa-tps-data.json new file mode 100644 index 0000000..f58062d --- /dev/null +++ b/wwwroot/driver/json/selesai-tanpa-tps-data.json @@ -0,0 +1,21 @@ +{ + "selesai": { + "namaPerusahaan": "CV Tri Berkah Sejahtera", + "alamat": "Kp. Pertanian II Rt.004 Rw.001 Kel. Klender Kec, Duren Sawit, Kota Adm. Jakarta Timur 13470", + "tanggalSelesai": "2026-03-10T10:35:00", + "status": "Selesai", + "nomorSpj": "SPJ/07-2025/PKM/000477", + "platNomor": "B 9041 UPT", + "nomorPintu": "JRC 011", + "petugas": { + "driver": "Andri Saputra", + "checker": "Nabila Putri" + }, + "timbangan": { + "organik": 128.5, + "anorganik": 74.25, + "residu": 19.8, + "total": 222.55 + } + } +}