From 3f8ecfc4e9f30edc2591a057b20e04a6378236da Mon Sep 17 00:00:00 2001 From: rca Date: Wed, 3 Jul 2024 23:08:10 +0900 Subject: [PATCH 1/4] =?UTF-8?q?=E5=BC=95=E6=95=B0=E5=9E=8B=E5=A4=89?= =?UTF-8?q?=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/src/main/java/one/nem/kidshift/data/TaskData.java | 2 +- data/src/main/java/one/nem/kidshift/data/impl/TaskDataImpl.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/data/src/main/java/one/nem/kidshift/data/TaskData.java b/data/src/main/java/one/nem/kidshift/data/TaskData.java index f872d40..5a81663 100644 --- a/data/src/main/java/one/nem/kidshift/data/TaskData.java +++ b/data/src/main/java/one/nem/kidshift/data/TaskData.java @@ -55,5 +55,5 @@ public interface TaskData { * @param taskId タスクID * @param childId 子ID */ - void recordTaskCompletion(String taskId, String childId); + CompletableFuture recordTaskCompletion(String taskId, String childId); } diff --git a/data/src/main/java/one/nem/kidshift/data/impl/TaskDataImpl.java b/data/src/main/java/one/nem/kidshift/data/impl/TaskDataImpl.java index 38b1792..4deb6a6 100644 --- a/data/src/main/java/one/nem/kidshift/data/impl/TaskDataImpl.java +++ b/data/src/main/java/one/nem/kidshift/data/impl/TaskDataImpl.java @@ -105,7 +105,7 @@ public class TaskDataImpl implements TaskData { } @Override - public void recordTaskCompletion(String taskId, String childId) { + public CompletableFuture recordTaskCompletion(String taskId, String childId) { } } From 8fc8f098d3bd57a19eb3f4463fcf968391abb637 Mon Sep 17 00:00:00 2001 From: rca Date: Wed, 3 Jul 2024 23:10:31 +0900 Subject: [PATCH 2/4] =?UTF-8?q?=E3=82=AF=E3=82=A8=E3=83=AA=E3=83=91?= =?UTF-8?q?=E3=83=A9=E3=83=A1=E3=83=BC=E3=82=BF=E3=81=ABchildId=E8=BF=BD?= =?UTF-8?q?=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../one/nem/kidshift/data/retrofit/KidShiftApiService.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/data/src/main/java/one/nem/kidshift/data/retrofit/KidShiftApiService.java b/data/src/main/java/one/nem/kidshift/data/retrofit/KidShiftApiService.java index 942ca7f..a0fd57f 100644 --- a/data/src/main/java/one/nem/kidshift/data/retrofit/KidShiftApiService.java +++ b/data/src/main/java/one/nem/kidshift/data/retrofit/KidShiftApiService.java @@ -20,6 +20,7 @@ import retrofit2.http.Headers; import retrofit2.http.POST; import retrofit2.http.PUT; import retrofit2.http.Path; +import retrofit2.http.Query; public interface KidShiftApiService { @@ -96,7 +97,7 @@ public interface KidShiftApiService { */ @POST("/parent/task/{id}/complete") @Headers(AuthorizationInterceptor.HEADER_PLACEHOLDER) - Call completeTask(@Path("id") String id); // TODO-rca: OK responseをパース + Call completeTask(@Path("id") String id, @Query("childId") String childId); // Child APIs From 1c620869df11c78cc6831707198d2662755d808e Mon Sep 17 00:00:00 2001 From: rca Date: Wed, 3 Jul 2024 23:12:33 +0900 Subject: [PATCH 3/4] =?UTF-8?q?=E5=AE=9F=E8=A3=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../nem/kidshift/data/impl/TaskDataImpl.java | 22 +++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/data/src/main/java/one/nem/kidshift/data/impl/TaskDataImpl.java b/data/src/main/java/one/nem/kidshift/data/impl/TaskDataImpl.java index 4deb6a6..ed5a58d 100644 --- a/data/src/main/java/one/nem/kidshift/data/impl/TaskDataImpl.java +++ b/data/src/main/java/one/nem/kidshift/data/impl/TaskDataImpl.java @@ -8,21 +8,26 @@ import javax.inject.Inject; import one.nem.kidshift.data.KSActions; import one.nem.kidshift.data.TaskData; +import one.nem.kidshift.data.retrofit.KidShiftApiService; import one.nem.kidshift.data.room.utils.CacheWrapper; import one.nem.kidshift.model.callback.TaskItemModelCallback; import one.nem.kidshift.model.tasks.TaskItemModel; import one.nem.kidshift.utils.KSLogger; import one.nem.kidshift.utils.factory.KSLoggerFactory; +import retrofit2.Call; +import retrofit2.Response; public class TaskDataImpl implements TaskData { private final KSActions ksActions; + private final KidShiftApiService kidShiftApiService; private final CacheWrapper cacheWrapper; private final KSLogger logger; @Inject - public TaskDataImpl(KSActions ksActions, CacheWrapper cacheWrapper, KSLoggerFactory loggerFactory) { + public TaskDataImpl(KSActions ksActions, KidShiftApiService kidShiftApiService, CacheWrapper cacheWrapper, KSLoggerFactory loggerFactory) { this.ksActions = ksActions; + this.kidShiftApiService = kidShiftApiService; this.cacheWrapper = cacheWrapper; this.logger = loggerFactory.create("TaskDataImpl"); } @@ -106,6 +111,19 @@ public class TaskDataImpl implements TaskData { @Override public CompletableFuture recordTaskCompletion(String taskId, String childId) { - + return CompletableFuture.supplyAsync(() -> { + Call call = kidShiftApiService.completeTask(taskId, childId); + try { + Response response = call.execute(); + if (response.isSuccessful()) { + logger.info("タスク完了処理成功(taskId: " + taskId + ", childId: " + childId + ")"); + return null; + } else { + throw new RuntimeException("HTTP Status: " + response.code()); + } + } catch (Exception e) { + throw new RuntimeException(e); + } + }); } } From 3821b7fd1dc0fdb3ca25dc94151c7ed1a8d78f26 Mon Sep 17 00:00:00 2001 From: rca Date: Wed, 3 Jul 2024 23:12:52 +0900 Subject: [PATCH 4/4] =?UTF-8?q?=E5=AE=9F=E8=A3=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/src/main/java/one/nem/kidshift/data/impl/TaskDataImpl.java | 1 + 1 file changed, 1 insertion(+) diff --git a/data/src/main/java/one/nem/kidshift/data/impl/TaskDataImpl.java b/data/src/main/java/one/nem/kidshift/data/impl/TaskDataImpl.java index ed5a58d..e711e1c 100644 --- a/data/src/main/java/one/nem/kidshift/data/impl/TaskDataImpl.java +++ b/data/src/main/java/one/nem/kidshift/data/impl/TaskDataImpl.java @@ -119,6 +119,7 @@ public class TaskDataImpl implements TaskData { logger.info("タスク完了処理成功(taskId: " + taskId + ", childId: " + childId + ")"); return null; } else { + logger.error("タスク完了処理失敗: HTTP Status: " + response.code()); throw new RuntimeException("HTTP Status: " + response.code()); } } catch (Exception e) {