diff --git a/data/src/main/java/one/nem/kidshift/data/impl/ChildDataImpl.java b/data/src/main/java/one/nem/kidshift/data/impl/ChildDataImpl.java index 0f97cf9..d1a9861 100644 --- a/data/src/main/java/one/nem/kidshift/data/impl/ChildDataImpl.java +++ b/data/src/main/java/one/nem/kidshift/data/impl/ChildDataImpl.java @@ -36,7 +36,21 @@ public class ChildDataImpl implements ChildData { @Override public CompletableFuture getChild(String childId) { - return null; + return CompletableFuture.supplyAsync(() -> { + Call call = kidShiftApiService.getChild(childId); + try { + Response response = call.execute(); + if (response.isSuccessful()) { + assert response.body() != null; + logger.info("子供取得成功(childId: " + response.body().getId() + ")"); + return ChildModelConverter.childResponseToChildModel(response.body()); + } else { + throw new RuntimeException("HTTP Status: " + response.code()); + } + } catch (Exception e) { + throw new RuntimeException(e); + } + }); } @Override 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 705c160..3a9bd22 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 @@ -137,6 +137,15 @@ public interface KidShiftApiService { @Headers(AuthorizationInterceptor.HEADER_PLACEHOLDER) Call getChildList(); + /** + * 子供情報取得 + * @param id 子供ID + * @return ChildResponse + */ + @GET("/child/{id}") + @Headers(AuthorizationInterceptor.HEADER_PLACEHOLDER) + Call getChild(@Path("id") String id); + /** * 子供追加 * @param request ChildAddRequest