From 98a9840facce1d51d0e3bb0117dd328777bd411e Mon Sep 17 00:00:00 2001 From: Roy-wonji Date: Sun, 10 Dec 2023 19:24:52 +0900 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8[feat]:=20=20=20=EB=91=98=EB=9F=AC?= =?UTF-8?q?=EB=B3=B4=EA=B8=B0=20=EA=B8=B0=EB=8A=A5=EC=B6=94=EA=B0=80=20?= =?UTF-8?q?=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Project+Templete/Project+Templates.swift | 2 +- PingPong/Projects/App/Support/Info.plist | 2 +- .../ViewModel/CommonViewViewModel.swift | 2 +- .../FamousSayingBakeCardView.swift | 34 ++++++++-------- .../View/TabView/FamousSayingDetailView.swift | 35 ++++++++--------- .../Sources/UI/View/HomeView/HomeView.swift | 39 ++++++++++--------- 6 files changed, 59 insertions(+), 55 deletions(-) diff --git a/PingPong/Plugins/PingPongs/ProjectDescriptionHelpers/Project+Templete/Project+Templates.swift b/PingPong/Plugins/PingPongs/ProjectDescriptionHelpers/Project+Templete/Project+Templates.swift index bcdcac9a..93384a0a 100644 --- a/PingPong/Plugins/PingPongs/ProjectDescriptionHelpers/Project+Templete/Project+Templates.swift +++ b/PingPong/Plugins/PingPongs/ProjectDescriptionHelpers/Project+Templete/Project+Templates.swift @@ -349,7 +349,7 @@ extension String { } public static func appBuildVersion() -> String { - let buildVersion: String = "18" + let buildVersion: String = "21" return buildVersion } diff --git a/PingPong/Projects/App/Support/Info.plist b/PingPong/Projects/App/Support/Info.plist index 04235137..d3c686a9 100644 --- a/PingPong/Projects/App/Support/Info.plist +++ b/PingPong/Projects/App/Support/Info.plist @@ -32,7 +32,7 @@ CFBundleVersion - 20 + 21 FirebaseAppDelegateProxyEnabled INIntentsSupported diff --git a/PingPong/Projects/Core/Common/Sources/ViewModel/CommonViewViewModel.swift b/PingPong/Projects/Core/Common/Sources/ViewModel/CommonViewViewModel.swift index 4210954f..b1a33130 100644 --- a/PingPong/Projects/Core/Common/Sources/ViewModel/CommonViewViewModel.swift +++ b/PingPong/Projects/Core/Common/Sources/ViewModel/CommonViewViewModel.swift @@ -22,7 +22,7 @@ public class CommonViewViewModel: ObservableObject { isExplore = UserDefaults.standard.bool(forKey: "isExplore") } - @AppStorage("isFirstUserPOPUP") public var isFirstUserPOPUP: Bool = false + @AppStorage("isFirstUserPOPUP") public var isFirstUserPOPUP: Bool = true @Published public var isLoginCheck: Bool = false { didSet { diff --git a/PingPong/Projects/Feature/Bake/Sources/UI/HomeBakingView/FamousSayingBakeCardView.swift b/PingPong/Projects/Feature/Bake/Sources/UI/HomeBakingView/FamousSayingBakeCardView.swift index d6e94ff1..75222e37 100644 --- a/PingPong/Projects/Feature/Bake/Sources/UI/HomeBakingView/FamousSayingBakeCardView.swift +++ b/PingPong/Projects/Feature/Bake/Sources/UI/HomeBakingView/FamousSayingBakeCardView.swift @@ -312,26 +312,28 @@ struct FamousSayingBakeCardView: View { .foregroundColor(bakeViewModel.bakeCard?.isBookrmark ?? true ? colorSet.icon : colorSet.iconBackground) .onTapGesture { - if bakeViewModel.bakeCard != nil { - if bakeViewModel.bakeCard!.isBookrmark { - Task { - if let likeId = bakeViewModel.bakeCard?.likeId { - await viewModel.deleteLikeQuote(likeID: likeId) - bakeViewModel.bakeCard!.isBookrmark = false + if viewModel.isLoginCheck { + if bakeViewModel.bakeCard != nil { + if bakeViewModel.bakeCard!.isBookrmark { + Task { + if let likeId = bakeViewModel.bakeCard?.likeId { + await viewModel.deleteLikeQuote(likeID: likeId) + bakeViewModel.bakeCard!.isBookrmark = false + } } - } - } else { - Task { - await viewModel.quoteLikeRequest(userID: "\(authViewModel.userid)", quoteId: bakeViewModel.bakeCard!.qouteId) { - if let likeid = viewModel.homeBaseModel?.data { - bakeViewModel.addLike(qouteId: bakeViewModel.bakeCard!.qouteId, likeId: likeid) - bakeViewModel.bakeCard?.likeId = likeid + } else { + Task { + await viewModel.quoteLikeRequest(userID: "\(authViewModel.userid)", quoteId: bakeViewModel.bakeCard!.qouteId) { + if let likeid = viewModel.homeBaseModel?.data { + bakeViewModel.addLike(qouteId: bakeViewModel.bakeCard!.qouteId, likeId: likeid) + bakeViewModel.bakeCard?.likeId = likeid + } } + bakeViewModel.bakeCard!.isBookrmark = true + } - bakeViewModel.bakeCard!.isBookrmark = true - } - } + } } //TODO: 좋아요되도록 수정 // post.isBookrmark.toggle() diff --git a/PingPong/Projects/Feature/Core/Sources/UI/View/TabView/FamousSayingDetailView.swift b/PingPong/Projects/Feature/Core/Sources/UI/View/TabView/FamousSayingDetailView.swift index 0978c87b..a60f3f38 100644 --- a/PingPong/Projects/Feature/Core/Sources/UI/View/TabView/FamousSayingDetailView.swift +++ b/PingPong/Projects/Feature/Core/Sources/UI/View/TabView/FamousSayingDetailView.swift @@ -184,25 +184,24 @@ public struct FamousSayingDetailView: View { .padding(EdgeInsets(top: 0, leading: 0, bottom: 26, trailing: 16)) .foregroundColor(viewModel.selectedCard.isBookrmark ? colorSet.icon : colorSet.iconBackground) .onTapGesture { - print("??") - if viewModel.selectedCard.isBookrmark { - print("isBook", viewModel.selectedCard.likeId) - Task { - if let likeId = viewModel.selectedCard.likeId { - await viewModel.deleteLikeQuote(likeID: likeId) - viewModel.selectedCard.isBookrmark = false - print(viewModel.selectedCard.isBookrmark) - viewModel.removeLike(card: viewModel.selectedCard) + + if viewModel.isLoginCheck { + if viewModel.selectedCard.isBookrmark { + Task { + if let likeId = viewModel.selectedCard.likeId { + await viewModel.deleteLikeQuote(likeID: likeId) + viewModel.selectedCard.isBookrmark = false + viewModel.removeLike(card: viewModel.selectedCard) + } + } + } else { + Task { + await viewModel.quoteLikeRequest(userID: "\(authViewModel.userid)", quoteId: viewModel.selectedCard.qouteId, completion: { + viewModel.selectedCard.likeId = viewModel.homeBaseModel?.data + }) + viewModel.selectedCard.isBookrmark = true + viewModel.addLike(card: viewModel.selectedCard) } - } - } else { - print("isNotBook") - Task { - await viewModel.quoteLikeRequest(userID: "\(authViewModel.userid)", quoteId: viewModel.selectedCard.qouteId, completion: { - viewModel.selectedCard.likeId = viewModel.homeBaseModel?.data - }) - viewModel.selectedCard.isBookrmark = true - viewModel.addLike(card: viewModel.selectedCard) } } } diff --git a/PingPong/Projects/Feature/Home/Sources/UI/View/HomeView/HomeView.swift b/PingPong/Projects/Feature/Home/Sources/UI/View/HomeView/HomeView.swift index d82ee202..f4ff08d3 100644 --- a/PingPong/Projects/Feature/Home/Sources/UI/View/HomeView/HomeView.swift +++ b/PingPong/Projects/Feature/Home/Sources/UI/View/HomeView/HomeView.swift @@ -98,14 +98,15 @@ public struct HomeView: View { } } .onChange(of: viewModel.selectedCard.isBookrmark , perform: { newValue in - - homeViewModel.randomQuoteRequest(userID: "\(authViewModel.userid)") { - // 종아요일 때 - - for quoteContent in homeViewModel.homeRandomQuoteModel?.data?.content ?? [] { - let hashTags = viewModel.getHashtags(post: quoteContent) - viewModel.cards.append(CardInfomation(qouteId: quoteContent.quoteID ?? .zero, hashtags: hashTags, image: "", title: quoteContent.content ?? "", sources: quoteContent.author ?? "", isBookrmark: newValue, likeId: quoteContent.likeID)) + if viewModel.isLoginCheck { + homeViewModel.randomQuoteRequest(userID: "\(authViewModel.userid)") { + // 종아요일 때 + for quoteContent in homeViewModel.homeRandomQuoteModel?.data?.content ?? [] { + let hashTags = viewModel.getHashtags(post: quoteContent) + viewModel.cards.append(CardInfomation(qouteId: quoteContent.quoteID ?? .zero, hashtags: hashTags, image: "", title: quoteContent.content ?? "", sources: quoteContent.author ?? "", isBookrmark: newValue, likeId: quoteContent.likeID)) + + } } } }) @@ -321,18 +322,20 @@ public struct HomeView: View { .padding(EdgeInsets(top: 0, leading: 0, bottom: 26, trailing: 16)) .foregroundColor(card.isBookrmark ? colorSet.icon : colorSet.iconBackground) .onTapGesture { - if let idx = viewModel.cards.firstIndex(of: card) { - if viewModel.cards[idx].isBookrmark { - Task { - if let likeId = viewModel.cards[idx].likeId { - await viewModel.deleteLikeQuote(likeID: likeId) - viewModel.cards[idx].isBookrmark = false + if viewModel.isLoginCheck { + if let idx = viewModel.cards.firstIndex(of: card) { + if viewModel.cards[idx].isBookrmark { + Task { + if let likeId = viewModel.cards[idx].likeId { + await viewModel.deleteLikeQuote(likeID: likeId) + viewModel.cards[idx].isBookrmark = false + } + } + } else { + Task { + await viewModel.quoteLikeRequest(userID: "\(authViewModel.userid)", quoteId: card.qouteId, completion: {}) + viewModel.cards[idx].isBookrmark = true } - } - } else { - Task { - await viewModel.quoteLikeRequest(userID: "\(authViewModel.userid)", quoteId: card.qouteId, completion: {}) - viewModel.cards[idx].isBookrmark = true } } }