diff --git a/NADA-iOS-forRelease.xcodeproj/project.pbxproj b/NADA-iOS-forRelease.xcodeproj/project.pbxproj index df1853f7..c1d6799e 100644 --- a/NADA-iOS-forRelease.xcodeproj/project.pbxproj +++ b/NADA-iOS-forRelease.xcodeproj/project.pbxproj @@ -14,7 +14,6 @@ 3909242F26FA15E800236C51 /* UIView+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3909242E26FA15E800236C51 /* UIView+Extension.swift */; }; 3918F66727719C4B00984648 /* UserTokenReissueRequset.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3918F66627719C4B00984648 /* UserTokenReissueRequset.swift */; }; 3927A7D7275F2A9B008BCD2A /* UserDefaults.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3927A7D6275F2A9B008BCD2A /* UserDefaults.swift */; }; - 39288E12273F52B20072F403 /* CardListLookUpRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39288E11273F52B20072F403 /* CardListLookUpRequest.swift */; }; 392F7FB4274621F1008CDBF5 /* MoreListTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 392F7FB2274621F1008CDBF5 /* MoreListTableViewCell.swift */; }; 392F7FB5274621F1008CDBF5 /* MoreListTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 392F7FB3274621F1008CDBF5 /* MoreListTableViewCell.xib */; }; 39317D2227646F8E00D87166 /* GroupNameEditBottomSheetViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39317D2127646F8E00D87166 /* GroupNameEditBottomSheetViewController.swift */; }; @@ -60,6 +59,7 @@ 39D88B642745FDD400A72164 /* TabBar.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 39D88B632745FDD400A72164 /* TabBar.storyboard */; }; 39D88B662745FE5F00A72164 /* TabBarViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39D88B652745FE5F00A72164 /* TabBarViewController.swift */; }; 39D88B6B274600B100A72164 /* CommonBottomSheetViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39D88B6A274600B100A72164 /* CommonBottomSheetViewController.swift */; }; + 39DC069A2778BEFB00C8ECCC /* CardListLookUp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39DC06992778BEFB00C8ECCC /* CardListLookUp.swift */; }; 39F5A3D0271461EA00191F94 /* BackCardCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39F5A3CE271461EA00191F94 /* BackCardCell.swift */; }; 39F5A3D1271461EA00191F94 /* BackCardCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 39F5A3CF271461EA00191F94 /* BackCardCell.xib */; }; 7705CF3E2752C7DB005195DF /* CardView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7705CF3D2752C7DB005195DF /* CardView.swift */; }; @@ -153,7 +153,6 @@ 3918F6652771682F00984648 /* NADA-iOS-forRelease.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "NADA-iOS-forRelease.entitlements"; sourceTree = ""; }; 3918F66627719C4B00984648 /* UserTokenReissueRequset.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserTokenReissueRequset.swift; sourceTree = ""; }; 3927A7D6275F2A9B008BCD2A /* UserDefaults.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserDefaults.swift; sourceTree = ""; }; - 39288E11273F52B20072F403 /* CardListLookUpRequest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CardListLookUpRequest.swift; sourceTree = ""; }; 392F7FB2274621F1008CDBF5 /* MoreListTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MoreListTableViewCell.swift; sourceTree = ""; }; 392F7FB3274621F1008CDBF5 /* MoreListTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MoreListTableViewCell.xib; sourceTree = ""; }; 39317D2127646F8E00D87166 /* GroupNameEditBottomSheetViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GroupNameEditBottomSheetViewController.swift; sourceTree = ""; }; @@ -199,6 +198,7 @@ 39D88B632745FDD400A72164 /* TabBar.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = TabBar.storyboard; sourceTree = ""; }; 39D88B652745FE5F00A72164 /* TabBarViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TabBarViewController.swift; sourceTree = ""; }; 39D88B6A274600B100A72164 /* CommonBottomSheetViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CommonBottomSheetViewController.swift; sourceTree = ""; }; + 39DC06992778BEFB00C8ECCC /* CardListLookUp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CardListLookUp.swift; sourceTree = ""; }; 39F5A3CE271461EA00191F94 /* BackCardCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BackCardCell.swift; sourceTree = ""; }; 39F5A3CF271461EA00191F94 /* BackCardCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = BackCardCell.xib; sourceTree = ""; }; 4A2183AE0E469153221624A0 /* Pods_NADA_iOS_forRelease.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_NADA_iOS_forRelease.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -680,6 +680,8 @@ 3981148D273BEBB300E28630 /* CardListEditRequest.swift */, 3981148F273BEBCE00E28630 /* CardListRequest.swift */, 39288E11273F52B20072F403 /* CardListLookUpRequest.swift */, + 39584580273E951C009CC6B9 /* MainListRequest.swift */, + 39DC06992778BEFB00C8ECCC /* CardListLookUp.swift */, ); path = Card; sourceTree = ""; @@ -1123,6 +1125,7 @@ 3909242F26FA15E800236C51 /* UIView+Extension.swift in Sources */, 39523E09270184A700536900 /* CardListViewController.swift in Sources */, F85711A5274A6B2200F59F0B /* CardCreationPreviewViewController.swift in Sources */, + 39DC069A2778BEFB00C8ECCC /* CardListLookUp.swift in Sources */, 777FF89B27359B7800BF69D3 /* Groups.swift in Sources */, 77F47D93276C79B600414659 /* Header.swift in Sources */, 397B75102763A5F5004AEB03 /* OpenSourceViewController.swift in Sources */, @@ -1197,7 +1200,6 @@ 393E3345275F69EE00965BBF /* SplashViewController.swift in Sources */, F8C83FB8272F9E3F0009DF0D /* UtilAPI.swift in Sources */, F8FC438826C01CDD0033E151 /* SceneDelegate.swift in Sources */, - 39288E12273F52B20072F403 /* CardListLookUpRequest.swift in Sources */, 397B75132763A916004AEB03 /* OpenSourceTableViewCell.swift in Sources */, F811720027383097002742CF /* ChangeGroupRequest.swift in Sources */, ); diff --git a/NADA-iOS-forRelease/Resouces/Constants/UserDefaults.swift b/NADA-iOS-forRelease/Resouces/Constants/UserDefaults.swift index 8cdc9f2a..fc42c2ed 100644 --- a/NADA-iOS-forRelease/Resouces/Constants/UserDefaults.swift +++ b/NADA-iOS-forRelease/Resouces/Constants/UserDefaults.swift @@ -15,5 +15,6 @@ extension Const { static let userID = "userID" static let isFirstCard = "isFirstCard" static let isOnboarding = "isOnboarding" + static let firstCardID = "firstCardID" } } diff --git a/NADA-iOS-forRelease/Sources/NetworkModel/Card/CardListLookUp.swift b/NADA-iOS-forRelease/Sources/NetworkModel/Card/CardListLookUp.swift new file mode 100644 index 00000000..4c01eb98 --- /dev/null +++ b/NADA-iOS-forRelease/Sources/NetworkModel/Card/CardListLookUp.swift @@ -0,0 +1,14 @@ +// +// CardListLookUp.swift +// NADA-iOS-forRelease +// +// Created by 민 on 2021/12/27. +// + +import Foundation + +// MARK: - CardListLookUp +struct CardListLookUp: Codable { + let offset: Int + let cards: [Card] +} diff --git a/NADA-iOS-forRelease/Sources/NetworkModel/Card/CardListLookUpRequest.swift b/NADA-iOS-forRelease/Sources/NetworkModel/Card/CardListLookUpRequest.swift deleted file mode 100644 index d0edb0e5..00000000 --- a/NADA-iOS-forRelease/Sources/NetworkModel/Card/CardListLookUpRequest.swift +++ /dev/null @@ -1,14 +0,0 @@ -// -// CardListLookUpRequest.swift -// NADA-iOS-forRelease -// -// Created by 민 on 2021/11/13. -// - -import Foundation - -// MARK: - CardListLookUpRequest -struct CardListLookUpRequest: Codable { - let offset: Int - let cards: [Card] -} diff --git a/NADA-iOS-forRelease/Sources/NetworkService/Card/CardAPI.swift b/NADA-iOS-forRelease/Sources/NetworkService/Card/CardAPI.swift index 5efbda27..a312aec5 100644 --- a/NADA-iOS-forRelease/Sources/NetworkService/Card/CardAPI.swift +++ b/NADA-iOS-forRelease/Sources/NetworkService/Card/CardAPI.swift @@ -132,7 +132,7 @@ public class CardAPI { private func judgeMainListFetchStatus(by statusCode: Int, _ data: Data) -> NetworkResult { let decoder = JSONDecoder() - guard let decodedData = try? decoder.decode(GenericResponse.self, from: data) + guard let decodedData = try? decoder.decode(GenericResponse.self, from: data) else { return .pathErr } diff --git a/NADA-iOS-forRelease/Sources/ViewControllers/BottomSheet/AddGroupBottomSheetViewController.swift b/NADA-iOS-forRelease/Sources/ViewControllers/BottomSheet/AddGroupBottomSheetViewController.swift index 8eae2a60..a65b483e 100644 --- a/NADA-iOS-forRelease/Sources/ViewControllers/BottomSheet/AddGroupBottomSheetViewController.swift +++ b/NADA-iOS-forRelease/Sources/ViewControllers/BottomSheet/AddGroupBottomSheetViewController.swift @@ -11,6 +11,8 @@ import IQKeyboardManagerSwift class AddGroupBottomSheetViewController: CommonBottomSheetViewController, UITextFieldDelegate { // MARK: - Properties + var returnToGroupEditViewController: (() -> Void)? + // 그룹 추가 텍스트 필드 private let addGroupTextField: UITextField = { let textField = UITextField() @@ -97,29 +99,28 @@ extension AddGroupBottomSheetViewController { func textFieldShouldReturn(_ textField: UITextField) -> Bool { textField.resignFirstResponder() hideBottomSheetAndGoBack() + groupAddWithAPI(groupRequest: GroupAddRequest(userId: UserDefaults.standard.string(forKey: Const.UserDefaults.userID) ?? "", groupName: addGroupTextField.text ?? "")) + returnToGroupEditViewController?() + return true } } // MARK: - Network extension AddGroupBottomSheetViewController { - - func cardAddInGroupWithAPI(cardRequest: CardAddInGroupRequest) { - GroupAPI.shared.cardAddInGroup(cardRequest: cardRequest) { response in + func groupAddWithAPI(groupRequest: GroupAddRequest) { + GroupAPI.shared.groupAdd(groupRequest: groupRequest) { response in switch response { - case .success(let data): - if let group = data as? Groups { -// print(group) - // 그룹 추가 서버 통신 성공했을 떄 - } + case .success: + print("groupAddWithAPI - success") case .requestErr(let message): - print("cardAddInGroupWithAPI - requestErr: \(message)") + print("groupAddWithAPI - requestErr: \(message)") case .pathErr: - print("cardAddInGroupWithAPI - pathErr") + print("groupAddWithAPI - pathErr") case .serverErr: - print("cardAddInGroupWithAPI - serverErr") + print("groupAddWithAPI - serverErr") case .networkFail: - print("cardAddInGroupWithAPI - networkFail") + print("groupAddWithAPI - networkFail") } } } diff --git a/NADA-iOS-forRelease/Sources/ViewControllers/BottomSheet/GroupNameEditBottomSheetViewController.swift b/NADA-iOS-forRelease/Sources/ViewControllers/BottomSheet/GroupNameEditBottomSheetViewController.swift index 1640ad2e..d210be6a 100644 --- a/NADA-iOS-forRelease/Sources/ViewControllers/BottomSheet/GroupNameEditBottomSheetViewController.swift +++ b/NADA-iOS-forRelease/Sources/ViewControllers/BottomSheet/GroupNameEditBottomSheetViewController.swift @@ -14,6 +14,8 @@ class GroupNameEditBottomSheetViewController: CommonBottomSheetViewController, U // 넘어온 그룹 이름 데이터를 받는 변수 선언 var text: String = "" + var returnToGroupEditViewController: (() -> Void)? + var nowGroup: Group? // 그룹 추가 텍스트 필드 private let addGroupTextField: UITextField = { @@ -50,7 +52,6 @@ class GroupNameEditBottomSheetViewController: CommonBottomSheetViewController, U view.addSubview(addGroupTextField) setupLayout() - addGroupTextField.text = text } @@ -66,10 +67,34 @@ class GroupNameEditBottomSheetViewController: CommonBottomSheetViewController, U } } +// MARK: - Extensions extension GroupNameEditBottomSheetViewController { func textFieldShouldReturn(_ textField: UITextField) -> Bool { textField.resignFirstResponder() hideBottomSheetAndGoBack() + groupEditWithAPI(groupRequest: GroupEditRequest(groupId: nowGroup?.groupID ?? 0, groupName: addGroupTextField.text ?? "")) + returnToGroupEditViewController?() + return true } } + +// MARK: - Network +extension GroupNameEditBottomSheetViewController { + func groupEditWithAPI(groupRequest: GroupEditRequest) { + GroupAPI.shared.groupEdit(groupRequest: groupRequest) { response in + switch response { + case .success: + print("groupEditWithAPI - success") + case .requestErr(let message): + print("groupEditWithAPI - requestErr: \(message)") + case .pathErr: + print("groupEditWithAPI - pathErr") + case .serverErr: + print("groupEditWithAPI - serverErr") + case .networkFail: + print("groupEditWithAPI - networkFail") + } + } + } +} diff --git a/NADA-iOS-forRelease/Sources/ViewControllers/Group/GroupViewController.swift b/NADA-iOS-forRelease/Sources/ViewControllers/Group/GroupViewController.swift index 1c07b4c2..5f13746f 100644 --- a/NADA-iOS-forRelease/Sources/ViewControllers/Group/GroupViewController.swift +++ b/NADA-iOS-forRelease/Sources/ViewControllers/Group/GroupViewController.swift @@ -51,6 +51,7 @@ class GroupViewController: UIViewController { // 중간 그룹 이름들 나열된 뷰 @IBAction func pushToGroupEdit(_ sender: Any) { guard let nextVC = UIStoryboard.init(name: Const.Storyboard.Name.groupEdit, bundle: nil).instantiateViewController(withIdentifier: Const.ViewController.Identifier.groupEditViewController) as? GroupEditViewController else { return } + nextVC.serverGroups = self.serverGroups navigationController?.pushViewController(nextVC, animated: true) } @@ -72,13 +73,7 @@ class GroupViewController: UIViewController { super.viewDidLoad() registerCell() setUI() -// 그룹 삭제 서버 테스트 -// groupDeleteWithAPI(groupID: 1) -// 그룹 추가 서버 테스트 -// groupAddWithAPI(groupRequest: GroupAddRequest(userId: UserDefaults.standard.string(forKey: Const.UserDefaults.userID) ?? "", -// groupName: "SOPT")) -// 그룹 수정 서버 테스트 -// groupEditWithAPI(groupRequest: GroupEditRequest(groupId: 5, groupName: "수정나다")) + // 그룹 속 명함 조회 테스트 // cardListInGroupWithAPI(cardListInGroupRequest: CardListInGroupRequest(userId: "nada", groupId: 5, offset: 0)) // 명함 검색 테스트 @@ -144,57 +139,6 @@ extension GroupViewController { } } - func groupDeleteWithAPI(groupID: Int) { - GroupAPI.shared.groupDelete(groupID: groupID) { response in - switch response { - case .success: - print("groupDeleteWithAPI - success") - case .requestErr(let message): - print("groupDeleteWithAPI - requestErr: \(message)") - case .pathErr: - print("groupDeleteWithAPI - pathErr") - case .serverErr: - print("groupDeleteWithAPI - serverErr") - case .networkFail: - print("groupDeleteWithAPI - networkFail") - } - } - } - - func groupAddWithAPI(groupRequest: GroupAddRequest) { - GroupAPI.shared.groupAdd(groupRequest: groupRequest) { response in - switch response { - case .success: - print("groupAddWithAPI - success") - case .requestErr(let message): - print("groupAddWithAPI - requestErr: \(message)") - case .pathErr: - print("groupAddWithAPI - pathErr") - case .serverErr: - print("groupAddWithAPI - serverErr") - case .networkFail: - print("groupAddWithAPI - networkFail") - } - } - } - - func groupEditWithAPI(groupRequest: GroupEditRequest) { - GroupAPI.shared.groupEdit(groupRequest: groupRequest) { response in - switch response { - case .success: - print("groupEditWithAPI - success") - case .requestErr(let message): - print("groupEditWithAPI - requestErr: \(message)") - case .pathErr: - print("groupEditWithAPI - pathErr") - case .serverErr: - print("groupEditWithAPI - serverErr") - case .networkFail: - print("groupEditWithAPI - networkFail") - } - } - } - func cardListInGroupWithAPI(cardListInGroupRequest: CardListInGroupRequest) { GroupAPI.shared.cardListFetchInGroup(cardListInGroupRequest: cardListInGroupRequest) { response in switch response { diff --git a/NADA-iOS-forRelease/Sources/ViewControllers/GroupEdit/GroupEditViewController.swift b/NADA-iOS-forRelease/Sources/ViewControllers/GroupEdit/GroupEditViewController.swift index 9a570327..601c7dca 100644 --- a/NADA-iOS-forRelease/Sources/ViewControllers/GroupEdit/GroupEditViewController.swift +++ b/NADA-iOS-forRelease/Sources/ViewControllers/GroupEdit/GroupEditViewController.swift @@ -10,7 +10,7 @@ import UIKit class GroupEditViewController: UIViewController { // MARK: - Properties - var cardItems = ["SOPT", "동아리", "학교", "NADA NADA NADA NADA NADA"] + var serverGroups: Groups? // MARK: - @IBOutlet Properties @IBOutlet weak var groupEditTableView: UITableView! @@ -23,6 +23,14 @@ class GroupEditViewController: UIViewController { groupEditTableView.delegate = self groupEditTableView.dataSource = self + serverGroupList() + } + + override func viewWillAppear(_ animated: Bool) { + super.viewWillAppear(animated) + + self.groupEditTableView.reloadData() + } // MARK: - @IBAction Properties @@ -31,13 +39,15 @@ class GroupEditViewController: UIViewController { } @IBAction func presentToAddGroupBottom(_ sender: UIButton) { - // FIXME: - 서버 통신 시, cardItems에 GroupVC에서 통신했던 서버 내용을 담는 것으로 로직 수정 - if cardItems.count == 4 { + if serverGroups?.groups.count == 4 { makeOKAlert(title: "", message: "새로운 그룹은 최대 4개까지만 등록 가능합니다.") } else { let nextVC = AddGroupBottomSheetViewController() .setTitle("그룹 추가") .setHeight(184) + nextVC.returnToGroupEditViewController = { + self.groupListFetchWithAPI(userID: UserDefaults.standard.string(forKey: Const.UserDefaults.userID) ?? "") + } nextVC.modalPresentationStyle = .overFullScreen self.present(nextVC, animated: false, completion: nil) } @@ -56,7 +66,8 @@ extension GroupEditViewController: UITableViewDelegate { self.makeCancelDeleteAlert(title: "그룹 삭제", message: "해당 그룹에 있던 명함은\n미분류 그룹으로 이동합니다.", cancelAction: { _ in // 취소 눌렀을 때 액션이 들어갈 부분 }, deleteAction: { _ in - // + self.groupDeleteWithAPI(groupID: self.serverGroups?.groups[indexPath.row].groupID ?? 0) + self.groupEditTableView.reloadData() }) }) deleteAction.backgroundColor = .red @@ -72,8 +83,11 @@ extension GroupEditViewController: UITableViewDelegate { .setTitle("그룹명 변경") .setHeight(184) nextVC.modalPresentationStyle = .overFullScreen - nextVC.text = cardItems[indexPath.row] - + nextVC.text = serverGroups?.groups[indexPath.row].groupName ?? "" + nextVC.returnToGroupEditViewController = { + self.groupListFetchWithAPI(userID: UserDefaults.standard.string(forKey: Const.UserDefaults.userID) ?? "") + } + nextVC.nowGroup = serverGroups?.groups[indexPath.row] self.present(nextVC, animated: false, completion: nil) } @@ -82,14 +96,65 @@ extension GroupEditViewController: UITableViewDelegate { // MARK: - TableView DataSource extension GroupEditViewController: UITableViewDataSource { func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { - return cardItems.count + return serverGroups?.groups.count ?? 0 } func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { guard let serviceCell = tableView.dequeueReusableCell(withIdentifier: Const.Xib.groupEditTableViewCell, for: indexPath) as? GroupEditTableViewCell else { return UITableViewCell() } - serviceCell.initData(title: cardItems[indexPath.row]) + serviceCell.initData(title: serverGroups?.groups[indexPath.row].groupName ?? "") return serviceCell } } + +// MARK: - Extensions +extension GroupEditViewController { + func serverGroupList() { + serverGroups?.groups.remove(at: 0) + } +} + +// MARK: - Network +extension GroupEditViewController { + func groupListFetchWithAPI(userID: String) { + GroupAPI.shared.groupListFetch(userID: userID) { response in + switch response { + case .success(let data): + if let group = data as? Groups { + self.serverGroups = group + self.serverGroups?.groups.remove(at: 0) + self.groupEditTableView.reloadData() + } + case .requestErr(let message): + print("groupListFetchWithAPI - requestErr: \(message)") + case .pathErr: + print("groupListFetchWithAPI - pathErr") + case .serverErr: + print("groupListFetchWithAPI - serverErr") + case .networkFail: + print("groupListFetchWithAPI - networkFail") + } + } + } + + func groupDeleteWithAPI(groupID: Int) { + GroupAPI.shared.groupDelete(groupID: groupID) { response in + switch response { + case .success: + print("groupDeleteWithAPI - success") + self.groupListFetchWithAPI(userID: UserDefaults.standard.string(forKey: Const.UserDefaults.userID) ?? "") + self.groupEditTableView.reloadData() + case .requestErr(let message): + print("groupDeleteWithAPI - requestErr: \(message)") + case .pathErr: + print("groupDeleteWithAPI - pathErr") + case .serverErr: + print("groupDeleteWithAPI - serverErr") + case .networkFail: + print("groupDeleteWithAPI - networkFail") + } + } + } + +} diff --git a/NADA-iOS-forRelease/Sources/ViewControllers/Main/FrontViewController.swift b/NADA-iOS-forRelease/Sources/ViewControllers/Main/FrontViewController.swift index 908f3515..62a91fcd 100644 --- a/NADA-iOS-forRelease/Sources/ViewControllers/Main/FrontViewController.swift +++ b/NADA-iOS-forRelease/Sources/ViewControllers/Main/FrontViewController.swift @@ -34,6 +34,7 @@ class FrontViewController: UIViewController { super.viewWillAppear(animated) setCardDataModelList() + cardListFetchWithAPI(userID: "nada2", isList: false, offset: offset) } // MARK: - @IBAction Properties @@ -126,6 +127,7 @@ extension FrontViewController: VerticalCardSwiperDatasource { if cardDataList?.count != 0 { guard let cell = verticalCardSwiperView.dequeueReusableCell(withReuseIdentifier: Const.Xib.mainCardCell, for: index) as? MainCardCell else { return CardCell() } guard let cardDataList = cardDataList else { return CardCell() } + UserDefaults.standard.set(cardDataList[0].cardID, forKey: Const.UserDefaults.firstCardID) cell.initCell(cardDataModel: cardDataList[index]) cell.isShareable = true cell.setFrontCard() @@ -147,10 +149,10 @@ extension FrontViewController { case .success(let data): self.isInfiniteScroll = true - if let cardListLookUpRequest = data as? CardListLookUpRequest { + if let cardListLookUp = data as? CardListLookUp { // FIXME: - 로그 확인용. // print("✅cardListLookUpRequest", cardListLookUpRequest) - self.cardDataList?.append(contentsOf: cardListLookUpRequest.cards) + self.cardDataList?.append(contentsOf: cardListLookUp.cards) self.cardSwiper.reloadData() }