getHistory実装

This commit is contained in:
ろむねこ 2024-07-08 11:11:14 +09:00
parent 0465f54aca
commit 0b49ee9b09
Signed by: Fujimatsu
GPG Key ID: FA1F39A1BA37D168

View File

@ -9,13 +9,17 @@ import javax.inject.Inject;
import dagger.Module;
import dagger.hilt.InstallIn;
import dagger.hilt.components.SingletonComponent;
import one.nem.kidshift.data.retrofit.model.converter.HistoryModelConverter;
import one.nem.kidshift.data.room.KidShiftDatabase;
import one.nem.kidshift.data.room.entity.ChildCacheEntity;
import one.nem.kidshift.data.room.entity.TaskCacheEntity;
import one.nem.kidshift.data.room.entity.TaskChildLinkageEntity;
import one.nem.kidshift.data.room.model.HistoryWithTask;
import one.nem.kidshift.data.room.utils.converter.ChildCacheConverter;
import one.nem.kidshift.data.room.utils.converter.HistoryCacheConverter;
import one.nem.kidshift.data.room.utils.converter.TaskCacheConverter;
import one.nem.kidshift.model.ChildModel;
import one.nem.kidshift.model.HistoryModel;
import one.nem.kidshift.model.tasks.TaskItemModel;
import one.nem.kidshift.utils.KSLogger;
import one.nem.kidshift.utils.factory.KSLoggerFactory;
@ -65,6 +69,12 @@ public class CacheWrapper {
});
}
public CompletableFuture<Void> updateHistoryCache(List<HistoryModel> historyList) {
return CompletableFuture.runAsync(() -> {
kidShiftDatabase.historyCacheDao().insertHistoryList(HistoryCacheConverter.historyModelListToHistoryCacheEntityList(historyList));
});
}
/**
* 子供リストをDBに挿入する
* @param childList 子供リスト
@ -109,5 +119,12 @@ public class CacheWrapper {
});
}
public CompletableFuture<List<HistoryModel>> getHistoryList(String childId) {
return CompletableFuture.supplyAsync(() -> {
List<HistoryWithTask> result = kidShiftDatabase.historyCacheDao().getHistoryWithTasksByChildId(childId);
return HistoryCacheConverter.historyWithTaskListToHistoryModelList(result);
});
}
}