Implementato EAN Peso in PickingLibero

This commit is contained in:
Giuseppe Scorrano 2019-06-25 13:42:18 +02:00
parent 80ec84c753
commit cbd0bc9faa
9 changed files with 115 additions and 37 deletions

View File

@ -6,7 +6,7 @@
<option name="DEPLOY_AS_INSTANT" value="false" />
<option name="ARTIFACT_NAME" value="" />
<option name="PM_INSTALL_OPTIONS" value="" />
<option name="DYNAMIC_FEATURES_DISABLED_LIST" value="dynamic__base,dynamic_vgalimenti" />
<option name="DYNAMIC_FEATURES_DISABLED_LIST" value="dynamic__base,dynamic_ime" />
<option name="ACTIVITY_EXTRA_FLAGS" value="" />
<option name="MODE" value="default_activity" />
<option name="CLEAR_LOGCAT" value="true" />

View File

@ -586,6 +586,7 @@ public class AccettazioneOrdineAccettazioneInevasoViewModel implements IOnColloC
@Override
public void onAbort() {
BarcodeManager.enable();
finalProgress.dismiss();
}
}).show();

View File

@ -30,6 +30,7 @@ import it.integry.integrywmsnative.core.REST.consumers.BarcodeRESTConsumer;
import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer;
import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback;
import it.integry.integrywmsnative.core.REST.model.Ean128Model;
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;
@ -51,6 +52,7 @@ import it.integry.integrywmsnative.core.utility.UtilityString;
import it.integry.integrywmsnative.databinding.FragmentPickingLiberoBinding;
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.view.dialogs.DialogConsts;
import it.integry.integrywmsnative.view.dialogs.ask_cliente.DialogAskCliente;
import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageHelper;
@ -248,6 +250,11 @@ public class PickingLiberoViewModel implements IRecyclerItemClicked<MtbColr> {
//Cerco tramite etichetta ean 128 (che può indicarmi una UL)
this.executeEtichettaEan128(data, progressDialog);
} else if(UtilityBarcode.isEanPeso(data)) {
//Cerco tramite etichetta ean 128 (che può indicarmi un articolo o una UL)
this.executeEtichettaEanPeso(data, progressDialog);
} else {
this.loadArticolo(data.getStringValue(), null, progressDialog);
// progressDialog.dismiss();
@ -255,6 +262,18 @@ public class PickingLiberoViewModel implements IRecyclerItemClicked<MtbColr> {
}
}
private void executeEtichettaEanPeso(BarcodeScanDTO barcodeScanDTO, ProgressDialog progressDialog) {
try {
Ean13PesoModel ean13PesoModel = Ean13PesoModel.fromBarcode(barcodeScanDTO.getStringValue());
this.loadArticolo(ean13PesoModel.getPrecode(), ean13PesoModel.toEan128(), progressDialog);
} catch (Exception ex) {
UtilityExceptions.defaultException(mContext, ex, progressDialog);
BarcodeManager.enable();
}
}
private void executeEtichettaLU(String sscc, ProgressDialog progressDialog) {
ColliMagazzinoRESTConsumer.getBySSCC(sscc, true, false, mtbColtScanned -> {

View File

@ -231,7 +231,8 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IS
.setTermCons(ord.getTermCons())
.setDataCons(ord.getDataConsS())
.setRifOrd(ord.getRifOrd())
.setGestione(ord.getGestione());
.setGestione(ord.getGestione())
.setExistCollo(ord.flagExistCollo());
rigaOrdine.clienti = new ArrayList<>();

View File

@ -1,8 +1,13 @@
package it.integry.integrywmsnative.gest.vendita.core;
import android.content.Context;
import androidx.core.content.ContextCompat;
import androidx.core.content.res.ResourcesCompat;
import androidx.core.util.Pools;
import androidx.recyclerview.widget.RecyclerView;
import android.graphics.Color;
import android.text.Html;
import android.view.LayoutInflater;
import android.view.View;
@ -140,6 +145,11 @@ public class MainListVenditaAdapter extends RecyclerView.Adapter<MainListVendita
//mOnGroupSelected.run(mDataset.get(finalPosition));
});
final View existColloView = ordineView.findViewById(R.id.exist_collo);
// existColloView.setAlpha(ordine.isExistCollo() ? 1 : 0);
TextView testataOrdTextView = ordineView.findViewById(R.id.vendita_main_list_group_item_container_testata_ord);
String testataOrdString = String.format(mContext.getString(R.string.ord_ven_testata), String.valueOf(ordine.getNumero()), UtilityDate.formatDate(ordine.getData(), UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN));
testataOrdTextView.setText(Html.fromHtml(testataOrdString));

View File

@ -36,6 +36,7 @@ public class OrdineVenditaGroupedInevasoDTO implements Cloneable, Serializable,
private String rifOrd;
private String gestione;
private int colliRiservati;
private boolean existCollo;
private String codAnagClie;
@ -207,6 +208,15 @@ public class OrdineVenditaGroupedInevasoDTO implements Cloneable, Serializable,
return this;
}
public boolean isExistCollo() {
return existCollo;
}
public Ordine setExistCollo(boolean existCollo) {
this.existCollo = existCollo;
return this;
}
public Ordine(){}
protected Ordine(Parcel in) {
@ -228,6 +238,8 @@ public class OrdineVenditaGroupedInevasoDTO implements Cloneable, Serializable,
gestione = in.readString();
colliRiservati = in.readInt();
codMdep = in.readString();
existCollo = in.readByte() != 0x00;
}
@Override
@ -260,6 +272,7 @@ public class OrdineVenditaGroupedInevasoDTO implements Cloneable, Serializable,
dest.writeString(gestione);
dest.writeInt(colliRiservati);
dest.writeString(codMdep);
dest.writeByte((byte) (existCollo ? 0x01 : 0x00));
}
@SuppressWarnings("unused")
@ -384,5 +397,5 @@ public class OrdineVenditaGroupedInevasoDTO implements Cloneable, Serializable,
return new OrdineVenditaGroupedInevasoDTO[size];
}
};
}

