forked from AcaMate/AcaMate_iOS
[✨] 회원가입 및 로그인 로직 (카카오) 완성
This commit is contained in:
parent
519fcc537c
commit
aa55b5463d
Binary file not shown.
|
@ -256,7 +256,11 @@ struct RegisterView: View {
|
||||||
btnVM.setSize(for: registerVM.registerBtnID, newWidth: .infinity, newHeight: 48)
|
btnVM.setSize(for: registerVM.registerBtnID, newWidth: .infinity, newHeight: 48)
|
||||||
btnVM.setText(for: registerVM.registerBtnID, newText: "회원가입", newFont: .nps(font: .bold, size: 24))
|
btnVM.setText(for: registerVM.registerBtnID, newText: "회원가입", newFont: .nps(font: .bold, size: 24))
|
||||||
btnVM.setTextColor(for: registerVM.registerBtnID, newColor: Color.Point.dark)
|
btnVM.setTextColor(for: registerVM.registerBtnID, newColor: Color.Point.dark)
|
||||||
btnVM.setAction(for: registerVM.registerBtnID) { registerVM.registerUser() }
|
btnVM.setAction(for: registerVM.registerBtnID) {
|
||||||
|
Task {
|
||||||
|
await registerVM.registerUser()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
dropdownManager.font = .nps(size: 16)
|
dropdownManager.font = .nps(size: 16)
|
||||||
|
|
|
@ -58,13 +58,15 @@ class LoginViewModel: ObservableObject {
|
||||||
switch response.response.status.code {
|
switch response.response.status.code {
|
||||||
case .success(let code):
|
case .success(let code):
|
||||||
if code == "000" {
|
if code == "000" {
|
||||||
if let token = response.response.data.toStringDict()["token"],
|
if let data = response.response.data,
|
||||||
let refresh = response.response.data.toStringDict()["refresh"] {
|
let accToken = data.token,
|
||||||
printLog(token)
|
let refresh = data.refresh {
|
||||||
|
printLog(accToken)
|
||||||
printLog(refresh)
|
printLog(refresh)
|
||||||
|
|
||||||
self.accToken = token
|
self.accToken = accToken
|
||||||
self.refresh = refresh
|
self.refresh = refresh
|
||||||
|
|
||||||
appVM.naviState.set(act: .ADD, path: .SelectAcademy)
|
appVM.naviState.set(act: .ADD, path: .SelectAcademy)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -75,8 +77,9 @@ class LoginViewModel: ObservableObject {
|
||||||
}
|
}
|
||||||
case .anything(let apiCode):
|
case .anything(let apiCode):
|
||||||
// MARK: TO-DO
|
// MARK: TO-DO
|
||||||
// 회원가입 로직
|
// 이거도 걍 에러인데? 에러 처리 로직으로
|
||||||
printLog("\(apiCode) : 로그인 정보 없음")
|
printLog("\(apiCode) : 로그인 정보 없음")
|
||||||
|
printLog("ERROR")
|
||||||
// self.pathName = .Register(type, id: "\(id)")
|
// self.pathName = .Register(type, id: "\(id)")
|
||||||
default:
|
default:
|
||||||
// 그외에 서버에서 처리를 하다가 문제가 생겨서 발생하는 에러는 여기로 보낼거임
|
// 그외에 서버에서 처리를 하다가 문제가 생겨서 발생하는 에러는 여기로 보낼거임
|
||||||
|
|
|
@ -61,11 +61,8 @@ class RegisterViewModel: ObservableObject {
|
||||||
"protonmail.com",
|
"protonmail.com",
|
||||||
"직접 입력"]
|
"직접 입력"]
|
||||||
|
|
||||||
func registerUser() {
|
func registerUser() async {
|
||||||
// 필수 값
|
// 필수 값
|
||||||
let birth = "\(selectDate.convertString("yyyy-MM-dd"))"
|
|
||||||
printLog("\(birth)")
|
|
||||||
|
|
||||||
if nameText != "" && emailFrontText != "" && emailTailText != "" && phoneTextSet.0 != "" && phoneTextSet.1 != "" && phoneTextSet.2 != "" {
|
if nameText != "" && emailFrontText != "" && emailTailText != "" && phoneTextSet.0 != "" && phoneTextSet.1 != "" && phoneTextSet.2 != "" {
|
||||||
var param: [String:Any] = [:]
|
var param: [String:Any] = [:]
|
||||||
|
|
||||||
|
@ -73,13 +70,13 @@ class RegisterViewModel: ObservableObject {
|
||||||
if changeDate { param["birth"] = "\(selectDate.convertString("yyyy-MM-dd"))"}
|
if changeDate { param["birth"] = "\(selectDate.convertString("yyyy-MM-dd"))"}
|
||||||
param["type"] = "UT02"
|
param["type"] = "UT02"
|
||||||
|
|
||||||
if let deviceId = UIDevice.current.identifierForVendor?.uuidString,
|
if let deviceId = await UIDevice.current.identifierForVendor?.uuidString,
|
||||||
let bundleId = Bundle.main.bundleIdentifier {
|
let bundleId = Bundle.main.bundleIdentifier {
|
||||||
param["device_id"] = "\(deviceId)"
|
param["device_id"] = "\(deviceId)"
|
||||||
}
|
}
|
||||||
|
|
||||||
param["auto_login_yn"] = false
|
param["auto_login_yn"] = false
|
||||||
param["login_date"] = Date()
|
param["login_date"] = Date().convertString("yyyy-MM-dd'T'HH:mm:ss")
|
||||||
param["push_token"] = "\(pushToken)"
|
param["push_token"] = "\(pushToken)"
|
||||||
param["email"] = "\(emailFrontText)@\(emailTailText)"
|
param["email"] = "\(emailFrontText)@\(emailTailText)"
|
||||||
|
|
||||||
|
@ -134,6 +131,7 @@ class RegisterViewModel: ObservableObject {
|
||||||
|
|
||||||
self.appVM.apiManager.loadAPIData(
|
self.appVM.apiManager.loadAPIData(
|
||||||
APIRequest(path: "/api/v1/in/user/register",
|
APIRequest(path: "/api/v1/in/user/register",
|
||||||
|
method: .post,
|
||||||
headers: [API_HEADER : self.headerValue],
|
headers: [API_HEADER : self.headerValue],
|
||||||
parameters: param,
|
parameters: param,
|
||||||
decoding: APIResponse<User_Token>.self)
|
decoding: APIResponse<User_Token>.self)
|
||||||
|
@ -155,7 +153,8 @@ class RegisterViewModel: ObservableObject {
|
||||||
if let data = response.data, let accToken = data.token, let refresh = data.refresh{
|
if let data = response.data, let accToken = data.token, let refresh = data.refresh{
|
||||||
self.accToken = accToken
|
self.accToken = accToken
|
||||||
self.refresh = refresh
|
self.refresh = refresh
|
||||||
appVM.naviState.set(act: .RESET, path: .Main)
|
|
||||||
|
appVM.naviState.set(act: .ADD, path: .SelectAcademy)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
|
|
Loading…
Reference in New Issue
Block a user