Aggiunto un messaggio di allert quando viene inserita una quantità superiore rispetto a quella presente nell'ordine.
This commit is contained in:
parent
7f9524e0b2
commit
8c24f5f025
17
.idea/deploymentTargetDropDown.xml
generated
Normal file
17
.idea/deploymentTargetDropDown.xml
generated
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="deploymentTargetDropDown">
|
||||||
|
<runningDeviceTargetSelectedWithDropDown>
|
||||||
|
<Target>
|
||||||
|
<type value="RUNNING_DEVICE_TARGET" />
|
||||||
|
<deviceKey>
|
||||||
|
<Key>
|
||||||
|
<type value="SERIAL_NUMBER" />
|
||||||
|
<value value="21088B8EFD" />
|
||||||
|
</Key>
|
||||||
|
</deviceKey>
|
||||||
|
</Target>
|
||||||
|
</runningDeviceTargetSelectedWithDropDown>
|
||||||
|
<timeTargetWasSelectedWithDropDown value="2023-11-20T09:49:24.751485900Z" />
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
14
.idea/runConfigurations/app.xml
generated
14
.idea/runConfigurations/app.xml
generated
@ -1,6 +1,6 @@
|
|||||||
<component name="ProjectRunConfigurationManager">
|
<component name="ProjectRunConfigurationManager">
|
||||||
<configuration default="false" name="app" type="AndroidRunConfigurationType" factoryName="Android App">
|
<configuration default="false" name="app" type="AndroidRunConfigurationType" factoryName="Android App">
|
||||||
<module name="WMS.app.main" />
|
<module name="WMS_Native.app.main" />
|
||||||
<option name="DEPLOY" value="true" />
|
<option name="DEPLOY" value="true" />
|
||||||
<option name="DEPLOY_APK_FROM_BUNDLE" value="false" />
|
<option name="DEPLOY_APK_FROM_BUNDLE" value="false" />
|
||||||
<option name="DEPLOY_AS_INSTANT" value="false" />
|
<option name="DEPLOY_AS_INSTANT" value="false" />
|
||||||
@ -9,7 +9,6 @@
|
|||||||
<option name="ALL_USERS" value="false" />
|
<option name="ALL_USERS" value="false" />
|
||||||
<option name="ALWAYS_INSTALL_WITH_PM" value="false" />
|
<option name="ALWAYS_INSTALL_WITH_PM" value="false" />
|
||||||
<option name="CLEAR_APP_STORAGE" value="false" />
|
<option name="CLEAR_APP_STORAGE" value="false" />
|
||||||
<option name="DYNAMIC_FEATURES_DISABLED_LIST" value="WMS.dynamic__base,WMS.dynamic_vgalimenti" />
|
|
||||||
<option name="ACTIVITY_EXTRA_FLAGS" value="" />
|
<option name="ACTIVITY_EXTRA_FLAGS" value="" />
|
||||||
<option name="MODE" value="default_activity" />
|
<option name="MODE" value="default_activity" />
|
||||||
<option name="CLEAR_LOGCAT" value="false" />
|
<option name="CLEAR_LOGCAT" value="false" />
|
||||||
@ -25,6 +24,8 @@
|
|||||||
<option name="WORKING_DIR" value="" />
|
<option name="WORKING_DIR" value="" />
|
||||||
<option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
|
<option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
|
||||||
<option name="SHOW_OPTIMIZED_WARNING" value="true" />
|
<option name="SHOW_OPTIMIZED_WARNING" value="true" />
|
||||||
|
<option name="ATTACH_ON_WAIT_FOR_DEBUGGER" value="false" />
|
||||||
|
<option name="DEBUG_SANDBOX_SDK" value="false" />
|
||||||
</Auto>
|
</Auto>
|
||||||
<Hybrid>
|
<Hybrid>
|
||||||
<option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
|
<option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
|
||||||
@ -32,14 +33,21 @@
|
|||||||
<option name="WORKING_DIR" value="" />
|
<option name="WORKING_DIR" value="" />
|
||||||
<option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
|
<option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
|
||||||
<option name="SHOW_OPTIMIZED_WARNING" value="true" />
|
<option name="SHOW_OPTIMIZED_WARNING" value="true" />
|
||||||
|
<option name="ATTACH_ON_WAIT_FOR_DEBUGGER" value="false" />
|
||||||
|
<option name="DEBUG_SANDBOX_SDK" value="false" />
|
||||||
</Hybrid>
|
</Hybrid>
|
||||||
<Java />
|
<Java>
|
||||||
|
<option name="ATTACH_ON_WAIT_FOR_DEBUGGER" value="false" />
|
||||||
|
<option name="DEBUG_SANDBOX_SDK" value="false" />
|
||||||
|
</Java>
|
||||||
<Native>
|
<Native>
|
||||||
<option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
|
<option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
|
||||||
<option name="SHOW_STATIC_VARS" value="true" />
|
<option name="SHOW_STATIC_VARS" value="true" />
|
||||||
<option name="WORKING_DIR" value="" />
|
<option name="WORKING_DIR" value="" />
|
||||||
<option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
|
<option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
|
||||||
<option name="SHOW_OPTIMIZED_WARNING" value="true" />
|
<option name="SHOW_OPTIMIZED_WARNING" value="true" />
|
||||||
|
<option name="ATTACH_ON_WAIT_FOR_DEBUGGER" value="false" />
|
||||||
|
<option name="DEBUG_SANDBOX_SDK" value="false" />
|
||||||
</Native>
|
</Native>
|
||||||
<Profilers>
|
<Profilers>
|
||||||
<option name="ADVANCED_PROFILING_ENABLED" value="false" />
|
<option name="ADVANCED_PROFILING_ENABLED" value="false" />
|
||||||
|
|||||||
@ -69,6 +69,7 @@ public class DBSettingsModel {
|
|||||||
private boolean flagCanAddUnknownBarcodesAccettazioneBolla = false;
|
private boolean flagCanAddUnknownBarcodesAccettazioneBolla = false;
|
||||||
private boolean flagEnableFastPickAccettazioneBolla = false;
|
private boolean flagEnableFastPickAccettazioneBolla = false;
|
||||||
private boolean flagDisableMandatoryTracciabilitaAccettazioneBolla = false;
|
private boolean flagDisableMandatoryTracciabilitaAccettazioneBolla = false;
|
||||||
|
private boolean flagHigherQuantityWarning = false;
|
||||||
|
|
||||||
public boolean isFlagSpedizioneEnableFakeGiacenza() {
|
public boolean isFlagSpedizioneEnableFakeGiacenza() {
|
||||||
return flagSpedizioneEnableFakeGiacenza;
|
return flagSpedizioneEnableFakeGiacenza;
|
||||||
@ -556,4 +557,13 @@ public class DBSettingsModel {
|
|||||||
this.flagDisableMandatoryTracciabilitaAccettazioneBolla = flagDisableMandatoryTracciabilitaAccettazioneBolla;
|
this.flagDisableMandatoryTracciabilitaAccettazioneBolla = flagDisableMandatoryTracciabilitaAccettazioneBolla;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean isFlagHigherQuantityWarning() {
|
||||||
|
return flagHigherQuantityWarning;
|
||||||
|
}
|
||||||
|
|
||||||
|
public DBSettingsModel setFlagHigherQuantityWarning(boolean flagHigherQuantityWarning) {
|
||||||
|
this.flagHigherQuantityWarning = flagHigherQuantityWarning;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -470,6 +470,12 @@ public class SettingsManager {
|
|||||||
.setKeySection("FLAG_DISABLE_MANDATORY_TRACCIABILITA")
|
.setKeySection("FLAG_DISABLE_MANDATORY_TRACCIABILITA")
|
||||||
.setSetter(dbSettingsModelIstance::setFlagDisableMandatoryTracciabilitaAccettazioneBolla)
|
.setSetter(dbSettingsModelIstance::setFlagDisableMandatoryTracciabilitaAccettazioneBolla)
|
||||||
.setDefaultValue(false));
|
.setDefaultValue(false));
|
||||||
|
stbGestSetupReaderList.add(new StbGestSetupReader<>(Boolean.class)
|
||||||
|
.setGestName("PICKING")
|
||||||
|
.setSection("SPEDIZIONE")
|
||||||
|
.setKeySection("FLAG_HIGHER_QUANTITY_WARNING")
|
||||||
|
.setSetter(dbSettingsModelIstance::setFlagHigherQuantityWarning)
|
||||||
|
.setDefaultValue(false));
|
||||||
|
|
||||||
String codMdep = SettingsManager.i().getUserSession().getDepo().getCodMdep();
|
String codMdep = SettingsManager.i().getUserSession().getDepo().getCodMdep();
|
||||||
|
|
||||||
|
|||||||
@ -849,6 +849,7 @@ public class SpedizioneActivity extends BaseActivity implements SpedizioneViewMo
|
|||||||
.setPartitaMag(partitaMag)
|
.setPartitaMag(partitaMag)
|
||||||
.setDataScad(dataScad)
|
.setDataScad(dataScad)
|
||||||
.setCanOverflowOrderQuantity(canOverflowOrderQuantity)
|
.setCanOverflowOrderQuantity(canOverflowOrderQuantity)
|
||||||
|
.setWarnOnQuantityOverflow(SettingsManager.iDB().isFlagHigherQuantityWarning())
|
||||||
.setCanLUBeClosed(true)
|
.setCanLUBeClosed(true)
|
||||||
.setCanPartitaMagBeChanged(canPartitaMagBeChanged)
|
.setCanPartitaMagBeChanged(canPartitaMagBeChanged)
|
||||||
.setStatoPartitaMag(pickingObjectDTO != null ? pickingObjectDTO.getStatoArticoloDTO() : null)
|
.setStatoPartitaMag(pickingObjectDTO != null ? pickingObjectDTO.getStatoArticoloDTO() : null)
|
||||||
|
|||||||
@ -44,6 +44,7 @@ public class DialogInputQuantityV2DTO {
|
|||||||
private boolean saveOnImeDone = false;
|
private boolean saveOnImeDone = false;
|
||||||
private boolean notifyProductLotStatus = false;
|
private boolean notifyProductLotStatus = false;
|
||||||
private boolean disableTracciabilitaCheck = false;
|
private boolean disableTracciabilitaCheck = false;
|
||||||
|
private boolean warnOnQuantityOverflow = false;
|
||||||
|
|
||||||
private StatoArticoloDTO statoPartitaMag;
|
private StatoArticoloDTO statoPartitaMag;
|
||||||
|
|
||||||
@ -370,4 +371,13 @@ public class DialogInputQuantityV2DTO {
|
|||||||
this.customArtDescription = customArtDescription;
|
this.customArtDescription = customArtDescription;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean isWarnOnQuantityOverflow() {
|
||||||
|
return warnOnQuantityOverflow;
|
||||||
|
}
|
||||||
|
|
||||||
|
public DialogInputQuantityV2DTO setWarnOnQuantityOverflow(boolean warnOnQuantityOverflow) {
|
||||||
|
this.warnOnQuantityOverflow = warnOnQuantityOverflow;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -170,6 +170,7 @@ public class DialogInputQuantityV2View extends BaseDialogFragment implements Dia
|
|||||||
.setTotalQtaAvailable(mDialogInputQuantityV2DTO.getTotalQtaAvailable())
|
.setTotalQtaAvailable(mDialogInputQuantityV2DTO.getTotalQtaAvailable())
|
||||||
.setCanInputZeroQuantity(mDialogInputQuantityV2DTO.isCanInputZeroQuantity())
|
.setCanInputZeroQuantity(mDialogInputQuantityV2DTO.isCanInputZeroQuantity())
|
||||||
.setCanOverflowOrderQuantity(mDialogInputQuantityV2DTO.isCanOverflowOrderQuantity())
|
.setCanOverflowOrderQuantity(mDialogInputQuantityV2DTO.isCanOverflowOrderQuantity())
|
||||||
|
.setWarnOnQuantityOverflow(mDialogInputQuantityV2DTO.isWarnOnQuantityOverflow())
|
||||||
.setQtaCnfAvailable(mDialogInputQuantityV2DTO.getQtaCnfAvailable())
|
.setQtaCnfAvailable(mDialogInputQuantityV2DTO.getQtaCnfAvailable())
|
||||||
.setPartitaMag(mDialogInputQuantityV2DTO.getPartitaMag())
|
.setPartitaMag(mDialogInputQuantityV2DTO.getPartitaMag())
|
||||||
.setNote(mDialogInputQuantityV2DTO.getNote())
|
.setNote(mDialogInputQuantityV2DTO.getNote())
|
||||||
@ -256,19 +257,23 @@ public class DialogInputQuantityV2View extends BaseDialogFragment implements Dia
|
|||||||
};
|
};
|
||||||
|
|
||||||
public void save() {
|
public void save() {
|
||||||
if (this.mViewModel.validate()) {
|
this.mViewModel.validate(validated -> {
|
||||||
|
if (validated) {
|
||||||
this.mAbort = false;
|
this.mAbort = false;
|
||||||
dismiss();
|
dismiss();
|
||||||
this.mOnComplete.run(this.mViewModel.getResult(), false);
|
this.mOnComplete.run(this.mViewModel.getResult(), false);
|
||||||
}
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public void saveAndCloseLU() {
|
public void saveAndCloseLU() {
|
||||||
if (this.mViewModel.validate()) {
|
this.mViewModel.validate(validated -> {
|
||||||
|
if (validated) {
|
||||||
this.mAbort = false;
|
this.mAbort = false;
|
||||||
dismiss();
|
dismiss();
|
||||||
this.mOnComplete.run(this.mViewModel.getResult(), true);
|
this.mOnComplete.run(this.mViewModel.getResult(), true);
|
||||||
}
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// @Override
|
// @Override
|
||||||
@ -532,4 +537,13 @@ public class DialogInputQuantityV2View extends BaseDialogFragment implements Dia
|
|||||||
.makeErrorDialog(new SpannableString(Html.fromHtml(ex.getMessage())), null, null)
|
.makeErrorDialog(new SpannableString(Html.fromHtml(ex.getMessage())), null, null)
|
||||||
.show(requireActivity().getSupportFragmentManager(), "tag");
|
.show(requireActivity().getSupportFragmentManager(), "tag");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onWarning(String text, RunnableArgs<Boolean> result) {
|
||||||
|
DialogSimpleMessageView.makeWarningDialog(new SpannableString(Html.fromHtml(text)),
|
||||||
|
null,
|
||||||
|
() -> result.run(true),
|
||||||
|
() -> result.run(false)
|
||||||
|
).show(requireActivity().getSupportFragmentManager(), "tag");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -3,12 +3,14 @@ package it.integry.integrywmsnative.view.dialogs.input_quantity_v2;
|
|||||||
import androidx.databinding.ObservableField;
|
import androidx.databinding.ObservableField;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
import java.math.RoundingMode;
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
|
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
|
|
||||||
import it.integry.barcode_base_android_library.model.BarcodeScanDTO;
|
import it.integry.barcode_base_android_library.model.BarcodeScanDTO;
|
||||||
import it.integry.integrywmsnative.core.di.BindableString;
|
import it.integry.integrywmsnative.core.di.BindableString;
|
||||||
|
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||||
import it.integry.integrywmsnative.core.expansion.RunnableArgsWithReturn;
|
import it.integry.integrywmsnative.core.expansion.RunnableArgsWithReturn;
|
||||||
import it.integry.integrywmsnative.core.model.MtbAart;
|
import it.integry.integrywmsnative.core.model.MtbAart;
|
||||||
import it.integry.integrywmsnative.core.rest.consumers.BarcodeRESTConsumer;
|
import it.integry.integrywmsnative.core.rest.consumers.BarcodeRESTConsumer;
|
||||||
@ -80,6 +82,7 @@ public class DialogInputQuantityV2ViewModel {
|
|||||||
private int onNumCnfInputChanged;
|
private int onNumCnfInputChanged;
|
||||||
private int onQtaTotInputChanged;
|
private int onQtaTotInputChanged;
|
||||||
private boolean disableTracciabilitaCheck;
|
private boolean disableTracciabilitaCheck;
|
||||||
|
private boolean warnOnQuantityOverflow;
|
||||||
|
|
||||||
private Listener mListener;
|
private Listener mListener;
|
||||||
|
|
||||||
@ -333,6 +336,11 @@ public class DialogInputQuantityV2ViewModel {
|
|||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public DialogInputQuantityV2ViewModel setWarnOnQuantityOverflow(boolean warnOnQuantityOverflow) {
|
||||||
|
this.warnOnQuantityOverflow = warnOnQuantityOverflow;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
public DialogInputQuantityV2ViewModel setCanPartitaMagBeChanged(boolean canPartitaMagBeChanged) {
|
public DialogInputQuantityV2ViewModel setCanPartitaMagBeChanged(boolean canPartitaMagBeChanged) {
|
||||||
this.canPartitaMagBeChanged = canPartitaMagBeChanged;
|
this.canPartitaMagBeChanged = canPartitaMagBeChanged;
|
||||||
return this;
|
return this;
|
||||||
@ -457,11 +465,12 @@ public class DialogInputQuantityV2ViewModel {
|
|||||||
this.blockedQtaTot.set(false);
|
this.blockedQtaTot.set(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean validate() {
|
public void validate(RunnableArgs<Boolean> onValidated) {
|
||||||
if (this.internalQtaCnf == null || UtilityBigDecimal.equalsTo(this.internalQtaCnf, BigDecimal.ZERO)) {
|
if (this.internalQtaCnf == null || UtilityBigDecimal.equalsTo(this.internalQtaCnf, BigDecimal.ZERO)) {
|
||||||
|
|
||||||
this.mListener.onError(new InvalidQtaCnfQuantityException());
|
this.mListener.onError(new InvalidQtaCnfQuantityException());
|
||||||
return false;
|
onValidated.run(false);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!disableTracciabilitaCheck && mtbAart.get().isFlagTracciabilitaBoolean() && UtilityString.isNullOrEmpty(internalPartitaMag)) {
|
if (!disableTracciabilitaCheck && mtbAart.get().isFlagTracciabilitaBoolean() && UtilityString.isNullOrEmpty(internalPartitaMag)) {
|
||||||
@ -469,51 +478,59 @@ public class DialogInputQuantityV2ViewModel {
|
|||||||
internalPartitaMag = suggestPartitaMagRunnable.run(this);
|
internalPartitaMag = suggestPartitaMagRunnable.run(this);
|
||||||
if (internalPartitaMag == null) {
|
if (internalPartitaMag == null) {
|
||||||
this.mListener.onError(new InvalidBatchLotException());
|
this.mListener.onError(new InvalidBatchLotException());
|
||||||
return false;
|
onValidated.run(false);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
this.mListener.onError(new InvalidBatchLotException());
|
this.mListener.onError(new InvalidBatchLotException());
|
||||||
return false;
|
onValidated.run(false);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.shouldAskDataScad && UtilityString.isNullOrEmpty(internalPartitaMag)) {
|
if (this.shouldAskDataScad && UtilityString.isNullOrEmpty(internalPartitaMag)) {
|
||||||
|
|
||||||
this.mListener.onError(new InvalidBatchLotException());
|
this.mListener.onError(new InvalidBatchLotException());
|
||||||
return false;
|
onValidated.run(false);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.shouldAskDataScad && this.internalDataScad == null) {
|
if (this.shouldAskDataScad && this.internalDataScad == null) {
|
||||||
|
|
||||||
this.mListener.onError(new InvalidExpireDateException());
|
this.mListener.onError(new InvalidExpireDateException());
|
||||||
return false;
|
onValidated.run(false);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!this.canOverflowOrderQuantity && UtilityBigDecimal.greaterThan(this.internalQtaTot, this.totalQtaOrd) &&
|
if (!this.canOverflowOrderQuantity && UtilityBigDecimal.greaterThan(this.internalQtaTot, this.totalQtaOrd) &&
|
||||||
this.mtbAart.get().isFlagQtaCnfFissaBoolean()) {
|
this.mtbAart.get().isFlagQtaCnfFissaBoolean()) {
|
||||||
|
|
||||||
this.mListener.onError(new OverflowQtaTotOrderedQuantityException());
|
this.mListener.onError(new OverflowQtaTotOrderedQuantityException());
|
||||||
return false;
|
onValidated.run(false);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!this.canOverflowOrderQuantity && UtilityBigDecimal.greaterThan(this.internalNumCnf, this.totalNumCnfOrd) &&
|
if (!this.canOverflowOrderQuantity && UtilityBigDecimal.greaterThan(this.internalNumCnf, this.totalNumCnfOrd) &&
|
||||||
!this.mtbAart.get().isFlagQtaCnfFissaBoolean()) {
|
!this.mtbAart.get().isFlagQtaCnfFissaBoolean()) {
|
||||||
|
|
||||||
this.mListener.onError(new OverflowNumCnfOrderedQuantityException());
|
this.mListener.onError(new OverflowNumCnfOrderedQuantityException());
|
||||||
return false;
|
onValidated.run(false);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (UtilityBigDecimal.greaterThan(this.internalQtaTot, this.totalQtaAvailable)) {
|
if (UtilityBigDecimal.greaterThan(this.internalQtaTot, this.totalQtaAvailable)) {
|
||||||
|
|
||||||
this.mListener.onError(new OverflowQtaTotAvailableQuantityException());
|
this.mListener.onError(new OverflowQtaTotAvailableQuantityException());
|
||||||
return false;
|
onValidated.run(false);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (UtilityBigDecimal.greaterThan(this.internalNumCnf, this.totalNumCnfAvailable) &&
|
if (UtilityBigDecimal.greaterThan(this.internalNumCnf, this.totalNumCnfAvailable) &&
|
||||||
!this.mtbAart.get().isFlagQtaCnfFissaBoolean()) {
|
!this.mtbAart.get().isFlagQtaCnfFissaBoolean()) {
|
||||||
|
|
||||||
this.mListener.onError(new OverflowNumCnfAvailableQuantityException());
|
this.mListener.onError(new OverflowNumCnfAvailableQuantityException());
|
||||||
return false;
|
onValidated.run(false);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!this.canInputZeroQuantity && (this.internalNumCnf == null || this.internalQtaCnf == null || this.internalQtaTot == null ||
|
if (!this.canInputZeroQuantity && (this.internalNumCnf == null || this.internalQtaCnf == null || this.internalQtaTot == null ||
|
||||||
@ -522,17 +539,36 @@ public class DialogInputQuantityV2ViewModel {
|
|||||||
UtilityBigDecimal.equalsOrLowerThan(this.internalQtaTot, BigDecimal.ZERO))) {
|
UtilityBigDecimal.equalsOrLowerThan(this.internalQtaTot, BigDecimal.ZERO))) {
|
||||||
|
|
||||||
this.mListener.onError(new InvalidQuantityException());
|
this.mListener.onError(new InvalidQuantityException());
|
||||||
return false;
|
onValidated.run(false);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.isNoteMandatory() && (this.internalNote == null || this.internalNote.length() <= 0)) {
|
if (this.isNoteMandatory() && (this.internalNote == null || this.internalNote.length() <= 0)) {
|
||||||
this.mListener.onError(new InvalidNotesException());
|
this.mListener.onError(new InvalidNotesException());
|
||||||
return false;
|
onValidated.run(false);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!UtilityString.isNullOrEmpty(this.internalPartitaMag))
|
if (!UtilityString.isNullOrEmpty(this.internalPartitaMag))
|
||||||
this.internalPartitaMag = this.internalPartitaMag.toUpperCase();
|
this.internalPartitaMag = this.internalPartitaMag.toUpperCase();
|
||||||
return true;
|
|
||||||
|
//Gli ultimi due controlli sono in coda a causa della callBack di onWarning, non eseguirebbe i controlli messi dopo
|
||||||
|
|
||||||
|
if (this.warnOnQuantityOverflow && UtilityBigDecimal.greaterThan(this.internalQtaTot, this.totalQtaOrd) &&
|
||||||
|
this.mtbAart.get().isFlagQtaCnfFissaBoolean()) {
|
||||||
|
|
||||||
|
this.mListener.onWarning("Hai inserito una quantità superiore rispetto a quella presente nell'ordine. <br>Continuare?", onValidated);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (this.warnOnQuantityOverflow && UtilityBigDecimal.greaterThan(this.internalNumCnf, this.totalNumCnfOrd) &&
|
||||||
|
!this.mtbAart.get().isFlagQtaCnfFissaBoolean()) {
|
||||||
|
|
||||||
|
this.mListener.onWarning("Hai inserito una quantità superiore rispetto a quella presente nell'ordine. <br>Continuare?", onValidated);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
onValidated.run(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
public DialogInputQuantityV2ResultDTO getResult() {
|
public DialogInputQuantityV2ResultDTO getResult() {
|
||||||
@ -543,7 +579,6 @@ public class DialogInputQuantityV2ViewModel {
|
|||||||
.setQtaCnf(this.internalQtaCnf)
|
.setQtaCnf(this.internalQtaCnf)
|
||||||
.setNote(this.internalNote)
|
.setNote(this.internalNote)
|
||||||
.setQtaTot(this.internalQtaTot);
|
.setQtaTot(this.internalQtaTot);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setListener(Listener listener) {
|
public void setListener(Listener listener) {
|
||||||
@ -577,5 +612,6 @@ public class DialogInputQuantityV2ViewModel {
|
|||||||
void onDataChanged();
|
void onDataChanged();
|
||||||
|
|
||||||
void onError(Exception ex);
|
void onError(Exception ex);
|
||||||
|
void onWarning(String text, RunnableArgs<Boolean> result);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user