diff --git a/app/src/main/java/it/integry/integrywmsnative/core/expansion/BaseFragment.java b/app/src/main/java/it/integry/integrywmsnative/core/expansion/BaseFragment.java index 6f19b3a2..6db30d6e 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/expansion/BaseFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/expansion/BaseFragment.java @@ -22,8 +22,6 @@ public abstract class BaseFragment extends Fragment { protected final List mOnPreDestroyList = new ArrayList<>(); - - public void setScrollToolbar(ElevatedToolbar toolbar) { mToolbar = toolbar; } @@ -34,10 +32,6 @@ public abstract class BaseFragment extends Fragment { } - - - - public void onLoadingStarted() { new Thread(() -> { BarcodeManager.disable(); @@ -71,23 +65,25 @@ public abstract class BaseFragment extends Fragment { } protected void openProgress() { - getActivity().runOnUiThread(() -> { - if (this.mCurrentProgress == null) { - this.mCurrentProgress = UtilityProgress.createDefaultProgressDialog(getActivity()); - } - }); + getActivity().runOnUiThread(() -> { + if (this.mCurrentProgress == null) { + this.mCurrentProgress = UtilityProgress.createDefaultProgressDialog(getActivity()); + } + }); } protected void closeProgress() { - getActivity().runOnUiThread(() -> { - if (mCurrentProgress != null) { - mCurrentProgress.dismiss(); - mCurrentProgress = null; - } - }); + getActivity().runOnUiThread(() -> { + if (mCurrentProgress != null) { + mCurrentProgress.dismiss(); + mCurrentProgress = null; + } + }); } protected void popMe() { - ((IPoppableActivity) requireActivity()).pop(); + getActivity().runOnUiThread(() -> { + ((IPoppableActivity) requireActivity()).pop(); + }); } } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/prod_versamento_materiale/ProdVersamentoMaterialeFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/prod_versamento_materiale/ProdVersamentoMaterialeFragment.java index d6b16d1f..b1cdd7c8 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/prod_versamento_materiale/ProdVersamentoMaterialeFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/prod_versamento_materiale/ProdVersamentoMaterialeFragment.java @@ -319,6 +319,12 @@ public class ProdVersamentoMaterialeFragment extends BaseFragment implements Pro this.openLU(); } + @Override + public void onError(Exception ex, boolean requestClose) { + super.onError(ex); + if(requestClose) popMe(); + } + @Override public void onWarning(String warningText, Runnable action) { this.requireActivity().runOnUiThread(() -> { diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/prod_versamento_materiale/ProdVersamentoMaterialeViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/prod_versamento_materiale/ProdVersamentoMaterialeViewModel.java index 6d5c4742..d6ce0165 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/prod_versamento_materiale/ProdVersamentoMaterialeViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/prod_versamento_materiale/ProdVersamentoMaterialeViewModel.java @@ -77,8 +77,13 @@ public class ProdVersamentoMaterialeViewModel { mtbDepoPosizione.getPosizione(), getIdMaterialeFromCollo(mtbColt), ordini -> { - setCurrentOrders(ordini, mtbColt.getMtbColr().get(0)); - this.sendOnLoadingEnded(); + if(ordini == null || ordini.isEmpty()) + this.sendError(new Exception("Nessun ordine compatibile con " + getIdMaterialeFromCollo(mtbColt) + " sulla linea " + mtbDepoPosizione.getPosizione()), true); + else { + setCurrentOrders(ordini, mtbColt.getMtbColr().get(0)); + this.sendOnLoadingEnded(); + } + }, e -> this.sendWarning(e.getMessage(), this::sendRequestLUOpen)); } @@ -194,7 +199,11 @@ public class ProdVersamentoMaterialeViewModel { } private void sendError(Exception ex) { - if (this.mListener != null) mListener.onError(ex); + if (this.mListener != null) mListener.onError(ex, false); + } + + private void sendError(Exception ex, boolean requestClose) { + if (this.mListener != null) mListener.onError(ex, requestClose); } private void sendOnDataSaved() { @@ -205,7 +214,7 @@ public class ProdVersamentoMaterialeViewModel { void requestLUOpen(); - void onError(Exception ex); + void onError(Exception ex, boolean requestClose); void onWarning(String warningText, Runnable action);