restaurant out of order test updated

This commit is contained in:
2020-11-10 22:33:26 +03:00
parent 150c1055a8
commit ec96284cd5
3 changed files with 67 additions and 35 deletions

View File

@@ -1,26 +0,0 @@
package ch.pizzacucina.android;
import android.content.Context;
import androidx.test.platform.app.InstrumentationRegistry;
import androidx.test.ext.junit.runners.AndroidJUnit4;
import org.junit.Test;
import org.junit.runner.RunWith;
import static org.junit.Assert.*;
/**
* Instrumentation test, which will execute on an Android device.
*
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
*/
@RunWith(AndroidJUnit4.class)
public class ExampleInstrumentedTest {
@Test
public void useAppContext() throws Exception {
// Context of the app under test.
Context appContext = InstrumentationRegistry.getTargetContext();
assertEquals("ch.pizzalink.android", appContext.getPackageName());
}
}

View File

@@ -34,6 +34,7 @@ import java.util.ArrayList;
import java.util.Calendar; import java.util.Calendar;
import java.util.Date; import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map;
import butterknife.BindString; import butterknife.BindString;
import butterknife.BindView; import butterknife.BindView;
@@ -85,7 +86,6 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment {
@BindString(R.string.do_not_slice_pizza) String noText; @BindString(R.string.do_not_slice_pizza) String noText;
@BindString(R.string.restaurant_out_of_order) String restaurantOutOfOrderText; @BindString(R.string.restaurant_out_of_order) String restaurantOutOfOrderText;
@BindString(R.string.choose_pick_up_date_time) String choosePickUpDateTimeText; @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.something_went_wrong) String genericErrorText;
@BindString(R.string.unknown_payment_method) String unknownPaymentMethodText; @BindString(R.string.unknown_payment_method) String unknownPaymentMethodText;
@BindString(R.string.payment_canceled) String paymentCanceledText; @BindString(R.string.payment_canceled) String paymentCanceledText;
@@ -264,10 +264,6 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment {
} }
else { else {
getDeliveryTimeOfStore(restaurantOutOfOrderText); getDeliveryTimeOfStore(restaurantOutOfOrderText);
/*
DialogHelper.hideLoadingDialog();
showRestaurantOutOfOrderDialog(restaurantOutOfOrderText);
*/
} }
} }
@@ -380,7 +376,7 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment {
showDatePickerDialog(); showDatePickerDialog();
} }
else { else {
showRestaurantOutOfOrderDialog(dialogMessage); showRestaurantOutOfOrderDialog(dialogMessage + getWorkingHoursString());
} }
} }
else { else {
@@ -422,7 +418,7 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment {
redirectToPayment(); redirectToPayment();
} }
else { else {
showRestaurantOutOfOrderDialog(restaurantOutOfOrderOnSelectedDateText); showRestaurantOutOfOrderDialog(restaurantOutOfOrderText + getWorkingHoursString());
} }
} }
@@ -1380,6 +1376,69 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment {
} }
} }
private String getWorkingHoursString(){
HashMap<String, ArrayList<String>> shiftMap = new HashMap<>();
concatTheSameWorkingDays(shiftMap, "Mo", storeShiftModel.getMondayShift());
concatTheSameWorkingDays(shiftMap, "Di", storeShiftModel.getTuesdayShift());
concatTheSameWorkingDays(shiftMap, "Mi", storeShiftModel.getWednesdayShift());
concatTheSameWorkingDays(shiftMap, "Do", storeShiftModel.getThursdayShift());
concatTheSameWorkingDays(shiftMap, "Fr", storeShiftModel.getFridayShift());
concatTheSameWorkingDays(shiftMap, "Sa", storeShiftModel.getSaturdayShift());
concatTheSameWorkingDays(shiftMap, "So", storeShiftModel.getSundayShift());
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("\n");
for(String key: shiftMap.keySet()){
ArrayList<String> hoursArray = shiftMap.get(key);
if(hoursArray == null){
hoursArray = new ArrayList<>();
}
StringBuilder hoursBuilder = new StringBuilder();
for(String part: hoursArray){
hoursBuilder.append(part).append(",");
}
int index = hoursBuilder.lastIndexOf(",");
if(index != -1){
hoursBuilder.deleteCharAt(index);
}
stringBuilder
.append(key)
.append(": ")
.append(hoursBuilder.toString())
.append("\n");
}
return stringBuilder.toString();
}
private void concatTheSameWorkingDays(HashMap<String, ArrayList<String>> map,
String day,
ArrayList<String> workingHours){
if(workingHours.isEmpty()){
return;
}
if(map.containsValue(workingHours)){
String currentKey = getKeyOfAValueOnMap(map, workingHours);
String updatedKey = currentKey + "," + day;
map.remove(currentKey);
map.put(updatedKey, workingHours);
}
else {
map.put(day, workingHours);
}
}
private <K, V> K getKeyOfAValueOnMap(Map<K, V> map, V value) {
for (Map.Entry<K, V> entry : map.entrySet()) {
if (value.equals(entry.getValue())) {
return entry.getKey();
}
}
return null;
}
/* /*
// Canceled because response json from PostFinance fr apple Webview is not valid // Canceled because response json from PostFinance fr apple Webview is not valid
class PaymentJavaScriptInterface { class PaymentJavaScriptInterface {

View File

@@ -98,8 +98,7 @@
<string name="count">Stückzahl</string>     <string name="count">Stückzahl</string>    
<string name="no_options_selected_part">wurde nicht ausgewählt.</string> <string name="no_options_selected_part">wurde nicht ausgewählt.</string>
<string name="cannot_use_campaign">Kampagne kann nicht in den Warenkorb gelegt werden, da sie schon benutzt wurde.</string> <string name="cannot_use_campaign">Kampagne kann nicht in den Warenkorb gelegt werden, da sie schon benutzt wurde.</string>
<string name="restaurant_out_of_order">Bestellung ausserhalb der Öffnungszeiten. Bitte den gewünschten Liefertermin auswählen.</string> <string name="restaurant_out_of_order">Das Datum ist ausserhalb der Öffnungszeiten (Ö) oder Lieferzeiten.(L)\n</string>
<string name="restaurant_out_of_order_on_selected_date">Restaurant am gewählten Datum und Uhrzeit ausser Betrieb. Möchten Sie eine Bestellung für ein anderes Datum und eine andere Uhrzeit geben?</string>
<!-- ProductPropertiesBottomSheetDialog --> <!-- ProductPropertiesBottomSheetDialog -->
<!-- CartFragment-->     <!-- CartFragment-->