diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/MainAccettazioneFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/MainAccettazioneFragment.java index 1c4be179..a2f249c1 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/MainAccettazioneFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/MainAccettazioneFragment.java @@ -53,6 +53,7 @@ public class MainAccettazioneFragment extends BaseFragment implements ISearcable private final List mOnPreDestroyList = new ArrayList<>(); private ElevatedToolbar mToolbar; + private String mTextFilter; private FragmentMainAccettazioneBinding mBinding; private final ObservableArrayList mOrdiniInevasiMutableData = new ObservableArrayList<>(); @@ -119,7 +120,9 @@ public class MainAccettazioneFragment extends BaseFragment implements ISearcable private void initRecyclerView() { - this.mViewModel.getOrderList().observe(getViewLifecycleOwner(), this::refreshList); + this.mViewModel.getOrderList().observe(getViewLifecycleOwner(), x->{ + this.refreshList(getFilteredList(mTextFilter)); + }); MainListAccettazioneAdapter adapter = new MainListAccettazioneAdapter(getActivity(), mOrdiniInevasiMutableData) @@ -225,20 +228,25 @@ public class MainAccettazioneFragment extends BaseFragment implements ISearcable @Override public boolean onQueryTextChange(String newText) { + List originalList = this.mViewModel.getOrderList().getValue(); + if(originalList == null || originalList.isEmpty()) return false; + mTextFilter = newText; + List filteredOrders = getFilteredList(newText); + + refreshList(filteredOrders); + return true; + } + + private List getFilteredList(String newText) { List filteredOrders = new ArrayList<>(); List originalList = this.mViewModel.getOrderList().getValue(); - - if(originalList == null || originalList.isEmpty()) return false; - + if(originalList == null || originalList.isEmpty() || newText == null) return originalList; for(int i = 0; i < originalList.size(); i++){ - if(originalList.get(i).getRagSocOrd().toLowerCase().contains(newText.toLowerCase())){ filteredOrders.add(originalList.get(i)); } } - - refreshList(filteredOrders); - return true; + return filteredOrders; } @Override diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/ordini_uscita_elenco/rest/OrdiniUscitaElencoRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/gest/ordini_uscita_elenco/rest/OrdiniUscitaElencoRESTConsumer.java index a2968891..ecd3475f 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/ordini_uscita_elenco/rest/OrdiniUscitaElencoRESTConsumer.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/ordini_uscita_elenco/rest/OrdiniUscitaElencoRESTConsumer.java @@ -31,7 +31,7 @@ public class OrdiniUscitaElencoRESTConsumer extends _BaseRESTConsumer { @Override public void onResponse(Call>> call, Response>> response) { analyzeAnswer(response, "getOrdiniFromCommessaCollo", (m) -> { - onComplete.run(response.body().getEntity()); + onComplete.run(response.body().getDto()); }, onFailed); }