In inputQuantity l'avviso partita inattiva non è più bloccante ma chiede di continuare

This commit is contained in:
Marco Elefante 2025-02-10 17:24:30 +01:00
parent dc38311125
commit 56d509b07b

View File

@ -1,5 +1,7 @@
package it.integry.integrywmsnative.view.dialogs.input_quantity_v2; package it.integry.integrywmsnative.view.dialogs.input_quantity_v2;
import android.text.SpannableString;
import androidx.databinding.ObservableField; import androidx.databinding.ObservableField;
import java.math.BigDecimal; import java.math.BigDecimal;
@ -29,6 +31,7 @@ import it.integry.integrywmsnative.core.utility.UtilityBigDecimal;
import it.integry.integrywmsnative.core.utility.UtilityDate; import it.integry.integrywmsnative.core.utility.UtilityDate;
import it.integry.integrywmsnative.core.utility.UtilityResources; import it.integry.integrywmsnative.core.utility.UtilityResources;
import it.integry.integrywmsnative.core.utility.UtilityString; import it.integry.integrywmsnative.core.utility.UtilityString;
import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageView;
import it.integry.integrywmsnative.view.dialogs.exception.InactiveBatchLotException; import it.integry.integrywmsnative.view.dialogs.exception.InactiveBatchLotException;
import it.integry.integrywmsnative.view.dialogs.exception.InvalidBatchLotException; import it.integry.integrywmsnative.view.dialogs.exception.InvalidBatchLotException;
import it.integry.integrywmsnative.view.dialogs.exception.InvalidExpireDateException; import it.integry.integrywmsnative.view.dialogs.exception.InvalidExpireDateException;
@ -390,12 +393,12 @@ public class DialogInputQuantityV2ViewModel {
public void setNewPartitaMag(String internalPartitaMag) { public void setNewPartitaMag(String internalPartitaMag) {
this.internalPartitaMag = internalPartitaMag; this.internalPartitaMag = internalPartitaMag;
if (mPartitaMagList != null && SettingsManager.iDB().isSuggestDataScad()){ if (mPartitaMagList != null && SettingsManager.iDB().isSuggestDataScad()) {
Optional<MtbPartitaMag> partitaMag = mPartitaMagList.stream() Optional<MtbPartitaMag> partitaMag = mPartitaMagList.stream()
.filter(x -> x.getPartitaMag().equalsIgnoreCase(internalPartitaMag)) .filter(x -> x.getPartitaMag().equalsIgnoreCase(internalPartitaMag))
.findFirst(); .findFirst();
if (partitaMag.isPresent()){ if (partitaMag.isPresent()) {
setNewDataScad(partitaMag.get().getDataScad()); setNewDataScad(partitaMag.get().getDataScad());
} else { } else {
MtbAart localMtbAart = mtbAart.get(); MtbAart localMtbAart = mtbAart.get();
@ -569,10 +572,12 @@ public class DialogInputQuantityV2ViewModel {
} }
if (this.statoArt == StatoPartitaMag.DISATTIVO) { if (this.statoArt == StatoPartitaMag.DISATTIVO) {
this.sendError(new InactiveBatchLotException(internalPartitaMag)); boolean result = runWarningDialogSyncronized(String.format(UtilityResources.getString(R.string.batch_lot_not_enabled), internalPartitaMag));
if (!result) {
onValidated.run(false); onValidated.run(false);
return; return;
} }
}
if (this.shouldAskDataScad && UtilityString.isNullOrEmpty(internalPartitaMag)) { if (this.shouldAskDataScad && UtilityString.isNullOrEmpty(internalPartitaMag)) {