refactor: formatDuration & filterLostRecordList
This commit is contained in:
22
src/utils/format-duration.ts
Normal file
22
src/utils/format-duration.ts
Normal file
@@ -0,0 +1,22 @@
|
||||
import dayjs from 'dayjs';
|
||||
import duration from 'dayjs/plugin/duration';
|
||||
|
||||
dayjs.extend(duration);
|
||||
|
||||
export const formatDuration = (startTime?: string, endTime?: string) => {
|
||||
if (!startTime || !endTime) return '';
|
||||
const start = dayjs(startTime);
|
||||
const end = dayjs(endTime);
|
||||
const diffMillis = end.diff(start, 'second');
|
||||
const duration = dayjs.duration(Math.abs(diffMillis), 'second');
|
||||
const d = Math.floor(duration.asDays());
|
||||
const h = duration.hours();
|
||||
const m = duration.minutes();
|
||||
const s = duration.seconds();
|
||||
let result = '';
|
||||
if (d > 0) result += `${d}天`;
|
||||
if (h > 0) result += `${h}小时`;
|
||||
if (m > 0) result += `${m}分钟`;
|
||||
if (s > 0) result += `${s}秒`;
|
||||
return diffMillis < 0 ? `-${result}` : result;
|
||||
};
|
||||
Reference in New Issue
Block a user