diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml index 0ad711e..7866781 100644 --- a/.idea/deploymentTargetDropDown.xml +++ b/.idea/deploymentTargetDropDown.xml @@ -7,11 +7,11 @@ - + - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index 921d88c..abbe4f0 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -5,6 +5,7 @@ + diff --git a/app/src/main/java/com/example/nemophila/entities/PostJson.java b/app/src/main/java/com/example/nemophila/entities/PostJson.java index fff198d..1a3573b 100644 --- a/app/src/main/java/com/example/nemophila/entities/PostJson.java +++ b/app/src/main/java/com/example/nemophila/entities/PostJson.java @@ -1,4 +1,22 @@ package com.example.nemophila.entities; public class PostJson { + private String uid; + private String pid; + + //setter + public void setUid(String uid) { + this.uid = uid; + } + public void setPid(String pid) { + this.pid = pid; + } + + //getter + public String getUid() { + return uid; + } + public String getPid() { + return pid; + } } diff --git a/app/src/main/java/com/example/nemophila/resources/AccountsRest.java b/app/src/main/java/com/example/nemophila/resources/AccountsRest.java index e5bcc24..8c563e5 100644 --- a/app/src/main/java/com/example/nemophila/resources/AccountsRest.java +++ b/app/src/main/java/com/example/nemophila/resources/AccountsRest.java @@ -42,7 +42,8 @@ @FormUrlEncoded @POST("accounts/{uid}/login") Call getAccounts( - @Path("uid") String uid + @Path("uid") String uid, + @Field("pw")String pw ); @FormUrlEncoded diff --git a/app/src/main/java/com/example/nemophila/resources/PostsRest.java b/app/src/main/java/com/example/nemophila/resources/PostsRest.java index 9b71482..1791bd4 100644 --- a/app/src/main/java/com/example/nemophila/resources/PostsRest.java +++ b/app/src/main/java/com/example/nemophila/resources/PostsRest.java @@ -1,7 +1,9 @@ package com.example.nemophila.resources; import com.example.nemophila.entities.Post; +import com.example.nemophila.entities.PostJson; +import java.util.ArrayList; import java.util.Collection; import retrofit2.Call; @@ -30,4 +32,9 @@ Call> getAccountPosts( @Path("uid") String uid ); + + @GET("shops/{sid}/posts") + Call> getShopPosts( + @Path("sid") String sid + ); } diff --git a/app/src/main/java/com/example/nemophila/viewmodels/PostsViewModel.java b/app/src/main/java/com/example/nemophila/viewmodels/PostsViewModel.java index aa5929d..5e32ce2 100644 --- a/app/src/main/java/com/example/nemophila/viewmodels/PostsViewModel.java +++ b/app/src/main/java/com/example/nemophila/viewmodels/PostsViewModel.java @@ -5,8 +5,10 @@ import androidx.lifecycle.ViewModel; import com.example.nemophila.entities.Post; +import com.example.nemophila.entities.PostJson; import com.example.nemophila.resources.PostsRest; +import java.util.ArrayList; import java.util.Collection; import retrofit2.Call; @@ -21,13 +23,17 @@ final private Retrofit retrofit; final private PostsRest postsRest; private String pid; + private ArrayList postJsons = new ArrayList<>(); //LiveData - final private MutableLiveData> postsLiveData; + final private MutableLiveData> accountPostsLiveData; + final private MutableLiveData> shopPostsLiveData; + //コンストラクタ public PostsViewModel() { - this.postsLiveData = new MutableLiveData<>(); + this.accountPostsLiveData = new MutableLiveData<>(); + this.shopPostsLiveData = new MutableLiveData<>(); this.retrofit = new Retrofit.Builder() .baseUrl("http://nitta-lab-www.is.konan-u.ac.jp/Nemophila/") .addConverterFactory(JacksonConverterFactory.create()) @@ -38,17 +44,17 @@ //getter public LiveData> getLiveData() { - return this.postsLiveData; + return this.accountPostsLiveData; } //API通信メソッド - public void fetchPosts(String uid) { + public void getAccountPosts(String uid) { Call> call = postsRest.getAccountPosts(uid); call.enqueue(new Callback>() { @Override public void onResponse(Call> call, Response> response) { if (response.isSuccessful()) { - postsLiveData.setValue(response.body()); + accountPostsLiveData.setValue(response.body()); } else { //レスポンスエラーを通知 } @@ -64,7 +70,6 @@ public String createPost(String uid, String token, String sid, String rate, String genre, String comment, String image1, String image2, String image3) { - Call call = postsRest.postAccountPost(uid ,token, sid, rate, genre, comment, image1, image2, image3); call.enqueue(new Callback() { @@ -84,4 +89,30 @@ }); return pid; } + + private void getShopPostJsons(String sid) { + Call> call = postsRest.getShopPosts(sid); + call.enqueue(new Callback>() { + @Override + public void onResponse(Call> call, Response> response) { + if (response.isSuccessful()) { + postJsons = response.body(); + } else { + //レスポンスエラー + } + } + + @Override + public void onFailure(Call> call, Throwable t) { + //通信エラー + } + }); + } + + public void getShopPosts(String sid) { + getAccountPosts(sid); + for(PostJson pj: this.postJsons) { + + } + } }