diff --git a/app/src/main/java/it/integry/integrywmsnative/core/model/CheckableMtbColr.java b/app/src/main/java/it/integry/integrywmsnative/core/model/CheckableMtbColr.java index 6374522c..17eb56e8 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/model/CheckableMtbColr.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/model/CheckableMtbColr.java @@ -60,8 +60,4 @@ public class CheckableMtbColr { this.hidden = hidden; return this; } - - public void toggleCheck() { - this.checked.set(!this.checked.get()); - } } diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_mtbcolr_list/DialogChooseArtsFromMtbColrList.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_mtbcolr_list/DialogChooseArtsFromMtbColrList.java index 7c3da664..3b42d43e 100644 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_mtbcolr_list/DialogChooseArtsFromMtbColrList.java +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_mtbcolr_list/DialogChooseArtsFromMtbColrList.java @@ -1,28 +1,27 @@ package it.integry.integrywmsnative.view.dialogs.choose_arts_from_mtbcolr_list; +import android.app.Dialog; import android.content.Context; import android.content.DialogInterface; -import android.graphics.Color; -import android.graphics.drawable.ColorDrawable; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; -import android.view.ViewGroup; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.appcompat.widget.SearchView; -import androidx.databinding.DataBindingUtil; -import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.lifecycle.MutableLiveData; import com.annimon.stream.Stream; +import com.google.android.material.dialog.MaterialAlertDialogBuilder; +import com.ravikoradiya.liveadapter.LiveAdapter; -import java.util.ArrayList; import java.util.List; import javax.inject.Inject; import it.integry.barcode_base_android_library.model.BarcodeScanDTO; +import it.integry.integrywmsnative.BR; import it.integry.integrywmsnative.MainApplication; import it.integry.integrywmsnative.R; import it.integry.integrywmsnative.core.barcode_reader.BarcodeCallbackDTO; @@ -35,33 +34,34 @@ import it.integry.integrywmsnative.core.rest.consumers.ArticoloRESTConsumer; import it.integry.integrywmsnative.core.rest.consumers.BarcodeRESTConsumer; import it.integry.integrywmsnative.core.rest.model.Ean128Model; import it.integry.integrywmsnative.core.utility.UtilityBarcode; -import it.integry.integrywmsnative.core.utility.UtilityDialog; import it.integry.integrywmsnative.core.utility.UtilityExceptions; import it.integry.integrywmsnative.core.utility.UtilityString; import it.integry.integrywmsnative.databinding.DialogChooseArtsFromMtbColrListLayoutBinding; import it.integry.integrywmsnative.view.dialogs.DialogCommon; +import kotlin.Unit; -public class DialogChooseArtsFromMtbColrList extends BaseDialogFragment { +public class DialogChooseArtsFromMtbColrList extends BaseDialogFragment implements DialogInterface.OnShowListener { + @Inject + DialogChooseArtsFromMtbColrListViewModel mViewModel; @Inject BarcodeRESTConsumer barcodeRESTConsumer; - @Inject ArticoloRESTConsumer articoloRESTConsumer; - private Context context; + + private int mBarcodeScannerIstanceID; + private final List inputMtbColrList; + private MtbAart selectedArt; + private final RunnableArgs> onConfirmed; + private final Runnable onAbort; + private DialogChooseArtsFromMtbColrListLayoutBinding mBindings; - private DialogChooseArtsFromMtbColrListAdapter currentAdapter; - - private final RunnableArgs> mOnItemsChoosed; - private final Runnable mOnAbort; - - private final List mDataset; - - private int mBarcodeScannerIstanceID; - private MtbAart selectedArt; + private List mtbColrItemModels; + private final MutableLiveData> hiddenMtbColrItemModels = new MutableLiveData<>(); + private Context mContext; public static DialogChooseArtsFromMtbColrList newInstance(List listaMtbColr, RunnableArgs> onItemsChoosed, Runnable onAbort) { return new DialogChooseArtsFromMtbColrList(listaMtbColr, onItemsChoosed, onAbort); @@ -77,80 +77,99 @@ public class DialogChooseArtsFromMtbColrList extends BaseDialogFragment { this.selectedArt = mtbAart; } - private DialogChooseArtsFromMtbColrList(List listaMtbColr, RunnableArgs> onItemsChoosed, Runnable onAbort) { + private DialogChooseArtsFromMtbColrList(List listaMtbColr, RunnableArgs> onConfirmed, Runnable onAbort) { super(); - mOnItemsChoosed = onItemsChoosed; - mOnAbort = onAbort; + this.inputMtbColrList = listaMtbColr; - mDataset = new ArrayList<>(); + this.onConfirmed = onConfirmed; + this.onAbort = onAbort; - if (listaMtbColr != null) { - for (MtbColr mtbColr : listaMtbColr) { - if (UtilityString.isNullOrEmpty(mtbColr.getUntMis()) && mtbColr.getMtbAart() != null) { - mtbColr.setUntMis(mtbColr.getMtbAart().getUntMis()); - } +// mDataset = new ArrayList<>(); - mDataset.add(new DialogChooseArtsFromMtbColrListItemModel().setMtbColr(mtbColr)); - } - } +// if (listaMtbColr != null) { +// for (MtbColr mtbColr : listaMtbColr) { +// if (UtilityString.isNullOrEmpty(mtbColr.getUntMis()) && mtbColr.getMtbAart() != null) { +// mtbColr.setUntMis(mtbColr.getMtbAart().getUntMis()); +// } +// +// mDataset.add(new DialogChooseArtsFromMtbColrListItemModel().setMtbColr(mtbColr)); +// } +// } } - @Nullable + @NonNull @Override - public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { - super.onCreateView(inflater, container, savedInstanceState); + public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { + this.mContext = requireContext(); - this.context = getActivity(); - mBindings = DataBindingUtil.inflate(inflater, R.layout.dialog_choose_arts_from_mtb_colr_list_layout, null, false); - mBindings.setLifecycleOwner(getViewLifecycleOwner()); + mBindings = DialogChooseArtsFromMtbColrListLayoutBinding.inflate(LayoutInflater.from(this.mContext), null, false); + mBindings.setLifecycleOwner(this); MainApplication.appComponent .dialogChooseArtsFromListaArtsComponent() .create() .inject(this); - UtilityDialog.setTo90PercentWidth(context, this); + var cancelable = false; - mBindings.emptyView.setVisibility(mDataset != null && mDataset.size() > 0 ? View.GONE : View.VISIBLE); + var alertDialog = new MaterialAlertDialogBuilder(this.mContext) + .setView(mBindings.getRoot()) + .setCancelable(cancelable) + .setPositiveButton(R.string.ok, (dialog, which) -> { + var selectedArts = Stream.of(this.mtbColrItemModels) + .filter(x -> x.getChecked().get()) + .map(DialogChooseArtsFromMtbColrListItemModel::getMtbColr) + .toList(); + + if (selectedArts.isEmpty()) { + if (this.onAbort != null) this.onAbort.run(); + return; + } + + if (this.onConfirmed != null) + this.onConfirmed.run(selectedArts); + }) + .setNegativeButton(R.string.abort, (dialog, which) -> { + if (this.onAbort != null) this.onAbort.run(); + }) + .create(); - initRecyclerView(); - initFilter(); - setupBarcode(); - - mBindings.positiveButton.setOnClickListener(v -> { - dismiss(); - onPositiveClick(); - }); - - mBindings.negativeButton.setOnClickListener(v -> { - dismiss(); - onNegativeClick(); - }); - - getDialog().setCanceledOnTouchOutside(false); - getDialog().getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); - - return mBindings.getRoot(); + alertDialog.setOnShowListener(this); + alertDialog.setCanceledOnTouchOutside(cancelable); + return alertDialog; } + @Override - public void onStart() { - super.onStart(); + public void onShow(DialogInterface dialogInterface) { + this.initList(); + this.initFilter(); + this.setupBarcode(); if (selectedArt != null) { this.loadArticolo(selectedArt.getBarCode(), null); } } - private void initRecyclerView() { - mBindings.listaArts.setNestedScrollingEnabled(false); + private void initList() { mBindings.listaArts.setHasFixedSize(true); - mBindings.listaArts.setLayoutManager(new LinearLayoutManager(context)); - currentAdapter = new DialogChooseArtsFromMtbColrListAdapter(context, mDataset); - mBindings.listaArts.setAdapter(currentAdapter); + this.mtbColrItemModels = Stream.of(this.inputMtbColrList) + .map(x -> new DialogChooseArtsFromMtbColrListItemModel() + .setMtbColr(x)) + .toList(); + + this.hiddenMtbColrItemModels.setValue(this.mtbColrItemModels); + + new LiveAdapter(this.hiddenMtbColrItemModels, this, BR.item) + .map(DialogChooseArtsFromMtbColrListItemModel.class, R.layout.dialog_choose_arts_from_mtb_colr_list__item_model) + .onNoData(noData -> { + mBindings.emptyView.setVisibility(noData ? View.VISIBLE : View.GONE); + return Unit.INSTANCE; + }) + .into(this.mBindings.listaArts); } @@ -163,97 +182,63 @@ public class DialogChooseArtsFromMtbColrList extends BaseDialogFragment { mBindings.mainSearch.setOnQueryTextListener(new SearchView.OnQueryTextListener() { @Override public boolean onQueryTextSubmit(String query) { -// removeListFilter(); -// -// if (!UtilityString.isNullOrEmpty(query) && query.trim().length() > 3) { -// List foundRowsList = Stream.of(mDataset) -// .filter(x -> { -// String codMart = x.getMtbColr().getMtbAart().getCodMart(); -// String descrizioneArt = x.getMtbColr().getMtbAart().getDescrizioneEstesa(); -// String diacod = x.getMtbColr().getMtbAart().getDiacod(); -// -// return ((codMart.startsWith(query) || -// codMart.endsWith(query) || -// codMart.contains(query) || -// codMart.equalsIgnoreCase(query)) || -// (descrizioneArt.startsWith(query) || -// descrizioneArt.endsWith(query) || -// descrizioneArt.contains(query) || -// descrizioneArt.equalsIgnoreCase(query)) || -// (diacod.startsWith(query) || -// diacod.endsWith(query) || -// diacod.contains(query) || -// diacod.equalsIgnoreCase(query))) && -// !x.isHidden(); -// }) -// .toList(); -// -// for (int i = 0; i < mDataset.size(); i++) { -// mDataset.get(i).setHidden(!foundRowsList.contains(mDataset.get(i))); -// } -// } - return true; } @Override public boolean onQueryTextChange(String newText) { - removeListFilter(); - newText = newText.toLowerCase(); - if (!UtilityString.isNullOrEmpty(newText) && newText.trim().length() > 2) { - String finalNewText = newText; - List foundRowsList = Stream.of(mDataset) - .filter(x -> { - String codMart = x.getMtbColr().getMtbAart().getCodMart().toLowerCase(); - String descrizioneArt = x.getMtbColr().getMtbAart().getDescrizioneEstesa().toLowerCase(); - String diacod = x.getMtbColr().getMtbAart().getDiacod(); - if (!UtilityString.isNullOrEmpty(diacod)) { - diacod = diacod.toLowerCase(); - } + String finalNewText = newText; + final List filtered = Stream.of(mtbColrItemModels) + .filter(x -> { + String codMart = x.getMtbColr().getMtbAart().getCodMart().toLowerCase(); + String descrizioneArt = x.getMtbColr().getMtbAart().getDescrizioneEstesa().toLowerCase(); + String diacod = x.getMtbColr().getMtbAart().getDiacod(); + if (!UtilityString.isNullOrEmpty(diacod)) { + diacod = diacod.toLowerCase(); + } - return ((codMart.startsWith(finalNewText) || - codMart.endsWith(finalNewText) || - codMart.contains(finalNewText) || - codMart.equalsIgnoreCase(finalNewText)) || - (descrizioneArt.startsWith(finalNewText) || - descrizioneArt.endsWith(finalNewText) || - descrizioneArt.contains(finalNewText) || - descrizioneArt.equalsIgnoreCase(finalNewText)) || - (!UtilityString.isNullOrEmpty(diacod) && (diacod.startsWith(finalNewText) || - diacod.endsWith(finalNewText) || - diacod.contains(finalNewText) || - diacod.equalsIgnoreCase(finalNewText)))) && - !x.isHidden(); - }) - .toList(); - - for (int i = 0; i < mDataset.size(); i++) { - mDataset.get(i).setHidden(!foundRowsList.contains(mDataset.get(i))); - } - } + return ((codMart.startsWith(finalNewText) || + codMart.endsWith(finalNewText) || + codMart.contains(finalNewText) || + codMart.equalsIgnoreCase(finalNewText)) || + (descrizioneArt.startsWith(finalNewText) || + descrizioneArt.endsWith(finalNewText) || + descrizioneArt.contains(finalNewText) || + descrizioneArt.equalsIgnoreCase(finalNewText)) || + (!UtilityString.isNullOrEmpty(diacod) && (diacod.startsWith(finalNewText) || + diacod.endsWith(finalNewText) || + diacod.contains(finalNewText) || + diacod.equalsIgnoreCase(finalNewText)))); + }) + .toList(); + hiddenMtbColrItemModels.postValue(filtered); return true; } }); } + private void removeListFilter() { + for (DialogChooseArtsFromMtbColrListItemModel itemModel : mtbColrItemModels) { + itemModel.setHidden(false); + } + } + private void setupBarcode() { BarcodeManager.enable(); mBarcodeScannerIstanceID = BarcodeManager.addCallback(new BarcodeCallbackDTO() .setOnScanSuccessful(onScanSuccessfull) - .setOnScanFailed(ex -> UtilityExceptions.defaultException(context, ex, false))); - - + .setOnScanFailed(ex -> UtilityExceptions.defaultException(mContext, ex, false))); } @Override public void onDismiss(@NonNull DialogInterface dialog) { BarcodeManager.removeCallback(mBarcodeScannerIstanceID); - this.mOnAbort.run(); + this.onAbort.run(); super.onDismiss(dialog); } @@ -290,18 +275,14 @@ public class DialogChooseArtsFromMtbColrList extends BaseDialogFragment { if (!UtilityString.isNullOrEmpty(ean128Model.Gtin) || !UtilityString.isNullOrEmpty(ean128Model.Content)) { this.loadArticolo(barcodeProd, ean128Model); } else { - DialogCommon.showNoArtFoundDialog(context, () -> { - onLoadingEnded(); - }); + DialogCommon.showNoArtFoundDialog(mContext, this::onLoadingEnded); } } else { //EAN 128 non completo o comunque mancano i riferimenti al prodotto - DialogCommon.showNoArtFoundDialog(context, () -> { - onLoadingEnded(); - }); + DialogCommon.showNoArtFoundDialog(mContext, this::onLoadingEnded); } }, this::onError); @@ -320,9 +301,7 @@ public class DialogChooseArtsFromMtbColrList extends BaseDialogFragment { } else { - DialogCommon.showNoArtFoundDialog(context, () -> { - onLoadingEnded(); - }); + DialogCommon.showNoArtFoundDialog(mContext, this::onLoadingEnded); } }, this::onError); @@ -332,38 +311,20 @@ public class DialogChooseArtsFromMtbColrList extends BaseDialogFragment { private void searchArtInList(MtbAart mtbAart, Ean128Model ean128Model) { removeListFilter(); - List foundRowsList = Stream.of(mDataset) + List foundRowsList = Stream.of(mtbColrItemModels) .filter(x -> x.getMtbColr().getMtbAart().getCodMart().equalsIgnoreCase(mtbAart.getCodMart()) && !x.isHidden()) .toList(); if (foundRowsList.size() == 0) { - DialogCommon.showNoArtFoundDialog(context, null); + DialogCommon.showNoArtFoundDialog(mContext, null); } else { - for (int i = 0; i < mDataset.size(); i++) { - mDataset.get(i).setHidden(!foundRowsList.contains(mDataset.get(i))); + for (int i = 0; i < mtbColrItemModels.size(); i++) { + mtbColrItemModels.get(i).setHidden(!foundRowsList.contains(mtbColrItemModels.get(i))); } } } - private void removeListFilter() { - for (DialogChooseArtsFromMtbColrListItemModel itemModel : mDataset) { - itemModel.setHidden(false); - } - } - - - private void onPositiveClick() { - if (mOnItemsChoosed != null) { - mOnItemsChoosed.run(currentAdapter.getSelectedItems()); - } - } - - - private void onNegativeClick() { - this.dismiss(); - } - } diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_mtbcolr_list/DialogChooseArtsFromMtbColrListAdapter.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_mtbcolr_list/DialogChooseArtsFromMtbColrListAdapter.java deleted file mode 100644 index 26d43ff2..00000000 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_mtbcolr_list/DialogChooseArtsFromMtbColrListAdapter.java +++ /dev/null @@ -1,131 +0,0 @@ -package it.integry.integrywmsnative.view.dialogs.choose_arts_from_mtbcolr_list; - -import android.content.Context; -import android.view.LayoutInflater; -import android.view.ViewGroup; - -import androidx.databinding.DataBindingUtil; -import androidx.databinding.Observable; -import androidx.recyclerview.widget.RecyclerView; - -import com.annimon.stream.Stream; - -import java.util.HashMap; -import java.util.List; - -import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.model.CheckableMtbColr; -import it.integry.integrywmsnative.core.model.MtbColr; -import it.integry.integrywmsnative.core.settings.SettingsManager; -import it.integry.integrywmsnative.core.utility.UtilityNumber; -import it.integry.integrywmsnative.core.utility.UtilityResources; -import it.integry.integrywmsnative.core.utility.UtilityString; -import it.integry.integrywmsnative.databinding.DialogChooseArtsFromMtbColrListItemModelBinding; - -public class DialogChooseArtsFromMtbColrListAdapter extends RecyclerView.Adapter { - - protected Context mContext; - - private List mDataset; - private HashMap mDatasetPositions = new HashMap<>(); - - - public DialogChooseArtsFromMtbColrListAdapter(Context context, List myDataset) { - mContext = context; - - if(myDataset != null) { - mDataset = Stream.of(myDataset) - .withoutNulls() - .map(CheckableMtbColr::new).toList(); - - for(int i = 0; i < mDataset.size(); i++) { - final CheckableMtbColr itemModel = mDataset.get(i); - - mDatasetPositions.put(itemModel, i); - - itemModel.getHidden().addOnPropertyChangedCallback(new Observable.OnPropertyChangedCallback() { - @Override - public void onPropertyChanged(Observable sender, int propertyId) { - onItemHidden(itemModel); - } - }); - } - } - } - - private void onItemHidden(CheckableMtbColr itemModel) { - if(itemModel.isHidden()) { - mDataset.remove(itemModel); - } else { - mDataset.add(mDatasetPositions.get(itemModel) , itemModel); - } - notifyDataSetChanged(); - } - - - public class ViewHolder extends RecyclerView.ViewHolder { - private DialogChooseArtsFromMtbColrListItemModelBinding mViewDataBinding; - - - public ViewHolder(DialogChooseArtsFromMtbColrListItemModelBinding v) { - super(v.getRoot()); - mViewDataBinding = v; - } - - public void bind(CheckableMtbColr checkableMtbColr) { - mViewDataBinding.setCheckableMtbColr(checkableMtbColr); - - MtbColr mtbColr = checkableMtbColr.getItem().getMtbColr(); - - //Setting qty with unt_mis - if(!SettingsManager.iDB().isFlagForceAllToColli() && (mtbColr.getMtbAart() == null || mtbColr.getMtbAart().isFlagQtaCnfFissaBoolean())){ - String text = UtilityNumber.decimalToString(mtbColr.getQtaCol()); - - - if(mtbColr.getMtbAart() != null) { - text += !UtilityString.isNullOrEmpty(mtbColr.getMtbAart().getUntMis()) ? "\n" + mtbColr.getMtbAart().getUntMis() : ""; - } - - mViewDataBinding.qtaTextview.setText(text); - - - } else { - mViewDataBinding.qtaTextview.setText(UtilityNumber.decimalToString(mtbColr.getNumCnf()) + "\n" + UtilityResources.getString(R.string.unt_mis_col)); - } - - mViewDataBinding.executePendingBindings(); - } - } - - @Override - public DialogChooseArtsFromMtbColrListAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { - // create a new view - DialogChooseArtsFromMtbColrListItemModelBinding viewDataBinding = DataBindingUtil.inflate(LayoutInflater.from(parent.getContext()), R.layout.dialog_choose_arts_from_mtb_colr_list__item_model, parent, false); - - return new ViewHolder(viewDataBinding); - } - - @Override - public void onBindViewHolder(DialogChooseArtsFromMtbColrListAdapter.ViewHolder holder, int position) { - CheckableMtbColr item = mDataset.get(position); - holder.bind(item); - - } - - @Override - public void onViewRecycled(DialogChooseArtsFromMtbColrListAdapter.ViewHolder holder) { - super.onViewRecycled(holder); - } - - @Override - public int getItemCount() { - return mDataset.size(); - } - - public List getSelectedItems() { - return Stream.of(mDataset) - .filter(y -> y.getChecked().get()) - .map(x -> x.getItem().getMtbColr()).toList(); - } - -} diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_mtbcolr_list/DialogChooseArtsFromMtbColrListItemModel.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_mtbcolr_list/DialogChooseArtsFromMtbColrListItemModel.java index 83b1c069..1f957bf9 100644 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_mtbcolr_list/DialogChooseArtsFromMtbColrListItemModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_mtbcolr_list/DialogChooseArtsFromMtbColrListItemModel.java @@ -6,7 +6,8 @@ import it.integry.integrywmsnative.core.model.MtbColr; public class DialogChooseArtsFromMtbColrListItemModel { private MtbColr mtbColr; - private BindableBoolean hidden = new BindableBoolean(false); + private final BindableBoolean checked = new BindableBoolean(false); + private final BindableBoolean hidden = new BindableBoolean(false); public MtbColr getMtbColr() { return mtbColr; @@ -17,6 +18,10 @@ public class DialogChooseArtsFromMtbColrListItemModel { return this; } + public BindableBoolean getChecked() { + return checked; + } + public boolean isHidden() { return hidden.get(); } diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_mtbcolr_list/DialogChooseArtsFromMtbColrListModule.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_mtbcolr_list/DialogChooseArtsFromMtbColrListModule.java index d782fb2f..7ced095b 100644 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_mtbcolr_list/DialogChooseArtsFromMtbColrListModule.java +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_mtbcolr_list/DialogChooseArtsFromMtbColrListModule.java @@ -1,7 +1,12 @@ package it.integry.integrywmsnative.view.dialogs.choose_arts_from_mtbcolr_list; import dagger.Module; +import dagger.Provides; @Module(subcomponents = DialogChooseArtsFromMtbColrListComponent.class) public class DialogChooseArtsFromMtbColrListModule { + @Provides + DialogChooseArtsFromMtbColrListViewModel providesDialogChooseArtsFromMtbColrListViewModel() { + return new DialogChooseArtsFromMtbColrListViewModel(); + } } diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_mtbcolr_list/DialogChooseArtsFromMtbColrListViewModel.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_mtbcolr_list/DialogChooseArtsFromMtbColrListViewModel.java new file mode 100644 index 00000000..19b3097f --- /dev/null +++ b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/choose_arts_from_mtbcolr_list/DialogChooseArtsFromMtbColrListViewModel.java @@ -0,0 +1,4 @@ +package it.integry.integrywmsnative.view.dialogs.choose_arts_from_mtbcolr_list; + +public class DialogChooseArtsFromMtbColrListViewModel { +} diff --git a/app/src/main/res/layout/dialog_choose_arts_from_mtb_aart_list__item_model.xml b/app/src/main/res/layout/dialog_choose_arts_from_mtb_aart_list__item_model.xml index 64ac8fcf..53dac773 100644 --- a/app/src/main/res/layout/dialog_choose_arts_from_mtb_aart_list__item_model.xml +++ b/app/src/main/res/layout/dialog_choose_arts_from_mtb_aart_list__item_model.xml @@ -46,8 +46,7 @@ + android:layout_height="wrap_content"> - + + + + + + + + tools:listitem="@layout/dialog_choose_arts_from_mtb_aart_list__item_model"/> diff --git a/app/src/main/res/layout/dialog_choose_arts_from_mtb_colr_list__item_model.xml b/app/src/main/res/layout/dialog_choose_arts_from_mtb_colr_list__item_model.xml index 7fba3597..ef508280 100644 --- a/app/src/main/res/layout/dialog_choose_arts_from_mtb_colr_list__item_model.xml +++ b/app/src/main/res/layout/dialog_choose_arts_from_mtb_colr_list__item_model.xml @@ -1,143 +1,152 @@ - + + + + + + + name="item" + type="it.integry.integrywmsnative.view.dialogs.choose_arts_from_mtbcolr_list.DialogChooseArtsFromMtbColrListItemModel" /> + android:onClick="@{() -> item.checked.toggle()}" + android:orientation="horizontal" + android:padding="4dp" + app:backgroundTintResID="@{item.checked.get() ? R.color.bg_checked_layout : android.R.color.transparent}"> - - - - - - - - - - - - - - - - - - - - - - - + android:minWidth="0dp" + android:minHeight="0dp" + app:checked="@{item.checked}" /> + + android:layout_width="match_parent" + android:layout_height="wrap_content"> + + tools:text="COD MART" /> + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/dialog_choose_arts_from_mtb_colr_list_layout.xml b/app/src/main/res/layout/dialog_choose_arts_from_mtb_colr_list_layout.xml index 53f350a7..a50ab167 100644 --- a/app/src/main/res/layout/dialog_choose_arts_from_mtb_colr_list_layout.xml +++ b/app/src/main/res/layout/dialog_choose_arts_from_mtb_colr_list_layout.xml @@ -14,158 +14,68 @@ android:layout_height="match_parent" android:layout_gravity="center_horizontal" android:orientation="vertical" - app:cardCornerRadius="12dp" + app:cardCornerRadius="16dp" app:cardElevation="0dp"> - + android:paddingVertical="16dp"> - + android:layout_marginBottom="16dp" + android:gravity="center_horizontal" + android:text="@string/dialog_choose_arts_from_lista_art" /> - + + + + + - - - - - - - + android:text="@string/no_item_to_pick_text" + android:textColor="@color/empty_view_gray" + android:textSize="20sp" /> - + android:nestedScrollingEnabled="false" + app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager" + tools:itemCount="4" + tools:listitem="@layout/dialog_choose_arts_from_mtb_colr_list__item_model" /> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +