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.Module;
import dagger.hilt.InstallIn; import dagger.hilt.InstallIn;
import dagger.hilt.components.SingletonComponent; 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.KidShiftDatabase;
import one.nem.kidshift.data.room.entity.ChildCacheEntity; import one.nem.kidshift.data.room.entity.ChildCacheEntity;
import one.nem.kidshift.data.room.entity.TaskCacheEntity; import one.nem.kidshift.data.room.entity.TaskCacheEntity;
import one.nem.kidshift.data.room.entity.TaskChildLinkageEntity; 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.ChildCacheConverter;
import one.nem.kidshift.data.room.utils.converter.HistoryCacheConverter;
import one.nem.kidshift.data.room.utils.converter.TaskCacheConverter; import one.nem.kidshift.data.room.utils.converter.TaskCacheConverter;
import one.nem.kidshift.model.ChildModel; import one.nem.kidshift.model.ChildModel;
import one.nem.kidshift.model.HistoryModel;
import one.nem.kidshift.model.tasks.TaskItemModel; import one.nem.kidshift.model.tasks.TaskItemModel;
import one.nem.kidshift.utils.KSLogger; import one.nem.kidshift.utils.KSLogger;
import one.nem.kidshift.utils.factory.KSLoggerFactory; 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に挿入する * 子供リストをDBに挿入する
* @param childList 子供リスト * @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);
});
}
} }