fix(mobile): format waktu proses laundry - 72 jam menjadi 3 hari, 10 jam tetap 10 jam

This commit is contained in:
micko samawa 2026-06-29 09:40:18 +07:00
parent d9f70573f6
commit be58c556c0
3 changed files with 23 additions and 4 deletions

View File

@ -291,7 +291,26 @@ class Laundry {
double get jarak => jarakKampus; // alias for jarak field
double get rating => avgRating ?? 0.0;
String get estimasiSelesai => '$waktuProses jam';
// Format jam secara umum menjadi format ramah pengguna (contoh: "3 hari", "10 jam")
static String formatJam(int jam) {
if (jam >= 24) {
final hari = jam ~/ 24;
final sisaJam = jam % 24;
if (sisaJam == 0) {
return '$hari hari';
} else {
return '$hari hari $sisaJam jam';
}
}
return '$jam jam';
}
// Format waktu proses sesuai jenis layanan
String formattedWaktuProsesFor(String? jenisLayanan) {
return formatJam(waktuProsesFor(jenisLayanan));
}
String get estimasiSelesai => formatJam(waktuProses);
// Check if currently open
bool get isOpen {

View File

@ -295,7 +295,7 @@ class _LaundryDetailScreenState extends State<LaundryDetailScreen> {
),
_buildHeaderChip(
icon: Icons.schedule_rounded,
label: '${widget.laundry.waktuProsesFor(widget.selectedJenisLayanan)} jam',
label: widget.laundry.formattedWaktuProsesFor(widget.selectedJenisLayanan),
),
],
),
@ -347,7 +347,7 @@ class _LaundryDetailScreenState extends State<LaundryDetailScreen> {
_buildInfoRow(
Icons.schedule,
'Kecepatan Layanan',
'${widget.laundry.waktuProsesFor(widget.selectedJenisLayanan)} jam',
widget.laundry.formattedWaktuProsesFor(widget.selectedJenisLayanan),
),
],
),

View File

@ -236,7 +236,7 @@ class LaundryCard extends StatelessWidget {
),
const SizedBox(width: 4),
Text(
'${laundry.waktuProsesFor(selectedJenisLayanan)}h',
laundry.formattedWaktuProsesFor(selectedJenisLayanan),
style: const TextStyle(
fontSize: 12,
fontWeight: FontWeight.bold,