我做了一个考勤应用。它将根据位置记录用户的出勤情况。我在数据库中有一个字段叫做 duration_attendance
,该字段的数据类型为 TIME
.
该字段将记录用户从上班到回家的出勤时间(例如:开始08:00.结束17:00.它将返回持续时间08:00)。
在服务器端,我可以实现它与。
Convert Time To Second : SELECT TIME_TO_SEC('05:15:40');
Convert Second To Hours minute : SELECT TIME_FORMAT(SEC_TO_TIME('48465'),'%Hh %im') // 13h 27m
我如何能将 时间 在飞镖方面的小时和分钟格式?
在我的情况下。出席时间 = 08:35 我想把它转换为8小时35分钟。
{
"status": 1,
"message": "Data Absensi Bulan 05 Tahun 2020",
"data": [
{
"tanggal_absen": "2020-05-10",
"jam_absen_masuk": "07:55:00",
"jam_absen_pulang": "21:22:45",
"durasi_absen": "13:27:45",
"status": "o",
"durasi_lembur": "04:22:45"
},
{
"tanggal_absen": "2020-05-11",
"jam_absen_masuk": "21:15:10",
"jam_absen_pulang": "21:15:10",
"durasi_absen": "00:00:00",
"status": "a",
"durasi_lembur": "00:00:00"
},
{
"tanggal_absen": "2020-05-12",
"jam_absen_masuk": "21:13:01",
"jam_absen_pulang": "21:13:01",
"durasi_absen": "00:00:00",
"status": "a",
"durasi_lembur": "00:00:00"
}
]
}
我的临时解决方案,我的情况。
使用格式time xx:xx:xx工作
enum TimeFormat { Jam, JamMenit, JamMenitDetik, Menit, MenitDetik, Detik }
String formatTimeTo(
String time, {
TimeFormat timeFormat,
}) {
String hour = time.replaceAll(":", "").substring(0, 2);
String minute = time.replaceAll(":", "").substring(2, 4);
String second = time.replaceAll(":", "").substring(4, 6);
String resultHour, resultMinute, resultSecond;
if (hour.startsWith("0")) {
resultHour = hour.substring(1);
} else {
resultHour = hour;
}
if (minute.startsWith("0")) {
resultMinute = minute.substring(1);
} else {
resultMinute = minute;
}
if (second.startsWith("0")) {
resultSecond = second.substring(1);
} else {
resultSecond = second;
}
switch (timeFormat) {
case TimeFormat.Jam:
return "$resultHour Jam ";
break;
case TimeFormat.JamMenit:
return "$resultHour Jam $resultMinute Menit";
break;
case TimeFormat.JamMenitDetik:
return "$resultHour Jam $resultMinute Menit $resultSecond Detik";
break;
case TimeFormat.Menit:
return "$resultMinute Menit";
break;
case TimeFormat.MenitDetik:
return "$resultMinute Menit $resultSecond Detik";
break;
case TimeFormat.Detik:
return "$resultSecond Detik";
break;
default:
return "$resultHour Jam $resultMinute Menit $resultSecond Detik";
}
}
print(globalF.formatTimeTo("08:05:55", timeFormat: TimeFormat.JamMenitDetik));
//8 Jam 5 Menit 55 Detik