feature/update_task #125
|
@ -39,7 +39,7 @@ public interface TaskData {
|
|||
* タスクを更新する
|
||||
* @param task タスク
|
||||
*/
|
||||
void updateTask(TaskItemModel task);
|
||||
CompletableFuture<Void> updateTask(TaskItemModel task);
|
||||
|
||||
// 子側
|
||||
|
||||
|
|
|
@ -9,6 +9,8 @@ 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.retrofit.model.converter.TaskModelConverter;
|
||||
import one.nem.kidshift.data.retrofit.model.task.TaskResponse;
|
||||
import one.nem.kidshift.data.room.utils.CacheWrapper;
|
||||
import one.nem.kidshift.model.callback.TaskItemModelCallback;
|
||||
import one.nem.kidshift.model.tasks.TaskItemModel;
|
||||
|
@ -100,8 +102,23 @@ public class TaskDataImpl implements TaskData {
|
|||
}
|
||||
|
||||
@Override
|
||||
public void updateTask(TaskItemModel task) {
|
||||
|
||||
public CompletableFuture<Void> updateTask(TaskItemModel task) {
|
||||
return CompletableFuture.supplyAsync(() -> {
|
||||
Call<TaskResponse> call = kidShiftApiService.updateTask(TaskModelConverter.taskItemModelToTaskAddRequest(task), task.getId());
|
||||
try {
|
||||
Response<TaskResponse> response = call.execute();
|
||||
if (response.isSuccessful()) {
|
||||
logger.info("タスク更新成功(taskId: " + task.getId() + ")");
|
||||
// return response.body();
|
||||
return null;
|
||||
} else {
|
||||
logger.error("タスク更新失敗: HTTP Status: " + response.code());
|
||||
throw new RuntimeException("HTTP Status: " + response.code());
|
||||
}
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -3,6 +3,7 @@ package one.nem.kidshift.data.retrofit.model.converter;
|
|||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import one.nem.kidshift.data.retrofit.model.task.TaskAddRequest;
|
||||
import one.nem.kidshift.data.retrofit.model.task.TaskListResponse;
|
||||
import one.nem.kidshift.data.retrofit.model.task.TaskResponse;
|
||||
import one.nem.kidshift.model.tasks.TaskItemModel;
|
||||
|
@ -47,4 +48,13 @@ public class TaskModelConverter {
|
|||
public static List<TaskItemModel> taskListResponseToTaskItemModelList(TaskListResponse taskListResponse) {
|
||||
return taskListResponse.getList().stream().map(TaskModelConverter::taskResponseToTaskItemModel).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
public static TaskAddRequest taskItemModelToTaskAddRequest(TaskItemModel taskItemModel) {
|
||||
TaskAddRequest request = new TaskAddRequest();
|
||||
request.setName(taskItemModel.getName());
|
||||
request.setReward(taskItemModel.getReward());
|
||||
request.setBgColor(taskItemModel.getBgColor());
|
||||
request.setIconEmoji(taskItemModel.getIconEmoji());
|
||||
return request;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user