Aggiunto ordinamento (da customizzareper azienda) sui filtri in spedizione

This commit is contained in:
Valerio Castellana 2021-11-12 16:32:18 +01:00
parent 28a034f0d6
commit 4968f2f4fa
3 changed files with 28 additions and 4 deletions

View File

@ -32,55 +32,66 @@ public class OrdiniUscitaElencoBindings {
public static final HashMap<Integer, FilterChipDTO> AVAILABLE_FILTERS = new HashMap<>() {{
put(DEPOSITO_FILTER_ID, new FilterChipDTO()
.setID(DEPOSITO_FILTER_ID)
.setPosizione(9)
.setFilterChipText("Deposito")
.setFilterLayoutView(new FilterDepositoLayoutView()));
put(VIAGGIO_FILTER_ID, new FilterChipDTO()
.setID(VIAGGIO_FILTER_ID)
.setPosizione(2)
.setFilterChipText("Viaggio")
.setFilterLayoutView(new FilterViaggioLayoutView()));
put(NUM_ORD_FILTER_ID, new FilterChipDTO()
.setID(NUM_ORD_FILTER_ID)
.setPosizione(0)
.setFilterChipText("Numero ordine")
.setFilterLayoutView(new FilterNumeroOrdineLayoutView()));
put(CLIENTE_FILTER_ID, new FilterChipDTO()
.setID(CLIENTE_FILTER_ID)
.setPosizione(1)
.setFilterChipText("Cliente")
.setFilterLayoutView(new FilterClienteLayoutView()));
put(VETTORE_FILTER_ID, new FilterChipDTO()
.setID(VETTORE_FILTER_ID)
.setPosizione(4)
.setFilterChipText("Vettore")
.setFilterLayoutView(new FilterVettoreLayoutView()));
put(AUTOMEZZO_FILTER_ID, new FilterChipDTO()
.setID(AUTOMEZZO_FILTER_ID)
.setPosizione(6)
.setFilterChipText("Automezzo")
.setFilterLayoutView(new FilterAutomezzoLayoutView()));
put(PAESE_FILTER_ID, new FilterChipDTO()
.setID(PAESE_FILTER_ID)
.setPosizione(8)
.setFilterChipText("Paese")
.setFilterLayoutView(new FilterPaeseLayoutView()));
put(AGENTE_FILTER_ID, new FilterChipDTO()
.setID(AGENTE_FILTER_ID)
.setPosizione(10)
.setFilterChipText("Agente")
.setFilterLayoutView(new FilterAgenteLayoutView()));
put(TERM_CONS_FILTER_ID, new FilterChipDTO()
.setID(TERM_CONS_FILTER_ID)
.setPosizione(5)
.setFilterChipText("Termini consegna")
.setFilterLayoutView(new FilterTermConsLayoutView()));
put(DATA_CONS_FILTER_ID, new FilterChipDTO()
.setID(DATA_CONS_FILTER_ID)
.setPosizione(3)
.setFilterChipText("Data consegna"));
put(GRUPPO_MERC_FILTER_ID, new FilterChipDTO()
.setID(GRUPPO_MERC_FILTER_ID)
.setPosizione(7)
.setFilterChipText("Gruppo merceologico")
.setFilterLayoutView(new FilterGruppoMercLayoutView()));
}};

View File

@ -20,6 +20,7 @@ import com.google.android.material.datepicker.MaterialDatePicker;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import javax.inject.Inject;
@ -261,14 +262,16 @@ public class OrdiniUscitaElencoFragment extends BaseFragment implements ITitledF
mAppliedFilterViewModel.getCurrentDataConsPredicate().addOnPropertyChangedCallback(onPredicateChanged);
mAppliedFilterViewModel.getCurrentGruppoMercPredicate().addOnPropertyChangedCallback(onPredicateChanged);
for (var filterChipDTO : OrdiniUscitaElencoBindings.AVAILABLE_FILTERS.entrySet()) {
List<FilterChipDTO> filterList = Stream.of(OrdiniUscitaElencoBindings.AVAILABLE_FILTERS.entrySet()).map(Map.Entry::getValue).sortBy(FilterChipDTO::getPosizione).toList();
for (FilterChipDTO filterChipDTO : filterList){
FilterChipView filterChipView = new FilterChipView(
requireActivity(),
filterChipDTO.getValue().getFilterChipText(),
v -> initBottomSheetDialogFilter(filterChipDTO.getValue()));
filterChipDTO.getFilterChipText(),
v -> initBottomSheetDialogFilter(filterChipDTO));
switch (filterChipDTO.getKey()) {
switch (filterChipDTO.getID()) {
case OrdiniUscitaElencoBindings.DEPOSITO_FILTER_ID:
mAppliedFilterViewModel.getCurrentDepositoPredicate().addOnPropertyChangedCallback(new OnGeneralChangedCallback() {
@Override

View File

@ -3,6 +3,7 @@ package it.integry.integrywmsnative.ui.filter_chips;
public class FilterChipDTO {
private int ID;
private int posizione;
private String filterChipText;
private FilterLayoutView filterLayoutView;
@ -32,4 +33,13 @@ public class FilterChipDTO {
this.filterLayoutView = filterLayoutView;
return this;
}
public int getPosizione() {
return posizione;
}
public FilterChipDTO setPosizione(int posizione) {
this.posizione = posizione;
return this;
}
}