Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

πŸ”€ :: [#386] λŒ€ν•™ ν•™κ³Ό 리슀트 쑰회 κΈ°λŠ₯ μΆ”κ°€ #388

Merged
merged 1 commit into from
Jul 27, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 10 additions & 8 deletions App/Sources/Application/NeedleGenerated.swift
Original file line number Diff line number Diff line change
Expand Up @@ -621,15 +621,17 @@ private func factory5ce0f173abbf535f654ff47b58f8f304c97af4d5(_ component: Needle
return StudentInfoDependency5d1163a5288c79c06dffProvider(appComponent: parent1(component) as! AppComponent)
}
private class UniversityListDependency114351175c975dac12b7Provider: UniversityListDependency {


init() {

var fetchUniversityListUseCase: any FetchUniversityListUseCase {
return appComponent.fetchUniversityListUseCase
}
private let appComponent: AppComponent
init(appComponent: AppComponent) {
self.appComponent = appComponent
}
}
/// ^->AppComponent->UniversityListComponent
private func factory138cdcda950ee50e6d46e3b0c44298fc1c149afb(_ component: NeedleFoundation.Scope) -> AnyObject {
return UniversityListDependency114351175c975dac12b7Provider()
private func factory138cdcda950ee50e6d46f47b58f8f304c97af4d5(_ component: NeedleFoundation.Scope) -> AnyObject {
return UniversityListDependency114351175c975dac12b7Provider(appComponent: parent1(component) as! AppComponent)
}
private class WriteInquiryAnswerDependencyeba82c0423abdd3e1acfProvider: WriteInquiryAnswerDependency {
var replyInquiryUseCase: any ReplyInquiryUseCase {
Expand Down Expand Up @@ -1152,7 +1154,7 @@ extension StudentInfoComponent: Registration {
}
extension UniversityListComponent: Registration {
public func registerItems() {

keyPathToName[\UniversityListDependency.fetchUniversityListUseCase] = "fetchUniversityListUseCase-any FetchUniversityListUseCase"
}
}
extension WriteInquiryAnswerComponent: Registration {
Expand Down Expand Up @@ -1473,7 +1475,7 @@ private func registerProviderFactory(_ componentPath: String, _ factory: @escapi
registerProviderFactory("^->AppComponent->LectureApplicantListComponent", factory78a87c10d14f7bbaaa9df47b58f8f304c97af4d5)
registerProviderFactory("^->AppComponent->UserListComponent", factorycf08383b935d2e18f4c7f47b58f8f304c97af4d5)
registerProviderFactory("^->AppComponent->StudentInfoComponent", factory5ce0f173abbf535f654ff47b58f8f304c97af4d5)
registerProviderFactory("^->AppComponent->UniversityListComponent", factory138cdcda950ee50e6d46e3b0c44298fc1c149afb)
registerProviderFactory("^->AppComponent->UniversityListComponent", factory138cdcda950ee50e6d46f47b58f8f304c97af4d5)
registerProviderFactory("^->AppComponent->WriteInquiryAnswerComponent", factory3d4cadf14cd9a3336981f47b58f8f304c97af4d5)
registerProviderFactory("^->AppComponent->PostDetailComponent", factorybc555a73df3767a26999f47b58f8f304c97af4d5)
registerProviderFactory("^->AppComponent->SuccessChangePasswordComponent", factoryde3552d9e0f793ec8b8df47b58f8f304c97af4d5)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,17 @@
import NeedleFoundation
import SwiftUI
import Service

public protocol UniversityListDependency: Dependency {}
public protocol UniversityListDependency: Dependency {
var fetchUniversityListUseCase: any FetchUniversityListUseCase { get }
}

public final class UniversityListComponent: Component<UniversityListDependency>, UniversityListFactory {
public func makeView() -> some View {
UniversityListView(viewModel: .init())
UniversityListView(
viewModel: .init(
fetchUniversityListUseCase: dependency.fetchUniversityListUseCase
)
)
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,8 @@ struct UniversityListView: View {
}
}
}
.onAppear { viewModel.onAppear() }
.refreshable { viewModel.onAppear() }
.overlay(alignment: .bottom) {
ActivateButton(
text: "μƒˆλ‘œμš΄ λŒ€ν•™ 등둝",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,16 @@ final class UniversityListViewModel: BaseViewModel {
@Published var isShowingUniversityDetailBottomSheet: Bool = false
@Published var isPresentedInputUniversityPage: Bool = false
@Published var selectedPage: AdminPageFlow = .company
var universityList: [UniversityInfoEntity] = []
@Published var universityList: [UniversityInfoEntity] = []
var selectedUniversityName: String = ""
var selectedDepartmentList: [String] = []

private let fetchUniversityListUseCase: any FetchUniversityListUseCase

init(fetchUniversityListUseCase: any FetchUniversityListUseCase) {
self.fetchUniversityListUseCase = fetchUniversityListUseCase
}

func updateIsShowingAdminPageBottomSheet(isShowing: Bool) {
isShowingAdminPageBottomSheet = isShowing
}
Expand All @@ -31,4 +37,15 @@ final class UniversityListViewModel: BaseViewModel {
selectedUniversityName = name
selectedDepartmentList = departments
}

@MainActor
func onAppear() {
Task {
do {
universityList = try await fetchUniversityListUseCase()
} catch {
print(error.localizedDescription)
}
}
}
}
Loading