TF-4385 Fix spam banner show it once per day

This commit is contained in:
dab246
2026-03-25 15:43:33 +07:00
committed by Dat H. Pham
parent cee2dd9d14
commit e4107c7363
11 changed files with 54 additions and 44 deletions
@@ -10,7 +10,7 @@ import 'package:tmail_ui_user/features/mailbox_dashboard/domain/model/unread_spa
abstract class SpamReportDataSource {
Future<void> storeLastTimeDismissedSpamReported(DateTime lastTimeDismissedSpamReported);
Future<DateTime> getLastTimeDismissedSpamReported();
Future<int> getLastTimeDismissedSpamReportedMilliseconds();
Future<void> deleteLastTimeDismissedSpamReported();
@@ -28,7 +28,7 @@ class HiveSpamReportDataSourceImpl extends SpamReportDataSource {
}
@override
Future<DateTime> getLastTimeDismissedSpamReported() {
Future<int> getLastTimeDismissedSpamReportedMilliseconds() {
throw UnimplementedError();
}
@@ -21,12 +21,10 @@ class LocalSpamReportDataSourceImpl extends SpamReportDataSource {
);
@override
Future<DateTime> getLastTimeDismissedSpamReported() async {
Future<int> getLastTimeDismissedSpamReportedMilliseconds() async {
return Future.sync(() async {
final spamReportConfig = await _preferencesSettingManager.getSpamReportConfig();
return DateTime.fromMillisecondsSinceEpoch(
spamReportConfig.lastTimeDismissedMilliseconds,
);
return spamReportConfig.lastTimeDismissedMilliseconds;
}).catchError(_exceptionThrower.throwException);
}
@@ -12,8 +12,8 @@ class SpamReportRepositoryImpl extends SpamReportRepository {
SpamReportRepositoryImpl(this.mapDataSource);
@override
Future<DateTime> getLastTimeDismissedSpamReported() async {
return await mapDataSource[DataSourceType.local]!.getLastTimeDismissedSpamReported();
Future<int> getLastTimeDismissedSpamReportedMilliseconds() async {
return await mapDataSource[DataSourceType.local]!.getLastTimeDismissedSpamReportedMilliseconds();
}
@override