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

[FEAT] #224 - 그룹 편집 뷰 서버 연결 #229

Merged
merged 10 commits into from
Dec 26, 2021
8 changes: 5 additions & 3 deletions NADA-iOS-forRelease.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -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 */; };
Expand Down Expand Up @@ -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 */; };
Expand Down Expand Up @@ -153,7 +153,6 @@
3918F6652771682F00984648 /* NADA-iOS-forRelease.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "NADA-iOS-forRelease.entitlements"; sourceTree = "<group>"; };
3918F66627719C4B00984648 /* UserTokenReissueRequset.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserTokenReissueRequset.swift; sourceTree = "<group>"; };
3927A7D6275F2A9B008BCD2A /* UserDefaults.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserDefaults.swift; sourceTree = "<group>"; };
39288E11273F52B20072F403 /* CardListLookUpRequest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CardListLookUpRequest.swift; sourceTree = "<group>"; };
392F7FB2274621F1008CDBF5 /* MoreListTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MoreListTableViewCell.swift; sourceTree = "<group>"; };
392F7FB3274621F1008CDBF5 /* MoreListTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MoreListTableViewCell.xib; sourceTree = "<group>"; };
39317D2127646F8E00D87166 /* GroupNameEditBottomSheetViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GroupNameEditBottomSheetViewController.swift; sourceTree = "<group>"; };
Expand Down Expand Up @@ -199,6 +198,7 @@
39D88B632745FDD400A72164 /* TabBar.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = TabBar.storyboard; sourceTree = "<group>"; };
39D88B652745FE5F00A72164 /* TabBarViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TabBarViewController.swift; sourceTree = "<group>"; };
39D88B6A274600B100A72164 /* CommonBottomSheetViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CommonBottomSheetViewController.swift; sourceTree = "<group>"; };
39DC06992778BEFB00C8ECCC /* CardListLookUp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CardListLookUp.swift; sourceTree = "<group>"; };
39F5A3CE271461EA00191F94 /* BackCardCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BackCardCell.swift; sourceTree = "<group>"; };
39F5A3CF271461EA00191F94 /* BackCardCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = BackCardCell.xib; sourceTree = "<group>"; };
4A2183AE0E469153221624A0 /* Pods_NADA_iOS_forRelease.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_NADA_iOS_forRelease.framework; sourceTree = BUILT_PRODUCTS_DIR; };
Expand Down Expand Up @@ -680,6 +680,8 @@
3981148D273BEBB300E28630 /* CardListEditRequest.swift */,
3981148F273BEBCE00E28630 /* CardListRequest.swift */,
39288E11273F52B20072F403 /* CardListLookUpRequest.swift */,
39584580273E951C009CC6B9 /* MainListRequest.swift */,
39DC06992778BEFB00C8ECCC /* CardListLookUp.swift */,
);
path = Card;
sourceTree = "<group>";
Expand Down Expand Up @@ -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 */,
Expand Down Expand Up @@ -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 */,
);
Expand Down
1 change: 1 addition & 0 deletions NADA-iOS-forRelease/Resouces/Constants/UserDefaults.swift
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,6 @@ extension Const {
static let userID = "userID"
static let isFirstCard = "isFirstCard"
static let isOnboarding = "isOnboarding"
static let firstCardID = "firstCardID"
}
}
14 changes: 14 additions & 0 deletions NADA-iOS-forRelease/Sources/NetworkModel/Card/CardListLookUp.swift
Original file line number Diff line number Diff line change
@@ -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]
}

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ public class CardAPI {
private func judgeMainListFetchStatus(by statusCode: Int, _ data: Data) -> NetworkResult<Any> {

let decoder = JSONDecoder()
guard let decodedData = try? decoder.decode(GenericResponse<CardListLookUpRequest>.self, from: data)
guard let decodedData = try? decoder.decode(GenericResponse<CardListLookUp>.self, from: data)
else {
return .pathErr
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ import IQKeyboardManagerSwift
class AddGroupBottomSheetViewController: CommonBottomSheetViewController, UITextFieldDelegate {

// MARK: - Properties
var returnToGroupEditViewController: (() -> Void)?

// 그룹 추가 텍스트 필드
private let addGroupTextField: UITextField = {
let textField = UITextField()
Expand Down Expand Up @@ -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")
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ class GroupNameEditBottomSheetViewController: CommonBottomSheetViewController, U

// 넘어온 그룹 이름 데이터를 받는 변수 선언
var text: String = ""
var returnToGroupEditViewController: (() -> Void)?
var nowGroup: Group?

// 그룹 추가 텍스트 필드
private let addGroupTextField: UITextField = {
Expand Down Expand Up @@ -50,7 +52,6 @@ class GroupNameEditBottomSheetViewController: CommonBottomSheetViewController, U
view.addSubview(addGroupTextField)

setupLayout()

addGroupTextField.text = text
}

Expand All @@ -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")
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -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)
}
Expand All @@ -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))
// 명함 검색 테스트
Expand Down Expand Up @@ -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 {
Expand Down
Loading