From af5c5338b74b656229d29fe6f01f8c51ff97f158 Mon Sep 17 00:00:00 2001 From: MarcoE Date: Thu, 7 Mar 2024 12:03:44 +0100 Subject: [PATCH 1/6] Fix linea di impiego in dialog in approv. linee --- .../ProdFabbisognoLineeProdFragment.java | 6 + .../ProdFabbisognoLineeProdRESTConsumer.java | 137 +++--------------- ...logRowInfoProdFabbisognoLineeProdView.java | 1 + ...wInfoProdFabbisognoLineeProdViewModel.java | 4 +- 4 files changed, 29 insertions(+), 119 deletions(-) diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/prod_fabbisogno_linee_prod/ProdFabbisognoLineeProdFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/prod_fabbisogno_linee_prod/ProdFabbisognoLineeProdFragment.java index 2be22253..6126fe36 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/prod_fabbisogno_linee_prod/ProdFabbisognoLineeProdFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/prod_fabbisogno_linee_prod/ProdFabbisognoLineeProdFragment.java @@ -312,6 +312,11 @@ public class ProdFabbisognoLineeProdFragment extends BaseFragment implements ITi private void startPickingActivity(List fabbisognoList) { String codMdep = SettingsManager.i().getUserSession().getDepo().getCodMdep(); + String ordini = UtilityDB.listValueToString(Stream.of(mProdFabbisognoItemModel) + .filter(x -> x instanceof ProdFabbisognoLineeItemModelDto && ((ProdFabbisognoLineeItemModelDto) x).selected.get()) + .map(x -> ((ProdFabbisognoLineeItemModelDto) x).getOrdineLavorazioneDTO().getNumOrd().toString()) + .toList()); + List sitArtOrdDTOS = Stream.of(fabbisognoList) .map(x -> { SitArtOrdDTO sitArtOrdDTO = new SitArtOrdDTO() @@ -328,6 +333,7 @@ public class ProdFabbisognoLineeProdFragment extends BaseFragment implements ITi sitArtOrdDTO.getExtraInfo().put("dataInizio", x.getDataInizio()); sitArtOrdDTO.getExtraInfo().put("dataFine", x.getDataFine()); + sitArtOrdDTO.getExtraInfo().put("ordini", ordini); return sitArtOrdDTO; }) diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/prod_fabbisogno_linee_prod/rest/ProdFabbisognoLineeProdRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/gest/prod_fabbisogno_linee_prod/rest/ProdFabbisognoLineeProdRESTConsumer.java index d75d5188..8f54b725 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/prod_fabbisogno_linee_prod/rest/ProdFabbisognoLineeProdRESTConsumer.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/prod_fabbisogno_linee_prod/rest/ProdFabbisognoLineeProdRESTConsumer.java @@ -50,123 +50,26 @@ public class ProdFabbisognoLineeProdRESTConsumer extends _BaseRESTConsumer { } - public void loadFabbisogno(String codMart, Date startDate, Date endDate, String codMdep, RunnableArgs> onComplete, RunnableArgs onFailed) { - String sql = "WITH input_values AS ( " + - " SELECT " + UtilityDB.valueToString(startDate) + " AS data_inizio, " + - " " + UtilityDB.valueToString(endDate) + " AS data_fine, " + -// " " + UtilityDB.valueToString(lineaProd) + " AS linea_prod, " + - " " + UtilityDB.valueToString(codMdep) + " AS cod_mdep)," + - " withdraw_mtb_colr AS ( " + - " SELECT cod_mart, " + - " SUM(ISNULL(qta_col, 0)) as qta_col, " + - " SUM(ISNULL(num_cnf, 0)) as num_cnf, " + - " mtb_colr.data_ord, " + - " mtb_colr.num_ord, " + - " mtb_colr.gestione " + - " FROM mtb_colr " + - " INNER JOIN mtb_colt mc on mtb_colr.gestione = mc.gestione and mtb_colr.data_collo = mc.data_collo and " + - " mtb_colr.ser_collo = mc.ser_collo and mtb_colr.num_collo = mc.num_collo " + - " WHERE segno = -1 " + - " AND cod_dtip IS NULL " + - " GROUP BY cod_mart, " + - " mtb_colr.data_ord, " + - " mtb_colr.num_ord, " + - " mtb_colr.gestione " + - " ), " + - " custom_mtb_colr AS (SELECT cod_mart, " + - " SUM(qta_col) AS qta_col, " + - " SUM(num_cnf) AS num_cnf, " + - " posizione " + - " FROM mvw_sitart_udc_det_inventario " + - " GROUP BY cod_mart, posizione), " + - " grouped_ord AS ( " + - " SELECT dtb_ordr.cod_mart, " + - " dtb_ordt.cod_jfas, " + - " dtb_ordt.cod_mdep, " + - " dtb_ordt.gestione, " + - " CONVERT(NUMERIC(15, 5), SUM(dtb_ordr.qta_ord * dtb_ordr.rap_conv) - " + - " SUM(dtb_ordr.qta_evasa * dtb_ordr.rap_conv)) AS qta_ord, " + - " SUM(dtb_ordr.num_cnf - dtb_ordr.num_cnf_evasa) AS num_cnf_ord, " + - " SUM(ISNULL(withdraw_mtb_colr.qta_col, 0)) AS qta_col_scaricata, " + - " SUM(ISNULL(withdraw_mtb_colr.num_cnf, 0)) AS num_cnf_scaricata " + - " FROM dtb_ordr " + - " INNER JOIN dtb_ordt on dtb_ordr.gestione = dtb_ordt.gestione AND " + - " dtb_ordr.data_ord = dtb_ordt.data_ord AND " + - " dtb_ordr.num_ord = dtb_ordt.num_ord " + - " LEFT OUTER JOIN withdraw_mtb_colr " + - " ON withdraw_mtb_colr.gestione = dtb_ordt.gestione AND " + - " withdraw_mtb_colr.num_ord = dtb_ordt.num_ord AND " + - " withdraw_mtb_colr.data_ord = dtb_ordt.data_ord AND " + - " withdraw_mtb_colr.cod_mart = dtb_ordr.cod_mart " + - " CROSS APPLY input_values " + - " WHERE dtb_ordt.gestione = 'L' " + - " AND flag_evaso = 'I' " + - " AND dtb_ordr.flag_evaso_forzato = 'N' " + - " AND flag_annulla = 'N' " + - " AND dtb_ordt.cod_mdep = input_values.cod_mdep " + - " AND dtb_ordt.data_ord BETWEEN input_values.data_inizio AND input_values.data_fine " + - " GROUP BY dtb_ordr.cod_mart, dtb_ordt.cod_jfas, dtb_ordt.cod_mdep, dtb_ordt.gestione " + - " ), " + - " tmp_ord AS (SELECT grouped_ord.cod_mart, " + - " mtb_aart.unt_mis, " + - " grouped_ord.cod_jfas, " + - " SUM(qta_ord) - SUM(qta_col_scaricata) AS qta_ord, " + - " SUM(num_cnf_ord) - SUM(num_cnf_scaricata) AS num_cnf_ord " + - " FROM grouped_ord " + - " INNER JOIN mtb_aart ON grouped_ord.cod_mart = mtb_aart.cod_mart " + - " CROSS APPLY input_values " + - " GROUP BY grouped_ord.cod_mart, mtb_aart.unt_mis, grouped_ord.cod_jfas " + - " ), " + - " ord_without_positioned_mtb_colt AS ( " + - " SELECT tmp_ord.cod_mart, " + - " tmp_ord.cod_jfas, " + - " ISNULL(custom_mtb_colr_on_linea.posizione, tmp_ord.cod_jfas) AS posizione, " + - " unt_mis, " + - " qta_ord AS qta_ord_calc, " + - " num_cnf_ord AS num_cnf_ord_calc, " + - " ISNULL(custom_mtb_colr_on_linea.qta_col, 0) AS qta_gia_posizionata, " + - " ISNULL(custom_mtb_colr_on_linea.num_cnf, 0) AS num_cnf_gia_posizionata, " + - " qta_ord - ISNULL(custom_mtb_colr_on_linea.qta_col, 0) AS qta_fabbisogno, " + - " num_cnf_ord - ISNULL(custom_mtb_colr_on_linea.num_cnf, 0) AS num_cnf_fabbisogno " + - " FROM tmp_ord " + - " INNER JOIN jrl_fase_posizioni ON tmp_ord.cod_jfas = jrl_fase_posizioni.cod_jfas " + - " AND tmp_ord.cod_jfas = jrl_fase_posizioni.posizione " + - " LEFT OUTER JOIN custom_mtb_colr custom_mtb_colr_on_linea " + - " ON tmp_ord.cod_mart = custom_mtb_colr_on_linea.cod_mart AND " + - " tmp_ord.cod_jfas = custom_mtb_colr_on_linea.posizione " + - " " + - " UNION ALL " + - " " + - " SELECT DISTINCT tmp_ord.cod_mart, " + - " null AS cod_jfas, " + - " jrl_fase_posizioni.posizione, " + - " unt_mis, " + - " 0 AS qta_ord_calc, " + - " 0 AS num_cnf_ord_calc, " + - " ISNULL(custom_mtb_colr_on_linea.qta_col, 0) AS qta_gia_posizionata, " + - " ISNULL(custom_mtb_colr_on_linea.num_cnf, 0) AS num_cnf_gia_posizionata, " + - " 0 AS qta_fabbisogno, " + - " 0 AS num_cnf_fabbisogno " + - " FROM tmp_ord " + - " INNER JOIN jrl_fase_posizioni ON tmp_ord.cod_jfas = jrl_fase_posizioni.cod_jfas " + - " AND tmp_ord.cod_jfas <> jrl_fase_posizioni.posizione " + - " " + - " " + - " LEFT OUTER JOIN custom_mtb_colr custom_mtb_colr_on_linea " + - " ON tmp_ord.cod_mart = custom_mtb_colr_on_linea.cod_mart AND " + - " jrl_fase_posizioni.posizione = custom_mtb_colr_on_linea.posizione " + - " ) " + - "SELECT DISTINCT cod_mart, " + - " unt_mis, " + - " cod_jfas, " + - " input_values.data_inizio, " + - " input_values.data_fine " + - "FROM ord_without_positioned_mtb_colt " + - "CROSS APPLY input_values " + - "WHERE cod_mart = " + UtilityDB.valueToString(codMart) + " " + - "GROUP BY cod_mart, unt_mis, cod_jfas, input_values.data_inizio, input_values.data_fine " + - "HAVING SUM(qta_ord_calc - qta_gia_posizionata) > 0 AND SUM(num_cnf_ord_calc - num_cnf_gia_posizionata) > 0 " + - "ORDER BY cod_mart"; + public void loadFabbisogno(String codMart, String ordini, Date startDate, Date endDate, String codMdep, RunnableArgs> onComplete, RunnableArgs onFailed) { + String sql = "SELECT DISTINCT cod_jfas\n" + + "FROM (SELECT DENSE_RANK() OVER (PARTITION BY dtb_ordt.gestione, dtb_ordt.data_ord, dtb_ordt.num_ord ORDER BY dtb_ord_steps.data_iniz DESC) AS row_n,\n" + + " dtb_ord_steps.*\n" + + " FROM dtb_ord_steps\n" + + " INNER JOIN dtb_ordt ON dtb_ord_steps.data_ord = dtb_ordt.data_ord\n" + + " AND dtb_ord_steps.num_ord = dtb_ordt.num_ord\n" + + " AND dtb_ord_steps.gestione = dtb_ordt.gestione\n" + + " INNER JOIN dtb_ordr ON dtb_ordr.gestione = dtb_ord_steps.gestione AND\n" + + " dtb_ordr.data_ord = dtb_ord_steps.data_ord AND\n" + + " dtb_ordr.num_ord = dtb_ord_steps.num_ord\n" + + " WHERE dtb_ordt.gestione = 'L'\n" + + " AND dtb_ordr.flag_evaso = 'I'\n" + + " AND dtb_ordr.flag_evaso_forzato = 'N'\n" + + " AND flag_annulla = 'N'\n" + + " AND dtb_ordt.cod_mdep = " + UtilityDB.valueToString(codMdep) + "\n" + + " AND dtb_ordt.num_ord IN ( " + ordini + " )\n" + + " AND dtb_ordt.data_ord BETWEEN " + UtilityDB.valueToString(startDate) + " AND " + UtilityDB.valueToString(endDate) + "\n" + + " AND dtb_ordr.cod_mart = " + UtilityDB.valueToString(codMart) + ") t\n" + + "WHERE t.row_n = 1"; Type typeOfObjectsList = new TypeToken>() {}.getType(); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/spedizione/dialogs/row_info/prod_fabbisogno_linee_prod/DialogRowInfoProdFabbisognoLineeProdView.java b/app/src/main/java/it/integry/integrywmsnative/gest/spedizione/dialogs/row_info/prod_fabbisogno_linee_prod/DialogRowInfoProdFabbisognoLineeProdView.java index ba232757..b51c592a 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/spedizione/dialogs/row_info/prod_fabbisogno_linee_prod/DialogRowInfoProdFabbisognoLineeProdView.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/spedizione/dialogs/row_info/prod_fabbisogno_linee_prod/DialogRowInfoProdFabbisognoLineeProdView.java @@ -76,6 +76,7 @@ public class DialogRowInfoProdFabbisognoLineeProdView extends BaseDialogRowInfoV this.mViewModel.init( sitArtOrdDTO.getCodMart(), sitArtOrdDTO.getCodMdep(), + (String) sitArtOrdDTO.getExtraInfo().get("ordini"), (Date) sitArtOrdDTO.getExtraInfo().get("dataInizio"), (Date) sitArtOrdDTO.getExtraInfo().get("dataFine")); } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/spedizione/dialogs/row_info/prod_fabbisogno_linee_prod/DialogRowInfoProdFabbisognoLineeProdViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/spedizione/dialogs/row_info/prod_fabbisogno_linee_prod/DialogRowInfoProdFabbisognoLineeProdViewModel.java index df3405ba..c6b9e622 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/spedizione/dialogs/row_info/prod_fabbisogno_linee_prod/DialogRowInfoProdFabbisognoLineeProdViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/spedizione/dialogs/row_info/prod_fabbisogno_linee_prod/DialogRowInfoProdFabbisognoLineeProdViewModel.java @@ -23,10 +23,10 @@ public class DialogRowInfoProdFabbisognoLineeProdViewModel { } - public void init(String codMart, String codMdep, Date startDate, Date endDate) { + public void init(String codMart, String codMdep, String ordni, Date startDate, Date endDate) { this.sendOnLoadingStarted(); - this.mProdFabbisognoLineeProdRESTConsumer.loadFabbisogno(codMart, startDate, endDate, codMdep, fabbisognoList -> { + this.mProdFabbisognoLineeProdRESTConsumer.loadFabbisogno(codMart, ordni, startDate, endDate, codMdep, fabbisognoList -> { this.mFabbisognoList.postValue(fabbisognoList); this.sendOnLoadingEnded(); }, this::sendError); From 3f470df462b2e5b5b26fa1fc26ed4a62c38690ea Mon Sep 17 00:00:00 2001 From: MarcoE Date: Thu, 7 Mar 2024 12:10:04 +0100 Subject: [PATCH 2/6] -> v1.40.03 (420) --- app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 6c6570a6..0bdaa6dd 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,8 +10,8 @@ apply plugin: 'com.google.gms.google-services' android { - def appVersionCode = 419 - def appVersionName = '1.40.02' + def appVersionCode = 420 + def appVersionName = '1.40.03' signingConfigs { release { From 9454614af6dc9dda31cce08c909a75409140bb95 Mon Sep 17 00:00:00 2001 From: MarcoE Date: Thu, 7 Mar 2024 16:11:52 +0100 Subject: [PATCH 3/6] Rimosso tipo report WMS_SPEDIZIONE_ETICHETTE_SSCC_ORD --- .../it/integry/integrywmsnative/core/report/ReportType.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/app/src/main/java/it/integry/integrywmsnative/core/report/ReportType.java b/app/src/main/java/it/integry/integrywmsnative/core/report/ReportType.java index 3800524f..d4515e82 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/report/ReportType.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/report/ReportType.java @@ -10,8 +10,6 @@ public enum ReportType { ETICHETTA_SSCC_LAVORAZIONE(1), @SerializedName("2") ETICHETTA_SSCC_SPEDIZIONE(2), - @SerializedName("3") - WMS_SPEDIZIONE_ETICHETTE_SSCC_ORD(3), @SerializedName("4") WMS_SPEDIZIONE_PACKING_LIST_ORD(4), @SerializedName("5") From 67e88d01e773c002d6761c27de21ee0e86b45552 Mon Sep 17 00:00:00 2001 From: MarcoE Date: Mon, 11 Mar 2024 13:32:08 +0100 Subject: [PATCH 4/6] =?UTF-8?q?Implementato=20in=20rettifica=20giacenza=20?= =?UTF-8?q?avviso=20se=20l'articolo=20che=20si=20sta=20inserendo=20=C3=A8?= =?UTF-8?q?=20attivo=20o=20meno?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../RettificaGiacenzeFragment.java | 45 ++++++++++++------- app/src/main/res/values-it/strings.xml | 1 + app/src/main/res/values/strings.xml | 1 + 3 files changed, 31 insertions(+), 16 deletions(-) diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/RettificaGiacenzeFragment.java b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/RettificaGiacenzeFragment.java index e8457b1a..0e9d29f9 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/RettificaGiacenzeFragment.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/rettifica_giacenze/RettificaGiacenzeFragment.java @@ -5,6 +5,7 @@ import android.content.pm.ActivityInfo; import android.content.res.ColorStateList; import android.content.res.Resources; import android.os.Bundle; +import android.text.Html; import android.text.SpannableString; import android.view.LayoutInflater; import android.view.View; @@ -46,6 +47,7 @@ import it.integry.integrywmsnative.core.model.MtbDepoPosizione; import it.integry.integrywmsnative.core.model.secondary.GestioneEnum; import it.integry.integrywmsnative.core.settings.SettingsManager; import it.integry.integrywmsnative.core.utility.UtilityExceptions; +import it.integry.integrywmsnative.core.utility.UtilityResources; import it.integry.integrywmsnative.core.utility.UtilityString; import it.integry.integrywmsnative.core.utility.UtilityToast; import it.integry.integrywmsnative.databinding.FragmentMainRettificaGiacenzeBinding; @@ -398,24 +400,35 @@ public class RettificaGiacenzeFragment extends BaseFragment implements ITitledFr .setCanPartitaMagBeChanged(canPartitaMagBeChanged) .setCanLUBeClosed(canLUBeClosed); - if (!mDialogInputQuantityV2View.isVisible()) - mDialogInputQuantityV2View - .setDialogInputQuantityV2DTO(dialogInputQuantityV2DTO) - .setOnComplete((resultDTO, shouldCloseLU) -> { - PickedQuantityDTO pickedQuantityDTO = new PickedQuantityDTO() - .setNumCnf(resultDTO.getNumCnf()) - .setQtaCnf(resultDTO.getQtaCnf()) - .setQtaTot(resultDTO.getQtaTot()) - .setPartitaMag(resultDTO.getPartitaMag()) - .setDataScad(resultDTO.getDataScad()); + String codMart = dialogInputQuantityV2DTO.getMtbAart().getCodMart(); + String flagStato = dialogInputQuantityV2DTO.getMtbAart().getFlagStato(); - this.onLoadingStarted(); - onComplete.run(pickedQuantityDTO, shouldCloseLU); - }) - .setOnAbort(this::onLoadingEnded) - .show(requireActivity().getSupportFragmentManager(), "tag"); + if (flagStato.equalsIgnoreCase("I")) { + DialogSimpleMessageView.makeInfoDialog( + getActivity().getResources().getString(R.string.confirm), + new SpannableString(Html.fromHtml(String.format(UtilityResources.getString(R.string.item_not_enabled), codMart))), + null, + () -> { + if (!mDialogInputQuantityV2View.isVisible()) + mDialogInputQuantityV2View + .setDialogInputQuantityV2DTO(dialogInputQuantityV2DTO) + .setOnComplete((resultDTO, shouldCloseLU) -> { + PickedQuantityDTO pickedQuantityDTO = new PickedQuantityDTO() + .setNumCnf(resultDTO.getNumCnf()) + .setQtaCnf(resultDTO.getQtaCnf()) + .setQtaTot(resultDTO.getQtaTot()) + .setPartitaMag(resultDTO.getPartitaMag()) + .setDataScad(resultDTO.getDataScad()); - else this.onLoadingEnded(); + this.onLoadingStarted(); + onComplete.run(pickedQuantityDTO, shouldCloseLU); + }) + .setOnAbort(this::onLoadingEnded) + .show(requireActivity().getSupportFragmentManager(), "tag"); + }, + this::onLoadingEnded) + .show(getActivity().getSupportFragmentManager(), "tag"); + } else this.onLoadingEnded(); } @Override diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index c4564f27..3672cc4a 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -352,6 +352,7 @@ Personalizzazioni Frudis %s non è attivo.]]> + %s non è attivo.]]> Punto Vendita SaporiVeri PV Genera ordini di acquisto diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 160c0409..82468fc2 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -357,6 +357,7 @@ Frudis customizations %s is inactive.]]> + %s is inactive.]]> Other Home Logout From 5c505e2fe107961f9515dc11be14a38a004c17a8 Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Mon, 11 Mar 2024 17:32:09 +0100 Subject: [PATCH 5/6] Implementato flag per gestire la qta suggerita in accettazione bolle --- .../core/settings/DBSettingsModel.java | 11 +++++-- .../core/settings/SettingsManager.java | 6 ++++ .../AccettazioneBollaPickingActivity.java | 2 +- .../AccettazioneBollaPickingViewModel.java | 32 ++++++++++++------- .../VersamentoMerceViewModel.java | 12 ++----- build.gradle | 2 +- gradle/wrapper/gradle-wrapper.properties | 2 +- 7 files changed, 40 insertions(+), 27 deletions(-) diff --git a/app/src/main/java/it/integry/integrywmsnative/core/settings/DBSettingsModel.java b/app/src/main/java/it/integry/integrywmsnative/core/settings/DBSettingsModel.java index 8d1626f9..479c0ea3 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/settings/DBSettingsModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/settings/DBSettingsModel.java @@ -20,7 +20,6 @@ public class DBSettingsModel { private boolean enableCheckPartitaMagCheckPickingV; private boolean flagMultiClienteOrdV; private boolean flagUseCodAnagAziendale; - private String defaultCausaleRettificaGiacenze; private boolean flagAskClienteInPickingLibero; private boolean flagPickLiberoAllowEmptyCliente; @@ -28,7 +27,6 @@ public class DBSettingsModel { private boolean flagCanAutoOpenNewULAccettazione; private boolean flagCanAddExtraQuantitySpedizione; private boolean flagEnableCheckDepositoSpedizione; - private boolean flagUseNewPickingListSpedizione; private boolean flagVersamentoDirettoProduzione; private boolean flagAskPesoColloSpedizione; private boolean flagForceAllToColli; @@ -75,6 +73,7 @@ public class DBSettingsModel { private boolean flagDeleteRowOnClose = false; private boolean flagAllowBarcodeFornitore = false; private boolean flagShowInfo = false; + private boolean flagAccettazioneBollaUseQtaOrd = true; public boolean isFlagSpedizioneEnableFakeGiacenza() { return flagSpedizioneEnableFakeGiacenza; @@ -616,4 +615,12 @@ public class DBSettingsModel { this.flagShowInfo = flagShowInfo; return this; } + + public boolean isFlagAccettazioneBollaUseQtaOrd() { + return flagAccettazioneBollaUseQtaOrd; + } + + public void setFlagAccettazioneBollaUseQtaOrd(boolean flagAccettazioneBollaUseQtaOrd) { + this.flagAccettazioneBollaUseQtaOrd = flagAccettazioneBollaUseQtaOrd; + } } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/settings/SettingsManager.java b/app/src/main/java/it/integry/integrywmsnative/core/settings/SettingsManager.java index b9485ddd..acba772f 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/settings/SettingsManager.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/settings/SettingsManager.java @@ -505,6 +505,12 @@ public class SettingsManager { .setKeySection("FLAG_ALLOW_BARCODE_FORNITORE") .setSetter(dbSettingsModelIstance::setFlagAllowBarcodeFornitore) .setDefaultValue(false)); + stbGestSetupReaderList.add(new StbGestSetupReader<>(Boolean.class) + .setGestName("PICKING") + .setSection("ACCETTAZIONE_BOLLA") + .setKeySection("FLAG_USE_QTA_ORD") + .setSetter(dbSettingsModelIstance::setFlagAccettazioneBollaUseQtaOrd) + .setDefaultValue(true)); String codMdep = SettingsManager.i().getUserSession().getDepo().getCodMdep(); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_bolla_picking/AccettazioneBollaPickingActivity.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_bolla_picking/AccettazioneBollaPickingActivity.java index b812bea1..50dd79c6 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_bolla_picking/AccettazioneBollaPickingActivity.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_bolla_picking/AccettazioneBollaPickingActivity.java @@ -153,7 +153,7 @@ public class AccettazioneBollaPickingActivity extends BaseActivity implements Ac // this.initFilters(); this.initFab(); - boolean useQtaBolla = SettingsManager.iDB().isFlagAccettazioneUseQtaOrd(); + boolean useQtaBolla = SettingsManager.iDB().isFlagAccettazioneBollaUseQtaOrd(); mViewModel.setListeners(this); mViewModel.init( diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_bolla_picking/AccettazioneBollaPickingViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_bolla_picking/AccettazioneBollaPickingViewModel.java index 31fb8720..c317f688 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_bolla_picking/AccettazioneBollaPickingViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/accettazione_bolla_picking/AccettazioneBollaPickingViewModel.java @@ -420,9 +420,9 @@ public class AccettazioneBollaPickingViewModel { public void manageDispatchBollaRow(final PickingObjectDTO pickingObjectDTO) { String partitaMag = null; - if(pickingObjectDTO.getTempPickData() != null){ - if(pickingObjectDTO.getTempPickData().getManualPickDTO() != null){ - if(pickingObjectDTO.getTempPickData().getManualPickDTO().getMtbPartitaMag() != null){ + if (pickingObjectDTO.getTempPickData() != null) { + if (pickingObjectDTO.getTempPickData().getManualPickDTO() != null) { + if (pickingObjectDTO.getTempPickData().getManualPickDTO().getMtbPartitaMag() != null) { partitaMag = pickingObjectDTO.getTempPickData().getManualPickDTO().getMtbPartitaMag().getPartitaMag(); } } @@ -550,11 +550,15 @@ public class AccettazioneBollaPickingViewModel { initialQtaTot = mtbAart.getQtaCnf(); } - if (!this.mUseQtaBolla && - UtilityBigDecimal.greaterThan(pickingObjectDTO.getMtbAart().getColliPedana(), BigDecimal.ZERO) && - UtilityBigDecimal.greaterThan(initialNumCnf, pickingObjectDTO.getMtbAart().getColliPedana())) { - initialNumCnf = pickingObjectDTO.getMtbAart().getColliPedana(); - initialQtaTot = initialNumCnf.multiply(initialQtaCnf); + if (!this.mUseQtaBolla) { + if (UtilityBigDecimal.greaterThan(pickingObjectDTO.getMtbAart().getColliPedana(), BigDecimal.ZERO) && + UtilityBigDecimal.greaterThan(initialNumCnf, pickingObjectDTO.getMtbAart().getColliPedana())) { + initialNumCnf = pickingObjectDTO.getMtbAart().getColliPedana(); + initialQtaTot = initialNumCnf.multiply(initialQtaCnf); + } else if(UtilityBigDecimal.greaterThan(initialNumCnf, BigDecimal.ONE) && pickingObjectDTO.getMtbAart().isFlagQtaCnfFissaBoolean()) { + initialNumCnf = BigDecimal.ONE; + initialQtaTot = initialNumCnf.multiply(initialQtaCnf); + } } if (dataScad == null && pickingObjectDTO.getMtbAart().getGgScadPartita() != null && pickingObjectDTO.getMtbAart().getGgScadPartita() > 0) { @@ -603,7 +607,8 @@ public class AccettazioneBollaPickingViewModel { } - public void saveNewRow(PickingObjectDTO pickingObjectDTO, BigDecimal numCnf, BigDecimal qtaCnf, BigDecimal qtaTot, String partitaMag, LocalDate dataScad, boolean shouldCloseLU) { + public void saveNewRow(PickingObjectDTO pickingObjectDTO, BigDecimal numCnf, BigDecimal + qtaCnf, BigDecimal qtaTot, String partitaMag, LocalDate dataScad, boolean shouldCloseLU) { if (UtilityBigDecimal.equalsTo(numCnf, BigDecimal.ZERO) && UtilityBigDecimal.equalsTo(qtaTot, BigDecimal.ZERO)) { resetMatchedRows(); @@ -691,7 +696,8 @@ public class AccettazioneBollaPickingViewModel { }); } - private void saveEditedRow(MtbColr mtbColrToUpdate, BigDecimal numCnf, BigDecimal qtaCnf, BigDecimal qtaTot, String partitaMag, LocalDate dataScad, boolean shouldCloseLU) { + private void saveEditedRow(MtbColr mtbColrToUpdate, BigDecimal numCnf, BigDecimal + qtaCnf, BigDecimal qtaTot, String partitaMag, LocalDate dataScad, boolean shouldCloseLU) { this.sendOnLoadingStarted(); MtbColr mtbColrClone = (MtbColr) mtbColrToUpdate.clone(); @@ -998,12 +1004,14 @@ public class AccettazioneBollaPickingViewModel { if (this.mListener != null) mListener.onMtbColrDeleteRequest(onComplete); } - private void notifyVersamentoAutomaticoResult(VersamentoAutomaticoULResponseDTO versamentoAutomaticoULResponseDTO, Runnable onComplete) { + private void notifyVersamentoAutomaticoResult(VersamentoAutomaticoULResponseDTO + versamentoAutomaticoULResponseDTO, Runnable onComplete) { if (this.mListener != null) mListener.onULVersata(versamentoAutomaticoULResponseDTO, onComplete); } - private void sendOnUnknownBarcodeScanned(String barocde, RunnableArgs onComplete, Runnable onAbort) { + private void sendOnUnknownBarcodeScanned(String + barocde, RunnableArgs onComplete, Runnable onAbort) { if (this.mListener != null) mListener.onUnknownBarcodeScanned(barocde, onComplete, onAbort); } diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/versamento_merce/VersamentoMerceViewModel.java b/app/src/main/java/it/integry/integrywmsnative/gest/versamento_merce/VersamentoMerceViewModel.java index 3f2b20ef..8edf5632 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/versamento_merce/VersamentoMerceViewModel.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/versamento_merce/VersamentoMerceViewModel.java @@ -189,15 +189,7 @@ public class VersamentoMerceViewModel { } else { if (mtbColt == null) { this.mColliMagazzinoRESTConsumer.createColloFromEtichettaAnonima(sscc, GestioneEnum.LAVORAZIONE, mtbColtAnonimo -> { - onComplete.run(); - - boolean codMdepIsValid = Stream.of(SettingsManager.iDB().getAvailableCodMdep()) - .anyMatch(x -> x.getCodMdep().equalsIgnoreCase(mtbColt.getCodMdep())); - - if (codMdepIsValid) { - pickMerceULtoUL(mtbColtAnonimo, onComplete); - } else this.sendError(new InvalidCodMdepException()); - + pickMerceULtoUL(mtbColtAnonimo, onComplete); }, this::sendError); } else { @@ -228,7 +220,7 @@ public class VersamentoMerceViewModel { .filter(x -> x.getQtaCol().floatValue() > 0) .toList(); - if (mtbColrsToPick.size() == 0) { + if (mtbColrsToPick.isEmpty()) { this.sendError(new NoArtsInLUException()); return; } diff --git a/build.gradle b/build.gradle index 7a03b6b3..4f7ed199 100644 --- a/build.gradle +++ b/build.gradle @@ -3,7 +3,7 @@ buildscript { ext { kotlin_version = '1.9.0' - agp_version = '8.2.2' + agp_version = '8.3.0' } repositories { diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 8363ee5b..383bd37e 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ #Mon Feb 13 15:14:43 CET 2023 distributionBase=GRADLE_USER_HOME -distributionUrl=https\://services.gradle.org/distributions/gradle-8.2-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip distributionPath=wrapper/dists zipStorePath=wrapper/dists zipStoreBase=GRADLE_USER_HOME From 51fa32d48d6e16ddc3de3098b2e3f847e89b6d8f Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Mon, 11 Mar 2024 17:33:38 +0100 Subject: [PATCH 6/6] -> v1.40.04 (421) --- app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 0bdaa6dd..e2b78828 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,8 +10,8 @@ apply plugin: 'com.google.gms.google-services' android { - def appVersionCode = 420 - def appVersionName = '1.40.03' + def appVersionCode = 421 + def appVersionName = '1.40.04' signingConfigs { release {