Fix filtro gruppo merceologico in approvvigionamento linee
This commit is contained in:
parent
e12da84fa3
commit
66e0ce15cb
@ -402,11 +402,18 @@ public class ProdFabbisognoLineeProdFragment extends BaseFragment implements ITi
|
||||
.max(Date::compareTo)
|
||||
.orElse(null);
|
||||
|
||||
this.mViewModel.loadFabbisogno(ordini, codMdep, dataInizio, dataFine, this::startPickingActivity);
|
||||
List<MtbGrup> listMtbGrup = Stream.of(mProdFabbisognoItemModel)
|
||||
.filter(x -> x instanceof ProdFabbisognoLineeItemModelDto && ((ProdFabbisognoLineeItemModelDto) x).selected.get())
|
||||
.flatMap(x -> Stream.of(((ProdFabbisognoLineeItemModelDto) x).getSelectedMtbGrup()))
|
||||
.toList();
|
||||
|
||||
this.mViewModel.loadFabbisogno(ordini, codMdep, dataInizio, dataFine, onCompleteData -> {
|
||||
startPickingActivity(listMtbGrup, onCompleteData);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
private void startPickingActivity(List<ProdFabbisognoLineeProdDTO> fabbisognoList) {
|
||||
private void startPickingActivity(List<MtbGrup> listMtbGrup, List<ProdFabbisognoLineeProdDTO> fabbisognoList) {
|
||||
String codMdep = SettingsManager.i().getUserSession().getDepo().getCodMdep();
|
||||
|
||||
String ordini = UtilityDB.listValueToString(Stream.of(mProdFabbisognoItemModel)
|
||||
@ -415,6 +422,7 @@ public class ProdFabbisognoLineeProdFragment extends BaseFragment implements ITi
|
||||
.toList());
|
||||
|
||||
List<SitArtOrdDTO> sitArtOrdDTOS = Stream.of(fabbisognoList)
|
||||
.filter(x -> Stream.of(listMtbGrup).anyMatch(y -> y.getCodMgrp().equalsIgnoreCase(x.getCodMgrp())))
|
||||
.map(x -> {
|
||||
SitArtOrdDTO sitArtOrdDTO = new SitArtOrdDTO()
|
||||
.setCodMart(x.getCodMart())
|
||||
|
||||
@ -1,12 +1,17 @@
|
||||
package it.integry.integrywmsnative.gest.prod_fabbisogno_linee_prod.dto;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import it.integry.integrywmsnative.core.di.BindableBoolean;
|
||||
import it.integry.integrywmsnative.core.model.MtbGrup;
|
||||
import it.integry.integrywmsnative.gest.prod_versamento_materiale.dto.OrdineLavorazioneDTO;
|
||||
|
||||
public class ProdFabbisognoLineeItemModelDto {
|
||||
|
||||
public BindableBoolean selected = new BindableBoolean();
|
||||
public OrdineLavorazioneDTO ordineLavorazioneDTO;
|
||||
List<MtbGrup> selectedMtbGrup = new ArrayList<>();
|
||||
|
||||
public BindableBoolean getSelected() {
|
||||
return selected;
|
||||
@ -20,4 +25,13 @@ public class ProdFabbisognoLineeItemModelDto {
|
||||
this.ordineLavorazioneDTO = ordineLavorazioneDTO;
|
||||
return this;
|
||||
}
|
||||
|
||||
public List<MtbGrup> getSelectedMtbGrup() {
|
||||
return selectedMtbGrup;
|
||||
}
|
||||
|
||||
public ProdFabbisognoLineeItemModelDto setSelectedMtbGrup(List<MtbGrup> selectedMtbGrup) {
|
||||
this.selectedMtbGrup = selectedMtbGrup;
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
@ -60,12 +60,10 @@ public class ProdFabbisognoLineeProdFilterViewModel {
|
||||
currentGruppoMercPredicate.get() == null) {
|
||||
returnList = this.initialList;
|
||||
} else {
|
||||
Stream<ProdFabbisognoLineeItemModelDto> tmpStream = Stream.of(this.initialList)
|
||||
returnList = Stream.of(this.initialList)
|
||||
.filter(x -> (currentNumOrdsPredicate.get() == null || (currentNumOrdsPredicate.get().test(x))) &&
|
||||
(currentGruppoMercPredicate.get() == null || (currentGruppoMercPredicate.get().test(x)))
|
||||
);
|
||||
|
||||
returnList = tmpStream.toList();
|
||||
).map(x -> x.setSelectedMtbGrup(this.selectedMtbGrup)).toList();
|
||||
}
|
||||
|
||||
this.currentList.setValue(returnList);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user