diff --git a/.idea/caches/build_file_checksums.ser b/.idea/caches/build_file_checksums.ser
index fb8a2c56..4c745cc9 100644
Binary files a/.idea/caches/build_file_checksums.ser and b/.idea/caches/build_file_checksums.ser differ
diff --git a/.idea/runConfigurations/app.xml b/.idea/runConfigurations/app.xml
index 91af906d..52f57fad 100644
--- a/.idea/runConfigurations/app.xml
+++ b/.idea/runConfigurations/app.xml
@@ -6,7 +6,7 @@
-
+
@@ -43,7 +43,7 @@
-
+
diff --git a/app/src/main/java/it/integry/integrywmsnative/MainActivity.java b/app/src/main/java/it/integry/integrywmsnative/MainActivity.java
index 01e44f3c..7bcacf66 100644
--- a/app/src/main/java/it/integry/integrywmsnative/MainActivity.java
+++ b/app/src/main/java/it/integry/integrywmsnative/MainActivity.java
@@ -157,10 +157,10 @@ public class MainActivity extends AppCompatActivity
fragment = PickingLiberoFragment.newInstance();
this.adaptViewToFragment(fragment);
}
-// else if (id == R.id.nav_resi_cliente) {
-// fragment = UltimeConsegneClienteFragment.newInstance();
-// this.adaptViewToFragment(fragment);
-// }
+ else if (id == R.id.nav_resi_cliente) {
+ fragment = UltimeConsegneClienteFragment.newInstance();
+ this.adaptViewToFragment(fragment);
+ }
else if (id == R.id.nav_prod_versamento_materiale) {
fragment = ProdVersamentoMaterialeFragment.newInstance();
this.adaptViewToFragment(fragment);
diff --git a/app/src/main/java/it/integry/integrywmsnative/core/class_router/interfaces/IOrdiniVendita.java b/app/src/main/java/it/integry/integrywmsnative/core/class_router/interfaces/IOrdiniVendita.java
index ceac5f87..fdfb1a2f 100644
--- a/app/src/main/java/it/integry/integrywmsnative/core/class_router/interfaces/IOrdiniVendita.java
+++ b/app/src/main/java/it/integry/integrywmsnative/core/class_router/interfaces/IOrdiniVendita.java
@@ -6,10 +6,10 @@ import java.util.List;
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.core.model.MtbColt;
-import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaGroupedInevasoDTO;
+import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaInevasoDTO;
public interface IOrdiniVendita {
- void distribuisciCollo(ProgressDialog progress, MtbColt mtbColt, List testateOrdini, RunnableArgs> onComplete, RunnableArgs onFailed);
+ void distribuisciCollo(ProgressDialog progress, MtbColt mtbColt, List testateOrdini, RunnableArgs> onComplete, RunnableArgs onFailed);
}
diff --git a/app/src/main/java/it/integry/integrywmsnative/core/model/FiltroOrdineDTO.java b/app/src/main/java/it/integry/integrywmsnative/core/model/FiltroOrdineDTO.java
index 0e9e5ea1..1a600530 100644
--- a/app/src/main/java/it/integry/integrywmsnative/core/model/FiltroOrdineDTO.java
+++ b/app/src/main/java/it/integry/integrywmsnative/core/model/FiltroOrdineDTO.java
@@ -47,4 +47,24 @@ public class FiltroOrdineDTO {
this.numOrd = numOrd;
return this;
}
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+
+ FiltroOrdineDTO that = (FiltroOrdineDTO) o;
+
+ if (getNumOrd() != that.getNumOrd()) return false;
+ if (!getGestioneOrd().equals(that.getGestioneOrd())) return false;
+ return dataOrd.equals(that.dataOrd);
+ }
+
+ @Override
+ public int hashCode() {
+ int result = getGestioneOrd().hashCode();
+ result = 31 * result + dataOrd.hashCode();
+ result = 31 * result + getNumOrd();
+ return result;
+ }
}
diff --git a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityLogger.java b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityLogger.java
index 04517ac1..6c379f4d 100644
--- a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityLogger.java
+++ b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityLogger.java
@@ -4,6 +4,7 @@ import com.orhanobut.logger.Logger;
import java.io.PrintWriter;
import java.io.StringWriter;
+import java.net.SocketTimeoutException;
import java.text.SimpleDateFormat;
import java.util.Date;
@@ -39,23 +40,26 @@ public class UtilityLogger {
}
public static void errorMe(Exception ex, String additionalText, Runnable onComplete, RunnableArgs onFailed) {
- String message = UtilityResources.readRawTextFile(R.raw.error_mail);
+ if(!(ex instanceof SocketTimeoutException)) {
- message = message.replace("#exception_name#", ex.getMessage());
+ String message = UtilityResources.readRawTextFile(R.raw.error_mail);
- StringWriter sw = new StringWriter();
- ex.printStackTrace(new PrintWriter(sw));
+ message = message.replace("#exception_name#", ex.getMessage());
- if(additionalText != null) sw.append("\n").append(additionalText);
- message = message.replace("#stacktrace#", sw.toString());
+ StringWriter sw = new StringWriter();
+ ex.printStackTrace(new PrintWriter(sw));
- String currentAzienda = UtilityString.isNullOrEmpty(SettingsManager.i().userSession.profileDB) ? "" : SettingsManager.i().userSession.profileDB;
- message = message.replace("#azienda_nome#", currentAzienda);
+ if (additionalText != null) sw.append("\n").append(additionalText);
+ message = message.replace("#stacktrace#", sw.toString());
- SimpleDateFormat sdf = new SimpleDateFormat("dd MMM yyyy HH:mm:ss");
- message = message.replace("#current_date#", sdf.format(new Date()));
+ String currentAzienda = UtilityString.isNullOrEmpty(SettingsManager.i().userSession.profileDB) ? "" : SettingsManager.i().userSession.profileDB;
+ message = message.replace("#azienda_nome#", currentAzienda);
- SystemRESTConsumer.sendErrorLogMail(message, onComplete, onFailed);
+ SimpleDateFormat sdf = new SimpleDateFormat("dd MMM yyyy HH:mm:ss");
+ message = message.replace("#current_date#", sdf.format(new Date()));
+
+ SystemRESTConsumer.sendErrorLogMail(message, onComplete, onFailed);
+ }
}
}
diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/main/MainFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/main/MainFragment.java
index 9d21b9d4..de79415a 100644
--- a/app/src/main/java/it/integry/integrywmsnative/gest/main/MainFragment.java
+++ b/app/src/main/java/it/integry/integrywmsnative/gest/main/MainFragment.java
@@ -217,10 +217,10 @@ public class MainFragment extends Fragment implements ITitledFragment, IScrollab
((MainActivity) getActivity()).setItem(R.id.nav_free_picking);
}
-// @OnClick(R.id.fast_button_resi_clienti)
-// public void onClickResiClientio(View view) {
-// ((MainActivity) getActivity()).setItem(R.id.nav_resi_cliente);
-// }
+ @OnClick(R.id.fast_button_resi_clienti)
+ public void onClickResiClientio(View view) {
+ ((MainActivity) getActivity()).setItem(R.id.nav_resi_cliente);
+ }
diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/MainVenditaFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/MainVenditaFragment.java
index 69d09f42..520781e2 100644
--- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/MainVenditaFragment.java
+++ b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/MainVenditaFragment.java
@@ -21,7 +21,6 @@ import android.view.ViewGroup;
import com.annimon.stream.Stream;
import java.util.ArrayList;
-import java.util.Date;
import java.util.List;
import butterknife.ButterKnife;
@@ -42,11 +41,10 @@ import it.integry.integrywmsnative.core.utility.UtilityExceptions;
import it.integry.integrywmsnative.core.utility.UtilityToast;
import it.integry.integrywmsnative.databinding.FragmentMainVenditaBinding;
import it.integry.integrywmsnative.core.interfaces.ITitledFragment;
-import it.integry.integrywmsnative.gest.vendita.core.MainListVenditaAdapter;
+import it.integry.integrywmsnative.gest.vendita.core.MainListVenditaAdapterNew;
import it.integry.integrywmsnative.gest.vendita.core.VenditaHelper;
import it.integry.integrywmsnative.gest.vendita.dialogs.DialogVenditaFiltroAvanzato;
import it.integry.integrywmsnative.gest.vendita.dialogs.DialogVenditaFiltroAvanzatoViewModel;
-import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaGroupedInevasoDTO;
import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaInevasoDTO;
import it.integry.integrywmsnative.gest.vendita.dto.PickingObjectDTO;
import it.integry.integrywmsnative.gest.vendita.viewmodel.VenditaViewModel;
@@ -63,10 +61,10 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IS
private FragmentMainVenditaBinding mBinding = null;
private VenditaViewModel mViewModel;
- private MainListVenditaAdapter mAdapter;
+ private MainListVenditaAdapterNew mAdapter;
private List mOriginalOrderList;
- private List groupedOrdiniInevasi;
+ private List mRenderedOrderList = new ArrayList<>();
private DialogVenditaFiltroAvanzatoViewModel mAppliedFilterViewModel;
@@ -121,7 +119,6 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IS
ButterKnife.bind(this, mBinding.getRoot());
-// if(mWaterfallToolbar != null) mWaterfallToolbar.setRecyclerView(mBinding.venditaMainList);
if(mToolbar != null) mToolbar.setRecyclerView(mBinding.venditaMainList);
return mBinding.getRoot();
@@ -166,7 +163,7 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IS
mBinding.ordiniVenditaEmptyView.setVisibility(ordini != null && ordini.size() > 0 ? View.GONE : View.VISIBLE);
- groupOrdini(ordini);
+ refreshOrdini(ordini);
initRecyclerView();
progress.dismiss();
}
@@ -188,112 +185,124 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IS
}
- public void groupOrdini(List ordini){
+ public void refreshOrdini(List ordini){
- groupedOrdiniInevasi = new ArrayList<>();
-
- //Splitto gli ordini per codAnagOrd (Cliente)
- Stream.of(ordini)
- .distinctBy(OrdineVenditaInevasoDTO::getCodAnagOrd)
- .sortBy(OrdineVenditaInevasoDTO::getRagSocOrd)
- .map(x -> x.getCodAnagOrd() + "#_#" + x.getRagSocOrd())
- .forEach(anagOrd -> {
-
- String codAnagOrd = anagOrd.substring(0, anagOrd.indexOf("#_#"));
- String ragSocOrd = anagOrd.substring(anagOrd.indexOf("#_#") + 3);
-
- OrdineVenditaGroupedInevasoDTO groupedOrdine = new OrdineVenditaGroupedInevasoDTO();
-
- groupedOrdine.codAnagClie = codAnagOrd;
- groupedOrdine.nomeCliente = ragSocOrd;
- groupedOrdine.ordini = new ArrayList<>();
+ mRenderedOrderList.clear();
+ mRenderedOrderList.addAll(ordini);
- //Raggruppo gli ordini del singolo fornitore suddivisi per data, dataCons e numero
- Stream.of(ordini)
- .filter(x -> x.getCodAnagOrd().equalsIgnoreCase(codAnagOrd))
- .distinctBy(x -> x.getDataOrdS() + " - " + x.getDataConsS() + " - " + x.getNumOrd())
- .sortBy(x -> x.getDataConsD() != null ? x.getDataConsD() : new Date(2000, 01, 01))
- .forEach(ord -> {
-
-
- OrdineVenditaGroupedInevasoDTO.Ordine rigaOrdine = new OrdineVenditaGroupedInevasoDTO.Ordine();
-
- rigaOrdine
- .setData(ord.getDataOrdS())
- .setNumero(ord.getNumOrd())
- .setCodMdep(ord.getCodMdep())
- .setCodAnagOrd(ord.getCodAnagOrd())
- .setCodAnagClie(groupedOrdine.codAnagClie)
- .setRagSocOrd(ord.getRagSocOrd())
- .setPesoTotale(ord.getPesoTotale() != null ? ord.getPesoTotale().floatValue() : null)
- .setBarcode(ord.getBarcode())
- .setTermCons(ord.getTermCons())
- .setDataCons(ord.getDataConsS())
- .setRifOrd(ord.getRifOrd())
- .setGestione(ord.getGestione())
- .setExistCollo(ord.flagExistCollo());
-
- rigaOrdine.clienti = new ArrayList<>();
-
-
- //Leggo tutti i clienti dell'ordine corrente
- Stream.of(ordini)
- .filter(x -> x.getCodAnagOrd().equalsIgnoreCase(codAnagOrd) &&
- x.getNumOrd().equals(ord.getNumOrd()) &&
- x.getDataOrdS().equalsIgnoreCase(ord.getDataOrdS()) &&
- x.getDataConsS().equalsIgnoreCase(ord.getDataConsS()))
- .distinctBy(OrdineVenditaInevasoDTO::getCodJcom)
- .forEach(ordCliente -> {
-
- OrdineVenditaGroupedInevasoDTO.Cliente cliente = new OrdineVenditaGroupedInevasoDTO.Cliente();
-
- cliente.codJcom = ordCliente.getCodJcom();
- cliente.ragSocCom = ordCliente.getRagSocCom();
- cliente.descrCom = ordCliente.getDescrizioneCom();
- cliente.dataCons = ordCliente.getDataConsS();
- cliente.numCnf = ordCliente.getNumCnfdaEvadere() != null ? ordCliente.getNumCnfdaEvadere().floatValue() : 0;
- cliente.rifOrd = ordCliente.getRifOrd();
-
- rigaOrdine.clienti.add(cliente);
-
- });
-
- groupedOrdine.ordini.add(rigaOrdine);
-
-
- });
-
- groupedOrdiniInevasi.add(groupedOrdine);
-
- });
+//
+// //Splitto gli ordini per codAnagOrd (Cliente)
+// Stream.of(ordini)
+// .distinctBy(OrdineVenditaInevasoDTO::getCodAnagOrd)
+// .sortBy(OrdineVenditaInevasoDTO::getRagSocOrd)
+// .map(x -> x.getCodAnagOrd() + "#_#" + x.getRagSocOrd())
+// .forEach(anagOrd -> {
+//
+// String codAnagOrd = anagOrd.substring(0, anagOrd.indexOf("#_#"));
+// String ragSocOrd = anagOrd.substring(anagOrd.indexOf("#_#") + 3);
+//
+// OrdineVenditaGroupedInevasoDTO groupedOrdine = new OrdineVenditaGroupedInevasoDTO();
+//
+// groupedOrdine.codAnagClie = codAnagOrd;
+// groupedOrdine.nomeCliente = ragSocOrd;
+// groupedOrdine.ordini = new ArrayList<>();
+//
+//
+// //Raggruppo gli ordini del singolo fornitore suddivisi per data, dataCons e numero
+// Stream.of(ordini)
+// .filter(x -> x.getCodAnagOrd().equalsIgnoreCase(codAnagOrd))
+// .distinctBy(x -> x.getDataOrdS() + " - " + x.getDataConsS() + " - " + x.getNumOrd())
+// .sortBy(x -> x.getDataConsD() != null ? x.getDataConsD() : new Date(2000, 01, 01))
+// .forEach(ord -> {
+//
+//
+// OrdineVenditaGroupedInevasoDTO.Ordine rigaOrdine = new OrdineVenditaGroupedInevasoDTO.Ordine();
+//
+// rigaOrdine
+// .setData(ord.getDataOrdS())
+// .setNumero(ord.getNumOrd())
+// .setCodMdep(ord.getCodMdep())
+// .setCodAnagOrd(ord.getCodAnagOrd())
+// .setCodAnagClie(groupedOrdine.codAnagClie)
+// .setRagSocOrd(ord.getRagSocOrd())
+// .setPesoTotale(ord.getPesoTotale() != null ? ord.getPesoTotale().floatValue() : null)
+// .setBarcode(ord.getBarcode())
+// .setTermCons(ord.getTermCons())
+// .setDataCons(ord.getDataConsS())
+// .setRifOrd(ord.getRifOrd())
+// .setGestione(ord.getGestione())
+// .setExistCollo(ord.flagExistCollo());
+//
+// rigaOrdine.clienti = new ArrayList<>();
+//
+//
+// //Leggo tutti i clienti dell'ordine corrente
+// Stream.of(ordini)
+// .filter(x -> x.getCodAnagOrd().equalsIgnoreCase(codAnagOrd) &&
+// x.getNumOrd().equals(ord.getNumOrd()) &&
+// x.getDataOrdS().equalsIgnoreCase(ord.getDataOrdS()) &&
+// x.getDataConsS().equalsIgnoreCase(ord.getDataConsS()))
+// .distinctBy(OrdineVenditaInevasoDTO::getCodJcom)
+// .forEach(ordCliente -> {
+//
+// OrdineVenditaGroupedInevasoDTO.Cliente cliente = new OrdineVenditaGroupedInevasoDTO.Cliente();
+//
+// cliente.codJcom = ordCliente.getCodJcom();
+// cliente.ragSocCom = ordCliente.getRagSocCom();
+// cliente.descrCom = ordCliente.getDescrizioneCom();
+// cliente.dataCons = ordCliente.getDataConsS();
+// cliente.numCnf = ordCliente.getNumCnfdaEvadere() != null ? ordCliente.getNumCnfdaEvadere().floatValue() : 0;
+// cliente.rifOrd = ordCliente.getRifOrd();
+//
+// rigaOrdine.clienti.add(cliente);
+//
+// });
+//
+// groupedOrdine.ordini.add(rigaOrdine);
+//
+//
+// });
+//
+// mRenderedOrderList.add(groupedOrdine);
+//
+// });
}
private void initRecyclerView() {
- mAdapter = new MainListVenditaAdapter(getActivity(), groupedOrdiniInevasi, onGroupSelectionChanged, onSingleSelectionChanged);
+// mAdapter = new MainListVenditaAdapter(getActivity(), mRenderedOrderList, onGroupSelectionChanged, onSingleSelectionChanged);
+ mAdapter = new MainListVenditaAdapterNew(getActivity(), mRenderedOrderList, onSingleSelectionChanged);
mBinding.venditaMainList.setAdapter(mAdapter);
}
public void refreshRecyclerView() {
- mAdapter.updateItems(groupedOrdiniInevasi);
+ mAdapter.updateItems(mRenderedOrderList);
}
- private RunnableArgs onSingleSelectionChanged = dto -> {
- List selectedOrders = mHelper.getSelectedOrders(groupedOrdiniInevasi);
+ private RunnableArgs onSingleSelectionChanged = dto -> {
+ List selectedOrders = mHelper.getSelectedOrders(mOriginalOrderList);
if(!SettingsManager.iDB().isFlagMultiClienteOrdV()){
+ boolean allMatch = Stream.of(selectedOrders).allMatch(x -> dto.getCodAnagOrd().equalsIgnoreCase(x.getCodAnagOrd()));
- if(selectedOrders != null && selectedOrders.size() > 1){
- for (OrdineVenditaGroupedInevasoDTO selectedOrder : selectedOrders) {
- if(!dto.getCodAnagClie().equalsIgnoreCase(selectedOrder.codAnagClie)) {
- Stream.of(selectedOrder.ordini).forEach(x -> x.setCheckbox(false));
- }
- }
+ if(!allMatch) {
+ Stream.of(selectedOrders)
+ .filter(x -> !x.getCodAnagOrd().equalsIgnoreCase(x.getCodAnagOrd()))
+ .forEach(x -> x.setSelected(false));
}
- }
+//
+// if(selectedOrders != null && selectedOrders.size() > 1){
+// for (OrdineVenditaInevasoDTO selectedOrder : selectedOrders) {
+// if(!dto.getCodAnagOrd().equalsIgnoreCase(selectedOrder.getCodAnagOrd())) {
+// Stream.of(selectedOrder.ordini).forEach(x -> x.setCheckbox(false));
+// }
+// }
+// }
+ }
+//
if(selectedOrders != null && selectedOrders.size() > 0) {
mBinding.venditaMainFab.show();
}
@@ -302,40 +311,20 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IS
}
};
- private RunnableArgs onGroupSelectionChanged = dto -> {
- List selectedOrders = mHelper.getSelectedOrders(groupedOrdiniInevasi);
-
- if(!SettingsManager.iDB().isFlagMultiClienteOrdV()){
-
- if(selectedOrders != null && selectedOrders.size() > 1){
- for (OrdineVenditaGroupedInevasoDTO selectedOrder : selectedOrders) {
- if(!dto.codAnagClie.equalsIgnoreCase(selectedOrder.codAnagClie)) {
- Stream.of(selectedOrder.ordini).forEach(x -> x.setCheckbox(false));
- }
- }
- }
- }
-
- if(selectedOrders != null && selectedOrders.size() > 0) mBinding.venditaMainFab.show();
- else mBinding.venditaMainFab.hide();
- };
-
@OnClick(R.id.vendita_main_fab)
public void onClick(View view) {
- List selectedOrders = mHelper.getSelectedOrders(groupedOrdiniInevasi);
+ List selectedOrders = mHelper.getSelectedOrders(mOriginalOrderList);
List barcodes = new ArrayList<>();
String dataCons = null;
- for(OrdineVenditaGroupedInevasoDTO ordine : selectedOrders){
- for(OrdineVenditaGroupedInevasoDTO.Ordine righeOrd : ordine.ordini){
- if(!barcodes.contains(righeOrd.getBarcode())) barcodes.add(righeOrd.getBarcode());
+ for(OrdineVenditaInevasoDTO ordine : selectedOrders){
+ if(!barcodes.contains(ordine.getBarcode())) barcodes.add(ordine.getBarcode());
- if(dataCons == null) dataCons = righeOrd.getDataConsS();
- else if(!dataCons.equalsIgnoreCase(righeOrd.getDataConsS())) dataCons = "";
- }
+ if(dataCons == null) dataCons = ordine.getDataConsS();
+ else if(!dataCons.equalsIgnoreCase(ordine.getDataConsS())) dataCons = "";
}
final ProgressDialog progress = ProgressDialog.show(getActivity(), getText(R.string.waiting),
@@ -407,12 +396,12 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IS
@Override
public void onSelectAll() {
- if(groupedOrdiniInevasi != null && groupedOrdiniInevasi.size() > 0) {
- if(mHelper.getSelectedOrders(groupedOrdiniInevasi).size() > 0){
- mHelper.deselectAll(groupedOrdiniInevasi);
+ if(mRenderedOrderList != null && mRenderedOrderList.size() > 0) {
+ if(mHelper.getSelectedOrders(mRenderedOrderList).size() > 0){
+ mHelper.deselectAll(mRenderedOrderList);
} else {
//Selezionare solo quelli attualmente a video
- mHelper.selectAll(groupedOrdiniInevasi);
+ mHelper.selectAll(mRenderedOrderList);
}
}
@@ -426,22 +415,19 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IS
if(filteredOrderList != null){
- groupOrdini(filteredOrderList);
+ refreshOrdini(filteredOrderList);
refreshRecyclerView();
}
}).show();
}
- private void checkSelectedOrders(List selectedOrders, Runnable onComplete, Runnable onFailed) {
+ private void checkSelectedOrders(List selectedOrders, Runnable onComplete, Runnable onFailed) {
if(selectedOrders != null && selectedOrders.size() > 0) {
- List flatOrderArray = new ArrayList<>();
-
- Stream.of(selectedOrders).forEach(x -> flatOrderArray.addAll(x.ordini));
//Definizione della gestione collo di default
- List foundGestioni = Stream.of(flatOrderArray)
- .map(OrdineVenditaGroupedInevasoDTO.Ordine::getGestioneEnum)
+ List foundGestioni = Stream.of(selectedOrders)
+ .map(OrdineVenditaInevasoDTO::getGestioneEnum)
.withoutNulls()
.distinctBy(x -> x)
.toList();
@@ -454,8 +440,8 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IS
}
//Definizione del deposito di default
- List foundCodMdep = Stream.of(flatOrderArray)
- .map(OrdineVenditaGroupedInevasoDTO.Ordine::getCodMdep)
+ List foundCodMdep = Stream.of(selectedOrders)
+ .map(OrdineVenditaInevasoDTO::getCodMdep)
.withoutNulls()
.distinctBy(x -> x)
.toList();
@@ -471,7 +457,7 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IS
onComplete.run();
}
- private void startVenditaActivity(List ordini, List selectedOrders, List mtbColtList) {
+ private void startVenditaActivity(List ordini, List selectedOrders, List mtbColtList) {
Intent myIntent = new Intent(getActivity(), VenditaOrdineInevasoActivity.class);
String keyPickingList = DataCache.addItem(ordini);
diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/core/MainListVenditaAdapter.java b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/core/MainListVenditaAdapter.java
index 8c181855..d3e3f3f6 100644
--- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/core/MainListVenditaAdapter.java
+++ b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/core/MainListVenditaAdapter.java
@@ -2,8 +2,6 @@ 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;
@@ -12,8 +10,6 @@ import android.text.Html;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
-import android.widget.CheckBox;
-import android.widget.CompoundButton;
import android.widget.LinearLayout;
import android.widget.TextView;
@@ -23,7 +19,6 @@ import java.util.List;
import it.integry.integrywmsnative.R;
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.core.utility.UtilityDate;
-import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaGroupedInevasoDTO;
public class MainListVenditaAdapter extends RecyclerView.Adapter {
@@ -105,6 +100,11 @@ public class MainListVenditaAdapter extends RecyclerView.Adapter {
+// ordine.checkBox = checkBox.isChecked();
+// mOnSingleSelectionChanged.run(ordine);
+// });
+//
+//
+// ordine.checkBoxCallback.add(checkBox::setChecked);
+//
+// ordineView.setOnClickListener(view -> {
+// checkBox.toggle();
+// //ordine.checkBox = checkBox.isChecked();
+// //mOnGroupSelected.run(mDataset.get(finalPosition));
+// });
- checkBox.setOnCheckedChangeListener((buttonView, isChecked) -> {
- ordine.checkBox = checkBox.isChecked();
- mOnSingleSelectionChanged.run(ordine);
- });
-
-
- ordine.checkBoxCallback.add(checkBox::setChecked);
-
- ordineView.setOnClickListener(view -> {
- checkBox.toggle();
- //ordine.checkBox = checkBox.isChecked();
- //mOnGroupSelected.run(mDataset.get(finalPosition));
- });
TextView testataOrdTextView = ordineView.findViewById(R.id.vendita_main_list_group_item_container_testata_ord);
@@ -154,6 +160,7 @@ public class MainListVenditaAdapter extends RecyclerView.Adapter subGroupClienti = ordine.clienti;
@@ -184,9 +191,18 @@ public class MainListVenditaAdapter extends RecyclerView.Adapter implements SectionTitleProvider {
+
+ private Context mContext;
+
+ private HashMap mCallbacksDictionary = new HashMap<>();
+
+ private List mDataset;
+ private RunnableArgs mOnSingleSelectionChanged;
+
+
+ static class SubheaderHolder extends RecyclerView.ViewHolder {
+
+ VenditaMainListModelBinding binding;
+
+ SubheaderHolder(VenditaMainListModelBinding binding) {
+ super(binding.getRoot());
+ this.binding = binding;
+ }
+
+ }
+
+ static class SingleItemViewHolder extends RecyclerView.ViewHolder {
+
+ VenditaMainListGroupModelBinding binding;
+
+ SingleItemViewHolder(VenditaMainListGroupModelBinding binding) {
+ super(binding.getRoot());
+ this.binding = binding;
+ }
+ }
+
+
+ public MainListVenditaAdapterNew(Context context, List myDataset, RunnableArgs onSingleSelectionChanged) {
+ mContext = context;
+ mDataset = orderItems(myDataset);
+ mOnSingleSelectionChanged = onSingleSelectionChanged;
+ }
+
+ public void updateItems(List updatedDataset) {
+ mDataset.clear();
+ mDataset.addAll(orderItems(updatedDataset));
+ notifyDataSetChanged();
+ notifyDataChanged();
+ }
+
+
+ private List orderItems(List dataset) {
+ return Stream.of(dataset)
+ .sortBy(OrdineVenditaInevasoDTO::getRagSocOrd)
+ .toList();
+
+ }
+
+
+
+ @Override
+ public SubheaderHolder onCreateSubheaderViewHolder(ViewGroup parent, int viewType) {
+ VenditaMainListModelBinding binding = DataBindingUtil.inflate(LayoutInflater.from(mContext), R.layout.vendita_main_list_model, parent, false);
+ return new SubheaderHolder(binding);
+ }
+
+ @Override
+ public SingleItemViewHolder onCreateItemViewHolder(ViewGroup parent, int viewType) {
+ VenditaMainListGroupModelBinding binding = DataBindingUtil.inflate(LayoutInflater.from(mContext), R.layout.vendita_main_list_group_model, parent, false);
+ return new SingleItemViewHolder(binding);
+ }
+
+
+ @Override
+ public void onBindSubheaderViewHolder(SubheaderHolder subheaderHolder, int nextItemPosition) {
+ subheaderHolder.binding.venditaMainListGroupHeader.setText(mDataset.get(nextItemPosition).getRagSocOrd());
+
+ subheaderHolder.binding.getRoot().setOnClickListener(v -> {
+
+ boolean anySelected = Stream.of(mDataset)
+ .filter(x -> x.getCodAnagOrd().equals(mDataset.get(nextItemPosition).getCodAnagOrd()))
+ .anyMatch(OrdineVenditaInevasoDTO::isSelected);
+
+ Stream.of(mDataset)
+ .filter(x -> x.getCodAnagOrd().equals(mDataset.get(nextItemPosition).getCodAnagOrd()))
+ .forEach(x -> x.setSelected(!anySelected));
+ });
+ }
+
+ @Override
+ public void onBindItemViewHolder(SingleItemViewHolder holder, int itemPosition) {
+ OrdineVenditaInevasoDTO ordine = mDataset.get(itemPosition);
+
+ holder.binding.venditaMainListGroupItemContainerCheckBox.setOnCheckedChangeListener(null);
+
+ if (mCallbacksDictionary.containsKey(ordine.selected)) {
+ ordine.selected.removeOnPropertyChangedCallback(mCallbacksDictionary.get(ordine.selected));
+ }
+
+
+ holder.binding.emptyView.setBackgroundColor(ResourcesCompat.getColor(mContext.getResources(), ordine.flagExistCollo() ? R.color.colorPrimary : android.R.color.transparent, null));
+
+ String testataOrdString = String.format(mContext.getString(R.string.ord_ven_testata), String.valueOf(ordine.getNumOrd()), UtilityDate.formatDate(ordine.getDataOrdD(), UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN));
+ holder.binding.venditaMainListGroupItemContainerTestataOrd.setText(Html.fromHtml(testataOrdString));
+
+ String testataDataConsString = String.format(mContext.getString(R.string.ord_ven_testata_data_cons), UtilityDate.formatDate(ordine.getDataConsD(), UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN));
+ holder.binding.venditaMainListGroupItemContainerTestataDataCons.setText(Html.fromHtml(testataDataConsString));
+
+ holder.binding.venditaMainListGroupItemContainerDetailOrd.setText(ordine.getRifOrd());
+
+ holder.binding.setCheckboxValue(ordine.selected);
+
+ holder.binding.getRoot().setOnClickListener(v -> {
+ ordine.setSelected(!ordine.isSelected());
+ });
+
+ holder.binding.venditaMainListGroupItemContainerCheckBox.setChecked(ordine.isSelected());
+
+ mCallbacksDictionary.put(ordine.selected, new Observable.OnPropertyChangedCallback() {
+ @Override
+ public void onPropertyChanged(Observable sender, int propertyId) {
+ holder.binding.venditaMainListGroupItemContainerCheckBox.setChecked(((BindableBoolean) sender).get());
+ }
+ });
+
+ holder.binding.venditaMainListGroupItemContainerCheckBox.setOnCheckedChangeListener((buttonView, isChecked) -> {
+ ordine.setSelected(isChecked);
+ mOnSingleSelectionChanged.run(ordine);
+ });
+
+ ordine.selected.addOnPropertyChangedCallback(mCallbacksDictionary.get(ordine.selected));
+ }
+
+
+
+ @Override
+ public boolean onPlaceSubheaderBetweenItems(int position) {
+ return !this.mDataset.get(position).getRagSocOrd().equalsIgnoreCase(this.mDataset.get(position + 1).getRagSocOrd());
+
+ }
+
+ @Override
+ public int getItemSize() {
+ return mDataset.size();
+ }
+
+ @Override
+ public String getSectionTitle(int position) {
+ return null;
+ }
+
+
+ private static class OrdineListModel {
+ private String data;
+ private Integer numero;
+ private String gestione;
+ private String dataCons;
+
+ public static OrdineListModel fromOrdine(OrdineVenditaInevasoDTO ordine) {
+ return new OrdineListModel()
+ .setData(ordine.getDataOrdS())
+ .setDataCons(ordine.getDataConsS())
+ .setGestione(ordine.getGestione())
+ .setNumero(ordine.getNumOrd());
+ }
+
+ public String getData() {
+ return data;
+ }
+
+ public OrdineListModel setData(String data) {
+ this.data = data;
+ return this;
+ }
+
+ public Integer getNumero() {
+ return numero;
+ }
+
+ public OrdineListModel setNumero(Integer numero) {
+ this.numero = numero;
+ return this;
+ }
+
+ public String getGestione() {
+ return gestione;
+ }
+
+ public OrdineListModel setGestione(String gestione) {
+ this.gestione = gestione;
+ return this;
+ }
+
+ public String getDataCons() {
+ return dataCons;
+ }
+
+ public OrdineListModel setDataCons(String dataCons) {
+ this.dataCons = dataCons;
+ return this;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+
+ OrdineListModel that = (OrdineListModel) o;
+
+ if (!getData().equals(that.getData())) return false;
+ if (!getNumero().equals(that.getNumero())) return false;
+ if (!getGestione().equals(that.getGestione())) return false;
+ return getDataCons() != null ? getDataCons().equals(that.getDataCons()) : that.getDataCons() == null;
+ }
+
+ @Override
+ public int hashCode() {
+ int result = getData().hashCode();
+ result = 31 * result + getNumero().hashCode();
+ result = 31 * result + getGestione().hashCode();
+ result = 31 * result + (getDataCons() != null ? getDataCons().hashCode() : 0);
+ return result;
+ }
+ }
+
+}
diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/core/VenditaHelper.java b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/core/VenditaHelper.java
index 67183dad..7e2f0e7e 100644
--- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/core/VenditaHelper.java
+++ b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/core/VenditaHelper.java
@@ -4,6 +4,7 @@ import android.content.Context;
import android.text.TextUtils;
import android.util.Log;
+import com.annimon.stream.Stream;
import com.google.firebase.perf.metrics.Trace;
import com.google.gson.reflect.TypeToken;
@@ -11,7 +12,6 @@ import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.List;
-import it.integry.integrywmsnative.core.CommonConst;
import it.integry.integrywmsnative.core.REST.RESTBuilder;
import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback;
import it.integry.integrywmsnative.core.REST.consumers.SystemRESTConsumer;
@@ -19,7 +19,6 @@ import it.integry.integrywmsnative.core.REST.model.EsitoType;
import it.integry.integrywmsnative.core.REST.model.ServiceRESTResponse;
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.core.model.DtbOrdt;
-import it.integry.integrywmsnative.core.model.MtbColr;
import it.integry.integrywmsnative.core.model.MtbColt;
import it.integry.integrywmsnative.core.model.secondary.GestioneEnum;
import it.integry.integrywmsnative.core.settings.SettingsManager;
@@ -27,7 +26,6 @@ import it.integry.integrywmsnative.core.utility.UtilityDB;
import it.integry.integrywmsnative.core.utility.UtilityDate;
import it.integry.integrywmsnative.core.utility.UtilityFirebase;
import it.integry.integrywmsnative.core.utility.UtilityLogger;
-import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaGroupedInevasoDTO;
import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaInevasoDTO;
import it.integry.integrywmsnative.gest.vendita.dto.PickingObjectDTO;
import it.integry.integrywmsnative.gest.vendita.rest.OrdiniVenditaRESTConsumerService;
@@ -139,7 +137,7 @@ public class VenditaHelper {
- public void getBancaliVenditaGiaRegistrati(List orders, RunnableArgs> onComplete, RunnableArgs onFailed) {
+ public void getBancaliVenditaGiaRegistrati(List orders, RunnableArgs> onComplete, RunnableArgs onFailed) {
String baseSql = "SELECT DISTINCT mtb_colt.* " +
"FROM mtb_colt, " +
@@ -156,21 +154,15 @@ public class VenditaHelper {
for(int i = 0; i < orders.size(); i++){
- List currentOrders = orders.get(i).ordini;
- for(int j = 0; j < currentOrders.size(); j++){
+ whereCond
+ .append("(mtb_colr.data_ord = '").append(UtilityDate.formatDate(orders.get(i).getDataOrdD(), UtilityDate.COMMONS_DATE_FORMATS.YMD_SLASH)).append("' ")
+ .append("AND mtb_colr.num_ord = ").append(orders.get(i).getNumOrd()).append(" ")
+ .append("AND mtb_colr.gestione = ").append(UtilityDB.valueToString(orders.get(i).getGestione()))
+ .append(") ");
- whereCond
- .append("(mtb_colr.data_ord = '").append(UtilityDate.formatDate(currentOrders.get(j).getData(), UtilityDate.COMMONS_DATE_FORMATS.YMD_SLASH)).append("' ")
- .append("AND mtb_colr.num_ord = ").append(currentOrders.get(j).getNumero()).append(" ")
- .append("AND mtb_colr.gestione = ").append(UtilityDB.valueToString(currentOrders.get(j).getGestione()))
- .append(") ");
-
- if(i != (orders.size() - 1)){
- whereCond.append("OR ");
- } else if(j != (currentOrders.size() - 1)) {
- whereCond.append("OR ");
- }
+ if(i != (orders.size() - 1)){
+ whereCond.append("OR ");
}
}
@@ -241,47 +233,49 @@ public class VenditaHelper {
- public List getSelectedOrders(List groupedOrdiniInevasi){
- List selectedOrdini = new ArrayList<>();
+ public List getSelectedOrders(List ordiniList){
+// List selectedOrdini = new ArrayList<>();
- for(int i = 0; i < groupedOrdiniInevasi.size(); i++){
- List selectedOrdiniGroup = new ArrayList<>();
+ return Stream.of(ordiniList)
+ .filter(OrdineVenditaInevasoDTO::isSelected)
+ .toList();
- for(int j = 0; j < groupedOrdiniInevasi.get(i).ordini.size(); j++){
- if(groupedOrdiniInevasi.get(i).ordini.get(j).checkBox) {
- selectedOrdiniGroup.add(groupedOrdiniInevasi.get(i).ordini.get(j));
- }
- }
+// for(int i = 0; i < groupedOrdiniInevasi.size(); i++){
+// List selectedOrdiniGroup = new ArrayList<>();
+//
+// //for(int j = 0; j < groupedOrdiniInevasi.get(i).ordini.size(); j++){
+// if(groupedOrdiniInevasi.get(i).checkBox) {
+// selectedOrdiniGroup.add(groupedOrdiniInevasi.get(i).ordini.get(j));
+// }
+// //}
+//
+// if(selectedOrdiniGroup.size() > 0) {
+// try {
+// OrdineVenditaGroupedInevasoDTO cloneOrdine = groupedOrdiniInevasi.get(i).clone();
+// cloneOrdine.ordini = selectedOrdiniGroup;
+// selectedOrdini.add(cloneOrdine);
+// } catch (CloneNotSupportedException e) {
+// e.printStackTrace();
+// }
+// }
+// }
- if(selectedOrdiniGroup.size() > 0) {
- try {
- OrdineVenditaGroupedInevasoDTO cloneOrdine = groupedOrdiniInevasi.get(i).clone();
- cloneOrdine.ordini = selectedOrdiniGroup;
- selectedOrdini.add(cloneOrdine);
- } catch (CloneNotSupportedException e) {
- e.printStackTrace();
- }
- }
- }
-
- return selectedOrdini;
+// return selectedOrdini;
}
- public void selectAll(List groupedOrdiniInevasi) {
+ public void selectAll(List groupedOrdiniInevasi) {
toggleSelection(groupedOrdiniInevasi, true);
}
- public void deselectAll(List groupedOrdiniInevasi) {
+ public void deselectAll(List groupedOrdiniInevasi) {
toggleSelection(groupedOrdiniInevasi, false);
}
- public void toggleSelection(List groupedOrdiniInevasi, boolean value) {
+ public void toggleSelection(List groupedOrdiniInevasi, boolean value) {
for(int i = 0; i < groupedOrdiniInevasi.size(); i++){
- for(int j = 0; j < groupedOrdiniInevasi.get(i).ordini.size(); j++){
- groupedOrdiniInevasi.get(i).ordini.get(j).setCheckbox(value);
- }
+ groupedOrdiniInevasi.get(i).setSelected(value);
}
}
diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dto/OrdineVenditaGroupedInevasoDTO.java b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dto/OrdineVenditaGroupedInevasoDTO.java
deleted file mode 100644
index c6be534c..00000000
--- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dto/OrdineVenditaGroupedInevasoDTO.java
+++ /dev/null
@@ -1,401 +0,0 @@
-package it.integry.integrywmsnative.gest.vendita.dto;
-
-import android.os.Parcel;
-import android.os.Parcelable;
-
-import java.io.Serializable;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-
-import it.integry.integrywmsnative.core.interfaces.ICheckBoxCallback;
-import it.integry.integrywmsnative.core.model.secondary.GestioneEnum;
-import it.integry.integrywmsnative.core.utility.UtilityDate;
-
-public class OrdineVenditaGroupedInevasoDTO implements Cloneable, Serializable, Parcelable {
-
- public String codAnagClie;
- public String nomeCliente;
- public List ordini;
-
- public OrdineVenditaGroupedInevasoDTO clone() throws CloneNotSupportedException {
- return (OrdineVenditaGroupedInevasoDTO) super.clone();
- }
-
-
- public static class Ordine implements Parcelable{
- private String data;
- private int numero;
- private String codMdep;
- private String codAnagOrd = "";
- private String ragSocOrd = "";
- private Float pesoTotale;
- private String barcode;
- private String termCons;
- private String dataCons;
- private String rifOrd;
- private String gestione;
- private int colliRiservati;
- private boolean existCollo;
-
- private String codAnagClie;
-
- public List clienti;
-
- public boolean checkBox;
- public List checkBoxCallback = new ArrayList<>();
-
-
-
- public void setCheckbox(boolean newValue){
- checkBox = newValue;
- if(checkBoxCallback != null && checkBoxCallback.size() > 0) {
- for(ICheckBoxCallback callback : checkBoxCallback) callback.onToggle(newValue);
- }
- }
-
-
- public Date getData(){
- try {
- return UtilityDate.recognizeDate(data);
- } catch (Exception e) {
- e.printStackTrace();
- }
- return null;
- }
-
- public Ordine setData(String data) {
- this.data = data;
- return this;
- }
-
- public int getNumero() {
- return numero;
- }
-
- public Ordine setNumero(int numero) {
- this.numero = numero;
- return this;
- }
-
- public String getCodMdep() {
- return codMdep;
- }
-
- public Ordine setCodMdep(String codMdep) {
- this.codMdep = codMdep;
- return this;
- }
-
- public String getCodAnagOrd() {
- return codAnagOrd;
- }
-
- public Ordine setCodAnagOrd(String codAnagOrd) {
- this.codAnagOrd = codAnagOrd;
- return this;
- }
-
- public String getRagSocOrd() {
- return ragSocOrd;
- }
-
- public Ordine setRagSocOrd(String ragSocOrd) {
- this.ragSocOrd = ragSocOrd;
- return this;
- }
-
- public Float getPesoTotale() {
- return pesoTotale;
- }
-
- public Ordine setPesoTotale(Float pesoTotale) {
- this.pesoTotale = pesoTotale;
- return this;
- }
-
- public String getBarcode() {
- return barcode;
- }
-
- public Ordine setBarcode(String barcode) {
- this.barcode = barcode;
- return this;
- }
-
- public String getTermCons() {
- return termCons;
- }
-
- public Ordine setTermCons(String termCons) {
- this.termCons = termCons;
- return this;
- }
-
- public String getDataConsS(){
- return dataCons;
- }
-
- public Date getDataConsD(){
- try {
- return UtilityDate.recognizeDate(dataCons);
- } catch (Exception e) {
- e.printStackTrace();
- }
- return null;
- }
-
- public Ordine setDataCons(String dataCons) {
- this.dataCons = dataCons;
- return this;
- }
-
- public String getRifOrd() {
- return rifOrd;
- }
-
- public Ordine setRifOrd(String rifOrd) {
- this.rifOrd = rifOrd;
- return this;
- }
-
- public String getGestione() {
- return gestione;
- }
-
- public GestioneEnum getGestioneEnum() {
- return GestioneEnum.fromString(getGestione());
- }
-
- public Ordine setGestione(String gestione) {
- this.gestione = gestione;
- return this;
- }
-
- public String getCodAnagClie() {
- return codAnagClie;
- }
-
- public Ordine setCodAnagClie(String codAnagClie) {
- this.codAnagClie = codAnagClie;
- return this;
- }
-
- public int getColliRiservati() {
- return colliRiservati;
- }
-
- public Ordine setColliRiservati(int colliRiservati) {
- this.colliRiservati = colliRiservati;
- return this;
- }
-
- public List getClienti() {
- return clienti;
- }
-
- public Ordine setClienti(List clienti) {
- this.clienti = clienti;
- return this;
- }
-
- public boolean isCheckBox() {
- return checkBox;
- }
-
- public Ordine setCheckBox(boolean checkBox) {
- this.checkBox = checkBox;
- return this;
- }
-
- public boolean isExistCollo() {
- return existCollo;
- }
-
- public Ordine setExistCollo(boolean existCollo) {
- this.existCollo = existCollo;
- return this;
- }
-
- public Ordine(){}
-
- protected Ordine(Parcel in) {
- data = in.readString();
- numero = in.readInt();
- codAnagOrd = in.readString();
- ragSocOrd = in.readString();
- pesoTotale = in.readByte() == 0x00 ? null : in.readFloat();
- barcode = in.readString();
- termCons = in.readString();
- dataCons = in.readString();
- rifOrd = in.readString();
- if (in.readByte() == 0x01) {
- clienti = new ArrayList<>();
- in.readList(clienti, Cliente.class.getClassLoader());
- } else {
- clienti = null;
- }
- gestione = in.readString();
- colliRiservati = in.readInt();
- codMdep = in.readString();
- existCollo = in.readByte() != 0x00;
-
- }
-
- @Override
- public int describeContents() {
- return 0;
- }
-
- @Override
- public void writeToParcel(Parcel dest, int flags) {
- dest.writeString(data);
- dest.writeInt(numero);
- dest.writeString(codAnagOrd);
- dest.writeString(ragSocOrd);
- if (pesoTotale == null) {
- dest.writeByte((byte) (0x00));
- } else {
- dest.writeByte((byte) (0x01));
- dest.writeFloat(pesoTotale);
- }
- dest.writeString(barcode);
- dest.writeString(termCons);
- dest.writeString(dataCons);
- dest.writeString(rifOrd);
- if (clienti == null) {
- dest.writeByte((byte) (0x00));
- } else {
- dest.writeByte((byte) (0x01));
- dest.writeList(clienti);
- }
- dest.writeString(gestione);
- dest.writeInt(colliRiservati);
- dest.writeString(codMdep);
- dest.writeByte((byte) (existCollo ? 0x01 : 0x00));
- }
-
- @SuppressWarnings("unused")
- public static final Parcelable.Creator CREATOR = new Parcelable.Creator() {
- @Override
- public Ordine createFromParcel(Parcel in) {
- return new Ordine(in);
- }
-
- @Override
- public Ordine[] newArray(int size) {
- return new Ordine[size];
- }
- };
-
- }
-
- public static class Cliente implements Parcelable{
- public String codJcom;
- public String ragSocCom;
- public int idRiga;
- public String dataCons;
- public Float numCnf;
- public String descrCom;
- public String rifOrd;
-
- public Date getDataCons(){
- try {
- return UtilityDate.recognizeDate(dataCons);
- } catch (Exception e) {
- e.printStackTrace();
- }
- return null;
- }
-
- public Cliente(){}
-
- protected Cliente(Parcel in) {
- codJcom = in.readString();
- ragSocCom = in.readString();
- idRiga = in.readInt();
- dataCons = in.readString();
- numCnf = in.readByte() == 0x00 ? null : in.readFloat();
- descrCom = in.readString();
- rifOrd = in.readString();
- }
-
- @Override
- public int describeContents() {
- return 0;
- }
-
- @Override
- public void writeToParcel(Parcel dest, int flags) {
- dest.writeString(codJcom);
- dest.writeString(ragSocCom);
- dest.writeInt(idRiga);
- dest.writeString(dataCons);
- if (numCnf == null) {
- dest.writeByte((byte) (0x00));
- } else {
- dest.writeByte((byte) (0x01));
- dest.writeFloat(numCnf);
- }
- dest.writeString(descrCom);
- dest.writeString(rifOrd);
- }
-
- @SuppressWarnings("unused")
- public static final Parcelable.Creator CREATOR = new Parcelable.Creator() {
- @Override
- public Cliente createFromParcel(Parcel in) {
- return new Cliente(in);
- }
-
- @Override
- public Cliente[] newArray(int size) {
- return new Cliente[size];
- }
- };
- }
-
- public OrdineVenditaGroupedInevasoDTO(){}
-
- protected OrdineVenditaGroupedInevasoDTO(Parcel in) {
- codAnagClie = in.readString();
- nomeCliente = in.readString();
- if (in.readByte() == 0x01) {
- ordini = new ArrayList<>();
- in.readList(ordini, Ordine.class.getClassLoader());
- } else {
- ordini = null;
- }
- }
-
- @Override
- public int describeContents() {
- return 0;
- }
-
- @Override
- public void writeToParcel(Parcel dest, int flags) {
- dest.writeString(codAnagClie);
- dest.writeString(nomeCliente);
- if (ordini == null) {
- dest.writeByte((byte) (0x00));
- } else {
- dest.writeByte((byte) (0x01));
- dest.writeList(ordini);
- }
- }
-
- @SuppressWarnings("unused")
- public static final Parcelable.Creator CREATOR = new Parcelable.Creator() {
- @Override
- public OrdineVenditaGroupedInevasoDTO createFromParcel(Parcel in) {
- return new OrdineVenditaGroupedInevasoDTO(in);
- }
-
- @Override
- public OrdineVenditaGroupedInevasoDTO[] newArray(int size) {
- return new OrdineVenditaGroupedInevasoDTO[size];
- }
- };
-
-}
diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dto/OrdineVenditaInevasoDTO.java b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dto/OrdineVenditaInevasoDTO.java
index be0e091b..59e6bfc1 100644
--- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dto/OrdineVenditaInevasoDTO.java
+++ b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dto/OrdineVenditaInevasoDTO.java
@@ -8,6 +8,8 @@ import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
+import it.integry.integrywmsnative.core.di.BindableBoolean;
+import it.integry.integrywmsnative.core.model.secondary.GestioneEnum;
import it.integry.integrywmsnative.core.utility.UtilityLogger;
public class OrdineVenditaInevasoDTO implements Parcelable {
@@ -47,6 +49,12 @@ public class OrdineVenditaInevasoDTO implements Parcelable {
private int colliRiservati;
private String existCollo;
+ public BindableBoolean selected;
+
+
+ public OrdineVenditaInevasoDTO() {
+ this.selected = new BindableBoolean(false);
+ }
protected OrdineVenditaInevasoDTO(Parcel in) {
data = in.readString();
@@ -91,6 +99,8 @@ public class OrdineVenditaInevasoDTO implements Parcelable {
ragSocOrdV = in.readString();
colliRiservati = in.readInt();
existCollo = in.readString();
+
+ selected = new BindableBoolean(in.readByte() == 0x01);
}
@Override
@@ -140,6 +150,8 @@ public class OrdineVenditaInevasoDTO implements Parcelable {
dest.writeString(ragSocOrdV);
dest.writeInt(colliRiservati);
dest.writeString(existCollo);
+
+ dest.writeByte(selected.get() ? (byte) 1 : (byte) 0);
}
@Override
@@ -163,9 +175,14 @@ public class OrdineVenditaInevasoDTO implements Parcelable {
return data;
}
- public Date getDataOrdD() throws ParseException {
+ public Date getDataOrdD() {
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
- return sdf.parse(getDataOrdS());
+ try {
+ return sdf.parse(getDataOrdS());
+ } catch (ParseException e) {
+ UtilityLogger.errorMe(e);
+ return null;
+ }
}
public OrdineVenditaInevasoDTO setData(String data) {
@@ -186,6 +203,11 @@ public class OrdineVenditaInevasoDTO implements Parcelable {
return gestione;
}
+ public GestioneEnum getGestioneEnum() {
+ return GestioneEnum.fromString(getGestione());
+ }
+
+
public OrdineVenditaInevasoDTO setGestione(String gestione) {
this.gestione = gestione;
return this;
@@ -488,4 +510,33 @@ public class OrdineVenditaInevasoDTO implements Parcelable {
this.existCollo = existCollo;
return this;
}
+
+ public boolean isSelected() {
+ return selected.get();
+ }
+
+ public OrdineVenditaInevasoDTO setSelected(boolean selected) {
+ this.selected.set(selected);
+ return this;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+
+ OrdineVenditaInevasoDTO that = (OrdineVenditaInevasoDTO) o;
+
+ if (!data.equals(that.data)) return false;
+ if (!numero.equals(that.numero)) return false;
+ return getGestione().equals(that.getGestione());
+ }
+
+ @Override
+ public int hashCode() {
+ int result = data.hashCode();
+ result = 31 * result + numero.hashCode();
+ result = 31 * result + getGestione().hashCode();
+ return result;
+ }
}
diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/viewmodel/VenditaViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/viewmodel/VenditaViewModel.java
index 038f9c8b..621b2651 100644
--- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/viewmodel/VenditaViewModel.java
+++ b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/viewmodel/VenditaViewModel.java
@@ -120,7 +120,7 @@ public class VenditaViewModel {
List filteredOrders = Stream.of(mOrdini)
.filter(x -> numOrds.contains(x.getNumOrd())).toList();
- mFragment.groupOrdini(filteredOrders);
+ mFragment.refreshOrdini(filteredOrders);
mFragment.refreshRecyclerView();
} else {
showNoOrderFound();
diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/VenditaOrdineInevasoActivity.java b/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/VenditaOrdineInevasoActivity.java
index a796f617..d14f351a 100644
--- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/VenditaOrdineInevasoActivity.java
+++ b/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/VenditaOrdineInevasoActivity.java
@@ -19,7 +19,7 @@ import it.integry.integrywmsnative.core.utility.UtilityExceptions;
import it.integry.integrywmsnative.databinding.ActivityVenditaOrdineInevasoBinding;
import it.integry.integrywmsnative.databinding.FragmentArticoliInColloBottomSheetBinding;
import it.integry.integrywmsnative.gest.lista_bancali.ListaBancaliActivity;
-import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaGroupedInevasoDTO;
+import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaInevasoDTO;
import it.integry.integrywmsnative.gest.vendita.dto.PickingObjectDTO;
import it.integry.integrywmsnative.gest.vendita_ordine_inevaso.viewmodel.VenditaOrdineInevasoViewModel;
import it.integry.integrywmsnative.view.bottomsheet.viewmodel.ArticoliInColloBottomSheetViewModel;
@@ -45,7 +45,7 @@ public class VenditaOrdineInevasoActivity extends AppCompatActivity {
mArticoliInColloBottomSheetViewModel = new ArticoliInColloBottomSheetViewModel(this, bindings);
ArrayList pickingList = DataCache.retrieveItem(getIntent().getStringExtra("keyPickingList"));
- ArrayList testateOrdini = DataCache.retrieveItem(getIntent().getStringExtra("keyTestateOrdini"));
+ ArrayList testateOrdini = DataCache.retrieveItem(getIntent().getStringExtra("keyTestateOrdini"));
ArrayList colliRegistrati = DataCache.retrieveItem(getIntent().getStringExtra("keyColliRegistrati"));
mVenditaOrdineInevasoViewModel = new VenditaOrdineInevasoViewModel(
this, mBindings, mArticoliInColloBottomSheetViewModel, pickingList, testateOrdini, colliRegistrati);
diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/viewmodel/VenditaOrdineInevasoViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/viewmodel/VenditaOrdineInevasoViewModel.java
index 0c6e1606..6233edb2 100644
--- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/viewmodel/VenditaOrdineInevasoViewModel.java
+++ b/app/src/main/java/it/integry/integrywmsnative/gest/vendita_ordine_inevaso/viewmodel/VenditaOrdineInevasoViewModel.java
@@ -52,7 +52,7 @@ import it.integry.integrywmsnative.core.utility.UtilityPosizione;
import it.integry.integrywmsnative.core.utility.UtilityProgress;
import it.integry.integrywmsnative.core.utility.UtilityString;
import it.integry.integrywmsnative.databinding.ActivityVenditaOrdineInevasoBinding;
-import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaGroupedInevasoDTO;
+import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaInevasoDTO;
import it.integry.integrywmsnative.gest.vendita.dto.PickingObjectDTO;
import it.integry.integrywmsnative.gest.vendita_ordine_inevaso.VenditaOrdineInevasoActivity;
import it.integry.integrywmsnative.gest.vendita_ordine_inevaso.core.VenditaOrdineInevasoHelper;
@@ -81,7 +81,7 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
private final List mPickingList;
private List> mGroupedPickingList;
- private final List mTestateOrdini;
+ private final List mTestateOrdini;
private final List mColliRegistrati;
private VenditaOrdineInevasoHelper mHelper;
@@ -98,7 +98,7 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
private Integer mtbColtSessionID = null;
- public VenditaOrdineInevasoViewModel(VenditaOrdineInevasoActivity activity, ActivityVenditaOrdineInevasoBinding bindings, ArticoliInColloBottomSheetViewModel articoliInColloBottomSheetViewModel, List pickingList, List orders, List colliRegistrati) {
+ public VenditaOrdineInevasoViewModel(VenditaOrdineInevasoActivity activity, ActivityVenditaOrdineInevasoBinding bindings, ArticoliInColloBottomSheetViewModel articoliInColloBottomSheetViewModel, List pickingList, List orders, List colliRegistrati) {
this.mActivity = activity;
this.mBindings = bindings;
this.mArticoliInColloBottomSheetViewModel = articoliInColloBottomSheetViewModel;
@@ -157,13 +157,10 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
private void initDatiPicking() {
if(this.mTestateOrdini != null && this.mTestateOrdini.size() > 0){
- List flatOrderArray = new ArrayList<>();
-
- Stream.of(this.mTestateOrdini).forEach(x -> flatOrderArray.addAll(x.ordini));
//Definizione della gestione collo di default
- List foundGestioni = Stream.of(flatOrderArray)
- .map(OrdineVenditaGroupedInevasoDTO.Ordine::getGestioneEnum)
+ List foundGestioni = Stream.of(mTestateOrdini)
+ .map(OrdineVenditaInevasoDTO::getGestioneEnum)
.withoutNulls()
.distinctBy(x -> x)
.toList();
@@ -180,8 +177,8 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
}
//Definizione del deposito di default
- List foundCodMdep = Stream.of(flatOrderArray)
- .map(OrdineVenditaGroupedInevasoDTO.Ordine::getCodMdep)
+ List foundCodMdep = Stream.of(mTestateOrdini)
+ .map(OrdineVenditaInevasoDTO::getCodMdep)
.withoutNulls()
.distinctBy(x -> x)
.toList();
@@ -200,18 +197,20 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
//Definizione del filtro ordine da applicare a tutti i colli generati
- Stream.of(flatOrderArray).forEach(x -> {
- defaultFiltroOrdine.add(new FiltroOrdineDTO()
- .setDataOrd(x.getData())
- .setNumOrd(x.getNumero())
- .setGestioneOrd(x.getGestione()));
+ Stream.of(mTestateOrdini).forEach(x -> {
+ FiltroOrdineDTO filtro = new FiltroOrdineDTO()
+ .setDataOrd(x.getDataOrdD())
+ .setNumOrd(x.getNumOrd())
+ .setGestioneOrd(x.getGestione());
+
+ if(defaultFiltroOrdine.contains(filtro)) defaultFiltroOrdine.add(filtro);
});
//Definizione del codAnag
- List foundCodAnag = Stream.of(flatOrderArray)
- .map(OrdineVenditaGroupedInevasoDTO.Ordine::getCodAnagOrd)
+ List foundCodAnag = Stream.of(mTestateOrdini)
+ .map(OrdineVenditaInevasoDTO::getCodAnagOrd)
.withoutNulls()
.distinctBy(x -> x)
.toList();
@@ -222,8 +221,8 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
//Definizione del rifOrd
- List foundRifOrd = Stream.of(flatOrderArray)
- .map(OrdineVenditaGroupedInevasoDTO.Ordine::getRifOrd)
+ List foundRifOrd = Stream.of(mTestateOrdini)
+ .map(OrdineVenditaInevasoDTO::getRifOrd)
.withoutNulls()
.distinctBy(x -> x)
.toList();
@@ -234,8 +233,8 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
//Definizione del numOrd
- List foundNumOrd = Stream.of(flatOrderArray)
- .map(OrdineVenditaGroupedInevasoDTO.Ordine::getNumero)
+ List foundNumOrd = Stream.of(mTestateOrdini)
+ .map(OrdineVenditaInevasoDTO::getNumOrd)
.withoutNulls()
.distinctBy(x -> x)
.toList();
@@ -246,8 +245,8 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
//Definizione del dataOrd
- List foundDataOrd = Stream.of(flatOrderArray)
- .map(OrdineVenditaGroupedInevasoDTO.Ordine::getData)
+ List foundDataOrd = Stream.of(mTestateOrdini)
+ .map(OrdineVenditaInevasoDTO::getDataOrdD)
.withoutNulls()
.distinctBy(x -> x)
.toList();
diff --git a/app/src/main/res/layout/fragment_main.xml b/app/src/main/res/layout/fragment_main.xml
index ff200a73..cb8f6806 100644
--- a/app/src/main/res/layout/fragment_main.xml
+++ b/app/src/main/res/layout/fragment_main.xml
@@ -429,51 +429,51 @@
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
+
-
-
-
-
-
-
+
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
+
-
-
+
+
-
+
diff --git a/app/src/main/res/layout/vendita_main_list_group_model.xml b/app/src/main/res/layout/vendita_main_list_group_model.xml
index 677ad4ce..001e2b32 100644
--- a/app/src/main/res/layout/vendita_main_list_group_model.xml
+++ b/app/src/main/res/layout/vendita_main_list_group_model.xml
@@ -1,52 +1,89 @@
-
+
+
+
+
+
+
+
-
-
-
-
-
-
-
+ android:paddingStart="8dp"
+ android:paddingEnd="4dp">
-
-
+ android:paddingStart="2dp"
+ android:paddingEnd="8dp"
+ android:paddingTop="8dp"
+ android:paddingBottom="8dp"
+ android:layout_toEndOf="@id/empty_view"
+ android:background="@color/full_white">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/vendita_main_list_model.xml b/app/src/main/res/layout/vendita_main_list_model.xml
index 8cd747b2..3f9466dd 100644
--- a/app/src/main/res/layout/vendita_main_list_model.xml
+++ b/app/src/main/res/layout/vendita_main_list_model.xml
@@ -1,3 +1,4 @@
+
-
\ No newline at end of file
+
+
+
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index 8d337f0c..d13bfbdb 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -25,6 +25,7 @@
#E8F0FE
+ #C9D5F0
diff --git a/dynamic__base/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java b/dynamic__base/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java
index 9e04adaa..ac61c630 100644
--- a/dynamic__base/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java
+++ b/dynamic__base/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java
@@ -10,13 +10,13 @@ import it.integry.integrywmsnative.core.model.MtbColt;
import it.integry.integrywmsnative.core.settings.SettingsManager;
import it.integry.integrywmsnative.core.utility.UtilityToast;
import it.integry.integrywmsnative.core.class_router.interfaces.IOrdiniVendita;
-import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaGroupedInevasoDTO;
+import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaInevasoDTO;
public class OrdiniVendita implements IOrdiniVendita {
@Override
- public void distribuisciCollo(ProgressDialog progress, MtbColt mtbColt, List testateOrdini, RunnableArgs> onComplete, RunnableArgs onFailed) {
+ public void distribuisciCollo(ProgressDialog progress, MtbColt mtbColt, List testateOrdini, RunnableArgs> onComplete, RunnableArgs onFailed) {
UtilityToast.showToast("Avviato metodo in BaseFeature");
ColliMagazzinoRESTConsumer.distribuisciCollo(mtbColt, SettingsManager.iDB().getDefaultCriterioDistribuzione(),
diff --git a/dynamic_ime/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java b/dynamic_ime/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java
index e0adf794..048472d1 100644
--- a/dynamic_ime/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java
+++ b/dynamic_ime/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java
@@ -10,13 +10,13 @@ import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.core.model.MtbColt;
import it.integry.integrywmsnative.core.settings.SettingsManager;
import it.integry.integrywmsnative.core.utility.UtilityToast;
-import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaGroupedInevasoDTO;
+import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaInevasoDTO;
public class OrdiniVendita implements IOrdiniVendita {
@Override
- public void distribuisciCollo(ProgressDialog progress, MtbColt mtbColt, List testateOrdini, RunnableArgs> onComplete, RunnableArgs onFailed) {
+ public void distribuisciCollo(ProgressDialog progress, MtbColt mtbColt, List testateOrdini, RunnableArgs> onComplete, RunnableArgs onFailed) {
UtilityToast.showToast("Avviato metodo in BaseFeature");
ColliMagazzinoRESTConsumer.distribuisciCollo(mtbColt, SettingsManager.iDB().getDefaultCriterioDistribuzione(),
diff --git a/dynamic_vgalimenti/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java b/dynamic_vgalimenti/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java
index 82cb0836..438ebcf9 100644
--- a/dynamic_vgalimenti/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java
+++ b/dynamic_vgalimenti/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java
@@ -11,14 +11,14 @@ import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.core.model.MtbColt;
import it.integry.integrywmsnative.core.settings.SettingsManager;
import it.integry.integrywmsnative.core.utility.UtilityString;
-import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaGroupedInevasoDTO;
+import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaInevasoDTO;
public class OrdiniVendita implements IOrdiniVendita {
@Override
- public void distribuisciCollo(ProgressDialog progress, MtbColt mtbColt, List testateOrdini, RunnableArgs> onComplete, RunnableArgs onFailed) {
+ public void distribuisciCollo(ProgressDialog progress, MtbColt mtbColt, List testateOrdini, RunnableArgs> onComplete, RunnableArgs onFailed) {
- String codMdepOrder = testateOrdini.get(0).ordini.get(0).getCodMdep();
+ String codMdepOrder = testateOrdini.get(0).getCodMdep();
//Se il deposito del collo รจ diverso dal deposito dell'utente allora sto "evadendo" la merce per una vendita presente
//su un altro deposito