View File

@ -45,6 +45,7 @@ public class OrdineVenditaInevasoDTO implements Parcelable {
private String codVzon;
private String ragSocOrdV;
private int colliRiservati;
private String existCollo;
protected OrdineVenditaInevasoDTO(Parcel in) {
@ -89,6 +90,7 @@ public class OrdineVenditaInevasoDTO implements Parcelable {
codVzon = in.readString();
ragSocOrdV = in.readString();
colliRiservati = in.readInt();
existCollo = in.readString();
}
@Override
@ -137,6 +139,7 @@ public class OrdineVenditaInevasoDTO implements Parcelable {
dest.writeString(codVzon);
dest.writeString(ragSocOrdV);
dest.writeInt(colliRiservati);
dest.writeString(existCollo);
}
@Override
@ -472,4 +475,17 @@ public class OrdineVenditaInevasoDTO implements Parcelable {
this.colliRiservati = colliRiservati;
return this;
}
public boolean flagExistCollo() {
return existCollo != null && existCollo.equalsIgnoreCase("S");
}
public String getExistCollo() {
return existCollo;
}
public OrdineVenditaInevasoDTO setExistCollo(String existCollo) {
this.existCollo = existCollo;
return this;
}
}

View File

@ -48,7 +48,7 @@ public class VenditaOrdineInevasoHelper {
if(mPickingList.get(i).isHidden() == null || forceHiddenCheck) {
PickingObjectDTO tmpItem = mPickingList.get(i);
tmpItem.setDeactivated(tmpItem.getQtaCollo().floatValue() == 0);
tmpItem.setDeactivated(tmpItem.getQtaCollo() == null || tmpItem.getQtaCollo().floatValue() == 0);
tmpItem.setHidden(false);
tmpItem.setTempHidden(false);
}

View File

@ -2,51 +2,69 @@
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="8dp">
android:layout_height="wrap_content">
<CheckBox
android:id="@+id/vendita_main_list_group_item_container_checkBox"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<RelativeLayout
android:layout_width="wrap_content"
android:id="@+id/content"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/vendita_main_list_group_item_container_checkBox"
android:layout_alignParentEnd="true">
android:paddingStart="8dp"
android:paddingTop="8dp"
android:paddingBottom="8dp"
android:paddingEnd="4dp"
android:layout_toStartOf="@id/exist_collo">
<TextView
android:id="@+id/vendita_main_list_group_item_container_testata_data_cons"
<CheckBox
android:id="@+id/vendita_main_list_group_item_container_checkBox"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Cons 07 nov 2018"
android:layout_alignParentEnd="true"
android:textColor="#000" />
android:layout_toEndOf="@id/vendita_main_list_group_item_container_checkBox"
android:layout_alignParentEnd="true">
<TextView
android:id="@+id/vendita_main_list_group_item_container_testata_ord"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Ord. Ven. 39 del 27 ott 2017"
android:ellipsize="end"
android:maxLines="1"
android:textColor="#000"
android:layout_alignParentLeft="true"
android:layout_toLeftOf="@id/vendita_main_list_group_item_container_testata_data_cons"/>
<TextView
android:id="@+id/vendita_main_list_group_item_container_testata_data_cons"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Cons 07 nov 2018"
android:layout_alignParentEnd="true"
android:textColor="#000" />
<TextView
android:id="@+id/vendita_main_list_group_item_container_testata_ord"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Ord. Ven. 39 del 27 ott 2017"
android:ellipsize="end"
android:maxLines="1"
android:textColor="#000"
android:layout_alignParentStart="true"
android:layout_toLeftOf="@id/vendita_main_list_group_item_container_testata_data_cons"/>
<LinearLayout
android:id="@+id/vendita_main_list_group_item_container_clienti_ord"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/vendita_main_list_group_item_container_testata_ord"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:id="@+id/vendita_main_list_group_item_container_clienti_ord"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:layout_alignParentEnd="true"
android:layout_below="@+id/vendita_main_list_group_item_container_testata_ord"
android:orientation="vertical">
</LinearLayout>
</RelativeLayout>
</RelativeLayout>
<View
android:id="@+id/exist_collo"
android:layout_width="6dp"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignBottom="@id/content"
android:background="@color/red_400"/>
</RelativeLayout>