From 8ad044a1b1e5999f8b62936b4e48848ac6cfe3c6 Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Mon, 7 Oct 2019 15:35:08 +0200 Subject: [PATCH 1/4] [FEAT] Aggiunto in Accettazione da produzione il codice commessa affianco al rif ord e relativo filtro per la ricerca --- .idea/caches/build_file_checksums.ser | Bin 1020 -> 1020 bytes .../integrywmsnative/MainActivity.java | 4 +- .../core/utility/UtilityLogger.java | 20 +- .../core/utility/UtilityResources.java | 34 ++ .../dto/OrdineAccettazioneInevasoDTO.java | 2 +- .../ProdOrdineProduzioneElencoFragment.java | 37 ++- .../core/OrdineProduzioneHelper.java | 2 +- .../core/OrdineProduzioneListAdapter.java | 20 +- .../DialogOrdineProduzioneFiltroAvanzato.java | 224 +++++++++++++ .../ProdOrdineLavorazioneElencoFragment.java | 7 +- .../core/ProdOrdineLavorazioneHelper.java | 2 +- .../ProdOrdineLavorazioneListAdapter.java | 12 +- .../dialogs/DialogVenditaFiltroAvanzato.java | 1 + ...alog_ordine_produzione_filtro_avanzato.xml | 143 ++++++++ app/src/main/res/layout/fragment_main.xml | 9 +- .../fragment_main_menu_group_layout.xml | 2 +- .../layout/fragment_main_menu_item_layout.xml | 3 +- ...d_ordine_lavorazione__list_group_model.xml | 29 +- ...nt_prod_ordine_lavorazione__list_model.xml | 4 +- ..._ordine_produzione__list_group_clienti.xml | 12 +- ...od_ordine_produzione__list_group_model.xml | 7 +- ...ent_prod_ordine_produzione__list_model.xml | 4 +- ...fragment_prod_ordine_produzione_elenco.xml | 4 +- app/src/main/res/raw/error_mail.html | 312 +++++++++++++++--- app/src/main/res/values-it/strings.xml | 1 + app/src/main/res/values/strings.xml | 1 + build.gradle | 2 +- 27 files changed, 788 insertions(+), 110 deletions(-) rename app/src/main/java/it/integry/integrywmsnative/gest/{prod_ord_produzione => prod_accettazione_ord_produzione}/ProdOrdineProduzioneElencoFragment.java (87%) rename app/src/main/java/it/integry/integrywmsnative/gest/{prod_ord_produzione => prod_accettazione_ord_produzione}/core/OrdineProduzioneHelper.java (98%) rename app/src/main/java/it/integry/integrywmsnative/gest/{prod_ord_produzione => prod_accettazione_ord_produzione}/core/OrdineProduzioneListAdapter.java (91%) create mode 100644 app/src/main/java/it/integry/integrywmsnative/gest/prod_accettazione_ord_produzione/dialog/DialogOrdineProduzioneFiltroAvanzato.java rename app/src/main/java/it/integry/integrywmsnative/gest/{prod_ord_lavorazione => prod_pick_ord_lavorazione}/ProdOrdineLavorazioneElencoFragment.java (97%) rename app/src/main/java/it/integry/integrywmsnative/gest/{prod_ord_lavorazione => prod_pick_ord_lavorazione}/core/ProdOrdineLavorazioneHelper.java (99%) rename app/src/main/java/it/integry/integrywmsnative/gest/{prod_ord_lavorazione => prod_pick_ord_lavorazione}/core/ProdOrdineLavorazioneListAdapter.java (94%) create mode 100644 app/src/main/res/layout/dialog_ordine_produzione_filtro_avanzato.xml diff --git a/.idea/caches/build_file_checksums.ser b/.idea/caches/build_file_checksums.ser index eb9829d322a4de3d2fe8c744f9f1dafd4e099d98..8e5603b5021d049c6963afb2642417e5062129da 100644 GIT binary patch delta 36 ucmV+<0Nelk2mA++m;{xw-psL_c>)k+{}0Hx0yo)8xPx!sKpA3_B?H$^mk}WV delta 36 ucmV+<0Nelk2mA++m;{i;n0m3Cc>)kLfi=|oe=_x!ewCHr!QLX1B?H$@U=l(A diff --git a/app/src/main/java/it/integry/integrywmsnative/MainActivity.java b/app/src/main/java/it/integry/integrywmsnative/MainActivity.java index 5d951475..6157c161 100644 --- a/app/src/main/java/it/integry/integrywmsnative/MainActivity.java +++ b/app/src/main/java/it/integry/integrywmsnative/MainActivity.java @@ -37,8 +37,8 @@ import it.integry.integrywmsnative.core.interfaces.ITitledFragment; import it.integry.integrywmsnative.gest.login.LoginActivity; import it.integry.integrywmsnative.gest.main.MainFragment; import it.integry.integrywmsnative.gest.picking_libero.PickingLiberoFragment; -import it.integry.integrywmsnative.gest.prod_ord_lavorazione.ProdOrdineLavorazioneElencoFragment; -import it.integry.integrywmsnative.gest.prod_ord_produzione.ProdOrdineProduzioneElencoFragment; +import it.integry.integrywmsnative.gest.prod_pick_ord_lavorazione.ProdOrdineLavorazioneElencoFragment; +import it.integry.integrywmsnative.gest.prod_accettazione_ord_produzione.ProdOrdineProduzioneElencoFragment; import it.integry.integrywmsnative.gest.prod_recupero_materiale.ProdRecuperoMaterialeFragment; import it.integry.integrywmsnative.gest.prod_versamento_materiale.ProdVersamentoMaterialeFragment; import it.integry.integrywmsnative.gest.rettifica_giacenze.RettificaGiacenzeFragment; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityLogger.java b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityLogger.java index 7622df95..8abd1bb0 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityLogger.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityLogger.java @@ -42,18 +42,28 @@ public class UtilityLogger { String message = UtilityResources.readRawTextFile(R.raw.error_mail); - message = message.replace("#exception_name#", ex.getMessage()); + message = message.replace("__APP_NAME__", UtilityResources.getString(R.string.app_name)); + message = message.replace("__APP_PACKAGE__", UtilityResources.getPackageName()); + + String appVersion = UtilityResources.getAppVersion(); + message = message.replace("__APP_VERSION__", appVersion == null ? "" : appVersion); + message = message.replace("__APP_VERSION_CODE__", "" + UtilityResources.getAppVersionCode()); + + + message = message.replaceAll("__ERROR_TITLE__", ex.getMessage()); + + message = message.replaceAll("__ERROR_DETAIL__", additionalText == null ? "" : additionalText); + StringWriter sw = new StringWriter(); ex.printStackTrace(new PrintWriter(sw)); - if (additionalText != null) sw.append("\n").append(additionalText); - message = message.replace("#stacktrace#", sw.toString()); + message = message.replace("__ERROR_STACKTRACE__", sw.toString()); String currentAzienda = UtilityString.isNullOrEmpty(SettingsManager.i().userSession.profileDB) ? "" : SettingsManager.i().userSession.profileDB; - message = message.replace("#azienda_nome#", currentAzienda); + message = message.replace("__CUSTOMER_NAME__", currentAzienda); - message = message.replace("#current_date#", UtilityDate.formatDate(UtilityDate.getDateInstance(), UtilityDate.COMMONS_DATE_FORMATS.DMY_TIME_SLASH)); + message = message.replace("__ERROR_DATE__", UtilityDate.formatDate(UtilityDate.getDateInstance(), UtilityDate.COMMONS_DATE_FORMATS.DMY_TIME_SLASH)); SystemRESTConsumer.sendErrorLogMail(message, onComplete, onFailed); } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityResources.java b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityResources.java index 05743354..bf222acf 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityResources.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/utility/UtilityResources.java @@ -1,7 +1,11 @@ package it.integry.integrywmsnative.core.utility; import android.content.Context; +import android.content.pm.PackageInfo; +import android.content.pm.PackageManager; + import androidx.annotation.RawRes; +import androidx.annotation.StringRes; import java.io.BufferedReader; import java.io.IOException; @@ -35,4 +39,34 @@ public class UtilityResources { return text.toString(); } + public static String getString(@StringRes int resId) { + return mContext.getResources().getString(resId); + } + + public static String getPackageName() { + return mContext.getApplicationContext().getPackageName(); + } + + public static String getAppVersion() { + PackageInfo pInfo = null; + try { + pInfo = mContext.getPackageManager().getPackageInfo(getPackageName(), 0); + return pInfo.versionName; + } catch (PackageManager.NameNotFoundException e) { + e.printStackTrace(); + } + return null; + } + + public static int getAppVersionCode() { + PackageInfo pInfo = null; + try { + pInfo = mContext.getPackageManager().getPackageInfo(getPackageName(), 0); + return pInfo.versionCode; + } catch (PackageManager.NameNotFoundException e) { + e.printStackTrace(); + } + return 0; + } + } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/dto/OrdineAccettazioneInevasoDTO.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/dto/OrdineAccettazioneInevasoDTO.java index 57b3d6c1..4859eee2 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/dto/OrdineAccettazioneInevasoDTO.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione/dto/OrdineAccettazioneInevasoDTO.java @@ -57,7 +57,7 @@ public class OrdineAccettazioneInevasoDTO { return this; } - public int getNumero() { + public Integer getNumero() { return numero; } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_produzione/ProdOrdineProduzioneElencoFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/prod_accettazione_ord_produzione/ProdOrdineProduzioneElencoFragment.java similarity index 87% rename from app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_produzione/ProdOrdineProduzioneElencoFragment.java rename to app/src/main/java/it/integry/integrywmsnative/gest/prod_accettazione_ord_produzione/ProdOrdineProduzioneElencoFragment.java index 0c073caf..89a51d12 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_produzione/ProdOrdineProduzioneElencoFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/prod_accettazione_ord_produzione/ProdOrdineProduzioneElencoFragment.java @@ -1,8 +1,7 @@ -package it.integry.integrywmsnative.gest.prod_ord_produzione; +package it.integry.integrywmsnative.gest.prod_accettazione_ord_produzione; import android.app.Dialog; -import android.app.ProgressDialog; import android.content.Context; import android.content.Intent; import android.os.Bundle; @@ -26,6 +25,7 @@ import java.util.List; import java.util.concurrent.atomic.AtomicInteger; import it.integry.integrywmsnative.R; +import it.integry.integrywmsnative.core.interfaces.IFilterableFragment; import it.integry.integrywmsnative.core.rest.CommonRESTException; import it.integry.integrywmsnative.core.data_cache.DataCache; import it.integry.integrywmsnative.core.expansion.RunnableArgs; @@ -36,15 +36,16 @@ import it.integry.integrywmsnative.databinding.FragmentProdOrdineProduzioneElenc import it.integry.integrywmsnative.gest.accettazione.dto.OrdineAccettazioneDTO; import it.integry.integrywmsnative.gest.accettazione.dto.OrdineAccettazioneInevasoDTO; import it.integry.integrywmsnative.gest.accettazione_ordine_inevaso.AccettazioneOrdineInevasoActivity; -import it.integry.integrywmsnative.gest.prod_ord_produzione.core.OrdineProduzioneHelper; -import it.integry.integrywmsnative.gest.prod_ord_produzione.core.OrdineProduzioneListAdapter; +import it.integry.integrywmsnative.gest.prod_accettazione_ord_produzione.core.OrdineProduzioneHelper; +import it.integry.integrywmsnative.gest.prod_accettazione_ord_produzione.core.OrdineProduzioneListAdapter; +import it.integry.integrywmsnative.gest.prod_accettazione_ord_produzione.dialog.DialogOrdineProduzioneFiltroAvanzato; import it.integry.integrywmsnative.ui.ElevatedToolbar; import it.integry.integrywmsnative.view.dialogs.base.DialogSimpleMessageHelper; /** * A simple {@link Fragment} subclass. */ -public class ProdOrdineProduzioneElencoFragment extends Fragment implements ITitledFragment, IScrollableFragment { +public class ProdOrdineProduzioneElencoFragment extends Fragment implements ITitledFragment, IScrollableFragment, IFilterableFragment { private Runnable mOnPreDestroy; private ElevatedToolbar mToolbar; @@ -59,6 +60,9 @@ public class ProdOrdineProduzioneElencoFragment extends Fragment implements ITit private AppCompatTextView mAppBarTitle; + private DialogOrdineProduzioneFiltroAvanzato.DialogOrdineProduzioneFiltroAvanzatoViewModel mAppliedFilterViewModel; + + public ProdOrdineProduzioneElencoFragment() { // Required empty public constructor } @@ -237,4 +241,27 @@ public class ProdOrdineProduzioneElencoFragment extends Fragment implements ITit } + @Override + public void onFilterClick() { + + + DialogOrdineProduzioneFiltroAvanzato.make(getActivity(), mOriginalOrderList, mAppliedFilterViewModel, (filteredOrderList, filter) -> { + mAppliedFilterViewModel = filter; + + if(filteredOrderList != null){ + + refreshOrdini(filteredOrderList); + refreshRecyclerView(); + } + + }).show(); + } + + + + + public void refreshOrdini(List ordini){ + mRenderedOrderList.clear(); + mRenderedOrderList.addAll(ordini); + } } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_produzione/core/OrdineProduzioneHelper.java b/app/src/main/java/it/integry/integrywmsnative/gest/prod_accettazione_ord_produzione/core/OrdineProduzioneHelper.java similarity index 98% rename from app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_produzione/core/OrdineProduzioneHelper.java rename to app/src/main/java/it/integry/integrywmsnative/gest/prod_accettazione_ord_produzione/core/OrdineProduzioneHelper.java index 79f77cc6..485da4fa 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_produzione/core/OrdineProduzioneHelper.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/prod_accettazione_ord_produzione/core/OrdineProduzioneHelper.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.gest.prod_ord_produzione.core; +package it.integry.integrywmsnative.gest.prod_accettazione_ord_produzione.core; import android.content.Context; import android.text.TextUtils; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_produzione/core/OrdineProduzioneListAdapter.java b/app/src/main/java/it/integry/integrywmsnative/gest/prod_accettazione_ord_produzione/core/OrdineProduzioneListAdapter.java similarity index 91% rename from app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_produzione/core/OrdineProduzioneListAdapter.java rename to app/src/main/java/it/integry/integrywmsnative/gest/prod_accettazione_ord_produzione/core/OrdineProduzioneListAdapter.java index bd1336fb..07a2a7c4 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_produzione/core/OrdineProduzioneListAdapter.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/prod_accettazione_ord_produzione/core/OrdineProduzioneListAdapter.java @@ -1,11 +1,10 @@ -package it.integry.integrywmsnative.gest.prod_ord_produzione.core; +package it.integry.integrywmsnative.gest.prod_accettazione_ord_produzione.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; @@ -16,7 +15,6 @@ import com.zhukic.sectionedrecyclerview.SectionedRecyclerViewAdapter; import java.util.List; import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.CommonConst; import it.integry.integrywmsnative.core.di.BindableBoolean; import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.utility.UtilityDate; @@ -24,11 +22,7 @@ import it.integry.integrywmsnative.core.utility.UtilityString; import it.integry.integrywmsnative.databinding.FragmentProdOrdineProduzioneListGroupClientiBinding; import it.integry.integrywmsnative.databinding.FragmentProdOrdineProduzioneListGroupModelBinding; import it.integry.integrywmsnative.databinding.FragmentProdOrdineProduzioneListModelBinding; -import it.integry.integrywmsnative.databinding.VenditaMainListGroupModelBinding; -import it.integry.integrywmsnative.databinding.VenditaMainListModelBinding; import it.integry.integrywmsnative.gest.accettazione.dto.OrdineAccettazioneInevasoDTO; -import it.integry.integrywmsnative.gest.vendita.core.MainListVenditaAdapter; -import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaInevasoDTO; import it.integry.integrywmsnative.ui.fastscroll.SectionTitleProvider; public class OrdineProduzioneListAdapter extends SectionedRecyclerViewAdapter implements SectionTitleProvider { @@ -143,10 +137,14 @@ public class OrdineProduzioneListAdapter extends SectionedRecyclerViewAdapter, DialogOrdineProduzioneFiltroAvanzatoViewModel> currentOnFilterDone; + + private List currentOrderList; + private List currentFilteredOrderList; + + + private ArrayAdapter arrayAdapterNumOrds; + private ArrayAdapter arrayAdapterCodJcoms; + + private Predicate currentNumOrdsPredicate = null; + private Predicate currentCodJcomsPredicate = null; + + + + public static AlertDialog make(final Context context, + final List ordersList, + DialogOrdineProduzioneFiltroAvanzatoViewModel baseViewModel, + RunnableArgss, DialogOrdineProduzioneFiltroAvanzatoViewModel> onDismiss) { + return new DialogOrdineProduzioneFiltroAvanzato(context, ordersList, baseViewModel, onDismiss).currentAlert; + } + + + private DialogOrdineProduzioneFiltroAvanzato(final Context context, final List ordersList, DialogOrdineProduzioneFiltroAvanzatoViewModel baseViewModel, RunnableArgss, DialogOrdineProduzioneFiltroAvanzatoViewModel> onDismiss) { + currentContext = context; + currentOrderList = ordersList; + currentOnFilterDone = onDismiss; + + DialogOrdineProduzioneFiltroAvanzatoViewModel viewModel = baseViewModel != null ? baseViewModel : new DialogOrdineProduzioneFiltroAvanzatoViewModel(); + + LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); + + DialogOrdineProduzioneFiltroAvanzatoBinding binding = DataBindingUtil.inflate(inflater, R.layout.dialog_ordine_produzione_filtro_avanzato, null, false); + + final AlertDialog.Builder alertDialog = new AlertDialog.Builder(context) + .setView(binding.getRoot()); + + binding.setViewmodel(viewModel); + initViewModelNew(viewModel, binding); + initView(binding, viewModel); + + currentAlert = alertDialog.create(); + currentAlert.setCanceledOnTouchOutside(false); + + currentAlert.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); + currentAlert.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); + + binding.positiveBtn.setOnClickListener(view -> { + currentAlert.dismiss(); + }); + + binding.neutralBtn.setOnClickListener(view -> { + resetAll(viewModel); + }); + + + currentAlert.setOnDismissListener(dialogInterface -> { + if(currentOnFilterDone != null) currentOnFilterDone.run(currentFilteredOrderList, viewModel); + }); + + refreshList(); + + } + + private void resetAll(DialogOrdineProduzioneFiltroAvanzatoViewModel viewModel) { + viewModel.numOrds.set(null); + viewModel.codJcoms.set(null); + } + + private void initView(DialogOrdineProduzioneFiltroAvanzatoBinding bindings, DialogOrdineProduzioneFiltroAvanzatoViewModel viewModel) { + + arrayAdapterNumOrds = new ArrayAdapter(currentContext, R.layout.dialog_vendita_filtro_avanzato__single_item); + arrayAdapterNumOrds.addAll(getAvailableNumOrds(false)); + bindings.filledExposedDropdownNumOrds.setAdapter(arrayAdapterNumOrds); + bindings.filledExposedDropdownNumOrds.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer()); + + arrayAdapterCodJcoms = new ArrayAdapter(currentContext, R.layout.dialog_vendita_filtro_avanzato__single_item); + arrayAdapterCodJcoms.addAll(getAvailableCodJcoms(false)); + bindings.filledExposedDropdownCodJcoms.setAdapter(arrayAdapterCodJcoms); + bindings.filledExposedDropdownCodJcoms.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer()); + + + viewModel.numOrds.refresh(); + } + + + private void initViewModelNew(DialogOrdineProduzioneFiltroAvanzatoViewModel viewModel, DialogOrdineProduzioneFiltroAvanzatoBinding bindings) { + + + BindableString.registerListener(viewModel.numOrds, value -> { + if(UtilityString.isNullOrEmpty(value)) currentNumOrdsPredicate = null; + else { + String[] numOrdsSplitted = value.split("[,\\ ]"); + + try{ + List numOrdsInteger = Stream.of(numOrdsSplitted) + .filter(x -> !UtilityString.isNullOrEmpty(x)) + .map(Integer::parseInt).toList(); + + currentNumOrdsPredicate = o -> numOrdsInteger.contains(o.getNumero()); + } catch (NumberFormatException ex) { + currentNumOrdsPredicate = null; + } + } + + refreshList(); + + arrayAdapterCodJcoms.clear(); + arrayAdapterCodJcoms.addAll(getAvailableCodJcoms(true)); + }); + + + BindableString.registerListener(viewModel.codJcoms, value -> { + if(UtilityString.isNullOrEmpty(value)) currentCodJcomsPredicate = null; + else { + String[] codJcomsSplitted = value.split("[,\\ ]"); + + try{ + List codJcoms = Stream.of(codJcomsSplitted) + .filter(x -> !UtilityString.isNullOrEmpty(x)).toList(); + + currentCodJcomsPredicate = o -> codJcoms.contains(o.getCodJcom()); + } catch (NumberFormatException ex) { + currentCodJcomsPredicate = null; + } + } + + refreshList(); + + arrayAdapterNumOrds.clear(); + arrayAdapterNumOrds.addAll(getAvailableNumOrds(true)); + }); + + + + } + + + private List getAvailableNumOrds(boolean skipRecalc) { + if(currentCodJcomsPredicate == null){ + currentFilteredOrderList = currentOrderList; + } else + if(!skipRecalc){ + Stream tmpStream = Stream.of(currentOrderList) + .filter(x -> + (currentCodJcomsPredicate == null || (currentCodJcomsPredicate.test(x))) + ); + + currentFilteredOrderList = tmpStream.toList(); + } + + return Stream.of(currentFilteredOrderList).map(x -> x.getNumero().toString()).distinct().withoutNulls().toList(); + } + + + private List getAvailableCodJcoms(boolean skipRecalc) { + if(currentNumOrdsPredicate == null){ + currentFilteredOrderList = currentOrderList; + } else + if(!skipRecalc){ + Stream tmpStream = Stream.of(currentOrderList) + .filter(x -> + (currentNumOrdsPredicate == null || (currentNumOrdsPredicate.test(x))) + ); + + currentFilteredOrderList = tmpStream.toList(); + } + + return Stream.of(currentFilteredOrderList).map(OrdineAccettazioneInevasoDTO::getCodJcom).distinct().withoutNulls().toList(); + } + + + private void refreshList() { + + if (currentNumOrdsPredicate == null && currentCodJcomsPredicate == null) { + currentFilteredOrderList = currentOrderList; + } else { + Stream tmpStream = Stream.of(currentOrderList) + .filter(x -> + (currentNumOrdsPredicate == null || (currentNumOrdsPredicate.test(x))) && + (currentCodJcomsPredicate == null || (currentCodJcomsPredicate.test(x))) + ); + + currentFilteredOrderList = tmpStream.toList(); + } + } + + public class DialogOrdineProduzioneFiltroAvanzatoViewModel { + + public BindableString numOrds = new BindableString(); + public BindableString codJcoms = new BindableString(); + } + +} diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_lavorazione/ProdOrdineLavorazioneElencoFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/prod_pick_ord_lavorazione/ProdOrdineLavorazioneElencoFragment.java similarity index 97% rename from app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_lavorazione/ProdOrdineLavorazioneElencoFragment.java rename to app/src/main/java/it/integry/integrywmsnative/gest/prod_pick_ord_lavorazione/ProdOrdineLavorazioneElencoFragment.java index 0e5a9d1d..858e3042 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_lavorazione/ProdOrdineLavorazioneElencoFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/prod_pick_ord_lavorazione/ProdOrdineLavorazioneElencoFragment.java @@ -1,8 +1,7 @@ -package it.integry.integrywmsnative.gest.prod_ord_lavorazione; +package it.integry.integrywmsnative.gest.prod_pick_ord_lavorazione; import android.app.Dialog; -import android.app.ProgressDialog; import android.content.Context; import android.content.Intent; import android.os.Bundle; @@ -36,8 +35,8 @@ import it.integry.integrywmsnative.core.utility.UtilityExceptions; import it.integry.integrywmsnative.core.utility.UtilityProgress; import it.integry.integrywmsnative.core.utility.UtilityToast; import it.integry.integrywmsnative.databinding.FragmentProdOrdineLavorazioneElencoBinding; -import it.integry.integrywmsnative.gest.prod_ord_lavorazione.core.ProdOrdineLavorazioneHelper; -import it.integry.integrywmsnative.gest.prod_ord_lavorazione.core.ProdOrdineLavorazioneListAdapter; +import it.integry.integrywmsnative.gest.prod_pick_ord_lavorazione.core.ProdOrdineLavorazioneHelper; +import it.integry.integrywmsnative.gest.prod_pick_ord_lavorazione.core.ProdOrdineLavorazioneListAdapter; import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaInevasoDTO; import it.integry.integrywmsnative.gest.vendita.dto.PickingObjectDTO; import it.integry.integrywmsnative.gest.vendita_ordine_inevaso.VenditaOrdineInevasoActivity; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_lavorazione/core/ProdOrdineLavorazioneHelper.java b/app/src/main/java/it/integry/integrywmsnative/gest/prod_pick_ord_lavorazione/core/ProdOrdineLavorazioneHelper.java similarity index 99% rename from app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_lavorazione/core/ProdOrdineLavorazioneHelper.java rename to app/src/main/java/it/integry/integrywmsnative/gest/prod_pick_ord_lavorazione/core/ProdOrdineLavorazioneHelper.java index 5c44d1f2..d41ce461 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_lavorazione/core/ProdOrdineLavorazioneHelper.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/prod_pick_ord_lavorazione/core/ProdOrdineLavorazioneHelper.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.gest.prod_ord_lavorazione.core; +package it.integry.integrywmsnative.gest.prod_pick_ord_lavorazione.core; import android.content.Context; import android.text.TextUtils; diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_lavorazione/core/ProdOrdineLavorazioneListAdapter.java b/app/src/main/java/it/integry/integrywmsnative/gest/prod_pick_ord_lavorazione/core/ProdOrdineLavorazioneListAdapter.java similarity index 94% rename from app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_lavorazione/core/ProdOrdineLavorazioneListAdapter.java rename to app/src/main/java/it/integry/integrywmsnative/gest/prod_pick_ord_lavorazione/core/ProdOrdineLavorazioneListAdapter.java index 54bda350..20dfd3b6 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/prod_ord_lavorazione/core/ProdOrdineLavorazioneListAdapter.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/prod_pick_ord_lavorazione/core/ProdOrdineLavorazioneListAdapter.java @@ -1,11 +1,10 @@ -package it.integry.integrywmsnative.gest.prod_ord_lavorazione.core; +package it.integry.integrywmsnative.gest.prod_pick_ord_lavorazione.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; @@ -19,12 +18,9 @@ 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.core.utility.UtilityString; import it.integry.integrywmsnative.databinding.FragmentProdOrdineLavorazioneListGroupModelBinding; import it.integry.integrywmsnative.databinding.FragmentProdOrdineLavorazioneListModelBinding; -import it.integry.integrywmsnative.databinding.FragmentProdOrdineProduzioneListModelBinding; -import it.integry.integrywmsnative.databinding.VenditaMainListGroupModelBinding; -import it.integry.integrywmsnative.databinding.VenditaMainListModelBinding; -import it.integry.integrywmsnative.gest.vendita.core.MainListVenditaAdapter; import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaInevasoDTO; import it.integry.integrywmsnative.ui.fastscroll.SectionTitleProvider; @@ -128,6 +124,10 @@ public class ProdOrdineLavorazioneListAdapter extends SectionedRecyclerViewAdapt holder.binding.venditaMainListGroupItemContainerDetailOrd.setText(ordine.getRifOrd()); + if(!UtilityString.isNullOrEmpty(ordine.getCodJcom())) { +// holder.binding.ordineLavorazioneMainListGroupItemContainerTestataCodJcom.setText(ordine.getCodJcom()); + } + holder.binding.setCheckboxValue(ordine.selected); holder.binding.getRoot().setOnClickListener(v -> { diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dialogs/DialogVenditaFiltroAvanzato.java b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dialogs/DialogVenditaFiltroAvanzato.java index f905969e..6f05b426 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dialogs/DialogVenditaFiltroAvanzato.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/vendita/dialogs/DialogVenditaFiltroAvanzato.java @@ -204,6 +204,7 @@ public class DialogVenditaFiltroAvanzato { } + private void initViewModelNew(DialogVenditaFiltroAvanzatoViewModel viewModel, DialogVenditaFiltroAvanzatoBinding bindings) { BindableString.registerListener(viewModel.idViaggio, value -> { if(UtilityString.isNullOrEmpty(value)) currentIdViaggioPredicate = null; diff --git a/app/src/main/res/layout/dialog_ordine_produzione_filtro_avanzato.xml b/app/src/main/res/layout/dialog_ordine_produzione_filtro_avanzato.xml new file mode 100644 index 00000000..a2357605 --- /dev/null +++ b/app/src/main/res/layout/dialog_ordine_produzione_filtro_avanzato.xml @@ -0,0 +1,143 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_main.xml b/app/src/main/res/layout/fragment_main.xml index ce43d816..042748b4 100644 --- a/app/src/main/res/layout/fragment_main.xml +++ b/app/src/main/res/layout/fragment_main.xml @@ -36,11 +36,12 @@ android:paddingTop="12dp" android:paddingBottom="12dp"> - + android:textColor="@color/white" + style="@style/AppTheme.NewMaterial.Text.Small"/> @@ -152,7 +153,7 @@ android:layout_height="wrap_content" android:orientation="vertical"> - - - + android:textStyle="bold" + style="@style/AppTheme.NewMaterial.Text.Small"/> diff --git a/app/src/main/res/layout/fragment_prod_ordine_lavorazione__list_group_model.xml b/app/src/main/res/layout/fragment_prod_ordine_lavorazione__list_group_model.xml index 7984e941..65b6cd74 100644 --- a/app/src/main/res/layout/fragment_prod_ordine_lavorazione__list_group_model.xml +++ b/app/src/main/res/layout/fragment_prod_ordine_lavorazione__list_group_model.xml @@ -41,35 +41,48 @@ android:layout_alignParentEnd="true" android:layout_toEndOf="@id/ordine_lavorazione_main_list_group_item_container_checkBox"> - + android:textColor="#000" + style="@style/AppTheme.NewMaterial.Text.Small" /> - - + + + tools:text="TextView" + style="@style/AppTheme.NewMaterial.Text.Small" + android:layout_below="@+id/ordine_lavorazione_main_list_group_item_container_testata_ord" + android:layout_toStartOf="@id/ordine_lavorazione_main_list_group_item_container_testata_cod_jcom"/> diff --git a/app/src/main/res/layout/fragment_prod_ordine_lavorazione__list_model.xml b/app/src/main/res/layout/fragment_prod_ordine_lavorazione__list_model.xml index 8f909427..be1e852b 100644 --- a/app/src/main/res/layout/fragment_prod_ordine_lavorazione__list_model.xml +++ b/app/src/main/res/layout/fragment_prod_ordine_lavorazione__list_model.xml @@ -36,13 +36,13 @@ android:checked="true" android:enabled="false" /> - diff --git a/app/src/main/res/layout/fragment_prod_ordine_produzione__list_group_clienti.xml b/app/src/main/res/layout/fragment_prod_ordine_produzione__list_group_clienti.xml index 7bf0a50c..5db2422d 100644 --- a/app/src/main/res/layout/fragment_prod_ordine_produzione__list_group_clienti.xml +++ b/app/src/main/res/layout/fragment_prod_ordine_produzione__list_group_clienti.xml @@ -1,10 +1,10 @@ - + - + style="@style/AppTheme.NewMaterial.Text.Small" + tools:text="TextView" /> - + style="@style/AppTheme.NewMaterial.Text.Small" + tools:text="TextView" /> \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_prod_ordine_produzione__list_group_model.xml b/app/src/main/res/layout/fragment_prod_ordine_produzione__list_group_model.xml index ad62dfd5..bb58f3e2 100644 --- a/app/src/main/res/layout/fragment_prod_ordine_produzione__list_group_model.xml +++ b/app/src/main/res/layout/fragment_prod_ordine_produzione__list_group_model.xml @@ -29,12 +29,13 @@ android:layout_height="wrap_content" android:layout_toEndOf="@id/ordine_produzione_main_list_group_item_container_checkBox"> - + tools:text="Ord. Prod. 39 del 27 ott 2017" + android:textColor="#000" + style="@style/AppTheme.NewMaterial.Text.Small"/> - diff --git a/app/src/main/res/layout/fragment_prod_ordine_produzione_elenco.xml b/app/src/main/res/layout/fragment_prod_ordine_produzione_elenco.xml index 65baaedb..733cf4c7 100644 --- a/app/src/main/res/layout/fragment_prod_ordine_produzione_elenco.xml +++ b/app/src/main/res/layout/fragment_prod_ordine_produzione_elenco.xml @@ -4,7 +4,7 @@ - + + tools:context="it.integry.integrywmsnative.gest.prod_accettazione_ord_produzione.ProdOrdineProduzioneElencoFragment"> + + + - + .innertable { + width: 280px!important; + } + .heroimage { + width: 280px!important; + height: 100px!important; + } + .shadow { + width: 280px!important; + height: 4px!important; + } + .collapse-cell { + width: 320px!important; + } + .social-media img { + float: left!important; + margin: 0 1em 0 0 important; + } + } + - + - -
+
+ + + + + + +
-
+ - + -
+ + -

- Attenzione! -

-

- Si è verificato un errore con eccezione #exception_name#.
-

- Di seguito lo stacktrace dell'eccezione:
-
- #stacktrace# -


-

- (#azienda_nome#) -

+ -

- #current_date# -

+ + + + + + + + + + + +
+ + + + + + +
+
+ +
+
+
+ __APP_NAME__ + + ยท + __APP_PACKAGE__ v__APP_VERSION__ (__APP_VERSION_CODE__) +
Nuova segnalazione (__CUSTOMER_NAME__) +
+ +
+ + + + + + + + + + + + +
+
+ + + +
Dai forza! È stato riscontrato un problema fatale: __ERROR_TITLE__ +
+
+ __ERROR_DETAIL__ (__ERROR_DATE__) +
__ERROR_STACKTRACE__
+
+ +
+ +
+
+
+ Questa email è solo una notifica riguardo un errore che si è verificatosi in un progetto +
+ +
+
-
- + \ No newline at end of file diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index 696c3575..96028f11 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -175,6 +175,7 @@ Seleziona un fornitore prima Numero ordine + Commessa Cliente Destinatario Data consegna diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 156397c9..18d9559a 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -178,6 +178,7 @@ Orders number + Orders job Customer Recipient Ship date diff --git a/build.gradle b/build.gradle index acd5b390..9ceb8929 100644 --- a/build.gradle +++ b/build.gradle @@ -14,7 +14,7 @@ buildscript { google() } dependencies { - classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.android.tools.build:gradle:3.5.1' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath 'com.google.gms:google-services:4.2.0' classpath 'com.google.firebase:perf-plugin:1.2.1' From 5c2ca531e5be4b3b4250b3482a69e16273c4c145 Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Mon, 7 Oct 2019 15:48:53 +0200 Subject: [PATCH 2/4] [FEAT] Rinominate classi UltimeConsegneFornitori in UltimiArriviFornitori. [FEAT] Modificate stringhe di testo. --- .../integrywmsnative/MainActivity.java | 4 ++-- .../configs/MenuConfiguration.java | 2 +- .../picking_resi/PickingResiActivity.java | 9 +++++++- .../UltimiArriviFornitoreFragment.java} | 23 +++++++++---------- .../UltimiArriviFornitoreListAdapter.java} | 6 ++--- .../UltimiArriviFornitoreRESTConsumer.java} | 4 ++-- .../UltimeConsegneClienteFragment.java | 2 +- .../UltimeConsegneClienteViewModel.java | 3 ++- .../fragment_ultime_consegne_fornitore.xml | 4 ++-- .../main/res/menu/activity_main_drawer.xml | 2 +- app/src/main/res/values-it/strings.xml | 8 ++++--- app/src/main/res/values/strings.xml | 6 +++-- .../extensions/MenuConfigurationIME.java | 2 +- 13 files changed, 43 insertions(+), 32 deletions(-) rename app/src/main/java/it/integry/integrywmsnative/gest/{ultime_consegne_fornitore/UltimeConsegneFornitoreFragment.java => ultime_arrivi_fornitore/UltimiArriviFornitoreFragment.java} (81%) rename app/src/main/java/it/integry/integrywmsnative/gest/{ultime_consegne_fornitore/core/UltimeConsegneFornitoreListAdapter.java => ultime_arrivi_fornitore/core/UltimiArriviFornitoreListAdapter.java} (93%) rename app/src/main/java/it/integry/integrywmsnative/gest/{ultime_consegne_fornitore/rest/UltimeConsegneFornitoreRESTConsumer.java => ultime_arrivi_fornitore/rest/UltimiArriviFornitoreRESTConsumer.java} (93%) diff --git a/app/src/main/java/it/integry/integrywmsnative/MainActivity.java b/app/src/main/java/it/integry/integrywmsnative/MainActivity.java index 6157c161..18b580f8 100644 --- a/app/src/main/java/it/integry/integrywmsnative/MainActivity.java +++ b/app/src/main/java/it/integry/integrywmsnative/MainActivity.java @@ -43,8 +43,8 @@ import it.integry.integrywmsnative.gest.prod_recupero_materiale.ProdRecuperoMate import it.integry.integrywmsnative.gest.prod_versamento_materiale.ProdVersamentoMaterialeFragment; import it.integry.integrywmsnative.gest.rettifica_giacenze.RettificaGiacenzeFragment; import it.integry.integrywmsnative.gest.settings.MainSettingsFragment; +import it.integry.integrywmsnative.gest.ultime_arrivi_fornitore.UltimiArriviFornitoreFragment; import it.integry.integrywmsnative.gest.ultime_consegne_cliente.UltimeConsegneClienteFragment; -import it.integry.integrywmsnative.gest.ultime_consegne_fornitore.UltimeConsegneFornitoreFragment; import it.integry.integrywmsnative.gest.vendita.MainVenditaFragment; import it.integry.integrywmsnative.gest.versamento_merce.VersamentoMerceFragment; @@ -167,7 +167,7 @@ public class MainActivity extends AppCompatActivity break; case R.id.nav_resi_fornitore: - fragment = UltimeConsegneFornitoreFragment.newInstance(); + fragment = UltimiArriviFornitoreFragment.newInstance(); this.adaptViewToFragment(fragment); break; diff --git a/app/src/main/java/it/integry/integrywmsnative/core/class_router/configs/MenuConfiguration.java b/app/src/main/java/it/integry/integrywmsnative/core/class_router/configs/MenuConfiguration.java index 2990acee..313cb476 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/class_router/configs/MenuConfiguration.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/class_router/configs/MenuConfiguration.java @@ -20,7 +20,7 @@ public class MenuConfiguration extends BaseMenuConfiguration { .addItem(new MenuItem() .setID(R.id.nav_resi_fornitore) - .setTitleText(R.string.fragment_ultime_consegne_fornitore_title) + .setTitleText(R.string.fragment_ultime_arrivi_fornitore_title) .setTitleIcon(R.drawable.ic_latest_delivery)) ).addGroup( new MenuGroup() diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/PickingResiActivity.java b/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/PickingResiActivity.java index aee7b8d8..0ae26414 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/PickingResiActivity.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/PickingResiActivity.java @@ -65,14 +65,17 @@ public class PickingResiActivity extends AppCompatActivity implements IOnColloC private int barcodeScannerIstanceID = -1; + private String mActivityTitle; private String mDefaultGestioneOfUL; private String mDefaultCodAnagOfUL; private Integer mDefaultSegnoOfUL; - public static void startActivity(Context context, List documentoResoDTOList, Integer segno) { + + public static void startActivity(Context context, String activityTitle, List documentoResoDTOList, Integer segno) { String consegneCacheKey = DataCache.addItem(documentoResoDTOList); Intent intent = new Intent(context, PickingResiActivity.class); + intent.putExtra("activity_title", activityTitle); intent.putExtra("key", consegneCacheKey); intent.putExtra("segno", segno); context.startActivity(intent); @@ -95,6 +98,8 @@ public class PickingResiActivity extends AppCompatActivity implements IOnColloC mDocumentiResiList = DataCache.retrieveItem(getIntent().getStringExtra("key")); mDefaultSegnoOfUL = getIntent().getIntExtra("segno", +1); + mActivityTitle = getIntent().getStringExtra("activity_title"); + this.initView(); @@ -133,6 +138,8 @@ public class PickingResiActivity extends AppCompatActivity implements IOnColloC setSupportActionBar(this.mBinding.toolbar); getSupportActionBar().setDisplayHomeAsUpEnabled(true); + getSupportActionBar().setTitle(mActivityTitle); + this.mBinding.elevatedToolbar.setRecyclerView(this.mBinding.mainList); Dialog progressDialog = UtilityProgress.createDefaultProgressDialog(this); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_fornitore/UltimeConsegneFornitoreFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_arrivi_fornitore/UltimiArriviFornitoreFragment.java similarity index 81% rename from app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_fornitore/UltimeConsegneFornitoreFragment.java rename to app/src/main/java/it/integry/integrywmsnative/gest/ultime_arrivi_fornitore/UltimiArriviFornitoreFragment.java index 99f0d58e..2498b98e 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_fornitore/UltimeConsegneFornitoreFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_arrivi_fornitore/UltimiArriviFornitoreFragment.java @@ -1,8 +1,7 @@ -package it.integry.integrywmsnative.gest.ultime_consegne_fornitore; +package it.integry.integrywmsnative.gest.ultime_arrivi_fornitore; import android.app.Dialog; -import android.app.ProgressDialog; import android.content.Context; import android.os.Bundle; @@ -29,14 +28,14 @@ import it.integry.integrywmsnative.core.utility.UtilityExceptions; import it.integry.integrywmsnative.core.utility.UtilityProgress; import it.integry.integrywmsnative.databinding.FragmentUltimeConsegneFornitoreBinding; import it.integry.integrywmsnative.gest.picking_resi.PickingResiActivity; -import it.integry.integrywmsnative.gest.ultime_consegne_fornitore.core.UltimeConsegneFornitoreListAdapter; -import it.integry.integrywmsnative.gest.ultime_consegne_fornitore.rest.UltimeConsegneFornitoreRESTConsumer; +import it.integry.integrywmsnative.gest.ultime_arrivi_fornitore.core.UltimiArriviFornitoreListAdapter; +import it.integry.integrywmsnative.gest.ultime_arrivi_fornitore.rest.UltimiArriviFornitoreRESTConsumer; import it.integry.integrywmsnative.ui.ElevatedToolbar; /** * A simple {@link Fragment} subclass. */ -public class UltimeConsegneFornitoreFragment extends Fragment implements ITitledFragment, IScrollableFragment { +public class UltimiArriviFornitoreFragment extends Fragment implements ITitledFragment, IScrollableFragment { private Runnable mOnPreDestroy; private ElevatedToolbar mToolbar; @@ -45,12 +44,12 @@ public class UltimeConsegneFornitoreFragment extends Fragment implements ITitled private List mItems; - public UltimeConsegneFornitoreFragment() { + public UltimiArriviFornitoreFragment() { // Required empty public constructor } - public static UltimeConsegneFornitoreFragment newInstance() { - UltimeConsegneFornitoreFragment fragment = new UltimeConsegneFornitoreFragment(); + public static UltimiArriviFornitoreFragment newInstance() { + UltimiArriviFornitoreFragment fragment = new UltimiArriviFornitoreFragment(); Bundle args = new Bundle(); fragment.setArguments(args); @@ -82,7 +81,7 @@ public class UltimeConsegneFornitoreFragment extends Fragment implements ITitled @Override public void onCreateActionBar(AppCompatTextView titleText, Context context) { - titleText.setText(context.getText(R.string.fragment_ultime_consegne_fornitore_title).toString()); + titleText.setText(context.getText(R.string.ultime_arrivi_fornitore_title).toString()); } @Override @@ -111,7 +110,7 @@ public class UltimeConsegneFornitoreFragment extends Fragment implements ITitled private void initList() { Dialog progressDialog = UtilityProgress.createDefaultProgressDialog(getActivity()); - UltimeConsegneFornitoreRESTConsumer.getUltimeConsegneFornitori( + UltimiArriviFornitoreRESTConsumer.getUltimeConsegneFornitori( SettingsManager.i().userSession.depo.getCodMdep(), null, null, @@ -126,7 +125,7 @@ public class UltimeConsegneFornitoreFragment extends Fragment implements ITitled } private void initDataAdapter(ArrayList dataset) { - UltimeConsegneFornitoreListAdapter adapter = new UltimeConsegneFornitoreListAdapter(getActivity(), dataset); + UltimiArriviFornitoreListAdapter adapter = new UltimiArriviFornitoreListAdapter(getActivity(), dataset); adapter.setOnSelectionChanged(this::onSingleSelectionChanged); mBinding.recyclerView.setHasFixedSize(true); @@ -164,7 +163,7 @@ public class UltimeConsegneFornitoreFragment extends Fragment implements ITitled private void dispatchConsegne() { List selectedConsegne = getSelectedItems(); - PickingResiActivity.startActivity(getActivity(), selectedConsegne, -1); + PickingResiActivity.startActivity(getActivity(), getText(R.string.ultime_arrivi_fornitore_title).toString(), selectedConsegne, -1); } } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_fornitore/core/UltimeConsegneFornitoreListAdapter.java b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_arrivi_fornitore/core/UltimiArriviFornitoreListAdapter.java similarity index 93% rename from app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_fornitore/core/UltimeConsegneFornitoreListAdapter.java rename to app/src/main/java/it/integry/integrywmsnative/gest/ultime_arrivi_fornitore/core/UltimiArriviFornitoreListAdapter.java index 7ac282dc..ac234b0d 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_fornitore/core/UltimeConsegneFornitoreListAdapter.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_arrivi_fornitore/core/UltimiArriviFornitoreListAdapter.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.gest.ultime_consegne_fornitore.core; +package it.integry.integrywmsnative.gest.ultime_arrivi_fornitore.core; import android.content.Context; import android.view.LayoutInflater; @@ -25,7 +25,7 @@ import it.integry.integrywmsnative.databinding.FragmentUltimeConsegneFornitoreLi import it.integry.integrywmsnative.databinding.FragmentUltimeConsegneFornitoreListSingleItemBinding; import it.integry.integrywmsnative.ui.fastscroll.SectionTitleProvider; -public class UltimeConsegneFornitoreListAdapter extends SectionedRecyclerViewAdapter implements SectionTitleProvider { +public class UltimiArriviFornitoreListAdapter extends SectionedRecyclerViewAdapter implements SectionTitleProvider { private Context mContext; private List mDataset; @@ -64,7 +64,7 @@ public class UltimeConsegneFornitoreListAdapter extends SectionedRecyclerViewAda - public UltimeConsegneFornitoreListAdapter(Context context, ArrayList dataset) { + public UltimiArriviFornitoreListAdapter(Context context, ArrayList dataset) { super(); this.mContext = context; this.mDataset = new ArrayList<>(); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_fornitore/rest/UltimeConsegneFornitoreRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_arrivi_fornitore/rest/UltimiArriviFornitoreRESTConsumer.java similarity index 93% rename from app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_fornitore/rest/UltimeConsegneFornitoreRESTConsumer.java rename to app/src/main/java/it/integry/integrywmsnative/gest/ultime_arrivi_fornitore/rest/UltimiArriviFornitoreRESTConsumer.java index 12c2c4b7..bee860c1 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_fornitore/rest/UltimeConsegneFornitoreRESTConsumer.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_arrivi_fornitore/rest/UltimiArriviFornitoreRESTConsumer.java @@ -1,4 +1,4 @@ -package it.integry.integrywmsnative.gest.ultime_consegne_fornitore.rest; +package it.integry.integrywmsnative.gest.ultime_arrivi_fornitore.rest; import com.google.gson.reflect.TypeToken; @@ -11,7 +11,7 @@ import it.integry.integrywmsnative.core.expansion.RunnableArgs; import it.integry.integrywmsnative.core.utility.UtilityDB; import it.integry.integrywmsnative.core.rest.model.DocumentoResoDTO; -public class UltimeConsegneFornitoreRESTConsumer { +public class UltimiArriviFornitoreRESTConsumer { public static void getUltimeConsegneFornitori(String codMdep, String codAnag, String codMart, RunnableArgs> onComplete, RunnableArgs onFailed) { diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/UltimeConsegneClienteFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/UltimeConsegneClienteFragment.java index f867a612..c850a715 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/UltimeConsegneClienteFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/UltimeConsegneClienteFragment.java @@ -57,7 +57,7 @@ public class UltimeConsegneClienteFragment extends Fragment implements ITitledFr @Override public void onCreateActionBar(AppCompatTextView titleText, Context context) { - titleText.setText(context.getText(R.string.fragment_ultime_consegne_cliente_title).toString()); + titleText.setText(context.getText(R.string.ultime_consegne_cliente_title).toString()); } @Override diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/viewmodel/UltimeConsegneClienteViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/viewmodel/UltimeConsegneClienteViewModel.java index b52a919b..7d0270a2 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/viewmodel/UltimeConsegneClienteViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/viewmodel/UltimeConsegneClienteViewModel.java @@ -11,6 +11,7 @@ import com.annimon.stream.Stream; import java.util.ArrayList; import java.util.List; +import it.integry.integrywmsnative.R; import it.integry.integrywmsnative.core.settings.SettingsManager; import it.integry.integrywmsnative.core.utility.UtilityExceptions; import it.integry.integrywmsnative.core.utility.UtilityProgress; @@ -96,7 +97,7 @@ public class UltimeConsegneClienteViewModel { private void dispatchConsegne() { List selectedConsegne = getSelectedItems(); - PickingResiActivity.startActivity(mContext, selectedConsegne, +1); + PickingResiActivity.startActivity(mContext, mContext.getText(R.string.ultime_consegne_cliente_title).toString(), selectedConsegne, +1); } diff --git a/app/src/main/res/layout/fragment_ultime_consegne_fornitore.xml b/app/src/main/res/layout/fragment_ultime_consegne_fornitore.xml index ed26703d..f74fe924 100644 --- a/app/src/main/res/layout/fragment_ultime_consegne_fornitore.xml +++ b/app/src/main/res/layout/fragment_ultime_consegne_fornitore.xml @@ -6,7 +6,7 @@ + type="it.integry.integrywmsnative.gest.ultime_arrivi_fornitore.UltimiArriviFornitoreFragment" /> @@ -14,7 +14,7 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:background="@android:color/white" - tools:context=".gest.ultime_consegne_fornitore.UltimeConsegneFornitoreFragment"> + tools:context=".gest.ultime_arrivi_fornitore.UltimiArriviFornitoreFragment"> + android:title="@string/fragment_ultime_arrivi_fornitore_title" /> Ordini di accettazione
Spedizione Rettifica giacenze - Versamento merce + Posizionamento merce Errore Ops Attenzione @@ -225,8 +225,10 @@ Vuoi procedere con la stampa di una %s Crea nuova UL Apri UL - Ultime consegne - Ultimi arrivi + Resi su ultime consegne + Ultime consegne + Resi su ultimi arrivi + Ultimi arrivi Stampante non trovata diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 18d9559a..0b880457 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -229,8 +229,10 @@ Create new LU Open LU - Latest deliveries - Latest arrivals + Returns on latest deliveries + Latest deliveries + Returns on latest arrivals + Latest arrivals Printer not found diff --git a/dynamic_ime/src/main/java/it/integry/wms/dynamic_customization/extensions/MenuConfigurationIME.java b/dynamic_ime/src/main/java/it/integry/wms/dynamic_customization/extensions/MenuConfigurationIME.java index 80298df6..08eb2e70 100644 --- a/dynamic_ime/src/main/java/it/integry/wms/dynamic_customization/extensions/MenuConfigurationIME.java +++ b/dynamic_ime/src/main/java/it/integry/wms/dynamic_customization/extensions/MenuConfigurationIME.java @@ -20,7 +20,7 @@ public class MenuConfigurationIME extends BaseMenuConfiguration { .addItem(new MenuItem() .setID(it.integry.integrywmsnative.R.id.nav_resi_fornitore) - .setTitleText(it.integry.integrywmsnative.R.string.fragment_ultime_consegne_fornitore_title) + .setTitleText(it.integry.integrywmsnative.R.string.fragment_ultime_arrivi_fornitore_title) .setTitleIcon(it.integry.integrywmsnative.R.drawable.ic_latest_delivery)) ).addGroup( new MenuGroup() From b98b22edd172d67b087c6dbbae2474bedf48d2c6 Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Mon, 7 Oct 2019 16:17:36 +0200 Subject: [PATCH 3/4] [FIX] Aggiunta gestione nelle query di UltimeConsegneCliente --- .../gest/picking_resi/PickingResiActivity.java | 1 + .../gest/picking_resi/dto/WithdrawableDtbDocr.java | 11 +++++++++++ .../rest/UltimeConsegneClienteRESTConsumer.java | 8 ++++++-- 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/PickingResiActivity.java b/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/PickingResiActivity.java index 0ae26414..c5e464c9 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/PickingResiActivity.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/PickingResiActivity.java @@ -172,6 +172,7 @@ public class PickingResiActivity extends AppCompatActivity implements IOnColloC List foundGestioni = Stream.of(this.mDocumentiResiList) .map(DocumentoResoDTO::getGestione) .distinct() + .withoutNulls() .toList(); if(foundGestioni.size() > 1) { diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/dto/WithdrawableDtbDocr.java b/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/dto/WithdrawableDtbDocr.java index 5b882e25..eb7d8110 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/dto/WithdrawableDtbDocr.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/picking_resi/dto/WithdrawableDtbDocr.java @@ -8,6 +8,8 @@ import it.integry.integrywmsnative.core.model.MtbColr; public class WithdrawableDtbDocr extends DtbDocr { + private String gestione; + private List withdrawRows = new ArrayList<>(); public WithdrawableDtbDocr() { @@ -22,4 +24,13 @@ public class WithdrawableDtbDocr extends DtbDocr { this.withdrawRows = withdrawRows; return this; } + + public String getGestione() { + return gestione; + } + + public WithdrawableDtbDocr setGestione(String gestione) { + this.gestione = gestione; + return this; + } } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/rest/UltimeConsegneClienteRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/rest/UltimeConsegneClienteRESTConsumer.java index e01e8c4c..012006d7 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/rest/UltimeConsegneClienteRESTConsumer.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/ultime_consegne_cliente/rest/UltimeConsegneClienteRESTConsumer.java @@ -26,13 +26,15 @@ public class UltimeConsegneClienteRESTConsumer { int numberOfDayToAnalyze = 90; String sql = "SELECT consegne.*, " + - " rag_soc " + + " rag_soc," + + " dtb_doct.gestione " + "FROM WMS_GetUltimeConsegneClienti(" + UtilityDB.valueToString(numberOfConsegnePerCli) + ", " + UtilityDB.valueToString(codAnag) + ", " + UtilityDB.valueToString(codMart) + ", " + UtilityDB.valueToString(codMdep) + ", " + UtilityDB.valueToString(numberOfDayToAnalyze) + ") consegne " + + "INNER JOIN dtb_doct ON consegne.num_doc = dtb_doct.num_doc AND consegne.data_doc = dtb_doct.data_doc AND consegne.cod_anag = dtb_doct.cod_anag AND consegne.cod_dtip = dtb_doct.cod_dtip AND consegne.ser_doc = dtb_doct.ser_doc " + "LEFT OUTER JOIN gtb_anag ON consegne.cod_anag = gtb_anag.cod_anag " + "ORDER BY rag_soc, " + " counter_consegna "; @@ -58,7 +60,7 @@ public class UltimeConsegneClienteRESTConsumer { StringBuilder sbWhereCond = new StringBuilder(); for(int i = 0; i < consegne.size(); i++) { - sbWhereCond.append(String.format("(data_doc = '%s' AND num_doc = %d AND ser_doc = '%s' AND cod_anag = '%s' AND cod_dtip = '%s')", + sbWhereCond.append(String.format("(dtb_docr.data_doc = '%s' AND dtb_docr.num_doc = %d AND dtb_docr.ser_doc = '%s' AND dtb_docr.cod_anag = '%s' AND dtb_docr.cod_dtip = '%s')", UtilityDate.formatDate(consegne.get(i).getDataDocD(), UtilityDate.COMMONS_DATE_FORMATS.YMD_SLASH), consegne.get(i).getNumDoc(), consegne.get(i).getSerDoc(), @@ -133,7 +135,9 @@ public class UltimeConsegneClienteRESTConsumer { " ,dtb_docr.[cod_alis]" + " ,dtb_docr.[data_ins_row]" + " ,dtb_docr.[note] " + + " ,dtb_doct.[gestione] " + "FROM dtb_docr " + + "INNER JOIN dtb_doct ON dtb_docr.num_doc = dtb_doct.num_doc AND dtb_docr.data_doc = dtb_doct.data_doc AND dtb_docr.cod_anag = dtb_doct.cod_anag AND dtb_docr.cod_dtip = dtb_doct.cod_dtip AND dtb_docr.ser_doc = dtb_doct.ser_doc " + "INNER JOIN mtb_aart ON dtb_docr.cod_mart = mtb_aart.cod_mart " + "LEFT OUTER JOIN ctb_cont ON mtb_aart.cod_ccon_ricavi = ctb_cont.cod_ccon " + "LEFT OUTER JOIN ctb_grup ON ctb_cont.cod_cgrp = ctb_grup.cod_cgrp " + From 1a2531f764c6a118052d61b72bfc3fe324a8375f Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Mon, 7 Oct 2019 16:19:45 +0200 Subject: [PATCH 4/4] -> v1.8.0(87) --- .idea/caches/build_file_checksums.ser | Bin 1020 -> 1020 bytes app/build.gradle | 4 ++-- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.idea/caches/build_file_checksums.ser b/.idea/caches/build_file_checksums.ser index 8e5603b5021d049c6963afb2642417e5062129da..ae3bf5ab7cf1b745bc32d966ee6c943c9153729d 100644 GIT binary patch delta 54 zcmV-60LlOS2mA++m;|Pl-k`CZZUK`^0zH!o0zm{2VQ_GhUji2pXWGmEjSy(kkF7_G MFaXa3v$Fz80dSBNx&QzG delta 65 zcmV-H0KWhH2mA++m;{xw-psL_ZUK`=0zn2KdSzmAVUtk;C6hG*5(E%oaB!1f0v8ak X9prF`Kaa}pi>v6&uDUC;vjRy0Y^ECP diff --git a/app/build.gradle b/app/build.gradle index dd4f53f4..da22ea5b 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -17,8 +17,8 @@ apply plugin: 'com.google.gms.google-services' android { - def appVersionCode = 86 - def appVersionName = '1.7.9' + def appVersionCode = 87 + def appVersionName = '1.8.0' signingConfigs { release {