diff --git a/project/Projects/Data/DataSource/Service/BaseNetworkService.swift b/project/Projects/Data/DataSource/Service/BaseNetworkService.swift index 4a863302..048ee8fa 100644 --- a/project/Projects/Data/DataSource/Service/BaseNetworkService.swift +++ b/project/Projects/Data/DataSource/Service/BaseNetworkService.swift @@ -159,10 +159,10 @@ public class BaseNetworkService { let configuration = URLSessionConfiguration.default // 단일 요청이 완료되는데 걸리는 최대 시간, 초과시 타임아웃 - configuration.timeoutIntervalForRequest = 10 + configuration.timeoutIntervalForRequest = 20 // 하나의 리소스를 로드하는데 걸리는 시간, 재시도를 포함한다 초과시 타임아웃 - configuration.timeoutIntervalForResource = 10 + configuration.timeoutIntervalForResource = 20 // Cache policy: 로컬캐시를 무시하고 항상 새로운 데이터를 가져온다. configuration.requestCachePolicy = .reloadIgnoringLocalCacheData diff --git a/project/Projects/Presentation/DSKit/Sources/CommonUI/Card/Post/Worker/ApplyScreen/ApplicantCard.swift b/project/Projects/Presentation/DSKit/Sources/CommonUI/Card/Post/Worker/ApplyScreen/ApplicantCard.swift index f0c0af45..e59f4f44 100644 --- a/project/Projects/Presentation/DSKit/Sources/CommonUI/Card/Post/Worker/ApplyScreen/ApplicantCard.swift +++ b/project/Projects/Presentation/DSKit/Sources/CommonUI/Card/Post/Worker/ApplyScreen/ApplicantCard.swift @@ -144,11 +144,11 @@ public class ApplicantCard: UIView { button.label.textString = "프로필 보기" return button }() - let employButton: IdlePrimaryButton = { - let button = IdlePrimaryButton(level: .medium) - button.label.textString = "채용하기" - return button - }() +// let employButton: IdlePrimaryButton = { +// let button = IdlePrimaryButton(level: .medium) +// button.label.textString = "채용하기" +// return button +// }() // Observable private let disposeBag = DisposeBag() @@ -228,7 +228,8 @@ public class ApplicantCard: UIView { // ]) let buttonStack = HStack([ - showProfileButton, employButton + showProfileButton, +// employButton ], spacing: 8, distribution: .fillEqually) let mainStack = VStack([ diff --git a/project/Projects/Presentation/DSKit/Sources/CommonUI/Card/Post/Worker/ApplyScreen/ApplicantCardCell.swift b/project/Projects/Presentation/DSKit/Sources/CommonUI/Card/Post/Worker/ApplyScreen/ApplicantCardCell.swift index c5af8cb9..7cb6f887 100644 --- a/project/Projects/Presentation/DSKit/Sources/CommonUI/Card/Post/Worker/ApplyScreen/ApplicantCardCell.swift +++ b/project/Projects/Presentation/DSKit/Sources/CommonUI/Card/Post/Worker/ApplyScreen/ApplicantCardCell.swift @@ -82,9 +82,9 @@ public class ApplicantCardCell: UITableViewCell { .showProfileButton.rx.tap .bind(to: viewModel.showProfileButtonClicked), - cardView - .employButton.rx.tap - .bind(to: viewModel.employButtonClicked), +// cardView +// .employButton.rx.tap +// .bind(to: viewModel.employButtonClicked), ] self.disposables = disposables diff --git a/project/Projects/Presentation/Feature/Base/Sources/View/View/RecruitmentPost/Center/OverView/CustomerInformationDisplayingView.swift b/project/Projects/Presentation/Feature/Base/Sources/View/View/RecruitmentPost/Center/OverView/CustomerInformationDisplayingView.swift index 649ae070..ad57ebe7 100644 --- a/project/Projects/Presentation/Feature/Base/Sources/View/View/RecruitmentPost/Center/OverView/CustomerInformationDisplayingView.swift +++ b/project/Projects/Presentation/Feature/Base/Sources/View/View/RecruitmentPost/Center/OverView/CustomerInformationDisplayingView.swift @@ -95,7 +95,7 @@ public class CustomerInformationDisplayingView: VStack { let keyStack = VStack([], spacing: 6, alignment: .leading) let valueStack = VStack([], spacing: 6, alignment: .leading) - let keyValueStack = HStack([keyStack, valueStack, Spacer()], spacing: 32) + let keyValueStack = HStack([keyStack, Spacer(width: 32), valueStack, Spacer()]) addViewListToStack(viewList: viewList, keyStack: keyStack, valueStack: valueStack, keyValueStack: keyValueStack) diff --git a/project/Projects/Presentation/Feature/Base/Sources/View/View/RecruitmentPost/Center/OverView/WorkConditionDisplayingView.swift b/project/Projects/Presentation/Feature/Base/Sources/View/View/RecruitmentPost/Center/OverView/WorkConditionDisplayingView.swift index d95177f7..8319c036 100644 --- a/project/Projects/Presentation/Feature/Base/Sources/View/View/RecruitmentPost/Center/OverView/WorkConditionDisplayingView.swift +++ b/project/Projects/Presentation/Feature/Base/Sources/View/View/RecruitmentPost/Center/OverView/WorkConditionDisplayingView.swift @@ -37,8 +37,7 @@ public class WorkConditionDisplayingView: HStack { public init() { super.init( - [keyStack, valueStack], - spacing: 32, + [keyStack, Spacer(width: 32), valueStack, Spacer()], distribution: .fill ) setAppearance() diff --git a/project/Projects/Presentation/Feature/Center/Sources/ViewModel/Profile/CenterProfileViewModel.swift b/project/Projects/Presentation/Feature/Center/Sources/ViewModel/Profile/CenterProfileViewModel.swift index ab205aed..ca744365 100644 --- a/project/Projects/Presentation/Feature/Center/Sources/ViewModel/Profile/CenterProfileViewModel.swift +++ b/project/Projects/Presentation/Feature/Center/Sources/ViewModel/Profile/CenterProfileViewModel.swift @@ -195,7 +195,7 @@ public class CenterProfileViewModel: BaseViewModel, CenterProfileViewModelable { // 최신 값들 + 버튼이 눌릴 경우 변경 로직이 실행된다. - let editingRequestResult = editingFinishButtonPressed + let editingRequestResult = mapEndLoading(mapStartLoading(editingFinishButtonPressed.asObservable()) .map({ [unowned self] _ in checkModification() }) @@ -214,7 +214,7 @@ public class CenterProfileViewModel: BaseViewModel, CenterProfileViewModelable { introduction: introduction, imageInfo: imageInfo ) - } + }) .share() let editingValidation = editingRequestResult @@ -235,8 +235,8 @@ public class CenterProfileViewModel: BaseViewModel, CenterProfileViewModelable { .map({ error in // 변경 실패 Alert return DefaultAlertContentVO( - title: "변경 실패", - message: "변경 싪패 이유" + title: "프로필 수정 실패", + message: error.message ) }) diff --git a/project/Projects/Presentation/Feature/Center/Sources/ViewModel/RecruitmentPost/EditPostVM.swift b/project/Projects/Presentation/Feature/Center/Sources/ViewModel/RecruitmentPost/EditPostVM.swift index 5e895123..e4cfdcad 100644 --- a/project/Projects/Presentation/Feature/Center/Sources/ViewModel/RecruitmentPost/EditPostVM.swift +++ b/project/Projects/Presentation/Feature/Center/Sources/ViewModel/RecruitmentPost/EditPostVM.swift @@ -384,7 +384,7 @@ public class EditPostVM: BaseViewModel, EditPostViewModelable { let inputValidationSuccess = inputValidationResult.filter { $0 == nil } let inputValidationFailure = inputValidationResult.compactMap { $0 } - let editingRequestResult = inputValidationSuccess + let editingRequestResult = mapEndLoading(mapStartLoading(inputValidationSuccess) .flatMap { [weak self] _ -> Single> in guard let self else { return .never() } @@ -398,7 +398,7 @@ public class EditPostVM: BaseViewModel, EditPostViewModelable { addressInfo: editing_addressInfo.value ) ) - } + }) .share() let editingRequestSuccess = editingRequestResult.compactMap { $0.value } diff --git a/project/Projects/Presentation/Feature/Worker/Sources/ViewModel/Profile/WorkerProfileViewModel.swift b/project/Projects/Presentation/Feature/Worker/Sources/ViewModel/Profile/WorkerProfileViewModel.swift index 51770537..19cfa582 100644 --- a/project/Projects/Presentation/Feature/Worker/Sources/ViewModel/Profile/WorkerProfileViewModel.swift +++ b/project/Projects/Presentation/Feature/Worker/Sources/ViewModel/Profile/WorkerProfileViewModel.swift @@ -88,10 +88,14 @@ public class WorkerProfileViewModel: OtherWorkerProfileViewModelable { .disposed(by: disposbag) phoneCallButtonClicked - .subscribe(onNext: { _ in + .withLatestFrom(fetchedProfileVOSuccess) + .subscribe(onNext: { profileVO in - // 안심번호 전화연결 + let phoneNumber = profileVO.phoneNumber + if let phoneURL = URL(string: "tel://\(phoneNumber)"), UIApplication.shared.canOpenURL(phoneURL) { + UIApplication.shared.open(phoneURL, options: [:], completionHandler: nil) + } }) .disposed(by: disposbag)