From 54d40ca06eb8bef797d29889ae53a1f5f750ac51 Mon Sep 17 00:00:00 2001 From: ValerioC Date: Wed, 10 May 2023 12:25:19 +0200 Subject: [PATCH 1/9] [CARELLI - Ordini acquisto] - aggiunta setup per abilitare l'ordine multi griglia [SAPORI VERI - Ordini acquisto] - Il dialog di caricamento non sparisce alla chiusura del dialog di inserimento qta - il calcolo della qtaTotale viene arrotondato troppo (5*0.30=1.51) --- .../core/exception/GridNotSelectedException.java | 12 ++++++++++++ .../core/settings/DBSettingsModel.java | 10 ++++++++++ .../core/settings/SettingsManager.java | 5 +++++ .../PVOrdineAcquistoEditActivity.java | 2 +- .../dialog/edit_articolo/DialogEditArticoloView.java | 2 +- .../dialogs/DialogScanGrigliaAcquistoView.java | 9 +++++++++ .../main/res/layout/dialog_scan_codice_griglia.xml | 3 +++ app/src/main/res/values-it/strings.xml | 1 + app/src/main/res/values/strings.xml | 1 + 9 files changed, 43 insertions(+), 2 deletions(-) create mode 100644 app/src/main/java/it/integry/integrywmsnative/core/exception/GridNotSelectedException.java diff --git a/app/src/main/java/it/integry/integrywmsnative/core/exception/GridNotSelectedException.java b/app/src/main/java/it/integry/integrywmsnative/core/exception/GridNotSelectedException.java new file mode 100644 index 00000000..8eb15df1 --- /dev/null +++ b/app/src/main/java/it/integry/integrywmsnative/core/exception/GridNotSelectedException.java @@ -0,0 +1,12 @@ +package it.integry.integrywmsnative.core.exception; + +import it.integry.integrywmsnative.R; +import it.integry.integrywmsnative.core.utility.UtilityResources; + +public class GridNotSelectedException extends Exception { + + public GridNotSelectedException() { + super(UtilityResources.getString(R.string.grid_not_selected)); + } + +} 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 4fa8bc04..5a052dd5 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 @@ -39,6 +39,7 @@ public class DBSettingsModel { private boolean flagOrdinaNuoviArticoliInGriglia; private boolean flagOrdinaArticoliOnScan; private boolean flagConsentiFuoriPianoLogistico; + private boolean flagConsentiOrdineSenzaGriglia; private String docInterniCheckFornitore; private String produzioneDefaultCodAnag; private boolean flagPrintPackingListOnOrderClose; @@ -449,6 +450,15 @@ public class DBSettingsModel { return this; } + public boolean isFlagConsentiOrdineSenzaGriglia() { + return flagConsentiOrdineSenzaGriglia; + } + + public DBSettingsModel setFlagConsentiOrdineSenzaGriglia(boolean flagConsentiOrdineSenzaGriglia) { + this.flagConsentiOrdineSenzaGriglia = flagConsentiOrdineSenzaGriglia; + return this; + } + public String getCommessaMagazzino() { return commessaMagazzino; } 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 a38d4acf..4f0b67cb 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 @@ -312,6 +312,10 @@ public class SettingsManager { .setGestName("PVM") .setSection("ORDINI_A") .setKeySection("FLAG_CONSENTI_ORIDNE_DA_GRIGLIA")); + stbGestSetupList.add(new StbGestSetup() + .setGestName("PVM") + .setSection("ORDINI_A") + .setKeySection("FLAG_CONSENTI_ORIDNE_SENZA_GRIGLIA")); stbGestSetupList.add(new StbGestSetup() .setGestName("PVM") .setSection("DOC_INTERNI") @@ -405,6 +409,7 @@ public class SettingsManager { dbSettingsModelIstance.setFlagPickLiberoAllowEmptyDest(getValueFromList(list, "PICKING_LIBERO", "FLAG_ALLOW_EMPTY_DEST", Boolean.class)); dbSettingsModelIstance.setFlagOrdinaArticoliOnScan(getValueFromList(list, "ORDINI_A", "ORDINA_ARTICOLI_ON_SCAN", Boolean.class)); dbSettingsModelIstance.setFlagConsentiFuoriPianoLogistico(getValueFromList(list, "ORDINI_A", "FLAG_CONSENTI_ORIDNE_DA_GRIGLIA", Boolean.class)); + dbSettingsModelIstance.setFlagConsentiOrdineSenzaGriglia(getValueFromList(list, "ORDINI_A", "FLAG_CONSENTI_ORIDNE_SENZA_GRIGLIA", Boolean.class)); dbSettingsModelIstance.setFlagPrintPackingListOnOrderClose(getValueFromList(list, "SPEDIZIONE", "FLAG_PRINT_PACKING_LIST_ON_CLOSE", Boolean.class)); dbSettingsModelIstance.setFlagPrintEtichetteOnOrderClose(getValueFromList(list, "SPEDIZIONE", "FLAG_PRINT_ETICHETTE_ON_CLOSE", Boolean.class)); dbSettingsModelIstance.setFlagPrintEtichetteOnLUClose(getValueFromList(list, "SPEDIZIONE", "FLAG_PRINT_ETICHETTE_ON_LU_CLOSE", Boolean.class, true)); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/PVOrdineAcquistoEditActivity.java b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/PVOrdineAcquistoEditActivity.java index 172f84f3..2385784c 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/PVOrdineAcquistoEditActivity.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/PVOrdineAcquistoEditActivity.java @@ -195,7 +195,7 @@ public class PVOrdineAcquistoEditActivity extends BaseActivity implements PVOrdi Toast.makeText(this, "Articolo aggiunto all'ordine!", Toast.LENGTH_SHORT).show(); } this.mViewModel.refreshListArticoli(onSuccess); - }, null).show(this.getSupportFragmentManager(), "DialogEditArticoloView"); + }, this::onLoadingEnded).show(this.getSupportFragmentManager(), "DialogEditArticoloView"); } @Override diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/dialog/edit_articolo/DialogEditArticoloView.java b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/dialog/edit_articolo/DialogEditArticoloView.java index 84df33c9..57b17796 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/dialog/edit_articolo/DialogEditArticoloView.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordine_acquisto_edit/dialog/edit_articolo/DialogEditArticoloView.java @@ -85,7 +85,7 @@ public class DialogEditArticoloView extends BaseDialogFragment implements Dialog this.mViewModel .setListener(this) .setCurrentArticolo(this.mArticolo) - .setInitialQtaCnf(BigDecimal.valueOf(mArticolo.getQtaCnf())) + .setInitialQtaCnf(BigDecimal.valueOf(mArticolo.getQtaCnf()).setScale(5, RoundingMode.HALF_UP)) .setInitialNumCnf(UtilityBigDecimal.divide(BigDecimal.valueOf(mArticolo.getQtaOrd()), BigDecimal.valueOf(mArticolo.getQtaCnf())).setScale(0, RoundingMode.CEILING)) .setInitialQtaTot(BigDecimal.valueOf(mArticolo.getQtaOrd())); diff --git a/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/dialogs/DialogScanGrigliaAcquistoView.java b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/dialogs/DialogScanGrigliaAcquistoView.java index d388c9bb..05cf08fe 100644 --- a/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/dialogs/DialogScanGrigliaAcquistoView.java +++ b/app/src/main/java/it/integry/integrywmsnative/gest/pv_ordini_acquisto/dialogs/DialogScanGrigliaAcquistoView.java @@ -23,6 +23,7 @@ import it.integry.integrywmsnative.core.barcode_reader.BarcodeManager; import it.integry.integrywmsnative.core.data_store.db.entity.Griglia; import it.integry.integrywmsnative.core.data_store.db.view_model.ArticoloOrdinabileDTO; import it.integry.integrywmsnative.core.exception.GridNotFoundException; +import it.integry.integrywmsnative.core.exception.GridNotSelectedException; import it.integry.integrywmsnative.core.exception.NoArtsFoundException; import it.integry.integrywmsnative.core.expansion.BaseDialogFragment; import it.integry.integrywmsnative.core.expansion.RunnableArgs; @@ -36,6 +37,7 @@ public class DialogScanGrigliaAcquistoView extends BaseDialogFragment { private DialogScanCodiceGrigliaBinding mBinding; private int mBarcodeScannerIstanceID; + public boolean canIgnoreGrid; private final RunnableArgss> mOnDialogDismiss; @@ -53,6 +55,7 @@ public class DialogScanGrigliaAcquistoView extends BaseDialogFragment { private DialogScanGrigliaAcquistoView(RunnableArgss> onDialogDismiss) { super(); mOnDialogDismiss = onDialogDismiss; + canIgnoreGrid = SettingsManager.iDB().isFlagConsentiOrdineSenzaGriglia(); } @NonNull @@ -80,6 +83,12 @@ public class DialogScanGrigliaAcquistoView extends BaseDialogFragment { } public void ignore() { + + if (!this.canIgnoreGrid) { + this.onError(new GridNotSelectedException()); + return; + } + BarcodeManager.disable(); RunnableArgs mOnError = exception -> { diff --git a/app/src/main/res/layout/dialog_scan_codice_griglia.xml b/app/src/main/res/layout/dialog_scan_codice_griglia.xml index dfe9873d..a69b457a 100644 --- a/app/src/main/res/layout/dialog_scan_codice_griglia.xml +++ b/app/src/main/res/layout/dialog_scan_codice_griglia.xml @@ -8,6 +8,8 @@ + + Nessun articolo presente in griglia La quantità ordinata non è valida La griglia selezionata non esiste o non presenta articoli + Nessuna griglia selezionata! Ignora Qta massima ordinabile Quantità massima superata diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 333837f1..d5b84c79 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -459,6 +459,7 @@ No product found in grid Invalid quantity ordered The selected grid was not found or is empty + No grid was selected Ignore Max orderable qty Max quantity exceeded From 705dd96a0e9468adf8c5a669023c1f57de9a6e55 Mon Sep 17 00:00:00 2001 From: ValerioC Date: Wed, 10 May 2023 12:27:28 +0200 Subject: [PATCH 2/9] -> v1.33.05 (376) --- app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 38232886..826b155d 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,8 +10,8 @@ apply plugin: 'com.google.gms.google-services' android { - def appVersionCode = 375 - def appVersionName = '1.33.04' + def appVersionCode = 376 + def appVersionName = '1.33.05' signingConfigs { release { From 2a8974e9c685be3d5109d5104f73bb2cf260d797 Mon Sep 17 00:00:00 2001 From: ValerioC Date: Thu, 11 May 2023 15:02:25 +0200 Subject: [PATCH 3/9] corretti nomi setup da oridne a ordine --- .../integrywmsnative/core/settings/SettingsManager.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) 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 4f0b67cb..6d1625ca 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 @@ -311,11 +311,11 @@ public class SettingsManager { stbGestSetupList.add(new StbGestSetup() .setGestName("PVM") .setSection("ORDINI_A") - .setKeySection("FLAG_CONSENTI_ORIDNE_DA_GRIGLIA")); + .setKeySection("FLAG_CONSENTI_ORDINE_DA_GRIGLIA")); stbGestSetupList.add(new StbGestSetup() .setGestName("PVM") .setSection("ORDINI_A") - .setKeySection("FLAG_CONSENTI_ORIDNE_SENZA_GRIGLIA")); + .setKeySection("FLAG_CONSENTI_ORDINE_SENZA_GRIGLIA")); stbGestSetupList.add(new StbGestSetup() .setGestName("PVM") .setSection("DOC_INTERNI") @@ -408,8 +408,8 @@ public class SettingsManager { dbSettingsModelIstance.setFlagAccettazioneUseQtaOrd(getValueFromList(list, "ACCETTAZIONE", "FLAG_USE_QTA_ORD", Boolean.class)); dbSettingsModelIstance.setFlagPickLiberoAllowEmptyDest(getValueFromList(list, "PICKING_LIBERO", "FLAG_ALLOW_EMPTY_DEST", Boolean.class)); dbSettingsModelIstance.setFlagOrdinaArticoliOnScan(getValueFromList(list, "ORDINI_A", "ORDINA_ARTICOLI_ON_SCAN", Boolean.class)); - dbSettingsModelIstance.setFlagConsentiFuoriPianoLogistico(getValueFromList(list, "ORDINI_A", "FLAG_CONSENTI_ORIDNE_DA_GRIGLIA", Boolean.class)); - dbSettingsModelIstance.setFlagConsentiOrdineSenzaGriglia(getValueFromList(list, "ORDINI_A", "FLAG_CONSENTI_ORIDNE_SENZA_GRIGLIA", Boolean.class)); + dbSettingsModelIstance.setFlagConsentiFuoriPianoLogistico(getValueFromList(list, "ORDINI_A", "FLAG_CONSENTI_ORDINE_DA_GRIGLIA", Boolean.class)); + dbSettingsModelIstance.setFlagConsentiOrdineSenzaGriglia(getValueFromList(list, "ORDINI_A", "FLAG_CONSENTI_ORDINE_SENZA_GRIGLIA", Boolean.class)); dbSettingsModelIstance.setFlagPrintPackingListOnOrderClose(getValueFromList(list, "SPEDIZIONE", "FLAG_PRINT_PACKING_LIST_ON_CLOSE", Boolean.class)); dbSettingsModelIstance.setFlagPrintEtichetteOnOrderClose(getValueFromList(list, "SPEDIZIONE", "FLAG_PRINT_ETICHETTE_ON_CLOSE", Boolean.class)); dbSettingsModelIstance.setFlagPrintEtichetteOnLUClose(getValueFromList(list, "SPEDIZIONE", "FLAG_PRINT_ETICHETTE_ON_LU_CLOSE", Boolean.class, true)); From bf37a1acaf49913b09f21bca013d5a07b74836f5 Mon Sep 17 00:00:00 2001 From: ValerioC Date: Thu, 11 May 2023 15:03:25 +0200 Subject: [PATCH 4/9] -> v1.33.06 (377) --- app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 826b155d..6bf136ee 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,8 +10,8 @@ apply plugin: 'com.google.gms.google-services' android { - def appVersionCode = 376 - def appVersionName = '1.33.05' + def appVersionCode = 377 + def appVersionName = '1.33.06 ' signingConfigs { release { From b7d3cb18b995f6b5770bcf571343d21a258faed5 Mon Sep 17 00:00:00 2001 From: ValerioC Date: Thu, 11 May 2023 15:29:23 +0200 Subject: [PATCH 5/9] corretto appVersionName --- app/build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/build.gradle b/app/build.gradle index 6bf136ee..b4c7a1a5 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -11,7 +11,7 @@ apply plugin: 'com.google.gms.google-services' android { def appVersionCode = 377 - def appVersionName = '1.33.06 ' + def appVersionName = '1.33.06' signingConfigs { release { From 09347651760bbf5bd35f15e4b0295e0ec91069f4 Mon Sep 17 00:00:00 2001 From: ValerioC Date: Fri, 12 May 2023 10:18:16 +0200 Subject: [PATCH 6/9] [CARELLI - ORDINI ACQUISTO] - corretta gestione merce da ricevere per rispecchiare il nuovo servizio (ora riceve le qta invece che le confezioni) --- .../core/data_store/db/entity/ArticoloOrdine.java | 2 +- app/src/main/res/layout/dialog_pv_edit_articolo.xml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/entity/ArticoloOrdine.java b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/entity/ArticoloOrdine.java index 75439e1a..1c126a18 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/entity/ArticoloOrdine.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/entity/ArticoloOrdine.java @@ -259,7 +259,7 @@ public class ArticoloOrdine { } public float getCnfDaRic() { - return qtaCnf > 0.f ? merceDaRic * qtaCnf : 0; + return qtaCnf > 0.f ? merceDaRic / qtaCnf : 0; } public int checkQtaProposta() { diff --git a/app/src/main/res/layout/dialog_pv_edit_articolo.xml b/app/src/main/res/layout/dialog_pv_edit_articolo.xml index a0cdec6c..cce298cc 100644 --- a/app/src/main/res/layout/dialog_pv_edit_articolo.xml +++ b/app/src/main/res/layout/dialog_pv_edit_articolo.xml @@ -254,7 +254,7 @@ style="@style/AppTheme.NewMaterial.Text.Medium" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:text="@{UtilityNumber.decimalToString(view.articolo.merceDaRic)}" + android:text="@{UtilityNumber.decimalToString(view.articolo.getCnfDaRic())}" android:textColor="@android:color/black" android:textStyle="bold" tools:text="1" /> @@ -285,7 +285,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="0dp" - android:text="@{UtilityNumber.decimalToString(view.articolo.getCnfDaRic())}" + android:text="@{UtilityNumber.decimalToString(view.articolo.merceDaRic)}" android:textColor="@android:color/black" android:textStyle="bold" /> From 4f9fe14f7ec41c3df2fc78294205265082c43b4d Mon Sep 17 00:00:00 2001 From: ValerioC Date: Fri, 12 May 2023 10:19:01 +0200 Subject: [PATCH 7/9] -> v1.33.07 (378) --- app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index b4c7a1a5..2a66f360 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,8 +10,8 @@ apply plugin: 'com.google.gms.google-services' android { - def appVersionCode = 377 - def appVersionName = '1.33.06' + def appVersionCode = 378 + def appVersionName = '1.33.07' signingConfigs { release { From 17a78ef044a57b5e6ada8cc80d583adebb7590f7 Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Mon, 15 May 2023 12:19:24 +0200 Subject: [PATCH 8/9] Implementato nel refresh dei dati in BaseRepository un controllo per evitare di cancellare, da SQLite, dati non sincronizzati --- .../core/data_store/db/respository_new/_BaseRepository.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/respository_new/_BaseRepository.java b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/respository_new/_BaseRepository.java index b6d97ea2..f5d52879 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/respository_new/_BaseRepository.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/data_store/db/respository_new/_BaseRepository.java @@ -58,7 +58,7 @@ public abstract class _BaseRepository< .collect(Collectors.toList()); var dataToDelete = finalLocalData.stream() - .filter(x -> finalRemoteData.stream().noneMatch(y -> keyComparator.run(y, x))) + .filter(x -> x.isSyncronized() && finalRemoteData.stream().noneMatch(y -> keyComparator.run(y, x))) .collect(Collectors.toList()); var dataToInsert = finalRemoteData.stream() From 05c28d62d87faf74211f599a926abfb74ec352cb Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Mon, 15 May 2023 12:20:16 +0200 Subject: [PATCH 9/9] -> v1.33.08 (379) --- app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 2a66f360..7b5eceb9 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,8 +10,8 @@ apply plugin: 'com.google.gms.google-services' android { - def appVersionCode = 378 - def appVersionName = '1.33.07' + def appVersionCode = 379 + def appVersionName = '1.33.08' signingConfigs { release {