Aggiunta gestione colli misti
This commit is contained in:
parent
8a366e800e
commit
ed7f2499c8
@ -11,14 +11,18 @@ import android.widget.Toast;
|
|||||||
import androidx.databinding.ObservableField;
|
import androidx.databinding.ObservableField;
|
||||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||||
|
|
||||||
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
import java.text.ParseException;
|
import java.text.ParseException;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Iterator;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import it.integry.integrywmsnative.R;
|
import it.integry.integrywmsnative.R;
|
||||||
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
||||||
import it.integry.integrywmsnative.core.exception.DateNotRecognizedException;
|
import it.integry.integrywmsnative.core.exception.DateNotRecognizedException;
|
||||||
import it.integry.integrywmsnative.core.exception.TimeNotRecognizedException;
|
import it.integry.integrywmsnative.core.exception.TimeNotRecognizedException;
|
||||||
|
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||||
import it.integry.integrywmsnative.core.interfaces.IPoppableActivity;
|
import it.integry.integrywmsnative.core.interfaces.IPoppableActivity;
|
||||||
import it.integry.integrywmsnative.core.model.MtbAart;
|
import it.integry.integrywmsnative.core.model.MtbAart;
|
||||||
import it.integry.integrywmsnative.core.model.MtbColr;
|
import it.integry.integrywmsnative.core.model.MtbColr;
|
||||||
@ -124,9 +128,13 @@ public class ProdVersamentoMaterialViewModel {
|
|||||||
null, this::openLU).show();
|
null, this::openLU).show();
|
||||||
return;
|
return;
|
||||||
} else if (mtbColt.get().getMtbColr().size() > 1) {
|
} else if (mtbColt.get().getMtbColr().size() > 1) {
|
||||||
|
|
||||||
DialogSimpleMessageHelper.makeWarningDialog(mContext,
|
DialogSimpleMessageHelper.makeWarningDialog(mContext,
|
||||||
new SpannableString(Html.fromHtml("Il collo selezionato contiene più articoli, solo il primo verrà versato in questa sessione. <br> Per versare i colli restanti ripetere l'operazione di versamento.")),
|
new SpannableString(Html.fromHtml("Il collo selezionato contiene più articoli, solo il primo verrà versato in questa sessione. <br> Per versare i colli restanti ripetere l'operazione di versamento.")),
|
||||||
null, null).show();
|
null, () -> {
|
||||||
|
cyclicGetOrdiniLavByCollo(mtbColt.get().getMtbColr().iterator(), mtbDepoPosizione);
|
||||||
|
}).show();
|
||||||
|
return;
|
||||||
|
|
||||||
}
|
}
|
||||||
MesRESTConsumer.getOrdiniLavorazioneMateriale(mtbDepoPosizione.getPosizione(), getIdMaterialeFromCollo(mtbColt.get()), ordini -> richiediOrdiniPerVersamento(ordini, mtbDepoPosizione), e -> DialogSimpleMessageHelper.makeWarningDialog(mContext,
|
MesRESTConsumer.getOrdiniLavorazioneMateriale(mtbDepoPosizione.getPosizione(), getIdMaterialeFromCollo(mtbColt.get()), ordini -> richiediOrdiniPerVersamento(ordini, mtbDepoPosizione), e -> DialogSimpleMessageHelper.makeWarningDialog(mContext,
|
||||||
@ -173,7 +181,7 @@ public class ProdVersamentoMaterialViewModel {
|
|||||||
openLU();
|
openLU();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void richiediOrdiniPerVersamento(List<OrdineLavorazioneDTO> ordini, MtbDepoPosizione mtbDepoPosizione) {
|
private void richiediOrdiniPerVersamento(List<OrdineLavorazioneDTO> ordini, MtbDepoPosizione mtbDepoPosizione) {
|
||||||
|
|
||||||
if (ordini == null || ordini.size() <= 0) {
|
if (ordini == null || ordini.size() <= 0) {
|
||||||
mBinding.positiveFab.setVisibility(View.GONE);
|
mBinding.positiveFab.setVisibility(View.GONE);
|
||||||
@ -220,4 +228,24 @@ public class ProdVersamentoMaterialViewModel {
|
|||||||
mBinding.dialogChooseArtsFromListaArtMainList.setAdapter(currentAdapter);
|
mBinding.dialogChooseArtsFromListaArtMainList.setAdapter(currentAdapter);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void cyclicGetOrdiniLavByCollo(@NotNull Iterator<MtbColr> righeCollo, MtbDepoPosizione mtbDepoPosizione) {
|
||||||
|
MtbColr colr = righeCollo.next();
|
||||||
|
setMtbColr(colr);
|
||||||
|
MtbAart articolo = colr.getMtbAart();
|
||||||
|
|
||||||
|
MesRESTConsumer.getOrdiniLavorazioneMateriale(mtbDepoPosizione.getPosizione(), UtilityString.isNullOrEmpty(articolo.getIdArtEqui()) ? articolo.getCodMart() : articolo.getIdArtEqui(), ordini -> {
|
||||||
|
if (ordini == null || ordini.isEmpty()) {
|
||||||
|
if (righeCollo.hasNext()) {
|
||||||
|
cyclicGetOrdiniLavByCollo(righeCollo, mtbDepoPosizione);
|
||||||
|
} else {
|
||||||
|
richiediOrdiniPerVersamento(ordini, mtbDepoPosizione);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
richiediOrdiniPerVersamento(ordini, mtbDepoPosizione);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
, e -> DialogSimpleMessageHelper.makeWarningDialog(mContext,
|
||||||
|
new SpannableString(Html.fromHtml(e.getMessage())),
|
||||||
|
null, this::openLU).show());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user