Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
b041045
[Feat] #224 - 삭제 기능 이벤트 구현
thingineeer Dec 10, 2023
fadd42a
[Feat] #224 - 페이지 네이션 코드 수정
thingineeer Dec 10, 2023
584a6c6
[Feat] #224 - 업로드 버튼 레이아웃 변경
thingineeer Dec 13, 2023
6517c29
[refactor] #224 - 스크롤 이벤트 함수로 분리
thingineeer Dec 13, 2023
ddcaa1c
[Fix] #224 - 업로드 버튼 scale 값 조정
thingineeer Dec 13, 2023
50c85e8
Merge branch 'develop' into #224---코스-발견-이벤트-처리-해결
thingineeer Dec 13, 2023
6ff3585
[Add] #224 - GoogleService.info 그룹 추가
thingineeer Dec 13, 2023
7585a0c
[Feat] #224 - setMarathonCourseSelection 수정
thingineeer Dec 13, 2023
58547cd
[Chore] #224 - totalPage 기능 삭제
thingineeer Dec 13, 2023
5511b75
[Chore] #224 - 상속 없는 클래스 final 선언
thingineeer Dec 13, 2023
2ba0418
[Chore] #224 - 사용하지 않은 파일 제거
thingineeer Dec 13, 2023
79ad34e
[Fix] #224 - 마이페이지 UI 수정
thingineeer Dec 13, 2023
f1073e9
[Feat] #224 - 유저 프로필 터치 영역 스택뷰로 구현
thingineeer Dec 13, 2023
9059037
[Feat] #224 - 스크랩 0일시 scrapCountLabel 안보이게 하는 기능 추가
thingineeer Dec 13, 2023
fbb7c92
[Feat] #224 - privateCourse title 기능 구현
thingineeer Dec 14, 2023
5859798
[Feat] #224 - privateCourse title PATCH 기능 구현
thingineeer Dec 14, 2023
a97c28c
[Feat] #224 - 마라톤 스크랩 서버 통신 코드 추가
thingineeer Dec 14, 2023
2ee47b4
[Chore] #224 - 코스 발견 Section 이름 변경
thingineeer Dec 14, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 4 additions & 15 deletions Runnect-iOS/Runnect-iOS.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,12 @@
71288ED32B26ED2500D6C921 /* UserUploadedLabelCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71288ED22B26ED2500D6C921 /* UserUploadedLabelCell.swift */; };
712F661D2A7B7BAB00D9539B /* Config.swift in Sources */ = {isa = PBXBuildFile; fileRef = 712F661C2A7B7BAB00D9539B /* Config.swift */; };
7136BF8A2AF921A900679364 /* CustomBottomSheetVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7136BF892AF921A900679364 /* CustomBottomSheetVC.swift */; };
713A98F02B29DD9900189B3C /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 713A98EF2B29DD9900189B3C /* GoogleService-Info.plist */; };
717916DA2B13613B009CEF97 /* MarathonListResponseDto.swift in Sources */ = {isa = PBXBuildFile; fileRef = 717916D92B13613B009CEF97 /* MarathonListResponseDto.swift */; };
717916DE2B137DC3009CEF97 /* TotalPageCountDto.swift in Sources */ = {isa = PBXBuildFile; fileRef = 717916DD2B137DC3009CEF97 /* TotalPageCountDto.swift */; };
71BAD06A2B24CECC0061E31D /* UserProfileDto.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71BAD0692B24CECC0061E31D /* UserProfileDto.swift */; };
71BAD06C2B24D1F70061E31D /* UserProfileVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71BAD06B2B24D1F70061E31D /* UserProfileVC.swift */; };
71F7804E2B0893B600B53253 /* MarathonTitleCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71F7804D2B0893B600B53253 /* MarathonTitleCollectionViewCell.swift */; };
71F780502B0893D700B53253 /* MarathonMapCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71F7804F2B0893D700B53253 /* MarathonMapCollectionViewCell.swift */; };
71F7BF072B0CDFE300B752B3 /* MarathonCourseListCVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71F7BF062B0CDFE300B752B3 /* MarathonCourseListCVC.swift */; };
A3305A97296EF58C000B1A10 /* GoalRewardInfoDto.swift in Sources */ = {isa = PBXBuildFile; fileRef = A3305A96296EF58C000B1A10 /* GoalRewardInfoDto.swift */; };
A3BC2F2B2962C3D500198261 /* GoalRewardInfoVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = A3BC2F2A2962C3D500198261 /* GoalRewardInfoVC.swift */; };
A3BC2F2D2962C3F200198261 /* ActivityRecordInfoVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = A3BC2F2C2962C3F200198261 /* ActivityRecordInfoVC.swift */; };
Expand Down Expand Up @@ -171,7 +170,6 @@
DA97A033296E65D80086760E /* CourseUploadingRequestDto.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA97A032296E65D80086760E /* CourseUploadingRequestDto.swift */; };
DAD5A3D8296C6D9600C8166B /* AdImageCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAD5A3D7296C6D9600C8166B /* AdImageCollectionViewCell.swift */; };
DAD5A3DA296C6DA500C8166B /* TitleCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAD5A3D9296C6DA500C8166B /* TitleCollectionViewCell.swift */; };
DAD5A3DC296C6DB800C8166B /* MapCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAD5A3DB296C6DB800C8166B /* MapCollectionViewCell.swift */; };
DAD5A3E2296D4C6500C8166B /* PickedMapListResponseDto.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAD5A3E1296D4C6500C8166B /* PickedMapListResponseDto.swift */; };
/* End PBXBuildFile section */

