Skip to content

Commit a25cbba

Browse files
committed
๐Ÿ› ์›Œ์ผ€์ด์…˜ ๋๋‚ด๊ธฐ ์˜ค๋ฅ˜ ์ˆ˜์ •
1 parent 490eb39 commit a25cbba

File tree

3 files changed

+21
-7
lines changed

3 files changed

+21
-7
lines changed

โ€ŽWorkade/Views&ViewModels/MyPage/StickerCollectionViewCell.swift

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ class StickerCollectionViewCell: UICollectionViewCell {
2222

2323
let stickerImage: UIImageView = {
2424
let image = UIImageView()
25+
image.contentMode = .scaleAspectFit
2526
image.translatesAutoresizingMaskIntoConstraints = false
2627

2728
return image
@@ -106,6 +107,6 @@ class StickerCollectionViewCell: UICollectionViewCell {
106107

107108
let labelsHeight = nameLabelHeight + dataLabelHeight + locationLabelHeight
108109

109-
return labelsHeight + 6 + stickerImageWidth
110+
return labelsHeight + 32 + stickerImageWidth
110111
}
111112
}

โ€ŽWorkade/Views&ViewModels/Workation/StickerSheet/StickerSheetViewController.swift

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,9 +66,18 @@ class StickerSheetViewController: UIViewController {
6666
}()
6767

6868
@objc private func backgroundViewTapped(_ tapRecognizer: UITapGestureRecognizer) {
69-
if step < stickers.count {
69+
if step < stickers.count-1 {
7070
step += 1
7171
} else {
72+
Task {
73+
guard var user = UserManager.shared.user.value else { return }
74+
if user.stickers == nil {
75+
user.stickers = stickers
76+
} else {
77+
user.stickers?.append(contentsOf: stickers)
78+
}
79+
try await FirestoreDAO.shared.createUser(user: user)
80+
}
7281
presentingViewController?.dismiss(animated: true)
7382
self.viewDidDismiss?()
7483
}

โ€ŽWorkade/Views&ViewModels/Workation/WorkationViewController.swift

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ final class WorkationViewController: UIViewController {
1515
var dismissAction: (() -> Void)?
1616

1717
var cancellable = Set<AnyCancellable>()
18+
var activeUserCancellable: AnyCancellable? = nil
1819

1920
let canGetStickers: [StickerTitle] = [
2021
.halLaBong, .dolHaReuBang, .horse, .halLaSan
@@ -200,8 +201,9 @@ final class WorkationViewController: UIViewController {
200201
alert.addAction(UIAlertAction(title: "์ข…๋ฃŒ", style: .destructive, handler: { [weak self] _ in
201202
Task { [weak self] in
202203
guard let self = self, var user = UserManager.shared.user.value else { return }
203-
try await FirestoreDAO.shared.deleteActiveUser(userID: user.id, region: self.region)
204-
try await FirestoreDAO.shared.createUser(user: User(id: user.id, name: user.name, email: user.email, job: user.job, stickers: user.stickers, activeRegion: nil))
204+
self.activeUserCancellable?.cancel()
205+
try? await FirestoreDAO.shared.deleteActiveUser(userID: user.id, region: self.region)
206+
try? await FirestoreDAO.shared.createUser(user: User(id: user.id, name: user.name, email: user.email, job: user.job, stickers: user.stickers, activeRegion: nil))
205207
}
206208

207209
UIView.animate(withDuration: 0.3, delay: 0) { [weak self] in
@@ -453,14 +455,17 @@ extension WorkationViewController {
453455
DispatchQueue.main.async {
454456
let offsetDate = Date().timeIntervalSince(user.startDate)
455457
let day = Int(ceil(offsetDate/86400))
458+
if let storedDay = user.progressDay {
459+
self.compareProgressDay(presentDay: day, storedDay: storedDay)
460+
}
456461
user.progressDay = day
457462
self.updateActiveUser(user: user)
458463
self.dayLabel.text = "\(day)์ผ์งธ"
459464
}
460465
}
461466
.store(in: &cancellable)
462467

463-
UserManager.shared.$activeMyInfo
468+
activeUserCancellable = UserManager.shared.$activeMyInfo
464469
.sink { [weak self] user in
465470
guard let self = self, var user = user else { return }
466471
DispatchQueue.main.async {
@@ -477,12 +482,11 @@ extension WorkationViewController {
477482
self.loginPaneView.isHidden = true
478483
}
479484
}
480-
.store(in: &cancellable)
481485
}
482486

483487
private func updateActiveUser(user: ActiveUser) {
484488
Task {
485-
try await FirestoreDAO.shared.updateActiveUser(user: user)
489+
try await FirestoreDAO.shared.createActiveUser(user: user)
486490
}
487491
}
488492

0 commit comments

Comments
ย (0)