diff --git a/.idea/runConfigurations/app.xml b/.idea/runConfigurations/app.xml
index b854e408..eaa588bc 100644
--- a/.idea/runConfigurations/app.xml
+++ b/.idea/runConfigurations/app.xml
@@ -6,7 +6,7 @@
-
+
diff --git a/.idea/runConfigurations/app_base.xml b/.idea/runConfigurations/app_base.xml
index cb6b1f97..ea7e0c82 100644
--- a/.idea/runConfigurations/app_base.xml
+++ b/.idea/runConfigurations/app_base.xml
@@ -6,7 +6,7 @@
-
+
diff --git a/.idea/runConfigurations/app_frudis.xml b/.idea/runConfigurations/app_frudis.xml
index b1e25bb1..b81d38bb 100644
--- a/.idea/runConfigurations/app_frudis.xml
+++ b/.idea/runConfigurations/app_frudis.xml
@@ -6,7 +6,7 @@
-
+
diff --git a/.idea/runConfigurations/app_ime.xml b/.idea/runConfigurations/app_ime.xml
index d8aca230..49781a95 100644
--- a/.idea/runConfigurations/app_ime.xml
+++ b/.idea/runConfigurations/app_ime.xml
@@ -6,7 +6,7 @@
-
+
diff --git a/.idea/runConfigurations/app_saporiveri.xml b/.idea/runConfigurations/app_saporiveri.xml
new file mode 100644
index 00000000..5db7ea6d
--- /dev/null
+++ b/.idea/runConfigurations/app_saporiveri.xml
@@ -0,0 +1,55 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/runConfigurations/app_saporiveri_pv.xml b/.idea/runConfigurations/app_saporiveri_pv.xml
index 7e738481..42c223ff 100644
--- a/.idea/runConfigurations/app_saporiveri_pv.xml
+++ b/.idea/runConfigurations/app_saporiveri_pv.xml
@@ -6,7 +6,7 @@
-
+
diff --git a/.idea/runConfigurations/app_vglimenti.xml b/.idea/runConfigurations/app_vglimenti.xml
index e0f97c85..a3b3823b 100644
--- a/.idea/runConfigurations/app_vglimenti.xml
+++ b/.idea/runConfigurations/app_vglimenti.xml
@@ -6,7 +6,7 @@
-
+
diff --git a/app/build.gradle b/app/build.gradle
index 1a03dc00..1355d59e 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -17,8 +17,8 @@ apply plugin: 'com.google.gms.google-services'
android {
- def appVersionCode = 97
- def appVersionName = '1.9.3'
+ def appVersionCode = 99
+ def appVersionName = '1.9.5'
signingConfigs {
release {
@@ -83,7 +83,7 @@ android {
abortOnError false
}
- dynamicFeatures = [":dynamic__base", ":dynamic_vgalimenti", ":dynamic_ime", ":dynamic_frudis", ":dynamic_saporiveri_pv"]
+ dynamicFeatures = [":dynamic__base", ":dynamic_vgalimenti", ":dynamic_ime", ":dynamic_frudis", ":dynamic_saporiveri_pv", ":dynamic_saporiveri"]
}
diff --git a/app/src/main/java/it/integry/integrywmsnative/core/class_router/ClassRouter.java b/app/src/main/java/it/integry/integrywmsnative/core/class_router/ClassRouter.java
index aa7b6d9b..d1412345 100644
--- a/app/src/main/java/it/integry/integrywmsnative/core/class_router/ClassRouter.java
+++ b/app/src/main/java/it/integry/integrywmsnative/core/class_router/ClassRouter.java
@@ -14,7 +14,8 @@ public class ClassRouter {
public enum PATH {
FILTRO_ORDINI_VENDITA,
ORDINI_VENDITA,
- CUSTOM_CONFIGURATION
+ CUSTOM_CONFIGURATION,
+ BARCODE_CUSTOMIZATION
}
private static Context context;
diff --git a/app/src/main/java/it/integry/integrywmsnative/core/class_router/interfaces/IBarcodeCustomization.java b/app/src/main/java/it/integry/integrywmsnative/core/class_router/interfaces/IBarcodeCustomization.java
new file mode 100644
index 00000000..21a8c92c
--- /dev/null
+++ b/app/src/main/java/it/integry/integrywmsnative/core/class_router/interfaces/IBarcodeCustomization.java
@@ -0,0 +1,7 @@
+package it.integry.integrywmsnative.core.class_router.interfaces;
+
+public interface IBarcodeCustomization {
+
+ boolean shouldForceToEan13(String barcode);
+
+}
diff --git a/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/BarcodeRESTConsumer.java b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/BarcodeRESTConsumer.java
index 34036200..39e20897 100644
--- a/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/BarcodeRESTConsumer.java
+++ b/app/src/main/java/it/integry/integrywmsnative/core/rest/consumers/BarcodeRESTConsumer.java
@@ -1,6 +1,8 @@
package it.integry.integrywmsnative.core.rest.consumers;
import it.integry.barcode_base_android_library.model.BarcodeScanDTO;
+import it.integry.integrywmsnative.core.class_router.ClassRouter;
+import it.integry.integrywmsnative.core.class_router.interfaces.IBarcodeCustomization;
import it.integry.integrywmsnative.core.expansion.RunnableArgs;
import it.integry.integrywmsnative.core.rest.RESTBuilder;
import it.integry.integrywmsnative.core.rest.model.Ean128Model;
@@ -13,6 +15,15 @@ public class BarcodeRESTConsumer extends _BaseRESTConsumer {
public static void decodeEan128(BarcodeScanDTO barcodeObj, RunnableArgs onComplete, RunnableArgs onFailed) {
+ IBarcodeCustomization barcodeCustomization = ClassRouter.getInstance(ClassRouter.PATH.BARCODE_CUSTOMIZATION);
+
+ if(barcodeCustomization != null && barcodeCustomization.shouldForceToEan13(barcodeObj.getStringValue())){
+ Ean128Model ean128Model = new Ean128Model();
+ ean128Model.Gtin = barcodeObj.getStringValue();
+ onComplete.run(ean128Model);
+ return;
+ }
+
String ean128 = barcodeObj.getStringValue().replaceAll("" + ((char) 29), "|");
BarcodeRESTConsumerService barcodeRESTConsumerService = RESTBuilder.getService(BarcodeRESTConsumerService.class);
diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml
index ef24bd74..03c0767c 100644
--- a/app/src/main/res/values-it/strings.xml
+++ b/app/src/main/res/values-it/strings.xml
@@ -260,7 +260,6 @@
Il lotto %s non รจ attivo. Continuare?
Punto Vendita
- Dynamic SaporiVeri
SaporiVeri PV
Genera ordini di acqusito
Ordini di acquisto trasmessi
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index fb43a63a..f8fc5b9f 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -268,7 +268,6 @@
Home
Logout
- Dynamic SaporiVeri
SaporiVeri PV
Sale point
Generate purchase orders
@@ -295,4 +294,5 @@
Choose action
Delete
Edit
+ SaporVeri Customization
diff --git a/barcode_base_android_library/build.gradle b/barcode_base_android_library/build.gradle
index 68c6efcb..f219b055 100644
--- a/barcode_base_android_library/build.gradle
+++ b/barcode_base_android_library/build.gradle
@@ -20,6 +20,10 @@ android {
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
+ compileOptions {
+ sourceCompatibility = 1.8
+ targetCompatibility = 1.8
+ }
}
diff --git a/build_all.bat b/build_all.bat
index f56f7a2d..fdc7d8b5 100644
--- a/build_all.bat
+++ b/build_all.bat
@@ -2,4 +2,5 @@ call build_azienda.bat _base
call build_azienda.bat vgalimenti
call build_azienda.bat ime
call build_azienda.bat frudis
-call build_azienda.bat saporiveri_pv
\ No newline at end of file
+call build_azienda.bat saporiveri_pv
+call build_azienda.bat saporiveri
\ No newline at end of file
diff --git a/keyboardemulatorscannerlibrary/.gitignore b/dynamic_saporiveri/.gitignore
similarity index 100%
rename from keyboardemulatorscannerlibrary/.gitignore
rename to dynamic_saporiveri/.gitignore
diff --git a/dynamic_saporiveri/build.gradle b/dynamic_saporiveri/build.gradle
new file mode 100644
index 00000000..06cb2f7c
--- /dev/null
+++ b/dynamic_saporiveri/build.gradle
@@ -0,0 +1,28 @@
+apply plugin: 'com.android.dynamic-feature'
+
+android {
+ compileSdkVersion 28
+
+
+
+ defaultConfig {
+ minSdkVersion 21
+ targetSdkVersion 28
+ versionCode 1
+ versionName "1.0"
+
+ }
+ compileOptions {
+ sourceCompatibility = 1.8
+ targetCompatibility = 1.8
+ }
+
+
+}
+
+dependencies {
+ implementation fileTree(dir: 'libs', include: ['*.jar'])
+ implementation project(':app')
+
+ implementation 'androidx.appcompat:appcompat:1.1.0'
+}
diff --git a/dynamic_saporiveri/src/main/AndroidManifest.xml b/dynamic_saporiveri/src/main/AndroidManifest.xml
new file mode 100644
index 00000000..7990c852
--- /dev/null
+++ b/dynamic_saporiveri/src/main/AndroidManifest.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/dynamic_saporiveri/src/main/java/it/integry/wms/dynamic_customization/DynamicContext.java b/dynamic_saporiveri/src/main/java/it/integry/wms/dynamic_customization/DynamicContext.java
new file mode 100644
index 00000000..e373a3d5
--- /dev/null
+++ b/dynamic_saporiveri/src/main/java/it/integry/wms/dynamic_customization/DynamicContext.java
@@ -0,0 +1,31 @@
+package it.integry.wms.dynamic_customization;
+
+import android.content.Context;
+import android.util.Log;
+
+import it.integry.integrywmsnative.core.class_router.ClassRouter;
+import it.integry.integrywmsnative.core.utility.UtilityExceptions;
+import it.integry.wms.dynamic_customization.extensions.BarcodeCustomization;
+import it.integry.wms.dynamic_customization.extensions.CustomConfiguration;
+import it.integry.wms.dynamic_customization.extensions.FiltroOrdiniVendita;
+import it.integry.wms.dynamic_customization.extensions.OrdiniVendita;
+
+public class DynamicContext {
+
+ public void init(Context context) {
+ Log.d("DynamicContext", "Caricamento personalizzazioni per SaporiVeri");
+
+ try {
+ ClassRouter.registerPath(ClassRouter.PATH.FILTRO_ORDINI_VENDITA, FiltroOrdiniVendita.class);
+ ClassRouter.registerPath(ClassRouter.PATH.ORDINI_VENDITA, OrdiniVendita.class);
+ ClassRouter.registerPath(ClassRouter.PATH.CUSTOM_CONFIGURATION, CustomConfiguration.class);
+ ClassRouter.registerPath(ClassRouter.PATH.BARCODE_CUSTOMIZATION, BarcodeCustomization.class);
+ } catch (Exception ex) {
+ UtilityExceptions.defaultException(context, ex);
+ }
+
+ Log.d("DynamicContext", "Caricamento personalizzazioni per SaporiVeri COMPLETATO");
+
+ }
+
+}
diff --git a/dynamic_saporiveri/src/main/java/it/integry/wms/dynamic_customization/extensions/BarcodeCustomization.java b/dynamic_saporiveri/src/main/java/it/integry/wms/dynamic_customization/extensions/BarcodeCustomization.java
new file mode 100644
index 00000000..48f469d8
--- /dev/null
+++ b/dynamic_saporiveri/src/main/java/it/integry/wms/dynamic_customization/extensions/BarcodeCustomization.java
@@ -0,0 +1,14 @@
+package it.integry.wms.dynamic_customization.extensions;
+
+import it.integry.integrywmsnative.core.class_router.interfaces.IBarcodeCustomization;
+
+public class BarcodeCustomization implements IBarcodeCustomization {
+
+ @Override
+ public boolean shouldForceToEan13(String barcode) {
+
+ return barcode != null && barcode.length() == 13;
+
+ }
+
+}
diff --git a/dynamic_saporiveri/src/main/java/it/integry/wms/dynamic_customization/extensions/CustomConfiguration.java b/dynamic_saporiveri/src/main/java/it/integry/wms/dynamic_customization/extensions/CustomConfiguration.java
new file mode 100644
index 00000000..5c3ab3cd
--- /dev/null
+++ b/dynamic_saporiveri/src/main/java/it/integry/wms/dynamic_customization/extensions/CustomConfiguration.java
@@ -0,0 +1,11 @@
+package it.integry.wms.dynamic_customization.extensions;
+
+import it.integry.integrywmsnative.core.class_router.BaseCustomConfiguration;
+import it.integry.integrywmsnative.core.class_router.interfaces.ICustomConfiguration;
+
+public class CustomConfiguration extends BaseCustomConfiguration implements ICustomConfiguration {
+
+ public CustomConfiguration() {
+ }
+
+}
diff --git a/dynamic_saporiveri/src/main/java/it/integry/wms/dynamic_customization/extensions/FiltroOrdiniVendita.java b/dynamic_saporiveri/src/main/java/it/integry/wms/dynamic_customization/extensions/FiltroOrdiniVendita.java
new file mode 100644
index 00000000..77adb537
--- /dev/null
+++ b/dynamic_saporiveri/src/main/java/it/integry/wms/dynamic_customization/extensions/FiltroOrdiniVendita.java
@@ -0,0 +1,21 @@
+package it.integry.wms.dynamic_customization.extensions;
+
+import it.integry.integrywmsnative.core.class_router.interfaces.IFiltroOrdiniVendita;
+
+public class FiltroOrdiniVendita implements IFiltroOrdiniVendita {
+
+ @Override
+ public boolean shoudShowCodMdepFilter() {
+ return false;
+ }
+
+ @Override
+ public boolean shoudShowIdViaggioFilter() {
+ return false;
+ }
+
+ @Override
+ public boolean shoudShowAgenteFilter() {
+ return false;
+ }
+}
diff --git a/dynamic_saporiveri/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java b/dynamic_saporiveri/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java
new file mode 100644
index 00000000..bbf8cefb
--- /dev/null
+++ b/dynamic_saporiveri/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java
@@ -0,0 +1,26 @@
+package it.integry.wms.dynamic_customization.extensions;
+
+import android.app.Dialog;
+
+import java.util.List;
+
+import it.integry.integrywmsnative.core.class_router.interfaces.IOrdiniVendita;
+import it.integry.integrywmsnative.core.expansion.RunnableArgs;
+import it.integry.integrywmsnative.core.model.MtbColt;
+import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer;
+import it.integry.integrywmsnative.core.settings.SettingsManager;
+import it.integry.integrywmsnative.core.utility.UtilityToast;
+import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaInevasoDTO;
+
+public class OrdiniVendita implements IOrdiniVendita {
+
+
+ @Override
+ public void distribuisciCollo(Dialog progress, MtbColt mtbColt, List testateOrdini, RunnableArgs> onComplete, RunnableArgs onFailed) {
+ UtilityToast.showToast("Avviato metodo in BaseFeature");
+
+ ColliMagazzinoRESTConsumer.distribuisciCollo(mtbColt, SettingsManager.iDB().getDefaultCriterioDistribuzione(),
+ onComplete,
+ onFailed);
+ }
+}
diff --git a/keyboardemulatorscannerlibrary/build.gradle b/keyboardemulatorscannerlibrary/build.gradle
deleted file mode 100644
index 68bb7760..00000000
--- a/keyboardemulatorscannerlibrary/build.gradle
+++ /dev/null
@@ -1,8 +0,0 @@
-apply plugin: 'java-library'
-
-dependencies {
- implementation fileTree(dir: 'libs', include: ['*.jar'])
-}
-
-sourceCompatibility = "7"
-targetCompatibility = "7"
diff --git a/keyboardemulatorscannerlibrary/src/main/java/it/integry/keyboardemulatorscannerlibrary/KeyboardEmulator.java b/keyboardemulatorscannerlibrary/src/main/java/it/integry/keyboardemulatorscannerlibrary/KeyboardEmulator.java
deleted file mode 100644
index fab77668..00000000
--- a/keyboardemulatorscannerlibrary/src/main/java/it/integry/keyboardemulatorscannerlibrary/KeyboardEmulator.java
+++ /dev/null
@@ -1,4 +0,0 @@
-package it.integry.keyboardemulatorscannerlibrary;
-
-public class KeyboardEmulator {
-}
diff --git a/settings.gradle b/settings.gradle
index 75c1404c..bf3f1d7e 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -1 +1 @@
-include ':app', ':pointmobilescannerlibrary', ':dynamic_vgalimenti', ':dynamic__base', ':zebrascannerlibrary', ':honeywellscannerlibrary', ':dynamic_ime', ':dynamic_frudis', ':dynamic_saporiveri_pv', ':keyobardemulatorscannerlibrary', ':barcode_base_android_library'
+include ':app', ':pointmobilescannerlibrary', ':dynamic_vgalimenti', ':dynamic__base', ':zebrascannerlibrary', ':honeywellscannerlibrary', ':dynamic_ime', ':dynamic_frudis', ':dynamic_saporiveri_pv', ':keyobardemulatorscannerlibrary', ':barcode_base_android_library', ':dynamic_saporiveri'