Aggiunto filtro descrizione in gestione Riposizionamento da prod
This commit is contained in:
parent
377950c978
commit
bd3fdd9ab1
@ -15,6 +15,7 @@ import com.annimon.stream.Stream;
|
||||
import com.ravikoradiya.liveadapter.LiveAdapter;
|
||||
import com.ravikoradiya.liveadapter.Type;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
@ -29,6 +30,7 @@ import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
||||
import it.integry.integrywmsnative.core.expansion.BaseFragment;
|
||||
import it.integry.integrywmsnative.core.expansion.OnGeneralChangedCallback;
|
||||
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||
import it.integry.integrywmsnative.core.interfaces.ISearchableFragment;
|
||||
import it.integry.integrywmsnative.core.interfaces.ITitledFragment;
|
||||
import it.integry.integrywmsnative.core.model.MtbColt;
|
||||
import it.integry.integrywmsnative.core.model.MtbDepoPosizione;
|
||||
@ -42,11 +44,10 @@ import it.integry.integrywmsnative.gest.prod_riposizionamento_da_prod.dto.ArtsIn
|
||||
import it.integry.integrywmsnative.gest.prod_riposizionamento_da_prod.filter.ProdRiposizionamentoDaProdFilterViewModel;
|
||||
import it.integry.integrywmsnative.ui.filter_chips.FilterChipDTO;
|
||||
import it.integry.integrywmsnative.ui.filter_chips.FilterChipView;
|
||||
import it.integry.integrywmsnative.ui.filter_chips.filters.FilterNumeroOrdineLayoutView;
|
||||
import it.integry.integrywmsnative.view.dialogs.DialogConsts;
|
||||
import it.integry.integrywmsnative.view.dialogs.ask_position_of_lu.DialogAskPositionOfLUView;
|
||||
|
||||
public class ProdRiposizionamentoDaProdFragment extends BaseFragment implements ITitledFragment, ProdRiposizionamentoDaProdViewModel.Listener {
|
||||
public class ProdRiposizionamentoDaProdFragment extends BaseFragment implements ISearchableFragment, ITitledFragment, ProdRiposizionamentoDaProdViewModel.Listener {
|
||||
|
||||
@Inject
|
||||
ProdRiposizionamentoDaProdViewModel mViewModel;
|
||||
@ -57,6 +58,8 @@ public class ProdRiposizionamentoDaProdFragment extends BaseFragment implements
|
||||
private final Handler mHandler = new Handler();
|
||||
private final int mInterval = 120 * 1000; //2 minuti
|
||||
private int barcodeScannerIstanceID = -1;
|
||||
private AppCompatTextView mAppBarTitle;
|
||||
private String mTextFilter;
|
||||
|
||||
|
||||
public ProdRiposizionamentoDaProdFragment() {
|
||||
@ -123,7 +126,7 @@ public class ProdRiposizionamentoDaProdFragment extends BaseFragment implements
|
||||
mViewModel.getItemsInventario().observe(getViewLifecycleOwner(), data -> {
|
||||
mBindings.emptyView.setVisibility(data == null || data.isEmpty() ? View.VISIBLE : View.GONE);
|
||||
|
||||
mFilterViewModel.init(mViewModel.getItemsInventario().getValue());
|
||||
mFilterViewModel.init(getFilteredList(mTextFilter));
|
||||
this.refreshList(null);
|
||||
});
|
||||
|
||||
@ -254,6 +257,44 @@ public class ProdRiposizionamentoDaProdFragment extends BaseFragment implements
|
||||
.show(requireActivity().getSupportFragmentManager(), "tag");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onSearchEnabled() {
|
||||
mAppBarTitle.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onSearchDisabled() {
|
||||
mAppBarTitle.setVisibility(View.VISIBLE);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onQueryTextSubmit(String query) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onQueryTextChange(String newText) {
|
||||
List<ArtsInGiacenzaDTO> originalList = this.mViewModel.getItemsInventario().getValue();
|
||||
if (originalList == null || originalList.isEmpty()) return false;
|
||||
mTextFilter = newText;
|
||||
List<ArtsInGiacenzaDTO> filteredOrders = getFilteredList(newText);
|
||||
|
||||
refreshList(filteredOrders);
|
||||
return true;
|
||||
}
|
||||
|
||||
private List<ArtsInGiacenzaDTO> getFilteredList(String newText) {
|
||||
List<ArtsInGiacenzaDTO> filteredOrders = new ArrayList<>();
|
||||
List<ArtsInGiacenzaDTO> originalList = this.mViewModel.getItemsInventario().getValue();
|
||||
if (originalList == null || originalList.isEmpty() || newText == null) return originalList;
|
||||
for (int i = 0; i < originalList.size(); i++) {
|
||||
if (originalList.get(i).getDescrizione().toLowerCase().contains(newText.toLowerCase())) {
|
||||
filteredOrders.add(originalList.get(i));
|
||||
}
|
||||
}
|
||||
return filteredOrders;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onStart() {
|
||||
super.onStart();
|
||||
@ -274,7 +315,8 @@ public class ProdRiposizionamentoDaProdFragment extends BaseFragment implements
|
||||
|
||||
@Override
|
||||
public void onCreateActionBar(AppCompatTextView titleText, Context context) {
|
||||
titleText.setText(context.getText(R.string.prod_riposizionamento_da_prod_title).toString());
|
||||
mAppBarTitle = titleText;
|
||||
mAppBarTitle.setText(context.getText(R.string.prod_riposizionamento_da_prod_title).toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user