From d5532132f3700de8d7337f16f1ea15cea827bd53 Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Fri, 15 Feb 2019 12:20:33 +0100 Subject: [PATCH] Creato script che cambia e classi in base alla build da fare. --- .idea/caches/build_file_checksums.ser | Bin 844 -> 844 bytes app/build.gradle | 272 +++++++++--------- .../core/context/AppContext.java | 3 + .../dynamic_customization/DynamicContext.java | 27 ++ .../extensions/FiltroOrdiniVendita.java | 12 + .../extensions/OrdiniVendita.java | 45 +++ build_azienda.bat | 79 ++--- dynamic__base/src/main/AndroidManifest.xml | 2 +- dynamic_vgalimenti/build.gradle | 3 +- .../src/main/AndroidManifest.xml | 2 +- 10 files changed, 267 insertions(+), 178 deletions(-) create mode 100644 app/src/main/java/it/integry/wms/dynamic_customization/DynamicContext.java create mode 100644 app/src/main/java/it/integry/wms/dynamic_customization/extensions/FiltroOrdiniVendita.java create mode 100644 app/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java diff --git a/.idea/caches/build_file_checksums.ser b/.idea/caches/build_file_checksums.ser index 624cda85bf47aad5ba162af81f5805f187442ba9..269f411b8a8d3150a115cbd3af603e1df1830d17 100644 GIT binary patch delta 36 ucmV+<0Nek}2FwPKm;~^DUssWw>=4$1M<5)Ec}es|D||6JlI^pY0ki=zJP;88 delta 36 ucmV+<0Nek}2FwPKm;~(oON)`5>=46maR*h4eISq2ppGQx{yejo0ki>3^AWcI diff --git a/app/build.gradle b/app/build.gradle index 315e2175..97ed80eb 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,153 +1,153 @@ -buildscript { - repositories { - maven { url 'https://maven.fabric.io/public' } - } +buildscript { + repositories { + maven { url 'https://maven.fabric.io/public' } + } - dependencies { - classpath 'io.fabric.tools:gradle:1.27.0' - } -} -apply plugin: 'com.android.application' -apply plugin: 'com.google.firebase.firebase-perf' -apply plugin: 'io.fabric' -apply plugin: 'kotlin-android' -apply plugin: 'kotlin-android-extensions' -apply plugin: 'com.google.gms.google-services' + dependencies { + classpath 'io.fabric.tools:gradle:1.27.0' + } +} +apply plugin: 'com.android.application' +apply plugin: 'com.google.firebase.firebase-perf' +apply plugin: 'io.fabric' +apply plugin: 'kotlin-android' +apply plugin: 'kotlin-android-extensions' +apply plugin: 'com.google.gms.google-services' -android { +android { - def appVersionCode = 36 - def appVersionName = '1.0.33' + def appVersionCode = 36 + def appVersionName = '1.0.33' - signingConfigs { - release { - keyAlias 'wms key' - keyPassword 'inpmiy' - storeFile file('Integry.jks') - storePassword 'inpmiy' - } - } + signingConfigs { + release { + keyAlias 'wms key' + keyPassword 'inpmiy' + storeFile file('Integry.jks') + storePassword 'inpmiy' + } + } - applicationVariants.all { variant -> - variant.outputs.all { output -> - output.outputFileName = "android-release_v2.apk" - } - } + applicationVariants.all { variant -> + variant.outputs.all { output -> + output.outputFileName = "android-release_v2.apk" + } + } - compileSdkVersion 28 - buildToolsVersion '28.0.3' + compileSdkVersion 28 + buildToolsVersion '28.0.3' - defaultConfig { - applicationId "it.integry.integrywmsnative" - minSdkVersion 21 - targetSdkVersion 28 - versionCode appVersionCode - versionName appVersionName - testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" - signingConfig signingConfigs.release - } + defaultConfig { + applicationId "it.integry.integrywmsnative" + minSdkVersion 21 + targetSdkVersion 28 + versionCode appVersionCode + versionName appVersionName + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + signingConfig signingConfigs.release + } - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' - signingConfig signingConfigs.release - } - } - dataBinding { - enabled = true - } - compileOptions { - targetCompatibility 1.8 - sourceCompatibility 1.8 - } - productFlavors { - } + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + signingConfig signingConfigs.release + } + } + dataBinding { + enabled = true + } + compileOptions { + targetCompatibility 1.8 + sourceCompatibility 1.8 + } + productFlavors { + } - build { - doLast { - delete "$projectDir/build/outputs/apk/release/version_v2.txt" - file("$projectDir/build/outputs/apk/release/version_v2.txt").text = appVersionCode + '\n' + appVersionName - } - } + build { + doLast { + delete "$projectDir/build/outputs/apk/release/version_v2.txt" + file("$projectDir/build/outputs/apk/release/version_v2.txt").text = appVersionCode + '\n' + appVersionName + } + } - gradle.projectsEvaluated { - tasks.withType(JavaCompile.class) { - options.compilerArgs << "-Xmaxerrs" << "10000" - } - } + gradle.projectsEvaluated { + tasks.withType(JavaCompile.class) { + options.compilerArgs << "-Xmaxerrs" << "10000" + } + } - lintOptions { - abortOnError false - } + lintOptions { + abortOnError false + } - dynamicFeatures = [":dynamic__base"] + dynamicFeatures = [":dynamic__base"] -} +} -dependencies { - implementation fileTree(include: ['*.jar'], dir: 'libs') - androidTestImplementation('androidx.test.espresso:espresso-core:3.1.1', { - exclude group: 'com.android.support', module: 'support-annotations' - }) - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" - implementation 'com.orhanobut:logger:2.2.0' - implementation 'com.google.firebase:firebase-core:16.0.7' - implementation 'com.google.firebase:firebase-crash:16.2.1' - implementation 'com.google.firebase:firebase-perf:16.2.3' - implementation 'com.crashlytics.sdk.android:crashlytics:2.9.8' - implementation 'androidx.appcompat:appcompat:1.1.0-alpha01' - implementation 'androidx.legacy:legacy-support-v4:1.0.0' - implementation 'com.google.android.material:material:1.1.0-alpha03' - implementation 'androidx.constraintlayout:constraintlayout:2.0.0-alpha3' - implementation 'androidx.cardview:cardview:1.0.0' - implementation 'androidx.recyclerview:recyclerview:1.1.0-alpha02' - implementation 'androidx.preference:preference:1.1.0-alpha02' - implementation 'com.squareup.okhttp3:okhttp:3.12.1' - implementation 'com.squareup.retrofit2:retrofit:2.3.0' - implementation 'com.squareup.retrofit2:converter-gson:2.0.0' - implementation 'com.annimon:stream:1.2.1' - implementation 'androidx.lifecycle:lifecycle-runtime:2.0.0' - implementation 'androidx.lifecycle:lifecycle-extensions:2.0.0' - implementation 'androidx.lifecycle:lifecycle-common-java8:2.0.0' - kapt "androidx.lifecycle:lifecycle-compiler:2.0.0" - implementation 'com.danielpuiu:ghostfish:2.0.0' - annotationProcessor "com.danielpuiu:ghostfish-compiler:2.0.0" - //MVVM - implementation 'androidx.lifecycle:lifecycle-extensions:2.0.0' - annotationProcessor "androidx.lifecycle:lifecycle-compiler:2.0.0" - implementation 'com.jakewharton.rxbinding2:rxbinding:2.1.1' - implementation 'com.jakewharton.rxbinding2:rxbinding-support-v4:2.1.1' - implementation 'com.jakewharton.rxbinding2:rxbinding-appcompat-v7:2.1.1' - implementation 'com.jakewharton.rxbinding2:rxbinding-design:2.1.1' - implementation 'com.jakewharton.rxbinding2:rxbinding-recyclerview-v7:2.1.1' - implementation 'com.jakewharton:butterknife:10.0.0' - annotationProcessor 'com.jakewharton:butterknife-compiler:10.0.0' - implementation 'br.com.zbra:android-linq:1.1.0' - //FAB - implementation 'com.github.clans:fab:1.6.4' - //CUSTOM VIEWS - implementation 'com.github.NaimishTrivedi:FBToast:1.0' - implementation 'de.hdodenhof:circleimageview:2.2.0' - implementation 'net.cachapa.expandablelayout:expandablelayout:2.9.2' - implementation 'com.github.frankiesardo:linearlistview:1.0.1@aar' - implementation 'com.github.andrefrsousa:SuperBottomSheet:1.2.1@aar' - implementation 'com.fede987:status-bar-alert:1.0.1' - implementation 'com.fxn769:stash:1.2' - testImplementation 'junit:junit:4.12' - implementation project(':waterfall_toolbar') - implementation 'com.mikhaellopez:lazydatepicker:1.0.0' - implementation 'com.github.demoNo:AutoScrollViewPager:v1.0.2' - //AppUpdate - implementation 'com.github.javiersantos:AppUpdater:2.7' - //Barcode - implementation project(':pointmobilescannerlibrary') - implementation project(path: ':barcode_base_library') -} -repositories { - mavenCentral() - maven { url 'https://maven.fabric.io/public' } -} +dependencies { + implementation fileTree(include: ['*.jar'], dir: 'libs') + androidTestImplementation('androidx.test.espresso:espresso-core:3.1.1', { + exclude group: 'com.android.support', module: 'support-annotations' + }) + implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" + implementation 'com.orhanobut:logger:2.2.0' + implementation 'com.google.firebase:firebase-core:16.0.7' + implementation 'com.google.firebase:firebase-crash:16.2.1' + implementation 'com.google.firebase:firebase-perf:16.2.3' + implementation 'com.crashlytics.sdk.android:crashlytics:2.9.9' + implementation 'androidx.appcompat:appcompat:1.1.0-alpha02' + implementation 'androidx.legacy:legacy-support-v4:1.0.0' + implementation 'com.google.android.material:material:1.1.0-alpha03' + implementation 'androidx.constraintlayout:constraintlayout:2.0.0-alpha3' + implementation 'androidx.cardview:cardview:1.0.0' + implementation 'androidx.recyclerview:recyclerview:1.1.0-alpha02' + implementation 'androidx.preference:preference:1.1.0-alpha03' + implementation 'com.squareup.okhttp3:okhttp:3.12.1' + implementation 'com.squareup.retrofit2:retrofit:2.3.0' + implementation 'com.squareup.retrofit2:converter-gson:2.0.0' + implementation 'com.annimon:stream:1.2.1' + implementation 'androidx.lifecycle:lifecycle-runtime:2.0.0' + implementation 'androidx.lifecycle:lifecycle-extensions:2.0.0' + implementation 'androidx.lifecycle:lifecycle-common-java8:2.0.0' + kapt "androidx.lifecycle:lifecycle-compiler:2.0.0" + implementation 'com.danielpuiu:ghostfish:2.0.0' + annotationProcessor "com.danielpuiu:ghostfish-compiler:2.0.0" + //MVVM + implementation 'androidx.lifecycle:lifecycle-extensions:2.0.0' + annotationProcessor "androidx.lifecycle:lifecycle-compiler:2.0.0" + implementation 'com.jakewharton.rxbinding2:rxbinding:2.1.1' + implementation 'com.jakewharton.rxbinding2:rxbinding-support-v4:2.1.1' + implementation 'com.jakewharton.rxbinding2:rxbinding-appcompat-v7:2.1.1' + implementation 'com.jakewharton.rxbinding2:rxbinding-design:2.1.1' + implementation 'com.jakewharton.rxbinding2:rxbinding-recyclerview-v7:2.1.1' + implementation 'com.jakewharton:butterknife:10.0.0' + annotationProcessor 'com.jakewharton:butterknife-compiler:10.0.0' + implementation 'br.com.zbra:android-linq:1.1.0' + //FAB + implementation 'com.github.clans:fab:1.6.4' + //CUSTOM VIEWS + implementation 'com.github.NaimishTrivedi:FBToast:1.0' + implementation 'de.hdodenhof:circleimageview:2.2.0' + implementation 'net.cachapa.expandablelayout:expandablelayout:2.9.2' + implementation 'com.github.frankiesardo:linearlistview:1.0.1@aar' + implementation 'com.github.andrefrsousa:SuperBottomSheet:1.2.1@aar' + implementation 'com.fede987:status-bar-alert:1.0.1' + implementation 'com.fxn769:stash:1.2' + testImplementation 'junit:junit:4.12' + implementation project(':waterfall_toolbar') + implementation 'com.mikhaellopez:lazydatepicker:1.0.0' + implementation 'com.github.demoNo:AutoScrollViewPager:v1.0.2' + //AppUpdate + implementation 'com.github.javiersantos:AppUpdater:2.7' + //Barcode + implementation project(':pointmobilescannerlibrary') + implementation project(path: ':barcode_base_library') +} +repositories { + mavenCentral() + maven { url 'https://maven.fabric.io/public' } +} diff --git a/app/src/main/java/it/integry/integrywmsnative/core/context/AppContext.java b/app/src/main/java/it/integry/integrywmsnative/core/context/AppContext.java index 2586a474..ba5048c4 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/context/AppContext.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/context/AppContext.java @@ -6,6 +6,8 @@ import com.crashlytics.android.Crashlytics; import com.orhanobut.logger.AndroidLogAdapter; import com.orhanobut.logger.Logger; +import java.io.IOException; + import io.fabric.sdk.android.Fabric; import it.integry.integrywmsnative.BuildConfig; import it.integry.integrywmsnative.core.REST.watcher.ServerStatusChecker; @@ -45,6 +47,7 @@ public class AppContext { } + private void initSettings() { Stash.init(mContext); SettingsManager.init(mContext); diff --git a/app/src/main/java/it/integry/wms/dynamic_customization/DynamicContext.java b/app/src/main/java/it/integry/wms/dynamic_customization/DynamicContext.java new file mode 100644 index 00000000..8fdc1a32 --- /dev/null +++ b/app/src/main/java/it/integry/wms/dynamic_customization/DynamicContext.java @@ -0,0 +1,27 @@ +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.FiltroOrdiniVendita; +import it.integry.wms.dynamic_customization.extensions.OrdiniVendita; + +public class DynamicContext { + + public void init(Context context) { + Log.d("DynamicContext", "Caricamento personalizzazioni per VGAlimenti"); + + try { + ClassRouter.registerPath(ClassRouter.PATH.FILTRO_ORDINI_VENDITA, FiltroOrdiniVendita.class); + ClassRouter.registerPath(ClassRouter.PATH.ORDINI_VENDITA, OrdiniVendita.class); + } catch (Exception ex) { + UtilityExceptions.defaultException(context, ex); + } + + Log.d("DynamicContext", "Caricamento personalizzazioni per VGAlimenti COMPLETATO"); + + } + +} diff --git a/app/src/main/java/it/integry/wms/dynamic_customization/extensions/FiltroOrdiniVendita.java b/app/src/main/java/it/integry/wms/dynamic_customization/extensions/FiltroOrdiniVendita.java new file mode 100644 index 00000000..abd5256a --- /dev/null +++ b/app/src/main/java/it/integry/wms/dynamic_customization/extensions/FiltroOrdiniVendita.java @@ -0,0 +1,12 @@ +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 true; + } +} diff --git a/app/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java b/app/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java new file mode 100644 index 00000000..2ef1e817 --- /dev/null +++ b/app/src/main/java/it/integry/wms/dynamic_customization/extensions/OrdiniVendita.java @@ -0,0 +1,45 @@ +package it.integry.wms.dynamic_customization.extensions; + +import android.app.ProgressDialog; + +import java.util.List; + +import it.integry.integrywmsnative.core.REST.consumers.ColliMagazzinoRESTConsumer; +import it.integry.integrywmsnative.core.REST.model.DistribuzioneColloDTO; +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.settings.SettingsManager; +import it.integry.integrywmsnative.core.utility.UtilityString; +import it.integry.integrywmsnative.gest.vendita.dto.OrdineVenditaGroupedInevasoDTO; + +public class OrdiniVendita implements IOrdiniVendita { + + @Override + public void distribuisciCollo(ProgressDialog progress, MtbColt mtbColt, List testateOrdini, RunnableArgs> onComplete, RunnableArgs onFailed) { + + + + String codMdepOrder = testateOrdini.get(0).ordini.get(0).getCodMdep(); + + //Se il deposito del collo è diverso dal deposito dell'utente allora sto "evadendo" la merce per una vendita presente + //su un altro deposito + if(!UtilityString.isNullOrEmpty(codMdepOrder) && + !codMdepOrder.equalsIgnoreCase(SettingsManager.i().userSession.depo.getCodMdep())) { + + ColliMagazzinoRESTConsumer.distribuisciCollo(mtbColt, + DistribuzioneColloDTO.CriterioDistribuzione.UPDATE, + onComplete, + onFailed); + + } else { + + ColliMagazzinoRESTConsumer.distribuisciCollo(mtbColt, + SettingsManager.iDB().getDefaultCriterioDistribuzione(), + onComplete, + onFailed); + } + + + } +} diff --git a/build_azienda.bat b/build_azienda.bat index 2df274f1..8475a177 100644 --- a/build_azienda.bat +++ b/build_azienda.bat @@ -2,50 +2,53 @@ SET nome_azienda=%1 -setlocal enabledelayedexpansion -set INTEXTFILE=build.gradle -set OUTTEXTFILE=build_out.gradle -set SEARCHTEXT=:dynamic__base -set REPLACETEXT=:dynamic_%nome_azienda% -set OUTPUTLINE= +rem setlocal enabledelayedexpansion +rem set INTEXTFILE=build.gradle +rem set OUTTEXTFILE=build_out.gradle +rem set SEARCHTEXT=:dynamic__base +rem set REPLACETEXT=:dynamic_%nome_azienda% +rem set OUTPUTLINE= -cd app +rem cd app -for /f "tokens=1,* delims=¶" %%A in ( '"findstr /n ^^ %INTEXTFILE%"') do ( - SET string=%%A - for /f "delims=: tokens=1,*" %%a in ("!string!") do set "string=%%b" - if "!string!" == "" ( - echo.>>%OUTTEXTFILE% - ) else ( - SET modified=!string:%SEARCHTEXT%=%REPLACETEXT%! - echo !modified! >> %OUTTEXTFILE% - ) -) -del %INTEXTFILE% -rename %OUTTEXTFILE% %INTEXTFILE% +rem for /f "tokens=1,* delims=¶" %%A in ( '"findstr /n ^^ %INTEXTFILE%"') do ( +rem SET string=%%A +rem for /f "delims=: tokens=1,*" %%a in ("!string!") do set "string=%%b" +rem if "!string!" == "" ( +rem echo.>>%OUTTEXTFILE% +rem ) else ( +rem SET modified=!string:%SEARCHTEXT%=%REPLACETEXT%! +rem echo !modified! >> %OUTTEXTFILE% +rem ) +rem ) +rem del %INTEXTFILE% +rem rename %OUTTEXTFILE% %INTEXTFILE% -cd .. +rem cd .. -call gradlew app:build --stacktrace +XCOPY dynamic_%nome_azienda%\src\main\java\it\integry app\src\main\java\it\integry\ /E +CALL gradlew app:build --stacktrace -cd app +RMDIR app\src\main\java\it\integry\wms\ /S /Q -for /f "tokens=1,* delims=¶" %%A in ( '"findstr /n ^^ %INTEXTFILE%"') do ( - SET string=%%A - for /f "delims=: tokens=1,*" %%a in ("!string!") do set "string=%%b" - if "!string!" == "" ( - echo.>>%OUTTEXTFILE% - ) else ( - SET modified=!string:%REPLACETEXT%=%SEARCHTEXT%! - echo !modified! >> %OUTTEXTFILE% - ) -) -del %INTEXTFILE% -rename %OUTTEXTFILE% %INTEXTFILE% +rem cd app -cd .. +rem for /f "tokens=1,* delims=¶" %%A in ( '"findstr /n ^^ %INTEXTFILE%"') do ( +rem SET string=%%A +rem for /f "delims=: tokens=1,*" %%a in ("!string!") do set "string=%%b" +rem if "!string!" == "" ( +rem echo.>>%OUTTEXTFILE% +rem ) else ( +rem SET modified=!string:%REPLACETEXT%=%SEARCHTEXT%! +rem echo !modified! >> %OUTTEXTFILE% +rem ) +rem ) +rem del %INTEXTFILE% +rem rename %OUTTEXTFILE% %INTEXTFILE% +rem +rem cd .. -mkdir app\build\outputs\apk\release\%nome_azienda% +MKDIR app\build\outputs\apk\release\%nome_azienda% -move app\build\outputs\apk\release\*.apk app\build\outputs\apk\release\%nome_azienda%\ -move app\build\outputs\apk\release\*.txt app\build\outputs\apk\release\%nome_azienda%\ +MOVE app\build\outputs\apk\release\*.apk app\build\outputs\apk\release\%nome_azienda%\ +MOVE app\build\outputs\apk\release\*.txt app\build\outputs\apk\release\%nome_azienda%\ diff --git a/dynamic__base/src/main/AndroidManifest.xml b/dynamic__base/src/main/AndroidManifest.xml index fb56d47f..b2800bb9 100644 --- a/dynamic__base/src/main/AndroidManifest.xml +++ b/dynamic__base/src/main/AndroidManifest.xml @@ -4,7 +4,7 @@ diff --git a/dynamic_vgalimenti/build.gradle b/dynamic_vgalimenti/build.gradle index 44c3d297..412793e8 100644 --- a/dynamic_vgalimenti/build.gradle +++ b/dynamic_vgalimenti/build.gradle @@ -7,9 +7,8 @@ android { targetSdkVersion 28 versionCode 1 versionName "1.0" - - } + buildToolsVersion '28.0.3' compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 diff --git a/dynamic_vgalimenti/src/main/AndroidManifest.xml b/dynamic_vgalimenti/src/main/AndroidManifest.xml index 317da564..706b70f6 100644 --- a/dynamic_vgalimenti/src/main/AndroidManifest.xml +++ b/dynamic_vgalimenti/src/main/AndroidManifest.xml @@ -4,7 +4,7 @@