Fix su update posizione di Rettifica Giacenze
This commit is contained in:
parent
168002316b
commit
e9cb9954f6
@ -86,7 +86,7 @@ public class MtbColt extends EntityBase {
|
|||||||
private ObservableArrayList<MtbColr> mtbColr = new ObservableArrayList<>();
|
private ObservableArrayList<MtbColr> mtbColr = new ObservableArrayList<>();
|
||||||
|
|
||||||
public ObservableArrayList<MtbColr> getMtbColr() {
|
public ObservableArrayList<MtbColr> getMtbColr() {
|
||||||
return mtbColr;
|
return mtbColr == null ? new ObservableArrayList<>() : mtbColr;
|
||||||
}
|
}
|
||||||
|
|
||||||
public MtbColt setMtbColr(ObservableArrayList<MtbColr> mtbColr) {
|
public MtbColt setMtbColr(ObservableArrayList<MtbColr> mtbColr) {
|
||||||
|
|||||||
@ -447,7 +447,7 @@ public class RettificaGiacenzeViewModel {
|
|||||||
|
|
||||||
private void savePosizione(MtbDepoPosizione mtbDepoPosizione, Runnable onComplete) {
|
private void savePosizione(MtbDepoPosizione mtbDepoPosizione, Runnable onComplete) {
|
||||||
MtbColt cloneMtbColt = (MtbColt) mCurrentMtbColt.clone();
|
MtbColt cloneMtbColt = (MtbColt) mCurrentMtbColt.clone();
|
||||||
cloneMtbColt.setOperation(CommonModelConsts.OPERATION.NO_OP);
|
cloneMtbColt.setOperation(CommonModelConsts.OPERATION.UPDATE);
|
||||||
cloneMtbColt.setMtbColr(null);
|
cloneMtbColt.setMtbColr(null);
|
||||||
cloneMtbColt.setPosizione(mtbDepoPosizione != null ? mtbDepoPosizione.getPosizione() : CommonModelConsts.ENTITY_NULL_STRING);
|
cloneMtbColt.setPosizione(mtbDepoPosizione != null ? mtbDepoPosizione.getPosizione() : CommonModelConsts.ENTITY_NULL_STRING);
|
||||||
|
|
||||||
|
|||||||
@ -268,13 +268,16 @@ public class SpedizioneActivity extends BaseActivity implements SpedizioneViewMo
|
|||||||
} else {
|
} else {
|
||||||
|
|
||||||
BigDecimal qtaColOrdCounter = x.getSitArtOrdDTO().getQtaOrd();
|
BigDecimal qtaColOrdCounter = x.getSitArtOrdDTO().getQtaOrd();
|
||||||
// qtaColOrdCounter = qtaColOrdCounter.add(qtaColWithdrawRows.getBigDecimalValue());
|
BigDecimal numCnfOrdCounter = x.getSitArtOrdDTO().getNumCnfOrd();
|
||||||
|
|
||||||
for (MtbColt mtbColtToPick : x.getMtbColts()) {
|
for (MtbColt mtbColtToPick : x.getMtbColts()) {
|
||||||
|
|
||||||
if(UtilityBigDecimal.equalsTo(qtaColOrdCounter, BigDecimal.ZERO) || UtilityBigDecimal.lowerThan(qtaColOrdCounter, BigDecimal.ZERO))
|
if(UtilityBigDecimal.equalsTo(qtaColOrdCounter, BigDecimal.ZERO) || UtilityBigDecimal.lowerThan(qtaColOrdCounter, BigDecimal.ZERO))
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
if(UtilityBigDecimal.equalsTo(numCnfOrdCounter, BigDecimal.ZERO) || UtilityBigDecimal.lowerThan(numCnfOrdCounter, BigDecimal.ZERO))
|
||||||
|
break;
|
||||||
|
|
||||||
SpedizioneListModel cloneModel = (SpedizioneListModel) spedizioneListModel.clone();
|
SpedizioneListModel cloneModel = (SpedizioneListModel) spedizioneListModel.clone();
|
||||||
|
|
||||||
cloneModel.setGroupTitle(String.format("%s: %s", getString(R.string.position_text), UtilityString.isNullOrEmpty(mtbColtToPick.getPosizione()) ? "N.A." : mtbColtToPick.getPosizione()));
|
cloneModel.setGroupTitle(String.format("%s: %s", getString(R.string.position_text), UtilityString.isNullOrEmpty(mtbColtToPick.getPosizione()) ? "N.A." : mtbColtToPick.getPosizione()));
|
||||||
@ -289,8 +292,28 @@ public class SpedizioneActivity extends BaseActivity implements SpedizioneViewMo
|
|||||||
|
|
||||||
if (SettingsManager.iDB().isFlagForceAllToColli() || (x.getMtbAart() == null || !x.getMtbAart().isFlagQtaCnfFissaBoolean())) {
|
if (SettingsManager.iDB().isFlagForceAllToColli() || (x.getMtbAart() == null || !x.getMtbAart().isFlagQtaCnfFissaBoolean())) {
|
||||||
cloneModel.setUntMis("col");
|
cloneModel.setUntMis("col");
|
||||||
cloneModel.setQtaTot(mtbColrToDispatch != null ? mtbColrToDispatch.getNumCnf() : x.getSitArtOrdDTO().getNumCnfOrd());
|
// cloneModel.setQtaTot(mtbColrToDispatch != null ? mtbColrToDispatch.getNumCnf() : x.getSitArtOrdDTO().getNumCnfOrd());
|
||||||
cloneModel.setQtaEvasa(numCnfWithdrawRows.getBigDecimalValue());
|
// cloneModel.setQtaEvasa(numCnfWithdrawRows.getBigDecimalValue());
|
||||||
|
|
||||||
|
BigDecimal numCnfOrdToSubstract = UtilityBigDecimal.getLowerBetween(mtbColrToDispatch.getNumCnf(), numCnfOrdCounter);
|
||||||
|
|
||||||
|
cloneModel.setQtaTot(UtilityBigDecimal.getLowerBetween(mtbColrToDispatch.getNumCnf(), numCnfOrdCounter));
|
||||||
|
numCnfOrdCounter = numCnfOrdCounter.subtract(numCnfOrdToSubstract);
|
||||||
|
|
||||||
|
BigDecimal qtaEvasa = Stream.of(x.getWithdrawMtbColrs())
|
||||||
|
.filter(y -> y.getRefMtbColr() != null &&
|
||||||
|
y.getRefMtbColr().getNumCollo().equals(mtbColrToDispatch.getNumCollo()) &&
|
||||||
|
y.getRefMtbColr().getDataColloD().equals(mtbColrToDispatch.getDataColloD()) &&
|
||||||
|
y.getRefMtbColr().getSerCollo().equals(mtbColrToDispatch.getSerCollo()) &&
|
||||||
|
y.getRefMtbColr().getGestioneEnum().equals(mtbColrToDispatch.getGestioneEnum()) &&
|
||||||
|
UtilityString.equalsIgnoreCase(y.getRefMtbColr().getCodMart(), mtbColrToDispatch.getCodMart()) &&
|
||||||
|
UtilityString.equalsIgnoreCase(y.getRefMtbColr().getCodTagl(), mtbColrToDispatch.getCodTagl()) &&
|
||||||
|
UtilityString.equalsIgnoreCase(y.getRefMtbColr().getCodCol(), mtbColrToDispatch.getCodCol()))
|
||||||
|
.map(MtbColr::getNumCnf)
|
||||||
|
.reduce(BigDecimal.ZERO, BigDecimal::add);
|
||||||
|
|
||||||
|
cloneModel.setQtaEvasa(qtaEvasa);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
BigDecimal qtaOrdToSubstract = UtilityBigDecimal.getLowerBetween(mtbColrToDispatch.getQtaCol(), qtaColOrdCounter);
|
BigDecimal qtaOrdToSubstract = UtilityBigDecimal.getLowerBetween(mtbColrToDispatch.getQtaCol(), qtaColOrdCounter);
|
||||||
|
|||||||
@ -2,11 +2,6 @@ package it.integry.integrywmsnative.view.dialogs.ask_position_of_lu;
|
|||||||
|
|
||||||
import android.app.Dialog;
|
import android.app.Dialog;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
|
||||||
import androidx.appcompat.widget.AppCompatTextView;
|
|
||||||
import androidx.databinding.DataBindingUtil;
|
|
||||||
import com.google.android.material.textfield.TextInputLayout;
|
|
||||||
|
|
||||||
import android.graphics.Color;
|
import android.graphics.Color;
|
||||||
import android.graphics.drawable.ColorDrawable;
|
import android.graphics.drawable.ColorDrawable;
|
||||||
import android.text.Editable;
|
import android.text.Editable;
|
||||||
@ -14,11 +9,16 @@ import android.text.TextWatcher;
|
|||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
|
import androidx.appcompat.widget.AppCompatTextView;
|
||||||
|
import androidx.databinding.DataBindingUtil;
|
||||||
|
|
||||||
|
import com.google.android.material.textfield.TextInputLayout;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import it.integry.barcode_base_android_library.model.BarcodeScanDTO;
|
||||||
import it.integry.integrywmsnative.R;
|
import it.integry.integrywmsnative.R;
|
||||||
import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer;
|
|
||||||
import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO;
|
import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO;
|
||||||
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
||||||
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||||
@ -29,10 +29,8 @@ import it.integry.integrywmsnative.core.utility.UtilityBarcode;
|
|||||||
import it.integry.integrywmsnative.core.utility.UtilityDialog;
|
import it.integry.integrywmsnative.core.utility.UtilityDialog;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityExceptions;
|
import it.integry.integrywmsnative.core.utility.UtilityExceptions;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityPosizione;
|
import it.integry.integrywmsnative.core.utility.UtilityPosizione;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityProgress;
|
|
||||||
import it.integry.integrywmsnative.databinding.DialogAskPositionOfLuBinding;
|
import it.integry.integrywmsnative.databinding.DialogAskPositionOfLuBinding;
|
||||||
import it.integry.integrywmsnative.view.dialogs.DialogConsts;
|
import it.integry.integrywmsnative.view.dialogs.DialogConsts;
|
||||||
import it.integry.barcode_base_android_library.model.BarcodeScanDTO;
|
|
||||||
|
|
||||||
public class DialogAskPositionOfLU {
|
public class DialogAskPositionOfLU {
|
||||||
|
|
||||||
@ -143,6 +141,8 @@ public class DialogAskPositionOfLU {
|
|||||||
if(!completedFlow) onComplete.run(DialogConsts.Results.ABORT, null);
|
if(!completedFlow) onComplete.run(DialogConsts.Results.ABORT, null);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
BarcodeManager.enable();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -161,17 +161,6 @@ public class DialogAskPositionOfLU {
|
|||||||
if (!mCheckForLineaProd && !currentMtbDepoPosizione.isFlagLineaProduzione() && UtilityPosizione.isPosizioneWithLivello(foundPosizione)) {
|
if (!mCheckForLineaProd && !currentMtbDepoPosizione.isFlagLineaProduzione() && UtilityPosizione.isPosizioneWithLivello(foundPosizione)) {
|
||||||
askLivello();
|
askLivello();
|
||||||
BarcodeManager.enable();
|
BarcodeManager.enable();
|
||||||
} else {
|
|
||||||
if(mtbColt != null) {
|
|
||||||
updatePosizione(foundPosizione, () -> {
|
|
||||||
completedFlow = true;
|
|
||||||
BarcodeManager.enable();
|
|
||||||
if(onComplete != null) onComplete.run(DialogConsts.Results.YES, foundPosizione);
|
|
||||||
}, ex -> {
|
|
||||||
completedFlow = true;
|
|
||||||
BarcodeManager.enable();
|
|
||||||
onFailed.run(ex);
|
|
||||||
});
|
|
||||||
} else {
|
} else {
|
||||||
completedFlow = true;
|
completedFlow = true;
|
||||||
if(onComplete != null) onComplete.run(DialogConsts.Results.YES, foundPosizione);
|
if(onComplete != null) onComplete.run(DialogConsts.Results.YES, foundPosizione);
|
||||||
@ -179,7 +168,6 @@ public class DialogAskPositionOfLU {
|
|||||||
mDialog.dismiss();
|
mDialog.dismiss();
|
||||||
BarcodeManager.enable();
|
BarcodeManager.enable();
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
BarcodeManager.enable();
|
BarcodeManager.enable();
|
||||||
@ -200,25 +188,9 @@ public class DialogAskPositionOfLU {
|
|||||||
if(foundPosizione != null) {
|
if(foundPosizione != null) {
|
||||||
resetLevelError();
|
resetLevelError();
|
||||||
|
|
||||||
if(mtbColt != null) {
|
|
||||||
Dialog progressDialog = UtilityProgress.createDefaultProgressDialog(mContext);
|
|
||||||
|
|
||||||
ColliMagazzinoRESTConsumer.changePosizione(mtbColt, foundPosizione, () -> {
|
|
||||||
progressDialog.dismiss();
|
|
||||||
completedFlow = true;
|
completedFlow = true;
|
||||||
if(onComplete != null) onComplete.run(DialogConsts.Results.YES, foundPosizione);
|
if(onComplete != null) onComplete.run(DialogConsts.Results.YES, foundPosizione);
|
||||||
mDialog.dismiss();
|
mDialog.dismiss();
|
||||||
}, ex -> {
|
|
||||||
UtilityExceptions.defaultException(mContext, ex, progressDialog);
|
|
||||||
completedFlow = true;
|
|
||||||
if(onFailed != null) onFailed.run(ex);
|
|
||||||
mDialog.dismiss();
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
completedFlow = true;
|
|
||||||
if(onComplete != null) onComplete.run(DialogConsts.Results.YES, foundPosizione);
|
|
||||||
mDialog.dismiss();
|
|
||||||
}
|
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
setLevelError(mContext.getResources().getString(R.string.not_valid));
|
setLevelError(mContext.getResources().getString(R.string.not_valid));
|
||||||
@ -251,21 +223,4 @@ public class DialogAskPositionOfLU {
|
|||||||
mDialog.dismiss();
|
mDialog.dismiss();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void updatePosizione(MtbDepoPosizione mtbDepoPosizione, Runnable onComplete, RunnableArgs<Exception> onFailed) {
|
|
||||||
|
|
||||||
final Dialog progressDialog = UtilityProgress.createDefaultProgressDialog(mContext);
|
|
||||||
|
|
||||||
ColliMagazzinoRESTConsumer.changePosizione(mtbColt, mtbDepoPosizione, () -> {
|
|
||||||
progressDialog.dismiss();
|
|
||||||
onComplete.run();
|
|
||||||
}, ex -> {
|
|
||||||
progressDialog.dismiss();
|
|
||||||
onFailed.run(ex);
|
|
||||||
});
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user