delivery time preference dialog fix
This commit is contained in:
@@ -229,8 +229,7 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment {
|
||||
if(response.isSuccessful() && response.body().isSuccess()){
|
||||
|
||||
if(createOrderActivity.getSelectedShippingMethod().getCode().equalsIgnoreCase(ApiConstants.SHIPPING_METHOD_CODE_FREE_SHIPPING)){
|
||||
DialogHelper.hideLoadingDialog();
|
||||
showDeliveryTimePreferenceDialog();
|
||||
checkDeliveryTimeForPreferenceDialog();
|
||||
}
|
||||
else if(createOrderActivity.getSelectedShippingMethod().getCode().equalsIgnoreCase(ApiConstants.SHIPPING_METHOD_CODE_PICK_UP_FROM_STORE)){
|
||||
getDeliveryTimeOfStore(choosePickUpDateTimeText);
|
||||
@@ -254,33 +253,6 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment {
|
||||
|
||||
}
|
||||
|
||||
private void showDeliveryTimePreferenceDialog(){
|
||||
DialogHelper.showTwoButtonsDialog(
|
||||
getString(R.string.info),
|
||||
getString(R.string.delivery_time_preference_message),
|
||||
R.string.delivery_time_preference_as_soon_as_possible,
|
||||
new MaterialDialog.SingleButtonCallback() {
|
||||
@Override
|
||||
public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
|
||||
DialogHelper.showLoadingDialog();
|
||||
isChoosingDeliveyTimeForFreeShipping = false;
|
||||
checkDeliveryTime();
|
||||
}
|
||||
},
|
||||
R.string.delivery_time_preference_choose_delivery_time,
|
||||
new MaterialDialog.SingleButtonCallback() {
|
||||
@Override
|
||||
public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
|
||||
DialogHelper.showLoadingDialog();
|
||||
isChoosingDeliveyTimeForFreeShipping = true;
|
||||
getDeliveryTimeOfStore(null);
|
||||
}
|
||||
},
|
||||
false,
|
||||
true
|
||||
);
|
||||
}
|
||||
|
||||
private void checkDeliveryTime(){
|
||||
ApiService
|
||||
.apiInterface
|
||||
@@ -319,6 +291,86 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment {
|
||||
});
|
||||
}
|
||||
|
||||
private void checkDeliveryTimeForPreferenceDialog(){
|
||||
ApiService
|
||||
.apiInterface
|
||||
.checkDeliveryTime(
|
||||
SessionHelper.getSelectedStore().getStoreName(),
|
||||
createOrderActivity.getSelectedShippingMethod().getCode())
|
||||
.enqueue(new Callback<ResponseObject<Boolean>>() {
|
||||
@Override
|
||||
public void onResponse(Call<ResponseObject<Boolean>> call, Response<ResponseObject<Boolean>> response) {
|
||||
DialogHelper.hideLoadingDialog();
|
||||
if(response.isSuccessful() &&
|
||||
response.body() != null){
|
||||
|
||||
if(response.body().isSuccess()){
|
||||
showDeliveryTimePreferenceDialogWithTwoButtons();
|
||||
}
|
||||
else {
|
||||
showDeliveryTimePreferenceDialogWithOneButton();
|
||||
}
|
||||
|
||||
}
|
||||
else{
|
||||
ApiErrorUtils.parseError(response);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Call<ResponseObject<Boolean>> call, Throwable t) {
|
||||
DialogHelper.hideLoadingDialog();
|
||||
DialogHelper.showFailedDialog();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void showDeliveryTimePreferenceDialogWithTwoButtons(){
|
||||
DialogHelper.showTwoButtonsDialog(
|
||||
getString(R.string.info),
|
||||
getString(R.string.delivery_time_preference_message),
|
||||
R.string.delivery_time_preference_as_soon_as_possible,
|
||||
new MaterialDialog.SingleButtonCallback() {
|
||||
@Override
|
||||
public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
|
||||
DialogHelper.showLoadingDialog();
|
||||
isChoosingDeliveyTimeForFreeShipping = false;
|
||||
checkDeliveryTime();
|
||||
}
|
||||
},
|
||||
R.string.delivery_time_preference_choose_delivery_time,
|
||||
new MaterialDialog.SingleButtonCallback() {
|
||||
@Override
|
||||
public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
|
||||
DialogHelper.showLoadingDialog();
|
||||
isChoosingDeliveyTimeForFreeShipping = true;
|
||||
getDeliveryTimeOfStore(null);
|
||||
}
|
||||
},
|
||||
false,
|
||||
true
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
private void showDeliveryTimePreferenceDialogWithOneButton(){
|
||||
DialogHelper.showOneButtonDialogWithCallback(
|
||||
getString(R.string.info),
|
||||
getString(R.string.delivery_time_preference_message),
|
||||
getString(R.string.delivery_time_preference_choose_delivery_time),
|
||||
new MaterialDialog.SingleButtonCallback() {
|
||||
@Override
|
||||
public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
|
||||
DialogHelper.showLoadingDialog();
|
||||
isChoosingDeliveyTimeForFreeShipping = true;
|
||||
getDeliveryTimeOfStore(null);
|
||||
}
|
||||
},
|
||||
false,
|
||||
true
|
||||
);
|
||||
}
|
||||
|
||||
private void getDeliveryTimeOfStore(final String dialogMessage){
|
||||
ApiService
|
||||
.apiInterface
|
||||
|
||||
@@ -294,6 +294,29 @@ public class DialogHelper {
|
||||
.show();
|
||||
}
|
||||
|
||||
public static void showOneButtonDialogWithCallback(String title,
|
||||
String message,
|
||||
String positiveButtonText,
|
||||
MaterialDialog.SingleButtonCallback singleButtonCallback,
|
||||
boolean cancelable,
|
||||
boolean isButtonTextSmallCaps){
|
||||
MaterialDialog materialDialog =
|
||||
new MaterialDialog.Builder(BaseActivity.currentActivity)
|
||||
.title(title)
|
||||
.content(message)
|
||||
.titleColorRes(R.color.red)
|
||||
.contentColorRes(R.color.black)
|
||||
.positiveText(positiveButtonText)
|
||||
.onPositive(singleButtonCallback)
|
||||
.cancelable(cancelable)
|
||||
.typeface("Quicksand-Medium.ttf", "Quicksand-Regular.ttf")
|
||||
.build();
|
||||
materialDialog.getActionButton(DialogAction.POSITIVE).setAllCaps(!isButtonTextSmallCaps);
|
||||
materialDialog.getActionButton(DialogAction.NEGATIVE).setAllCaps(!isButtonTextSmallCaps);
|
||||
materialDialog.getActionButton(DialogAction.NEUTRAL).setAllCaps(!isButtonTextSmallCaps);
|
||||
materialDialog.show();
|
||||
}
|
||||
|
||||
public static void showOneButtonDialogWithDismissListener(String message,
|
||||
DialogInterface.OnDismissListener dismissListener){
|
||||
new MaterialDialog.Builder(BaseActivity.currentActivity)
|
||||
|
||||
@@ -194,7 +194,7 @@
|
||||
<string name="choose_pick_up_date_time">Bitte wählen Sie aus wann Sie Ihre Bestellung abholen möchten.</string>
|
||||
<string name="info">Information</string>
|
||||
<string name="delivery_time_preference_message">Bitte wählen Sie die Zeit für den gewünschten Termin aus.</string>
|
||||
<string name="delivery_time_preference_as_soon_as_possible">Schnell wie möglich</string>
|
||||
<string name="delivery_time_preference_as_soon_as_possible">schnell wie möglich</string>
|
||||
<string name="delivery_time_preference_choose_delivery_time">Termin auswählen</string>
|
||||
<!-- CreateOrderSummaryFragment-->
|
||||
|
||||
|
||||
Reference in New Issue
Block a user