Skip to content

Commit 669a9a7

Browse files
authored
Merge pull request #262 from OMZigak/feat/#261-my-ready-status
[feat] 준비 현황 API 구현
2 parents b8e9136 + fee1fea commit 669a9a7

File tree

14 files changed

+392
-193
lines changed

14 files changed

+392
-193
lines changed

KkuMulKum.xcodeproj/project.pbxproj

-12
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,6 @@
151151
DDAF1C922C3D6E3D008A37D3 /* PromiseInfoViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDAF1C8C2C3D6E3D008A37D3 /* PromiseInfoViewController.swift */; };
152152
DDAF1C932C3D6E3D008A37D3 /* PagePromiseViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDAF1C8D2C3D6E3D008A37D3 /* PagePromiseViewController.swift */; };
153153
DDB0D7D32C469C77000CF782 /* PagePromiseSegmentedControl.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB0D7D22C469C77000CF782 /* PagePromiseSegmentedControl.swift */; };
154-
DDB0D7D52C46C496000CF782 /* PromiseInfoService.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB0D7D42C46C496000CF782 /* PromiseInfoService.swift */; };
155154
DDB0D7D82C46C5FA000CF782 /* PromiseInfoViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB0D7D72C46C5FA000CF782 /* PromiseInfoViewModel.swift */; };
156155
DDE7D2C62C47D2BB005A921F /* MeetingTargetType.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDE7D2C52C47D2BB005A921F /* MeetingTargetType.swift */; };
157156
DDE7D2CA2C47EE81005A921F /* PromiseTargetType.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDE7D2C92C47EE81005A921F /* PromiseTargetType.swift */; };
@@ -342,7 +341,6 @@
342341
DDAF1C8C2C3D6E3D008A37D3 /* PromiseInfoViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PromiseInfoViewController.swift; sourceTree = "<group>"; };
343342
DDAF1C8D2C3D6E3D008A37D3 /* PagePromiseViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PagePromiseViewController.swift; sourceTree = "<group>"; };
344343
DDB0D7D22C469C77000CF782 /* PagePromiseSegmentedControl.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PagePromiseSegmentedControl.swift; sourceTree = "<group>"; };
345-
DDB0D7D42C46C496000CF782 /* PromiseInfoService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PromiseInfoService.swift; sourceTree = "<group>"; };
346344
DDB0D7D72C46C5FA000CF782 /* PromiseInfoViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PromiseInfoViewModel.swift; sourceTree = "<group>"; };
347345
DDE7D2C52C47D2BB005A921F /* MeetingTargetType.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MeetingTargetType.swift; sourceTree = "<group>"; };
348346
DDE7D2C92C47EE81005A921F /* PromiseTargetType.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PromiseTargetType.swift; sourceTree = "<group>"; };
@@ -801,7 +799,6 @@
801799
DD3976912C41CAF900E2A4C4 /* PromiseInfo */ = {
802800
isa = PBXGroup;
803801
children = (
804-
DDB0D7DA2C46D43A000CF782 /* Service */,
805802
DD3976922C41CBD900E2A4C4 /* ViewController */,
806803
DDB0D7D92C46C5FF000CF782 /* ViewModel */,
807804
DD3976932C41CBDF00E2A4C4 /* View */,
@@ -1132,14 +1129,6 @@
11321129
path = ViewModel;
11331130
sourceTree = "<group>";
11341131
};
1135-
DDB0D7DA2C46D43A000CF782 /* Service */ = {
1136-
isa = PBXGroup;
1137-
children = (
1138-
DDB0D7D42C46C496000CF782 /* PromiseInfoService.swift */,
1139-
);
1140-
path = Service;
1141-
sourceTree = "<group>";
1142-
};
11431132
DDE7D2BE2C470A58005A921F /* TargetType */ = {
11441133
isa = PBXGroup;
11451134
children = (
@@ -1746,7 +1735,6 @@
17461735
DEFBEBD92C46E4C200437188 /* AddPromiseCompleteView.swift in Sources */,
17471736
DEFBEBDB2C46FD5700437188 /* AddPromiseResponseModel.swift in Sources */,
17481737
DD4393772C412F4500EC1799 /* CreateMeetingView.swift in Sources */,
1749-
DDB0D7D52C46C496000CF782 /* PromiseInfoService.swift in Sources */,
17501738
789873342C3D1A7B00435E96 /* LoginView.swift in Sources */,
17511739
782B40822C3E4925008B0CA7 /* NicknameViewModel.swift in Sources */,
17521740
A3FB18592C3BF77D001483E5 /* MeetingInfoResponseModel.swift in Sources */,

KkuMulKum/Resource/Assets.xcassets/Image/img_empty_tardy.imageset/Contents.json

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,17 @@
11
{
22
"images" : [
33
{
4-
"filename" : "img_empty_tardy.svg",
4+
"filename" : "Layer_1.png",
55
"idiom" : "universal",
66
"scale" : "1x"
77
},
88
{
9+
"filename" : "[email protected]",
910
"idiom" : "universal",
1011
"scale" : "2x"
1112
},
1213
{
14+
"filename" : "[email protected]",
1315
"idiom" : "universal",
1416
"scale" : "3x"
1517
}
Loading
Loading
Loading

KkuMulKum/Resource/Assets.xcassets/Image/img_empty_tardy.imageset/img_empty_tardy.svg

-14
This file was deleted.

KkuMulKum/Source/MeetingCreate/CreateMeeting/ViewController/CreateMeetingViewController.swift

+2
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,8 @@ private extension CreateMeetingViewController {
149149

150150
@objc
151151
private func copyButtonDidTapped() {
152+
UIPasteboard.general.string = createMeetingViewModel.inviteCode.value
153+
152154
let finishCreateViewController = FinishCreateViewController(meetingID: createMeetingViewModel.meetingID)
153155

154156
navigationController?.pushViewController(finishCreateViewController, animated: true)

KkuMulKum/Source/Promise/PromiseInfo/Service/PromiseInfoService.swift

-33
This file was deleted.

KkuMulKum/Source/Promise/ReadyStatus/Service/ReadyStatusServiceType.swift

+57
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,36 @@ import Foundation
1010
protocol ReadyStatusServiceType {
1111
func fetchMyReadyStatus(with promiseID: Int) async throws -> ResponseBodyDTO<MyReadyStatusModel>?
1212
func fetchPromiseParticipantList(with promiseID: Int) async throws -> ResponseBodyDTO<PromiseParticipantListModel>?
13+
func updatePreparationStatus(with promiseID: Int) async throws -> ResponseBodyDTO<EmptyModel>?
14+
func updateDepartureStatus(with promiseID: Int) async throws -> ResponseBodyDTO<EmptyModel>?
15+
func updateArrivalStatus(with promiseID: Int) async throws -> ResponseBodyDTO<EmptyModel>?
1316
}
1417

1518
extension PromiseService: ReadyStatusServiceType {
19+
func updatePreparationStatus(with promiseID: Int) async throws -> ResponseBodyDTO<EmptyModel>? {
20+
return try await request(
21+
with: .updatePreparationStatus(
22+
promiseID: promiseID
23+
)
24+
)
25+
}
26+
27+
func updateDepartureStatus(with promiseID: Int) async throws -> ResponseBodyDTO<EmptyModel>? {
28+
return try await request(
29+
with: .updateDepartureStatus(
30+
promiseID: promiseID
31+
)
32+
)
33+
}
34+
35+
func updateArrivalStatus(with promiseID: Int) async throws -> ResponseBodyDTO<EmptyModel>? {
36+
return try await request(
37+
with: .updateArrivalStatus(
38+
promiseID: promiseID
39+
)
40+
)
41+
}
42+
1643
func fetchMyReadyStatus(with promiseID: Int) async throws -> ResponseBodyDTO<MyReadyStatusModel>? {
1744
return try await request(
1845
with: .fetchMyReadyStatus(
@@ -31,6 +58,36 @@ extension PromiseService: ReadyStatusServiceType {
3158
}
3259

3360
final class MockReadyStatusService: ReadyStatusServiceType {
61+
func updatePreparationStatus(with promiseID: Int) async throws -> ResponseBodyDTO<EmptyModel>? {
62+
let mockData = EmptyModel()
63+
64+
return ResponseBodyDTO(
65+
success: true,
66+
data: mockData,
67+
error: nil
68+
)
69+
}
70+
71+
func updateDepartureStatus(with promiseID: Int) async throws -> ResponseBodyDTO<EmptyModel>? {
72+
let mockData = EmptyModel()
73+
74+
return ResponseBodyDTO(
75+
success: true,
76+
data: mockData,
77+
error: nil
78+
)
79+
}
80+
81+
func updateArrivalStatus(with promiseID: Int) async throws -> ResponseBodyDTO<EmptyModel>? {
82+
let mockData = EmptyModel()
83+
84+
return ResponseBodyDTO(
85+
success: true,
86+
data: mockData,
87+
error: nil
88+
)
89+
}
90+
3491
func fetchMyReadyStatus(with promiseID: Int) -> ResponseBodyDTO<MyReadyStatusModel>? {
3592
let mockData = MyReadyStatusModel(
3693
promiseTime: "",

KkuMulKum/Source/Promise/ReadyStatus/View/OurReadyStatusCollectionViewCell.swift

+2
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ import UIKit
1010
class OurReadyStatusCollectionViewCell: BaseCollectionViewCell {
1111
var profileImageView: UIImageView = UIImageView(image: .imgProfile).then {
1212
$0.contentMode = .scaleAspectFill
13+
$0.layer.cornerRadius = Screen.height(44) / 2
14+
$0.clipsToBounds = true
1315
}
1416

1517
let nameLabel: UILabel = UILabel().then {

0 commit comments

Comments
 (0)