From e4280f049032c44eea4017063432a33c700d7aea Mon Sep 17 00:00:00 2001 From: Borgia Leiva Date: Thu, 12 Feb 2026 11:33:37 +0100 Subject: [PATCH] Added more necessary endpoints to ApiService.kt --- app/build.gradle.kts | 5 +--- .../network/ApiService.kt | 25 +++++++++++++++++++ app/src/main/res/values/arrays.xml | 10 ++++++++ 3 files changed, 36 insertions(+), 4 deletions(-) create mode 100644 app/src/main/res/values/arrays.xml diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 5d7a6cb..72bf4c7 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -4,9 +4,7 @@ plugins { android { namespace = "com.campusaula.edbole.kanban_clone_android" - compileSdk { - version = release(36) - } + compileSdk = 36 defaultConfig { applicationId = "com.campusaula.edbole.KanbanCloneAndroid" @@ -44,7 +42,6 @@ dependencies { implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.2") implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.6.2") - // Networking: OkHttp + Retrofit implementation("com.squareup.okhttp3:okhttp:4.11.0") implementation("com.squareup.okhttp3:logging-interceptor:4.11.0") implementation("com.squareup.retrofit2:retrofit:2.9.0") diff --git a/app/src/main/java/com/campusaula/edbole/kanban_clone_android/network/ApiService.kt b/app/src/main/java/com/campusaula/edbole/kanban_clone_android/network/ApiService.kt index 6d9184b..296b6a1 100644 --- a/app/src/main/java/com/campusaula/edbole/kanban_clone_android/network/ApiService.kt +++ b/app/src/main/java/com/campusaula/edbole/kanban_clone_android/network/ApiService.kt @@ -40,6 +40,18 @@ interface ApiService { @GET("projects/{project_id}/users/") suspend fun getProjectUsers(@Path("project_id") projectId: Int): Response> + @POST("projects/{project_id}/users/") + suspend fun addProjectCollaborator( + @Path("project_id") projectId: Int, + @Body email: Map + ): Response + + @DELETE("projects/{project_id}/users/{user_id}/") + suspend fun removeProjectCollaborator( + @Path("project_id") projectId: Int, + @Path("user_id") userId: Int + ): Response + @POST("projects/") suspend fun createProject(@Body projectCreate: ProjectCreate): Response @@ -57,4 +69,17 @@ interface ApiService { @POST("projects/{project_id}/tasks/") suspend fun createTask(@Path("project_id") projectId: Int, @Body taskBase: TaskBase): Response + @PUT("projects/{project_id}/tasks/{task_id}/") + suspend fun updateProjectTask( + @Path("project_id") projectId: Int, + @Path("task_id") taskId: Int, + @Body taskUpdate: TaskUpdate + ): Response + + @DELETE("projects/{project_id}/tasks/{task_id}/") + suspend fun deleteProjectTask( + @Path("project_id") projectId: Int, + @Path("task_id") taskId: Int + ): Response + } diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml new file mode 100644 index 0000000..c0dda4b --- /dev/null +++ b/app/src/main/res/values/arrays.xml @@ -0,0 +1,10 @@ + + + + Pending + In progress + Completed + Stashed + Failed + +