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 6964148f..39c89a26 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 @@ -96,6 +96,7 @@ public class DBSettingsModel { private boolean flagEnableArtCreation; private List allowedCodMgrpForArtCreation; private boolean flagAccettazioneGroupListForn = false; + private boolean flagSpedizioneEnableFastPicking = false; public boolean isFlagSpedizioneEnableFakeGiacenza() { return flagSpedizioneEnableFakeGiacenza; @@ -806,4 +807,12 @@ public class DBSettingsModel { public void setFlagAccettazioneGroupListForn(boolean flagAccettazioneGroupListForn) { this.flagAccettazioneGroupListForn = flagAccettazioneGroupListForn; } + + public boolean isFlagSpedizioneEnableFastPicking() { + return flagSpedizioneEnableFastPicking; + } + + public void setFlagSpedizioneEnableFastPicking(boolean flagSpedizioneEnableFastPicking) { + this.flagSpedizioneEnableFastPicking = flagSpedizioneEnableFastPicking; + } } 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 f1dc75bc..2a707d8f 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 @@ -558,6 +558,12 @@ public class SettingsManager { .setKeySection("ENABLE_POSITION_CHANGE_REQUEST") .setSetter(dbSettingsModelIstance::setFlagPositionChangeRequest) .setDefaultValue(true)); + stbGestSetupReaderList.add(new StbGestSetupReader<>(Boolean.class) + .setGestName("PICKING") + .setSection("SPEDIZIONE") + .setKeySection("ENABLE_FAST_PICKING") + .setSetter(dbSettingsModelIstance::setFlagSpedizioneEnableFastPicking) + .setDefaultValue(false)); stbGestSetupReaderList.add(new StbGestSetupReader<>(String.class) .setGestName("PICKING") diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/spedizione/SpedizioneActivity.java b/app/src/main/java/it/integry/integrywmsnative/gest/spedizione/SpedizioneActivity.java index d20a7c5a..1f4e7de6 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/spedizione/SpedizioneActivity.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/spedizione/SpedizioneActivity.java @@ -1014,7 +1014,8 @@ public class SpedizioneActivity extends BaseActivity implements SpedizioneViewMo .setCanPartitaMagBeChanged(canPartitaMagBeChanged) .setStatoPartitaMag(pickingObjectDTO != null ? pickingObjectDTO.getStatoArticoloDTO() : null) .setNotifyProductLotStatus(SettingsManager.iDB().isNotifyLotStatus()) - .setMtbPartitaMagList(mViewmodel.getmPartitaMagList()); + .setMtbPartitaMagList(mViewmodel.getmPartitaMagList()) + .setEnableSSCCRead(SettingsManager.iDB().isFlagSpedizioneEnableFastPicking()); if (!mDialogInputQuantityV2View.isVisible()) mDialogInputQuantityV2View diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_quantity_v2/DialogInputQuantityV2DTO.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_quantity_v2/DialogInputQuantityV2DTO.java index 84547c37..640a29ce 100644 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_quantity_v2/DialogInputQuantityV2DTO.java +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_quantity_v2/DialogInputQuantityV2DTO.java @@ -47,6 +47,7 @@ public class DialogInputQuantityV2DTO { private boolean notifyProductLotStatus = false; private boolean disableTracciabilitaCheck = false; private boolean warnOnQuantityOverflow = false; + private boolean enableSSCCRead = false; private StatoArticoloDTO statoPartitaMag; @@ -385,6 +386,15 @@ public class DialogInputQuantityV2DTO { return this; } + public boolean isEnableSSCCRead() { + return enableSSCCRead; + } + + public DialogInputQuantityV2DTO setEnableSSCCRead(boolean enableSSCCRead) { + this.enableSSCCRead = enableSSCCRead; + return this; + } + public List getMtbPartitaMagList() { return mtbPartitaMagList; } diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_quantity_v2/DialogInputQuantityV2View.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_quantity_v2/DialogInputQuantityV2View.java index 3b5f4744..b387510e 100644 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_quantity_v2/DialogInputQuantityV2View.java +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_quantity_v2/DialogInputQuantityV2View.java @@ -178,8 +178,9 @@ public class DialogInputQuantityV2View extends BaseDialogFragment implements Dia .setSuggestPartitaMagRunnable(mDialogInputQuantityV2DTO.getSuggestPartitaMag()) .setDataScad(mDialogInputQuantityV2DTO.getDataScad()) .setDisableTracciabilitaCheck(mDialogInputQuantityV2DTO.isDisableTracciabilitaCheck()) - .setmPartitaMagList(mDialogInputQuantityV2DTO.getMtbPartitaMagList()) - .setStatoArt(mDialogInputQuantityV2DTO.getStatoPartitaMag() != null ? mDialogInputQuantityV2DTO.getStatoPartitaMag().getStatoArt() : null); + .setPartitaMagList(mDialogInputQuantityV2DTO.getMtbPartitaMagList()) + .setStatoArt(mDialogInputQuantityV2DTO.getStatoPartitaMag() != null ? mDialogInputQuantityV2DTO.getStatoPartitaMag().getStatoArt() : null) + .setEnableSSCCRead(mDialogInputQuantityV2DTO.isEnableSSCCRead()); mBindings.setView(this); mBindings.setViewmodel(this.mViewModel); diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_quantity_v2/DialogInputQuantityV2ViewModel.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_quantity_v2/DialogInputQuantityV2ViewModel.java index ae2e3ef8..fe276b85 100644 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_quantity_v2/DialogInputQuantityV2ViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/input_quantity_v2/DialogInputQuantityV2ViewModel.java @@ -96,6 +96,7 @@ public class DialogInputQuantityV2ViewModel { private int onQtaTotInputChanged; private boolean disableTracciabilitaCheck; private boolean warnOnQuantityOverflow; + private boolean enableSSCCRead; private Listener mListener; @@ -213,8 +214,10 @@ public class DialogInputQuantityV2ViewModel { this.unlockQtaCnf(); } else if (ean128Model.Sscc != null) { //Close current UDS and open another one with new SSCC - this.internalNextUlBarcode = barcodeScanDTO; - this.sendOnULCloseRequested(); + if (enableSSCCRead) { + this.internalNextUlBarcode = barcodeScanDTO; + this.sendOnULCloseRequested(); + } return; } @@ -352,7 +355,7 @@ public class DialogInputQuantityV2ViewModel { return this; } - public DialogInputQuantityV2ViewModel setmPartitaMagList(List mPartitaMagList) { + public DialogInputQuantityV2ViewModel setPartitaMagList(List mPartitaMagList) { this.mPartitaMagList = mPartitaMagList; return this; } @@ -372,6 +375,11 @@ public class DialogInputQuantityV2ViewModel { return this; } + public DialogInputQuantityV2ViewModel setEnableSSCCRead(boolean enableSSCCRead) { + this.enableSSCCRead = enableSSCCRead; + return this; + } + public boolean canPartitaMagBeChanged() { return canPartitaMagBeChanged; }