Browse Source

refactor(时间格式化): 使用Duration重构时间格式化方法并确保秒数非负

修改了两个视图中的_formatHms方法,使用Duration类进行时间计算,同时添加了对负数的处理,确保时间显示始终有效
newdev_shunjiawei
lxm 10 months ago
parent
commit
75c295c101
  1. 8
      lib/modules/meeting/views/meeting_home_view.dart
  2. 8
      lib/modules/translation/middleware/views/translation_middleware_view.dart

8
lib/modules/meeting/views/meeting_home_view.dart

@ -513,9 +513,11 @@ class _MeetingHomeViewState extends State<MeetingHomeView>
}
String _formatHms(int seconds) {
int h = seconds ~/ 3600;
int m = (seconds % 3600) ~/ 60;
int s = seconds % 60;
final sec = seconds < 0 ? 0 : seconds; // 确保秒数非负
final d = Duration(seconds: sec);
final h = d.inHours;
final m = d.inMinutes.remainder(60);
final s = d.inSeconds.remainder(60);
String twoDigits(int n) => n.toString().padLeft(2, '0');
return '${twoDigits(h)}:${twoDigits(m)}:${twoDigits(s)}';
}

8
lib/modules/translation/middleware/views/translation_middleware_view.dart

@ -212,9 +212,11 @@ class TranslationMiddlewareView
}
String _formatHms(int seconds) {
int h = seconds ~/ 3600;
int m = (seconds % 3600) ~/ 60;
int s = seconds % 60;
final sec = seconds < 0 ? 0 : seconds; // 确保秒数非负
final d = Duration(seconds: sec);
final h = d.inHours;
final m = d.inMinutes.remainder(60);
final s = d.inSeconds.remainder(60);
String twoDigits(int n) => n.toString().padLeft(2, '0');
return '${twoDigits(h)}:${twoDigits(m)}:${twoDigits(s)}';
}

Loading…
Cancel
Save