Skip to content

Commit

Permalink
[Feat] 홈 뷰 서버연결 수정 (TeamRecorDream#64)
Browse files Browse the repository at this point in the history
  • Loading branch information
513sojin committed Jul 22, 2022
1 parent b0852aa commit 0da0775
Show file tree
Hide file tree
Showing 3 changed files with 78 additions and 36 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ enum CreateRecordConst {
static var dreamColorNum: Int?
static var isTouchedIndex: [Int] = []
static var genreIndex: [Int] = []

}

class RecordViewController: BaseViewController {
Expand Down Expand Up @@ -319,34 +320,31 @@ class RecordViewController: BaseViewController {
}

@objc func saveButtonDidTap() {
print("saveButtonDidTap")
if let title = titleTextField.text {
if !title.isEmpty && !title.trimmingCharacters(in: .whitespacesAndNewlines).isEmpty {
// MARK: - 저장 가능 상태
print("hoihihihihi")
guard let title = titleTextField.text,
let content = contentTextView.text,
let note = noteTextView.text else { return }

let date: String = CreateRecordConst.todayDate.toString()

print("---------------")
print(title)
print(content)
print(note)
print(CreateRecordConst.emotionNum)
print(CreateRecordConst.dreamColorNum)
print(CreateRecordConst.isTouchedIndex)
print(note)
print("---------------")

let record = CreateRecord(title: title, date: date, content: content, emotion: CreateRecordConst.emotionNum, dreamColor: CreateRecordConst.dreamColorNum, genre: CreateRecordConst.isTouchedIndex, note: note, voice: "62cdb868c3032f2b7af76531", writer: "62c9cf068094605c781a2fb9")

guard let emotionNum = CreateRecordConst.emotionNum,
let dreamNum = CreateRecordConst.dreamColorNum,
let id = recordDetailData?._id else { return }
print("record: \(record)")

let recordPut = PatchRecord(title: title, date: date, content: content, emotion: emotionNum, dreamColor: dreamNum, genre: CreateRecordConst.isTouchedIndex, note: note)

isCreateView ? postRecord(record: record) : putRecord(record: recordPut, id: id)
// guard let emotionNum = CreateRecordConst.emotionNum,
// let dreamNum = CreateRecordConst.dreamColorNum,
// let id = recordDetailData?._id else { return }
//
// let recordPut = PatchRecord(title: title, date: date, content: content, emotion: emotionNum, dreamColor: dreamNum, genre: CreateRecordConst.isTouchedIndex, note: note)
// print("recordPut: \(recordPut)")
//
// print("isCreateView: \(isCreateView)")
// isCreateView ? postRecord(record: record) : putRecord(record: recordPut, id: id)
postRecord(record: record)
} else {
// MARK: - 저장 불가능 상태
UIView.animate(withDuration: 1.25, delay: 0.01, options: .curveEaseIn, animations: {
Expand All @@ -360,15 +358,11 @@ class RecordViewController: BaseViewController {

func setTitleTextField() {
if let title = titleTextField.text {
print("title : \(title)")
print(title.trimmingCharacters(in: .whitespacesAndNewlines).isEmpty)
if !title.isEmpty && !title.trimmingCharacters(in: .whitespacesAndNewlines).isEmpty {
// MARK: - 저장 가능 상태
print("저장 가능 상태")
saveButton.setImage(UIImage(named: ImageList.icnSaveOn.name), for: .normal)
} else {
// MARK: - 저장 불가능 상태
print("저장 불가능 상태")
saveButton.setImage(UIImage(named: ImageList.icnSaveOff.name), for: .normal)
}
}
Expand Down Expand Up @@ -584,16 +578,13 @@ extension RecordViewController: UICollectionViewDataSource, UICollectionViewDele
if collectionView == emotionCollectionView {
guard let cell = collectionView.dequeueReusableCell(withReuseIdentifier: RecordBarCollectionViewCell.reuseIdentifier, for: indexPath) as? RecordBarCollectionViewCell else { return UICollectionViewCell() }
if !isCreateView {
// cell.isSelected = false
print("isSelected - ")
if indexPath.item == CreateRecordConst.emotionNum {
print("안녕")
cell.updateRecordBarImage(reset: false)
}
} else {
print("isisisisisisisis")
}
// cell.recordBarImageView.alpha = 1
cell.setRecordBarImage(imageName: Constant.Emotion.IntType(indexPath.item + 1).title)
return cell
} else if collectionView == dreamColorCollectionView {
Expand Down Expand Up @@ -657,14 +648,29 @@ extension UILabel {
}

extension RecordViewController {
// func postRecord(record: CreateRecord) {
// Task {
// do {
// let recordData = try await createManager.postRequest(record: record)
// } catch {
// print("실패")
// }
// }
// }
//
// private func requestUserInformation() {
// MyPageService.shared.getUserInformation(completionHandler: { [weak self] data in
// guard let data = data as? UserInformationModel else { return }
// self?.userInformation = data
// })
// }
//
func postRecord(record: CreateRecord) {
Task {
do {
try await createManager.postRequest(record: record)
} catch {
print("실패")
}
}
createManager.postRequest(record: record, completionHandler: { [weak self] data in
guard let data = data as? DreamBaseModel else { return }
print("postRecord")
print(data)
})
}

func putRecord(record: PatchRecord, id: String) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ extension TabBarController: Presentable {
private func presentRecordView() {
let recordViewController = RecordViewController()
navigationController?.pushViewController(recordViewController, animated: false)
recordViewController.isCreateView = false
recordViewController.isCreateView = true
}

private func setTabBarItems() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,8 @@ import Foundation

protocol CreateRequestable: AnyObject {
func request(_ request: NetworkRequest) async throws -> [Record]
func postRequest(record: CreateRecord)
// func postRequest(record: CreateRecord) async throws -> DreamBaseModel
func postRequest(record: CreateRecord, completionHandler: @escaping (Any) -> Void)
func putRequset(record: PatchRecord, id: String)
}

Expand All @@ -24,7 +25,6 @@ final class CreateAPIManager: CreateRequestable {
guard let httpResponse = response as? HTTPURLResponse,
(200..<500) ~= httpResponse.statusCode
else { throw APIError.serverError }
print("httpResponse.statusCode: \(httpResponse.statusCode)")

let decodedData = try JSONDecoder().decode(Record.self, from: data)

Expand All @@ -35,8 +35,44 @@ final class CreateAPIManager: CreateRequestable {
}
}

func postRequest(record: CreateRecord) {
// func postRequest(record: CreateRecord) async throws -> DreamBaseModel {
// let url = URL(string: "http://13.125.138.47:8000/record")
// var request = URLRequest(url: url!)
// request.httpMethod = "POST"
//
// guard let uploadData = try? JSONEncoder().encode(record)
// else { throw APIError.urlEncodingError }
// request.addValue("application/json", forHTTPHeaderField: "Content-Type")
// request.addValue("1", forHTTPHeaderField: "userId")
//
// let task = URLSession.shared.uploadTask(with: request, from: uploadData) { data, response, error in
// if let data = data,
// let response = response as? HTTPURLResponse,
// (200..<500) ~= response.statusCode {
// print("response: \(response.statusCode)")
//
// guard let responseData = try? JSONDecoder().decode(DreamBaseModel.self, from: data) else {
// print("json decode error")
// throw APIError.clientError(message: "client error")
// }
// if responseData.success {
// print(responseData.success)
// return [responseData]
// } else {
// print("실패")
// throw APIError.clientError(message: decodedData.message)
// }
// } else {
// print("Error")
// throw APIError.clientError(message: decodedData.message)
// }
// }
// task.resume()
// }

func postRequest(record: CreateRecord, completionHandler: @escaping (Any) -> Void) {
let url = URL(string: "http://13.125.138.47:8000/record")
print(url)
var request = URLRequest(url: url!)
request.httpMethod = "POST"

Expand All @@ -46,18 +82,18 @@ final class CreateAPIManager: CreateRequestable {
request.addValue("1", forHTTPHeaderField: "userId")

let task = URLSession.shared.uploadTask(with: request, from: uploadData) { data, response, error in

if let data = data,
let response = response as? HTTPURLResponse,
(200..<500) ~= response.statusCode {
print("response: \(response.statusCode)")
print("response - post: \(response.statusCode)")

guard let responseData = try? JSONDecoder().decode(DreamBaseModel.self, from: data) else {
print("json decode error")
return
}
if responseData.success {
print(responseData.success)
completionHandler(responseData)
} else {
print("실패")
}
Expand Down

0 comments on commit 0da0775

Please sign in to comment.