Expand All @@ -189,14 +187,12 @@
71288ED22B26ED2500D6C921 /* UserUploadedLabelCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserUploadedLabelCell.swift; sourceTree = "<group>"; };
712F661C2A7B7BAB00D9539B /* Config.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Config.swift; sourceTree = "<group>"; };
7136BF892AF921A900679364 /* CustomBottomSheetVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CustomBottomSheetVC.swift; sourceTree = "<group>"; };
713A98EF2B29DD9900189B3C /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = "<group>"; };
717916D92B13613B009CEF97 /* MarathonListResponseDto.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MarathonListResponseDto.swift; sourceTree = "<group>"; };
717916DD2B137DC3009CEF97 /* TotalPageCountDto.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TotalPageCountDto.swift; sourceTree = "<group>"; };
71BAD0692B24CECC0061E31D /* UserProfileDto.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserProfileDto.swift; sourceTree = "<group>"; };
71BAD06B2B24D1F70061E31D /* UserProfileVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserProfileVC.swift; sourceTree = "<group>"; };
71F7804D2B0893B600B53253 /* MarathonTitleCollectionViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MarathonTitleCollectionViewCell.swift; sourceTree = "<group>"; };
71F7804F2B0893D700B53253 /* MarathonMapCollectionViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MarathonMapCollectionViewCell.swift; sourceTree = "<group>"; };
71F7BF062B0CDFE300B752B3 /* MarathonCourseListCVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MarathonCourseListCVC.swift; sourceTree = "<group>"; };

A3305A96296EF58C000B1A10 /* GoalRewardInfoDto.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GoalRewardInfoDto.swift; sourceTree = "<group>"; };
A3BC2F2A2962C3D500198261 /* GoalRewardInfoVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GoalRewardInfoVC.swift; sourceTree = "<group>"; };
A3BC2F2C2962C3F200198261 /* ActivityRecordInfoVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ActivityRecordInfoVC.swift; sourceTree = "<group>"; };
Expand Down Expand Up @@ -355,7 +351,6 @@
DA97A032296E65D80086760E /* CourseUploadingRequestDto.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CourseUploadingRequestDto.swift; sourceTree = "<group>"; };
DAD5A3D7296C6D9600C8166B /* AdImageCollectionViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdImageCollectionViewCell.swift; sourceTree = "<group>"; };
DAD5A3D9296C6DA500C8166B /* TitleCollectionViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TitleCollectionViewCell.swift; sourceTree = "<group>"; };
DAD5A3DB296C6DB800C8166B /* MapCollectionViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MapCollectionViewCell.swift; sourceTree = "<group>"; };
DAD5A3E1296D4C6500C8166B /* PickedMapListResponseDto.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PickedMapListResponseDto.swift; sourceTree = "<group>"; };
E837271A78E1C0A0C30789BF /* Pods-Runnect-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runnect-iOS.release.xcconfig"; path = "Target Support Files/Pods-Runnect-iOS/Pods-Runnect-iOS.release.xcconfig"; sourceTree = "<group>"; };
/* End PBXFileReference section */
Expand Down Expand Up @@ -766,7 +761,6 @@
71F7804D2B0893B600B53253 /* MarathonTitleCollectionViewCell.swift */,
71F7804F2B0893D700B53253 /* MarathonMapCollectionViewCell.swift */,
DAD5A3D9296C6DA500C8166B /* TitleCollectionViewCell.swift */,
DAD5A3DB296C6DB800C8166B /* MapCollectionViewCell.swift */,
CE17F0432961C3D600E1DED0 /* VC */,
);
path = Views;
Expand Down Expand Up @@ -863,7 +857,7 @@
CE6655A9295D7FAA00C64E12 /* Network */,
CE6655A8295D7F7D00C64E12 /* Presentation */,
CE4545D6295D7AF5003201E1 /* Info.plist */,
713BA40A2B218AF8009091A8 /* GoogleService-Info.plist */,
713A98EF2B29DD9900189B3C /* GoogleService-Info.plist */,
);
path = "Runnect-iOS";
sourceTree = "<group>";
Expand Down Expand Up @@ -1198,7 +1192,6 @@
isa = PBXGroup;
children = (
CE6B63D2296725E6003F900F /* CourseListCVC.swift */,
71F7BF062B0CDFE300B752B3 /* MarathonCourseListCVC.swift */,
);
path = CVC;
sourceTree = "<group>";
Expand Down Expand Up @@ -1251,7 +1244,6 @@
children = (
717916D92B13613B009CEF97 /* MarathonListResponseDto.swift */,
DAD5A3E1296D4C6500C8166B /* PickedMapListResponseDto.swift */,
717916DD2B137DC3009CEF97 /* TotalPageCountDto.swift */,
);
path = ResponseDto;
sourceTree = "<group>";
Expand Down Expand Up @@ -1319,7 +1311,7 @@
files = (
CE665615295D989A00C64E12 /* .swiftlint.yml in Resources */,
CE17F0342961BEF800E1DED0 /* Pretendard-Bold.otf in Resources */,
713BA40B2B218AF8009091A8 /* GoogleService-Info.plist in Resources */,
713A98F02B29DD9900189B3C /* GoogleService-Info.plist in Resources */,
CE17F0352961BEF800E1DED0 /* Pretendard-SemiBold.otf in Resources */,
CE17F0332961BEF800E1DED0 /* Pretendard-Medium.otf in Resources */,
CE6655BF295D82E200C64E12 /* .gitkeep in Resources */,
Expand Down Expand Up @@ -1492,12 +1484,10 @@
A3D1A77E29CF09B600DD54EC /* SignInResponseDto.swift in Sources */,
CE21C028299E5FFC00F62AF5 /* PublicCourseRouter.swift in Sources */,
CE18E894296C79B900FEB569 /* CourseDrawingRequestDto.swift in Sources */,
71F7BF072B0CDFE300B752B3 /* MarathonCourseListCVC.swift in Sources */,
DA20D84E2966A9B300F1581F /* CourseSearchVC.swift in Sources */,
CE1006572968230800FD31FB /* DepartureLocationModel.swift in Sources */,
CECA695C296E61D6002AF05C /* PrivateCourseNotUploadedResponseDto.swift in Sources */,
CE6655EC295D88D000C64E12 /* UITableView+.swift in Sources */,
717916DE2B137DC3009CEF97 /* TotalPageCountDto.swift in Sources */,
CEEC6B3A2961C4F300D00E1E /* CourseDrawingHomeVC.swift in Sources */,
CEB0BCBC29D123350048CCD5 /* GuideView.swift in Sources */,
CEC2A6902962B06C00160BF7 /* convertLocationObject.swift in Sources */,
Expand All @@ -1515,7 +1505,6 @@
CE665608295D921500C64E12 /* setImage.swift in Sources */,
CE146770296568DC00DCEA1B /* RunTrackingVC.swift in Sources */,
DA20D849296697B400F1581F /* CourseUploadVC.swift in Sources */,
DAD5A3DC296C6DB800C8166B /* MapCollectionViewCell.swift in Sources */,
CE665612295D92E400C64E12 /* UserDefaultWrapper.swift in Sources */,
A3BC2F3A2963D0ED00198261 /* ActivityRecordInfoTVC.swift in Sources */,
CE665610295D92C200C64E12 /* setTextLineHeight.swift in Sources */,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ struct marathonCourse: Codable {
let id, courseId: Int
let title: String
let image: String
let scrap: Bool?
var scrap: Bool?
let departure: MarathonDeparture
}

Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ struct PrivateCourseResponseDto: Codable {

struct PrivateCourse: Codable {
let id: Int
let title: String
let image, createdAt: String
let distance: Float?
let path: [[Double]]?
Expand Down
12 changes: 10 additions & 2 deletions Runnect-iOS/Runnect-iOS/Network/Router/CourseRouter.swift
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ enum CourseRouter {
case getAllPrivateCourse
case getPrivateCourseNotUploaded
case getCourseDetail(courseId: Int)
case updateCourseTitle(courseId: Int, title: String)
case deleteCourse(courseIdList: [Int])
}

Expand All @@ -34,6 +35,8 @@ extension CourseRouter: TargetType {
return "/course/user"
case .getPrivateCourseNotUploaded:
return "/course/private/user"
case .updateCourseTitle(let courseId, _):
return "/course/\(courseId)"
case .getCourseDetail(let courseId):
return "/course/detail/\(courseId)"
case .deleteCourse:
Expand All @@ -43,10 +46,12 @@ extension CourseRouter: TargetType {

var method: Moya.Method {
switch self {
case .uploadCourseDrawing:
return .post
case .getAllPrivateCourse, .getPrivateCourseNotUploaded, .getCourseDetail:
return .get
case .uploadCourseDrawing:
return .post
case .updateCourseTitle:
return .patch
case .deleteCourse:
return .put
}
Expand Down Expand Up @@ -86,6 +91,9 @@ extension CourseRouter: TargetType {
}

return .uploadMultipart(multipartFormData)
case .updateCourseTitle(_, let title):
return .requestParameters(parameters: ["title": title], encoding: JSONEncoding.default)

case .deleteCourse(let courseIdList):
return .requestParameters(parameters: ["courseIdList": courseIdList], encoding: JSONEncoding.default)
case .getAllPrivateCourse, .getPrivateCourseNotUploaded, .getCourseDetail:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ enum PublicCourseRouter {
case getCourseData(pageNo: Int, sort: String)
case getCourseSearchData(keyword: String)
case getMarathonCourseData
case getTotalPageCount
case courseUploadingData(param: CourseUploadingRequestDto)
case getUploadedCourseDetail(publicCourseId: Int)
case getUploadedCourseInfo
Expand All @@ -37,8 +36,6 @@ extension PublicCourseRouter: TargetType {
return "/public-course/marathon"
case .getCourseSearchData:
return "/public-course/search"
case .getTotalPageCount:
return "public-course/total-page-count"
case .getUploadedCourseDetail(let publicCourseId):
return "/public-course/detail/\(publicCourseId)"
case .getUploadedCourseInfo:
Expand All @@ -52,7 +49,7 @@ extension PublicCourseRouter: TargetType {

var method: Moya.Method {
switch self {
case .getCourseData, .getCourseSearchData, .getMarathonCourseData, .getUploadedCourseDetail, .getUploadedCourseInfo, .getTotalPageCount:
case .getCourseData, .getCourseSearchData, .getMarathonCourseData, .getUploadedCourseDetail, .getUploadedCourseInfo:
return .get
case .courseUploadingData:
return .post
Expand All @@ -66,7 +63,7 @@ extension PublicCourseRouter: TargetType {
var task: Moya.Task {
switch self {
case .getCourseData(let pageNo, let sort):
var parameters: [String: Any] = ["pageNo": pageNo, "sort": sort]
let parameters: [String: Any] = ["pageNo": pageNo, "sort": sort]
return .requestParameters(parameters: parameters, encoding: URLEncoding.default)
case .getCourseSearchData(let keyword):
return .requestParameters(parameters: ["keyword": keyword], encoding: URLEncoding.default)
Expand All @@ -82,7 +79,7 @@ extension PublicCourseRouter: TargetType {
fatalError("Encoding 실패")}
case .deleteUploadedCourse(let publicCourseIdList):
return .requestParameters(parameters: ["publicCourseIdList": publicCourseIdList], encoding: JSONEncoding.default)
case .getMarathonCourseData, .getTotalPageCount, .getUploadedCourseDetail, .getUploadedCourseInfo:
case .getMarathonCourseData, .getUploadedCourseDetail, .getUploadedCourseInfo:
return .requestPlain
}
}
Expand Down
Loading