Completato picking libero
This commit is contained in:
parent
bbebf791f0
commit
b931100f94
@ -35,10 +35,18 @@ public class PickingLiberoActivity extends AppCompatActivity {
|
||||
|
||||
setSupportActionBar(this.mBindings.toolbar);
|
||||
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
|
||||
getSupportActionBar().setDisplayShowTitleEnabled(false);
|
||||
|
||||
barcodeScannerIstanceID = BarcodeManager.addCallback(new BarcodeCallbackDTO()
|
||||
.setOnScanSuccessfull(mViewModel.onScanSuccessfull)
|
||||
.setOnScanFailed(ex -> UtilityExceptions.defaultException(this, ex, false)));
|
||||
|
||||
|
||||
mBindings.waterfallToolbar.setNestedScrollView(mBindings.scrollView);
|
||||
}
|
||||
|
||||
public void setTitle(String title) {
|
||||
mBindings.toolbarTitle.setText(title);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@ -0,0 +1,108 @@
|
||||
package it.integry.integrywmsnative.gest.picking_libero.core;
|
||||
|
||||
import android.content.Context;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.ViewGroup;
|
||||
|
||||
import androidx.databinding.DataBindingUtil;
|
||||
import androidx.databinding.ObservableArrayList;
|
||||
import androidx.databinding.ObservableList;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
import it.integry.integrywmsnative.R;
|
||||
import it.integry.integrywmsnative.core.interfaces.IRecyclerItemClicked;
|
||||
import it.integry.integrywmsnative.core.model.MtbColr;
|
||||
import it.integry.integrywmsnative.databinding.ListaPickingLiberoListModelBinding;
|
||||
|
||||
public class PickingLiberoListAdapter extends RecyclerView.Adapter<PickingLiberoListAdapter.ViewHolder>{
|
||||
|
||||
protected Context mContext;
|
||||
protected ObservableArrayList<MtbColr> mDataset;
|
||||
|
||||
private IRecyclerItemClicked<MtbColr> mOnItemClickListener;
|
||||
|
||||
public static class ViewHolder extends RecyclerView.ViewHolder {
|
||||
protected ListaPickingLiberoListModelBinding mViewDataBinding;
|
||||
|
||||
|
||||
public ViewHolder(ListaPickingLiberoListModelBinding v) {
|
||||
super(v.getRoot());
|
||||
mViewDataBinding = v;
|
||||
}
|
||||
|
||||
public void bind(MtbColr mtbColr) {
|
||||
mViewDataBinding.setMtbColr(mtbColr);
|
||||
mViewDataBinding.executePendingBindings();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
public PickingLiberoListAdapter(Context context, ObservableArrayList<MtbColr> myDataset, IRecyclerItemClicked<MtbColr> onItemClickListener) {
|
||||
mContext = context;
|
||||
mDataset = myDataset;
|
||||
mOnItemClickListener = onItemClickListener;
|
||||
|
||||
myDataset.addOnListChangedCallback(onListChangedCallback);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PickingLiberoListAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
|
||||
// create a new view
|
||||
ListaPickingLiberoListModelBinding viewDataBinding = DataBindingUtil.inflate(LayoutInflater.from(parent.getContext()), R.layout.lista_picking_libero_list_model, parent, false);
|
||||
|
||||
return new PickingLiberoListAdapter.ViewHolder(viewDataBinding);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(PickingLiberoListAdapter.ViewHolder holder, int position) {
|
||||
MtbColr item = mDataset.get(position);
|
||||
holder.bind(item);
|
||||
|
||||
holder.mViewDataBinding.getRoot().setOnClickListener(x -> {
|
||||
if(mOnItemClickListener != null) {
|
||||
mOnItemClickListener.onItemClick(item, position);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onViewRecycled(PickingLiberoListAdapter.ViewHolder holder) {
|
||||
super.onViewRecycled(holder);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getItemCount() {
|
||||
return mDataset.size();
|
||||
}
|
||||
|
||||
|
||||
|
||||
private ObservableList.OnListChangedCallback onListChangedCallback = new ObservableList.OnListChangedCallback<ObservableList<MtbColr>>(){
|
||||
|
||||
@Override
|
||||
public void onChanged(ObservableList<MtbColr> sender) {
|
||||
notifyDataSetChanged();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onItemRangeChanged(ObservableList<MtbColr> sender, int positionStart, int itemCount) {
|
||||
notifyDataSetChanged();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onItemRangeInserted(ObservableList<MtbColr> sender, int positionStart, int itemCount) {
|
||||
notifyDataSetChanged();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onItemRangeMoved(ObservableList<MtbColr> sender, int fromPosition, int toPosition, int itemCount) {
|
||||
notifyDataSetChanged();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onItemRangeRemoved(ObservableList<MtbColr> sender, int positionStart, int itemCount) {
|
||||
notifyDataSetChanged();
|
||||
}
|
||||
};
|
||||
|
||||
}
|
||||
@ -12,9 +12,13 @@ import java.util.Date;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
|
||||
import androidx.core.content.ContextCompat;
|
||||
import androidx.databinding.Observable;
|
||||
import androidx.databinding.ObservableArrayList;
|
||||
import androidx.databinding.ObservableField;
|
||||
import androidx.databinding.ObservableList;
|
||||
import androidx.recyclerview.widget.DividerItemDecoration;
|
||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
import it.integry.integrywmsnative.R;
|
||||
import it.integry.integrywmsnative.core.CommonConst;
|
||||
import it.integry.integrywmsnative.core.REST.consumers.ArticoloRESTConsumer;
|
||||
@ -26,6 +30,7 @@ import it.integry.integrywmsnative.core.REST.model.Ean13PesoModel;
|
||||
import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager;
|
||||
import it.integry.integrywmsnative.core.di.BindableBoolean;
|
||||
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||
import it.integry.integrywmsnative.core.interfaces.IRecyclerItemClicked;
|
||||
import it.integry.integrywmsnative.core.model.CommonModelConsts;
|
||||
import it.integry.integrywmsnative.core.model.MtbAart;
|
||||
import it.integry.integrywmsnative.core.model.MtbColr;
|
||||
@ -36,7 +41,9 @@ import it.integry.integrywmsnative.core.utility.UtilityExceptions;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityProgress;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityString;
|
||||
import it.integry.integrywmsnative.databinding.ActivityPickingLiberoBinding;
|
||||
import it.integry.integrywmsnative.gest.picking_libero.PickingLiberoActivity;
|
||||
import it.integry.integrywmsnative.gest.picking_libero.core.PickingLiberoHelper;
|
||||
import it.integry.integrywmsnative.gest.picking_libero.core.PickingLiberoListAdapter;
|
||||
import it.integry.integrywmsnative.gest.vendita.dto.PickingObjectDTO;
|
||||
import it.integry.integrywmsnative.ui.StatusBarAlert;
|
||||
import it.integry.integrywmsnative.view.dialogs.DialogSimpleMessageHelper;
|
||||
@ -45,7 +52,7 @@ import it.integry.integrywmsnative.view.dialogs.input_quantity.DialogInputQuanti
|
||||
import it.integry.integrywmsnative.view.dialogs.input_quantity.QuantityDTO;
|
||||
import it.integry.plugins.barcode_base_library.model.BarcodeScanDTO;
|
||||
|
||||
public class PickingLiberoViewModel {
|
||||
public class PickingLiberoViewModel implements IRecyclerItemClicked<MtbColr> {
|
||||
|
||||
public ObservableField<MtbColt> mtbColt = new ObservableField<>();
|
||||
|
||||
@ -54,16 +61,20 @@ public class PickingLiberoViewModel {
|
||||
public BindableBoolean thereIsAnyRowInUL = new BindableBoolean();
|
||||
public BindableBoolean thereIsAnOpenULWithoutRows = new BindableBoolean();
|
||||
|
||||
private Activity mContext;
|
||||
private PickingLiberoActivity mContext;
|
||||
private ActivityPickingLiberoBinding mBinding;
|
||||
private PickingLiberoHelper mHelper;
|
||||
|
||||
public void init(Activity context, ActivityPickingLiberoBinding binding, PickingLiberoHelper helper) {
|
||||
private PickingLiberoListAdapter mAdapter;
|
||||
|
||||
public void init(PickingLiberoActivity context, ActivityPickingLiberoBinding binding, PickingLiberoHelper helper) {
|
||||
mContext = context;
|
||||
mBinding = binding;
|
||||
mHelper = helper;
|
||||
|
||||
initObservable();
|
||||
|
||||
initRecyclerView();
|
||||
}
|
||||
|
||||
|
||||
@ -79,9 +90,62 @@ public class PickingLiberoViewModel {
|
||||
}
|
||||
|
||||
private void refreshBindables() {
|
||||
if(mtbColt.get() != null) {
|
||||
initAdapter();
|
||||
|
||||
mContext.setTitle(String.format(mContext.getText(R.string.lu_number_text).toString(), mtbColt.get().getNumCollo()));
|
||||
|
||||
initObservableMtbColr();
|
||||
}
|
||||
else {
|
||||
destroyAdapter();
|
||||
|
||||
mContext.setTitle(mContext.getText(R.string.free_picking).toString());
|
||||
}
|
||||
|
||||
thereIsAnOpenedUL.set(mtbColt.get() != null);
|
||||
thereIsntAnOpenedUL.set(!thereIsAnOpenedUL.get());
|
||||
|
||||
|
||||
refreshObservableMtbColr();
|
||||
|
||||
|
||||
}
|
||||
|
||||
private void initObservableMtbColr() {
|
||||
mtbColt.get().getMtbColr().addOnListChangedCallback(new ObservableList.OnListChangedCallback<ObservableList<MtbColr>>() {
|
||||
@Override
|
||||
public void onChanged(ObservableList<MtbColr> sender) {
|
||||
refresh();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onItemRangeChanged(ObservableList<MtbColr> sender, int positionStart, int itemCount) {
|
||||
refresh();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onItemRangeInserted(ObservableList<MtbColr> sender, int positionStart, int itemCount) {
|
||||
refresh();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onItemRangeMoved(ObservableList<MtbColr> sender, int fromPosition, int toPosition, int itemCount) {
|
||||
refresh();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onItemRangeRemoved(ObservableList<MtbColr> sender, int positionStart, int itemCount) {
|
||||
refresh();
|
||||
}
|
||||
|
||||
private void refresh() {
|
||||
refreshObservableMtbColr();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void refreshObservableMtbColr() {
|
||||
thereIsAnyRowInUL.set(mtbColt.get() != null &&
|
||||
mtbColt.get().getMtbColr() != null &&
|
||||
mtbColt.get().getMtbColr().size() > 0);
|
||||
@ -92,6 +156,29 @@ public class PickingLiberoViewModel {
|
||||
}
|
||||
|
||||
|
||||
private void initRecyclerView() {
|
||||
mBinding.pickingLiberoMainList.setNestedScrollingEnabled(false);
|
||||
|
||||
mBinding.pickingLiberoMainList.setHasFixedSize(true);
|
||||
|
||||
mBinding.pickingLiberoMainList.setLayoutManager(new LinearLayoutManager(mContext));
|
||||
|
||||
DividerItemDecoration itemDecorator = new DividerItemDecoration(mContext, DividerItemDecoration.VERTICAL);
|
||||
itemDecorator.setDrawable(ContextCompat.getDrawable(mContext, R.drawable.divider));
|
||||
mBinding.pickingLiberoMainList.addItemDecoration(itemDecorator);
|
||||
}
|
||||
|
||||
private void initAdapter() {
|
||||
mAdapter = new PickingLiberoListAdapter(mContext, mtbColt.get().getMtbColr(), this);
|
||||
mBinding.pickingLiberoMainList.setAdapter(mAdapter);
|
||||
}
|
||||
|
||||
private void destroyAdapter() {
|
||||
mAdapter = null;
|
||||
mBinding.pickingLiberoMainList.setAdapter(null);
|
||||
}
|
||||
|
||||
|
||||
public void onBackPressed() {
|
||||
if(thereIsAnOpenedUL.get()) {
|
||||
this.closeLU();
|
||||
@ -365,6 +452,9 @@ public class PickingLiberoViewModel {
|
||||
|
||||
|
||||
private void setULToCurrentContext(MtbColt mtbColt){
|
||||
if(mtbColt != null && mtbColt.getMtbColr() == null) {
|
||||
mtbColt.setMtbColr(new ObservableArrayList<>());
|
||||
}
|
||||
this.mtbColt.set(mtbColt);
|
||||
}
|
||||
|
||||
@ -413,4 +503,8 @@ public class PickingLiberoViewModel {
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onItemClick(MtbColr item, int position) {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -12,7 +12,6 @@ import java.util.List;
|
||||
|
||||
import it.integry.integrywmsnative.R;
|
||||
import it.integry.integrywmsnative.core.model.MtbColr;
|
||||
import it.integry.integrywmsnative.core.settings.SettingsManager;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityString;
|
||||
import it.integry.integrywmsnative.gest.vendita.dto.PickingObjectDTO;
|
||||
import it.integry.integrywmsnative.gest.vendita_ordine_inevaso.dto.VenditaOrdineInevasoListViewModel;
|
||||
@ -111,7 +110,7 @@ public class VenditaOrdineInevasoHelper {
|
||||
}
|
||||
|
||||
if(currentItem.getNumCollo() != null) {
|
||||
rowModel.setSubDescrizione2(String.format(mContext.getResources().getText(R.string.lu_number_text).toString(), currentItem.getNumCollo(), currentItem.getDataColloHuman()));
|
||||
rowModel.setSubDescrizione2(String.format(mContext.getResources().getText(R.string.lu_number_data_text).toString(), currentItem.getNumCollo(), currentItem.getDataColloHuman()));
|
||||
}
|
||||
|
||||
rowModel.setQtaRiservata(getRigaQuantityEvasa(currentItem, mtbColrs));
|
||||
|
||||
@ -35,128 +35,133 @@
|
||||
android:id="@+id/toolbar"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="?actionBarSize"
|
||||
tools:title="Picking Libero"
|
||||
app:popupTheme="@style/AppTheme.PopupOverlay"/>
|
||||
android:gravity="center_horizontal"
|
||||
app:popupTheme="@style/AppTheme.PopupOverlay">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/toolbar_title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
tools:text="Picking Libero"
|
||||
style="@style/TextAppearance.AppCompat.Widget.ActionBar.Title"
|
||||
android:layout_gravity="center" />
|
||||
|
||||
</androidx.appcompat.widget.Toolbar>
|
||||
|
||||
</it.integry.plugins.waterfalltoolbar.WaterfallToolbar>
|
||||
|
||||
<net.cachapa.expandablelayout.ExpandableLayout
|
||||
|
||||
|
||||
<androidx.core.widget.NestedScrollView
|
||||
android:id="@+id/scroll_view"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:padding="8dp"
|
||||
app:el_expanded_bind="@{viewmodel.thereIsAnOpenedUL}">
|
||||
android:layout_height="match_parent"
|
||||
app:layout_behavior="@string/appbar_scrolling_view_behavior">
|
||||
|
||||
|
||||
<LinearLayout
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal">
|
||||
android:orientation="vertical"
|
||||
android:paddingTop="8dp"
|
||||
android:focusableInTouchMode="true"
|
||||
tools:context=".gest.contenuto_bancale.ContenutoBancaleActivity">
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
|
||||
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/picking_libero_main_list"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingStart="12dp"
|
||||
android:paddingEnd="12dp"
|
||||
android:paddingTop="8dp"
|
||||
android:paddingBottom="8dp"
|
||||
android:textSize="16sp"
|
||||
android:textColor="@android:color/white"
|
||||
android:textStyle="bold"
|
||||
android:background="@drawable/badge1_round_corner"
|
||||
android:text="@{viewmodel.mtbColt.get().numCollo.toString()}"
|
||||
tools:text="2156"/>
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="12dp"
|
||||
android:textSize="16sp"
|
||||
android:textColor="@android:color/black"
|
||||
android:textStyle="bold"
|
||||
android:visibility="@{!UtilityString.isNullOrEmpty(viewmodel.mtbColt.get().posizione) ? View.VISIBLE : View.GONE}"
|
||||
android:text="@{viewmodel.mtbColt.get().posizione}"
|
||||
tools:text="ME1FS032"/>
|
||||
|
||||
android:layout_marginTop="16dp"
|
||||
android:layout_marginBottom="92dp"
|
||||
android:paddingStart="2dp"
|
||||
android:paddingEnd="2dp">
|
||||
|
||||
</androidx.recyclerview.widget.RecyclerView>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</net.cachapa.expandablelayout.ExpandableLayout>
|
||||
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
|
||||
<androidx.constraintlayout.widget.Guideline
|
||||
android:id="@+id/free_picking__suggestion_1__guideline_top"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="0dp"
|
||||
android:orientation="horizontal"
|
||||
app:layout_constraintGuide_percent="0.35"/>
|
||||
|
||||
<androidx.constraintlayout.widget.Guideline
|
||||
android:id="@+id/free_picking__suggestion_1__guideline_left"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="0dp"
|
||||
android:orientation="vertical"
|
||||
app:layout_constraintGuide_percent="0.2" />
|
||||
|
||||
<androidx.constraintlayout.widget.Guideline
|
||||
android:id="@+id/free_picking__suggestion_1__guideline_right"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="0dp"
|
||||
android:orientation="vertical"
|
||||
app:layout_constraintGuide_percent="0.8" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
android:alpha="0.4"
|
||||
app:visibility="@{viewmodel.thereIsntAnOpenedUL}"
|
||||
app:layout_constraintTop_toBottomOf="@id/free_picking__suggestion_1__guideline_top"
|
||||
app:layout_constraintLeft_toRightOf="@id/free_picking__suggestion_1__guideline_left"
|
||||
app:layout_constraintRight_toLeftOf="@id/free_picking__suggestion_1__guideline_right">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textColor="@android:color/black"
|
||||
android:textSize="18sp"
|
||||
android:gravity="center_horizontal"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:text="@string/free_picking_suggestion_1"/>
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
android:alpha="0.4"
|
||||
app:visibility="@{viewmodel.thereIsAnOpenULWithoutRows}"
|
||||
app:layout_constraintTop_toBottomOf="@id/free_picking__suggestion_1__guideline_top"
|
||||
app:layout_constraintLeft_toRightOf="@id/free_picking__suggestion_1__guideline_left"
|
||||
app:layout_constraintRight_toLeftOf="@id/free_picking__suggestion_1__guideline_right">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textColor="@android:color/black"
|
||||
android:textSize="18sp"
|
||||
android:gravity="center_horizontal"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:text="@string/free_picking_suggestion_2"/>
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
</androidx.core.widget.NestedScrollView>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
|
||||
<androidx.constraintlayout.widget.Guideline
|
||||
android:id="@+id/free_picking__suggestion_1__guideline_top"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="0dp"
|
||||
android:orientation="horizontal"
|
||||
app:layout_constraintGuide_percent="0.35"/>
|
||||
|
||||
<androidx.constraintlayout.widget.Guideline
|
||||
android:id="@+id/free_picking__suggestion_1__guideline_left"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="0dp"
|
||||
android:orientation="vertical"
|
||||
app:layout_constraintGuide_percent="0.2" />
|
||||
|
||||
<androidx.constraintlayout.widget.Guideline
|
||||
android:id="@+id/free_picking__suggestion_1__guideline_right"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="0dp"
|
||||
android:orientation="vertical"
|
||||
app:layout_constraintGuide_percent="0.8" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
android:alpha="0.4"
|
||||
app:visibility="@{viewmodel.thereIsntAnOpenedUL}"
|
||||
app:layout_constraintTop_toBottomOf="@id/free_picking__suggestion_1__guideline_top"
|
||||
app:layout_constraintLeft_toRightOf="@id/free_picking__suggestion_1__guideline_left"
|
||||
app:layout_constraintRight_toLeftOf="@id/free_picking__suggestion_1__guideline_right">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textColor="@android:color/black"
|
||||
android:textSize="18sp"
|
||||
android:gravity="center_horizontal"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:text="@string/free_picking_suggestion_1"/>
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
android:alpha="0.4"
|
||||
app:visibility="@{viewmodel.thereIsAnOpenULWithoutRows}"
|
||||
app:layout_constraintTop_toBottomOf="@id/free_picking__suggestion_1__guideline_top"
|
||||
app:layout_constraintLeft_toRightOf="@id/free_picking__suggestion_1__guideline_left"
|
||||
app:layout_constraintRight_toLeftOf="@id/free_picking__suggestion_1__guideline_right">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textColor="@android:color/black"
|
||||
android:textSize="18sp"
|
||||
android:gravity="center_horizontal"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:text="@string/free_picking_suggestion_2"/>
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
|
||||
|
||||
|
||||
<com.github.clans.fab.FloatingActionButton
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
|
||||
94
app/src/main/res/layout/lista_picking_libero_list_model.xml
Normal file
94
app/src/main/res/layout/lista_picking_libero_list_model.xml
Normal file
@ -0,0 +1,94 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<layout xmlns:tools="http://schemas.android.com/tools"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
|
||||
<data>
|
||||
<import type="android.view.View" />
|
||||
<import type="it.integry.integrywmsnative.core.utility.UtilityString" />
|
||||
<import type="it.integry.integrywmsnative.core.utility.UtilityNumber" />
|
||||
<variable
|
||||
name="mtbColr"
|
||||
type="it.integry.integrywmsnative.core.model.MtbColr" />
|
||||
</data>
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:padding="8dp">
|
||||
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/linearLayout"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
app:layout_constraintEnd_toStartOf="@+id/qta_box"
|
||||
app:layout_constraintStart_toStartOf="parent">
|
||||
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@{mtbColr.codMart}"
|
||||
android:textColor="@color/colorPrimary"
|
||||
android:textSize="14sp"
|
||||
android:textStyle="bold"
|
||||
tools:text="COD MART" />
|
||||
|
||||
|
||||
<TextView
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_toLeftOf="@id/posizione_collo"
|
||||
android:ellipsize="end"
|
||||
android:maxLines="1"
|
||||
android:text="@{mtbColr.getDescrizione()}"
|
||||
android:textColor="@android:color/black"
|
||||
android:textSize="16sp"
|
||||
tools:text="Descrizione lunga articolo" />
|
||||
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@{`Lotto: ` + mtbColr.getPartitaMag()}"
|
||||
android:textSize="14sp"
|
||||
android:visibility="@{UtilityString.isNullOrEmpty(mtbColr.getPartitaMag()) ? View.INVISIBLE : View.VISIBLE}"
|
||||
tools:text="Lotto: ABCDE" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
<RelativeLayout
|
||||
android:id="@+id/qta_box"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingStart="12dp"
|
||||
android:paddingEnd="12dp"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintBottom_toBottomOf="parent">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/badge1_round_corner"
|
||||
android:gravity="center"
|
||||
android:paddingLeft="6dp"
|
||||
android:paddingTop="2dp"
|
||||
android:paddingRight="6dp"
|
||||
android:paddingBottom="2dp"
|
||||
android:text="@{UtilityNumber.decimalToString(mtbColr.getQtaCol()) + (mtbColr.mtbAart != null && !UtilityString.isNullOrEmpty(mtbColr.mtbAart.untMis) ? `\n` + mtbColr.mtbAart.untMis : ``)}"
|
||||
android:textSize="16sp"
|
||||
android:textColor="@android:color/white"
|
||||
android:textStyle="bold"
|
||||
tools:text="280.45\nCONF" />
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
|
||||
</layout>
|
||||
@ -122,7 +122,8 @@
|
||||
<string name="activity_contenuto_bancale_title">Contenuto UL</string>
|
||||
<string name="activity_vendita_inevaso_title">Spedizione merce</string>
|
||||
|
||||
<string name="lu_number_text"><![CDATA[UL n° <b>%d</b> - <b>%s</b>]]></string>
|
||||
<string name="lu_number_data_text"><![CDATA[UL n° <b>%d</b> - <b>%s</b>]]></string>
|
||||
<string name="lu_number_text"><![CDATA[UL n° %d]]></string>
|
||||
|
||||
<string name="button_ignore_print">Salta stampa</string>
|
||||
|
||||
|
||||
@ -132,7 +132,8 @@
|
||||
<string name="activity_contenuto_bancale_title">LU Content</string>
|
||||
<string name="activity_vendita_inevaso_title">Shipping goods</string>
|
||||
|
||||
<string name="lu_number_text"><![CDATA[LU n° <b>%d</b> - <b>%s</b>]]></string>
|
||||
<string name="lu_number_data_text"><![CDATA[LU n° <b>%d</b> - <b>%s</b>]]></string>
|
||||
<string name="lu_number_text"><![CDATA[LU n° %d]]></string>
|
||||
|
||||
<string name="button_ignore_print">Skip print</string>
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user