Finish Feature-RefactoringSpedizioneList
# Conflicts: # app/src/main/java/it/integry/integrywmsnative/gest/vendita/core/MainListVenditaAdapter.java # app/src/main/res/layout/vendita_main_list_group_model.xml
This commit is contained in:
commit
08cffacc90
BIN
.idea/caches/build_file_checksums.ser
generated
BIN
.idea/caches/build_file_checksums.ser
generated
Binary file not shown.
4
.idea/runConfigurations/app.xml
generated
4
.idea/runConfigurations/app.xml
generated
@ -6,7 +6,7 @@
|
|||||||
<option name="DEPLOY_AS_INSTANT" value="false" />
|
<option name="DEPLOY_AS_INSTANT" value="false" />
|
||||||
<option name="ARTIFACT_NAME" value="" />
|
<option name="ARTIFACT_NAME" value="" />
|
||||||
<option name="PM_INSTALL_OPTIONS" value="" />
|
<option name="PM_INSTALL_OPTIONS" value="" />
|
||||||
<option name="DYNAMIC_FEATURES_DISABLED_LIST" value="dynamic__base,dynamic_ime" />
|
<option name="DYNAMIC_FEATURES_DISABLED_LIST" value="dynamic_ime,dynamic_vgalimenti" />
|
||||||
<option name="ACTIVITY_EXTRA_FLAGS" value="" />
|
<option name="ACTIVITY_EXTRA_FLAGS" value="" />
|
||||||
<option name="MODE" value="default_activity" />
|
<option name="MODE" value="default_activity" />
|
||||||
<option name="CLEAR_LOGCAT" value="true" />
|
<option name="CLEAR_LOGCAT" value="true" />
|
||||||
@ -43,7 +43,7 @@
|
|||||||
</Native>
|
</Native>
|
||||||
<Profilers>
|
<Profilers>
|
||||||
<option name="ADVANCED_PROFILING_ENABLED" value="false" />
|
<option name="ADVANCED_PROFILING_ENABLED" value="false" />
|
||||||
<option name="STARTUP_CPU_PROFILING_ENABLED" value="false" />
|
<option name="STARTUP_CPU_PROFILING_ENABLED" value="true" />
|
||||||
<option name="STARTUP_CPU_PROFILING_CONFIGURATION_NAME" value="Sample Java Methods" />
|
<option name="STARTUP_CPU_PROFILING_CONFIGURATION_NAME" value="Sample Java Methods" />
|
||||||
</Profilers>
|
</Profilers>
|
||||||
<option name="DEEP_LINK" value="" />
|
<option name="DEEP_LINK" value="" />
|
||||||
|
|||||||
@ -157,10 +157,10 @@ public class MainActivity extends AppCompatActivity
|
|||||||
fragment = PickingLiberoFragment.newInstance();
|
fragment = PickingLiberoFragment.newInstance();
|
||||||
this.adaptViewToFragment(fragment);
|
this.adaptViewToFragment(fragment);
|
||||||
}
|
}
|
||||||
// else if (id == R.id.nav_resi_cliente) {
|
else if (id == R.id.nav_resi_cliente) {
|
||||||
// fragment = UltimeConsegneClienteFragment.newInstance();
|
fragment = UltimeConsegneClienteFragment.newInstance();
|
||||||
// this.adaptViewToFragment(fragment);
|
this.adaptViewToFragment(fragment);
|
||||||
// }
|
}
|
||||||
else if (id == R.id.nav_prod_versamento_materiale) {
|
else if (id == R.id.nav_prod_versamento_materiale) {
|
||||||
fragment = ProdVersamentoMaterialeFragment.newInstance();
|
fragment = ProdVersamentoMaterialeFragment.newInstance();
|
||||||
this.adaptViewToFragment(fragment);
|
this.adaptViewToFragment(fragment);
|
||||||
|
|||||||
@ -6,10 +6,10 @@ import java.util.List;
|
|||||||
|
|
||||||
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||||
import it.integry.integrywmsnative.core.model.MtbColt;
|
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 {
|
public interface IOrdiniVendita {
|
||||||
|
|
||||||
void distribuisciCollo(ProgressDialog progress, MtbColt mtbColt, List<OrdineVenditaGroupedInevasoDTO> testateOrdini, RunnableArgs<List<MtbColt>> onComplete, RunnableArgs<Exception> onFailed);
|
void distribuisciCollo(ProgressDialog progress, MtbColt mtbColt, List<OrdineVenditaInevasoDTO> testateOrdini, RunnableArgs<List<MtbColt>> onComplete, RunnableArgs<Exception> onFailed);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -47,4 +47,24 @@ public class FiltroOrdineDTO {
|
|||||||
this.numOrd = numOrd;
|
this.numOrd = numOrd;
|
||||||
return this;
|
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;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -4,6 +4,7 @@ import com.orhanobut.logger.Logger;
|
|||||||
|
|
||||||
import java.io.PrintWriter;
|
import java.io.PrintWriter;
|
||||||
import java.io.StringWriter;
|
import java.io.StringWriter;
|
||||||
|
import java.net.SocketTimeoutException;
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
@ -39,6 +40,8 @@ public class UtilityLogger {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static void errorMe(Exception ex, String additionalText, Runnable onComplete, RunnableArgs<Exception> onFailed) {
|
public static void errorMe(Exception ex, String additionalText, Runnable onComplete, RunnableArgs<Exception> onFailed) {
|
||||||
|
if(!(ex instanceof SocketTimeoutException)) {
|
||||||
|
|
||||||
String message = UtilityResources.readRawTextFile(R.raw.error_mail);
|
String message = UtilityResources.readRawTextFile(R.raw.error_mail);
|
||||||
|
|
||||||
message = message.replace("#exception_name#", ex.getMessage());
|
message = message.replace("#exception_name#", ex.getMessage());
|
||||||
@ -57,5 +60,6 @@ public class UtilityLogger {
|
|||||||
|
|
||||||
SystemRESTConsumer.sendErrorLogMail(message, onComplete, onFailed);
|
SystemRESTConsumer.sendErrorLogMail(message, onComplete, onFailed);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -217,10 +217,10 @@ public class MainFragment extends Fragment implements ITitledFragment, IScrollab
|
|||||||
((MainActivity) getActivity()).setItem(R.id.nav_free_picking);
|
((MainActivity) getActivity()).setItem(R.id.nav_free_picking);
|
||||||
}
|
}
|
||||||
|
|
||||||
// @OnClick(R.id.fast_button_resi_clienti)
|
@OnClick(R.id.fast_button_resi_clienti)
|
||||||
// public void onClickResiClientio(View view) {
|
public void onClickResiClientio(View view) {
|
||||||
// ((MainActivity) getActivity()).setItem(R.id.nav_resi_cliente);
|
((MainActivity) getActivity()).setItem(R.id.nav_resi_cliente);
|
||||||
// }
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -21,7 +21,6 @@ import android.view.ViewGroup;
|
|||||||
import com.annimon.stream.Stream;
|
import com.annimon.stream.Stream;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Date;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import butterknife.ButterKnife;
|
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.core.utility.UtilityToast;
|
||||||
import it.integry.integrywmsnative.databinding.FragmentMainVenditaBinding;
|
import it.integry.integrywmsnative.databinding.FragmentMainVenditaBinding;
|
||||||
import it.integry.integrywmsnative.core.interfaces.ITitledFragment;
|
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.core.VenditaHelper;
|
||||||
import it.integry.integrywmsnative.gest.vendita.dialogs.DialogVenditaFiltroAvanzato;
|
import it.integry.integrywmsnative.gest.vendita.dialogs.DialogVenditaFiltroAvanzato;
|
||||||
import it.integry.integrywmsnative.gest.vendita.dialogs.DialogVenditaFiltroAvanzatoViewModel;
|
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.OrdineVenditaInevasoDTO;
|
||||||
import it.integry.integrywmsnative.gest.vendita.dto.PickingObjectDTO;
|
import it.integry.integrywmsnative.gest.vendita.dto.PickingObjectDTO;
|
||||||
import it.integry.integrywmsnative.gest.vendita.viewmodel.VenditaViewModel;
|
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 FragmentMainVenditaBinding mBinding = null;
|
||||||
private VenditaViewModel mViewModel;
|
private VenditaViewModel mViewModel;
|
||||||
|
|
||||||
private MainListVenditaAdapter mAdapter;
|
private MainListVenditaAdapterNew mAdapter;
|
||||||
|
|
||||||
private List<OrdineVenditaInevasoDTO> mOriginalOrderList;
|
private List<OrdineVenditaInevasoDTO> mOriginalOrderList;
|
||||||
private List<OrdineVenditaGroupedInevasoDTO> groupedOrdiniInevasi;
|
private List<OrdineVenditaInevasoDTO> mRenderedOrderList = new ArrayList<>();
|
||||||
|
|
||||||
private DialogVenditaFiltroAvanzatoViewModel mAppliedFilterViewModel;
|
private DialogVenditaFiltroAvanzatoViewModel mAppliedFilterViewModel;
|
||||||
|
|
||||||
@ -121,7 +119,6 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IS
|
|||||||
|
|
||||||
ButterKnife.bind(this, mBinding.getRoot());
|
ButterKnife.bind(this, mBinding.getRoot());
|
||||||
|
|
||||||
// if(mWaterfallToolbar != null) mWaterfallToolbar.setRecyclerView(mBinding.venditaMainList);
|
|
||||||
if(mToolbar != null) mToolbar.setRecyclerView(mBinding.venditaMainList);
|
if(mToolbar != null) mToolbar.setRecyclerView(mBinding.venditaMainList);
|
||||||
|
|
||||||
return mBinding.getRoot();
|
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);
|
mBinding.ordiniVenditaEmptyView.setVisibility(ordini != null && ordini.size() > 0 ? View.GONE : View.VISIBLE);
|
||||||
|
|
||||||
groupOrdini(ordini);
|
refreshOrdini(ordini);
|
||||||
initRecyclerView();
|
initRecyclerView();
|
||||||
progress.dismiss();
|
progress.dismiss();
|
||||||
}
|
}
|
||||||
@ -188,112 +185,124 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IS
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void groupOrdini(List<OrdineVenditaInevasoDTO> ordini){
|
public void refreshOrdini(List<OrdineVenditaInevasoDTO> ordini){
|
||||||
|
|
||||||
groupedOrdiniInevasi = new ArrayList<>();
|
mRenderedOrderList.clear();
|
||||||
|
mRenderedOrderList.addAll(ordini);
|
||||||
//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);
|
|
||||||
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
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() {
|
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);
|
mBinding.venditaMainList.setAdapter(mAdapter);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void refreshRecyclerView() {
|
public void refreshRecyclerView() {
|
||||||
mAdapter.updateItems(groupedOrdiniInevasi);
|
mAdapter.updateItems(mRenderedOrderList);
|
||||||
}
|
}
|
||||||
|
|
||||||
private RunnableArgs<OrdineVenditaGroupedInevasoDTO.Ordine> onSingleSelectionChanged = dto -> {
|
private RunnableArgs<OrdineVenditaInevasoDTO> onSingleSelectionChanged = dto -> {
|
||||||
List<OrdineVenditaGroupedInevasoDTO> selectedOrders = mHelper.getSelectedOrders(groupedOrdiniInevasi);
|
List<OrdineVenditaInevasoDTO> selectedOrders = mHelper.getSelectedOrders(mOriginalOrderList);
|
||||||
|
|
||||||
if(!SettingsManager.iDB().isFlagMultiClienteOrdV()){
|
if(!SettingsManager.iDB().isFlagMultiClienteOrdV()){
|
||||||
|
boolean allMatch = Stream.of(selectedOrders).allMatch(x -> dto.getCodAnagOrd().equalsIgnoreCase(x.getCodAnagOrd()));
|
||||||
|
|
||||||
if(selectedOrders != null && selectedOrders.size() > 1){
|
if(!allMatch) {
|
||||||
for (OrdineVenditaGroupedInevasoDTO selectedOrder : selectedOrders) {
|
Stream.of(selectedOrders)
|
||||||
if(!dto.getCodAnagClie().equalsIgnoreCase(selectedOrder.codAnagClie)) {
|
.filter(x -> !x.getCodAnagOrd().equalsIgnoreCase(x.getCodAnagOrd()))
|
||||||
Stream.of(selectedOrder.ordini).forEach(x -> x.setCheckbox(false));
|
.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) {
|
if(selectedOrders != null && selectedOrders.size() > 0) {
|
||||||
mBinding.venditaMainFab.show();
|
mBinding.venditaMainFab.show();
|
||||||
}
|
}
|
||||||
@ -302,40 +311,20 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IS
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
private RunnableArgs<OrdineVenditaGroupedInevasoDTO> onGroupSelectionChanged = dto -> {
|
|
||||||
List<OrdineVenditaGroupedInevasoDTO> 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)
|
@OnClick(R.id.vendita_main_fab)
|
||||||
public void onClick(View view) {
|
public void onClick(View view) {
|
||||||
|
|
||||||
List<OrdineVenditaGroupedInevasoDTO> selectedOrders = mHelper.getSelectedOrders(groupedOrdiniInevasi);
|
List<OrdineVenditaInevasoDTO> selectedOrders = mHelper.getSelectedOrders(mOriginalOrderList);
|
||||||
List<String> barcodes = new ArrayList<>();
|
List<String> barcodes = new ArrayList<>();
|
||||||
|
|
||||||
String dataCons = null;
|
String dataCons = null;
|
||||||
|
|
||||||
for(OrdineVenditaGroupedInevasoDTO ordine : selectedOrders){
|
for(OrdineVenditaInevasoDTO ordine : selectedOrders){
|
||||||
for(OrdineVenditaGroupedInevasoDTO.Ordine righeOrd : ordine.ordini){
|
if(!barcodes.contains(ordine.getBarcode())) barcodes.add(ordine.getBarcode());
|
||||||
if(!barcodes.contains(righeOrd.getBarcode())) barcodes.add(righeOrd.getBarcode());
|
|
||||||
|
|
||||||
if(dataCons == null) dataCons = righeOrd.getDataConsS();
|
if(dataCons == null) dataCons = ordine.getDataConsS();
|
||||||
else if(!dataCons.equalsIgnoreCase(righeOrd.getDataConsS())) dataCons = "";
|
else if(!dataCons.equalsIgnoreCase(ordine.getDataConsS())) dataCons = "";
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
final ProgressDialog progress = ProgressDialog.show(getActivity(), getText(R.string.waiting),
|
final ProgressDialog progress = ProgressDialog.show(getActivity(), getText(R.string.waiting),
|
||||||
@ -407,12 +396,12 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IS
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onSelectAll() {
|
public void onSelectAll() {
|
||||||
if(groupedOrdiniInevasi != null && groupedOrdiniInevasi.size() > 0) {
|
if(mRenderedOrderList != null && mRenderedOrderList.size() > 0) {
|
||||||
if(mHelper.getSelectedOrders(groupedOrdiniInevasi).size() > 0){
|
if(mHelper.getSelectedOrders(mRenderedOrderList).size() > 0){
|
||||||
mHelper.deselectAll(groupedOrdiniInevasi);
|
mHelper.deselectAll(mRenderedOrderList);
|
||||||
} else {
|
} else {
|
||||||
//Selezionare solo quelli attualmente a video
|
//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){
|
if(filteredOrderList != null){
|
||||||
|
|
||||||
groupOrdini(filteredOrderList);
|
refreshOrdini(filteredOrderList);
|
||||||
refreshRecyclerView();
|
refreshRecyclerView();
|
||||||
}
|
}
|
||||||
|
|
||||||
}).show();
|
}).show();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void checkSelectedOrders(List<OrdineVenditaGroupedInevasoDTO> selectedOrders, Runnable onComplete, Runnable onFailed) {
|
private void checkSelectedOrders(List<OrdineVenditaInevasoDTO> selectedOrders, Runnable onComplete, Runnable onFailed) {
|
||||||
if(selectedOrders != null && selectedOrders.size() > 0) {
|
if(selectedOrders != null && selectedOrders.size() > 0) {
|
||||||
List<OrdineVenditaGroupedInevasoDTO.Ordine> flatOrderArray = new ArrayList<>();
|
|
||||||
|
|
||||||
Stream.of(selectedOrders).forEach(x -> flatOrderArray.addAll(x.ordini));
|
|
||||||
|
|
||||||
//Definizione della gestione collo di default
|
//Definizione della gestione collo di default
|
||||||
List<GestioneEnum> foundGestioni = Stream.of(flatOrderArray)
|
List<GestioneEnum> foundGestioni = Stream.of(selectedOrders)
|
||||||
.map(OrdineVenditaGroupedInevasoDTO.Ordine::getGestioneEnum)
|
.map(OrdineVenditaInevasoDTO::getGestioneEnum)
|
||||||
.withoutNulls()
|
.withoutNulls()
|
||||||
.distinctBy(x -> x)
|
.distinctBy(x -> x)
|
||||||
.toList();
|
.toList();
|
||||||
@ -454,8 +440,8 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IS
|
|||||||
}
|
}
|
||||||
|
|
||||||
//Definizione del deposito di default
|
//Definizione del deposito di default
|
||||||
List<String> foundCodMdep = Stream.of(flatOrderArray)
|
List<String> foundCodMdep = Stream.of(selectedOrders)
|
||||||
.map(OrdineVenditaGroupedInevasoDTO.Ordine::getCodMdep)
|
.map(OrdineVenditaInevasoDTO::getCodMdep)
|
||||||
.withoutNulls()
|
.withoutNulls()
|
||||||
.distinctBy(x -> x)
|
.distinctBy(x -> x)
|
||||||
.toList();
|
.toList();
|
||||||
@ -471,7 +457,7 @@ public class MainVenditaFragment extends Fragment implements ITitledFragment, IS
|
|||||||
onComplete.run();
|
onComplete.run();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void startVenditaActivity(List<PickingObjectDTO> ordini, List<OrdineVenditaGroupedInevasoDTO> selectedOrders, List<MtbColt> mtbColtList) {
|
private void startVenditaActivity(List<PickingObjectDTO> ordini, List<OrdineVenditaInevasoDTO> selectedOrders, List<MtbColt> mtbColtList) {
|
||||||
Intent myIntent = new Intent(getActivity(), VenditaOrdineInevasoActivity.class);
|
Intent myIntent = new Intent(getActivity(), VenditaOrdineInevasoActivity.class);
|
||||||
|
|
||||||
String keyPickingList = DataCache.addItem(ordini);
|
String keyPickingList = DataCache.addItem(ordini);
|
||||||
|
|||||||
@ -2,8 +2,6 @@ package it.integry.integrywmsnative.gest.vendita.core;
|
|||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
|
||||||
import androidx.core.content.ContextCompat;
|
|
||||||
import androidx.core.content.res.ResourcesCompat;
|
|
||||||
import androidx.core.util.Pools;
|
import androidx.core.util.Pools;
|
||||||
import androidx.recyclerview.widget.RecyclerView;
|
import androidx.recyclerview.widget.RecyclerView;
|
||||||
|
|
||||||
@ -12,8 +10,6 @@ import android.text.Html;
|
|||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
import android.widget.CheckBox;
|
|
||||||
import android.widget.CompoundButton;
|
|
||||||
import android.widget.LinearLayout;
|
import android.widget.LinearLayout;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
@ -23,7 +19,6 @@ import java.util.List;
|
|||||||
import it.integry.integrywmsnative.R;
|
import it.integry.integrywmsnative.R;
|
||||||
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityDate;
|
import it.integry.integrywmsnative.core.utility.UtilityDate;
|
||||||
import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaGroupedInevasoDTO;
|
|
||||||
|
|
||||||
public class MainListVenditaAdapter extends RecyclerView.Adapter<MainListVenditaAdapter.ViewHolder> {
|
public class MainListVenditaAdapter extends RecyclerView.Adapter<MainListVenditaAdapter.ViewHolder> {
|
||||||
|
|
||||||
@ -105,6 +100,11 @@ public class MainListVenditaAdapter extends RecyclerView.Adapter<MainListVendita
|
|||||||
mOnGroupSelected.run(mDataset.get(finalPosition));
|
mOnGroupSelected.run(mDataset.get(finalPosition));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
// final View existColloView = ordineView.findViewById(R.id.exist_collo);
|
||||||
|
|
||||||
|
// existColloView.setAlpha(ordine.isExistCollo() ? 1 : 0);
|
||||||
|
|
||||||
for (int i = 0; i < subGroup.size(); i++) {
|
for (int i = 0; i < subGroup.size(); i++) {
|
||||||
final OrdineVenditaGroupedInevasoDTO.Ordine ordine = subGroup.get(i);
|
final OrdineVenditaGroupedInevasoDTO.Ordine ordine = subGroup.get(i);
|
||||||
|
|
||||||
@ -119,6 +119,11 @@ public class MainListVenditaAdapter extends RecyclerView.Adapter<MainListVendita
|
|||||||
View ordineView = groupModelViewPool;
|
View ordineView = groupModelViewPool;
|
||||||
holder.views.add(ordineView);
|
holder.views.add(ordineView);
|
||||||
|
|
||||||
|
View emptyView = groupModelViewPool.findViewById(R.id.empty_view);
|
||||||
|
emptyView.setBackgroundColor(Color.GREEN);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
ordineView.setVisibility(View.VISIBLE);
|
ordineView.setVisibility(View.VISIBLE);
|
||||||
|
|
||||||
@ -128,22 +133,23 @@ public class MainListVenditaAdapter extends RecyclerView.Adapter<MainListVendita
|
|||||||
ordineView.setBackgroundColor(mContext.getResources().getColor(R.color.white));
|
ordineView.setBackgroundColor(mContext.getResources().getColor(R.color.white));
|
||||||
}
|
}
|
||||||
|
|
||||||
final CheckBox checkBox = ordineView.findViewById(R.id.vendita_main_list_group_item_container_checkBox);
|
// final CheckBox checkBox = ordineView.findViewById(R.id.vendita_main_list_group_item_container_checkBox);
|
||||||
checkBox.setChecked(ordine.checkBox);
|
// checkBox.setChecked(ordine.checkBox);
|
||||||
|
//
|
||||||
checkBox.setOnCheckedChangeListener((buttonView, isChecked) -> {
|
// 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();
|
// ordine.checkBox = checkBox.isChecked();
|
||||||
//mOnGroupSelected.run(mDataset.get(finalPosition));
|
// 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);
|
TextView testataOrdTextView = ordineView.findViewById(R.id.vendita_main_list_group_item_container_testata_ord);
|
||||||
@ -154,6 +160,7 @@ public class MainListVenditaAdapter extends RecyclerView.Adapter<MainListVendita
|
|||||||
String testataDataConsString = String.format(mContext.getString(R.string.ord_ven_testata_data_cons), UtilityDate.formatDate(ordine.getDataConsD(), UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN));
|
String testataDataConsString = String.format(mContext.getString(R.string.ord_ven_testata_data_cons), UtilityDate.formatDate(ordine.getDataConsD(), UtilityDate.COMMONS_DATE_FORMATS.DMY_HUMAN));
|
||||||
testataDataConsTextView.setText(Html.fromHtml(testataDataConsString));
|
testataDataConsTextView.setText(Html.fromHtml(testataDataConsString));
|
||||||
|
|
||||||
|
/*
|
||||||
LinearLayout clientLinearLayout = ordineView.findViewById(R.id.vendita_main_list_group_item_container_clienti_ord);
|
LinearLayout clientLinearLayout = ordineView.findViewById(R.id.vendita_main_list_group_item_container_clienti_ord);
|
||||||
List<OrdineVenditaGroupedInevasoDTO.Cliente> subGroupClienti = ordine.clienti;
|
List<OrdineVenditaGroupedInevasoDTO.Cliente> subGroupClienti = ordine.clienti;
|
||||||
|
|
||||||
@ -184,9 +191,18 @@ public class MainListVenditaAdapter extends RecyclerView.Adapter<MainListVendita
|
|||||||
// }
|
// }
|
||||||
|
|
||||||
clientLinearLayout.addView(groupClienteModelView);
|
clientLinearLayout.addView(groupClienteModelView);
|
||||||
}
|
}*/
|
||||||
|
|
||||||
holder.mLinearLayoutGroupItemContainer.addView(ordineView);
|
holder.mLinearLayoutGroupItemContainer.addView(ordineView);
|
||||||
|
|
||||||
|
|
||||||
|
// Gets the layout params that will allow you to resize the layout
|
||||||
|
ViewGroup.LayoutParams params = emptyView.getLayoutParams();
|
||||||
|
// Changes the height and width to the specified *pixels*
|
||||||
|
params.height = holder.itemView.getHeight();
|
||||||
|
emptyView.setLayoutParams(params);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -198,7 +214,7 @@ public class MainListVenditaAdapter extends RecyclerView.Adapter<MainListVendita
|
|||||||
if(holder != null){
|
if(holder != null){
|
||||||
for(int i = 0; i < holder.views.size(); i++){
|
for(int i = 0; i < holder.views.size(); i++){
|
||||||
View groupModelView = holder.views.get(i);
|
View groupModelView = holder.views.get(i);
|
||||||
|
/*
|
||||||
LinearLayout clientLinearLayout = groupModelView.findViewById(R.id.vendita_main_list_group_item_container_clienti_ord);
|
LinearLayout clientLinearLayout = groupModelView.findViewById(R.id.vendita_main_list_group_item_container_clienti_ord);
|
||||||
|
|
||||||
for(int k = 0; k < clientLinearLayout.getChildCount(); k++){
|
for(int k = 0; k < clientLinearLayout.getChildCount(); k++){
|
||||||
@ -206,7 +222,7 @@ public class MainListVenditaAdapter extends RecyclerView.Adapter<MainListVendita
|
|||||||
((ViewGroup) cliente.getParent()).removeView(cliente);
|
((ViewGroup) cliente.getParent()).removeView(cliente);
|
||||||
|
|
||||||
sPoolClienti.release(cliente);
|
sPoolClienti.release(cliente);
|
||||||
}
|
}*/
|
||||||
|
|
||||||
((ViewGroup) groupModelView.getParent()).removeView(groupModelView);
|
((ViewGroup) groupModelView.getParent()).removeView(groupModelView);
|
||||||
sPool.release(groupModelView);
|
sPool.release(groupModelView);
|
||||||
|
|||||||
@ -0,0 +1,248 @@
|
|||||||
|
package it.integry.integrywmsnative.gest.vendita.core;
|
||||||
|
|
||||||
|
import android.content.Context;
|
||||||
|
import android.text.Html;
|
||||||
|
import android.view.LayoutInflater;
|
||||||
|
import android.view.ViewGroup;
|
||||||
|
|
||||||
|
import androidx.core.content.res.ResourcesCompat;
|
||||||
|
import androidx.databinding.DataBindingUtil;
|
||||||
|
import androidx.databinding.Observable;
|
||||||
|
import androidx.recyclerview.widget.RecyclerView;
|
||||||
|
|
||||||
|
import com.annimon.stream.Stream;
|
||||||
|
import com.zhukic.sectionedrecyclerview.SectionedRecyclerViewAdapter;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import it.integry.integrywmsnative.R;
|
||||||
|
import it.integry.integrywmsnative.core.di.BindableBoolean;
|
||||||
|
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||||
|
import it.integry.integrywmsnative.core.utility.UtilityDate;
|
||||||
|
import it.integry.integrywmsnative.databinding.VenditaMainListGroupModelBinding;
|
||||||
|
import it.integry.integrywmsnative.databinding.VenditaMainListModelBinding;
|
||||||
|
import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaInevasoDTO;
|
||||||
|
import it.integry.integrywmsnative.ui.fastscroll.SectionTitleProvider;
|
||||||
|
|
||||||
|
public class MainListVenditaAdapterNew extends SectionedRecyclerViewAdapter<MainListVenditaAdapterNew.SubheaderHolder, MainListVenditaAdapterNew.SingleItemViewHolder> implements SectionTitleProvider {
|
||||||
|
|
||||||
|
private Context mContext;
|
||||||
|
|
||||||
|
private HashMap<BindableBoolean, Observable.OnPropertyChangedCallback> mCallbacksDictionary = new HashMap<>();
|
||||||
|
|
||||||
|
private List<OrdineVenditaInevasoDTO> mDataset;
|
||||||
|
private RunnableArgs<OrdineVenditaInevasoDTO> 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<OrdineVenditaInevasoDTO> myDataset, RunnableArgs<OrdineVenditaInevasoDTO> onSingleSelectionChanged) {
|
||||||
|
mContext = context;
|
||||||
|
mDataset = orderItems(myDataset);
|
||||||
|
mOnSingleSelectionChanged = onSingleSelectionChanged;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void updateItems(List<OrdineVenditaInevasoDTO> updatedDataset) {
|
||||||
|
mDataset.clear();
|
||||||
|
mDataset.addAll(orderItems(updatedDataset));
|
||||||
|
notifyDataSetChanged();
|
||||||
|
notifyDataChanged();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private List<OrdineVenditaInevasoDTO> orderItems(List<OrdineVenditaInevasoDTO> 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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -4,6 +4,7 @@ import android.content.Context;
|
|||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
|
import com.annimon.stream.Stream;
|
||||||
import com.google.firebase.perf.metrics.Trace;
|
import com.google.firebase.perf.metrics.Trace;
|
||||||
import com.google.gson.reflect.TypeToken;
|
import com.google.gson.reflect.TypeToken;
|
||||||
|
|
||||||
@ -11,7 +12,6 @@ import java.lang.reflect.Type;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import it.integry.integrywmsnative.core.CommonConst;
|
|
||||||
import it.integry.integrywmsnative.core.REST.RESTBuilder;
|
import it.integry.integrywmsnative.core.REST.RESTBuilder;
|
||||||
import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback;
|
import it.integry.integrywmsnative.core.REST.consumers.ISimpleOperationCallback;
|
||||||
import it.integry.integrywmsnative.core.REST.consumers.SystemRESTConsumer;
|
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.REST.model.ServiceRESTResponse;
|
||||||
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||||
import it.integry.integrywmsnative.core.model.DtbOrdt;
|
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.MtbColt;
|
||||||
import it.integry.integrywmsnative.core.model.secondary.GestioneEnum;
|
import it.integry.integrywmsnative.core.model.secondary.GestioneEnum;
|
||||||
import it.integry.integrywmsnative.core.settings.SettingsManager;
|
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.UtilityDate;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityFirebase;
|
import it.integry.integrywmsnative.core.utility.UtilityFirebase;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityLogger;
|
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.OrdineVenditaInevasoDTO;
|
||||||
import it.integry.integrywmsnative.gest.vendita.dto.PickingObjectDTO;
|
import it.integry.integrywmsnative.gest.vendita.dto.PickingObjectDTO;
|
||||||
import it.integry.integrywmsnative.gest.vendita.rest.OrdiniVenditaRESTConsumerService;
|
import it.integry.integrywmsnative.gest.vendita.rest.OrdiniVenditaRESTConsumerService;
|
||||||
@ -139,7 +137,7 @@ public class VenditaHelper {
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
public void getBancaliVenditaGiaRegistrati(List<OrdineVenditaGroupedInevasoDTO> orders, RunnableArgs<List<MtbColt>> onComplete, RunnableArgs<Exception> onFailed) {
|
public void getBancaliVenditaGiaRegistrati(List<OrdineVenditaInevasoDTO> orders, RunnableArgs<List<MtbColt>> onComplete, RunnableArgs<Exception> onFailed) {
|
||||||
|
|
||||||
String baseSql = "SELECT DISTINCT mtb_colt.* " +
|
String baseSql = "SELECT DISTINCT mtb_colt.* " +
|
||||||
"FROM mtb_colt, " +
|
"FROM mtb_colt, " +
|
||||||
@ -156,21 +154,15 @@ public class VenditaHelper {
|
|||||||
|
|
||||||
for(int i = 0; i < orders.size(); i++){
|
for(int i = 0; i < orders.size(); i++){
|
||||||
|
|
||||||
List<OrdineVenditaGroupedInevasoDTO.Ordine> currentOrders = orders.get(i).ordini;
|
|
||||||
|
|
||||||
for(int j = 0; j < currentOrders.size(); j++){
|
|
||||||
|
|
||||||
whereCond
|
whereCond
|
||||||
.append("(mtb_colr.data_ord = '").append(UtilityDate.formatDate(currentOrders.get(j).getData(), UtilityDate.COMMONS_DATE_FORMATS.YMD_SLASH)).append("' ")
|
.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(currentOrders.get(j).getNumero()).append(" ")
|
.append("AND mtb_colr.num_ord = ").append(orders.get(i).getNumOrd()).append(" ")
|
||||||
.append("AND mtb_colr.gestione = ").append(UtilityDB.valueToString(currentOrders.get(j).getGestione()))
|
.append("AND mtb_colr.gestione = ").append(UtilityDB.valueToString(orders.get(i).getGestione()))
|
||||||
.append(") ");
|
.append(") ");
|
||||||
|
|
||||||
if(i != (orders.size() - 1)){
|
if(i != (orders.size() - 1)){
|
||||||
whereCond.append("OR ");
|
whereCond.append("OR ");
|
||||||
} else if(j != (currentOrders.size() - 1)) {
|
|
||||||
whereCond.append("OR ");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -241,47 +233,49 @@ public class VenditaHelper {
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
public List<OrdineVenditaGroupedInevasoDTO> getSelectedOrders(List<OrdineVenditaGroupedInevasoDTO> groupedOrdiniInevasi){
|
public List<OrdineVenditaInevasoDTO> getSelectedOrders(List<OrdineVenditaInevasoDTO> ordiniList){
|
||||||
List<OrdineVenditaGroupedInevasoDTO> selectedOrdini = new ArrayList<>();
|
// List<OrdineVenditaInevasoDTO> selectedOrdini = new ArrayList<>();
|
||||||
|
|
||||||
for(int i = 0; i < groupedOrdiniInevasi.size(); i++){
|
return Stream.of(ordiniList)
|
||||||
List<OrdineVenditaGroupedInevasoDTO.Ordine> selectedOrdiniGroup = new ArrayList<>();
|
.filter(OrdineVenditaInevasoDTO::isSelected)
|
||||||
|
.toList();
|
||||||
|
|
||||||
for(int j = 0; j < groupedOrdiniInevasi.get(i).ordini.size(); j++){
|
// for(int i = 0; i < groupedOrdiniInevasi.size(); i++){
|
||||||
if(groupedOrdiniInevasi.get(i).ordini.get(j).checkBox) {
|
// List<OrdineVenditaInevasoDTO> selectedOrdiniGroup = new ArrayList<>();
|
||||||
selectedOrdiniGroup.add(groupedOrdiniInevasi.get(i).ordini.get(j));
|
//
|
||||||
}
|
// //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) {
|
// return selectedOrdini;
|
||||||
try {
|
|
||||||
OrdineVenditaGroupedInevasoDTO cloneOrdine = groupedOrdiniInevasi.get(i).clone();
|
|
||||||
cloneOrdine.ordini = selectedOrdiniGroup;
|
|
||||||
selectedOrdini.add(cloneOrdine);
|
|
||||||
} catch (CloneNotSupportedException e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return selectedOrdini;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public void selectAll(List<OrdineVenditaGroupedInevasoDTO> groupedOrdiniInevasi) {
|
public void selectAll(List<OrdineVenditaInevasoDTO> groupedOrdiniInevasi) {
|
||||||
toggleSelection(groupedOrdiniInevasi, true);
|
toggleSelection(groupedOrdiniInevasi, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void deselectAll(List<OrdineVenditaGroupedInevasoDTO> groupedOrdiniInevasi) {
|
public void deselectAll(List<OrdineVenditaInevasoDTO> groupedOrdiniInevasi) {
|
||||||
toggleSelection(groupedOrdiniInevasi, false);
|
toggleSelection(groupedOrdiniInevasi, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void toggleSelection(List<OrdineVenditaGroupedInevasoDTO> groupedOrdiniInevasi, boolean value) {
|
public void toggleSelection(List<OrdineVenditaInevasoDTO> groupedOrdiniInevasi, boolean value) {
|
||||||
for(int i = 0; i < groupedOrdiniInevasi.size(); i++){
|
for(int i = 0; i < groupedOrdiniInevasi.size(); i++){
|
||||||
for(int j = 0; j < groupedOrdiniInevasi.get(i).ordini.size(); j++){
|
groupedOrdiniInevasi.get(i).setSelected(value);
|
||||||
groupedOrdiniInevasi.get(i).ordini.get(j).setCheckbox(value);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -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<Ordine> 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<Cliente> clienti;
|
|
||||||
|
|
||||||
public boolean checkBox;
|
|
||||||
public List<ICheckBoxCallback> 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<Cliente> getClienti() {
|
|
||||||
return clienti;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Ordine setClienti(List<Cliente> 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<Ordine> CREATOR = new Parcelable.Creator<Ordine>() {
|
|
||||||
@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<Cliente> CREATOR = new Parcelable.Creator<Cliente>() {
|
|
||||||
@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<OrdineVenditaGroupedInevasoDTO> CREATOR = new Parcelable.Creator<OrdineVenditaGroupedInevasoDTO>() {
|
|
||||||
@Override
|
|
||||||
public OrdineVenditaGroupedInevasoDTO createFromParcel(Parcel in) {
|
|
||||||
return new OrdineVenditaGroupedInevasoDTO(in);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public OrdineVenditaGroupedInevasoDTO[] newArray(int size) {
|
|
||||||
return new OrdineVenditaGroupedInevasoDTO[size];
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -8,6 +8,8 @@ import java.text.ParseException;
|
|||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.Date;
|
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;
|
import it.integry.integrywmsnative.core.utility.UtilityLogger;
|
||||||
|
|
||||||
public class OrdineVenditaInevasoDTO implements Parcelable {
|
public class OrdineVenditaInevasoDTO implements Parcelable {
|
||||||
@ -47,6 +49,12 @@ public class OrdineVenditaInevasoDTO implements Parcelable {
|
|||||||
private int colliRiservati;
|
private int colliRiservati;
|
||||||
private String existCollo;
|
private String existCollo;
|
||||||
|
|
||||||
|
public BindableBoolean selected;
|
||||||
|
|
||||||
|
|
||||||
|
public OrdineVenditaInevasoDTO() {
|
||||||
|
this.selected = new BindableBoolean(false);
|
||||||
|
}
|
||||||
|
|
||||||
protected OrdineVenditaInevasoDTO(Parcel in) {
|
protected OrdineVenditaInevasoDTO(Parcel in) {
|
||||||
data = in.readString();
|
data = in.readString();
|
||||||
@ -91,6 +99,8 @@ public class OrdineVenditaInevasoDTO implements Parcelable {
|
|||||||
ragSocOrdV = in.readString();
|
ragSocOrdV = in.readString();
|
||||||
colliRiservati = in.readInt();
|
colliRiservati = in.readInt();
|
||||||
existCollo = in.readString();
|
existCollo = in.readString();
|
||||||
|
|
||||||
|
selected = new BindableBoolean(in.readByte() == 0x01);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -140,6 +150,8 @@ public class OrdineVenditaInevasoDTO implements Parcelable {
|
|||||||
dest.writeString(ragSocOrdV);
|
dest.writeString(ragSocOrdV);
|
||||||
dest.writeInt(colliRiservati);
|
dest.writeInt(colliRiservati);
|
||||||
dest.writeString(existCollo);
|
dest.writeString(existCollo);
|
||||||
|
|
||||||
|
dest.writeByte(selected.get() ? (byte) 1 : (byte) 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -163,9 +175,14 @@ public class OrdineVenditaInevasoDTO implements Parcelable {
|
|||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Date getDataOrdD() throws ParseException {
|
public Date getDataOrdD() {
|
||||||
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
|
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
|
||||||
|
try {
|
||||||
return sdf.parse(getDataOrdS());
|
return sdf.parse(getDataOrdS());
|
||||||
|
} catch (ParseException e) {
|
||||||
|
UtilityLogger.errorMe(e);
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public OrdineVenditaInevasoDTO setData(String data) {
|
public OrdineVenditaInevasoDTO setData(String data) {
|
||||||
@ -186,6 +203,11 @@ public class OrdineVenditaInevasoDTO implements Parcelable {
|
|||||||
return gestione;
|
return gestione;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public GestioneEnum getGestioneEnum() {
|
||||||
|
return GestioneEnum.fromString(getGestione());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public OrdineVenditaInevasoDTO setGestione(String gestione) {
|
public OrdineVenditaInevasoDTO setGestione(String gestione) {
|
||||||
this.gestione = gestione;
|
this.gestione = gestione;
|
||||||
return this;
|
return this;
|
||||||
@ -488,4 +510,33 @@ public class OrdineVenditaInevasoDTO implements Parcelable {
|
|||||||
this.existCollo = existCollo;
|
this.existCollo = existCollo;
|
||||||
return this;
|
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;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -120,7 +120,7 @@ public class VenditaViewModel {
|
|||||||
List<OrdineVenditaInevasoDTO> filteredOrders = Stream.of(mOrdini)
|
List<OrdineVenditaInevasoDTO> filteredOrders = Stream.of(mOrdini)
|
||||||
.filter(x -> numOrds.contains(x.getNumOrd())).toList();
|
.filter(x -> numOrds.contains(x.getNumOrd())).toList();
|
||||||
|
|
||||||
mFragment.groupOrdini(filteredOrders);
|
mFragment.refreshOrdini(filteredOrders);
|
||||||
mFragment.refreshRecyclerView();
|
mFragment.refreshRecyclerView();
|
||||||
} else {
|
} else {
|
||||||
showNoOrderFound();
|
showNoOrderFound();
|
||||||
|
|||||||
@ -19,7 +19,7 @@ import it.integry.integrywmsnative.core.utility.UtilityExceptions;
|
|||||||
import it.integry.integrywmsnative.databinding.ActivityVenditaOrdineInevasoBinding;
|
import it.integry.integrywmsnative.databinding.ActivityVenditaOrdineInevasoBinding;
|
||||||
import it.integry.integrywmsnative.databinding.FragmentArticoliInColloBottomSheetBinding;
|
import it.integry.integrywmsnative.databinding.FragmentArticoliInColloBottomSheetBinding;
|
||||||
import it.integry.integrywmsnative.gest.lista_bancali.ListaBancaliActivity;
|
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.dto.PickingObjectDTO;
|
||||||
import it.integry.integrywmsnative.gest.vendita_ordine_inevaso.viewmodel.VenditaOrdineInevasoViewModel;
|
import it.integry.integrywmsnative.gest.vendita_ordine_inevaso.viewmodel.VenditaOrdineInevasoViewModel;
|
||||||
import it.integry.integrywmsnative.view.bottomsheet.viewmodel.ArticoliInColloBottomSheetViewModel;
|
import it.integry.integrywmsnative.view.bottomsheet.viewmodel.ArticoliInColloBottomSheetViewModel;
|
||||||
@ -45,7 +45,7 @@ public class VenditaOrdineInevasoActivity extends AppCompatActivity {
|
|||||||
mArticoliInColloBottomSheetViewModel = new ArticoliInColloBottomSheetViewModel(this, bindings);
|
mArticoliInColloBottomSheetViewModel = new ArticoliInColloBottomSheetViewModel(this, bindings);
|
||||||
|
|
||||||
ArrayList<PickingObjectDTO> pickingList = DataCache.retrieveItem(getIntent().getStringExtra("keyPickingList"));
|
ArrayList<PickingObjectDTO> pickingList = DataCache.retrieveItem(getIntent().getStringExtra("keyPickingList"));
|
||||||
ArrayList<OrdineVenditaGroupedInevasoDTO> testateOrdini = DataCache.retrieveItem(getIntent().getStringExtra("keyTestateOrdini"));
|
ArrayList<OrdineVenditaInevasoDTO> testateOrdini = DataCache.retrieveItem(getIntent().getStringExtra("keyTestateOrdini"));
|
||||||
ArrayList<MtbColt> colliRegistrati = DataCache.retrieveItem(getIntent().getStringExtra("keyColliRegistrati"));
|
ArrayList<MtbColt> colliRegistrati = DataCache.retrieveItem(getIntent().getStringExtra("keyColliRegistrati"));
|
||||||
mVenditaOrdineInevasoViewModel = new VenditaOrdineInevasoViewModel(
|
mVenditaOrdineInevasoViewModel = new VenditaOrdineInevasoViewModel(
|
||||||
this, mBindings, mArticoliInColloBottomSheetViewModel, pickingList, testateOrdini, colliRegistrati);
|
this, mBindings, mArticoliInColloBottomSheetViewModel, pickingList, testateOrdini, colliRegistrati);
|
||||||
|
|||||||
@ -52,7 +52,7 @@ import it.integry.integrywmsnative.core.utility.UtilityPosizione;
|
|||||||
import it.integry.integrywmsnative.core.utility.UtilityProgress;
|
import it.integry.integrywmsnative.core.utility.UtilityProgress;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityString;
|
import it.integry.integrywmsnative.core.utility.UtilityString;
|
||||||
import it.integry.integrywmsnative.databinding.ActivityVenditaOrdineInevasoBinding;
|
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.dto.PickingObjectDTO;
|
||||||
import it.integry.integrywmsnative.gest.vendita_ordine_inevaso.VenditaOrdineInevasoActivity;
|
import it.integry.integrywmsnative.gest.vendita_ordine_inevaso.VenditaOrdineInevasoActivity;
|
||||||
import it.integry.integrywmsnative.gest.vendita_ordine_inevaso.core.VenditaOrdineInevasoHelper;
|
import it.integry.integrywmsnative.gest.vendita_ordine_inevaso.core.VenditaOrdineInevasoHelper;
|
||||||
@ -81,7 +81,7 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
|
|||||||
|
|
||||||
private final List<PickingObjectDTO> mPickingList;
|
private final List<PickingObjectDTO> mPickingList;
|
||||||
private List<List<PickingObjectDTO>> mGroupedPickingList;
|
private List<List<PickingObjectDTO>> mGroupedPickingList;
|
||||||
private final List<OrdineVenditaGroupedInevasoDTO> mTestateOrdini;
|
private final List<OrdineVenditaInevasoDTO> mTestateOrdini;
|
||||||
private final List<MtbColt> mColliRegistrati;
|
private final List<MtbColt> mColliRegistrati;
|
||||||
|
|
||||||
private VenditaOrdineInevasoHelper mHelper;
|
private VenditaOrdineInevasoHelper mHelper;
|
||||||
@ -98,7 +98,7 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
|
|||||||
|
|
||||||
private Integer mtbColtSessionID = null;
|
private Integer mtbColtSessionID = null;
|
||||||
|
|
||||||
public VenditaOrdineInevasoViewModel(VenditaOrdineInevasoActivity activity, ActivityVenditaOrdineInevasoBinding bindings, ArticoliInColloBottomSheetViewModel articoliInColloBottomSheetViewModel, List<PickingObjectDTO> pickingList, List<OrdineVenditaGroupedInevasoDTO> orders, List<MtbColt> colliRegistrati) {
|
public VenditaOrdineInevasoViewModel(VenditaOrdineInevasoActivity activity, ActivityVenditaOrdineInevasoBinding bindings, ArticoliInColloBottomSheetViewModel articoliInColloBottomSheetViewModel, List<PickingObjectDTO> pickingList, List<OrdineVenditaInevasoDTO> orders, List<MtbColt> colliRegistrati) {
|
||||||
this.mActivity = activity;
|
this.mActivity = activity;
|
||||||
this.mBindings = bindings;
|
this.mBindings = bindings;
|
||||||
this.mArticoliInColloBottomSheetViewModel = articoliInColloBottomSheetViewModel;
|
this.mArticoliInColloBottomSheetViewModel = articoliInColloBottomSheetViewModel;
|
||||||
@ -157,13 +157,10 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
|
|||||||
|
|
||||||
private void initDatiPicking() {
|
private void initDatiPicking() {
|
||||||
if(this.mTestateOrdini != null && this.mTestateOrdini.size() > 0){
|
if(this.mTestateOrdini != null && this.mTestateOrdini.size() > 0){
|
||||||
List<OrdineVenditaGroupedInevasoDTO.Ordine> flatOrderArray = new ArrayList<>();
|
|
||||||
|
|
||||||
Stream.of(this.mTestateOrdini).forEach(x -> flatOrderArray.addAll(x.ordini));
|
|
||||||
|
|
||||||
//Definizione della gestione collo di default
|
//Definizione della gestione collo di default
|
||||||
List<GestioneEnum> foundGestioni = Stream.of(flatOrderArray)
|
List<GestioneEnum> foundGestioni = Stream.of(mTestateOrdini)
|
||||||
.map(OrdineVenditaGroupedInevasoDTO.Ordine::getGestioneEnum)
|
.map(OrdineVenditaInevasoDTO::getGestioneEnum)
|
||||||
.withoutNulls()
|
.withoutNulls()
|
||||||
.distinctBy(x -> x)
|
.distinctBy(x -> x)
|
||||||
.toList();
|
.toList();
|
||||||
@ -180,8 +177,8 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
|
|||||||
}
|
}
|
||||||
|
|
||||||
//Definizione del deposito di default
|
//Definizione del deposito di default
|
||||||
List<String> foundCodMdep = Stream.of(flatOrderArray)
|
List<String> foundCodMdep = Stream.of(mTestateOrdini)
|
||||||
.map(OrdineVenditaGroupedInevasoDTO.Ordine::getCodMdep)
|
.map(OrdineVenditaInevasoDTO::getCodMdep)
|
||||||
.withoutNulls()
|
.withoutNulls()
|
||||||
.distinctBy(x -> x)
|
.distinctBy(x -> x)
|
||||||
.toList();
|
.toList();
|
||||||
@ -200,18 +197,20 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
|
|||||||
|
|
||||||
|
|
||||||
//Definizione del filtro ordine da applicare a tutti i colli generati
|
//Definizione del filtro ordine da applicare a tutti i colli generati
|
||||||
Stream.of(flatOrderArray).forEach(x -> {
|
Stream.of(mTestateOrdini).forEach(x -> {
|
||||||
defaultFiltroOrdine.add(new FiltroOrdineDTO()
|
FiltroOrdineDTO filtro = new FiltroOrdineDTO()
|
||||||
.setDataOrd(x.getData())
|
.setDataOrd(x.getDataOrdD())
|
||||||
.setNumOrd(x.getNumero())
|
.setNumOrd(x.getNumOrd())
|
||||||
.setGestioneOrd(x.getGestione()));
|
.setGestioneOrd(x.getGestione());
|
||||||
|
|
||||||
|
if(defaultFiltroOrdine.contains(filtro)) defaultFiltroOrdine.add(filtro);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//Definizione del codAnag
|
//Definizione del codAnag
|
||||||
List<String> foundCodAnag = Stream.of(flatOrderArray)
|
List<String> foundCodAnag = Stream.of(mTestateOrdini)
|
||||||
.map(OrdineVenditaGroupedInevasoDTO.Ordine::getCodAnagOrd)
|
.map(OrdineVenditaInevasoDTO::getCodAnagOrd)
|
||||||
.withoutNulls()
|
.withoutNulls()
|
||||||
.distinctBy(x -> x)
|
.distinctBy(x -> x)
|
||||||
.toList();
|
.toList();
|
||||||
@ -222,8 +221,8 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
|
|||||||
|
|
||||||
|
|
||||||
//Definizione del rifOrd
|
//Definizione del rifOrd
|
||||||
List<String> foundRifOrd = Stream.of(flatOrderArray)
|
List<String> foundRifOrd = Stream.of(mTestateOrdini)
|
||||||
.map(OrdineVenditaGroupedInevasoDTO.Ordine::getRifOrd)
|
.map(OrdineVenditaInevasoDTO::getRifOrd)
|
||||||
.withoutNulls()
|
.withoutNulls()
|
||||||
.distinctBy(x -> x)
|
.distinctBy(x -> x)
|
||||||
.toList();
|
.toList();
|
||||||
@ -234,8 +233,8 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
|
|||||||
|
|
||||||
|
|
||||||
//Definizione del numOrd
|
//Definizione del numOrd
|
||||||
List<Integer> foundNumOrd = Stream.of(flatOrderArray)
|
List<Integer> foundNumOrd = Stream.of(mTestateOrdini)
|
||||||
.map(OrdineVenditaGroupedInevasoDTO.Ordine::getNumero)
|
.map(OrdineVenditaInevasoDTO::getNumOrd)
|
||||||
.withoutNulls()
|
.withoutNulls()
|
||||||
.distinctBy(x -> x)
|
.distinctBy(x -> x)
|
||||||
.toList();
|
.toList();
|
||||||
@ -246,8 +245,8 @@ public class VenditaOrdineInevasoViewModel implements IOnColloClosedCallback, IO
|
|||||||
|
|
||||||
|
|
||||||
//Definizione del dataOrd
|
//Definizione del dataOrd
|
||||||
List<Date> foundDataOrd = Stream.of(flatOrderArray)
|
List<Date> foundDataOrd = Stream.of(mTestateOrdini)
|
||||||
.map(OrdineVenditaGroupedInevasoDTO.Ordine::getData)
|
.map(OrdineVenditaInevasoDTO::getDataOrdD)
|
||||||
.withoutNulls()
|
.withoutNulls()
|
||||||
.distinctBy(x -> x)
|
.distinctBy(x -> x)
|
||||||
.toList();
|
.toList();
|
||||||
|
|||||||
@ -429,51 +429,51 @@
|
|||||||
</RelativeLayout>
|
</RelativeLayout>
|
||||||
|
|
||||||
|
|
||||||
<!--<RelativeLayout-->
|
<RelativeLayout
|
||||||
<!--android:id="@+id/fast_button_resi_clienti"-->
|
android:id="@+id/fast_button_resi_clienti"
|
||||||
<!--android:layout_width="0dp"-->
|
android:layout_width="0dp"
|
||||||
<!--android:layout_height="wrap_content"-->
|
android:layout_height="wrap_content"
|
||||||
<!--app:layout_constraintTop_toBottomOf="@id/fast_button_versamento"-->
|
app:layout_constraintTop_toBottomOf="@id/fast_button_versamento"
|
||||||
<!--app:layout_constraintStart_toEndOf="@id/guide_1"-->
|
app:layout_constraintStart_toEndOf="@id/guide_1"
|
||||||
<!--app:layout_constraintEnd_toEndOf="parent">-->
|
app:layout_constraintEnd_toEndOf="parent">
|
||||||
|
|
||||||
<!--<com.google.android.material.card.MaterialCardView-->
|
<com.google.android.material.card.MaterialCardView
|
||||||
<!--style="@style/Widget.MaterialComponents.CardView"-->
|
style="@style/Widget.MaterialComponents.CardView"
|
||||||
<!--android:layout_width="match_parent"-->
|
android:layout_width="match_parent"
|
||||||
<!--android:layout_height="wrap_content"-->
|
android:layout_height="wrap_content"
|
||||||
<!--android:layout_margin="8dp"-->
|
android:layout_margin="8dp"
|
||||||
<!--app:cardBackgroundColor="@android:color/white"-->
|
app:cardBackgroundColor="@android:color/white"
|
||||||
<!--app:cardCornerRadius="4dp">-->
|
app:cardCornerRadius="4dp">
|
||||||
|
|
||||||
|
|
||||||
<!--<LinearLayout-->
|
<LinearLayout
|
||||||
<!--android:layout_width="match_parent"-->
|
android:layout_width="match_parent"
|
||||||
<!--android:layout_height="wrap_content"-->
|
android:layout_height="wrap_content"
|
||||||
<!--android:gravity="center_horizontal"-->
|
android:gravity="center_horizontal"
|
||||||
<!--android:orientation="vertical"-->
|
android:orientation="vertical"
|
||||||
<!--android:padding="8dp">-->
|
android:padding="8dp">
|
||||||
|
|
||||||
<!--<ImageView-->
|
<ImageView
|
||||||
<!--android:layout_width="64sp"-->
|
android:layout_width="64sp"
|
||||||
<!--android:layout_height="wrap_content"-->
|
android:layout_height="wrap_content"
|
||||||
<!--android:adjustViewBounds="true"-->
|
android:adjustViewBounds="true"
|
||||||
<!--android:src="@drawable/ic_latest_delivery" />-->
|
android:src="@drawable/ic_latest_delivery" />
|
||||||
|
|
||||||
|
|
||||||
<!--<androidx.appcompat.widget.AppCompatTextView-->
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
<!--android:layout_width="wrap_content"-->
|
android:layout_width="wrap_content"
|
||||||
<!--android:layout_height="wrap_content"-->
|
android:layout_height="wrap_content"
|
||||||
<!--android:layout_marginTop="16dp"-->
|
android:layout_marginTop="16dp"
|
||||||
<!--android:gravity="center_horizontal"-->
|
android:gravity="center_horizontal"
|
||||||
<!--android:text="@string/fragment_ultime_consegne_cliente_title"-->
|
android:text="@string/fragment_ultime_consegne_cliente_title"
|
||||||
<!--android:textAllCaps="true"-->
|
android:textAllCaps="true"
|
||||||
<!--android:textColor="@color/gray_700"-->
|
android:textColor="@color/gray_700"
|
||||||
<!--android:textStyle="bold" />-->
|
android:textStyle="bold" />
|
||||||
|
|
||||||
<!--</LinearLayout>-->
|
</LinearLayout>
|
||||||
<!--</com.google.android.material.card.MaterialCardView>-->
|
</com.google.android.material.card.MaterialCardView>
|
||||||
|
|
||||||
<!--</RelativeLayout>-->
|
</RelativeLayout>
|
||||||
|
|
||||||
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|||||||
@ -1,21 +1,46 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<layout xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||||
|
<data>
|
||||||
|
<import type="it.integry.integrywmsnative.R" />
|
||||||
|
<variable
|
||||||
|
name="checkboxValue"
|
||||||
|
type="it.integry.integrywmsnative.core.di.BindableBoolean" />
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</data>
|
||||||
|
|
||||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:padding="8dp">
|
android:paddingStart="8dp"
|
||||||
|
android:paddingEnd="4dp">
|
||||||
|
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/vendita_main_list_group_item_container_root"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:paddingStart="2dp"
|
||||||
|
android:paddingEnd="8dp"
|
||||||
|
android:paddingTop="8dp"
|
||||||
|
android:paddingBottom="8dp"
|
||||||
|
android:layout_toEndOf="@id/empty_view"
|
||||||
|
android:background="@color/full_white">
|
||||||
|
|
||||||
|
|
||||||
<CheckBox
|
<CheckBox
|
||||||
android:id="@+id/vendita_main_list_group_item_container_checkBox"
|
android:id="@+id/vendita_main_list_group_item_container_checkBox"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content" />
|
android:layout_height="wrap_content"
|
||||||
|
android:background="@android:color/transparent" />
|
||||||
|
|
||||||
<RelativeLayout
|
<RelativeLayout
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_toRightOf="@id/vendita_main_list_group_item_container_checkBox"
|
android:layout_alignParentEnd="true"
|
||||||
android:layout_alignParentEnd="true">
|
android:layout_toEndOf="@id/vendita_main_list_group_item_container_checkBox">
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/vendita_main_list_group_item_container_testata_data_cons"
|
android:id="@+id/vendita_main_list_group_item_container_testata_data_cons"
|
||||||
@ -33,20 +58,32 @@
|
|||||||
android:ellipsize="end"
|
android:ellipsize="end"
|
||||||
android:maxLines="1"
|
android:maxLines="1"
|
||||||
android:textColor="#000"
|
android:textColor="#000"
|
||||||
android:layout_alignParentLeft="true"
|
android:layout_alignParentStart="true"
|
||||||
android:layout_toLeftOf="@id/vendita_main_list_group_item_container_testata_data_cons"/>
|
android:layout_toStartOf="@id/vendita_main_list_group_item_container_testata_data_cons"/>
|
||||||
|
|
||||||
|
|
||||||
<LinearLayout
|
<TextView
|
||||||
android:id="@+id/vendita_main_list_group_item_container_clienti_ord"
|
android:id="@+id/vendita_main_list_group_item_container_detail_ord"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_below="@+id/vendita_main_list_group_item_container_testata_ord"
|
android:maxLines="1"
|
||||||
android:orientation="vertical">
|
android:ellipsize="end"
|
||||||
</LinearLayout>
|
android:paddingEnd="6dp"
|
||||||
|
android:text="TextView"
|
||||||
|
android:layout_below="@+id/vendita_main_list_group_item_container_testata_ord" />
|
||||||
|
|
||||||
|
</RelativeLayout>
|
||||||
|
</RelativeLayout>
|
||||||
|
|
||||||
|
<View
|
||||||
|
android:id="@+id/empty_view"
|
||||||
|
android:layout_width="8dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_alignTop="@id/vendita_main_list_group_item_container_root"
|
||||||
|
android:layout_alignBottom="@id/vendita_main_list_group_item_container_root"/>
|
||||||
|
|
||||||
|
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
||||||
|
|
||||||
|
|
||||||
|
</layout>
|
||||||
|
|
||||||
</RelativeLayout>
|
|
||||||
@ -1,3 +1,4 @@
|
|||||||
|
<layout>
|
||||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:card_view="http://schemas.android.com/apk/res-auto"
|
xmlns:card_view="http://schemas.android.com/apk/res-auto"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
@ -59,3 +60,5 @@
|
|||||||
</androidx.cardview.widget.CardView>
|
</androidx.cardview.widget.CardView>
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
</layout>
|
||||||
|
|||||||
@ -25,6 +25,7 @@
|
|||||||
|
|
||||||
|
|
||||||
<color name="bg_checked_layout">#E8F0FE</color>
|
<color name="bg_checked_layout">#E8F0FE</color>
|
||||||
|
<color name="bg_checked_layout_dark">#C9D5F0</color>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -10,13 +10,13 @@ import it.integry.integrywmsnative.core.model.MtbColt;
|
|||||||
import it.integry.integrywmsnative.core.settings.SettingsManager;
|
import it.integry.integrywmsnative.core.settings.SettingsManager;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityToast;
|
import it.integry.integrywmsnative.core.utility.UtilityToast;
|
||||||
import it.integry.integrywmsnative.core.class_router.interfaces.IOrdiniVendita;
|
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 {
|
public class OrdiniVendita implements IOrdiniVendita {
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void distribuisciCollo(ProgressDialog progress, MtbColt mtbColt, List<OrdineVenditaGroupedInevasoDTO> testateOrdini, RunnableArgs<List<MtbColt>> onComplete, RunnableArgs<Exception> onFailed) {
|
public void distribuisciCollo(ProgressDialog progress, MtbColt mtbColt, List<OrdineVenditaInevasoDTO> testateOrdini, RunnableArgs<List<MtbColt>> onComplete, RunnableArgs<Exception> onFailed) {
|
||||||
UtilityToast.showToast("Avviato metodo in BaseFeature");
|
UtilityToast.showToast("Avviato metodo in BaseFeature");
|
||||||
|
|
||||||
ColliMagazzinoRESTConsumer.distribuisciCollo(mtbColt, SettingsManager.iDB().getDefaultCriterioDistribuzione(),
|
ColliMagazzinoRESTConsumer.distribuisciCollo(mtbColt, SettingsManager.iDB().getDefaultCriterioDistribuzione(),
|
||||||
|
|||||||
@ -10,13 +10,13 @@ import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
|||||||
import it.integry.integrywmsnative.core.model.MtbColt;
|
import it.integry.integrywmsnative.core.model.MtbColt;
|
||||||
import it.integry.integrywmsnative.core.settings.SettingsManager;
|
import it.integry.integrywmsnative.core.settings.SettingsManager;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityToast;
|
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 {
|
public class OrdiniVendita implements IOrdiniVendita {
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void distribuisciCollo(ProgressDialog progress, MtbColt mtbColt, List<OrdineVenditaGroupedInevasoDTO> testateOrdini, RunnableArgs<List<MtbColt>> onComplete, RunnableArgs<Exception> onFailed) {
|
public void distribuisciCollo(ProgressDialog progress, MtbColt mtbColt, List<OrdineVenditaInevasoDTO> testateOrdini, RunnableArgs<List<MtbColt>> onComplete, RunnableArgs<Exception> onFailed) {
|
||||||
UtilityToast.showToast("Avviato metodo in BaseFeature");
|
UtilityToast.showToast("Avviato metodo in BaseFeature");
|
||||||
|
|
||||||
ColliMagazzinoRESTConsumer.distribuisciCollo(mtbColt, SettingsManager.iDB().getDefaultCriterioDistribuzione(),
|
ColliMagazzinoRESTConsumer.distribuisciCollo(mtbColt, SettingsManager.iDB().getDefaultCriterioDistribuzione(),
|
||||||
|
|||||||
@ -11,14 +11,14 @@ import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
|||||||
import it.integry.integrywmsnative.core.model.MtbColt;
|
import it.integry.integrywmsnative.core.model.MtbColt;
|
||||||
import it.integry.integrywmsnative.core.settings.SettingsManager;
|
import it.integry.integrywmsnative.core.settings.SettingsManager;
|
||||||
import it.integry.integrywmsnative.core.utility.UtilityString;
|
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 {
|
public class OrdiniVendita implements IOrdiniVendita {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void distribuisciCollo(ProgressDialog progress, MtbColt mtbColt, List<OrdineVenditaGroupedInevasoDTO> testateOrdini, RunnableArgs<List<MtbColt>> onComplete, RunnableArgs<Exception> onFailed) {
|
public void distribuisciCollo(ProgressDialog progress, MtbColt mtbColt, List<OrdineVenditaInevasoDTO> testateOrdini, RunnableArgs<List<MtbColt>> onComplete, RunnableArgs<Exception> 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
|
//Se il deposito del collo è diverso dal deposito dell'utente allora sto "evadendo" la merce per una vendita presente
|
||||||
//su un altro deposito
|
//su un altro deposito
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user