diff --git a/.idea/caches/build_file_checksums.ser b/.idea/caches/build_file_checksums.ser index 4864535..0c1634f 100644 Binary files a/.idea/caches/build_file_checksums.ser and b/.idea/caches/build_file_checksums.ser differ diff --git a/.idea/caches/gradle_models.ser b/.idea/caches/gradle_models.ser index 530be7e..b97e1e9 100644 Binary files a/.idea/caches/gradle_models.ser and b/.idea/caches/gradle_models.ser differ diff --git a/app/src/main/java/ch/pizzaleu/android/api/ApiConstants.java b/app/src/main/java/ch/pizzaleu/android/api/ApiConstants.java index 8b4efd6..0324e03 100644 --- a/app/src/main/java/ch/pizzaleu/android/api/ApiConstants.java +++ b/app/src/main/java/ch/pizzaleu/android/api/ApiConstants.java @@ -24,6 +24,8 @@ public class ApiConstants { public static final String PAYMENT_METHOD_CODE_ANDROID_PAY = "android_pay"; public static final String PAYMENT_METHOD_CODE_APPLE_PAY = "apple_pay"; + public static final String SHIPPING_METHOD_CODE_PICK_UP_FROM_STORE = "pickup.pickup"; + public static final String CART_SUBTOTAL = "zwischensumme"; public static final String CART_COMMISSION = "zahlungsgebühr"; public static final String CART_TOTAL = "total"; diff --git a/app/src/main/java/ch/pizzaleu/android/fragment/createOrder/CreateOrderSummaryFragment.java b/app/src/main/java/ch/pizzaleu/android/fragment/createOrder/CreateOrderSummaryFragment.java index 46dd016..d176a56 100644 --- a/app/src/main/java/ch/pizzaleu/android/fragment/createOrder/CreateOrderSummaryFragment.java +++ b/app/src/main/java/ch/pizzaleu/android/fragment/createOrder/CreateOrderSummaryFragment.java @@ -77,6 +77,7 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment { @BindString(R.string.slice_pizza) String yesText; @BindString(R.string.do_not_slice_pizza) String noText; @BindString(R.string.restaurant_out_of_order) String restaurantOutOfOrderText; + @BindString(R.string.choose_pick_up_date_time) String choosePickUpDateTimeText; @BindString(R.string.restaurant_out_of_order_on_selected_date) String restaurantOutOfOrderOnSelectedDateText; @BindString(R.string.something_went_wrong) String genericErrorText; @BindString(R.string.unknown_payment_method) String unknownPaymentMethodText; @@ -219,7 +220,12 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment { @Override public void onResponse(Call call, Response response) { if(response.isSuccessful() && response.body().isSuccess()){ - checkDeliveryTime(); + if(createOrderActivity.getSelectedShippingMethod().getCode().equalsIgnoreCase(ApiConstants.SHIPPING_METHOD_CODE_PICK_UP_FROM_STORE)){ + getDeliveryTimeOfStore(choosePickUpDateTimeText); + } + else { + checkDeliveryTime(); + } } else{ DialogHelper.hideLoadingDialog(); @@ -250,7 +256,7 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment { redirectToPayment(); } else { - getDeliveryTimeOfStore(); + getDeliveryTimeOfStore(restaurantOutOfOrderText); /* DialogHelper.hideLoadingDialog(); showRestaurantOutOfOrderDialog(restaurantOutOfOrderText); @@ -272,7 +278,7 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment { }); } - private void getDeliveryTimeOfStore(){ + private void getDeliveryTimeOfStore(final String dialogMessage){ ApiService .apiInterface .getDeliveryTimeOfStore(SessionHelper.getSelectedStore().getStoreName()) @@ -285,7 +291,7 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment { if(response.body().isSuccess()){ storeShiftModel = response.body().getData(); - showRestaurantOutOfOrderDialog(restaurantOutOfOrderText); + showRestaurantOutOfOrderDialog(dialogMessage); } else { DialogHelper.showAlertDialog(BaseActivity.currentActivity, genericErrorText); @@ -1004,6 +1010,7 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment { String[] array = part.split("-"); String partStart = array[0]; String partEnd = array[1]; + partEnd = fixEndTime(partEnd); int partStartHour = Integer.valueOf(partStart.substring(0,2)); int partStartMinute = Integer.valueOf(partStart.substring(3, 5)); @@ -1095,4 +1102,32 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment { } } + private String fixEndTime(String endTime){ + try { + String[] time = endTime.split(":"); + int hour = Integer.parseInt(time[0]); + int minute = Integer.parseInt(time[1]); + if(minute < 15){ + minute += 60; + if(hour == 0){ + hour += 24; + } + hour -= 1; + } + minute -= 15; + String hourString = String.valueOf(hour); + if(hourString.length() == 1){ + hourString = "0" + hourString; + } + String minuteString = String.valueOf(minute); + if(minuteString.length() == 1){ + minuteString = "0" + minuteString; + } + return hourString + ":" + minuteString; + }catch (Exception e){ + e.printStackTrace(); + return endTime; + } + } + } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 5e8eb3c..268e8b1 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -191,6 +191,7 @@ Unbekannte Zahlungsmethode. Die Zahlung wurde storniert. Android Pay konnte nicht finden. + Lütfen siparişinizi restorandan almak istediğiniz tarih ve saati seçiniz.