workaround problema con tempistiche thread in salvataggio articolo ordine acquisto

This commit is contained in:
Valerio Castellana 2022-02-25 17:36:07 +01:00
parent 0738993d4c
commit 34ff300515

View File

@ -70,11 +70,11 @@ public class EditArticoloDialog extends BaseDialogFragment {
@Override
public void onDismiss(@NonNull DialogInterface dialog) {
super.onDismiss(dialog);
ArticoloOrdine articolo = mArticolo.getValue();
/*ArticoloOrdine articolo = mArticolo.getValue();
if (articolo != null && articolo.getQtaOrd() <= 0f) {
articolo = null;
}
onDialogDismiss.run(articolo);
onDialogDismiss.run(articolo);*/
}
@Nullable
@ -155,17 +155,23 @@ public class EditArticoloDialog extends BaseDialogFragment {
}
articolo.setQtaOrd(qtaOrd.get().floatValue());
mArticolo.postValue(articolo);
mArticolo.setValue(articolo);
mHelper.saveArticoloToOrdine(mArticolo.getValue(), () -> {
this.onLoadingEnded();
requireActivity().runOnUiThread(() -> {
onDialogDismiss.run(articolo);
});
this.dismiss();
}, e -> {
mContext.runOnUiThread(() -> UtilityExceptions.defaultException(mContext, e));
this.onLoadingEnded();
});
} catch (Exception e) {
mContext.runOnUiThread(() -> UtilityExceptions.defaultException(mContext, e));
this.onLoadingEnded();
return;
}
mHelper.saveArticoloToOrdine(mArticolo.getValue(), () -> {
this.onLoadingEnded();
this.dismiss();
}, e -> mContext.runOnUiThread(() -> UtilityExceptions.defaultException(mContext, e)));
;
}
public ArticoloOrdine getArticolo() {
@ -174,6 +180,9 @@ public class EditArticoloDialog extends BaseDialogFragment {
public void cancel() {
mArticolo.postValue(null);
requireActivity().runOnUiThread(() -> {
onDialogDismiss.run(null);
});
this.dismiss();
}
}