Skip to content

Commit

Permalink
⚽Feat #41: 연령대 및 성별 stringToEnum 변환
Browse files Browse the repository at this point in the history
  • Loading branch information
Juhyeok0202 committed Jul 29, 2023
1 parent d9991a1 commit fa8f9f1
Show file tree
Hide file tree
Showing 4 changed files with 47 additions and 8 deletions.
4 changes: 2 additions & 2 deletions src/main/java/com/umc/DongnaeFriend/domain/type/Age.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,10 +26,10 @@ public String getAge() {
public static Age fromString(String strAge) {

for(Age age : Age.values()){
if(age.getAge().equals(strAge)){
if((age.getAge().charAt(0))==(strAge.charAt(0))){
return age;
}
}
throw new IllegalArgumentException("No matching type for [" + strAge + "]");
return null;
}
}
8 changes: 5 additions & 3 deletions src/main/java/com/umc/DongnaeFriend/domain/type/Gender.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,11 @@
import com.fasterxml.jackson.annotation.JsonValue;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;

@Getter
@RequiredArgsConstructor
@Slf4j
public enum Gender {
MALE(0, "남성"),
FEMALE(1, "여성");
Expand All @@ -21,10 +23,10 @@ public String getGender() {
public static Gender fromString(String strGender) {

for(Gender gender : Gender.values()){
if(gender.getGender().equals(strGender)){
return gender;
if(gender.toString().equalsIgnoreCase(strGender)){
return strGender.equals("male")? Gender.MALE : Gender.FEMALE;
}
}
throw new IllegalArgumentException("No matching type for [" + strGender + "]");
return null;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -68,12 +68,15 @@ public HashMap<String, Object> getUserInfo(String access_Token) throws IOExcepti
String nickname = properties.get("nickname").toString();
String profileImage = properties.get("profile_image").toString();
String email = kakao_account.get("email").toString();
String gender = kakao_account.get("gender").toString();
String age = kakao_account.get("age_range").toString();

userInfo.put("id", id);
userInfo.put("nickname", nickname);
userInfo.put("profileImage", profileImage);
userInfo.put("email", email);

userInfo.put("age", age);
userInfo.put("gender", gender);

return userInfo;
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package com.umc.DongnaeFriend.domain.user.service;

import com.fasterxml.jackson.databind.ObjectMapper;
import com.umc.DongnaeFriend.domain.type.Age;
import com.umc.DongnaeFriend.domain.type.Gender;
import com.umc.DongnaeFriend.domain.type.YesNo;
Expand All @@ -14,6 +15,10 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.HashMap;
import java.util.Optional;

Expand Down Expand Up @@ -60,8 +65,8 @@ public User userRegister(HashMap<String, Object> userInfo) {

Long kakaoId = (Long) userInfo.get("id");

String strGender = userInfo.getOrDefault("gender", null).toString();
String strAge = userInfo.getOrDefault("age", null).toString();
String strGender = userInfo.getOrDefault("gender", "").toString();
String strAge = userInfo.getOrDefault("age", "").toString();

Gender gender = Gender.fromString(strGender);
Age age = Age.fromString(strAge);
Expand Down Expand Up @@ -103,5 +108,34 @@ public String createAccessTokenFromRefreshToken(String refreshToken) {
return accessToken;
}

public String kakaoGetCode() {


try {
String reqURL= "https://kauth.kakao.com/oauth/authorize?response_type=code&client_id=1ad317e194df665ca44dcb82d11a7093&redirect_uri=http://localhost:8080/callback";

URL url = new URL(reqURL);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");


BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream()));

String line = "";
String result = "";

while ((line = br.readLine()) != null) {
result += line;
}

ObjectMapper objectMapper = new ObjectMapper();
HashMap<String, Object> jsonMap = objectMapper.readValue(result, HashMap.class);

log.info(jsonMap.toString());
return "";
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
}

0 comments on commit fa8f9f1

Please sign in to comment.