diff --git a/app/src/main/java/com/capstone/foodify/API/FoodApi.java b/app/src/main/java/com/capstone/foodify/API/FoodApi.java index 4d2ea5f..d4fc172 100644 --- a/app/src/main/java/com/capstone/foodify/API/FoodApi.java +++ b/app/src/main/java/com/capstone/foodify/API/FoodApi.java @@ -32,7 +32,7 @@ public interface FoodApi { Gson gson = new GsonBuilder().setDateFormat("HH:mm:ss dd-MM-yyyy").setLenient().create(); FoodApi apiService = new Retrofit.Builder() - .baseUrl("https://foodify-backend-production.up.railway.app/api/").addConverterFactory(GsonConverterFactory.create(gson)) + .baseUrl("http://192.168.1.183:8080/api/").addConverterFactory(GsonConverterFactory.create(gson)) .build() .create(FoodApi.class); @@ -93,4 +93,7 @@ public interface FoodApi { @GET("shops/{id}") Call getShopById(@Path("id") int id); + + @GET("products/{productId}/user") + Call checkUserBuyProduct(@Path("productId") int productId, @Query("userId") int userId); } diff --git a/app/src/main/java/com/capstone/foodify/API/FoodApiToken.java b/app/src/main/java/com/capstone/foodify/API/FoodApiToken.java index 821924e..784f591 100644 --- a/app/src/main/java/com/capstone/foodify/API/FoodApiToken.java +++ b/app/src/main/java/com/capstone/foodify/API/FoodApiToken.java @@ -47,7 +47,7 @@ public interface FoodApiToken { FoodApiToken apiService = new Retrofit.Builder() .client(client) - .baseUrl("https://foodify-backend-production.up.railway.app/api/").addConverterFactory(GsonConverterFactory.create(gson)) + .baseUrl("http://192.168.1.183:8080/api/").addConverterFactory(GsonConverterFactory.create(gson)) .build() .create(FoodApiToken.class); diff --git a/app/src/main/java/com/capstone/foodify/Activity/FoodDetailActivity.java b/app/src/main/java/com/capstone/foodify/Activity/FoodDetailActivity.java index 6cf350e..3c22528 100644 --- a/app/src/main/java/com/capstone/foodify/Activity/FoodDetailActivity.java +++ b/app/src/main/java/com/capstone/foodify/Activity/FoodDetailActivity.java @@ -73,7 +73,7 @@ public class FoodDetailActivity extends AppCompatActivity { private static final int PAGE_SIZE = 8; private static final String SORT_BY = "id"; private static final String SORT_DIR = "asc"; - private static boolean LAST_PAGE; + private static boolean LAST_PAGE, IS_BUY; private HorizontalQuantitizer horizontalQuantitizer; private ImageSlider imageSlider; private ImageView back_image, not_favorite, is_favorite, delete_button, edt_button; @@ -149,6 +149,8 @@ public class FoodDetailActivity extends AppCompatActivity { hideUI(); + checkUserBuyThisProduct(); + if(Common.CURRENT_USER == null){ @@ -195,10 +197,16 @@ public class FoodDetailActivity extends AppCompatActivity { rating_button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - if(Common.CURRENT_USER != null) - openCommentDialog(Gravity.CENTER, CREATE_COMMENT); - else - startActivity(new Intent(FoodDetailActivity.this, SignInActivity.class)); + if(Common.CURRENT_USER != null){ + if(IS_BUY){ + //If user already buy it + openCommentDialog(Gravity.CENTER, CREATE_COMMENT); + } else { + //If not + Toast.makeText(FoodDetailActivity.this, "Bạn cần phải mua sản phẩm trước khi bình luận!", Toast.LENGTH_SHORT).show(); + } + } else + Toast.makeText(FoodDetailActivity.this, "Bạn cần phải đăng nhập để thực hiện hành động này!", Toast.LENGTH_SHORT).show(); } }); @@ -267,6 +275,29 @@ public class FoodDetailActivity extends AppCompatActivity { }); } + private void checkUserBuyThisProduct(){ + + if(Common.CURRENT_USER != null){ + FoodApi.apiService.checkUserBuyProduct(Integer.parseInt(foodId), Common.CURRENT_USER.getId()).enqueue(new Callback() { + @Override + public void onResponse(Call call, Response response) { + if(response.code() == 200){ + + IS_BUY = response.body().isTrue(); + + } else { + Toast.makeText(FoodDetailActivity.this, "Đã xảy ra lỗi hệ thống! Mã lỗi: " + response.code(), Toast.LENGTH_SHORT).show(); + } + } + + @Override + public void onFailure(Call call, Throwable t) { + Toast.makeText(FoodDetailActivity.this, "Đã xảy ra lỗi kết nối đến hệ thống!", Toast.LENGTH_SHORT).show(); + } + }); + } + } + private void isFavoriteIcon(){ not_favorite.setVisibility(View.GONE); is_favorite.setVisibility(View.VISIBLE); diff --git a/app/src/main/res/layout/activity_food_detail.xml b/app/src/main/res/layout/activity_food_detail.xml index 4fb1071..df6a038 100644 --- a/app/src/main/res/layout/activity_food_detail.xml +++ b/app/src/main/res/layout/activity_food_detail.xml @@ -325,7 +325,7 @@