From 9cef0cf984ec70f7c9816b8b0024f2cd1bdde242 Mon Sep 17 00:00:00 2001 From: Minsang Date: Wed, 1 Dec 2021 00:16:55 +0900 Subject: [PATCH 1/9] =?UTF-8?q?refactor:=20#332=20RequestUseCases=20?= =?UTF-8?q?=EB=82=B4=20=ED=94=84=EB=A1=9C=ED=86=A0=EC=BD=9C=20=EB=B6=84?= =?UTF-8?q?=EB=A6=AC=20=EC=9E=91=EC=97=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BBus/BBus.xcodeproj/project.pbxproj | 50 ++++++++++++++++++- .../BBusAPIUseCases.swift | 0 .../BBusAPIUseCases/createFavoriteItem.swift | 23 +++++++++ .../BBusAPIUseCases/deleteFavoriteItem.swift | 23 +++++++++ .../getArrInfoByRouteList.swift | 26 ++++++++++ .../BBusAPIUseCases/getBusPosByRtid.swift | 26 ++++++++++ .../BBusAPIUseCases/getBusPosByVehId.swift | 26 ++++++++++ .../BBusAPIUseCases/getFavoriteItemList.swift | 23 +++++++++ .../BBusAPIUseCases/getRouteList.swift | 23 +++++++++ .../BBusAPIUseCases/getStationByUidItem.swift | 26 ++++++++++ .../BBusAPIUseCases/getStationList.swift | 23 +++++++++ .../getStationsByRouteList.swift | 26 ++++++++++ .../CreateFavoriteItemUsable.swift | 14 ------ .../DeleteFavoriteItemUsable.swift | 14 ------ .../GetArrInfoByRouteListUsable.swift | 17 ------- .../GetBusPosByRtidUsable.swift | 17 ------- .../GetBusPosByVehIdUsable.swift | 17 ------- .../GetFavoriteItemListUsable.swift | 14 ------ .../RequestUseCases/GetRouteListUsable.swift | 14 ------ .../GetStationByUidItemUsable.swift | 17 ------- .../GetStationListUsable.swift | 14 ------ .../GetStationsByRouteListUsable.swift | 17 ------- 22 files changed, 294 insertions(+), 156 deletions(-) rename BBus/BBus/Global/Network/{ => BBusAPIUseCases}/BBusAPIUseCases.swift (100%) create mode 100644 BBus/BBus/Global/Network/BBusAPIUseCases/createFavoriteItem.swift create mode 100644 BBus/BBus/Global/Network/BBusAPIUseCases/deleteFavoriteItem.swift create mode 100644 BBus/BBus/Global/Network/BBusAPIUseCases/getArrInfoByRouteList.swift create mode 100644 BBus/BBus/Global/Network/BBusAPIUseCases/getBusPosByRtid.swift create mode 100644 BBus/BBus/Global/Network/BBusAPIUseCases/getBusPosByVehId.swift create mode 100644 BBus/BBus/Global/Network/BBusAPIUseCases/getFavoriteItemList.swift create mode 100644 BBus/BBus/Global/Network/BBusAPIUseCases/getRouteList.swift create mode 100644 BBus/BBus/Global/Network/BBusAPIUseCases/getStationByUidItem.swift create mode 100644 BBus/BBus/Global/Network/BBusAPIUseCases/getStationList.swift create mode 100644 BBus/BBus/Global/Network/BBusAPIUseCases/getStationsByRouteList.swift diff --git a/BBus/BBus.xcodeproj/project.pbxproj b/BBus/BBus.xcodeproj/project.pbxproj index 18b31800..e19aaa95 100644 --- a/BBus/BBus.xcodeproj/project.pbxproj +++ b/BBus/BBus.xcodeproj/project.pbxproj @@ -147,6 +147,16 @@ 87038A90273C11630078EAE3 /* GetStationsByRouteListFetcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87038A8F273C11630078EAE3 /* GetStationsByRouteListFetcher.swift */; }; 87038A92273C12320078EAE3 /* GetBusPosByRtidFetcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87038A91273C12320078EAE3 /* GetBusPosByRtidFetcher.swift */; }; 87038A94273C12E20078EAE3 /* GetStationByUidItemFetcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87038A93273C12E20078EAE3 /* GetStationByUidItemFetcher.swift */; }; + 87115F172756758800601770 /* getArrInfoByRouteList.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F162756758800601770 /* getArrInfoByRouteList.swift */; }; + 87115F19275675B900601770 /* getStationsByRouteList.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F18275675B900601770 /* getStationsByRouteList.swift */; }; + 87115F1B275675E200601770 /* getBusPosByRtid.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F1A275675E200601770 /* getBusPosByRtid.swift */; }; + 87115F1D2756761200601770 /* getStationByUidItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F1C2756761200601770 /* getStationByUidItem.swift */; }; + 87115F1F2756766900601770 /* getBusPosByVehId.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F1E2756766900601770 /* getBusPosByVehId.swift */; }; + 87115F212756768900601770 /* getRouteList.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F202756768900601770 /* getRouteList.swift */; }; + 87115F232756769D00601770 /* getStationList.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F222756769D00601770 /* getStationList.swift */; }; + 87115F25275676B000601770 /* getFavoriteItemList.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F24275676B000601770 /* getFavoriteItemList.swift */; }; + 87115F27275676C500601770 /* createFavoriteItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F26275676C500601770 /* createFavoriteItem.swift */; }; + 87115F29275676E900601770 /* deleteFavoriteItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F28275676E900601770 /* deleteFavoriteItem.swift */; }; 87285F5527461DB300CA3BA9 /* UINavigationControllerExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87285F5427461DB300CA3BA9 /* UINavigationControllerExtension.swift */; }; 873578832732545D00CC8ECC /* CustomNavigationBar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 873578822732545D00CC8ECC /* CustomNavigationBar.swift */; }; 87359B8D27311BF100F461A7 /* BusTagView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87359B8C27311BF100F461A7 /* BusTagView.swift */; }; @@ -398,6 +408,16 @@ 87038A8F273C11630078EAE3 /* GetStationsByRouteListFetcher.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GetStationsByRouteListFetcher.swift; sourceTree = ""; }; 87038A91273C12320078EAE3 /* GetBusPosByRtidFetcher.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GetBusPosByRtidFetcher.swift; sourceTree = ""; }; 87038A93273C12E20078EAE3 /* GetStationByUidItemFetcher.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GetStationByUidItemFetcher.swift; sourceTree = ""; }; + 87115F162756758800601770 /* getArrInfoByRouteList.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = getArrInfoByRouteList.swift; sourceTree = ""; }; + 87115F18275675B900601770 /* getStationsByRouteList.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = getStationsByRouteList.swift; sourceTree = ""; }; + 87115F1A275675E200601770 /* getBusPosByRtid.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = getBusPosByRtid.swift; sourceTree = ""; }; + 87115F1C2756761200601770 /* getStationByUidItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = getStationByUidItem.swift; sourceTree = ""; }; + 87115F1E2756766900601770 /* getBusPosByVehId.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = getBusPosByVehId.swift; sourceTree = ""; }; + 87115F202756768900601770 /* getRouteList.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = getRouteList.swift; sourceTree = ""; }; + 87115F222756769D00601770 /* getStationList.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = getStationList.swift; sourceTree = ""; }; + 87115F24275676B000601770 /* getFavoriteItemList.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = getFavoriteItemList.swift; sourceTree = ""; }; + 87115F26275676C500601770 /* createFavoriteItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = createFavoriteItem.swift; sourceTree = ""; }; + 87115F28275676E900601770 /* deleteFavoriteItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = deleteFavoriteItem.swift; sourceTree = ""; }; 87285F5427461DB300CA3BA9 /* UINavigationControllerExtension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UINavigationControllerExtension.swift; sourceTree = ""; }; 873578822732545D00CC8ECC /* CustomNavigationBar.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CustomNavigationBar.swift; sourceTree = ""; }; 87359B8C27311BF100F461A7 /* BusTagView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusTagView.swift; sourceTree = ""; }; @@ -1103,7 +1123,7 @@ 4A5182A32754E3CA001EA530 /* TokenManager.swift */, 4A5182A527550988001EA530 /* RequestFactory.swift */, 4A38E20627463FF7003A9D10 /* BBusAPIError.swift */, - 87038A81273B90A50078EAE3 /* BBusAPIUseCases.swift */, + 87115F152756747400601770 /* BBusAPIUseCases */, 4A5182AD27551E0D001EA530 /* RequestUseCases */, 87038A86273B94CD0078EAE3 /* Fetcher */, 4A06AEC2273E51AE0027222D /* AccessKey.xcconfig */, @@ -1131,6 +1151,24 @@ path = Fetcher; sourceTree = ""; }; + 87115F152756747400601770 /* BBusAPIUseCases */ = { + isa = PBXGroup; + children = ( + 87038A81273B90A50078EAE3 /* BBusAPIUseCases.swift */, + 87115F162756758800601770 /* getArrInfoByRouteList.swift */, + 87115F18275675B900601770 /* getStationsByRouteList.swift */, + 87115F1A275675E200601770 /* getBusPosByRtid.swift */, + 87115F1C2756761200601770 /* getStationByUidItem.swift */, + 87115F1E2756766900601770 /* getBusPosByVehId.swift */, + 87115F202756768900601770 /* getRouteList.swift */, + 87115F222756769D00601770 /* getStationList.swift */, + 87115F24275676B000601770 /* getFavoriteItemList.swift */, + 87115F26275676C500601770 /* createFavoriteItem.swift */, + 87115F28275676E900601770 /* deleteFavoriteItem.swift */, + ); + path = BBusAPIUseCases; + sourceTree = ""; + }; 873D6394273039C400E79069 /* Coordinator */ = { isa = PBXGroup; children = ( @@ -1726,6 +1764,7 @@ 87038A88273B950B0078EAE3 /* GetArrInfoByRouteListFetcher.swift in Sources */, 87038A82273B90A50078EAE3 /* BBusAPIUseCases.swift in Sources */, 4ACA51E3272FCD9600EC0531 /* HomeModel.swift in Sources */, + 87115F172756758800601770 /* getArrInfoByRouteList.swift in Sources */, 4ACA51E9272FCDAE00EC0531 /* HomeView.swift in Sources */, 4ADB29D4274E18BB00554A4E /* GetOffAlarmController.swift in Sources */, 4A06AEC8274159D10027222D /* FavoriteItemDTO.swift in Sources */, @@ -1739,8 +1778,11 @@ 4ACA5225272FCEBF00EC0531 /* AlarmSettingView.swift in Sources */, 87038A92273C12320078EAE3 /* GetBusPosByRtidFetcher.swift in Sources */, 4A510039275517F800754B36 /* RefreshableView.swift in Sources */, + 87115F1D2756761200601770 /* getStationByUidItem.swift in Sources */, 4A094D072743E12C00428F55 /* NoneInfoTableViewCell.swift in Sources */, 4ACA51E7272FCDA600EC0531 /* HomeViewModel.swift in Sources */, + 87115F19275675B900601770 /* getStationsByRouteList.swift in Sources */, + 87115F1B275675E200601770 /* getBusPosByRtid.swift in Sources */, 4A1A22DD2732801700476861 /* StationCoordinator.swift in Sources */, 4ACA5237272FCF2C00EC0531 /* BusRouteViewController.swift in Sources */, 873D639827303A6800E79069 /* AppCoordinator.swift in Sources */, @@ -1759,6 +1801,7 @@ 4A5182BB27551F28001EA530 /* GetStationListUsable.swift in Sources */, 4A992C49273124AF0006FB8C /* FavoriteCollectionViewCell.swift in Sources */, 4ADB29C7274B7A7F00554A4E /* GetOnAlarmStatus.swift in Sources */, + 87115F27275676C500601770 /* createFavoriteItem.swift in Sources */, 4ACC26B4274F669800173A32 /* BusSectionKeys.swift in Sources */, 4A917DF227462E36002489FE /* EmptyFavoriteNoticeView.swift in Sources */, 04AC7D1B2733E7270095CD4E /* AlarmSettingButton.swift in Sources */, @@ -1788,6 +1831,7 @@ 4A1A22E12732CE7900476861 /* SearchResultCollectionViewCell.swift in Sources */, 87EB52AE2733A6C6000D5492 /* GetOnStatusCell.swift in Sources */, 04DC47FB27552FE5003380D9 /* StationCalculateUseCase.swift in Sources */, + 87115F29275676E900601770 /* deleteFavoriteItem.swift in Sources */, 4A06AEE92743DAB20027222D /* NotificationNameExtension.swift in Sources */, 4ADB29BB274B6C8300554A4E /* BusPosByVehicleIdDTO.swift in Sources */, 4ACC26B8274F6BD300173A32 /* BusArriveInfos.swift in Sources */, @@ -1802,6 +1846,7 @@ 4ACA522D272FCEDB00EC0531 /* MovingStatusAPIUseCase.swift in Sources */, 4AA294AF273C0E8D008E5497 /* GetRouteListFetcher.swift in Sources */, 4A04682C2732ECAA008D87CE /* KeyboardAccessoryView.swift in Sources */, + 87115F1F2756766900601770 /* getBusPosByVehId.swift in Sources */, 4A5182A627550988001EA530 /* RequestFactory.swift in Sources */, 4ACA5209272FCE5A00EC0531 /* BusRouteUseCase.swift in Sources */, 4A5100372755106A00754B36 /* HomeCalculateUseCase.swift in Sources */, @@ -1818,11 +1863,14 @@ 0451EDB42755BBBD00031A16 /* SearchCalculateUseCase.swift in Sources */, 4A917DF427463666002489FE /* EmptySearchResultNoticeView.swift in Sources */, 4A5182BD27551F40001EA530 /* GetFavoriteItemListUsable.swift in Sources */, + 87115F25275676B000601770 /* getFavoriteItemList.swift in Sources */, 4ADB29D1274CAF0100554A4E /* AlarmStartResult.swift in Sources */, 4A5182B127551E84001EA530 /* GetStationsByRouteListUsable.swift in Sources */, 4A5182AC275516A4001EA530 /* PersistencetFetchable.swift in Sources */, 87A5556E2728116400A9B5E3 /* SceneDelegate.swift in Sources */, 04C6D6692734B18A00D41678 /* MovingStatusTableViewCell.swift in Sources */, + 87115F232756769D00601770 /* getStationList.swift in Sources */, + 87115F212756768900601770 /* getRouteList.swift in Sources */, 87359B8D27311BF100F461A7 /* BusTagView.swift in Sources */, 4A3B6C502755DF2400BBC498 /* AlarmCenter.swift in Sources */, 4A17CED72733A754007B1646 /* SimpleCollectionHeaderView.swift in Sources */, diff --git a/BBus/BBus/Global/Network/BBusAPIUseCases.swift b/BBus/BBus/Global/Network/BBusAPIUseCases/BBusAPIUseCases.swift similarity index 100% rename from BBus/BBus/Global/Network/BBusAPIUseCases.swift rename to BBus/BBus/Global/Network/BBusAPIUseCases/BBusAPIUseCases.swift diff --git a/BBus/BBus/Global/Network/BBusAPIUseCases/createFavoriteItem.swift b/BBus/BBus/Global/Network/BBusAPIUseCases/createFavoriteItem.swift new file mode 100644 index 00000000..07326428 --- /dev/null +++ b/BBus/BBus/Global/Network/BBusAPIUseCases/createFavoriteItem.swift @@ -0,0 +1,23 @@ +// +// createFavoriteItem.swift +// BBus +// +// Created by Kang Minsang on 2021/12/01. +// + +import Foundation +import Combine + +extension BBusAPIUseCases: CreateFavoriteItemUsable { + func createFavoriteItem(param: FavoriteItemDTO) -> AnyPublisher { + let fetcher: CreateFavoriteItemFetchable = PersistenceCreateFavoriteItemFetcher(persistenceStorage: self.persistenceStorage) + return fetcher + .fetch(param: param) + .tryCatch({ error -> AnyPublisher in + return fetcher + .fetch(param: param) + }) + .retry(TokenManager.maxTokenCount) + .eraseToAnyPublisher() + } +} diff --git a/BBus/BBus/Global/Network/BBusAPIUseCases/deleteFavoriteItem.swift b/BBus/BBus/Global/Network/BBusAPIUseCases/deleteFavoriteItem.swift new file mode 100644 index 00000000..2f0d4de1 --- /dev/null +++ b/BBus/BBus/Global/Network/BBusAPIUseCases/deleteFavoriteItem.swift @@ -0,0 +1,23 @@ +// +// deleteFavoriteItem.swift +// BBus +// +// Created by Kang Minsang on 2021/12/01. +// + +import Foundation +import Combine + +extension BBusAPIUseCases: DeleteFavoriteItemUsable { + func deleteFavoriteItem(param: FavoriteItemDTO) -> AnyPublisher { + let fetcher: DeleteFavoriteItemFetchable = PersistenceDeleteFavoriteItemFetcher(persistenceStorage: self.persistenceStorage) + return fetcher + .fetch(param: param) + .tryCatch({ error -> AnyPublisher in + return fetcher + .fetch(param: param) + }) + .retry(TokenManager.maxTokenCount) + .eraseToAnyPublisher() + } +} diff --git a/BBus/BBus/Global/Network/BBusAPIUseCases/getArrInfoByRouteList.swift b/BBus/BBus/Global/Network/BBusAPIUseCases/getArrInfoByRouteList.swift new file mode 100644 index 00000000..d5c3c0bc --- /dev/null +++ b/BBus/BBus/Global/Network/BBusAPIUseCases/getArrInfoByRouteList.swift @@ -0,0 +1,26 @@ +// +// getArrInfoByRouteList.swift +// BBus +// +// Created by Kang Minsang on 2021/12/01. +// + +import Foundation +import Combine + +extension BBusAPIUseCases: GetArrInfoByRouteListUsable { + func getArrInfoByRouteList(stId: String, busRouteId: String, ord: String) -> AnyPublisher { + let param = ["stId": stId, "busRouteId": busRouteId, "ord": ord, "resultType": "json"] + let fetcher: GetArrInfoByRouteListFetchable = ServiceGetArrInfoByRouteListFetcher(networkService: self.networkService, + tokenManager: self.tokenManageType.init(), + requestFactory: self.requestFactory) + return fetcher + .fetch(param: param) + .tryCatch({ error -> AnyPublisher in + return fetcher + .fetch(param: param) + }) + .retry(TokenManager.maxTokenCount) + .eraseToAnyPublisher() + } +} diff --git a/BBus/BBus/Global/Network/BBusAPIUseCases/getBusPosByRtid.swift b/BBus/BBus/Global/Network/BBusAPIUseCases/getBusPosByRtid.swift new file mode 100644 index 00000000..7429a4d1 --- /dev/null +++ b/BBus/BBus/Global/Network/BBusAPIUseCases/getBusPosByRtid.swift @@ -0,0 +1,26 @@ +// +// getBusPosByRtid.swift +// BBus +// +// Created by Kang Minsang on 2021/12/01. +// + +import Foundation +import Combine + +extension BBusAPIUseCases: GetBusPosByRtidUsable { + func getBusPosByRtid(busRoutedId: String) -> AnyPublisher { + let param = ["busRouteId": busRoutedId, "resultType": "json"] + let fetcher: GetBusPosByRtidFetchable = ServiceGetBusPosByRtidFetcher(networkService: self.networkService, + tokenManager: TokenManager(), + requestFactory: self.requestFactory) + return fetcher + .fetch(param: param) + .tryCatch({ error -> AnyPublisher in + return fetcher + .fetch(param: param) + }) + .retry(TokenManager.maxTokenCount) + .eraseToAnyPublisher() + } +} diff --git a/BBus/BBus/Global/Network/BBusAPIUseCases/getBusPosByVehId.swift b/BBus/BBus/Global/Network/BBusAPIUseCases/getBusPosByVehId.swift new file mode 100644 index 00000000..6516d4e5 --- /dev/null +++ b/BBus/BBus/Global/Network/BBusAPIUseCases/getBusPosByVehId.swift @@ -0,0 +1,26 @@ +// +// getBusPosByVehId.swift +// BBus +// +// Created by Kang Minsang on 2021/12/01. +// + +import Foundation +import Combine + +extension BBusAPIUseCases: GetBusPosByVehIdUsable { + func getBusPosByVehId(_ vehId: String) -> AnyPublisher { + let param = ["vehId": vehId, "resultType": "json"] + let fetcher: GetBusPosByVehIdFetchable = ServiceGetBusPosByVehIdFetcher(networkService: self.networkService, + tokenManager: TokenManager(), + requestFactory: self.requestFactory) + return fetcher + .fetch(param: param) + .tryCatch({ error -> AnyPublisher in + return fetcher + .fetch(param: param) + }) + .retry(TokenManager.maxTokenCount) + .eraseToAnyPublisher() + } +} diff --git a/BBus/BBus/Global/Network/BBusAPIUseCases/getFavoriteItemList.swift b/BBus/BBus/Global/Network/BBusAPIUseCases/getFavoriteItemList.swift new file mode 100644 index 00000000..a28331e7 --- /dev/null +++ b/BBus/BBus/Global/Network/BBusAPIUseCases/getFavoriteItemList.swift @@ -0,0 +1,23 @@ +// +// getFavoriteItemList.swift +// BBus +// +// Created by Kang Minsang on 2021/12/01. +// + +import Foundation +import Combine + +extension BBusAPIUseCases: GetFavoriteItemListUsable { + func getFavoriteItemList() -> AnyPublisher { + let fetcher: GetFavoriteItemListFetchable = PersistenceGetFavoriteItemListFetcher(persistenceStorage: self.persistenceStorage) + return fetcher + .fetch() + .tryCatch({ error -> AnyPublisher in + return fetcher + .fetch() + }) + .retry(TokenManager.maxTokenCount) + .eraseToAnyPublisher() + } +} diff --git a/BBus/BBus/Global/Network/BBusAPIUseCases/getRouteList.swift b/BBus/BBus/Global/Network/BBusAPIUseCases/getRouteList.swift new file mode 100644 index 00000000..5589667a --- /dev/null +++ b/BBus/BBus/Global/Network/BBusAPIUseCases/getRouteList.swift @@ -0,0 +1,23 @@ +// +// getRouteList.swift +// BBus +// +// Created by Kang Minsang on 2021/12/01. +// + +import Foundation +import Combine + +extension BBusAPIUseCases: GetRouteListUsable { + func getRouteList() -> AnyPublisher { + let fetcher: GetRouteListFetchable = PersistenceGetRouteListFetcher(persistenceStorage: self.persistenceStorage) + return fetcher + .fetch() + .tryCatch({ error -> AnyPublisher in + return fetcher + .fetch() + }) + .retry(TokenManager.maxTokenCount) + .eraseToAnyPublisher() + } +} diff --git a/BBus/BBus/Global/Network/BBusAPIUseCases/getStationByUidItem.swift b/BBus/BBus/Global/Network/BBusAPIUseCases/getStationByUidItem.swift new file mode 100644 index 00000000..b1056938 --- /dev/null +++ b/BBus/BBus/Global/Network/BBusAPIUseCases/getStationByUidItem.swift @@ -0,0 +1,26 @@ +// +// getStationByUidItem.swift +// BBus +// +// Created by Kang Minsang on 2021/12/01. +// + +import Foundation +import Combine + +extension BBusAPIUseCases: GetStationByUidItemUsable { + func getStationByUidItem(arsId: String) -> AnyPublisher { + let param = ["arsId": arsId, "resultType": "json"] + let fetcher: GetStationByUidItemFetchable = ServiceGetStationByUidItemFetcher(networkService: self.networkService, + tokenManager: TokenManager(), + requestFactory: self.requestFactory) + return fetcher + .fetch(param: param) + .tryCatch({ error -> AnyPublisher in + return fetcher + .fetch(param: param) + }) + .retry(TokenManager.maxTokenCount) + .eraseToAnyPublisher() + } +} diff --git a/BBus/BBus/Global/Network/BBusAPIUseCases/getStationList.swift b/BBus/BBus/Global/Network/BBusAPIUseCases/getStationList.swift new file mode 100644 index 00000000..a9a28af4 --- /dev/null +++ b/BBus/BBus/Global/Network/BBusAPIUseCases/getStationList.swift @@ -0,0 +1,23 @@ +// +// getStationList.swift +// BBus +// +// Created by Kang Minsang on 2021/12/01. +// + +import Foundation +import Combine + +extension BBusAPIUseCases: GetStationListUsable { + func getStationList() -> AnyPublisher { + let fetcher: GetStationListFetchable = PersistenceGetStationListFetcher(persistenceStorage: self.persistenceStorage) + return fetcher + .fetch() + .tryCatch({ error -> AnyPublisher in + return fetcher + .fetch() + }) + .retry(TokenManager.maxTokenCount) + .eraseToAnyPublisher() + } +} diff --git a/BBus/BBus/Global/Network/BBusAPIUseCases/getStationsByRouteList.swift b/BBus/BBus/Global/Network/BBusAPIUseCases/getStationsByRouteList.swift new file mode 100644 index 00000000..f1e20501 --- /dev/null +++ b/BBus/BBus/Global/Network/BBusAPIUseCases/getStationsByRouteList.swift @@ -0,0 +1,26 @@ +// +// getStationsByRouteList.swift +// BBus +// +// Created by Kang Minsang on 2021/12/01. +// + +import Foundation +import Combine + +extension BBusAPIUseCases: GetStationsByRouteListUsable { + func getStationsByRouteList(busRoutedId: String) -> AnyPublisher { + let param = ["busRouteId": busRoutedId, "resultType": "json"] + let fetcher: GetStationsByRouteListFetchable = ServiceGetStationsByRouteListFetcher(networkService: self.networkService, + tokenManager: TokenManager(), + requestFactory: self.requestFactory) + return fetcher + .fetch(param: param) + .tryCatch({ error -> AnyPublisher in + return fetcher + .fetch(param: param) + }) + .retry(TokenManager.maxTokenCount) + .eraseToAnyPublisher() + } +} diff --git a/BBus/BBus/Global/Network/RequestUseCases/CreateFavoriteItemUsable.swift b/BBus/BBus/Global/Network/RequestUseCases/CreateFavoriteItemUsable.swift index 34e97da4..a518e6b2 100644 --- a/BBus/BBus/Global/Network/RequestUseCases/CreateFavoriteItemUsable.swift +++ b/BBus/BBus/Global/Network/RequestUseCases/CreateFavoriteItemUsable.swift @@ -11,17 +11,3 @@ import Combine protocol CreateFavoriteItemUsable { func createFavoriteItem(param: FavoriteItemDTO) -> AnyPublisher } - -extension BBusAPIUseCases: CreateFavoriteItemUsable { - func createFavoriteItem(param: FavoriteItemDTO) -> AnyPublisher { - let fetcher: CreateFavoriteItemFetchable = PersistenceCreateFavoriteItemFetcher(persistenceStorage: self.persistenceStorage) - return fetcher - .fetch(param: param) - .tryCatch({ error -> AnyPublisher in - return fetcher - .fetch(param: param) - }) - .retry(TokenManager.maxTokenCount) - .eraseToAnyPublisher() - } -} diff --git a/BBus/BBus/Global/Network/RequestUseCases/DeleteFavoriteItemUsable.swift b/BBus/BBus/Global/Network/RequestUseCases/DeleteFavoriteItemUsable.swift index c730831e..3d4fdb24 100644 --- a/BBus/BBus/Global/Network/RequestUseCases/DeleteFavoriteItemUsable.swift +++ b/BBus/BBus/Global/Network/RequestUseCases/DeleteFavoriteItemUsable.swift @@ -11,17 +11,3 @@ import Combine protocol DeleteFavoriteItemUsable { func deleteFavoriteItem(param: FavoriteItemDTO) -> AnyPublisher } - -extension BBusAPIUseCases: DeleteFavoriteItemUsable { - func deleteFavoriteItem(param: FavoriteItemDTO) -> AnyPublisher { - let fetcher: DeleteFavoriteItemFetchable = PersistenceDeleteFavoriteItemFetcher(persistenceStorage: self.persistenceStorage) - return fetcher - .fetch(param: param) - .tryCatch({ error -> AnyPublisher in - return fetcher - .fetch(param: param) - }) - .retry(TokenManager.maxTokenCount) - .eraseToAnyPublisher() - } -} diff --git a/BBus/BBus/Global/Network/RequestUseCases/GetArrInfoByRouteListUsable.swift b/BBus/BBus/Global/Network/RequestUseCases/GetArrInfoByRouteListUsable.swift index e1e72718..d5a866ee 100644 --- a/BBus/BBus/Global/Network/RequestUseCases/GetArrInfoByRouteListUsable.swift +++ b/BBus/BBus/Global/Network/RequestUseCases/GetArrInfoByRouteListUsable.swift @@ -11,20 +11,3 @@ import Combine protocol GetArrInfoByRouteListUsable { func getArrInfoByRouteList(stId: String, busRouteId: String, ord: String) -> AnyPublisher } - -extension BBusAPIUseCases: GetArrInfoByRouteListUsable { - func getArrInfoByRouteList(stId: String, busRouteId: String, ord: String) -> AnyPublisher { - let param = ["stId": stId, "busRouteId": busRouteId, "ord": ord, "resultType": "json"] - let fetcher: GetArrInfoByRouteListFetchable = ServiceGetArrInfoByRouteListFetcher(networkService: self.networkService, - tokenManager: self.tokenManageType.init(), - requestFactory: self.requestFactory) - return fetcher - .fetch(param: param) - .tryCatch({ error -> AnyPublisher in - return fetcher - .fetch(param: param) - }) - .retry(TokenManager.maxTokenCount) - .eraseToAnyPublisher() - } -} diff --git a/BBus/BBus/Global/Network/RequestUseCases/GetBusPosByRtidUsable.swift b/BBus/BBus/Global/Network/RequestUseCases/GetBusPosByRtidUsable.swift index aa1b263f..516197de 100644 --- a/BBus/BBus/Global/Network/RequestUseCases/GetBusPosByRtidUsable.swift +++ b/BBus/BBus/Global/Network/RequestUseCases/GetBusPosByRtidUsable.swift @@ -11,20 +11,3 @@ import Combine protocol GetBusPosByRtidUsable { func getBusPosByRtid(busRoutedId: String) -> AnyPublisher } - -extension BBusAPIUseCases: GetBusPosByRtidUsable { - func getBusPosByRtid(busRoutedId: String) -> AnyPublisher { - let param = ["busRouteId": busRoutedId, "resultType": "json"] - let fetcher: GetBusPosByRtidFetchable = ServiceGetBusPosByRtidFetcher(networkService: self.networkService, - tokenManager: TokenManager(), - requestFactory: self.requestFactory) - return fetcher - .fetch(param: param) - .tryCatch({ error -> AnyPublisher in - return fetcher - .fetch(param: param) - }) - .retry(TokenManager.maxTokenCount) - .eraseToAnyPublisher() - } -} diff --git a/BBus/BBus/Global/Network/RequestUseCases/GetBusPosByVehIdUsable.swift b/BBus/BBus/Global/Network/RequestUseCases/GetBusPosByVehIdUsable.swift index 9f769b04..3f3bdb26 100644 --- a/BBus/BBus/Global/Network/RequestUseCases/GetBusPosByVehIdUsable.swift +++ b/BBus/BBus/Global/Network/RequestUseCases/GetBusPosByVehIdUsable.swift @@ -11,20 +11,3 @@ import Combine protocol GetBusPosByVehIdUsable { func getBusPosByVehId(_ vehId: String) -> AnyPublisher } - -extension BBusAPIUseCases: GetBusPosByVehIdUsable { - func getBusPosByVehId(_ vehId: String) -> AnyPublisher { - let param = ["vehId": vehId, "resultType": "json"] - let fetcher: GetBusPosByVehIdFetchable = ServiceGetBusPosByVehIdFetcher(networkService: self.networkService, - tokenManager: TokenManager(), - requestFactory: self.requestFactory) - return fetcher - .fetch(param: param) - .tryCatch({ error -> AnyPublisher in - return fetcher - .fetch(param: param) - }) - .retry(TokenManager.maxTokenCount) - .eraseToAnyPublisher() - } -} diff --git a/BBus/BBus/Global/Network/RequestUseCases/GetFavoriteItemListUsable.swift b/BBus/BBus/Global/Network/RequestUseCases/GetFavoriteItemListUsable.swift index 379344ae..bb483397 100644 --- a/BBus/BBus/Global/Network/RequestUseCases/GetFavoriteItemListUsable.swift +++ b/BBus/BBus/Global/Network/RequestUseCases/GetFavoriteItemListUsable.swift @@ -11,17 +11,3 @@ import Combine protocol GetFavoriteItemListUsable { func getFavoriteItemList() -> AnyPublisher } - -extension BBusAPIUseCases: GetFavoriteItemListUsable { - func getFavoriteItemList() -> AnyPublisher { - let fetcher: GetFavoriteItemListFetchable = PersistenceGetFavoriteItemListFetcher(persistenceStorage: self.persistenceStorage) - return fetcher - .fetch() - .tryCatch({ error -> AnyPublisher in - return fetcher - .fetch() - }) - .retry(TokenManager.maxTokenCount) - .eraseToAnyPublisher() - } -} diff --git a/BBus/BBus/Global/Network/RequestUseCases/GetRouteListUsable.swift b/BBus/BBus/Global/Network/RequestUseCases/GetRouteListUsable.swift index 3c3b7e3d..e5c0e26e 100644 --- a/BBus/BBus/Global/Network/RequestUseCases/GetRouteListUsable.swift +++ b/BBus/BBus/Global/Network/RequestUseCases/GetRouteListUsable.swift @@ -11,17 +11,3 @@ import Combine protocol GetRouteListUsable { func getRouteList() -> AnyPublisher } - -extension BBusAPIUseCases: GetRouteListUsable { - func getRouteList() -> AnyPublisher { - let fetcher: GetRouteListFetchable = PersistenceGetRouteListFetcher(persistenceStorage: self.persistenceStorage) - return fetcher - .fetch() - .tryCatch({ error -> AnyPublisher in - return fetcher - .fetch() - }) - .retry(TokenManager.maxTokenCount) - .eraseToAnyPublisher() - } -} diff --git a/BBus/BBus/Global/Network/RequestUseCases/GetStationByUidItemUsable.swift b/BBus/BBus/Global/Network/RequestUseCases/GetStationByUidItemUsable.swift index c4e393c9..eaeff42e 100644 --- a/BBus/BBus/Global/Network/RequestUseCases/GetStationByUidItemUsable.swift +++ b/BBus/BBus/Global/Network/RequestUseCases/GetStationByUidItemUsable.swift @@ -11,20 +11,3 @@ import Combine protocol GetStationByUidItemUsable { func getStationByUidItem(arsId: String) -> AnyPublisher } - -extension BBusAPIUseCases: GetStationByUidItemUsable { - func getStationByUidItem(arsId: String) -> AnyPublisher { - let param = ["arsId": arsId, "resultType": "json"] - let fetcher: GetStationByUidItemFetchable = ServiceGetStationByUidItemFetcher(networkService: self.networkService, - tokenManager: TokenManager(), - requestFactory: self.requestFactory) - return fetcher - .fetch(param: param) - .tryCatch({ error -> AnyPublisher in - return fetcher - .fetch(param: param) - }) - .retry(TokenManager.maxTokenCount) - .eraseToAnyPublisher() - } -} diff --git a/BBus/BBus/Global/Network/RequestUseCases/GetStationListUsable.swift b/BBus/BBus/Global/Network/RequestUseCases/GetStationListUsable.swift index ce0ad65a..249fba69 100644 --- a/BBus/BBus/Global/Network/RequestUseCases/GetStationListUsable.swift +++ b/BBus/BBus/Global/Network/RequestUseCases/GetStationListUsable.swift @@ -11,17 +11,3 @@ import Combine protocol GetStationListUsable { func getStationList() -> AnyPublisher } - -extension BBusAPIUseCases: GetStationListUsable { - func getStationList() -> AnyPublisher { - let fetcher: GetStationListFetchable = PersistenceGetStationListFetcher(persistenceStorage: self.persistenceStorage) - return fetcher - .fetch() - .tryCatch({ error -> AnyPublisher in - return fetcher - .fetch() - }) - .retry(TokenManager.maxTokenCount) - .eraseToAnyPublisher() - } -} diff --git a/BBus/BBus/Global/Network/RequestUseCases/GetStationsByRouteListUsable.swift b/BBus/BBus/Global/Network/RequestUseCases/GetStationsByRouteListUsable.swift index f4af327e..5769097f 100644 --- a/BBus/BBus/Global/Network/RequestUseCases/GetStationsByRouteListUsable.swift +++ b/BBus/BBus/Global/Network/RequestUseCases/GetStationsByRouteListUsable.swift @@ -11,20 +11,3 @@ import Combine protocol GetStationsByRouteListUsable { func getStationsByRouteList(busRoutedId: String) -> AnyPublisher } - -extension BBusAPIUseCases: GetStationsByRouteListUsable { - func getStationsByRouteList(busRoutedId: String) -> AnyPublisher { - let param = ["busRouteId": busRoutedId, "resultType": "json"] - let fetcher: GetStationsByRouteListFetchable = ServiceGetStationsByRouteListFetcher(networkService: self.networkService, - tokenManager: TokenManager(), - requestFactory: self.requestFactory) - return fetcher - .fetch(param: param) - .tryCatch({ error -> AnyPublisher in - return fetcher - .fetch(param: param) - }) - .retry(TokenManager.maxTokenCount) - .eraseToAnyPublisher() - } -} From 6faa93d8d2aff0068fcf73f966463b6ffe976d11 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S057=5F=EC=B5=9C=EC=88=98=EC=A0=95?= Date: Wed, 1 Dec 2021 00:09:50 +0900 Subject: [PATCH 2/9] =?UTF-8?q?refactor:=20#332=20SearchUseCase=20?= =?UTF-8?q?=ED=94=84=EB=A1=9C=ED=86=A0=EC=BD=9C=20=EB=B6=84=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BBus/BBus.xcodeproj/project.pbxproj | 8 ++++++++ .../Search/UseCase/SearchAPIUsable.swift | 14 ++++++++++++++ .../Search/UseCase/SearchAPIUseCase.swift | 5 ----- .../Search/UseCase/SearchCalculatable.swift | 13 +++++++++++++ .../Search/UseCase/SearchCalculateUseCase.swift | 5 ----- 5 files changed, 35 insertions(+), 10 deletions(-) create mode 100644 BBus/BBus/Foreground/Search/UseCase/SearchAPIUsable.swift create mode 100644 BBus/BBus/Foreground/Search/UseCase/SearchCalculatable.swift diff --git a/BBus/BBus.xcodeproj/project.pbxproj b/BBus/BBus.xcodeproj/project.pbxproj index e19aaa95..6e62bdac 100644 --- a/BBus/BBus.xcodeproj/project.pbxproj +++ b/BBus/BBus.xcodeproj/project.pbxproj @@ -11,6 +11,8 @@ 04045B812740F6DC0056A433 /* BusSearchResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04045B802740F6DC0056A433 /* BusSearchResult.swift */; }; 041A5A11273D2E1B00490075 /* StringExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 041A5A10273D2E1B00490075 /* StringExtension.swift */; }; 04214061273A5EBC00A15423 /* MovingStatusFoldUnfoldDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04214060273A5EBC00A15423 /* MovingStatusFoldUnfoldDelegate.swift */; }; + 04468427275675F1007E440A /* SearchAPIUsable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04468426275675F1007E440A /* SearchAPIUsable.swift */; }; + 044684292756760A007E440A /* SearchCalculatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 044684282756760A007E440A /* SearchCalculatable.swift */; }; 0451EDB42755BBBD00031A16 /* SearchCalculateUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0451EDB32755BBBD00031A16 /* SearchCalculateUseCase.swift */; }; 0476ABBB27310ED200F72DD1 /* BusRouteHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0476ABBA27310ED200F72DD1 /* BusRouteHeaderView.swift */; }; 0476ABBD27311C1600F72DD1 /* BusStationTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0476ABBC27311C1600F72DD1 /* BusStationTableViewCell.swift */; }; @@ -260,6 +262,8 @@ 04045B802740F6DC0056A433 /* BusSearchResult.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusSearchResult.swift; sourceTree = ""; }; 041A5A10273D2E1B00490075 /* StringExtension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StringExtension.swift; sourceTree = ""; }; 04214060273A5EBC00A15423 /* MovingStatusFoldUnfoldDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MovingStatusFoldUnfoldDelegate.swift; sourceTree = ""; }; + 04468426275675F1007E440A /* SearchAPIUsable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SearchAPIUsable.swift; sourceTree = ""; }; + 044684282756760A007E440A /* SearchCalculatable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SearchCalculatable.swift; sourceTree = ""; }; 0451EDB32755BBBD00031A16 /* SearchCalculateUseCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SearchCalculateUseCase.swift; sourceTree = ""; }; 0476ABBA27310ED200F72DD1 /* BusRouteHeaderView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusRouteHeaderView.swift; sourceTree = ""; }; 0476ABBC27311C1600F72DD1 /* BusStationTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusStationTableViewCell.swift; sourceTree = ""; }; @@ -778,6 +782,8 @@ 4ACA51EC272FCDD000EC0531 /* UseCase */ = { isa = PBXGroup; children = ( + 04468426275675F1007E440A /* SearchAPIUsable.swift */, + 044684282756760A007E440A /* SearchCalculatable.swift */, 4ACA51F0272FCDF200EC0531 /* SearchAPIUseCase.swift */, 0451EDB32755BBBD00031A16 /* SearchCalculateUseCase.swift */, ); @@ -1753,6 +1759,7 @@ 4ADB29CF274B890800554A4E /* BusApproachStatus.swift in Sources */, 0476ABBB27310ED200F72DD1 /* BusRouteHeaderView.swift in Sources */, 875F1AB22755BE08003F5BB1 /* AlarmSettingCalculateUseCase.swift in Sources */, + 04468427275675F1007E440A /* SearchAPIUsable.swift in Sources */, 4AA294B7273C1275008E5497 /* DeleteFavoriteItemFetchable.swift in Sources */, 4ACA51F5272FCE0200EC0531 /* SearchView.swift in Sources */, 04C6D66B2734BCAB00D41678 /* MovingStatusBusTagView.swift in Sources */, @@ -1787,6 +1794,7 @@ 4ACA5237272FCF2C00EC0531 /* BusRouteViewController.swift in Sources */, 873D639827303A6800E79069 /* AppCoordinator.swift in Sources */, 4ACA5217272FCE8E00EC0531 /* StationViewModel.swift in Sources */, + 044684292756760A007E440A /* SearchCalculatable.swift in Sources */, 4A38E20927464015003A9D10 /* PublisherExtension.swift in Sources */, 047C30FC273A04C20075EA14 /* BBusColor.swift in Sources */, 87038A94273C12E20078EAE3 /* GetStationByUidItemFetcher.swift in Sources */, diff --git a/BBus/BBus/Foreground/Search/UseCase/SearchAPIUsable.swift b/BBus/BBus/Foreground/Search/UseCase/SearchAPIUsable.swift new file mode 100644 index 00000000..86a295ae --- /dev/null +++ b/BBus/BBus/Foreground/Search/UseCase/SearchAPIUsable.swift @@ -0,0 +1,14 @@ +// +// SearchAPIUsable.swift +// BBus +// +// Created by 최수정 on 2021/12/01. +// + +import Foundation +import Combine + +protocol SearchAPIUsable: BaseUseCase { + func loadBusRouteList() -> AnyPublisher<[BusRouteDTO], Error> + func loadStationList() -> AnyPublisher<[StationDTO], Error> +} diff --git a/BBus/BBus/Foreground/Search/UseCase/SearchAPIUseCase.swift b/BBus/BBus/Foreground/Search/UseCase/SearchAPIUseCase.swift index 93d924c9..4878c1ab 100644 --- a/BBus/BBus/Foreground/Search/UseCase/SearchAPIUseCase.swift +++ b/BBus/BBus/Foreground/Search/UseCase/SearchAPIUseCase.swift @@ -8,11 +8,6 @@ import Foundation import Combine -protocol SearchAPIUsable: BaseUseCase { - func loadBusRouteList() -> AnyPublisher<[BusRouteDTO], Error> - func loadStationList() -> AnyPublisher<[StationDTO], Error> -} - final class SearchAPIUseCase: SearchAPIUsable { private let useCases: GetRouteListUsable & GetStationListUsable diff --git a/BBus/BBus/Foreground/Search/UseCase/SearchCalculatable.swift b/BBus/BBus/Foreground/Search/UseCase/SearchCalculatable.swift new file mode 100644 index 00000000..c0ad14f8 --- /dev/null +++ b/BBus/BBus/Foreground/Search/UseCase/SearchCalculatable.swift @@ -0,0 +1,13 @@ +// +// SearchCalculatable.swift +// BBus +// +// Created by 최수정 on 2021/12/01. +// + +import Foundation + +protocol SearchCalculatable { + func searchBus(by keyword: String, at routeList: [BusRouteDTO]) -> [BusSearchResult] + func searchStation(by keyword: String, at stationList: [StationDTO]) -> [StationSearchResult] +} diff --git a/BBus/BBus/Foreground/Search/UseCase/SearchCalculateUseCase.swift b/BBus/BBus/Foreground/Search/UseCase/SearchCalculateUseCase.swift index fb7bba2d..a86f3e0c 100644 --- a/BBus/BBus/Foreground/Search/UseCase/SearchCalculateUseCase.swift +++ b/BBus/BBus/Foreground/Search/UseCase/SearchCalculateUseCase.swift @@ -7,11 +7,6 @@ import Foundation -protocol SearchCalculatable { - func searchBus(by keyword: String, at routeList: [BusRouteDTO]) -> [BusSearchResult] - func searchStation(by keyword: String, at stationList: [StationDTO]) -> [StationSearchResult] -} - final class SearchCalculateUseCase: SearchCalculatable { func searchBus(by keyword: String, at routeList: [BusRouteDTO]) -> [BusSearchResult] { if keyword.isEmpty { From e1d5bacfaf1a350934497a5ca39d692091b4036e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S057=5F=EC=B5=9C=EC=88=98=EC=A0=95?= Date: Wed, 1 Dec 2021 00:11:17 +0900 Subject: [PATCH 3/9] =?UTF-8?q?refactor:=20#332=20HomeUseCase=20=ED=94=84?= =?UTF-8?q?=EB=A1=9C=ED=86=A0=EC=BD=9C=20=EB=B6=84=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BBus/BBus.xcodeproj/project.pbxproj | 8 ++++++++ .../Home/UseCase/HomeAPIUsable.swift | 18 ++++++++++++++++++ .../Home/UseCase/HomeAPIUseCase.swift | 9 --------- .../Home/UseCase/HomeCalculatable.swift | 14 ++++++++++++++ .../Home/UseCase/HomeCalculateUseCase.swift | 6 ------ 5 files changed, 40 insertions(+), 15 deletions(-) create mode 100644 BBus/BBus/Foreground/Home/UseCase/HomeAPIUsable.swift create mode 100644 BBus/BBus/Foreground/Home/UseCase/HomeCalculatable.swift diff --git a/BBus/BBus.xcodeproj/project.pbxproj b/BBus/BBus.xcodeproj/project.pbxproj index 6e62bdac..1ff91609 100644 --- a/BBus/BBus.xcodeproj/project.pbxproj +++ b/BBus/BBus.xcodeproj/project.pbxproj @@ -13,6 +13,8 @@ 04214061273A5EBC00A15423 /* MovingStatusFoldUnfoldDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04214060273A5EBC00A15423 /* MovingStatusFoldUnfoldDelegate.swift */; }; 04468427275675F1007E440A /* SearchAPIUsable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04468426275675F1007E440A /* SearchAPIUsable.swift */; }; 044684292756760A007E440A /* SearchCalculatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 044684282756760A007E440A /* SearchCalculatable.swift */; }; + 0446842B27567654007E440A /* HomeAPIUsable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0446842A27567654007E440A /* HomeAPIUsable.swift */; }; + 0446842D27567660007E440A /* HomeCalculatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0446842C27567660007E440A /* HomeCalculatable.swift */; }; 0451EDB42755BBBD00031A16 /* SearchCalculateUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0451EDB32755BBBD00031A16 /* SearchCalculateUseCase.swift */; }; 0476ABBB27310ED200F72DD1 /* BusRouteHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0476ABBA27310ED200F72DD1 /* BusRouteHeaderView.swift */; }; 0476ABBD27311C1600F72DD1 /* BusStationTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0476ABBC27311C1600F72DD1 /* BusStationTableViewCell.swift */; }; @@ -264,6 +266,8 @@ 04214060273A5EBC00A15423 /* MovingStatusFoldUnfoldDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MovingStatusFoldUnfoldDelegate.swift; sourceTree = ""; }; 04468426275675F1007E440A /* SearchAPIUsable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SearchAPIUsable.swift; sourceTree = ""; }; 044684282756760A007E440A /* SearchCalculatable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SearchCalculatable.swift; sourceTree = ""; }; + 0446842A27567654007E440A /* HomeAPIUsable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeAPIUsable.swift; sourceTree = ""; }; + 0446842C27567660007E440A /* HomeCalculatable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeCalculatable.swift; sourceTree = ""; }; 0451EDB32755BBBD00031A16 /* SearchCalculateUseCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SearchCalculateUseCase.swift; sourceTree = ""; }; 0476ABBA27310ED200F72DD1 /* BusRouteHeaderView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusRouteHeaderView.swift; sourceTree = ""; }; 0476ABBC27311C1600F72DD1 /* BusStationTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusStationTableViewCell.swift; sourceTree = ""; }; @@ -743,6 +747,8 @@ 4ACA51E0272FCD7100EC0531 /* UseCase */ = { isa = PBXGroup; children = ( + 0446842A27567654007E440A /* HomeAPIUsable.swift */, + 0446842C27567660007E440A /* HomeCalculatable.swift */, 4ACA51E4272FCD9C00EC0531 /* HomeAPIUseCase.swift */, 4A5100362755106A00754B36 /* HomeCalculateUseCase.swift */, ); @@ -1755,6 +1761,7 @@ 0476ABBD27311C1600F72DD1 /* BusStationTableViewCell.swift in Sources */, 4A38E20727463FF7003A9D10 /* BBusAPIError.swift in Sources */, 4A5182C127551F6D001EA530 /* DeleteFavoriteItemUsable.swift in Sources */, + 0446842D27567660007E440A /* HomeCalculatable.swift in Sources */, 87038A8C273B96DF0078EAE3 /* PersistenceStorage.swift in Sources */, 4ADB29CF274B890800554A4E /* BusApproachStatus.swift in Sources */, 0476ABBB27310ED200F72DD1 /* BusRouteHeaderView.swift in Sources */, @@ -1804,6 +1811,7 @@ 87A555702728116400A9B5E3 /* HomeViewController.swift in Sources */, 04214061273A5EBC00A15423 /* MovingStatusFoldUnfoldDelegate.swift in Sources */, 4A992C4727311F1C0006FB8C /* FavoriteCollectionHeaderView.swift in Sources */, + 0446842B27567654007E440A /* HomeAPIUsable.swift in Sources */, 4ADB29BD274B6E0B00554A4E /* GetBusPosByVehIdFetcher.swift in Sources */, 049375B7273BE08F0061ACDA /* BusPosByRtidDTO.swift in Sources */, 4A5182BB27551F28001EA530 /* GetStationListUsable.swift in Sources */, diff --git a/BBus/BBus/Foreground/Home/UseCase/HomeAPIUsable.swift b/BBus/BBus/Foreground/Home/UseCase/HomeAPIUsable.swift new file mode 100644 index 00000000..619c37d7 --- /dev/null +++ b/BBus/BBus/Foreground/Home/UseCase/HomeAPIUsable.swift @@ -0,0 +1,18 @@ +// +// HomeAPIUsable.swift +// BBus +// +// Created by 최수정 on 2021/12/01. +// + +import Foundation +import Combine + +protocol HomeAPIUsable: BaseUseCase { + typealias HomeUseCases = GetFavoriteItemListUsable & CreateFavoriteItemUsable & GetStationListUsable & GetRouteListUsable & GetArrInfoByRouteListUsable + + func fetchFavoriteData() -> AnyPublisher<[FavoriteItemDTO], Error> + func fetchBusRemainTime(favoriteItem: FavoriteItemDTO) -> AnyPublisher + func fetchStation() -> AnyPublisher<[StationDTO], Error> + func fetchBusRoute() -> AnyPublisher<[BusRouteDTO], Error> +} diff --git a/BBus/BBus/Foreground/Home/UseCase/HomeAPIUseCase.swift b/BBus/BBus/Foreground/Home/UseCase/HomeAPIUseCase.swift index 39444f21..f356856a 100644 --- a/BBus/BBus/Foreground/Home/UseCase/HomeAPIUseCase.swift +++ b/BBus/BBus/Foreground/Home/UseCase/HomeAPIUseCase.swift @@ -8,15 +8,6 @@ import Foundation import Combine -protocol HomeAPIUsable: BaseUseCase { - typealias HomeUseCases = GetFavoriteItemListUsable & CreateFavoriteItemUsable & GetStationListUsable & GetRouteListUsable & GetArrInfoByRouteListUsable - - func fetchFavoriteData() -> AnyPublisher<[FavoriteItemDTO], Error> - func fetchBusRemainTime(favoriteItem: FavoriteItemDTO) -> AnyPublisher - func fetchStation() -> AnyPublisher<[StationDTO], Error> - func fetchBusRoute() -> AnyPublisher<[BusRouteDTO], Error> -} - final class HomeAPIUseCase: HomeAPIUsable { private let useCases: HomeUseCases diff --git a/BBus/BBus/Foreground/Home/UseCase/HomeCalculatable.swift b/BBus/BBus/Foreground/Home/UseCase/HomeCalculatable.swift new file mode 100644 index 00000000..bbc8efc6 --- /dev/null +++ b/BBus/BBus/Foreground/Home/UseCase/HomeCalculatable.swift @@ -0,0 +1,14 @@ +// +// HomeCalculatable.swift +// BBus +// +// Created by 최수정 on 2021/12/01. +// + +import Foundation + +protocol HomeCalculateUsable: BaseUseCase { + func findStationName(in list: [StationDTO]?, by stationId: String) -> String? + func findBusName(in list: [BusRouteDTO]?, by busRouteId: String) -> String? + func findBusType(in list: [BusRouteDTO]?, by busName: String) -> RouteType? +} diff --git a/BBus/BBus/Foreground/Home/UseCase/HomeCalculateUseCase.swift b/BBus/BBus/Foreground/Home/UseCase/HomeCalculateUseCase.swift index d0f27d54..2c92bf6e 100644 --- a/BBus/BBus/Foreground/Home/UseCase/HomeCalculateUseCase.swift +++ b/BBus/BBus/Foreground/Home/UseCase/HomeCalculateUseCase.swift @@ -7,12 +7,6 @@ import Foundation -protocol HomeCalculateUsable: BaseUseCase { - func findStationName(in list: [StationDTO]?, by stationId: String) -> String? - func findBusName(in list: [BusRouteDTO]?, by busRouteId: String) -> String? - func findBusType(in list: [BusRouteDTO]?, by busName: String) -> RouteType? -} - struct HomeCalculateUseCase: HomeCalculateUsable { func findStationName(in list: [StationDTO]?, by stationId: String) -> String? { guard let stationId = Int(stationId), From 3c8f6f159cc70b795f9b53ab2901befabf2d70e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S057=5F=EC=B5=9C=EC=88=98=EC=A0=95?= Date: Wed, 1 Dec 2021 00:12:26 +0900 Subject: [PATCH 4/9] =?UTF-8?q?refactor:=20#332=20BusRouteUseCase=20?= =?UTF-8?q?=ED=94=84=EB=A1=9C=ED=86=A0=EC=BD=9C=20=EB=B6=84=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BBus/BBus.xcodeproj/project.pbxproj | 12 ++++++++---- .../BusRoute/UseCase/BusRouteAPIUsable.swift | 15 +++++++++++++++ ...outeUseCase.swift => BusRouteAPIUseCase.swift} | 6 ------ 3 files changed, 23 insertions(+), 10 deletions(-) create mode 100644 BBus/BBus/Foreground/BusRoute/UseCase/BusRouteAPIUsable.swift rename BBus/BBus/Foreground/BusRoute/UseCase/{BusRouteUseCase.swift => BusRouteAPIUseCase.swift} (84%) diff --git a/BBus/BBus.xcodeproj/project.pbxproj b/BBus/BBus.xcodeproj/project.pbxproj index 1ff91609..408a7050 100644 --- a/BBus/BBus.xcodeproj/project.pbxproj +++ b/BBus/BBus.xcodeproj/project.pbxproj @@ -15,6 +15,7 @@ 044684292756760A007E440A /* SearchCalculatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 044684282756760A007E440A /* SearchCalculatable.swift */; }; 0446842B27567654007E440A /* HomeAPIUsable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0446842A27567654007E440A /* HomeAPIUsable.swift */; }; 0446842D27567660007E440A /* HomeCalculatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0446842C27567660007E440A /* HomeCalculatable.swift */; }; + 0446842F275676B3007E440A /* BusRouteAPIUsable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0446842E275676B3007E440A /* BusRouteAPIUsable.swift */; }; 0451EDB42755BBBD00031A16 /* SearchCalculateUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0451EDB32755BBBD00031A16 /* SearchCalculateUseCase.swift */; }; 0476ABBB27310ED200F72DD1 /* BusRouteHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0476ABBA27310ED200F72DD1 /* BusRouteHeaderView.swift */; }; 0476ABBD27311C1600F72DD1 /* BusStationTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0476ABBC27311C1600F72DD1 /* BusStationTableViewCell.swift */; }; @@ -97,7 +98,7 @@ 4ACA51F1272FCDF200EC0531 /* SearchAPIUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4ACA51F0272FCDF200EC0531 /* SearchAPIUseCase.swift */; }; 4ACA51F3272FCDF900EC0531 /* SearchViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4ACA51F2272FCDF900EC0531 /* SearchViewModel.swift */; }; 4ACA51F5272FCE0200EC0531 /* SearchView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4ACA51F4272FCE0200EC0531 /* SearchView.swift */; }; - 4ACA5209272FCE5A00EC0531 /* BusRouteUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4ACA5208272FCE5A00EC0531 /* BusRouteUseCase.swift */; }; + 4ACA5209272FCE5A00EC0531 /* BusRouteAPIUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4ACA5208272FCE5A00EC0531 /* BusRouteAPIUseCase.swift */; }; 4ACA520B272FCE5F00EC0531 /* BusRouteViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4ACA520A272FCE5F00EC0531 /* BusRouteViewModel.swift */; }; 4ACA520D272FCE6500EC0531 /* BusRouteView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4ACA520C272FCE6500EC0531 /* BusRouteView.swift */; }; 4ACA5213272FCE8500EC0531 /* BusCongestion.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4ACA5212272FCE8500EC0531 /* BusCongestion.swift */; }; @@ -268,6 +269,7 @@ 044684282756760A007E440A /* SearchCalculatable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SearchCalculatable.swift; sourceTree = ""; }; 0446842A27567654007E440A /* HomeAPIUsable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeAPIUsable.swift; sourceTree = ""; }; 0446842C27567660007E440A /* HomeCalculatable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeCalculatable.swift; sourceTree = ""; }; + 0446842E275676B3007E440A /* BusRouteAPIUsable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusRouteAPIUsable.swift; sourceTree = ""; }; 0451EDB32755BBBD00031A16 /* SearchCalculateUseCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SearchCalculateUseCase.swift; sourceTree = ""; }; 0476ABBA27310ED200F72DD1 /* BusRouteHeaderView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusRouteHeaderView.swift; sourceTree = ""; }; 0476ABBC27311C1600F72DD1 /* BusStationTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusStationTableViewCell.swift; sourceTree = ""; }; @@ -351,7 +353,7 @@ 4ACA51F0272FCDF200EC0531 /* SearchAPIUseCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SearchAPIUseCase.swift; sourceTree = ""; }; 4ACA51F2272FCDF900EC0531 /* SearchViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SearchViewModel.swift; sourceTree = ""; }; 4ACA51F4272FCE0200EC0531 /* SearchView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SearchView.swift; sourceTree = ""; }; - 4ACA5208272FCE5A00EC0531 /* BusRouteUseCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusRouteUseCase.swift; sourceTree = ""; }; + 4ACA5208272FCE5A00EC0531 /* BusRouteAPIUseCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusRouteAPIUseCase.swift; sourceTree = ""; }; 4ACA520A272FCE5F00EC0531 /* BusRouteViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusRouteViewModel.swift; sourceTree = ""; }; 4ACA520C272FCE6500EC0531 /* BusRouteView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusRouteView.swift; sourceTree = ""; }; 4ACA5212272FCE8500EC0531 /* BusCongestion.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusCongestion.swift; sourceTree = ""; }; @@ -829,7 +831,8 @@ 4ACA5204272FCE3900EC0531 /* UseCase */ = { isa = PBXGroup; children = ( - 4ACA5208272FCE5A00EC0531 /* BusRouteUseCase.swift */, + 0446842E275676B3007E440A /* BusRouteAPIUsable.swift */, + 4ACA5208272FCE5A00EC0531 /* BusRouteAPIUseCase.swift */, ); path = UseCase; sourceTree = ""; @@ -1864,7 +1867,8 @@ 4A04682C2732ECAA008D87CE /* KeyboardAccessoryView.swift in Sources */, 87115F1F2756766900601770 /* getBusPosByVehId.swift in Sources */, 4A5182A627550988001EA530 /* RequestFactory.swift in Sources */, - 4ACA5209272FCE5A00EC0531 /* BusRouteUseCase.swift in Sources */, + 4ACA5209272FCE5A00EC0531 /* BusRouteAPIUseCase.swift in Sources */, + 0446842F275676B3007E440A /* BusRouteAPIUsable.swift in Sources */, 4A5100372755106A00754B36 /* HomeCalculateUseCase.swift in Sources */, 4AA294B1273C1094008E5497 /* GetStationListFetcher.swift in Sources */, 4ACA5233272FCF0F00EC0531 /* SearchViewController.swift in Sources */, diff --git a/BBus/BBus/Foreground/BusRoute/UseCase/BusRouteAPIUsable.swift b/BBus/BBus/Foreground/BusRoute/UseCase/BusRouteAPIUsable.swift new file mode 100644 index 00000000..8d0138ec --- /dev/null +++ b/BBus/BBus/Foreground/BusRoute/UseCase/BusRouteAPIUsable.swift @@ -0,0 +1,15 @@ +// +// BusRouteAPIUsable.swift +// BBus +// +// Created by 최수정 on 2021/12/01. +// + +import Foundation +import Combine + +protocol BusRouteAPIUsable: BaseUseCase { + func searchHeader(busRouteId: Int) -> AnyPublisher + func fetchRouteList(busRouteId: Int) -> AnyPublisher<[StationByRouteListDTO], Error> + func fetchBusPosList(busRouteId: Int) -> AnyPublisher<[BusPosByRtidDTO], Error> +} diff --git a/BBus/BBus/Foreground/BusRoute/UseCase/BusRouteUseCase.swift b/BBus/BBus/Foreground/BusRoute/UseCase/BusRouteAPIUseCase.swift similarity index 84% rename from BBus/BBus/Foreground/BusRoute/UseCase/BusRouteUseCase.swift rename to BBus/BBus/Foreground/BusRoute/UseCase/BusRouteAPIUseCase.swift index 995bfc73..83cbd183 100644 --- a/BBus/BBus/Foreground/BusRoute/UseCase/BusRouteUseCase.swift +++ b/BBus/BBus/Foreground/BusRoute/UseCase/BusRouteAPIUseCase.swift @@ -8,12 +8,6 @@ import Foundation import Combine -protocol BusRouteAPIUsable: BaseUseCase { - func searchHeader(busRouteId: Int) -> AnyPublisher - func fetchRouteList(busRouteId: Int) -> AnyPublisher<[StationByRouteListDTO], Error> - func fetchBusPosList(busRouteId: Int) -> AnyPublisher<[BusPosByRtidDTO], Error> -} - final class BusRouteAPIUseCase: BusRouteAPIUsable { private let useCases: GetRouteListUsable & GetStationsByRouteListUsable & GetBusPosByRtidUsable From d709d09897429ef92487c22cae5cb913b996531c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S057=5F=EC=B5=9C=EC=88=98=EC=A0=95?= Date: Wed, 1 Dec 2021 00:13:50 +0900 Subject: [PATCH 5/9] =?UTF-8?q?refactor:=20#332=20StationUseCase=20?= =?UTF-8?q?=ED=94=84=EB=A1=9C=ED=86=A0=EC=BD=9C=20=EB=B6=84=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BBus/BBus.xcodeproj/project.pbxproj | 8 ++++++++ .../Station/UseCase/StationAPIUsable.swift | 18 ++++++++++++++++++ .../Station/UseCase/StationAPIUseCase.swift | 9 --------- .../Station/UseCase/StationCalculatable.swift | 12 ++++++++++++ .../UseCase/StationCalculateUseCase.swift | 4 ---- 5 files changed, 38 insertions(+), 13 deletions(-) create mode 100644 BBus/BBus/Foreground/Station/UseCase/StationAPIUsable.swift create mode 100644 BBus/BBus/Foreground/Station/UseCase/StationCalculatable.swift diff --git a/BBus/BBus.xcodeproj/project.pbxproj b/BBus/BBus.xcodeproj/project.pbxproj index 408a7050..a58cf9bf 100644 --- a/BBus/BBus.xcodeproj/project.pbxproj +++ b/BBus/BBus.xcodeproj/project.pbxproj @@ -16,6 +16,8 @@ 0446842B27567654007E440A /* HomeAPIUsable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0446842A27567654007E440A /* HomeAPIUsable.swift */; }; 0446842D27567660007E440A /* HomeCalculatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0446842C27567660007E440A /* HomeCalculatable.swift */; }; 0446842F275676B3007E440A /* BusRouteAPIUsable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0446842E275676B3007E440A /* BusRouteAPIUsable.swift */; }; + 04468431275676ED007E440A /* StationAPIUsable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04468430275676ED007E440A /* StationAPIUsable.swift */; }; + 04468433275676F8007E440A /* StationCalculatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04468432275676F8007E440A /* StationCalculatable.swift */; }; 0451EDB42755BBBD00031A16 /* SearchCalculateUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0451EDB32755BBBD00031A16 /* SearchCalculateUseCase.swift */; }; 0476ABBB27310ED200F72DD1 /* BusRouteHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0476ABBA27310ED200F72DD1 /* BusRouteHeaderView.swift */; }; 0476ABBD27311C1600F72DD1 /* BusStationTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0476ABBC27311C1600F72DD1 /* BusStationTableViewCell.swift */; }; @@ -270,6 +272,8 @@ 0446842A27567654007E440A /* HomeAPIUsable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeAPIUsable.swift; sourceTree = ""; }; 0446842C27567660007E440A /* HomeCalculatable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeCalculatable.swift; sourceTree = ""; }; 0446842E275676B3007E440A /* BusRouteAPIUsable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusRouteAPIUsable.swift; sourceTree = ""; }; + 04468430275676ED007E440A /* StationAPIUsable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StationAPIUsable.swift; sourceTree = ""; }; + 04468432275676F8007E440A /* StationCalculatable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StationCalculatable.swift; sourceTree = ""; }; 0451EDB32755BBBD00031A16 /* SearchCalculateUseCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SearchCalculateUseCase.swift; sourceTree = ""; }; 0476ABBA27310ED200F72DD1 /* BusRouteHeaderView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusRouteHeaderView.swift; sourceTree = ""; }; 0476ABBC27311C1600F72DD1 /* BusStationTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusStationTableViewCell.swift; sourceTree = ""; }; @@ -866,6 +870,8 @@ 4ACA5210272FCE6E00EC0531 /* UseCase */ = { isa = PBXGroup; children = ( + 04468430275676ED007E440A /* StationAPIUsable.swift */, + 04468432275676F8007E440A /* StationCalculatable.swift */, 4ACA5214272FCE8A00EC0531 /* StationAPIUseCase.swift */, 04DC47FA27552FE5003380D9 /* StationCalculateUseCase.swift */, ); @@ -1872,6 +1878,7 @@ 4A5100372755106A00754B36 /* HomeCalculateUseCase.swift in Sources */, 4AA294B1273C1094008E5497 /* GetStationListFetcher.swift in Sources */, 4ACA5233272FCF0F00EC0531 /* SearchViewController.swift in Sources */, + 04468433275676F8007E440A /* StationCalculatable.swift in Sources */, 87038A8A273B96B60078EAE3 /* NetworkService.swift in Sources */, 87B35D0A2754E71F00159791 /* MovingStatusCalculateUseCase.swift in Sources */, 4A412028274E34430083D691 /* BusRouteModel.swift in Sources */, @@ -1900,6 +1907,7 @@ 87285F5527461DB300CA3BA9 /* UINavigationControllerExtension.swift in Sources */, 4A7BBFEF27378AA50029915F /* StationBodyCollectionViewCell.swift in Sources */, 4ACA522F272FCEDF00EC0531 /* MovingStatusViewModel.swift in Sources */, + 04468431275676ED007E440A /* StationAPIUsable.swift in Sources */, 4AA294B3273C111C008E5497 /* GetFavoriteItemListFetcher.swift in Sources */, 4ACA520B272FCE5F00EC0531 /* BusRouteViewModel.swift in Sources */, ); diff --git a/BBus/BBus/Foreground/Station/UseCase/StationAPIUsable.swift b/BBus/BBus/Foreground/Station/UseCase/StationAPIUsable.swift new file mode 100644 index 00000000..3a2f0103 --- /dev/null +++ b/BBus/BBus/Foreground/Station/UseCase/StationAPIUsable.swift @@ -0,0 +1,18 @@ +// +// StationAPIUsable.swift +// BBus +// +// Created by 최수정 on 2021/12/01. +// + +import Foundation +import Combine + +protocol StationAPIUsable: BaseUseCase { + func loadStationList() -> AnyPublisher<[StationDTO], Error> + func refreshInfo(about arsId: String) -> AnyPublisher<[StationByUidItemDTO], Error> + func add(favoriteItem: FavoriteItemDTO) -> AnyPublisher + func remove(favoriteItem: FavoriteItemDTO) -> AnyPublisher + func getFavoriteItems() -> AnyPublisher<[FavoriteItemDTO], Error> + func loadRoute() -> AnyPublisher<[BusRouteDTO], Error> +} diff --git a/BBus/BBus/Foreground/Station/UseCase/StationAPIUseCase.swift b/BBus/BBus/Foreground/Station/UseCase/StationAPIUseCase.swift index 2e22ac15..8ed97c5e 100644 --- a/BBus/BBus/Foreground/Station/UseCase/StationAPIUseCase.swift +++ b/BBus/BBus/Foreground/Station/UseCase/StationAPIUseCase.swift @@ -8,15 +8,6 @@ import Foundation import Combine -protocol StationAPIUsable: BaseUseCase { - func loadStationList() -> AnyPublisher<[StationDTO], Error> - func refreshInfo(about arsId: String) -> AnyPublisher<[StationByUidItemDTO], Error> - func add(favoriteItem: FavoriteItemDTO) -> AnyPublisher - func remove(favoriteItem: FavoriteItemDTO) -> AnyPublisher - func getFavoriteItems() -> AnyPublisher<[FavoriteItemDTO], Error> - func loadRoute() -> AnyPublisher<[BusRouteDTO], Error> -} - final class StationAPIUseCase: StationAPIUsable { typealias StationUseCases = GetStationByUidItemUsable & GetStationListUsable & CreateFavoriteItemUsable & DeleteFavoriteItemUsable & GetFavoriteItemListUsable & GetRouteListUsable diff --git a/BBus/BBus/Foreground/Station/UseCase/StationCalculatable.swift b/BBus/BBus/Foreground/Station/UseCase/StationCalculatable.swift new file mode 100644 index 00000000..f320efdb --- /dev/null +++ b/BBus/BBus/Foreground/Station/UseCase/StationCalculatable.swift @@ -0,0 +1,12 @@ +// +// StationCalculatable.swift +// BBus +// +// Created by 최수정 on 2021/12/01. +// + +import Foundation + +protocol StationCalculatable: BaseUseCase { + func findStation(in stations: [StationDTO], with arsId: String) -> StationDTO? +} diff --git a/BBus/BBus/Foreground/Station/UseCase/StationCalculateUseCase.swift b/BBus/BBus/Foreground/Station/UseCase/StationCalculateUseCase.swift index e6652384..d22baf47 100644 --- a/BBus/BBus/Foreground/Station/UseCase/StationCalculateUseCase.swift +++ b/BBus/BBus/Foreground/Station/UseCase/StationCalculateUseCase.swift @@ -7,10 +7,6 @@ import Foundation -protocol StationCalculatable: BaseUseCase { - func findStation(in stations: [StationDTO], with arsId: String) -> StationDTO? -} - final class StationCalculateUseCase: StationCalculatable { func findStation(in stations: [StationDTO], with arsId: String) -> StationDTO? { let station = stations.filter() { $0.arsID == arsId } From 327dcbc994da1fee47a504dab676aebc412b2a81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S057=5F=EC=B5=9C=EC=88=98=EC=A0=95?= Date: Wed, 1 Dec 2021 00:16:00 +0900 Subject: [PATCH 6/9] =?UTF-8?q?refactor:=20#332=20AlarmSettingUseCase=20?= =?UTF-8?q?=ED=94=84=EB=A1=9C=ED=86=A0=EC=BD=9C=20=EB=B6=84=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BBus/BBus.xcodeproj/project.pbxproj | 8 ++++++++ .../UseCase/AlarmSettingAPIUsable.swift | 14 ++++++++++++++ .../UseCase/AlarmSettingAPIUseCase.swift | 5 ----- .../UseCase/AlarmSettingCalculatable.swift | 10 ++++++++++ .../UseCase/AlarmSettingCalculateUseCase.swift | 2 -- 5 files changed, 32 insertions(+), 7 deletions(-) create mode 100644 BBus/BBus/Foreground/AlarmSetting/UseCase/AlarmSettingAPIUsable.swift create mode 100644 BBus/BBus/Foreground/AlarmSetting/UseCase/AlarmSettingCalculatable.swift diff --git a/BBus/BBus.xcodeproj/project.pbxproj b/BBus/BBus.xcodeproj/project.pbxproj index a58cf9bf..e6235ce4 100644 --- a/BBus/BBus.xcodeproj/project.pbxproj +++ b/BBus/BBus.xcodeproj/project.pbxproj @@ -18,6 +18,8 @@ 0446842F275676B3007E440A /* BusRouteAPIUsable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0446842E275676B3007E440A /* BusRouteAPIUsable.swift */; }; 04468431275676ED007E440A /* StationAPIUsable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04468430275676ED007E440A /* StationAPIUsable.swift */; }; 04468433275676F8007E440A /* StationCalculatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04468432275676F8007E440A /* StationCalculatable.swift */; }; + 0446843527567769007E440A /* AlarmSettingAPIUsable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0446843427567769007E440A /* AlarmSettingAPIUsable.swift */; }; + 0446843727567777007E440A /* AlarmSettingCalculatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0446843627567777007E440A /* AlarmSettingCalculatable.swift */; }; 0451EDB42755BBBD00031A16 /* SearchCalculateUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0451EDB32755BBBD00031A16 /* SearchCalculateUseCase.swift */; }; 0476ABBB27310ED200F72DD1 /* BusRouteHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0476ABBA27310ED200F72DD1 /* BusRouteHeaderView.swift */; }; 0476ABBD27311C1600F72DD1 /* BusStationTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0476ABBC27311C1600F72DD1 /* BusStationTableViewCell.swift */; }; @@ -274,6 +276,8 @@ 0446842E275676B3007E440A /* BusRouteAPIUsable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusRouteAPIUsable.swift; sourceTree = ""; }; 04468430275676ED007E440A /* StationAPIUsable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StationAPIUsable.swift; sourceTree = ""; }; 04468432275676F8007E440A /* StationCalculatable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StationCalculatable.swift; sourceTree = ""; }; + 0446843427567769007E440A /* AlarmSettingAPIUsable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AlarmSettingAPIUsable.swift; sourceTree = ""; }; + 0446843627567777007E440A /* AlarmSettingCalculatable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AlarmSettingCalculatable.swift; sourceTree = ""; }; 0451EDB32755BBBD00031A16 /* SearchCalculateUseCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SearchCalculateUseCase.swift; sourceTree = ""; }; 0476ABBA27310ED200F72DD1 /* BusRouteHeaderView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusRouteHeaderView.swift; sourceTree = ""; }; 0476ABBC27311C1600F72DD1 /* BusStationTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusStationTableViewCell.swift; sourceTree = ""; }; @@ -912,6 +916,8 @@ 4ACA521C272FCE9E00EC0531 /* UseCase */ = { isa = PBXGroup; children = ( + 0446843427567769007E440A /* AlarmSettingAPIUsable.swift */, + 0446843627567777007E440A /* AlarmSettingCalculatable.swift */, 4ACA5220272FCEAF00EC0531 /* AlarmSettingAPIUseCase.swift */, 875F1AB12755BE08003F5BB1 /* AlarmSettingCalculateUseCase.swift */, ); @@ -1752,6 +1758,7 @@ buildActionMask = 2147483647; files = ( 4A5182B527551EC2001EA530 /* GetStationByUidItemUsable.swift in Sources */, + 0446843727567777007E440A /* AlarmSettingCalculatable.swift in Sources */, 4ACA5231272FCEE600EC0531 /* MovingStatusView.swift in Sources */, 4ADB29D7274E198900554A4E /* GetOffAlarmViewModel.swift in Sources */, 4ACA51EF272FCDE600EC0531 /* StationSearchResult.swift in Sources */, @@ -1772,6 +1779,7 @@ 4A5182C127551F6D001EA530 /* DeleteFavoriteItemUsable.swift in Sources */, 0446842D27567660007E440A /* HomeCalculatable.swift in Sources */, 87038A8C273B96DF0078EAE3 /* PersistenceStorage.swift in Sources */, + 0446843527567769007E440A /* AlarmSettingAPIUsable.swift in Sources */, 4ADB29CF274B890800554A4E /* BusApproachStatus.swift in Sources */, 0476ABBB27310ED200F72DD1 /* BusRouteHeaderView.swift in Sources */, 875F1AB22755BE08003F5BB1 /* AlarmSettingCalculateUseCase.swift in Sources */, diff --git a/BBus/BBus/Foreground/AlarmSetting/UseCase/AlarmSettingAPIUsable.swift b/BBus/BBus/Foreground/AlarmSetting/UseCase/AlarmSettingAPIUsable.swift new file mode 100644 index 00000000..e917998a --- /dev/null +++ b/BBus/BBus/Foreground/AlarmSetting/UseCase/AlarmSettingAPIUsable.swift @@ -0,0 +1,14 @@ +// +// AlarmSettingAPIUsable.swift +// BBus +// +// Created by 최수정 on 2021/12/01. +// + +import Foundation +import Combine + +protocol AlarmSettingAPIUsable: BaseUseCase { + func busArriveInfoWillLoaded(stId: String, busRouteId: String, ord: String) -> AnyPublisher + func busStationsInfoWillLoaded(busRouetId: String, arsId: String) -> AnyPublisher<[StationByRouteListDTO]?, Error> +} diff --git a/BBus/BBus/Foreground/AlarmSetting/UseCase/AlarmSettingAPIUseCase.swift b/BBus/BBus/Foreground/AlarmSetting/UseCase/AlarmSettingAPIUseCase.swift index 5bc9ab40..ba2e76a0 100644 --- a/BBus/BBus/Foreground/AlarmSetting/UseCase/AlarmSettingAPIUseCase.swift +++ b/BBus/BBus/Foreground/AlarmSetting/UseCase/AlarmSettingAPIUseCase.swift @@ -8,11 +8,6 @@ import Foundation import Combine -protocol AlarmSettingAPIUsable: BaseUseCase { - func busArriveInfoWillLoaded(stId: String, busRouteId: String, ord: String) -> AnyPublisher - func busStationsInfoWillLoaded(busRouetId: String, arsId: String) -> AnyPublisher<[StationByRouteListDTO]?, Error> -} - final class AlarmSettingAPIUseCase: AlarmSettingAPIUsable { typealias AlarmSettingUseCases = GetArrInfoByRouteListUsable & GetStationsByRouteListUsable diff --git a/BBus/BBus/Foreground/AlarmSetting/UseCase/AlarmSettingCalculatable.swift b/BBus/BBus/Foreground/AlarmSetting/UseCase/AlarmSettingCalculatable.swift new file mode 100644 index 00000000..3e28e39c --- /dev/null +++ b/BBus/BBus/Foreground/AlarmSetting/UseCase/AlarmSettingCalculatable.swift @@ -0,0 +1,10 @@ +// +// AlarmSettingCalculatable.swift +// BBus +// +// Created by 최수정 on 2021/12/01. +// + +import Foundation + +protocol AlarmSettingCalculatable: AverageSectionTimeCalculatable { } diff --git a/BBus/BBus/Foreground/AlarmSetting/UseCase/AlarmSettingCalculateUseCase.swift b/BBus/BBus/Foreground/AlarmSetting/UseCase/AlarmSettingCalculateUseCase.swift index 42bb6889..b96b862a 100644 --- a/BBus/BBus/Foreground/AlarmSetting/UseCase/AlarmSettingCalculateUseCase.swift +++ b/BBus/BBus/Foreground/AlarmSetting/UseCase/AlarmSettingCalculateUseCase.swift @@ -7,6 +7,4 @@ import Foundation -protocol AlarmSettingCalculatable: AverageSectionTimeCalculatable { } - struct AlarmSettingCalculateUseCase: AlarmSettingCalculatable { } From e1b5f6e5bb7c2ea11864fb442898032013888edd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S057=5F=EC=B5=9C=EC=88=98=EC=A0=95?= Date: Wed, 1 Dec 2021 00:17:15 +0900 Subject: [PATCH 7/9] =?UTF-8?q?refactor:=20#332=20MovingStatusUseCase=20?= =?UTF-8?q?=ED=94=84=EB=A1=9C=ED=86=A0=EC=BD=9C=20=EB=B6=84=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BBus/BBus.xcodeproj/project.pbxproj | 8 ++++++++ .../UseCase/MovingStatusAPIUsable.swift | 15 ++++++++++++++ .../UseCase/MovingStatusAPIUseCase.swift | 6 ------ .../UseCase/MovingStatusCalculatable.swift | 20 +++++++++++++++++++ .../MovingStatusCalculateUseCase.swift | 12 ----------- 5 files changed, 43 insertions(+), 18 deletions(-) create mode 100644 BBus/BBus/Foreground/MovingStatus/UseCase/MovingStatusAPIUsable.swift create mode 100644 BBus/BBus/Foreground/MovingStatus/UseCase/MovingStatusCalculatable.swift diff --git a/BBus/BBus.xcodeproj/project.pbxproj b/BBus/BBus.xcodeproj/project.pbxproj index e6235ce4..c7777d86 100644 --- a/BBus/BBus.xcodeproj/project.pbxproj +++ b/BBus/BBus.xcodeproj/project.pbxproj @@ -20,6 +20,8 @@ 04468433275676F8007E440A /* StationCalculatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04468432275676F8007E440A /* StationCalculatable.swift */; }; 0446843527567769007E440A /* AlarmSettingAPIUsable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0446843427567769007E440A /* AlarmSettingAPIUsable.swift */; }; 0446843727567777007E440A /* AlarmSettingCalculatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0446843627567777007E440A /* AlarmSettingCalculatable.swift */; }; + 04468439275677C0007E440A /* MovingStatusAPIUsable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04468438275677C0007E440A /* MovingStatusAPIUsable.swift */; }; + 0446843B275677CA007E440A /* MovingStatusCalculatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0446843A275677CA007E440A /* MovingStatusCalculatable.swift */; }; 0451EDB42755BBBD00031A16 /* SearchCalculateUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0451EDB32755BBBD00031A16 /* SearchCalculateUseCase.swift */; }; 0476ABBB27310ED200F72DD1 /* BusRouteHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0476ABBA27310ED200F72DD1 /* BusRouteHeaderView.swift */; }; 0476ABBD27311C1600F72DD1 /* BusStationTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0476ABBC27311C1600F72DD1 /* BusStationTableViewCell.swift */; }; @@ -278,6 +280,8 @@ 04468432275676F8007E440A /* StationCalculatable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StationCalculatable.swift; sourceTree = ""; }; 0446843427567769007E440A /* AlarmSettingAPIUsable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AlarmSettingAPIUsable.swift; sourceTree = ""; }; 0446843627567777007E440A /* AlarmSettingCalculatable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AlarmSettingCalculatable.swift; sourceTree = ""; }; + 04468438275677C0007E440A /* MovingStatusAPIUsable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MovingStatusAPIUsable.swift; sourceTree = ""; }; + 0446843A275677CA007E440A /* MovingStatusCalculatable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MovingStatusCalculatable.swift; sourceTree = ""; }; 0451EDB32755BBBD00031A16 /* SearchCalculateUseCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SearchCalculateUseCase.swift; sourceTree = ""; }; 0476ABBA27310ED200F72DD1 /* BusRouteHeaderView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusRouteHeaderView.swift; sourceTree = ""; }; 0476ABBC27311C1600F72DD1 /* BusStationTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusStationTableViewCell.swift; sourceTree = ""; }; @@ -954,6 +958,8 @@ 4ACA5228272FCEC800EC0531 /* UseCase */ = { isa = PBXGroup; children = ( + 04468438275677C0007E440A /* MovingStatusAPIUsable.swift */, + 0446843A275677CA007E440A /* MovingStatusCalculatable.swift */, 4ACA522C272FCEDB00EC0531 /* MovingStatusAPIUseCase.swift */, 87B35D092754E71F00159791 /* MovingStatusCalculateUseCase.swift */, ); @@ -1765,6 +1771,7 @@ 4A17CED92733B5C6007B1646 /* SearchResultScrollView.swift in Sources */, 4A5182B727551ED8001EA530 /* GetRouteListUsable.swift in Sources */, 4ACA523B272FCF3C00EC0531 /* AlarmSettingViewController.swift in Sources */, + 04468439275677C0007E440A /* MovingStatusAPIUsable.swift in Sources */, 4ACA5221272FCEAF00EC0531 /* AlarmSettingAPIUseCase.swift in Sources */, 4ACA51F1272FCDF200EC0531 /* SearchAPIUseCase.swift in Sources */, 4A094CDF27435C5900428F55 /* BusRemainTime.swift in Sources */, @@ -1774,6 +1781,7 @@ 4A5100332754CDB100754B36 /* BaseUseCase.swift in Sources */, 4AF1E0602755BE2400DE51C8 /* NavigatableView.swift in Sources */, 4ADB29C9274B7AA200554A4E /* GetOnAlarmAPIUseCase.swift in Sources */, + 0446843B275677CA007E440A /* MovingStatusCalculatable.swift in Sources */, 0476ABBD27311C1600F72DD1 /* BusStationTableViewCell.swift in Sources */, 4A38E20727463FF7003A9D10 /* BBusAPIError.swift in Sources */, 4A5182C127551F6D001EA530 /* DeleteFavoriteItemUsable.swift in Sources */, diff --git a/BBus/BBus/Foreground/MovingStatus/UseCase/MovingStatusAPIUsable.swift b/BBus/BBus/Foreground/MovingStatus/UseCase/MovingStatusAPIUsable.swift new file mode 100644 index 00000000..7be75afb --- /dev/null +++ b/BBus/BBus/Foreground/MovingStatus/UseCase/MovingStatusAPIUsable.swift @@ -0,0 +1,15 @@ +// +// MovingStatusAPIUsable.swift +// BBus +// +// Created by 최수정 on 2021/12/01. +// + +import Foundation +import Combine + +protocol MovingStatusAPIUsable: BaseUseCase { + func searchHeader(busRouteId: Int) -> AnyPublisher + func fetchRouteList(busRouteId: Int) -> AnyPublisher<[StationByRouteListDTO], Error> + func fetchBusPosList(busRouteId: Int) -> AnyPublisher<[BusPosByRtidDTO], Error> +} diff --git a/BBus/BBus/Foreground/MovingStatus/UseCase/MovingStatusAPIUseCase.swift b/BBus/BBus/Foreground/MovingStatus/UseCase/MovingStatusAPIUseCase.swift index 690944c0..ab84307c 100644 --- a/BBus/BBus/Foreground/MovingStatus/UseCase/MovingStatusAPIUseCase.swift +++ b/BBus/BBus/Foreground/MovingStatus/UseCase/MovingStatusAPIUseCase.swift @@ -8,12 +8,6 @@ import Foundation import Combine -protocol MovingStatusAPIUsable: BaseUseCase { - func searchHeader(busRouteId: Int) -> AnyPublisher - func fetchRouteList(busRouteId: Int) -> AnyPublisher<[StationByRouteListDTO], Error> - func fetchBusPosList(busRouteId: Int) -> AnyPublisher<[BusPosByRtidDTO], Error> -} - final class MovingStatusAPIUseCase: MovingStatusAPIUsable { private let useCases: GetRouteListUsable & GetStationsByRouteListUsable & GetBusPosByRtidUsable diff --git a/BBus/BBus/Foreground/MovingStatus/UseCase/MovingStatusCalculatable.swift b/BBus/BBus/Foreground/MovingStatus/UseCase/MovingStatusCalculatable.swift new file mode 100644 index 00000000..fc0ea060 --- /dev/null +++ b/BBus/BBus/Foreground/MovingStatus/UseCase/MovingStatusCalculatable.swift @@ -0,0 +1,20 @@ +// +// MovingStatusCalculatable.swift +// BBus +// +// Created by 최수정 on 2021/12/01. +// + +import Foundation + +protocol MovingStatusCalculatable: AverageSectionTimeCalculatable { + func filteredBuses(from buses: [BusPosByRtidDTO], startOrd: Int, currentOrd: Int, count: Int) -> [BusPosByRtidDTO] + func convertBusInfo(header: BusRouteDTO) -> BusInfo + func remainStation(bus: BusPosByRtidDTO, startOrd: Int, count: Int) -> Int + func pushAlarmMessage(remainStation: Int) -> (message: String?, terminated: Bool) + func remainTime(bus: BusPosByRtidDTO, stations: [StationInfo], startOrd: Int, boardedBus: BoardedBus) -> Int + func convertBusPos(startOrd: Int, order: Int, sect: String, fullSect: String) -> Double + func isOnBoard(gpsY: Double, gpsX: Double, busY: Double, busX: Double) -> Bool + func stationIndex(with targetId: String, with stations: [StationByRouteListDTO]) -> Int? + func filteredStations(from stations: [StationByRouteListDTO]) -> (stations: [StationInfo], time: Int) +} diff --git a/BBus/BBus/Foreground/MovingStatus/UseCase/MovingStatusCalculateUseCase.swift b/BBus/BBus/Foreground/MovingStatus/UseCase/MovingStatusCalculateUseCase.swift index c2cc823d..3cc40025 100644 --- a/BBus/BBus/Foreground/MovingStatus/UseCase/MovingStatusCalculateUseCase.swift +++ b/BBus/BBus/Foreground/MovingStatus/UseCase/MovingStatusCalculateUseCase.swift @@ -9,18 +9,6 @@ import Foundation import Combine import CoreLocation -protocol MovingStatusCalculatable: AverageSectionTimeCalculatable { - func filteredBuses(from buses: [BusPosByRtidDTO], startOrd: Int, currentOrd: Int, count: Int) -> [BusPosByRtidDTO] - func convertBusInfo(header: BusRouteDTO) -> BusInfo - func remainStation(bus: BusPosByRtidDTO, startOrd: Int, count: Int) -> Int - func pushAlarmMessage(remainStation: Int) -> (message: String?, terminated: Bool) - func remainTime(bus: BusPosByRtidDTO, stations: [StationInfo], startOrd: Int, boardedBus: BoardedBus) -> Int - func convertBusPos(startOrd: Int, order: Int, sect: String, fullSect: String) -> Double - func isOnBoard(gpsY: Double, gpsX: Double, busY: Double, busX: Double) -> Bool - func stationIndex(with targetId: String, with stations: [StationByRouteListDTO]) -> Int? - func filteredStations(from stations: [StationByRouteListDTO]) -> (stations: [StationInfo], time: Int) -} - final class MovingStatusCalculateUseCase: MovingStatusCalculatable { func filteredBuses(from buses: [BusPosByRtidDTO], startOrd: Int, currentOrd: Int, count: Int) -> [BusPosByRtidDTO] { From 1d31754258e3298ed1099413dba3c07f5fa53ba4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S057=5F=EC=B5=9C=EC=88=98=EC=A0=95?= Date: Wed, 1 Dec 2021 00:27:13 +0900 Subject: [PATCH 8/9] =?UTF-8?q?refactor:=20#332=20JsonDTO=20=EB=B6=84?= =?UTF-8?q?=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BBus/BBus.xcodeproj/project.pbxproj | 4 +++ .../Global/DTO/BusPosByVehicleIdDTO.swift | 24 -------------- BBus/BBus/Global/DTO/JsonDTO.swift | 32 +++++++++++++++++++ 3 files changed, 36 insertions(+), 24 deletions(-) create mode 100644 BBus/BBus/Global/DTO/JsonDTO.swift diff --git a/BBus/BBus.xcodeproj/project.pbxproj b/BBus/BBus.xcodeproj/project.pbxproj index c7777d86..4144fc20 100644 --- a/BBus/BBus.xcodeproj/project.pbxproj +++ b/BBus/BBus.xcodeproj/project.pbxproj @@ -22,6 +22,7 @@ 0446843727567777007E440A /* AlarmSettingCalculatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0446843627567777007E440A /* AlarmSettingCalculatable.swift */; }; 04468439275677C0007E440A /* MovingStatusAPIUsable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04468438275677C0007E440A /* MovingStatusAPIUsable.swift */; }; 0446843B275677CA007E440A /* MovingStatusCalculatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0446843A275677CA007E440A /* MovingStatusCalculatable.swift */; }; + 0446843D275679B9007E440A /* JsonDTO.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0446843C275679B9007E440A /* JsonDTO.swift */; }; 0451EDB42755BBBD00031A16 /* SearchCalculateUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0451EDB32755BBBD00031A16 /* SearchCalculateUseCase.swift */; }; 0476ABBB27310ED200F72DD1 /* BusRouteHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0476ABBA27310ED200F72DD1 /* BusRouteHeaderView.swift */; }; 0476ABBD27311C1600F72DD1 /* BusStationTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0476ABBC27311C1600F72DD1 /* BusStationTableViewCell.swift */; }; @@ -282,6 +283,7 @@ 0446843627567777007E440A /* AlarmSettingCalculatable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AlarmSettingCalculatable.swift; sourceTree = ""; }; 04468438275677C0007E440A /* MovingStatusAPIUsable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MovingStatusAPIUsable.swift; sourceTree = ""; }; 0446843A275677CA007E440A /* MovingStatusCalculatable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MovingStatusCalculatable.swift; sourceTree = ""; }; + 0446843C275679B9007E440A /* JsonDTO.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JsonDTO.swift; sourceTree = ""; }; 0451EDB32755BBBD00031A16 /* SearchCalculateUseCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SearchCalculateUseCase.swift; sourceTree = ""; }; 0476ABBA27310ED200F72DD1 /* BusRouteHeaderView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusRouteHeaderView.swift; sourceTree = ""; }; 0476ABBC27311C1600F72DD1 /* BusStationTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusStationTableViewCell.swift; sourceTree = ""; }; @@ -607,6 +609,7 @@ 049375AA273B9F330061ACDA /* BusRouteDTO.swift */, 049375AE273BAA130061ACDA /* StationDTO.swift */, 4A06AEC7274159D10027222D /* FavoriteItemDTO.swift */, + 0446843C275679B9007E440A /* JsonDTO.swift */, ); path = DTO; sourceTree = ""; @@ -1868,6 +1871,7 @@ 4A04682A2732B7B3008D87CE /* SearchNavigationView.swift in Sources */, 047C30FA273A04B40075EA14 /* BBusImage.swift in Sources */, 4ACA5219272FCE9500EC0531 /* StationView.swift in Sources */, + 0446843D275679B9007E440A /* JsonDTO.swift in Sources */, 4A5182BF27551F57001EA530 /* CreateFavoriteItemUsable.swift in Sources */, 4A1A22E12732CE7900476861 /* SearchResultCollectionViewCell.swift in Sources */, 87EB52AE2733A6C6000D5492 /* GetOnStatusCell.swift in Sources */, diff --git a/BBus/BBus/Global/DTO/BusPosByVehicleIdDTO.swift b/BBus/BBus/Global/DTO/BusPosByVehicleIdDTO.swift index 3e19e4d0..13070ab1 100644 --- a/BBus/BBus/Global/DTO/BusPosByVehicleIdDTO.swift +++ b/BBus/BBus/Global/DTO/BusPosByVehicleIdDTO.swift @@ -7,30 +7,6 @@ import Foundation -struct JsonHeader: Codable { - let msgHeader: MessageHeader -} - -struct JsonMessage: Codable { - let msgHeader: MessageHeader - let msgBody: MessageBody -} - -struct MessageHeader: Codable { - let headerMessage, headerCD: String - let itemCount: Int - - enum CodingKeys: String, CodingKey { - case headerMessage = "headerMsg" - case headerCD = "headerCd" - case itemCount - } -} - -struct MessageBody: Codable { - let itemList: [T] -} - struct BusPosByVehicleIdDTO: Codable { let stationOrd: String diff --git a/BBus/BBus/Global/DTO/JsonDTO.swift b/BBus/BBus/Global/DTO/JsonDTO.swift new file mode 100644 index 00000000..3ff36f39 --- /dev/null +++ b/BBus/BBus/Global/DTO/JsonDTO.swift @@ -0,0 +1,32 @@ +// +// JsonDTO.swift +// BBus +// +// Created by 최수정 on 2021/12/01. +// + +import Foundation + +struct JsonHeader: Codable { + let msgHeader: MessageHeader +} + +struct JsonMessage: Codable { + let msgHeader: MessageHeader + let msgBody: MessageBody +} + +struct MessageHeader: Codable { + let headerMessage, headerCD: String + let itemCount: Int + + enum CodingKeys: String, CodingKey { + case headerMessage = "headerMsg" + case headerCD = "headerCd" + case itemCount + } +} + +struct MessageBody: Codable { + let itemList: [T] +} From 09ea66835202b13fc689e3d6fcef80b4b1234f4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S057=5F=EC=B5=9C=EC=88=98=EC=A0=95?= Date: Wed, 1 Dec 2021 00:39:08 +0900 Subject: [PATCH 9/9] =?UTF-8?q?rename:=20#332=20BBusAPIUseCases=20extensio?= =?UTF-8?q?n=20=EB=B6=80=20=ED=8C=8C=EC=9D=BC=EB=AA=85=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BBus/BBus.xcodeproj/project.pbxproj | 80 +++++++++---------- ....swift => CreateFavoriteItemUseCase.swift} | 2 +- ....swift => DeleteFavoriteItemUseCase.swift} | 2 +- ...ift => GetArrInfoByRouteListUseCase.swift} | 2 +- ...tid.swift => GetBusPosByRtidUseCase.swift} | 2 +- ...Id.swift => GetBusPosByVehIdUseCase.swift} | 2 +- ...swift => GetFavoriteItemListUseCase.swift} | 2 +- ...teList.swift => GetRouteListUseCase.swift} | 2 +- ...swift => GetStationByUidItemUseCase.swift} | 2 +- ...List.swift => GetStationListUseCase.swift} | 2 +- ...ft => GetStationsByRouteListUseCase.swift} | 2 +- 11 files changed, 50 insertions(+), 50 deletions(-) rename BBus/BBus/Global/Network/BBusAPIUseCases/{createFavoriteItem.swift => CreateFavoriteItemUseCase.swift} (94%) rename BBus/BBus/Global/Network/BBusAPIUseCases/{deleteFavoriteItem.swift => DeleteFavoriteItemUseCase.swift} (94%) rename BBus/BBus/Global/Network/BBusAPIUseCases/{getArrInfoByRouteList.swift => GetArrInfoByRouteListUseCase.swift} (96%) rename BBus/BBus/Global/Network/BBusAPIUseCases/{getBusPosByRtid.swift => GetBusPosByRtidUseCase.swift} (96%) rename BBus/BBus/Global/Network/BBusAPIUseCases/{getBusPosByVehId.swift => GetBusPosByVehIdUseCase.swift} (96%) rename BBus/BBus/Global/Network/BBusAPIUseCases/{getFavoriteItemList.swift => GetFavoriteItemListUseCase.swift} (94%) rename BBus/BBus/Global/Network/BBusAPIUseCases/{getRouteList.swift => GetRouteListUseCase.swift} (95%) rename BBus/BBus/Global/Network/BBusAPIUseCases/{getStationByUidItem.swift => GetStationByUidItemUseCase.swift} (96%) rename BBus/BBus/Global/Network/BBusAPIUseCases/{getStationList.swift => GetStationListUseCase.swift} (94%) rename BBus/BBus/Global/Network/BBusAPIUseCases/{getStationsByRouteList.swift => GetStationsByRouteListUseCase.swift} (96%) diff --git a/BBus/BBus.xcodeproj/project.pbxproj b/BBus/BBus.xcodeproj/project.pbxproj index 4144fc20..a890e5a2 100644 --- a/BBus/BBus.xcodeproj/project.pbxproj +++ b/BBus/BBus.xcodeproj/project.pbxproj @@ -159,16 +159,16 @@ 87038A90273C11630078EAE3 /* GetStationsByRouteListFetcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87038A8F273C11630078EAE3 /* GetStationsByRouteListFetcher.swift */; }; 87038A92273C12320078EAE3 /* GetBusPosByRtidFetcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87038A91273C12320078EAE3 /* GetBusPosByRtidFetcher.swift */; }; 87038A94273C12E20078EAE3 /* GetStationByUidItemFetcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87038A93273C12E20078EAE3 /* GetStationByUidItemFetcher.swift */; }; - 87115F172756758800601770 /* getArrInfoByRouteList.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F162756758800601770 /* getArrInfoByRouteList.swift */; }; - 87115F19275675B900601770 /* getStationsByRouteList.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F18275675B900601770 /* getStationsByRouteList.swift */; }; - 87115F1B275675E200601770 /* getBusPosByRtid.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F1A275675E200601770 /* getBusPosByRtid.swift */; }; - 87115F1D2756761200601770 /* getStationByUidItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F1C2756761200601770 /* getStationByUidItem.swift */; }; - 87115F1F2756766900601770 /* getBusPosByVehId.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F1E2756766900601770 /* getBusPosByVehId.swift */; }; - 87115F212756768900601770 /* getRouteList.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F202756768900601770 /* getRouteList.swift */; }; - 87115F232756769D00601770 /* getStationList.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F222756769D00601770 /* getStationList.swift */; }; - 87115F25275676B000601770 /* getFavoriteItemList.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F24275676B000601770 /* getFavoriteItemList.swift */; }; - 87115F27275676C500601770 /* createFavoriteItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F26275676C500601770 /* createFavoriteItem.swift */; }; - 87115F29275676E900601770 /* deleteFavoriteItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F28275676E900601770 /* deleteFavoriteItem.swift */; }; + 87115F172756758800601770 /* GetArrInfoByRouteListUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F162756758800601770 /* GetArrInfoByRouteListUseCase.swift */; }; + 87115F19275675B900601770 /* GetStationsByRouteListUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F18275675B900601770 /* GetStationsByRouteListUseCase.swift */; }; + 87115F1B275675E200601770 /* GetBusPosByRtidUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F1A275675E200601770 /* GetBusPosByRtidUseCase.swift */; }; + 87115F1D2756761200601770 /* GetStationByUidItemUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F1C2756761200601770 /* GetStationByUidItemUseCase.swift */; }; + 87115F1F2756766900601770 /* GetBusPosByVehIdUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F1E2756766900601770 /* GetBusPosByVehIdUseCase.swift */; }; + 87115F212756768900601770 /* GetRouteListUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F202756768900601770 /* GetRouteListUseCase.swift */; }; + 87115F232756769D00601770 /* GetStationListUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F222756769D00601770 /* GetStationListUseCase.swift */; }; + 87115F25275676B000601770 /* GetFavoriteItemListUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F24275676B000601770 /* GetFavoriteItemListUseCase.swift */; }; + 87115F27275676C500601770 /* CreateFavoriteItemUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F26275676C500601770 /* CreateFavoriteItemUseCase.swift */; }; + 87115F29275676E900601770 /* DeleteFavoriteItemUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87115F28275676E900601770 /* DeleteFavoriteItemUseCase.swift */; }; 87285F5527461DB300CA3BA9 /* UINavigationControllerExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87285F5427461DB300CA3BA9 /* UINavigationControllerExtension.swift */; }; 873578832732545D00CC8ECC /* CustomNavigationBar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 873578822732545D00CC8ECC /* CustomNavigationBar.swift */; }; 87359B8D27311BF100F461A7 /* BusTagView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87359B8C27311BF100F461A7 /* BusTagView.swift */; }; @@ -432,16 +432,16 @@ 87038A8F273C11630078EAE3 /* GetStationsByRouteListFetcher.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GetStationsByRouteListFetcher.swift; sourceTree = ""; }; 87038A91273C12320078EAE3 /* GetBusPosByRtidFetcher.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GetBusPosByRtidFetcher.swift; sourceTree = ""; }; 87038A93273C12E20078EAE3 /* GetStationByUidItemFetcher.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GetStationByUidItemFetcher.swift; sourceTree = ""; }; - 87115F162756758800601770 /* getArrInfoByRouteList.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = getArrInfoByRouteList.swift; sourceTree = ""; }; - 87115F18275675B900601770 /* getStationsByRouteList.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = getStationsByRouteList.swift; sourceTree = ""; }; - 87115F1A275675E200601770 /* getBusPosByRtid.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = getBusPosByRtid.swift; sourceTree = ""; }; - 87115F1C2756761200601770 /* getStationByUidItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = getStationByUidItem.swift; sourceTree = ""; }; - 87115F1E2756766900601770 /* getBusPosByVehId.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = getBusPosByVehId.swift; sourceTree = ""; }; - 87115F202756768900601770 /* getRouteList.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = getRouteList.swift; sourceTree = ""; }; - 87115F222756769D00601770 /* getStationList.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = getStationList.swift; sourceTree = ""; }; - 87115F24275676B000601770 /* getFavoriteItemList.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = getFavoriteItemList.swift; sourceTree = ""; }; - 87115F26275676C500601770 /* createFavoriteItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = createFavoriteItem.swift; sourceTree = ""; }; - 87115F28275676E900601770 /* deleteFavoriteItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = deleteFavoriteItem.swift; sourceTree = ""; }; + 87115F162756758800601770 /* GetArrInfoByRouteListUseCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GetArrInfoByRouteListUseCase.swift; sourceTree = ""; }; + 87115F18275675B900601770 /* GetStationsByRouteListUseCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GetStationsByRouteListUseCase.swift; sourceTree = ""; }; + 87115F1A275675E200601770 /* GetBusPosByRtidUseCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GetBusPosByRtidUseCase.swift; sourceTree = ""; }; + 87115F1C2756761200601770 /* GetStationByUidItemUseCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GetStationByUidItemUseCase.swift; sourceTree = ""; }; + 87115F1E2756766900601770 /* GetBusPosByVehIdUseCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GetBusPosByVehIdUseCase.swift; sourceTree = ""; }; + 87115F202756768900601770 /* GetRouteListUseCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GetRouteListUseCase.swift; sourceTree = ""; }; + 87115F222756769D00601770 /* GetStationListUseCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GetStationListUseCase.swift; sourceTree = ""; }; + 87115F24275676B000601770 /* GetFavoriteItemListUseCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GetFavoriteItemListUseCase.swift; sourceTree = ""; }; + 87115F26275676C500601770 /* CreateFavoriteItemUseCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CreateFavoriteItemUseCase.swift; sourceTree = ""; }; + 87115F28275676E900601770 /* DeleteFavoriteItemUseCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DeleteFavoriteItemUseCase.swift; sourceTree = ""; }; 87285F5427461DB300CA3BA9 /* UINavigationControllerExtension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UINavigationControllerExtension.swift; sourceTree = ""; }; 873578822732545D00CC8ECC /* CustomNavigationBar.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CustomNavigationBar.swift; sourceTree = ""; }; 87359B8C27311BF100F461A7 /* BusTagView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BusTagView.swift; sourceTree = ""; }; @@ -1191,16 +1191,16 @@ isa = PBXGroup; children = ( 87038A81273B90A50078EAE3 /* BBusAPIUseCases.swift */, - 87115F162756758800601770 /* getArrInfoByRouteList.swift */, - 87115F18275675B900601770 /* getStationsByRouteList.swift */, - 87115F1A275675E200601770 /* getBusPosByRtid.swift */, - 87115F1C2756761200601770 /* getStationByUidItem.swift */, - 87115F1E2756766900601770 /* getBusPosByVehId.swift */, - 87115F202756768900601770 /* getRouteList.swift */, - 87115F222756769D00601770 /* getStationList.swift */, - 87115F24275676B000601770 /* getFavoriteItemList.swift */, - 87115F26275676C500601770 /* createFavoriteItem.swift */, - 87115F28275676E900601770 /* deleteFavoriteItem.swift */, + 87115F162756758800601770 /* GetArrInfoByRouteListUseCase.swift */, + 87115F18275675B900601770 /* GetStationsByRouteListUseCase.swift */, + 87115F1A275675E200601770 /* GetBusPosByRtidUseCase.swift */, + 87115F1C2756761200601770 /* GetStationByUidItemUseCase.swift */, + 87115F1E2756766900601770 /* GetBusPosByVehIdUseCase.swift */, + 87115F202756768900601770 /* GetRouteListUseCase.swift */, + 87115F222756769D00601770 /* GetStationListUseCase.swift */, + 87115F24275676B000601770 /* GetFavoriteItemListUseCase.swift */, + 87115F26275676C500601770 /* CreateFavoriteItemUseCase.swift */, + 87115F28275676E900601770 /* DeleteFavoriteItemUseCase.swift */, ); path = BBusAPIUseCases; sourceTree = ""; @@ -1806,7 +1806,7 @@ 87038A88273B950B0078EAE3 /* GetArrInfoByRouteListFetcher.swift in Sources */, 87038A82273B90A50078EAE3 /* BBusAPIUseCases.swift in Sources */, 4ACA51E3272FCD9600EC0531 /* HomeModel.swift in Sources */, - 87115F172756758800601770 /* getArrInfoByRouteList.swift in Sources */, + 87115F172756758800601770 /* GetArrInfoByRouteListUseCase.swift in Sources */, 4ACA51E9272FCDAE00EC0531 /* HomeView.swift in Sources */, 4ADB29D4274E18BB00554A4E /* GetOffAlarmController.swift in Sources */, 4A06AEC8274159D10027222D /* FavoriteItemDTO.swift in Sources */, @@ -1820,11 +1820,11 @@ 4ACA5225272FCEBF00EC0531 /* AlarmSettingView.swift in Sources */, 87038A92273C12320078EAE3 /* GetBusPosByRtidFetcher.swift in Sources */, 4A510039275517F800754B36 /* RefreshableView.swift in Sources */, - 87115F1D2756761200601770 /* getStationByUidItem.swift in Sources */, + 87115F1D2756761200601770 /* GetStationByUidItemUseCase.swift in Sources */, 4A094D072743E12C00428F55 /* NoneInfoTableViewCell.swift in Sources */, 4ACA51E7272FCDA600EC0531 /* HomeViewModel.swift in Sources */, - 87115F19275675B900601770 /* getStationsByRouteList.swift in Sources */, - 87115F1B275675E200601770 /* getBusPosByRtid.swift in Sources */, + 87115F19275675B900601770 /* GetStationsByRouteListUseCase.swift in Sources */, + 87115F1B275675E200601770 /* GetBusPosByRtidUseCase.swift in Sources */, 4A1A22DD2732801700476861 /* StationCoordinator.swift in Sources */, 4ACA5237272FCF2C00EC0531 /* BusRouteViewController.swift in Sources */, 873D639827303A6800E79069 /* AppCoordinator.swift in Sources */, @@ -1845,7 +1845,7 @@ 4A5182BB27551F28001EA530 /* GetStationListUsable.swift in Sources */, 4A992C49273124AF0006FB8C /* FavoriteCollectionViewCell.swift in Sources */, 4ADB29C7274B7A7F00554A4E /* GetOnAlarmStatus.swift in Sources */, - 87115F27275676C500601770 /* createFavoriteItem.swift in Sources */, + 87115F27275676C500601770 /* CreateFavoriteItemUseCase.swift in Sources */, 4ACC26B4274F669800173A32 /* BusSectionKeys.swift in Sources */, 4A917DF227462E36002489FE /* EmptyFavoriteNoticeView.swift in Sources */, 04AC7D1B2733E7270095CD4E /* AlarmSettingButton.swift in Sources */, @@ -1876,7 +1876,7 @@ 4A1A22E12732CE7900476861 /* SearchResultCollectionViewCell.swift in Sources */, 87EB52AE2733A6C6000D5492 /* GetOnStatusCell.swift in Sources */, 04DC47FB27552FE5003380D9 /* StationCalculateUseCase.swift in Sources */, - 87115F29275676E900601770 /* deleteFavoriteItem.swift in Sources */, + 87115F29275676E900601770 /* DeleteFavoriteItemUseCase.swift in Sources */, 4A06AEE92743DAB20027222D /* NotificationNameExtension.swift in Sources */, 4ADB29BB274B6C8300554A4E /* BusPosByVehicleIdDTO.swift in Sources */, 4ACC26B8274F6BD300173A32 /* BusArriveInfos.swift in Sources */, @@ -1891,7 +1891,7 @@ 4ACA522D272FCEDB00EC0531 /* MovingStatusAPIUseCase.swift in Sources */, 4AA294AF273C0E8D008E5497 /* GetRouteListFetcher.swift in Sources */, 4A04682C2732ECAA008D87CE /* KeyboardAccessoryView.swift in Sources */, - 87115F1F2756766900601770 /* getBusPosByVehId.swift in Sources */, + 87115F1F2756766900601770 /* GetBusPosByVehIdUseCase.swift in Sources */, 4A5182A627550988001EA530 /* RequestFactory.swift in Sources */, 4ACA5209272FCE5A00EC0531 /* BusRouteAPIUseCase.swift in Sources */, 0446842F275676B3007E440A /* BusRouteAPIUsable.swift in Sources */, @@ -1910,14 +1910,14 @@ 0451EDB42755BBBD00031A16 /* SearchCalculateUseCase.swift in Sources */, 4A917DF427463666002489FE /* EmptySearchResultNoticeView.swift in Sources */, 4A5182BD27551F40001EA530 /* GetFavoriteItemListUsable.swift in Sources */, - 87115F25275676B000601770 /* getFavoriteItemList.swift in Sources */, + 87115F25275676B000601770 /* GetFavoriteItemListUseCase.swift in Sources */, 4ADB29D1274CAF0100554A4E /* AlarmStartResult.swift in Sources */, 4A5182B127551E84001EA530 /* GetStationsByRouteListUsable.swift in Sources */, 4A5182AC275516A4001EA530 /* PersistencetFetchable.swift in Sources */, 87A5556E2728116400A9B5E3 /* SceneDelegate.swift in Sources */, 04C6D6692734B18A00D41678 /* MovingStatusTableViewCell.swift in Sources */, - 87115F232756769D00601770 /* getStationList.swift in Sources */, - 87115F212756768900601770 /* getRouteList.swift in Sources */, + 87115F232756769D00601770 /* GetStationListUseCase.swift in Sources */, + 87115F212756768900601770 /* GetRouteListUseCase.swift in Sources */, 87359B8D27311BF100F461A7 /* BusTagView.swift in Sources */, 4A3B6C502755DF2400BBC498 /* AlarmCenter.swift in Sources */, 4A17CED72733A754007B1646 /* SimpleCollectionHeaderView.swift in Sources */, diff --git a/BBus/BBus/Global/Network/BBusAPIUseCases/createFavoriteItem.swift b/BBus/BBus/Global/Network/BBusAPIUseCases/CreateFavoriteItemUseCase.swift similarity index 94% rename from BBus/BBus/Global/Network/BBusAPIUseCases/createFavoriteItem.swift rename to BBus/BBus/Global/Network/BBusAPIUseCases/CreateFavoriteItemUseCase.swift index 07326428..59037fed 100644 --- a/BBus/BBus/Global/Network/BBusAPIUseCases/createFavoriteItem.swift +++ b/BBus/BBus/Global/Network/BBusAPIUseCases/CreateFavoriteItemUseCase.swift @@ -1,5 +1,5 @@ // -// createFavoriteItem.swift +// CreateFavoriteItemUseCase.swift // BBus // // Created by Kang Minsang on 2021/12/01. diff --git a/BBus/BBus/Global/Network/BBusAPIUseCases/deleteFavoriteItem.swift b/BBus/BBus/Global/Network/BBusAPIUseCases/DeleteFavoriteItemUseCase.swift similarity index 94% rename from BBus/BBus/Global/Network/BBusAPIUseCases/deleteFavoriteItem.swift rename to BBus/BBus/Global/Network/BBusAPIUseCases/DeleteFavoriteItemUseCase.swift index 2f0d4de1..596ed756 100644 --- a/BBus/BBus/Global/Network/BBusAPIUseCases/deleteFavoriteItem.swift +++ b/BBus/BBus/Global/Network/BBusAPIUseCases/DeleteFavoriteItemUseCase.swift @@ -1,5 +1,5 @@ // -// deleteFavoriteItem.swift +// DeleteFavoriteItemUseCase.swift // BBus // // Created by Kang Minsang on 2021/12/01. diff --git a/BBus/BBus/Global/Network/BBusAPIUseCases/getArrInfoByRouteList.swift b/BBus/BBus/Global/Network/BBusAPIUseCases/GetArrInfoByRouteListUseCase.swift similarity index 96% rename from BBus/BBus/Global/Network/BBusAPIUseCases/getArrInfoByRouteList.swift rename to BBus/BBus/Global/Network/BBusAPIUseCases/GetArrInfoByRouteListUseCase.swift index d5c3c0bc..414ad53c 100644 --- a/BBus/BBus/Global/Network/BBusAPIUseCases/getArrInfoByRouteList.swift +++ b/BBus/BBus/Global/Network/BBusAPIUseCases/GetArrInfoByRouteListUseCase.swift @@ -1,5 +1,5 @@ // -// getArrInfoByRouteList.swift +// GetArrInfoByRouteListUseCase.swift // BBus // // Created by Kang Minsang on 2021/12/01. diff --git a/BBus/BBus/Global/Network/BBusAPIUseCases/getBusPosByRtid.swift b/BBus/BBus/Global/Network/BBusAPIUseCases/GetBusPosByRtidUseCase.swift similarity index 96% rename from BBus/BBus/Global/Network/BBusAPIUseCases/getBusPosByRtid.swift rename to BBus/BBus/Global/Network/BBusAPIUseCases/GetBusPosByRtidUseCase.swift index 7429a4d1..769ba3a6 100644 --- a/BBus/BBus/Global/Network/BBusAPIUseCases/getBusPosByRtid.swift +++ b/BBus/BBus/Global/Network/BBusAPIUseCases/GetBusPosByRtidUseCase.swift @@ -1,5 +1,5 @@ // -// getBusPosByRtid.swift +// GetBusPosByRtidUseCase.swift // BBus // // Created by Kang Minsang on 2021/12/01. diff --git a/BBus/BBus/Global/Network/BBusAPIUseCases/getBusPosByVehId.swift b/BBus/BBus/Global/Network/BBusAPIUseCases/GetBusPosByVehIdUseCase.swift similarity index 96% rename from BBus/BBus/Global/Network/BBusAPIUseCases/getBusPosByVehId.swift rename to BBus/BBus/Global/Network/BBusAPIUseCases/GetBusPosByVehIdUseCase.swift index 6516d4e5..fc320b82 100644 --- a/BBus/BBus/Global/Network/BBusAPIUseCases/getBusPosByVehId.swift +++ b/BBus/BBus/Global/Network/BBusAPIUseCases/GetBusPosByVehIdUseCase.swift @@ -1,5 +1,5 @@ // -// getBusPosByVehId.swift +// GetBusPosByVehIdUseCase.swift // BBus // // Created by Kang Minsang on 2021/12/01. diff --git a/BBus/BBus/Global/Network/BBusAPIUseCases/getFavoriteItemList.swift b/BBus/BBus/Global/Network/BBusAPIUseCases/GetFavoriteItemListUseCase.swift similarity index 94% rename from BBus/BBus/Global/Network/BBusAPIUseCases/getFavoriteItemList.swift rename to BBus/BBus/Global/Network/BBusAPIUseCases/GetFavoriteItemListUseCase.swift index a28331e7..77865220 100644 --- a/BBus/BBus/Global/Network/BBusAPIUseCases/getFavoriteItemList.swift +++ b/BBus/BBus/Global/Network/BBusAPIUseCases/GetFavoriteItemListUseCase.swift @@ -1,5 +1,5 @@ // -// getFavoriteItemList.swift +// GetFavoriteItemListUseCase.swift // BBus // // Created by Kang Minsang on 2021/12/01. diff --git a/BBus/BBus/Global/Network/BBusAPIUseCases/getRouteList.swift b/BBus/BBus/Global/Network/BBusAPIUseCases/GetRouteListUseCase.swift similarity index 95% rename from BBus/BBus/Global/Network/BBusAPIUseCases/getRouteList.swift rename to BBus/BBus/Global/Network/BBusAPIUseCases/GetRouteListUseCase.swift index 5589667a..7c14e1bd 100644 --- a/BBus/BBus/Global/Network/BBusAPIUseCases/getRouteList.swift +++ b/BBus/BBus/Global/Network/BBusAPIUseCases/GetRouteListUseCase.swift @@ -1,5 +1,5 @@ // -// getRouteList.swift +// GetRouteListUseCase.swift // BBus // // Created by Kang Minsang on 2021/12/01. diff --git a/BBus/BBus/Global/Network/BBusAPIUseCases/getStationByUidItem.swift b/BBus/BBus/Global/Network/BBusAPIUseCases/GetStationByUidItemUseCase.swift similarity index 96% rename from BBus/BBus/Global/Network/BBusAPIUseCases/getStationByUidItem.swift rename to BBus/BBus/Global/Network/BBusAPIUseCases/GetStationByUidItemUseCase.swift index b1056938..57c6f65a 100644 --- a/BBus/BBus/Global/Network/BBusAPIUseCases/getStationByUidItem.swift +++ b/BBus/BBus/Global/Network/BBusAPIUseCases/GetStationByUidItemUseCase.swift @@ -1,5 +1,5 @@ // -// getStationByUidItem.swift +// GetStationByUidItemUseCase.swift // BBus // // Created by Kang Minsang on 2021/12/01. diff --git a/BBus/BBus/Global/Network/BBusAPIUseCases/getStationList.swift b/BBus/BBus/Global/Network/BBusAPIUseCases/GetStationListUseCase.swift similarity index 94% rename from BBus/BBus/Global/Network/BBusAPIUseCases/getStationList.swift rename to BBus/BBus/Global/Network/BBusAPIUseCases/GetStationListUseCase.swift index a9a28af4..470ff3be 100644 --- a/BBus/BBus/Global/Network/BBusAPIUseCases/getStationList.swift +++ b/BBus/BBus/Global/Network/BBusAPIUseCases/GetStationListUseCase.swift @@ -1,5 +1,5 @@ // -// getStationList.swift +// GetStationListUseCase.swift // BBus // // Created by Kang Minsang on 2021/12/01. diff --git a/BBus/BBus/Global/Network/BBusAPIUseCases/getStationsByRouteList.swift b/BBus/BBus/Global/Network/BBusAPIUseCases/GetStationsByRouteListUseCase.swift similarity index 96% rename from BBus/BBus/Global/Network/BBusAPIUseCases/getStationsByRouteList.swift rename to BBus/BBus/Global/Network/BBusAPIUseCases/GetStationsByRouteListUseCase.swift index f1e20501..fee69eda 100644 --- a/BBus/BBus/Global/Network/BBusAPIUseCases/getStationsByRouteList.swift +++ b/BBus/BBus/Global/Network/BBusAPIUseCases/GetStationsByRouteListUseCase.swift @@ -1,5 +1,5 @@ // -// getStationsByRouteList.swift +// GetStationsByRouteListUseCase.swift // BBus // // Created by Kang Minsang on 2021/12/01.