diff --git a/app b/app
new file mode 160000
index 0000000..10696d6
--- /dev/null
+++ b/app
@@ -0,0 +1 @@
+Subproject commit 10696d6f8e4664d3b7e9c8b68e905626fad00af7
diff --git a/application/.gradle/7.3.3/executionHistory/executionHistory.bin b/application/.gradle/7.3.3/executionHistory/executionHistory.bin
index cda6f7f..11a6278 100644
Binary files a/application/.gradle/7.3.3/executionHistory/executionHistory.bin and b/application/.gradle/7.3.3/executionHistory/executionHistory.bin differ
diff --git a/application/.gradle/7.3.3/executionHistory/executionHistory.lock b/application/.gradle/7.3.3/executionHistory/executionHistory.lock
index 7da9b16..02a8315 100644
Binary files a/application/.gradle/7.3.3/executionHistory/executionHistory.lock and b/application/.gradle/7.3.3/executionHistory/executionHistory.lock differ
diff --git a/application/.gradle/7.3.3/fileHashes/fileHashes.bin b/application/.gradle/7.3.3/fileHashes/fileHashes.bin
index 203fee5..b811cc3 100644
Binary files a/application/.gradle/7.3.3/fileHashes/fileHashes.bin and b/application/.gradle/7.3.3/fileHashes/fileHashes.bin differ
diff --git a/application/.gradle/7.3.3/fileHashes/fileHashes.lock b/application/.gradle/7.3.3/fileHashes/fileHashes.lock
index 5a21eb1..fc8dfc5 100644
Binary files a/application/.gradle/7.3.3/fileHashes/fileHashes.lock and b/application/.gradle/7.3.3/fileHashes/fileHashes.lock differ
diff --git a/application/.gradle/7.3.3/fileHashes/resourceHashesCache.bin b/application/.gradle/7.3.3/fileHashes/resourceHashesCache.bin
index f986b57..f0ba0ac 100644
Binary files a/application/.gradle/7.3.3/fileHashes/resourceHashesCache.bin and b/application/.gradle/7.3.3/fileHashes/resourceHashesCache.bin differ
diff --git a/application/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/application/.gradle/buildOutputCleanup/buildOutputCleanup.lock
index 518ae0e..3ed1418 100644
Binary files a/application/.gradle/buildOutputCleanup/buildOutputCleanup.lock and b/application/.gradle/buildOutputCleanup/buildOutputCleanup.lock differ
diff --git a/application/.gradle/buildOutputCleanup/outputFiles.bin b/application/.gradle/buildOutputCleanup/outputFiles.bin
index 2882227..628a4a8 100644
Binary files a/application/.gradle/buildOutputCleanup/outputFiles.bin and b/application/.gradle/buildOutputCleanup/outputFiles.bin differ
diff --git a/application/app/src/main/AndroidManifest.xml b/application/app/src/main/AndroidManifest.xml
index 842091b..a9d40de 100644
--- a/application/app/src/main/AndroidManifest.xml
+++ b/application/app/src/main/AndroidManifest.xml
@@ -4,6 +4,7 @@
package="com.example.myapplication">
+
+
diff --git a/src/main/java/com/example/myapplication/ui/ServiceSetting/AuthenticationInterceptor.java b/application/app/src/main/java/com/example/myapplication/ui/ServiceSetting/AuthenticationInterceptor.java
similarity index 100%
rename from src/main/java/com/example/myapplication/ui/ServiceSetting/AuthenticationInterceptor.java
rename to application/app/src/main/java/com/example/myapplication/ui/ServiceSetting/AuthenticationInterceptor.java
diff --git a/src/main/java/com/example/myapplication/ui/ServiceSetting/ServiceAPI.java b/application/app/src/main/java/com/example/myapplication/ui/ServiceSetting/ServiceAPI.java
similarity index 100%
rename from src/main/java/com/example/myapplication/ui/ServiceSetting/ServiceAPI.java
rename to application/app/src/main/java/com/example/myapplication/ui/ServiceSetting/ServiceAPI.java
diff --git a/src/main/java/com/example/myapplication/ui/ServiceSetting/ServiceGenerator.java b/application/app/src/main/java/com/example/myapplication/ui/ServiceSetting/ServiceGenerator.java
similarity index 100%
rename from src/main/java/com/example/myapplication/ui/ServiceSetting/ServiceGenerator.java
rename to application/app/src/main/java/com/example/myapplication/ui/ServiceSetting/ServiceGenerator.java
diff --git a/application/app/src/main/java/com/example/myapplication/ui/join/JoinActivity.java b/application/app/src/main/java/com/example/myapplication/ui/join/JoinActivity.java
index 8165d37..e75ca76 100644
--- a/application/app/src/main/java/com/example/myapplication/ui/join/JoinActivity.java
+++ b/application/app/src/main/java/com/example/myapplication/ui/join/JoinActivity.java
@@ -17,9 +17,9 @@
import androidx.appcompat.app.AppCompatActivity;
import com.example.myapplication.R;
+import com.example.myapplication.ui.ServiceSetting.ServiceAPI;
+import com.example.myapplication.ui.ServiceSetting.ServiceGenerator;
import com.example.myapplication.ui.login.LoginActivity;
-import com.example.myapplication.ui.mainPage.NewActivity;
-import com.example.myapplication.ui.petSelect.PetSelectActivity;
import retrofit2.Call;
import retrofit2.Callback;
@@ -29,7 +29,7 @@ public class JoinActivity extends AppCompatActivity {
private JoinUserState joinUserState = new JoinUserState();
private boolean validate = false;
- private ServiceAPI service = RetrofitClient.getClient().create(ServiceAPI.class);
+ private ServiceAPI service = ServiceGenerator.createService(ServiceAPI.class);
private Dialog enterCodeDialog;
private AlertDialog dialog;
private int codeEntered;
@@ -124,8 +124,8 @@ private void validateEmail(EmailValidationData data) {
@Override
public void onResponse(Call call, Response response) {
JoinResponse result = response.body();
+ // Toast.makeText(JoinActivity.this, result.getMessage(), Toast.LENGTH_SHORT).show();
if (result.getCode() == 200) {
- // Toast.makeText(JoinActivity.this, result.getMessage(), Toast.LENGTH_SHORT).show();
AlertDialog.Builder builder = new AlertDialog.Builder(JoinActivity.this);
dialog = builder.setMessage("사용할 수 있는 이메일입니다.")
.setCancelable(false)
@@ -137,9 +137,6 @@ public void onClick(DialogInterface dialog, int which) {
.create();
dialog.show();
validate = true;
- } else {
- string faileResult = "사용할 수 없는 이메일입니다.";
- Toast.makeText(JoinActivity.this, faileResult, Toast.LENGTH_SHORT).show();
}
}
@Override
@@ -156,16 +153,13 @@ private void sendEmail(EmailValidationData data) {
@Override
public void onResponse(Call call, retrofit2.Response response) {
JoinResponse result = response.body();
+ Toast.makeText(JoinActivity.this, result.getMessage(), Toast.LENGTH_SHORT).show();
if (result.getCode() == 200) {
- Toast.makeText(JoinActivity.this, result.getMessage(), Toast.LENGTH_SHORT).show();
enterCodeDialog = new Dialog(JoinActivity.this);
enterCodeDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
enterCodeDialog.setContentView(R.layout.email_check_dialog);
codeReceived = result.getData();
showEmailCodeEnterDialog();
- } else {
- string faileResult = "코드 전송에 실패하였습니다. 다시 시도해주세요.";
- Toast.makeText(JoinActivity.this, faileResult, Toast.LENGTH_SHORT).show();
}
}
@Override
@@ -196,13 +190,10 @@ private void startJoin(JoinData data) {
@Override
public void onResponse(Call call, Response response) {
JoinResponse result = response.body();
+ Toast.makeText(JoinActivity.this, result.getMessage(), Toast.LENGTH_SHORT).show();
if (result.getCode() == 200) {
- Toast.makeText(JoinActivity.this, result.getMessage(), Toast.LENGTH_SHORT).show();
Intent intent = new Intent(getApplicationContext(), LoginActivity.class);
startActivity(intent);
- } else {
- string faileResult = "회원가입에 실패하였습니다. 다시 시도해주세요.";
- Toast.makeText(JoinActivity.this, faileResult, Toast.LENGTH_SHORT).show();
}
}
@Override
diff --git a/application/app/src/main/java/com/example/myapplication/ui/join/PasswordChangeActivity.java b/application/app/src/main/java/com/example/myapplication/ui/join/PasswordChangeActivity.java
index 6a29445..550a08c 100644
--- a/application/app/src/main/java/com/example/myapplication/ui/join/PasswordChangeActivity.java
+++ b/application/app/src/main/java/com/example/myapplication/ui/join/PasswordChangeActivity.java
@@ -17,6 +17,8 @@
import androidx.appcompat.app.AppCompatActivity;
import com.example.myapplication.R;
+import com.example.myapplication.ui.ServiceSetting.ServiceAPI;
+import com.example.myapplication.ui.ServiceSetting.ServiceGenerator;
import com.example.myapplication.ui.login.LoginActivity;
import com.example.myapplication.ui.login.LoginRequest;
@@ -28,7 +30,7 @@ public class PasswordChangeActivity extends AppCompatActivity {
private AlertDialog dialog;
private JoinUserState joinUserState = new JoinUserState();
- private ServiceAPI service = RetrofitClient.getClient().create(ServiceAPI.class);
+ private ServiceAPI service = ServiceGenerator.createService(ServiceAPI.class);
private Dialog enterCodeDialog;
private boolean isEmailValidated = false;
private int codeEntered;
@@ -103,22 +105,19 @@ public void onClick(View view) {
});
}
- // 이메일 전송
+ // 회원가입 버튼 클릭시에 코드를 전송
private void sendEmail(EmailValidationData data) {
service.sendEmail(data).enqueue(new Callback() {
@Override
public void onResponse(Call call, retrofit2.Response response) {
JoinResponse result = response.body();
+ Toast.makeText(PasswordChangeActivity.this, result.getMessage(), Toast.LENGTH_SHORT).show();
if (result.getCode() == 200) {
- Toast.makeText(PasswordChangeActivity.this, result.getMessage(), Toast.LENGTH_SHORT).show();
enterCodeDialog = new Dialog(PasswordChangeActivity.this);
enterCodeDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
enterCodeDialog.setContentView(R.layout.email_check_dialog);
codeReceived = result.getData();
showEmailCodeEnterDialog();
- } else {
- string faileResult = "입력하신 이메일로 코드를 전송하는데 실패하였습니다. 다시 시도해주세요.";
- Toast.makeText(JoinActivity.this, faileResult, Toast.LENGTH_SHORT).show();
}
}
@Override
@@ -161,9 +160,6 @@ public void onClick(DialogInterface dialog, int which) {}
})
.create();
dialog.show();
- } else {
- string faileResult = "이메일로 인증에 실패하였습니다. 다시 시도해주세요.";
- Toast.makeText(JoinActivity.this, faileResult, Toast.LENGTH_SHORT).show();
}
}
@Override
@@ -185,9 +181,6 @@ public void onResponse(Call call, Response response)
AlertDialog.Builder builder = new AlertDialog.Builder(PasswordChangeActivity.this);
Intent intent = new Intent(getApplicationContext(), LoginActivity.class);
startActivity(intent);
- } else {
- string faileResult = "비밀번호에 실패하였습니다. 다시 시도해주세요.";
- Toast.makeText(JoinActivity.this, faileResult, Toast.LENGTH_SHORT).show();
}
}
@Override
diff --git a/application/app/src/main/java/com/example/myapplication/ui/join/RetrofitClient.java b/application/app/src/main/java/com/example/myapplication/ui/join/RetrofitClient.java
deleted file mode 100644
index 45da5aa..0000000
--- a/application/app/src/main/java/com/example/myapplication/ui/join/RetrofitClient.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package com.example.myapplication.ui.join;
-
-import retrofit2.Retrofit;
-import retrofit2.converter.gson.GsonConverterFactory;
-
-public class RetrofitClient {
- private final static String BASE_URL = "https://12b969e5-87a6-4fca-a942-178ea253fdbc.mock.pstmn.io";
- //옌 post 서버 : https://12b969e5-87a6-4fca-a942-178ea253fdbc.mock.pstmn.io
- //주현 서버 : https://7919ceb2-3999-4ed8-8bcc-16baaf4e62d4.mock.pstmn.io
- private static Retrofit retrofit = null;
-
- private RetrofitClient() { }
-
- public static Retrofit getClient() {
- if (retrofit == null) {
- retrofit = new Retrofit.Builder()
- .baseUrl(BASE_URL) // 요청을 보낼 base url을 설정한다.
- .addConverterFactory(GsonConverterFactory.create()) // JSON 파싱을 위한 GsonConverterFactory를 추가한다.
- .build();
- }
- return retrofit;
- }
-}
diff --git a/application/app/src/main/java/com/example/myapplication/ui/join/ServiceAPI.java b/application/app/src/main/java/com/example/myapplication/ui/join/ServiceAPI.java
deleted file mode 100644
index 203af2f..0000000
--- a/application/app/src/main/java/com/example/myapplication/ui/join/ServiceAPI.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package com.example.myapplication.ui.join;
-
-import com.example.myapplication.ui.login.LoginRequest;
-
-import retrofit2.http.Body;
-import retrofit2.http.POST;
-import retrofit2.Call;
-
-public interface ServiceAPI {
- @POST("/enterEmailCode/join")
- Call userJoin(@Body JoinData data);
-
- @POST("/sendEmail")
- Call sendEmail(@Body EmailValidationData data);
-
- @POST("/validateDuplicateEmail")
- Call emailValidation(@Body EmailValidationData data);
-
- @POST("/changePw") //정보 수정.. put으로 가능함!
- Call changePw(@Body LoginRequest data);
-
- @POST("/enterEmailCode/changePw")
- Call enterEmailCode(@Body EmailCodeData data);
-}
diff --git a/application/app/src/main/java/com/example/myapplication/ui/login/LoginAPI.java b/application/app/src/main/java/com/example/myapplication/ui/login/LoginAPI.java
deleted file mode 100644
index 3e6f56f..0000000
--- a/application/app/src/main/java/com/example/myapplication/ui/login/LoginAPI.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package com.example.myapplication.ui.login;
-
-import retrofit2.Call;
-import retrofit2.http.Body;
-import retrofit2.http.POST;
-
-interface LoginAPI {
- //@통신 방식("통신 API명")
- @POST("/login")
- Call getLoginResponse(@Body LoginRequest loginRequest);
-}
diff --git a/application/app/src/main/java/com/example/myapplication/ui/login/LoginActivity.java b/application/app/src/main/java/com/example/myapplication/ui/login/LoginActivity.java
index 8c1539e..de830fc 100644
--- a/application/app/src/main/java/com/example/myapplication/ui/login/LoginActivity.java
+++ b/application/app/src/main/java/com/example/myapplication/ui/login/LoginActivity.java
@@ -16,9 +16,10 @@
import androidx.appcompat.app.AppCompatActivity;
import com.example.myapplication.R;
+import com.example.myapplication.ui.ServiceSetting.ServiceGenerator;
import com.example.myapplication.ui.join.JoinActivity;
import com.example.myapplication.ui.join.PasswordChangeActivity;
-import com.example.myapplication.ui.join.RetrofitClient;
+import com.example.myapplication.ui.ServiceSetting.ServiceAPI;
import com.example.myapplication.ui.petSelect.PetSelectActivity;
import retrofit2.Call;
@@ -28,12 +29,18 @@
public class LoginActivity extends AppCompatActivity {
- private LoginAPI loginAPI = RetrofitClient.getClient().create(LoginAPI.class);
+ private String TOKEN = getToken(); // access token을 가져오는 함수를 직접 정의하셔야합니다.
+ private ServiceAPI service = ServiceGenerator.createService(ServiceAPI.class, TOKEN);
+ private TextView pw_change;
private EditText login_email, login_password;
- private Button login_button, join_button, pw_change;
+ private Button login_button, join_button;
private LoginFormState LoginFormState = new LoginFormState();
+ public String getToken() {
+ return TOKEN;
+ }
+
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate( savedInstanceState );
@@ -116,6 +123,7 @@ public void onClick(View view) {
}
});
}
+
public void LoginResponse() {
String userID = login_email.getText().toString().trim();
String userPassword = login_password.getText().toString().trim();
@@ -124,7 +132,7 @@ public void LoginResponse() {
LoginRequest loginRequest = new LoginRequest(userID, userPassword);
//loginRequest에 저장된 데이터와 함께 LoginAPI에서 정의한 getLoginResponse 함수를 실행한 후 응답을 받음
- loginAPI.getLoginResponse(loginRequest).enqueue(new Callback() {
+ service.getLoginResponse(loginRequest).enqueue(new Callback() {
@Override
public void onResponse(Call call, Response response) {
//response.body()를 result에 저장
diff --git a/application/app/src/main/java/com/example/myapplication/ui/login/LoginResponse.java b/application/app/src/main/java/com/example/myapplication/ui/login/LoginResponse.java
index 9ab7fb0..af0737b 100644
--- a/application/app/src/main/java/com/example/myapplication/ui/login/LoginResponse.java
+++ b/application/app/src/main/java/com/example/myapplication/ui/login/LoginResponse.java
@@ -9,6 +9,9 @@ public class LoginResponse {
@SerializedName("responseMessage")
private String message;
+ //회원 기본 정보
+ @SerializedName("memberEmail")
+ public String inputId;
public int getStatusCode() { return statusCode; }
@@ -16,4 +19,8 @@ public String getMessage() {
return message;
}
+ public String getuserID() {
+ return inputId;
+ }
+
}
diff --git a/src/main/java/com/example/myapplication/ui/mainPage/ChatbotWeb.java b/application/app/src/main/java/com/example/myapplication/ui/mainPage/ChatbotWeb.java
similarity index 100%
rename from src/main/java/com/example/myapplication/ui/mainPage/ChatbotWeb.java
rename to application/app/src/main/java/com/example/myapplication/ui/mainPage/ChatbotWeb.java
diff --git a/application/app/src/main/java/com/example/myapplication/ui/mainPage/MainActivity.java b/application/app/src/main/java/com/example/myapplication/ui/mainPage/MainActivity.java
index d1c2c7d..314d89b 100644
--- a/application/app/src/main/java/com/example/myapplication/ui/mainPage/MainActivity.java
+++ b/application/app/src/main/java/com/example/myapplication/ui/mainPage/MainActivity.java
@@ -28,8 +28,8 @@ protected void onCreate(Bundle savedInstanceState) {
// getActionBar().setDisplayShowTitleEnabled(false);
// 버튼 선언
- Button questionnaireBtn = (Button) findViewById(R.id.home_button1);
- Button chatbotBtn = (Button) findViewById(R.id.home_button2);
+ Button chatbotBtn = (Button) findViewById(R.id.home_button1);
+ Button questionnaireBtn = (Button) findViewById(R.id.home_button2);
Button diseaseListBtn = (Button) findViewById(R.id.home_button3);
Button loginPage = (Button) findViewById(R.id.drawer_button_login);
Button petPage = (Button) findViewById(R.id.drawer_button_pet);
@@ -38,14 +38,14 @@ protected void onCreate(Bundle savedInstanceState) {
ImageButton drawerBtn = (ImageButton) findViewById(R.id.toolbar_btn);
// 버튼 클릭 시의 화면 이동 구현
- questionnaireBtn.setOnClickListener(new View.OnClickListener(){
+ chatbotBtn.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view){
- Intent intent = new Intent(getApplicationContext(), NewActivity.class);
+ Intent intent = new Intent(getApplicationContext(), ChatbotWeb.class);
startActivity(intent);
}
});
- chatbotBtn.setOnClickListener(new View.OnClickListener(){
+ questionnaireBtn.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view){
Intent intent = new Intent(getApplicationContext(), NewActivity.class);
diff --git a/application/app/src/main/java/com/example/myapplication/ui/petSelect/AddPetActivity.java b/application/app/src/main/java/com/example/myapplication/ui/petSelect/AddPetActivity.java
index d73f9e9..c7d162a 100644
--- a/application/app/src/main/java/com/example/myapplication/ui/petSelect/AddPetActivity.java
+++ b/application/app/src/main/java/com/example/myapplication/ui/petSelect/AddPetActivity.java
@@ -1,5 +1,6 @@
package com.example.myapplication.ui.petSelect;
+import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
@@ -15,9 +16,9 @@
import androidx.appcompat.app.AppCompatActivity;
import com.example.myapplication.R;
-import com.example.myapplication.ui.join.RetrofitClient;
+import com.example.myapplication.ui.ServiceSetting.ServiceAPI;
+import com.example.myapplication.ui.ServiceSetting.ServiceGenerator;
import com.example.myapplication.ui.setting.PetinfoData;
-import com.example.myapplication.ui.setting.ProfileAPI;
import com.example.myapplication.ui.setting.ProfileResponse;
import retrofit2.Call;
@@ -28,9 +29,9 @@ public class AddPetActivity extends AppCompatActivity {
private ImageView petprofile;
private TextView petAge;
private EditText petBreed,petNickName;
- private Button btnAge, btnSave, btnCancel, selectCatButton, selectDogButton;
+ private Button man, woman, NeuteringYes, NeuteringNo, btnAge, btnSave, btnCancel, selectCatButton, selectDogButton;
- private ProfileAPI profileAPI = RetrofitClient.getClient().create(ProfileAPI.class);
+ private ServiceAPI profileAPI = ServiceGenerator.createService(ServiceAPI.class);
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -43,10 +44,15 @@ protected void onCreate(Bundle savedInstanceState) {
btnCancel = findViewById(R.id.btnAddPetCancel);
selectCatButton = findViewById(R.id.selectCat);
selectDogButton = findViewById(R.id.selectDog);
+ man = findViewById(R.id.man);
+ woman = findViewById(R.id.woman);
+ NeuteringYes = findViewById(R.id.Neuteringyes);
+ NeuteringNo = findViewById(R.id.Neuteringno);
petBreed = findViewById(R.id.petbreed);
petNickName = findViewById(R.id.petNickname);
petAge = findViewById(R.id.petAge);
+
btnSave.setOnClickListener(new View.OnClickListener(){
@Override
@@ -103,22 +109,36 @@ public void onClick(DialogInterface dialog, int i) {
selectCatButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
- petprofile.setImageResource(R.drawable.cat);
+ petprofile.setImageResource(R.drawable.catface);
}
});
selectDogButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
- petprofile.setImageResource(R.drawable.dog);
+ petprofile.setImageResource(R.drawable.dogface);
}
});
}
- //반려동물 정보 변경
+ //반려동물 정보 설정
public void getPetinfo(){
String Name = petNickName.getText().toString().trim();
String Age = petAge.getText().toString().trim();
//String Breed = petBreed.getText().toString().trim();
- PetinfoData petinfoData = new PetinfoData(Name, Age, null, 1, 1);
+ String Gender = null;
+ String Neutering = null;
+ if (man.isEnabled()) {
+ Gender = man.getText().toString();
+ } else if (woman.isEnabled()) {
+ Gender = woman.getText().toString();
+ }
+
+ if (NeuteringYes.isEnabled()) {
+ Neutering = NeuteringYes.getText().toString();
+ } else if (NeuteringNo.isEnabled()) {
+ Neutering = NeuteringNo.getText().toString();
+ }
+
+ PetinfoData petinfoData = new PetinfoData(Name, Age, null, Gender, Neutering);
Call call = profileAPI.getPetinfo(petinfoData);
@@ -126,10 +146,11 @@ public void getPetinfo(){
@Override
public void onResponse(Call call, Response response) {
if (!response.equals(200)) {
- Toast.makeText(getApplicationContext(),"변경되었습니다.", Toast.LENGTH_SHORT).show();
+ Toast.makeText(getApplicationContext(),"등록되었습니다.", Toast.LENGTH_SHORT).show();
Intent intent = new Intent(AddPetActivity.this, PetSelectActivity.class);
- startActivity(intent);
- AddPetActivity.this.finish();
+ intent.putExtra("petName", Name);
+ setResult(Activity.RESULT_OK, intent);
+ finish();
}
}
diff --git a/application/app/src/main/java/com/example/myapplication/ui/petSelect/PetSelectActivity.java b/application/app/src/main/java/com/example/myapplication/ui/petSelect/PetSelectActivity.java
index 54b6077..a4f8441 100644
--- a/application/app/src/main/java/com/example/myapplication/ui/petSelect/PetSelectActivity.java
+++ b/application/app/src/main/java/com/example/myapplication/ui/petSelect/PetSelectActivity.java
@@ -1,19 +1,19 @@
package com.example.myapplication.ui.petSelect;
+import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
+import android.widget.Toast;
+import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
-
-import com.example.myapplication.R;
-import com.example.myapplication.ui.mainPage.MainActivity;
-
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
-import android.widget.Toast;
+import com.example.myapplication.R;
+import com.example.myapplication.ui.mainPage.MainActivity;
import java.util.ArrayList;
@@ -32,11 +32,8 @@ protected void onCreate(Bundle savedInstanceState) {
mList = new ArrayList<>();
// 리사이클러뷰에 데이터추가 (함수가 밑에 구현되어있음)
- addItem("cat", "밤이", "멍멍이");
- addItem("dog", "보리", "냐옹이");
- addItem("dog", "멍이", "냐옹이");
- addItem("cat", "나비", "냐옹이");
- addItem("cat", "냥냥", "냐옹이");
+ addItem("cat", "밤이");
+ addItem("dog", "보리");
mRecyclerViewAdapter = new RecyclerViewAdapter(mList);
mRecyclerView.setAdapter(mRecyclerViewAdapter);
@@ -53,31 +50,56 @@ public void onItemClick(int pos) {
}
});
- // 내가 구현한건 아닌데 필요할까봐 남겨놓음!
- mRecyclerViewAdapter.setOnLongItemClickListener(new RecyclerViewAdapter.OnLongItemClickListener() {
- @Override
- public void onLongItemClick(int pos) {
- Toast.makeText(getApplicationContext(), "onLongItemClick position : " + pos, Toast.LENGTH_SHORT).show();
- }
- });
-
// 반려동물 추가 버튼 클릭
Button addButton = (Button) findViewById(R.id.addButton);
addButton.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view){
Intent intent = new Intent(getApplicationContext(), AddPetActivity.class);
- startActivity(intent);
+ startActivityForResult(intent, 101);
}
+
});
+
}
+ @Override
+ protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent intent) {
+ super.onActivityResult(requestCode, resultCode, intent);
+
+ if (requestCode == 101) {
+ if (resultCode == Activity.RESULT_OK) {
+ String petName = intent.getExtras().getString("petName");
+ //리사이클러뷰 새로 생성
+ }
+ }
+ }
+
+ /*@Override
+ protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent intent) {
+ super.onActivityResult(requestCode, resultCode, intent);
+
+ ActivityResultLauncher mStartForResult = registerForActivityResult(
+ new ActivityResultContracts.StartActivityForResult(),
+ result -> {
+ //result.getResultCode()를 통하여 결과값 확인
+ if (result.getResultCode() == RESULT_OK) {
+ //ToDo
+ String petName = intent.getExtras().getString("petName");
+ addItem("cat", petName, "멍멍이");
+ mRecyclerViewAdapter.notifyDataSetChanged();
+ }
+ if (result.getResultCode() == RESULT_CANCELED) {
+ //ToDo
+ }
+ });
+ mStartForResult.launch(intent);
+ }*/
// 리사이클러뷰에 데이터추가
- public void addItem(String imgName, String mainText, String subText){
+ public void addItem(String imgName, String mainText){
RecyclerViewItem item = new RecyclerViewItem();
item.setImgName(imgName);
item.setMainText(mainText);
- item.setSubText(subText);
mList.add(item);
}
}
\ No newline at end of file
diff --git a/application/app/src/main/java/com/example/myapplication/ui/petSelect/RecyclerViewAdapter.java b/application/app/src/main/java/com/example/myapplication/ui/petSelect/RecyclerViewAdapter.java
index aed9ec9..e7d72ff 100644
--- a/application/app/src/main/java/com/example/myapplication/ui/petSelect/RecyclerViewAdapter.java
+++ b/application/app/src/main/java/com/example/myapplication/ui/petSelect/RecyclerViewAdapter.java
@@ -17,16 +17,13 @@
public class RecyclerViewAdapter extends RecyclerView.Adapter {
public class ViewHolder extends RecyclerView.ViewHolder {
ImageView imgView_item;
- TextView txt_main;
- TextView txt_sub;
-
+ TextView petNickName;
public ViewHolder(@NonNull View itemView) {
super(itemView);
imgView_item = (ImageView) itemView.findViewById(R.id.imgView_item);
- txt_main = (TextView) itemView.findViewById(R.id.txt_main);
- txt_sub = (TextView) itemView.findViewById(R.id.txt_sub);
+ petNickName = (TextView) itemView.findViewById(R.id.petName);
imgView_item.setOnClickListener(new View.OnClickListener() {
@Override
@@ -80,12 +77,11 @@ public void onBindViewHolder(@NonNull RecyclerViewAdapter.ViewHolder holder, int
RecyclerViewItem item = mList.get(position);
if(item.getImgName()=="cat") // 아이템의 이미지 이름이 cat이면 고양이 사진으로 설정
- holder.imgView_item.setImageResource(R.drawable.cat);
+ holder.imgView_item.setImageResource(R.drawable.catface);
else
- holder.imgView_item.setImageResource(R.drawable.dog);
+ holder.imgView_item.setImageResource(R.drawable.dogface);
- holder.txt_main.setText(item.getMainText());
- holder.txt_sub.setText(item.getSubText());
+ holder.petNickName.setText(item.getMainText());
}
@Override
diff --git a/application/app/src/main/java/com/example/myapplication/ui/setting/PetProfileActivity.java b/application/app/src/main/java/com/example/myapplication/ui/setting/PetProfileActivity.java
index ee00bc4..564267c 100644
--- a/application/app/src/main/java/com/example/myapplication/ui/setting/PetProfileActivity.java
+++ b/application/app/src/main/java/com/example/myapplication/ui/setting/PetProfileActivity.java
@@ -1,6 +1,7 @@
package com.example.myapplication.ui.setting;
import android.app.AlertDialog;
+import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
@@ -12,7 +13,8 @@
import android.widget.Toast;
import com.example.myapplication.R;
-import com.example.myapplication.ui.join.RetrofitClient;
+import com.example.myapplication.ui.ServiceSetting.ServiceGenerator;
+import com.example.myapplication.ui.ServiceSetting.ServiceAPI;
import com.example.myapplication.ui.petSelect.PetSelectActivity;
import retrofit2.Call;
@@ -22,10 +24,11 @@
public class PetProfileActivity extends SettingActivity {
private TextView petAge;
private EditText petBreed,petNickName;
- private Button btnAge, btnSave, btnDelete;
+ private Button man, woman, NeuteringYes, NeuteringNo, btnAge, btnSave, btnDelete;
+ private ServiceAPI profileAPI = ServiceGenerator.createService(ServiceAPI.class);
+ public void MaterialButtonToggleGroup (Context context) {
- private Intent intent;
- private ProfileAPI profileAPI = RetrofitClient.getClient().create(ProfileAPI.class);
+ }
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -38,11 +41,15 @@ protected void onCreate(Bundle savedInstanceState) {
btnAge = findViewById(R.id.btnAge);
btnSave = findViewById(R.id.btnSave);
btnDelete = findViewById(R.id.btnDelete);
+ man = findViewById(R.id.man);
+ woman = findViewById(R.id.woman);
+ NeuteringYes = findViewById(R.id.Neuteringyes);
+ NeuteringNo = findViewById(R.id.Neuteringno);
//사용자가 초기 설정한 축종에 따라 사진 보여주기
//품종 사용자가 작성한 내용, DB 연결해 보여주기
- getNameBreedAge();
+ callPetinfo();
//반려동물 이름, 사용자가 작성한 내용 보여주기
@@ -123,7 +130,21 @@ public void updatePetPost(){
String Name = petNickName.getText().toString().trim();
String Age = petAge.getText().toString().trim();
//String Breed = petBreed.getText().toString().trim();
- PetinfoData petinfoData = new PetinfoData(Name, Age, null, 1, 1);
+ String Gender = null;
+ String Neutering = null;
+ if (man.isEnabled()) {
+ Gender = man.getText().toString();
+ } else if (woman.isEnabled()) {
+ Gender = woman.getText().toString();
+ }
+
+ if (NeuteringYes.isEnabled()) {
+ Neutering = NeuteringYes.getText().toString();
+ } else if (NeuteringNo.isEnabled()) {
+ Neutering = NeuteringNo.getText().toString();
+ }
+
+ PetinfoData petinfoData = new PetinfoData(Name, Age, null, Gender, Neutering);
Call call = profileAPI.updatePetPost(Age, petinfoData);
@@ -170,21 +191,26 @@ public void onFailure(Call call, Throwable t) {
}
});
}
- public void getNameBreedAge(){
+ public void callPetinfo(){
String Name = petNickName.getText().toString().trim();
String Age = petAge.getText().toString().trim();
//String Breed = petBreed.getText().toString().trim();
- PetinfoData petinfoData = new PetinfoData(Name, Age, null, 1, 1);
- Call call = profileAPI.getNameBreedAge(Name, petinfoData);
+ //String Gender = null;
+ //String Neutering = "";
+ PetinfoData petinfoData = new PetinfoData(Name, Age, null, null, null);
+ Call call = profileAPI.getPetinfo(petinfoData);
call.enqueue(new Callback() {
@Override
public void onResponse(Call call, Response response) {
if (!response.equals(200)) {
//정보 받아오는 것에서 오류 발생
- /*petNickName.setText(response.body().getPetName());
- petBreed.setText(response.body().getPetBreed());
- petAge.setText(response.body().getPetAge());*/
+ petNickName.setHint(response.body().getPetName());
+ //petBreed.setText(response.body().getPetBreed());
+ petAge.setText(response.body().getPetAge());
+ /*if ((response.body().getPetGender()).equals("남")) {
+
+ }*/
Toast.makeText(getApplicationContext(),"설정되었습니다.", Toast.LENGTH_SHORT).show();
}
}
@@ -199,6 +225,8 @@ public void onFailure(Call call, Throwable t) {
.show();
}
});
+
+
}
}
diff --git a/application/app/src/main/java/com/example/myapplication/ui/setting/PetinfoData.java b/application/app/src/main/java/com/example/myapplication/ui/setting/PetinfoData.java
index a186f25..4494373 100644
--- a/application/app/src/main/java/com/example/myapplication/ui/setting/PetinfoData.java
+++ b/application/app/src/main/java/com/example/myapplication/ui/setting/PetinfoData.java
@@ -15,17 +15,17 @@ public class PetinfoData {
public String petAge;
@SerializedName("petGender")
- public int petGender;
+ public String petGender;
- @SerializedName("pet중성화")
- public int pet중성화;
+ @SerializedName("petNeutering")
+ public String petNeutering;
- public PetinfoData(String petName, String petAge, String petBreed, int petGender, int pet중성화) {
+ public PetinfoData(String petName, String petAge, String petBreed, String petGender, String petNeutering) {
this.petName = petName;
this.petAge = petAge;
this.petBreed = petBreed;
this.petGender = petGender;
- this.pet중성화 = pet중성화;
+ this.petNeutering = petNeutering;
}
}
diff --git a/application/app/src/main/java/com/example/myapplication/ui/setting/ProfileAPI.java b/application/app/src/main/java/com/example/myapplication/ui/setting/ProfileAPI.java
deleted file mode 100644
index 3b309d7..0000000
--- a/application/app/src/main/java/com/example/myapplication/ui/setting/ProfileAPI.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package com.example.myapplication.ui.setting;
-
-import retrofit2.Call;
-import retrofit2.http.Body;
-import retrofit2.http.DELETE;
-import retrofit2.http.POST;
-import retrofit2.http.PUT;
-import retrofit2.http.Path;
-
-public interface ProfileAPI {
- //@통신 방식("통신 API명")
-
- //반려동물 정보 등록
- @POST("/PetSelect")
- Call getPetinfo(@Body PetinfoData petinfoData);
-
- //반려동물 초기 셋팅
- @POST("/PetProfile/{petName}")
- Call getNameBreedAge(
- @Path("petName") String petName,
- @Body PetinfoData petinfoData
- );
-
- //회원 탈퇴
- @DELETE("/Profile/{memberEmail}")
- Call deletePost(@Path("memberEmail")int id);
-
- //반려동물 정보 수정
- @PUT("/Profile/{petAge}")
- Call updatePetPost(@Path("petAge") String petAge,
- @Body PetinfoData petinfoData);
-
- //반려동물 삭제
- @DELETE("/Profile/{petName}")
- Call deletePetPost(@Path("petName")int name);
-}
diff --git a/application/app/src/main/java/com/example/myapplication/ui/setting/ProfileActivity.java b/application/app/src/main/java/com/example/myapplication/ui/setting/ProfileActivity.java
index 32d1276..c1ef0d3 100644
--- a/application/app/src/main/java/com/example/myapplication/ui/setting/ProfileActivity.java
+++ b/application/app/src/main/java/com/example/myapplication/ui/setting/ProfileActivity.java
@@ -8,9 +8,12 @@
import android.widget.TextView;
import com.example.myapplication.R;
-import com.example.myapplication.ui.join.RetrofitClient;
-import com.example.myapplication.ui.login.LoginActivity;
+import com.example.myapplication.ui.ServiceSetting.ServiceGenerator;
import com.example.myapplication.ui.join.PasswordChangeActivity;
+import com.example.myapplication.ui.ServiceSetting.ServiceAPI;
+import com.example.myapplication.ui.login.LoginActivity;
+import com.example.myapplication.ui.login.LoginRequest;
+import com.example.myapplication.ui.login.LoginResponse;
import retrofit2.Call;
import retrofit2.Callback;
@@ -18,18 +21,20 @@
public class ProfileActivity extends SettingActivity {
private Intent intent;
-
- private ProfileAPI profileAPI = RetrofitClient.getClient().create(ProfileAPI.class);
+ private TextView ID, pwchange, logout, deleteinfo;
+ private ServiceAPI profileAPI = ServiceGenerator.createService(ServiceAPI.class);
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.profile);
- TextView ID = findViewById(R.id.userID);
- TextView pwchange = findViewById(R.id.pwchange);
- TextView logout = findViewById(R.id.logout);
- TextView deleteinfo = findViewById(R.id.deleteinfo);
+ ID = findViewById(R.id.userID);
+ pwchange = findViewById(R.id.pwchange);
+ logout = findViewById(R.id.logout);
+ deleteinfo = findViewById(R.id.deleteinfo);
+
+ calluserInfo();
//비밀번호 변경
pwchange.setOnClickListener(new View.OnClickListener() {
@@ -99,4 +104,31 @@ public void onFailure(Call call, Throwable t) {
}
});
}
+ public void calluserInfo(){
+ String userID = ID.getText().toString().trim();
+ LoginRequest loginRequest = new LoginRequest(userID, null);
+ Call call = profileAPI.getLoginResponse(loginRequest);
+
+ call.enqueue(new Callback() {
+ @Override
+ public void onResponse(Call call, Response response) {
+ if (!response.equals(200)) {
+ //정보 받아오는 것에서 오류 발생
+ ID.setText(response.body().getuserID());
+ }
+ }
+
+ @Override
+ public void onFailure(Call call, Throwable t) {
+ AlertDialog.Builder builder = new AlertDialog.Builder(ProfileActivity.this);
+ builder.setTitle("알림")
+ .setMessage("잠시 후에 다시 시도해주세요.")
+ .setPositiveButton("확인", null)
+ .create()
+ .show();
+ }
+ });
+
+
+ }
}
diff --git a/application/app/src/main/java/com/example/myapplication/ui/setting/ProfileResponse.java b/application/app/src/main/java/com/example/myapplication/ui/setting/ProfileResponse.java
index 91b04d9..5f6dbcf 100644
--- a/application/app/src/main/java/com/example/myapplication/ui/setting/ProfileResponse.java
+++ b/application/app/src/main/java/com/example/myapplication/ui/setting/ProfileResponse.java
@@ -19,6 +19,10 @@ public class ProfileResponse {
private String petBreed;
@SerializedName("petAge")
private String petAge;
+ /*@SerializedName("petGender")
+ public String petGender;
+ @SerializedName("petNeutering")
+ public String petNeutering;*/
public String getPetName() {
return petName;
@@ -29,6 +33,7 @@ public String getPetBreed() {
public String getPetAge() {
return petAge;
}
+ //public String getPetGender() { return petGender;}
public int getCode() {
return code;
diff --git a/application/app/src/main/res/drawable-xxhdpi/dog.png b/application/app/src/main/res/drawable-xxhdpi/dog.png
deleted file mode 100644
index 97e1bd0..0000000
Binary files a/application/app/src/main/res/drawable-xxhdpi/dog.png and /dev/null differ
diff --git a/src/main/res/drawable/background_default.png b/application/app/src/main/res/drawable/background_default.png
similarity index 100%
rename from src/main/res/drawable/background_default.png
rename to application/app/src/main/res/drawable/background_default.png
diff --git a/src/main/res/drawable/background_detail.png b/application/app/src/main/res/drawable/background_detail.png
similarity index 100%
rename from src/main/res/drawable/background_detail.png
rename to application/app/src/main/res/drawable/background_detail.png
diff --git a/src/main/res/drawable/background_setting.png b/application/app/src/main/res/drawable/background_setting.png
similarity index 100%
rename from src/main/res/drawable/background_setting.png
rename to application/app/src/main/res/drawable/background_setting.png
diff --git a/application/app/src/main/res/drawable/cat.png b/application/app/src/main/res/drawable/cat.png
deleted file mode 100644
index ad3a43f..0000000
Binary files a/application/app/src/main/res/drawable/cat.png and /dev/null differ
diff --git a/src/main/res/drawable/catface.png b/application/app/src/main/res/drawable/catface.png
similarity index 100%
rename from src/main/res/drawable/catface.png
rename to application/app/src/main/res/drawable/catface.png
diff --git a/src/main/res/drawable/dogface.png b/application/app/src/main/res/drawable/dogface.png
similarity index 100%
rename from src/main/res/drawable/dogface.png
rename to application/app/src/main/res/drawable/dogface.png
diff --git a/src/main/res/drawable/icon_app.png b/application/app/src/main/res/drawable/icon_app.png
similarity index 100%
rename from src/main/res/drawable/icon_app.png
rename to application/app/src/main/res/drawable/icon_app.png
diff --git a/src/main/res/drawable/icon_app2.png b/application/app/src/main/res/drawable/icon_app2.png
similarity index 100%
rename from src/main/res/drawable/icon_app2.png
rename to application/app/src/main/res/drawable/icon_app2.png
diff --git a/src/main/res/drawable/icon_appname.png b/application/app/src/main/res/drawable/icon_appname.png
similarity index 100%
rename from src/main/res/drawable/icon_appname.png
rename to application/app/src/main/res/drawable/icon_appname.png
diff --git a/src/main/res/drawable/icon_appname2.png b/application/app/src/main/res/drawable/icon_appname2.png
similarity index 100%
rename from src/main/res/drawable/icon_appname2.png
rename to application/app/src/main/res/drawable/icon_appname2.png
diff --git a/src/main/res/drawable/icon_appname3.png b/application/app/src/main/res/drawable/icon_appname3.png
similarity index 100%
rename from src/main/res/drawable/icon_appname3.png
rename to application/app/src/main/res/drawable/icon_appname3.png
diff --git a/src/main/res/drawable/icon_appname4.png b/application/app/src/main/res/drawable/icon_appname4.png
similarity index 100%
rename from src/main/res/drawable/icon_appname4.png
rename to application/app/src/main/res/drawable/icon_appname4.png
diff --git a/src/main/res/drawable/user.png b/application/app/src/main/res/drawable/user.png
similarity index 100%
rename from src/main/res/drawable/user.png
rename to application/app/src/main/res/drawable/user.png
diff --git a/application/app/src/main/res/layout-w1240dp/activity_login.xml b/application/app/src/main/res/layout-w1240dp/activity_login.xml
index 2445403..f42c0e9 100644
--- a/application/app/src/main/res/layout-w1240dp/activity_login.xml
+++ b/application/app/src/main/res/layout-w1240dp/activity_login.xml
@@ -9,6 +9,7 @@
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
+ android:background="@drawable/background_default"
tools:context=".ui.login.LoginActivity">
+ app:layout_constraintTop_toTopOf="parent"
+ android:textColor="@color/white"
+ android:textColorHint="@color/white"
+ android:backgroundTint="@color/white"/>
+ app:layout_constraintTop_toBottomOf="@+id/username"
+ android:textColor="@color/white"
+ android:textColorHint="@color/white"
+ android:backgroundTint="@color/white"/>
+ app:layout_constraintVertical_bias="0.2"
+ android:textColor="@color/purple"
+ android:backgroundTint="@color/white"/>
+ app:layout_constraintTop_toTopOf="parent"
+ android:textColor="@color/white"
+ android:textColorHint="@color/white"
+ android:backgroundTint="@color/white"/>
+ app:layout_constraintTop_toBottomOf="@+id/username"
+ android:textColor="@color/white"
+ android:textColorHint="@color/white"
+ android:backgroundTint="@color/white"/>
+ app:layout_constraintVertical_bias="0.2"
+ android:textColor="@color/purple"
+ android:backgroundTint="@color/white"/>
+ android:layout_height="match_parent"
+ android:background="@drawable/background_detail">
+ android:textStyle="bold"
+ android:textColor="@color/white"/>
+ android:textSize="15dp"
+ android:textColor="@color/white"/>
+ android:minHeight="48dp"
+ android:textColor="@color/white"
+ android:textColorHint="@color/white"
+ android:backgroundTint="@color/white"/>
+ android:textSize="15dp"
+ android:textColor="@color/white"/>
+ android:minHeight="48dp"
+ android:textColor="@color/white"
+ android:textColorHint="@color/white"
+ android:backgroundTint="@color/white"/>
+ android:textSize="15dp"
+ android:textColor="@color/white"/>
+ android:minHeight="48dp"
+ android:textColor="@color/white"
+ android:textColorHint="@color/white"
+ android:backgroundTint="@color/white"/>