diff --git a/app/build.gradle b/app/build.gradle index d364476a..2017c665 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -7,8 +7,8 @@ apply plugin: 'com.google.gms.google-services' android { - def appVersionCode = 178 - def appVersionName = '1.14.1' + def appVersionCode = 179 + def appVersionName = '1.14.2' signingConfigs { release { diff --git a/app/src/main/java/it/integry/integrywmsnative/core/settings/DBSettingsModel.java b/app/src/main/java/it/integry/integrywmsnative/core/settings/DBSettingsModel.java index fbdde229..080ec666 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/settings/DBSettingsModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/settings/DBSettingsModel.java @@ -21,6 +21,7 @@ public class DBSettingsModel { private String defaultCausaleRettificaGiacenze; private DistribuzioneColloDTO.CriterioDistribuzione defaultCriterioDistribuzione; private boolean flagAskClienteInPickingLibero; + private boolean flagAllowEmptyClienteInPickingLibero; private boolean flagCanAddExtraItemSpedizione; private boolean flagCanAutoOpenNewULAccettazione; @@ -133,6 +134,15 @@ public class DBSettingsModel { return this; } + public boolean isFlagAllowEmptyClienteInPickingLibero() { + return flagAllowEmptyClienteInPickingLibero; + } + + public DBSettingsModel setFlagAllowEmptyClienteInPickingLibero(boolean flagAllowEmptyClienteInPickingLibero) { + this.flagAllowEmptyClienteInPickingLibero = flagAllowEmptyClienteInPickingLibero; + return this; + } + public boolean isFlagCanAddExtraItemSpedizione() { return flagCanAddExtraItemSpedizione; } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/settings/SettingsManager.java b/app/src/main/java/it/integry/integrywmsnative/core/settings/SettingsManager.java index 806e44b5..0f4f626f 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/settings/SettingsManager.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/settings/SettingsManager.java @@ -202,6 +202,10 @@ public class SettingsManager { .setGestName("PICKING") .setSection("PICKING_LIBERO") .setKeySection("FLAG_ASK_CLIENTE")); + stbGestSetupList.add(new StbGestSetup() + .setGestName("PICKING") + .setSection("PICKING_LIBERO") + .setKeySection("FLAG_ALLOW_EMPTY_CLIENTE")); stbGestSetupList.add(new StbGestSetup() .setGestName("PICKING") .setSection("SPEDIZIONE") @@ -263,6 +267,7 @@ public class SettingsManager { dbSettingsModelIstance.setDefaultCodAnag(getValueFromList(list, "SETUP","COD_ANAG_DEFAULT", String.class)); dbSettingsModelIstance.setDefaultCriterioDistribuzione(getValueFromList(list, "SETUP","DEFAULT_CRITERIO_DISTRIBUZIONE", String.class)); dbSettingsModelIstance.setFlagAskClienteInPickingLibero(getValueFromList(list, "PICKING_LIBERO", "FLAG_ASK_CLIENTE", Boolean.class)); + dbSettingsModelIstance.setFlagAllowEmptyClienteInPickingLibero(getValueFromList(list, "PICKING_LIBERO", "FLAG_ALLOW_EMPTY_CLIENTE", Boolean.class)); dbSettingsModelIstance.setFlagCanAddExtraItemSpedizione(getValueFromList(list, "SPEDIZIONE", "FLAG_CAN_ADD_EXTRA_ITEMS", Boolean.class)); dbSettingsModelIstance.setFlagCanAutoOpenNewULAccettazione(getValueFromList(list, "ACCETTAZIONE", "FLAG_AUTO_OPEN_NEW_UL", Boolean.class)); dbSettingsModelIstance.setFlagCanAddExtraQuantitySpedizione(getValueFromList(list, "SPEDIZIONE", "FLAG_CAN_ADD_EXTRA_QUANTITY", Boolean.class)); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/spedizione/SpedizioneViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/spedizione/SpedizioneViewModel.java index d1f69825..49a721b9 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/spedizione/SpedizioneViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/spedizione/SpedizioneViewModel.java @@ -1222,15 +1222,20 @@ public class SpedizioneViewModel { if (mEnableGiacenza) { - mtbColr.setRefMtbColr(new MtbColr() + MtbColr refMtbColr = new MtbColr() .setCodMart(mtbColr.getCodMart()) .setPartitaMag(mtbColr.getPartitaMag()) .setCodTagl(mtbColr.getCodTagl()) - .setCodCol(mtbColr.getCodCol()) + .setCodCol(mtbColr.getCodCol()); + + if(refMtbColt != null) { + refMtbColr .setNumCollo(refMtbColt.getNumCollo()) .setDataCollo(refMtbColt.getDataColloS()) .setSerCollo(refMtbColt.getSerCollo()) - .setGestione(refMtbColt.getGestione())); + .setGestione(refMtbColt.getGestione()); + } + mtbColr.setRefMtbColr(refMtbColr); } pickingObjectDTO.getWithdrawMtbColrs().add(mtbColr); diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_cliente/DialogAskCliente.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_cliente/DialogAskCliente.java index 35fd8140..2bf9044e 100644 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_cliente/DialogAskCliente.java +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_cliente/DialogAskCliente.java @@ -18,6 +18,7 @@ import it.integry.integrywmsnative.R; import it.integry.integrywmsnative.core.expansion.RunnableArgsss; import it.integry.integrywmsnative.core.model.VtbDest; import it.integry.integrywmsnative.core.utility.UtilityDialog; +import it.integry.integrywmsnative.core.utility.UtilityString; import it.integry.integrywmsnative.databinding.DialogAskClienteBinding; import it.integry.integrywmsnative.view.dialogs.DialogConsts; import it.integry.integrywmsnative.view.dialogs.ask_cliente.viewmodel.DialogAskCliente_Page1ViewModel; @@ -72,7 +73,14 @@ public class DialogAskCliente { viewModel1 .setOnConfirmClickListener(() -> { - viewModel2.setCodAnag(viewModel1.getCurrentCliente()); + String codAnag = viewModel1.getCurrentCliente(); + + if(UtilityString.isNullOrEmpty(codAnag)) { + mDialog.dismiss(); + onComplete.run(DialogConsts.Results.YES, null, null); + } + + viewModel2.setCodAnag(codAnag); mBinding.viewpager.setCurrentItem(mBinding.viewpager.getCurrentItem() + 1, true); }); diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_cliente/viewmodel/DialogAskCliente_Page1ViewModel.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_cliente/viewmodel/DialogAskCliente_Page1ViewModel.java index 2966a253..799ee055 100644 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_cliente/viewmodel/DialogAskCliente_Page1ViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/ask_cliente/viewmodel/DialogAskCliente_Page1ViewModel.java @@ -26,6 +26,7 @@ import it.integry.integrywmsnative.core.expansion.OnListGeneralChangedCallback; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.rest.consumers.ISimpleOperationCallback; import it.integry.integrywmsnative.core.rest.consumers.SystemRESTConsumer; +import it.integry.integrywmsnative.core.settings.SettingsManager; import it.integry.integrywmsnative.core.utility.UtilityExceptions; import it.integry.integrywmsnative.core.utility.UtilityHashMap; import it.integry.integrywmsnative.databinding.DialogAskClientePage1Binding; @@ -207,7 +208,9 @@ public class DialogAskCliente_Page1ViewModel implements IDialogAskClienteViewMod private boolean validateCliente() { - return getCurrentCliente() != null; + if(SettingsManager.iDB().isFlagAllowEmptyClienteInPickingLibero() && mBinding.inputCliente.getEditText().getText().toString().trim().length() == 0) { + return true; + } else return getCurrentCliente() != null; } public String getCurrentCliente() { diff --git a/build.gradle b/build.gradle index ca743e40..84da3298 100644 --- a/build.gradle +++ b/build.gradle @@ -10,7 +10,7 @@ buildscript { google() } dependencies { - classpath 'com.android.tools.build:gradle:4.1.1' + classpath 'com.android.tools.build:gradle:4.1.2' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath 'com.google.gms:google-services:4.3.4' classpath 'com.google.firebase:perf-plugin:1.3.3'