We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
2 parents ada41dd + a7a6d49 commit cf3d580Copy full SHA for cf3d580
34 files changed
app/src/main/java/com/kuit/ourmenu/data/di/ServiceModule.kt
@@ -5,6 +5,7 @@ import com.kuit.ourmenu.data.service.CacheService
5
import com.kuit.ourmenu.data.service.DummyService
6
import com.kuit.ourmenu.data.service.MapService
7
import com.kuit.ourmenu.data.service.MenuFolderService
8
+import com.kuit.ourmenu.data.service.MenuInfoService
9
import com.kuit.ourmenu.data.service.UserService
10
import dagger.Module
11
import dagger.Provides
@@ -47,4 +48,8 @@ object ServiceModule {
47
48
fun provideMenuFolderService(retrofit: Retrofit): MenuFolderService =
49
retrofit.create(MenuFolderService::class.java)
50
51
+ @Provides
52
+ @Singleton
53
+ fun provideMenuInfoService(retrofit: Retrofit): MenuInfoService =
54
+ retrofit.create(MenuInfoService::class.java)
55
}
…enuFolder/response/MenuFolderIconType.kt …ta/model/base/type/MenuFolderIconType.ktapp/src/main/java/com/kuit/ourmenu/data/model/menuFolder/response/MenuFolderIconType.kt renamed to app/src/main/java/com/kuit/ourmenu/data/model/base/type/MenuFolderIconType.kt
@@ -1,4 +1,4 @@
1
-package com.kuit.ourmenu.data.model.menuFolder.response
+package com.kuit.ourmenu.data.model.base.type
2
3
enum class MenuFolderIconType {
4
ANGRY,
…del/menuFolder/response/SortOrderType.kt …nu/data/model/base/type/SortOrderType.ktapp/src/main/java/com/kuit/ourmenu/data/model/menuFolder/response/SortOrderType.kt renamed to app/src/main/java/com/kuit/ourmenu/data/model/base/type/SortOrderType.kt
@@ -1,6 +1,7 @@
-enum class SortOrderType(val apiValue: String, val displayName: String) {
+enum class
+SortOrderType(val apiValue: String, val displayName: String) {
TITLE_ASC("TITLE_ASC", "이름순"),
// TITLE_DESC("TITLE_DESC", "이름역순"),
// CREATED_AT_ASC("CREATED_AT_ASC", "최신순"),
…ata/model/menuFolder/response/TagType.kt …/ourmenu/data/model/base/type/TagType.ktapp/src/main/java/com/kuit/ourmenu/data/model/menuFolder/response/TagType.kt renamed to app/src/main/java/com/kuit/ourmenu/data/model/base/type/TagType.kt
enum class TagType(val apiValue: String, val displayName: String) {
KOREA("KOREA", "한식"),
app/src/main/java/com/kuit/ourmenu/data/model/menuFolder/response/MenuFolderDetailResponse.kt
@@ -4,10 +4,19 @@ import kotlinx.serialization.Serializable
@Serializable
data class MenuFolderDetailResponse(
- override val menuId: Int,
- override val menuTitle: String,
- override val storeTitle: String,
- override val storeAddress: String,
- override val menuPrice: Int,
12
- override val menuImgUrl: String
+ val menuFolderId: Int = 0,
+ val menuFolderTitle: String = "",
+ val menuFolderImgUrl: String = "",
+ val menuFolderIconImgUrl: String = "",
+ val menus: List<MenuFolderDetailMenus> = emptyList()
+)
13
+
14
+@Serializable
15
+data class MenuFolderDetailMenus(
16
+ override val menuId: Int = 0,
17
+ override val menuTitle: String = "",
18
+ override val storeTitle: String = "",
19
+ override val storeAddress: String = "",
20
+ override val menuPrice: Int = 0,
21
+ override val menuImgUrl: String = ""
22
) : MenuFolderMenuItem
app/src/main/java/com/kuit/ourmenu/data/model/menuFolder/response/MenuFolderResponse.kt
@@ -12,8 +12,8 @@ data class MenuFolderResponse(
data class MenuFolderList(
val menuFolderId: Int,
val menuFolderTitle: String,
- val menuFolderUrl: String,
- val menuFolderIcon: String,
+ val menuFolderImgUrl: String,
+ val menuFolderIconImgUrl: String,
val menuIds: List<Int>,
val index: Int,
)
app/src/main/java/com/kuit/ourmenu/data/model/menuinfo/response/MenuInfoResponse.kt
@@ -0,0 +1,23 @@
+package com.kuit.ourmenu.data.model.menuinfo.response
+import kotlinx.serialization.Serializable
+data class MenuInfoResponse(
+ val menuId: Int = 0,
+ val menuTitle: String = "",
+ val menuPrice: Int = 0,
+ val menuPinImgUrl: String = "",
+ val storeTitle: String = "",
+ val storeAddress: String = "",
+ val tagImgUrls: List<String> = emptyList(),
+ val menuImgUrls: List<String> = emptyList(),
+ val menuFolders: List<MenuFolder> = emptyList(),
+data class MenuFolder(
23
app/src/main/java/com/kuit/ourmenu/data/repository/MenuFolderRepository.kt
@@ -13,7 +13,7 @@ class MenuFolderRepository @Inject constructor(
menuFolderService.getMenuFolders().handleBaseResponse().getOrThrow()
- suspend fun getMenuFolderDetails(
+ suspend fun getMenuFolderDetail(
menuFolderId: Int,
sortOrder: String,
) = runCatching {
app/src/main/java/com/kuit/ourmenu/data/repository/MenuInfoRepository.kt
@@ -0,0 +1,17 @@
+package com.kuit.ourmenu.data.repository
+import com.kuit.ourmenu.data.model.base.handleBaseResponse
+import javax.inject.Inject
+import javax.inject.Singleton
+@Singleton
+class MenuInfoRepository @Inject constructor(
+ private val menuInfoService: MenuInfoService
+) {
+ suspend fun getMenuInfo(
+ menuId: Int
+ ) = runCatching {
+ menuInfoService.getMenuInfo(menuId).handleBaseResponse().getOrThrow()
+ }
+}
app/src/main/java/com/kuit/ourmenu/data/service/MenuFolderService.kt
@@ -16,7 +16,7 @@ interface MenuFolderService {
suspend fun getMenuFolderDetails(
@Path("menuFolderId") menuFolderId: Int,
@Query("sortOrder") sortOrder: String,
- ): BaseResponse<List<MenuFolderDetailResponse>>
+ ): BaseResponse<MenuFolderDetailResponse>
@GET("api/menus")
suspend fun getMenuFolderAll(
0 commit comments