diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/ISingleOperationDoubleCallback.java b/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/ISingleOperationDoubleCallback.java deleted file mode 100644 index 8fc0af74..00000000 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/ISingleOperationDoubleCallback.java +++ /dev/null @@ -1,9 +0,0 @@ -package it.integry.integrywmsnative.core.REST.consumers; - -public interface ISingleOperationDoubleCallback { - - void onSuccess(T firstValue, U secondValue); - - void onFailed(Exception ex ); - -} diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/ISingleValueOperationCallback.java b/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/ISingleValueOperationCallback.java deleted file mode 100644 index 1163f409..00000000 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/consumers/ISingleValueOperationCallback.java +++ /dev/null @@ -1,7 +0,0 @@ -package it.integry.integrywmsnative.core.REST.consumers; - -public interface ISingleValueOperationCallback { - - void onResult(T value); - -} diff --git a/app/src/main/java/it/integry/integrywmsnative/core/REST/watcher/ServerStatusChecker.java b/app/src/main/java/it/integry/integrywmsnative/core/REST/watcher/ServerStatusChecker.java index 29a812be..3ce343db 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/REST/watcher/ServerStatusChecker.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/REST/watcher/ServerStatusChecker.java @@ -5,7 +5,6 @@ import android.os.Handler; import java.util.ArrayList; import java.util.List; -import it.integry.integrywmsnative.core.REST.consumers.ISingleValueOperationCallback; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.settings.SettingsManager; import it.integry.integrywmsnative.core.utility.UtilityServer; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityServer.java b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityServer.java index 740afc6c..b4a05b39 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityServer.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityServer.java @@ -5,7 +5,6 @@ import java.net.InetSocketAddress; import java.net.Socket; import java.net.SocketAddress; -import it.integry.integrywmsnative.core.REST.consumers.ISingleValueOperationCallback; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import okhttp3.OkHttpClient; import okhttp3.Request; @@ -13,7 +12,7 @@ import okhttp3.Response; public class UtilityServer { - public static void isHostReachable(final String serverAddress, final int serverTCPport, final ISingleValueOperationCallback callback){ + public static void isHostReachable(final String serverAddress, final int serverTCPport, final RunnableArgs callback){ new Thread(() -> { boolean connected = false; @@ -32,7 +31,7 @@ public class UtilityServer { socket = null; } - callback.onResult(connected); + callback.run(connected); }).start(); } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/wifi/WiFiCheckerViewHolder.java b/app/src/main/java/it/integry/integrywmsnative/core/wifi/WiFiCheckerViewHolder.java index f65b8854..99a6b3e6 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/wifi/WiFiCheckerViewHolder.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/wifi/WiFiCheckerViewHolder.java @@ -1,13 +1,12 @@ package it.integry.integrywmsnative.core.wifi; -import android.app.Activity; import android.content.Context; import android.view.View; import android.widget.TextView; -import it.integry.integrywmsnative.core.REST.consumers.ISingleValueOperationCallback; +import it.integry.integrywmsnative.core.expansion.RunnableArgs; -public class WiFiCheckerViewHolder implements ISingleValueOperationCallback{ +public class WiFiCheckerViewHolder implements RunnableArgs { private TextView mWifiSignalTextView; @@ -30,7 +29,7 @@ public class WiFiCheckerViewHolder implements ISingleValueOperationCallback mCallback; + private RunnableArgs mCallback; private WifiManager mWifiManager; private int mNumberOfLevels = 4; @@ -45,7 +45,7 @@ public class WiFiStatusChecker { default: signal = SIGNAL.NONE; break; } - mCallback.onResult(signal); + mCallback.run(signal); handler.postDelayed(this, MILLIS_DELAY); } @@ -56,7 +56,7 @@ public class WiFiStatusChecker { mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE); } - public void startMonitoring(ISingleValueOperationCallback callback){ + public void startMonitoring(RunnableArgs callback){ this.mCallback = callback; shouldExecute = true; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/AccettazioneOrdineInevasoActivity.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/AccettazioneOrdineInevasoActivity.java index 259026cf..5648f96a 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/AccettazioneOrdineInevasoActivity.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/AccettazioneOrdineInevasoActivity.java @@ -20,14 +20,14 @@ import it.integry.integrywmsnative.core.utility.UtilityExceptions; import it.integry.integrywmsnative.databinding.ActivityAccettazioneOrdineInevasoBinding; import it.integry.integrywmsnative.databinding.FragmentArticoliInColloBottomSheetBinding; import it.integry.integrywmsnative.gest.accettazione.dto.OrdineAccettazioneDTO; -import it.integry.integrywmsnative.gest.accettazione_ordine_inevaso.viewmodel.AccettazioneOnOrdineAccettazioneInevasoViewModel; +import it.integry.integrywmsnative.gest.accettazione_ordine_inevaso.viewmodel.AccettazioneOrdineAccettazioneInevasoViewModel; import it.integry.integrywmsnative.gest.lista_bancali.ListaBancaliActivity; import it.integry.integrywmsnative.view.bottomsheet.viewmodel.ArticoliInColloBottomSheetViewModel; public class AccettazioneOrdineInevasoActivity extends AppCompatActivity { public ActivityAccettazioneOrdineInevasoBinding bindings; - private AccettazioneOnOrdineAccettazioneInevasoViewModel mAccettazioneOrdineInevasoViewModel; + private AccettazioneOrdineAccettazioneInevasoViewModel mAccettazioneOrdineInevasoViewModel; private ArticoliInColloBottomSheetViewModel mArticoliInColloBottomSheetViewModel; private static final int PICK_UL_REQUEST = 1; // The request code @@ -43,7 +43,7 @@ public class AccettazioneOrdineInevasoActivity extends AppCompatActivity { mArticoliInColloBottomSheetViewModel = new ArticoliInColloBottomSheetViewModel(this, bindings); List orders = DataCache.retrieveItem(getIntent().getStringExtra("key")); - mAccettazioneOrdineInevasoViewModel = new AccettazioneOnOrdineAccettazioneInevasoViewModel( + mAccettazioneOrdineInevasoViewModel = new AccettazioneOrdineAccettazioneInevasoViewModel( this, mArticoliInColloBottomSheetViewModel, orders); setSupportActionBar(this.bindings.toolbar); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOnOrdineAccettazioneInevasoViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOrdineAccettazioneInevasoViewModel.java similarity index 97% rename from app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOnOrdineAccettazioneInevasoViewModel.java rename to app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOrdineAccettazioneInevasoViewModel.java index bb3bf6d9..3165866e 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOnOrdineAccettazioneInevasoViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_ordine_inevaso/viewmodel/AccettazioneOrdineAccettazioneInevasoViewModel.java @@ -58,7 +58,7 @@ import it.integry.plugins.barcode_base_library.model.BarcodeScanDTO; import static br.com.zbra.androidlinq.Linq.stream; -public class AccettazioneOnOrdineAccettazioneInevasoViewModel implements IOnColloClosedCallback, IOnOrdineAccettazioneRowDispatchCallback { +public class AccettazioneOrdineAccettazioneInevasoViewModel implements IOnColloClosedCallback, IOnOrdineAccettazioneRowDispatchCallback { public ObservableField isFabVisible = new ObservableField<>(); @@ -76,7 +76,7 @@ public class AccettazioneOnOrdineAccettazioneInevasoViewModel implements IOnColl private GestioneEnum defaultGestioneOfUL = null; - public AccettazioneOnOrdineAccettazioneInevasoViewModel(AccettazioneOrdineInevasoActivity activity, ArticoliInColloBottomSheetViewModel articoliInColloBottomSheetViewModel, List orders) { + public AccettazioneOrdineAccettazioneInevasoViewModel(AccettazioneOrdineInevasoActivity activity, ArticoliInColloBottomSheetViewModel articoliInColloBottomSheetViewModel, List orders) { this.mActivity = activity; this.mArticoliInColloBottomSheetViewModel = articoliInColloBottomSheetViewModel; this.mOrders = orders; @@ -799,11 +799,11 @@ public class AccettazioneOnOrdineAccettazioneInevasoViewModel implements IOnColl dto.setShouldAskDataScad(true); } - DialogInputQuantity.makeBase(mActivity, dto, true, value -> onOrdineRowDispatched(item, value), null).show(); + DialogInputQuantity.makeBase(mActivity, dto, true, (quantityDTO, closeLU) -> onOrdineRowDispatched(item, quantityDTO, closeLU), null).show(); } } - private void onOrdineRowDispatched(OrdineAccettazioneDTO.Riga item, QuantityDTO quantityDTO){ + private void onOrdineRowDispatched(OrdineAccettazioneDTO.Riga item, QuantityDTO quantityDTO, boolean closeLU){ final ProgressDialog progress = ProgressDialog.show(mActivity, mActivity.getText(R.string.waiting), mActivity.getText(R.string.loading) + " ...", true); @@ -850,16 +850,9 @@ public class AccettazioneOnOrdineAccettazioneInevasoViewModel implements IOnColl refreshOrderBy(false); FBToast.successToast(mActivity,mActivity.getResources().getString(R.string.data_saved) ,FBToast.LENGTH_SHORT); - -// new StatusBarAlert.Builder(mActivity) -// .autoHide(true) -// .withDuration(2500) -// .showProgress(false) -// .withText(R.string.data_saved) -// .withAlertColor(R.color.mainGreen) -// .build(); - progress.dismiss(); + + if(closeLU) onColloClosed(null); } @Override diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/login/core/LoginHelper.java b/app/src/main/java/it/integry/integrywmsnative/gest/login/core/LoginHelper.java index cbf13c39..63632b0e 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/login/core/LoginHelper.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/login/core/LoginHelper.java @@ -6,7 +6,6 @@ import android.util.Log; import it.integry.integrywmsnative.core.CommonConst; import it.integry.integrywmsnative.core.REST.RESTBuilder; import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback; -import it.integry.integrywmsnative.core.REST.consumers.ISingleOperationDoubleCallback; import it.integry.integrywmsnative.core.REST.model.EsitoType; import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse; import it.integry.integrywmsnative.gest.login.dto.LoginAziendaDTO; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/prod_versamento_materiale/viewmodel/ProdVersamentoMaterialViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/prod_versamento_materiale/viewmodel/ProdVersamentoMaterialViewModel.java index 33f47a96..76cfa36f 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/prod_versamento_materiale/viewmodel/ProdVersamentoMaterialViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/prod_versamento_materiale/viewmodel/ProdVersamentoMaterialViewModel.java @@ -19,6 +19,7 @@ import it.integry.integrywmsnative.core.model.secondary.GestioneEnum; import it.integry.integrywmsnative.core.utility.UtilityExceptions; import it.integry.integrywmsnative.databinding.FragmentProdVersamentoMaterialeBinding; import it.integry.integrywmsnative.gest.prod_versamento_materiale.core.ProdVersamentoMaterialHelper; +import it.integry.integrywmsnative.view.dialogs.DialogConsts; import it.integry.integrywmsnative.view.dialogs.ask_position_of_lu.DialogAskPositionOfLU; import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageHelper; import it.integry.integrywmsnative.view.dialogs.scan_or_create_lu.DialogScanOrCreateLU; @@ -70,13 +71,19 @@ public class ProdVersamentoMaterialViewModel { } private void choosePosition() { - DialogAskPositionOfLU.makeBase(mContext, null, mtbDepoPosizione -> { - if(mtbDepoPosizione != null && mtbColt.get() != null) { - createColloScarico(mtbDepoPosizione); + DialogAskPositionOfLU.makeBase(mContext, null, (status, mtbDepoPosizione) -> { + + if(status == DialogConsts.Results.ABORT) { + ((IPoppableActivity)mContext).pop(); } else { - DialogSimpleMessageHelper.makeWarningDialog(mContext, - new SpannableString(Html.fromHtml("Si è verificato un errore. Riprovare")), - null, this::openLU).show(); + + if (mtbDepoPosizione != null && mtbColt.get() != null) { + createColloScarico(mtbDepoPosizione); + } else { + DialogSimpleMessageHelper.makeWarningDialog(mContext, + new SpannableString(Html.fromHtml("Si è verificato un errore. Riprovare")), + null, this::openLU).show(); + } } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/viewmodel/RettificaGiacenzeViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/viewmodel/RettificaGiacenzeViewModel.java index 1d5edd5b..c215370b 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/viewmodel/RettificaGiacenzeViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/viewmodel/RettificaGiacenzeViewModel.java @@ -56,6 +56,7 @@ import it.integry.integrywmsnative.gest.rettifica_giacenze.core.RettificaGiacenz import it.integry.integrywmsnative.gest.rettifica_giacenze.core.adapter.AutoCompleteFornitoreAdapter; import it.integry.integrywmsnative.gest.rettifica_giacenze.core.adapter.RettificaGiacenzeMainListAdapter; import it.integry.integrywmsnative.gest.rettifica_giacenze.dto.FornitoreDTO; +import it.integry.integrywmsnative.view.dialogs.DialogConsts; import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageHelper; import it.integry.integrywmsnative.view.dialogs.ask_position_of_lu.DialogAskPositionOfLU; import it.integry.integrywmsnative.view.dialogs.choose_art_from_lista_arts.DialogChooseArtFromListaArts; @@ -578,12 +579,16 @@ public class RettificaGiacenzeViewModel implements IRecyclerItemClicked switch (result){ case YES: - DialogAskPositionOfLU.makeBase(mContext, mtbColt.get(), mtbDepoPosizione -> { - if(mtbDepoPosizione != null && mtbColt.get() != null) { - Objects.requireNonNull(mtbColt.get()).setPosizione(mtbDepoPosizione.getPosizione()); - onComplete.run(); - } else { + DialogAskPositionOfLU.makeBase(mContext, mtbColt.get(), (status, mtbDepoPosizione) -> { + if(status == DialogConsts.Results.ABORT) { onAbort.run(); + } else { + if (mtbDepoPosizione != null && mtbColt.get() != null) { + Objects.requireNonNull(mtbColt.get()).setPosizione(mtbDepoPosizione.getPosizione()); + onComplete.run(); + } else { + onAbort.run(); + } } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/viewmodel/VenditaOrdineInevasoViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/viewmodel/VenditaOrdineInevasoViewModel.java index 216be011..23fcaba6 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/viewmodel/VenditaOrdineInevasoViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/viewmodel/VenditaOrdineInevasoViewModel.java @@ -1141,11 +1141,11 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO } - DialogInputQuantity.makeBase(mActivity, dto, false, value -> onOrdineRowDispatched(item, value), null).show(); + DialogInputQuantity.makeBase(mActivity, dto, false, (quantityDTO, closeUL) -> onOrdineRowDispatched(item, quantityDTO, closeUL), null).show(); } } - private void onOrdineRowDispatched(PickingObjectDTO item, QuantityDTO quantityDTO){ + private void onOrdineRowDispatched(PickingObjectDTO item, QuantityDTO quantityDTO, boolean closeUL){ final ProgressDialog progress = ProgressDialog.show(mActivity, mActivity.getText(R.string.waiting), mActivity.getText(R.string.loading) + " ...", true); @@ -1208,15 +1208,9 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO FBToast.successToast(mActivity,mActivity.getResources().getString(R.string.data_saved) ,FBToast.LENGTH_SHORT); -// new StatusBarAlert.Builder(mActivity) -// .autoHide(true) -// .withDuration(2500) -// .showProgress(false) -// .withText(R.string.data_saved) -// .withAlertColor(R.color.mainGreen) -// .build(); - progress.dismiss(); + + if(closeUL) onColloClosed(null); } @Override diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_position_of_lu/DialogAskPositionOfLU.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_position_of_lu/DialogAskPositionOfLU.java index 9ec8f50b..245fd0d8 100644 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_position_of_lu/DialogAskPositionOfLU.java +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_position_of_lu/DialogAskPositionOfLU.java @@ -22,6 +22,7 @@ import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsume import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO; import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.expansion.RunnableArgs; +import it.integry.integrywmsnative.core.expansion.RunnableArgss; import it.integry.integrywmsnative.core.model.MtbColt; import it.integry.integrywmsnative.core.model.MtbDepoPosizione; import it.integry.integrywmsnative.core.utility.UtilityBarcode; @@ -29,6 +30,7 @@ import it.integry.integrywmsnative.core.utility.UtilityExceptions; import it.integry.integrywmsnative.core.utility.UtilityPosizione; import it.integry.integrywmsnative.core.utility.UtilityProgress; import it.integry.integrywmsnative.databinding.DialogAskPositionOfLuBinding; +import it.integry.integrywmsnative.view.dialogs.DialogConsts; import it.integry.plugins.barcode_base_library.model.BarcodeScanDTO; public class DialogAskPositionOfLU { @@ -42,18 +44,18 @@ public class DialogAskPositionOfLU { private Dialog mDialog; - private RunnableArgs onComplete; + private RunnableArgss onComplete; private RunnableArgs onFailed; private TextInputLayout livelloTextInputLayout; private boolean completedFlow = false; - public static Dialog makeBase(final Context context, MtbColt mtbColtToUpdate, RunnableArgs onComplete, RunnableArgs onFailed) { + public static Dialog makeBase(final Context context, MtbColt mtbColtToUpdate, RunnableArgss onComplete, RunnableArgs onFailed) { return new DialogAskPositionOfLU(context, mtbColtToUpdate, onComplete, onFailed).mDialog; } - public DialogAskPositionOfLU(Context context, MtbColt mtbColtToUpdate, RunnableArgs onComplete, RunnableArgs onFailed) { + public DialogAskPositionOfLU(Context context, MtbColt mtbColtToUpdate, RunnableArgss onComplete, RunnableArgs onFailed) { mContext = context; mtbColt = mtbColtToUpdate; @@ -76,7 +78,7 @@ public class DialogAskPositionOfLU { mDialog = new Dialog(mContext); mDialog.setContentView(mBinding.getRoot()); mDialog.setCanceledOnTouchOutside(false); - mDialog.setCancelable(false); +// mDialog.setCancelable(false); mDialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); mDialog.setOnShowListener(dialog -> { @@ -131,7 +133,7 @@ public class DialogAskPositionOfLU { mDialog.setOnDismissListener(dialog -> { BarcodeManager.removeCallback(barcodeIstanceID); - if(!completedFlow) onComplete.run(null); + if(!completedFlow) onComplete.run(DialogConsts.Results.ABORT, null); }); } @@ -157,7 +159,7 @@ public class DialogAskPositionOfLU { updatePosizione(foundPosizione, () -> { completedFlow = true; BarcodeManager.enable(); - if(onComplete != null) onComplete.run(foundPosizione); + if(onComplete != null) onComplete.run(DialogConsts.Results.YES, foundPosizione); }, ex -> { completedFlow = true; BarcodeManager.enable(); @@ -165,7 +167,7 @@ public class DialogAskPositionOfLU { }); } else { completedFlow = true; - if(onComplete != null) onComplete.run(foundPosizione); + if(onComplete != null) onComplete.run(DialogConsts.Results.YES, foundPosizione); mDialog.dismiss(); BarcodeManager.enable(); @@ -197,7 +199,7 @@ public class DialogAskPositionOfLU { ColliMagazzinoRESTConsumer.changePosizione(mtbColt, foundPosizione, () -> { progressDialog.dismiss(); completedFlow = true; - if(onComplete != null) onComplete.run(foundPosizione); + if(onComplete != null) onComplete.run(DialogConsts.Results.YES, foundPosizione); mDialog.dismiss(); }, ex -> { UtilityExceptions.defaultException(mContext, ex, progressDialog); @@ -207,7 +209,7 @@ public class DialogAskPositionOfLU { }); } else { completedFlow = true; - if(onComplete != null) onComplete.run(foundPosizione); + if(onComplete != null) onComplete.run(DialogConsts.Results.YES, foundPosizione); mDialog.dismiss(); } @@ -237,7 +239,7 @@ public class DialogAskPositionOfLU { private void onLevelAbort() { completedFlow = true; - onComplete.run(null); + onComplete.run(DialogConsts.Results.ABORT, null); mDialog.dismiss(); } diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_quantity/DialogInputQuantity.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_quantity/DialogInputQuantity.java index 12f66021..a6e3c50e 100644 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_quantity/DialogInputQuantity.java +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_quantity/DialogInputQuantity.java @@ -30,11 +30,11 @@ import java.util.GregorianCalendar; import it.integry.integrywmsnative.R; import it.integry.integrywmsnative.core.REST.consumers.BarcodeRESTConsumer; -import it.integry.integrywmsnative.core.REST.consumers.ISingleValueOperationCallback; import it.integry.integrywmsnative.core.REST.model.Ean13PesoModel; import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO; import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.expansion.RunnableArgs; +import it.integry.integrywmsnative.core.expansion.RunnableArgss; import it.integry.integrywmsnative.core.model.MtbAart; import it.integry.integrywmsnative.core.utility.UtilityBarcode; import it.integry.integrywmsnative.core.utility.UtilityDate; @@ -214,11 +214,17 @@ public class DialogInputQuantity { private QuantityDTO currentQuantityDto; private DTO currentDTO; - public static AlertDialog makeBase(final Context context, final DTO dto, boolean canOverflowQuantity, final ISingleValueOperationCallback dialogCallback, final Runnable onAbort) { - return new DialogInputQuantity(context, dto, canOverflowQuantity, dialogCallback, onAbort).currentAlert; + public static AlertDialog makeBase(final Context context, final DTO dto, boolean canOverflowQuantity, final RunnableArgs dialogCallback, final Runnable onAbort) { + return new DialogInputQuantity(context, dto, canOverflowQuantity, false, (quantityDto, closeUL) -> { + dialogCallback.run(quantityDto); + }, onAbort).currentAlert; } - public DialogInputQuantity(@NotNull Context context, @NotNull final DTO dto, boolean canOverflowQuantity, final ISingleValueOperationCallback dialogCallback, final Runnable onAbort) { + public static AlertDialog makeBase(final Context context, final DTO dto, boolean canOverflowQuantity, final RunnableArgss dialogCallback, final Runnable onAbort) { + return new DialogInputQuantity(context, dto, canOverflowQuantity, true, dialogCallback, onAbort).currentAlert; + } + + public DialogInputQuantity(@NotNull Context context, @NotNull final DTO dto, boolean canOverflowQuantity, boolean showCloseUL, final RunnableArgss dialogCallback, final Runnable onAbort) { currentContext = context; currentMtbAart = dto.getMtbAart(); currentDTO = dto; @@ -256,6 +262,8 @@ public class DialogInputQuantity { if(onAbort != null) onAbort.run(); }); + if(showCloseUL) alertDialog.setNeutralButton("Chiudi UL", null); + currentAlert = alertDialog.create(); currentAlert.setCanceledOnTouchOutside(false); @@ -278,7 +286,12 @@ public class DialogInputQuantity { }, 100); Button positiveButton = currentAlert.getButton(AlertDialog.BUTTON_POSITIVE); - positiveButton.setOnClickListener(view -> onConfirm(context, currentQuantityDto, dialogCallback)); + positiveButton.setOnClickListener(view -> onConfirm(context, currentQuantityDto, dialogCallback, false)); + + if(showCloseUL) { + Button neutralButton = currentAlert.getButton(AlertDialog.BUTTON_NEUTRAL); + neutralButton.setOnClickListener(view -> onConfirm(context, currentQuantityDto, dialogCallback, true)); + } }); @@ -612,7 +625,7 @@ public class DialogInputQuantity { } - private void onConfirm(Context context, QuantityDTO quantityDTO, ISingleValueOperationCallback dialogCallback){ + private void onConfirm(Context context, QuantityDTO quantityDTO, RunnableArgss dialogCallback, boolean closeUL){ if(currentDTO.mtbAart.isFlagTracciabilita() && (quantityDTO.batchLot == null || quantityDTO.batchLot.get().trim().length() == 0)){ showBatchLotErrorPrompt(context); @@ -639,7 +652,7 @@ public class DialogInputQuantity { quantityDTO.batchLot.set(quantityDTO.batchLot.get().toUpperCase()); } - dialogCallback.onResult(quantityDTO); + dialogCallback.run(quantityDTO, closeUL); currentAlert.dismiss(); } diff --git a/app/src/main/res/layout/activity_accettazione_ordine_inevaso.xml b/app/src/main/res/layout/activity_accettazione_ordine_inevaso.xml index 30d9ae3f..db6918f8 100644 --- a/app/src/main/res/layout/activity_accettazione_ordine_inevaso.xml +++ b/app/src/main/res/layout/activity_accettazione_ordine_inevaso.xml @@ -5,7 +5,7 @@ + type="it.integry.integrywmsnative.gest.accettazione_ordine_inevaso.viewmodel.AccettazioneOrdineAccettazioneInevasoViewModel"/> diff --git a/app/src/main/res/layout/dialog_input_quantity_articolo.xml b/app/src/main/res/layout/dialog_input_quantity_articolo.xml index d4f772fb..ab6504e0 100644 --- a/app/src/main/res/layout/dialog_input_quantity_articolo.xml +++ b/app/src/main/res/layout/dialog_input_quantity_articolo.xml @@ -125,7 +125,7 @@ android:text='@{UtilityNumber.decimalToString(viewmodel.qtaOrd)}' android:textSize="16sp" android:textStyle="bold" - android:paddingLeft="4dp" + android:paddingStart="4dp" tools:text="1200" /> No Posizionamento - Verrà stampata una %s + Vuoi procedere con la stampa di una %s Crea nuova UL Apri UL Ultime consegne diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 539f68fd..3363cc63 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -198,7 +198,7 @@ No Placement - A %s will be printed + Do you want print a %s? Create new LU Open LU