diff --git a/.idea/AndroidProjectSystem.xml b/.idea/AndroidProjectSystem.xml new file mode 100644 index 0000000..4a53bee --- /dev/null +++ b/.idea/AndroidProjectSystem.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/.idea/caches/deviceStreaming.xml b/.idea/caches/deviceStreaming.xml new file mode 100644 index 0000000..8fb5154 --- /dev/null +++ b/.idea/caches/deviceStreaming.xml @@ -0,0 +1,1510 @@ + + + + + + \ No newline at end of file diff --git a/.idea/compiler.xml b/.idea/compiler.xml index fb7f4a8..b589d56 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,6 +1,6 @@ - + \ No newline at end of file diff --git a/.idea/deviceManager.xml b/.idea/deviceManager.xml new file mode 100644 index 0000000..91f9558 --- /dev/null +++ b/.idea/deviceManager.xml @@ -0,0 +1,13 @@ + + + + + + \ No newline at end of file diff --git a/.idea/gradle.xml b/.idea/gradle.xml index 27ef209..d5f2eb2 100644 --- a/.idea/gradle.xml +++ b/.idea/gradle.xml @@ -4,8 +4,9 @@ diff --git a/.idea/kotlinc.xml b/.idea/kotlinc.xml new file mode 100644 index 0000000..8d81632 --- /dev/null +++ b/.idea/kotlinc.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index 8fe5d23..64ef9f2 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -42,7 +42,8 @@ - + + diff --git a/.idea/modules.xml b/.idea/modules.xml index e5b1bce..203d389 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -2,13 +2,10 @@ - - - diff --git a/.idea/other.xml b/.idea/other.xml index 104e542..457b2de 100644 --- a/.idea/other.xml +++ b/.idea/other.xml @@ -3,6 +3,17 @@ diff --git a/.idea/runConfigurations.xml b/.idea/runConfigurations.xml new file mode 100644 index 0000000..16660f1 --- /dev/null +++ b/.idea/runConfigurations.xml @@ -0,0 +1,17 @@ + + + + + + \ No newline at end of file diff --git a/GSKMTOrange/build.gradle b/GSKMTOrange/build.gradle index c28f433..c7364e2 100644 --- a/GSKMTOrange/build.gradle +++ b/GSKMTOrange/build.gradle @@ -2,11 +2,11 @@ apply plugin: 'com.android.application' //apply plugin: 'io.fabric' apply plugin: 'com.google.gms.google-services' apply plugin: 'com.google.firebase.crashlytics' +apply plugin: 'org.jetbrains.kotlin.android' android { - compileSdk 34 - // buildToolsVersion '29.0.3' + compileSdk(35) useLibrary 'org.apache.http.legacy' - + namespace "cpm.com.gskmtorange" lintOptions { checkReleaseBuilds false disable 'MissingTranslation' @@ -14,18 +14,18 @@ android { } configurations { - all*.exclude module: 'okio' - all*.exclude group: 'com.squareup.okhttp3', module: 'okhttp' + // all*.exclude module: 'okio' + // all*.exclude group: 'com.squareup.okhttp3', module: 'okhttp' all*.exclude module: 'support-v4' // This removes all other versions of `support-v4` if gets duplicated from all the artifacts. } defaultConfig { applicationId "cpm.com.gskmtorange" - minSdkVersion 23 - targetSdkVersion 29 + minSdkVersion 24 + targetSdk(34) // For Lebanon - /*versionCode 1 + /* versionCode 1 versionName "1.0"*/ //For Egypt @@ -33,8 +33,8 @@ android { versionName "4.6"*/ //For UAE - /* versionCode 29 - versionName "4.1"*/ + /* versionCode 30 + versionName "4.2"*/ //For Turkey /* versionCode 34 @@ -45,8 +45,8 @@ android { versionName "4.4"*/ //For KSA - /*versionCode 28 - versionName "4.0"*/ + versionCode 29 + versionName "4.1" // aading price facing /* versionCode 27 @@ -69,8 +69,8 @@ android { versionName "1.0"*/ //For jordan - versionCode 6 - versionName "1.5" + /* versionCode 8 + versionName "1.7"*/ //For Kuwait /*versionCode 1 @@ -85,7 +85,7 @@ android { versionName "1.0"*/ //For Libya - /*versionCode 3 + /* versionCode 3 versionName "1.2"*/ //For Oman @@ -95,26 +95,28 @@ android { multiDexEnabled true testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } - buildTypes { - /* release { - debuggable true - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + signingConfigs { + config { + keyAlias 'hp' + keyPassword 'android' + storeFile file('D:\\jeevanp_cpm_projects\\keystore\\hp.dat') + storePassword 'android' } - debug { - minifyEnabled true - shrinkResources false - proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' - }*/ - + } + buildTypes { release { minifyEnabled false + debuggable true + signingConfig signingConfigs.config proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 + sourceCompatibility JavaVersion.VERSION_17 + targetCompatibility JavaVersion.VERSION_17 + } + kotlin { + jvmToolchain(17) } firebaseCrashlytics { nativeSymbolUploadEnabled true @@ -123,42 +125,43 @@ android { dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) + implementation files('libs/ksoap2-android-assembly-3.0.0-jar-with-dependencies.jar') + // implementation files('libs/ksoap2-android-assembly-3.6.2-jar-with-dependencies.jar') implementation 'androidx.cardview:cardview:1.0.0' - implementation 'com.google.android.material:material:1.2.1' + implementation 'com.google.android.material:material:1.12.0' implementation project(path: ':library') - implementation 'androidx.appcompat:appcompat:1.2.0' - implementation 'androidx.constraintlayout:constraintlayout:2.0.4' + implementation 'androidx.constraintlayout:constraintlayout:2.2.1' implementation 'androidx.legacy:legacy-support-v4:1.0.0' - implementation 'com.google.firebase:firebase-auth:20.0.3' - implementation 'androidx.activity:activity:1.9.3' - testImplementation 'junit:junit:4.13.1' - implementation 'android.arch.navigation:navigation-fragment:1.0.0' - androidTestImplementation 'com.android.support.test:runner:1.0.2' - androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2' - implementation 'com.google.code.gson:gson:2.8.7' - implementation 'com.github.bumptech.glide:glide:4.11.0' + implementation 'androidx.activity:activity:1.10.1' + implementation 'androidx.appcompat:appcompat:1.7.1' + testImplementation 'junit:junit:4.13.2' + implementation "androidx.navigation:navigation-fragment-ktx:2.9.0" + androidTestImplementation "androidx.test:core:1.6.1" + androidTestImplementation "androidx.test:espresso:espresso-core:3.5.1" + androidTestImplementation "androidx.test.ext:junit:1.2.1" + androidTestImplementation "androidx.test:annotation:1.0.1" + implementation 'com.google.code.gson:gson:2.11.0' + implementation 'com.github.bumptech.glide:glide:4.16.0' - implementation platform('com.google.firebase:firebase-bom:26.7.0') - // implementation 'com.google.firebase:firebase-analytics' - implementation 'com.google.firebase:firebase-crashlytics-ndk' + implementation platform('com.google.firebase:firebase-bom:33.14.0') + implementation 'com.google.firebase:firebase-crashlytics' implementation 'com.google.firebase:firebase-messaging' + implementation 'com.google.android.gms:play-services-location:21.3.0' + implementation 'com.google.android.gms:play-services-maps:19.2.0' + implementation 'com.google.firebase:firebase-analytics:22.4.0' + implementation 'com.google.firebase:firebase-appindexing:20.0.0' + // implementation 'com.google.firebase:firebase-crashlytics:19.4.3' + implementation 'com.google.firebase:firebase-auth:23.2.1' - implementation 'com.google.android.gms:play-services-location:17.1.0' - implementation 'com.google.android.gms:play-services-maps:17.0.0' - - implementation 'com.kyanogen.signatureview:signature-view:1.0' - implementation 'com.android.support:multidex:1.0.3' - implementation files('libs/ksoap2-android-assembly-3.6.2-jar-with-dependencies.jar') - implementation 'com.squareup.retrofit2:retrofit:2.0.2' + implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.retrofit:converter-gson:2.0.0-beta1' - implementation 'com.squareup.retrofit2:converter-gson:2.0.2' - implementation 'com.google.android.gms:play-services-appindexing:8.3.0' - // Add the Firebase Crashlytics SDK. - implementation 'com.google.firebase:firebase-crashlytics:17.3.0' - // Recommended: Add the Google Analytics SDK. - implementation 'com.google.firebase:firebase-analytics:18.0.0' - implementation(platform("org.jetbrains.kotlin:kotlin-bom:1.8.0")) + implementation 'com.squareup.retrofit2:converter-gson:2.9.0' + implementation 'com.squareup.okhttp3:okhttp:4.12.0' + implementation(platform("org.jetbrains.kotlin:kotlin-bom:1.8.22")) + implementation 'androidx.multidex:multidex:2.0.1' + implementation "androidx.core:core-splashscreen:1.0.1" } apply plugin: 'com.google.gms.google-services' +apply plugin: 'org.jetbrains.kotlin.android' diff --git a/GSKMTOrange/libs/ksoap2-android-assembly-3.0.0-jar-with-dependencies.jar b/GSKMTOrange/libs/ksoap2-android-assembly-3.0.0-jar-with-dependencies.jar new file mode 100644 index 0000000..bf4ebe2 Binary files /dev/null and b/GSKMTOrange/libs/ksoap2-android-assembly-3.0.0-jar-with-dependencies.jar differ diff --git a/GSKMTOrange/libs/ksoap2-android-assembly-3.6.2-jar-with-dependencies.jar b/GSKMTOrange/libs/ksoap2-android-assembly-3.6.2-jar-with-dependencies.jar deleted file mode 100644 index 9655bb8..0000000 Binary files a/GSKMTOrange/libs/ksoap2-android-assembly-3.6.2-jar-with-dependencies.jar and /dev/null differ diff --git a/GSKMTOrange/release/Haleon-Jordan-V-1.5-Stock_Entry-release.apk b/GSKMTOrange/release/Haleon-Ksa-direction-release.apk similarity index 57% rename from GSKMTOrange/release/Haleon-Jordan-V-1.5-Stock_Entry-release.apk rename to GSKMTOrange/release/Haleon-Ksa-direction-release.apk index 1508e80..94218ec 100644 Binary files a/GSKMTOrange/release/Haleon-Jordan-V-1.5-Stock_Entry-release.apk and b/GSKMTOrange/release/Haleon-Ksa-direction-release.apk differ diff --git a/GSKMTOrange/release/output-metadata.json b/GSKMTOrange/release/output-metadata.json index eddde83..e11503f 100644 --- a/GSKMTOrange/release/output-metadata.json +++ b/GSKMTOrange/release/output-metadata.json @@ -11,10 +11,11 @@ "type": "SINGLE", "filters": [], "attributes": [], - "versionCode": 6, - "versionName": "1.5", + "versionCode": 29, + "versionName": "4.1", "outputFile": "GSKMTOrange-release.apk" } ], - "elementType": "File" + "elementType": "File", + "minSdkVersionForDexing": 24 } \ No newline at end of file diff --git a/GSKMTOrange/src/debug/res/values/google_maps_api.xml b/GSKMTOrange/src/debug/res/values/google_maps_api.xml index c24c671..b990508 100644 --- a/GSKMTOrange/src/debug/res/values/google_maps_api.xml +++ b/GSKMTOrange/src/debug/res/values/google_maps_api.xml @@ -20,6 +20,7 @@ Once you have your key (it starts with "AIza"), replace the "google_maps_key" string in this file. --> - AIzaSyDdgvyAY0_pb-k7PLPJoG6wR-KN0xnhkRE + + AIzaSyCs2VZqLl4OgStAraUHr8012cUc7vf3Uo8 diff --git a/GSKMTOrange/src/main/AndroidManifest.xml b/GSKMTOrange/src/main/AndroidManifest.xml index 6e5ed2e..386f57e 100644 --- a/GSKMTOrange/src/main/AndroidManifest.xml +++ b/GSKMTOrange/src/main/AndroidManifest.xml @@ -8,6 +8,7 @@ android:required="false" /> + @@ -17,14 +18,15 @@ - - + + - - + + list = new ArrayList<>(); Cursor dbcursor = null; try { - if (key_account_id != null) { dbcursor = db.rawQuery("SELECT DISTINCT SB.SUB_CATEGORY_ID, MIA.IMAGE_ALLOW,SB.SUB_CATEGORY FROM " + tableName + " M INNER JOIN SKU_MASTER SK ON M.SKU_ID = SK.SKU_ID" + " INNER JOIN BRAND_MASTER BR ON SK.BRAND_ID = BR.BRAND_ID" + @@ -4737,7 +4734,6 @@ public class GSKOrangeDB extends SQLiteOpenHelper { " INNER JOIN MAPPING_SUB_CATEGORY_IMAGE_ALLOW MIA ON SB.SUB_CATEGORY_ID=MIA.SUB_CATEGORY_ID " + " WHERE M.KEYACCOUNT_ID = '" + key_account_id + " ' AND M.STORETYPE_ID = '" + store_type_id + "' AND M.CLASS_ID = '" + class_id + "' AND CA.CATEGORY_ID = '" + categoryId + "'", null); - } else { dbcursor = db.rawQuery("SELECT DISTINCT SB.SUB_CATEGORY_ID, MIA.IMAGE_ALLOW,SB.SUB_CATEGORY FROM MAPPING_STOCK_STOREWISE M INNER JOIN SKU_MASTER SK ON M.SKU_ID = SK.SKU_ID" + " INNER JOIN BRAND_MASTER BR ON SK.BRAND_ID = BR.BRAND_ID" + @@ -4745,16 +4741,12 @@ public class GSKOrangeDB extends SQLiteOpenHelper { " INNER JOIN CATEGORY_MASTER CA ON SB.CATEGORY_ID = CA.CATEGORY_ID" + " INNER JOIN MAPPING_SUB_CATEGORY_IMAGE_ALLOW MIA ON SB.SUB_CATEGORY_ID=MIA.SUB_CATEGORY_ID " + " WHERE M.STORE_ID = '" + store_id + "' AND CA.CATEGORY_ID = '" + categoryId + "'", null); - - } if (dbcursor != null) { dbcursor.moveToFirst(); while (!dbcursor.isAfterLast()) { - CategoryPictureGetterSetter CPGS = new CategoryPictureGetterSetter(); - CPGS.setSUB_CATEGORY(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SUB_CATEGORY"))); CPGS.setSUB_CATEGORY_ID(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SUB_CATEGORY_ID"))); CPGS.setImage_allow(dbcursor.getString(dbcursor.getColumnIndexOrThrow("IMAGE_ALLOW"))); @@ -5858,12 +5850,12 @@ public class GSKOrangeDB extends SQLiteOpenHelper { "on SB.CATEGORY_ID=CA.CATEGORY_ID " + "where CA.CATEGORY_ID='" + category_id + "' AND BR.BRAND_ID='" + brand_id + "' AND M.KEYACCOUNT_ID = '" + keyAccount_id + "' AND M.STORETYPE_ID = '" + storeType_id + "' AND MUST_HAVE = '" + 1 + - "' AND M.CLASS_ID = '" + class_id + "' order by M.MUST_HAVE DESC" + + "' AND M.CLASS_ID = '" + class_id + "'" + ////new query update ")as T OUTER left join (Select * from " + table + " where category_id='" + category_id + "' and Brand_Id='" + brand_id + "' AND Store_Id='" + store_id + "' AND " + CommonString.KEY_VISIT_DATE + "='" + visit_date + "')W" + - " on T.SKU_ID=W.SKU_ID and T.BRAND_ID=W.BRAND_ID", null); + " on T.SKU_ID=W.SKU_ID and T.BRAND_ID=W.BRAND_ID order by T.MUST_HAVE DESC", null); } else { dbcursor = db.rawQuery(quary + @@ -5884,11 +5876,11 @@ public class GSKOrangeDB extends SQLiteOpenHelper { "on SB.CATEGORY_ID=CA.CATEGORY_ID " + "where CA.CATEGORY_ID='" + category_id + "' AND BR.BRAND_ID='" + brand_id + "' AND M.KEYACCOUNT_ID = '" + keyAccount_id + "' AND M.STORETYPE_ID = '" + storeType_id + - "' AND M.CLASS_ID = '" + class_id + "' order by M.MUST_HAVE DESC" + + "' AND M.CLASS_ID = '" + class_id + "'" + ////new query update ")as T OUTER left join (Select * from " + table + " where category_id='" + category_id + "' and Brand_Id='" + brand_id + "' AND Store_Id='" + store_id + "'AND " + CommonString.KEY_VISIT_DATE + "='" + visit_date + "')W" + - " on T.SKU_ID=W.SKU_ID and T.BRAND_ID=W.BRAND_ID", null); + " on T.SKU_ID=W.SKU_ID and T.BRAND_ID=W.BRAND_ID order by T.MUST_HAVE DESC", null); } } else { dbcursor = db.rawQuery(quary + @@ -5908,11 +5900,11 @@ public class GSKOrangeDB extends SQLiteOpenHelper { "inner join CATEGORY_MASTER CA " + "on SB.CATEGORY_ID=CA.CATEGORY_ID " + "where CA.CATEGORY_ID='" + category_id + "' AND BR.BRAND_ID='" + brand_id + - "' AND M.STORE_ID = '" + store_id + "' order by SK.SKU_SEQUENCE_SA" + + "' AND M.STORE_ID = '" + store_id + "'" + ////new query update ")as T OUTER left join (Select * from " + table + " where category_id='" + category_id + "' and Brand_Id='" + brand_id + "' AND Store_Id='" + store_id + "'AND " + CommonString.KEY_VISIT_DATE + "='" + visit_date + "')W" + - " on T.SKU_ID=W.SKU_ID and T.BRAND_ID=W.BRAND_ID", null); + " on T.SKU_ID=W.SKU_ID and T.BRAND_ID=W.BRAND_ID order by T.SKU_SEQUENCE_SA", null); } if (dbcursor != null) { @@ -6849,11 +6841,11 @@ public class GSKOrangeDB extends SQLiteOpenHelper { " where M.KEYACCOUNT_ID =" + keyAccountId + " AND M.STORETYPE_ID =" + storeTypeId + " AND M.CLASS_ID =" + clasId + - " order by M.MUST_HAVE DESC) AS T" + + ") AS T" + " inner join" + " (Select * from Msl_Availability_Stock_Facing_Data where Store_Id='" + store_id + "'AND " + CommonString.KEY_VISIT_DATE + "='" + visit_date + - "')W on T.SKU_ID=W.SKU_ID and T.BRAND_ID=W.BRAND_ID", null); + "')W on T.SKU_ID=W.SKU_ID and T.BRAND_ID=W.BRAND_ID order by T.MUST_HAVE DESC", null); } else { dbcursor = db.rawQuery(" SELECT T.*,ifnull(W.FACING,0)as FACING,ifnull(W.STOCK,0)as STOCK,ifnull(W.PRICING,0)as PRICING," + @@ -6863,11 +6855,11 @@ public class GSKOrangeDB extends SQLiteOpenHelper { " inner join SKU_MASTER SK on M.SKU_ID=SK.SKU_ID inner join BRAND_MASTER BR on SK.BRAND_ID=BR.BRAND_ID inner join SUB_CATEGORY_MASTER SB" + " on BR.SUB_CATEGORY_ID=SB.SUB_CATEGORY_ID left join (SELECT * FROM MAPPING_SKU_PRICING_ENABLE WHERE STORE_ID ='" + store_id + "')AS PE" + " on PE.SUB_CATEGORY_ID=SB.SUB_CATEGORY_ID inner join CATEGORY_MASTER CA on SB.CATEGORY_ID=CA.CATEGORY_ID " + - " order by M.MUST_HAVE DESC) AS T" + + ") AS T" + " inner join" + " (Select * from Msl_Availability_Stock_Facing_Data where Store_Id='" + store_id + "'AND " + CommonString.KEY_VISIT_DATE + "='" + visit_date + - "')W on T.SKU_ID=W.SKU_ID and T.BRAND_ID=W.BRAND_ID", null); + "')W on T.SKU_ID=W.SKU_ID and T.BRAND_ID=W.BRAND_ID order by T.MUST_HAVE DESC", null); } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GeoTag/GeoTagActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GeoTag/GeoTagActivity.java index f47e1e0..9dd0350 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GeoTag/GeoTagActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GeoTag/GeoTagActivity.java @@ -1,5 +1,7 @@ package cpm.com.gskmtorange.GeoTag; +import static com.google.android.gms.location.LocationRequest.Builder.IMPLICIT_MIN_UPDATE_INTERVAL; + import android.Manifest; import android.app.AlertDialog; import android.app.Dialog; @@ -19,6 +21,7 @@ import android.net.Uri; import android.os.AsyncTask; import android.os.Build; import android.os.Bundle; +import android.os.Looper; import android.preference.PreferenceManager; import android.provider.MediaStore; import android.provider.Settings; @@ -44,9 +47,13 @@ import com.google.android.gms.appindexing.Thing; import com.google.android.gms.common.ConnectionResult; import com.google.android.gms.common.GooglePlayServicesUtil; import com.google.android.gms.common.api.GoogleApiClient; +import com.google.android.gms.location.FusedLocationProviderClient; +import com.google.android.gms.location.LocationCallback; import com.google.android.gms.location.LocationListener; import com.google.android.gms.location.LocationRequest; +import com.google.android.gms.location.LocationResult; import com.google.android.gms.location.LocationServices; +import com.google.android.gms.location.Priority; import com.google.android.gms.maps.CameraUpdateFactory; import com.google.android.gms.maps.GoogleMap; import com.google.android.gms.maps.OnMapReadyCallback; @@ -88,10 +95,6 @@ import cpm.com.gskmtorange.upload.Base64; import cpm.com.gskmtorange.xmlGetterSetter.FailureGetterSetter; import cpm.com.gskmtorange.xmlHandlers.FailureXMLHandler; -/** - * Created by ashishc on 27-12-2016. - */ - public class GeoTagActivity extends AppCompatActivity implements OnMapReadyCallback, GoogleApiClient.ConnectionCallbacks, GoogleApiClient.OnConnectionFailedListener, LocationListener { private Context context; String result, errormsg = ""; @@ -129,17 +132,14 @@ public class GeoTagActivity extends AppCompatActivity implements OnMapReadyCallb Boolean markerflag = true; private TextView percentage, message; private FailureGetterSetter failureGetterSetter = null; - /** - * ATTENTION: This was auto-generated to implement the App Indexing API. - * See https://g.co/AppIndexing/AndroidStudio for more information. - */ + + private FusedLocationProviderClient fusedLocationProviderClient; + LocationRequest locationRequest; + private GoogleApiClient client; Toolbar toolbar; - public GeoTagActivity() { - } - protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_geo_tag); @@ -148,7 +148,7 @@ public class GeoTagActivity extends AppCompatActivity implements OnMapReadyCallb preferences = PreferenceManager.getDefaultSharedPreferences(this); context = this; CommonFunctions.updateLangResources(context, preferences.getString(CommonString.KEY_LANGUAGE, "")); - + fusedLocationProviderClient = LocationServices.getFusedLocationProviderClient(this); username = preferences.getString(CommonString.KEY_USERNAME, null); //storeid = preferences.getString(CommonString.KEY_STORE_ID, null); //storename = preferences.getString(CommonString.KEY_STORE_NAME, null); @@ -168,7 +168,7 @@ public class GeoTagActivity extends AppCompatActivity implements OnMapReadyCallb db.open(); //storeid = getIntent().getStringExtra("Storeid"); - str = CommonString.FILE_PATH; + str = CommonString.getImagesFolder(context); mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map); @@ -271,7 +271,7 @@ public class GeoTagActivity extends AppCompatActivity implements OnMapReadyCallb @Override public void onClick(View view) { _pathforcheck = storeid + "GeoTag" + visitData.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - _path = CommonString.FILE_PATH + _pathforcheck; + _path = CommonString.getImagesFolder(context) + _pathforcheck; startCameraActivity(); } @@ -305,8 +305,6 @@ public class GeoTagActivity extends AppCompatActivity implements OnMapReadyCallb .addOnConnectionFailedListener(this) .addApi(LocationServices.API).build(); } - - protected void createLocationRequest() { mLocationRequest = new LocationRequest(); mLocationRequest.setInterval(UPDATE_INTERVAL); @@ -316,11 +314,8 @@ public class GeoTagActivity extends AppCompatActivity implements OnMapReadyCallb } protected void startLocationUpdates() { - - if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED || ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED) { - LocationServices.FusedLocationApi.requestLocationUpdates(mGoogleApiClient, mLocationRequest, this); } @@ -337,7 +332,7 @@ public class GeoTagActivity extends AppCompatActivity implements OnMapReadyCallb @Override public void onConnected(Bundle bundle) { - if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { + /* if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { // TODO: Consider calling // ActivityCompat#requestPermissions // here to request the missing permissions, and then overriding @@ -373,10 +368,8 @@ public class GeoTagActivity extends AppCompatActivity implements OnMapReadyCallb // if (mRequestingLocationUpdates) { - startLocationUpdates(); - // } + startLocationUpdates();*/ - // startLocationUpdates(); } @Override @@ -417,12 +410,49 @@ public class GeoTagActivity extends AppCompatActivity implements OnMapReadyCallb CommonFunctions.updateLangResources(context,preferences.getString(CommonString.KEY_LANGUAGE, "")); toolbar.setTitle(getResources().getString(R.string.title_activity_store_geotag)); - /* checkPlayServices(); + locationRequest = new LocationRequest.Builder(Priority.PRIORITY_HIGH_ACCURACY, 100000) + .setWaitForAccurateLocation(false) + .setMinUpdateIntervalMillis(IMPLICIT_MIN_UPDATE_INTERVAL) + .setMaxUpdateDelayMillis(1000) + .build(); + + + LocationCallback locationCallback = new LocationCallback() { + @Override + public void onLocationResult(LocationResult locationResult) { + if (locationResult != null) { + if (locationResult == null) { + return; + } + //Showing the latitude, longitude and accuracy on the home screen. + for (Location location : locationResult.getLocations()) { + latitude = location.getLatitude(); + longitude = location.getLongitude(); + // Log.e("latitude_inside",location.getLatitude() + "," +location.getLongitude()); + } + + if (ActivityCompat.checkSelfPermission(context, android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED + && ActivityCompat.checkSelfPermission(context, android.Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { + ActivityCompat.requestPermissions(GeoTagActivity.this, new String[]{android.Manifest.permission.ACCESS_FINE_LOCATION}, 1); + ActivityCompat.requestPermissions(GeoTagActivity.this, new String[]{android.Manifest.permission.ACCESS_COARSE_LOCATION}, 2); + } + + mMap.setMyLocationEnabled(true); + + if(markerflag) + { + // Add a marker of latest location and move the camera + LatLng latLng = new LatLng(latitude, longitude); + mMap.addMarker(new MarkerOptions().position(latLng)); + mMap.moveCamera(CameraUpdateFactory.newLatLng(latLng)); + mMap.animateCamera(CameraUpdateFactory.zoomTo(15)); + } + } + } + }; + + fusedLocationProviderClient.requestLocationUpdates(locationRequest, locationCallback, Looper.getMainLooper()); - // Resuming the periodic location updates - if (mGoogleApiClient.isConnected() && mRequestingLocationUpdates) { - startLocationUpdates(); - }*/ } @Override @@ -919,7 +949,7 @@ public class GeoTagActivity extends AppCompatActivity implements OnMapReadyCallb && !geotaglistImage.get(i).getUrl1() .equalsIgnoreCase("")) { - if (new File(CommonString.FILE_PATH + if (new File(CommonString.getImagesFolder(context) + geotaglistImage.get(i).getUrl1()).exists()) { result = UploadGeoImage(geotaglistImage.get(i).getUrl1(), "GeotagImages"); @@ -1122,7 +1152,7 @@ public class GeoTagActivity extends AppCompatActivity implements OnMapReadyCallb errormsg = ""; BitmapFactory.Options o = new BitmapFactory.Options(); o.inJustDecodeBounds = true; - BitmapFactory.decodeFile(CommonString.FILE_PATH + path, o); + BitmapFactory.decodeFile(CommonString.getImagesFolder(context) + path, o); // The new size we want to scale to final int REQUIRED_SIZE = 1024; @@ -1142,7 +1172,7 @@ public class GeoTagActivity extends AppCompatActivity implements OnMapReadyCallb // Decode with inSampleSize BitmapFactory.Options o2 = new BitmapFactory.Options(); o2.inSampleSize = scale; - Bitmap bitmap = BitmapFactory.decodeFile(CommonString.FILE_PATH + path, o2); + Bitmap bitmap = BitmapFactory.decodeFile(CommonString.getImagesFolder(context) + path, o2); ByteArrayOutputStream bao = new ByteArrayOutputStream(); bitmap.compress(Bitmap.CompressFormat.JPEG, 90, bao); @@ -1168,31 +1198,10 @@ public class GeoTagActivity extends AppCompatActivity implements OnMapReadyCallb if (result.toString().equalsIgnoreCase(CommonString.KEY_SUCCESS)) { - new File(CommonString.FILE_PATH + path).delete(); + new File(CommonString.getImagesFolder(context) + path).delete(); - /*SAXParserFactory saxPF = SAXParserFactory.newInstance(); - SAXParser saxP = saxPF.newSAXParser(); - XMLReader xmlR = saxP.getXMLReader(); - - // for failure - FailureXMLHandler failureXMLHandler = new FailureXMLHandler(); - xmlR.setContentHandler(failureXMLHandler); - - InputSource is = new InputSource(); - is.setCharacterStream(new StringReader(result.toString())); - xmlR.parse(is); - - failureGetterSetter = failureXMLHandler - .getFailureGetterSetter(); - - if (failureGetterSetter.getStatus().equalsIgnoreCase( - CommonString.KEY_FAILURE)) { - errormsg = failureGetterSetter.getErrorMsg(); - return CommonString.KEY_FAILURE; - }*/ - } else if (result.toString().equalsIgnoreCase(CommonString.KEY_FALSE)) { return CommonString.KEY_FALSE; } else { diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/LoginActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/LoginActivity.java index 9fe0f5f..df8d1f9 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/LoginActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/LoginActivity.java @@ -19,6 +19,7 @@ import android.os.AsyncTask; import android.os.Build; import android.os.Bundle; import android.os.Environment; +import android.os.Looper; import android.preference.PreferenceManager; import android.text.TextUtils; import android.util.Log; @@ -47,12 +48,16 @@ import com.google.android.gms.common.api.GoogleApiClient; import com.google.android.gms.common.api.PendingResult; import com.google.android.gms.common.api.ResultCallback; import com.google.android.gms.common.api.Status; +import com.google.android.gms.location.FusedLocationProviderClient; +import com.google.android.gms.location.LocationCallback; import com.google.android.gms.location.LocationListener; import com.google.android.gms.location.LocationRequest; +import com.google.android.gms.location.LocationResult; import com.google.android.gms.location.LocationServices; import com.google.android.gms.location.LocationSettingsRequest; import com.google.android.gms.location.LocationSettingsResult; import com.google.android.gms.location.LocationSettingsStatusCodes; +import com.google.android.gms.location.Priority; import com.google.android.gms.maps.model.LatLng; import com.google.android.material.snackbar.Snackbar; import com.google.firebase.analytics.FirebaseAnalytics; @@ -79,8 +84,10 @@ import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; +import java.util.HashMap; import java.util.List; import java.util.Locale; +import java.util.Map; import java.util.concurrent.TimeUnit; import cpm.com.gskmtorange.autoupdate.AutoUpdateActivity; @@ -94,10 +101,9 @@ import cpm.com.gskmtorange.xmlHandlers.XMLHandlers; //import io.fabric.sdk.android.Fabric; import static android.Manifest.permission.READ_CONTACTS; +import static com.google.android.gms.location.LocationRequest.Builder.IMPLICIT_MIN_UPDATE_INTERVAL; + -/** - * A login screen that offers login via userid/password. - */ public class LoginActivity extends AppCompatActivity implements GoogleApiClient.ConnectionCallbacks, GoogleApiClient.OnConnectionFailedListener, LocationListener { private static final int MY_PERMISSIONS_REQUEST_CAMERA = 10; @@ -105,6 +111,9 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient. private static final int MY_PERMISSIONS_REQUEST_STORAGE_READ = 12; private static final int MY_PERMISSIONS_REQUEST_STORAGE_WRITE = 14; private FirebaseAnalytics mFirebaseAnalytics; + + private static final int PERMISSION_ALL = 99; + String app_ver; LoginGetterSetter lgs = null; static int counter = 1; @@ -115,6 +124,10 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient. */ private static final int REQUEST_READ_CONTACTS = 0; + //New Location Changes + private FusedLocationProviderClient fusedLocationProviderClient; + LocationRequest locationRequest; + /** * A dummy authentication store containing known user names and passwords. * TODO: remove after connecting to a real authentication system. @@ -156,13 +169,14 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient. e.printStackTrace(); } - tv_version.setText("Version/Versiyon - " + app_ver); + tv_version.setText("Version/Versiyon - " + app_ver +"-T4"); preferences = PreferenceManager.getDefaultSharedPreferences(context); editor = preferences.edit(); // Set up the login form. museridView = (AutoCompleteTextView) findViewById(R.id.userid); //populateAutoComplete(); mPasswordView = (EditText) findViewById(R.id.password); + fusedLocationProviderClient = LocationServices.getFusedLocationProviderClient(this); //for lebanon // museridView.setText("test.lebanon1"); @@ -257,6 +271,7 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient. FirebaseCrashlytics.getInstance().recordException(e); } + checkAndRequestPermissions(); mFirebaseAnalytics = FirebaseAnalytics.getInstance(this); FirebaseCrashlytics.getInstance().setCrashlyticsCollectionEnabled(true); museridSignInButton = (CardView) findViewById(R.id.user_login_button); @@ -283,10 +298,137 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient. file_planogram.mkdir(); }*/ - checkAppPermission(Manifest.permission.CAMERA, MY_PERMISSIONS_REQUEST_CAMERA); + //checkAppPermission(Manifest.permission.CAMERA, MY_PERMISSIONS_REQUEST_CAMERA); } + private void checkAndRequestPermissions() { + //int permissionwrite_storage = ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE); + int CAMERA = ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA); + int ACCESS_NETWORK_STATE = ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_NETWORK_STATE); + int ACCESS_COARSE_LOCATION = ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION); + int locationPermission = ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION); + //int READ_EXTERNAL_STORAGE = ContextCompat.checkSelfPermission(this, Manifest.permission.READ_EXTERNAL_STORAGE); + int READ_PHONE_STATE = ContextCompat.checkSelfPermission(this, Manifest.permission.READ_PHONE_STATE); + List listPermissionsNeeded = new ArrayList<>(); + + if (CAMERA != PackageManager.PERMISSION_GRANTED) { + listPermissionsNeeded.add(Manifest.permission.CAMERA); + } + + if (ACCESS_NETWORK_STATE != PackageManager.PERMISSION_GRANTED) { + listPermissionsNeeded.add(Manifest.permission.ACCESS_NETWORK_STATE); + } + if (ACCESS_COARSE_LOCATION != PackageManager.PERMISSION_GRANTED) { + listPermissionsNeeded.add(Manifest.permission.ACCESS_COARSE_LOCATION); + } + if (locationPermission != PackageManager.PERMISSION_GRANTED) { + listPermissionsNeeded.add(Manifest.permission.ACCESS_FINE_LOCATION); + } + + if (READ_PHONE_STATE != PackageManager.PERMISSION_GRANTED) { + listPermissionsNeeded.add(Manifest.permission.READ_PHONE_STATE); + } + + if (!listPermissionsNeeded.isEmpty()) { + ActivityCompat.requestPermissions(this, listPermissionsNeeded.toArray(new String[listPermissionsNeeded.size()]), PERMISSION_ALL); + } + + if (checkPlayServices()) { + // Building the GoogleApi client + buildGoogleApiClient(); + createLocationRequest(); + } + + // Create an instance of GoogleAPIClient. + if (mGoogleApiClient == null) { + mGoogleApiClient = new GoogleApiClient.Builder(context) + .addConnectionCallbacks(this) + .addOnConnectionFailedListener(this) + .addApi(LocationServices.API) + .build(); + } + } + + @Override + public void onRequestPermissionsResult(int requestCode, @NonNull String permissions[], @NonNull int[] grantResults) { + super.onRequestPermissionsResult(requestCode, permissions, grantResults); + Log.d("", "Permission callback called-------"); + + if (checkPlayServices()) { + // Building the GoogleApi client + buildGoogleApiClient(); + createLocationRequest(); + } + + // Create an instance of GoogleAPIClient. + if (mGoogleApiClient == null) { + mGoogleApiClient = new GoogleApiClient.Builder(this) + .addConnectionCallbacks(this) + .addOnConnectionFailedListener(this) + .addApi(LocationServices.API) + .build(); + } + if (requestCode == PERMISSION_ALL) { + Map perms = new HashMap<>(); + // Initialize the map with both permissions + perms.put(Manifest.permission.CAMERA, PackageManager.PERMISSION_GRANTED); + perms.put(Manifest.permission.ACCESS_NETWORK_STATE, PackageManager.PERMISSION_GRANTED); + perms.put(Manifest.permission.ACCESS_COARSE_LOCATION, PackageManager.PERMISSION_GRANTED); + perms.put(Manifest.permission.ACCESS_FINE_LOCATION, PackageManager.PERMISSION_GRANTED); + perms.put(Manifest.permission.READ_PHONE_STATE, PackageManager.PERMISSION_GRANTED); + // Fill with actual results from user + if (grantResults.length > 0) { + for (int i = 0; i < permissions.length; i++) + perms.put(permissions[i], grantResults[i]); + // Check for both permissions// + if (perms.get(Manifest.permission.CAMERA) == PackageManager.PERMISSION_GRANTED + && perms.get(Manifest.permission.ACCESS_NETWORK_STATE) == PackageManager.PERMISSION_GRANTED + && perms.get(Manifest.permission.ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED + && perms.get(Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED + && perms.get(Manifest.permission.READ_PHONE_STATE) == PackageManager.PERMISSION_GRANTED) { + // imeiNumbers = imei.getDeviceImei(); + Log.d("", "sms & location services permission granted"); + // process the normal flow + //else any one or both the permissions are not granted + } else { + Log.d("", "Some permissions are not granted ask again "); + //permission is denied (this is the first time, when "never ask again" is not checked) so ask again explaining the usage of permission +// // shouldShowRequestPermissionRationale will return true + //show the dialog or snackbar saying its necessary and try again otherwise proceed with setup. + if ( + ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.CAMERA) || + ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.ACCESS_NETWORK_STATE) || + ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.ACCESS_COARSE_LOCATION) || + ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.ACCESS_FINE_LOCATION) || + ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.READ_EXTERNAL_STORAGE) || + ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.READ_PHONE_STATE)) { + showDialogOK("Location,Photos,media,file,manage phone calls and Camera Services Permission required for this app", + (dialog, which) -> { + switch (which) { + case DialogInterface.BUTTON_POSITIVE: + checkAndRequestPermissions(); + break; + case DialogInterface.BUTTON_NEGATIVE: + // proceed with logic by disabling the related features or quit the app. + Intent startMain = new Intent(Intent.ACTION_MAIN); + startMain.addCategory(Intent.CATEGORY_HOME); + startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + startActivity(startMain); + break; + } + }); + } + } + } + } + + } + + private void showDialogOK(String message, DialogInterface.OnClickListener okListener) { + new androidx.appcompat.app.AlertDialog.Builder(this).setMessage(message).setPositiveButton("OK", okListener).setNegativeButton("Cancel", okListener).create().show(); + } + /* private void populateAutoComplete() { if (!mayRequestContacts()) { return; @@ -526,7 +668,7 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient. + "[/PASSWORD]" + "[IN_TIME]" + CommonFunctions.getCurrentTimeWithLanguage(context) + "[/IN_TIME]" + "[LATITUDE]" + lat + "[/LATITUDE]" + "[LONGITUDE]" + lon - + "[/LONGITUDE]" + "[APP_VERSION]" + app_ver + + "[/LONGITUDE]" + "[APP_VERSION]" + app_ver +"-T4" + "[/APP_VERSION]" + "[ATT_MODE]OnLine[/ATT_MODE]" + "[NETWORK_STATUS]" + "LoginStatus" + "[/NETWORK_STATUS]" + "[/USER_DATA][/DATA]"; @@ -687,12 +829,6 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient. }); } catch (Exception e) { FirebaseCrashlytics.getInstance().recordException(e); - /* final AlertMessage message = new AlertMessage( - LoginActivity.this, AlertMessage.MESSAGE_EXCEPTION, - "acra_login", e);*/ - // Crashlytics.log(7, CommonString.MESSAGE_EXCEPTION, e.toString()); - // Crashlytics.logException(e.getCause()); - // Crashlytics.logException(new Exception("My custom login Exception")); runOnUiThread(new Runnable() { @Override public void run() { @@ -819,78 +955,7 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient. return cdate; } - public void uploadPreviousImages() { - try { - File f = new File(CommonString.FILE_PATH); - if (f != null) { - File file[] = f.listFiles(); - if (file != null && file.length > 0) { - String newPattern = "EEE MMM dd HH:mm:ss Z yyyy"; - SimpleDateFormat sdf = new SimpleDateFormat(newPattern, Locale.ENGLISH); - Date c = Calendar.getInstance().getTime(); - System.out.println("Current time => " + c); - - //SimpleDateFormat df = new SimpleDateFormat("dd-MMM-yyyy"); - String formattedDate = sdf.format(c); - - Date visitdate = sdf.parse(formattedDate); - - for (int i = 0; i < file.length; i++) { - Date lastModDate = new Date(file[i].lastModified()); - String day = lastModDate.toString(); - //String day = "Sun Apr 01 22:20:48 GMT+05:30 2018"; - Date file_date = sdf.parse(day); - - - long diff = visitdate.getTime() - file_date.getTime(); - System.out.println("Days: " + TimeUnit.DAYS.convert(diff, TimeUnit.MILLISECONDS)); - long difference = TimeUnit.DAYS.convert(diff, TimeUnit.MILLISECONDS); - if (difference > 12) { - file[i].delete(); - } - - /*SimpleDateFormat spf= new SimpleDateFormat("MM/dd/yyyy"); - date = spf.format(newDate); - System.out.println(date);*/ - } - if (file.length > 0) { - UploadImageWithRetrofit.uploadedFiles = 0; - UploadImageWithRetrofit.totalFiles = file.length; - UploadImageWithRetrofit uploadImg = new UploadImageWithRetrofit("", userid, LoginActivity.this); - //uploadImg.UploadImageRecursive(LoginActivity.this); - } else { - sendToMain(); - } - - } else { - sendToMain(); - } - - - } else { - sendToMain(); - } - } catch (ParseException e) { - e.printStackTrace(); - sendToMain(); - } - } - - public void sendToMain() { - // Check if no view has focus: - View view = this.getCurrentFocus(); - if (view != null) { - InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); - imm.hideSoftInputFromWindow(view.getWindowToken(), 0); - } - - Intent intent = new Intent(getBaseContext(), - MainActivity.class); - startActivity(intent); - - finish(); - } private void setDataFromSharedPreferences(LoginGetterSetter lgs) { Gson gson = new Gson(); @@ -938,14 +1003,14 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient. // Create a Folder for Images - File file = new File(Environment.getExternalStorageDirectory(), ".GSK_MT_ORANGE_IMAGES"); + /* File file = new File(Environment.getExternalStorageDirectory(), ".GSK_MT_ORANGE_IMAGES"); if (!file.isDirectory()) { file.mkdir(); } File file_planogram = new File(Environment.getExternalStorageDirectory(), "GSK_MT_ORANGE_Planogram_Images"); if (!file_planogram.isDirectory()) { file_planogram.mkdir(); - } + }*/ if (checkPlayServices()) { // Building the GoogleApi client @@ -1005,32 +1070,44 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient. } checkgpsEnableDevice(); + locationRequest= new LocationRequest.Builder(Priority.PRIORITY_HIGH_ACCURACY, 100000) + .setWaitForAccurateLocation(false) + .setMinUpdateIntervalMillis(IMPLICIT_MIN_UPDATE_INTERVAL) + .setMaxUpdateDelayMillis(1000) + .build(); + LocationCallback locationCallback = new LocationCallback() { + @Override + public void onLocationResult(LocationResult locationResult) { + if (locationResult != null) { + if (locationResult == null) { + return; + } + //Showing the latitude, longitude and accuracy on the home screen. + for (Location location : locationResult.getLocations()) { + lat = location.getLatitude(); + lon = location.getLongitude(); + // Log.e("latitude_inside",location.getLatitude() + "," +location.getLongitude()); + } + } + } + }; + if (ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED + && ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { + ActivityCompat.requestPermissions(LoginActivity.this, new String[]{android.Manifest.permission.ACCESS_FINE_LOCATION}, 1); + ActivityCompat.requestPermissions(LoginActivity.this, new String[]{android.Manifest.permission.ACCESS_COARSE_LOCATION}, 2); + } + fusedLocationProviderClient.requestLocationUpdates(locationRequest, locationCallback, Looper.getMainLooper()); } - @Override + /*@Override public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { super.onRequestPermissionsResult(requestCode, permissions, grantResults); checkAppPermission(Manifest.permission.CAMERA, MY_PERMISSIONS_REQUEST_CAMERA); - /*if (requestCode == PERMISSIONS_REQUEST_READ_PHONE_STATE - && grantResults[0] == PackageManager.PERMISSION_GRANTED) { - imeiNumbers = imei.getDeviceImei(); - } - - */ - - /* if (Build.VERSION.SDK_INT >= 23 && ContextCompat.checkSelfPermission(getApplicationContext(), - android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && - ContextCompat.checkSelfPermission(getApplicationContext(), - android.Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { - return; - }*/ - if (checkPlayServices()) { // Building the GoogleApi client buildGoogleApiClient(); - createLocationRequest(); } @@ -1044,7 +1121,7 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient. } } - +*/ private boolean checkPlayServices() { int resultCode = GooglePlayServicesUtil .isGooglePlayServicesAvailable(this); @@ -1125,7 +1202,7 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient. @Override public void onConnected(Bundle bundle) { Log.e("onConnectdata","true" + ","+mGoogleApiClient); - if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { + /*if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { // TODO: Consider calling // ActivityCompat#requestPermissions // here to request the missing permissions, and then overriding @@ -1136,7 +1213,6 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient. return; } mLastLocation = LocationServices.FusedLocationApi.getLastLocation(mGoogleApiClient); -// Log.e("mlastlocationdata",mLastLocation.getLatitude() + ","+mLastLocation.getLongitude() + ","+mLastLocation); if (ContextCompat.checkSelfPermission(context, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED || ContextCompat.checkSelfPermission(context, Manifest.permission.ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED) { if (mLastLocation != null) { @@ -1145,7 +1221,7 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient. // Toast.makeText(getApplicationContext(), "onconnected lat-" + lat + " Long-" + lon, Toast.LENGTH_SHORT).show(); } startLocationUpdates(); - } + }*/ } @Override diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java index 1db9663..dc755f5 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java @@ -96,6 +96,7 @@ public class MainActivity extends AppCompatActivity webView = (WebView) findViewById(R.id.webview); String url = preferences.getString(CommonString.KEY_NOTICE_BOARD_LINK, ""); + // String url = "https://dle.parinaam.in/OneApp/Dabur/brand-spiels/dabur-brand-spiels.html"; user_name = preferences.getString(CommonString.KEY_USERNAME, null); country_id = preferences.getString(CommonString.KEY_COUNTRY_ID, null); @@ -276,6 +277,7 @@ public class MainActivity extends AppCompatActivity @Override public void onBackPressed() { + super.onBackPressed(); DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout); if (drawer.isDrawerOpen(GravityCompat.START)) { drawer.closeDrawer(GravityCompat.START); @@ -284,27 +286,7 @@ public class MainActivity extends AppCompatActivity } } - /*@Override - public boolean onCreateOptionsMenu(Menu menu) { - // Inflate the menu; this adds items to the action bar if it is present. - getMenuInflater().inflate(R.menu.main, menu); - return true; - } - @Override - public boolean onOptionsItemSelected(MenuItem item) { - // Handle action bar item clicks here. The action bar will - // automatically handle clicks on the Home/Up button, so long - // as you specify a parent activity in AndroidManifest.xml. - int id = item.getItemId(); - - //noinspection SimplifiableIfStatement - if (id == R.id.action_settings) { - return true; - } - - return super.onOptionsItemSelected(item); - }*/ @SuppressWarnings("StatementWithEmptyBody") @Override @@ -320,8 +302,8 @@ public class MainActivity extends AppCompatActivity overridePendingTransition(R.anim.activity_in, R.anim.activity_out); } else if (id == R.id.nav_download) { - - checkAppPermission(Manifest.permission.CAMERA, MY_PERMISSIONS_REQUEST_CAMERA); + downloadMethod(); + //checkAppPermission(Manifest.permission.CAMERA, MY_PERMISSIONS_REQUEST_CAMERA); } else if (id == R.id.nav_upload) { @@ -697,14 +679,14 @@ public class MainActivity extends AppCompatActivity // Create a Folder for Images - File file = new File(Environment.getExternalStorageDirectory(), ".GSK_MT_ORANGE_IMAGES"); + /*File file = new File(Environment.getExternalStorageDirectory(), ".GSK_MT_ORANGE_IMAGES"); if (!file.isDirectory()) { file.mkdir(); } File file_planogram = new File(Environment.getExternalStorageDirectory(), "GSK_MT_ORANGE_Planogram_Images"); if (!file_planogram.isDirectory()) { file_planogram.mkdir(); - } + }*/ downloadMethod(); } @@ -877,7 +859,5 @@ public class MainActivity extends AppCompatActivity }); AlertDialog alert = builder.create(); alert.show(); - - } } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/SelectLanguageActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/SelectLanguageActivity.java index 981130c..95edb76 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/SelectLanguageActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/SelectLanguageActivity.java @@ -85,35 +85,33 @@ public class SelectLanguageActivity extends AppCompatActivity implements View.On public void onClick(View view) { int id = view.getId(); - switch (id) { - case R.id.btn_language_one: - selected_flag = true; - CommonFunctions.updateLangResources(context, language.get(0)); - btn_lang_1.setBackgroundColor(getResources().getColor(R.color.colorPrimary)); - btn_lang_1.setTextColor(getResources().getColor(R.color.white)); - btn_lang_2.setTextColor(getResources().getColor(R.color.black)); - btn_lang_2.setBackgroundColor(getResources().getColor(R.color.grey_background)); - editor.putString(CommonString.KEY_LANGUAGE, language.get(0)); - editor.putString(CommonString.KEY_CULTURE_ID, culture_id.get(0)); - editor.putString(CommonString.KEY_NOTICE_BOARD_LINK, login_data.getNOTICE_URL().get(0)); - editor.commit(); - break; + if (id == R.id.btn_language_one) { + selected_flag = true; + CommonFunctions.updateLangResources(context, language.get(0)); + btn_lang_1.setBackgroundColor(getResources().getColor(R.color.colorPrimary)); + btn_lang_1.setTextColor(getResources().getColor(R.color.white)); + btn_lang_2.setTextColor(getResources().getColor(R.color.black)); + btn_lang_2.setBackgroundColor(getResources().getColor(R.color.grey_background)); + editor.putString(CommonString.KEY_LANGUAGE, language.get(0)); + editor.putString(CommonString.KEY_CULTURE_ID, culture_id.get(0)); + editor.putString(CommonString.KEY_NOTICE_BOARD_LINK, login_data.getNOTICE_URL().get(0)); + editor.commit(); - case R.id.btn_language_two: - selected_flag = true; - CommonFunctions.updateLangResources(context, language.get(1)); - btn_lang_1.setBackgroundColor(getResources().getColor(R.color.grey_background)); - btn_lang_1.setTextColor(getResources().getColor(R.color.black)); - btn_lang_2.setTextColor(getResources().getColor(R.color.white)); - btn_lang_2.setBackgroundColor(getResources().getColor(R.color.colorPrimary)); - editor.putString(CommonString.KEY_LANGUAGE, language.get(1)); - editor.putString(CommonString.KEY_CULTURE_ID, culture_id.get(1)); - editor.putString(CommonString.KEY_NOTICE_BOARD_LINK, login_data.getNOTICE_URL().get(1)); - editor.commit(); - break; + } else if (id == R.id.btn_language_two) { + selected_flag = true; + CommonFunctions.updateLangResources(context, language.get(1)); + btn_lang_1.setBackgroundColor(getResources().getColor(R.color.grey_background)); + btn_lang_1.setTextColor(getResources().getColor(R.color.black)); + btn_lang_2.setTextColor(getResources().getColor(R.color.white)); + btn_lang_2.setBackgroundColor(getResources().getColor(R.color.colorPrimary)); + editor.putString(CommonString.KEY_LANGUAGE, language.get(1)); + editor.putString(CommonString.KEY_CULTURE_ID, culture_id.get(1)); + editor.putString(CommonString.KEY_NOTICE_BOARD_LINK, login_data.getNOTICE_URL().get(1)); + editor.commit(); } + } - + private void setDataFromSharedPreferences(LoginGetterSetter lgs) { Gson gson = new Gson(); String jsonCurProduct = gson.toJson(lgs); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/SplashScreenActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/SplashScreenActivity.java index 216d101..68639dc 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/SplashScreenActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/SplashScreenActivity.java @@ -1,5 +1,6 @@ package cpm.com.gskmtorange; +import android.annotation.SuppressLint; import android.content.Context; import android.content.Intent; import android.content.SharedPreferences; @@ -39,7 +40,10 @@ public class SplashScreenActivity extends AppCompatActivity { Window window = getWindow(); window.setFormat(PixelFormat.RGBA_8888); } - /** Called when the activity is first created. */ + + /** + * Called when the activity is first created. + */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -54,7 +58,7 @@ public class SplashScreenActivity extends AppCompatActivity { sendToLogin(); - /* File f = new File(CommonString.FILE_PATH_OLD); + /* File f = new File(CommonString.getImagesFolder(context)_OLD); if(f!=null){ File file[] = f.listFiles(); if(file!=null){ @@ -102,25 +106,24 @@ public class SplashScreenActivity extends AppCompatActivity { }*/ - public void sendToLogin(){ + public void sendToLogin() { new Handler().postDelayed(new Runnable() { - /* - * Showing splash screen with a timer. This will be useful when you - * want to show case your app logo / company - */ + /* + * Showing splash screen with a timer. This will be useful when you + * want to show case your app logo / company + */ @Override public void run() { //after Mpin String mpin = preferences.getString(CommonString.MPIN, null); - if(mpin!=null){ + if (mpin != null) { Intent in = new Intent(context, MPinActivity.class); in.putExtra(CommonString.IS_PASSWORD_CHECK, true); startActivity(in); finish(); - } - else { + } else { Intent i = new Intent(context, LoginActivity.class); startActivity(i); finish(); @@ -132,7 +135,7 @@ public class SplashScreenActivity extends AppCompatActivity { public static String getCalculatedDate(String date, String dateFormat, int days) { Calendar cal = Calendar.getInstance(); - SimpleDateFormat s = new SimpleDateFormat(dateFormat); + @SuppressLint("SimpleDateFormat") SimpleDateFormat s = new SimpleDateFormat(dateFormat); cal.add(Calendar.DAY_OF_YEAR, days); try { return s.format(new Date(s.parse(date).getTime())); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/autoupdate/AutoUpdateActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/autoupdate/AutoUpdateActivity.java index f025193..e8fdde2 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/autoupdate/AutoUpdateActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/autoupdate/AutoUpdateActivity.java @@ -144,10 +144,11 @@ public class AutoUpdateActivity extends AppCompatActivity { + " MB"; Log.e("appsize",size); - String PATH = Environment.getExternalStorageDirectory() - + "/download/"; + /*String PATH = Environment.getExternalStorageDirectory() + + "/download/";*/ + String PATH = CommonString.getApkFolder(context); File file = new File(PATH); - file.mkdirs(); + // file.mkdirs(); File outputFile = new File(file, "app.apk"); FileOutputStream fos = new FileOutputStream(outputFile); @@ -186,7 +187,6 @@ public class AutoUpdateActivity extends AppCompatActivity { AutoUpdateActivity.this, AlertMessage.MESSAGE_EXCEPTION, "download", e);*/ runOnUiThread(new Runnable() { - @Override public void run() { // TODO Auto-generated method stub @@ -195,9 +195,6 @@ public class AutoUpdateActivity extends AppCompatActivity { }); } catch (MalformedURLException e) { - /* final AlertMessage message = new AlertMessage( - AutoUpdateActivity.this, - AlertMessage.MESSAGE_EXCEPTION, "download", e);*/ runOnUiThread(new Runnable() { @Override @@ -208,9 +205,6 @@ public class AutoUpdateActivity extends AppCompatActivity { }); } catch (IOException e) { - /* final AlertMessage message = new AlertMessage( - AutoUpdateActivity.this, - AlertMessage.MESSAGE_SOCKETEXCEPTION, "update", e);*/ runOnUiThread(new Runnable() { @Override @@ -220,9 +214,6 @@ public class AutoUpdateActivity extends AppCompatActivity { } }); } catch (Exception e) { - /* final AlertMessage message = new AlertMessage( - AutoUpdateActivity.this, - AlertMessage.MESSAGE_EXCEPTION, "download", e);*/ runOnUiThread(new Runnable() { @Override @@ -254,9 +245,7 @@ public class AutoUpdateActivity extends AppCompatActivity { if (result.equals(CommonString.KEY_SUCCESS)) { - File toInstall = new File(Environment.getExternalStorageDirectory() - + "/download/" - + "app.apk"); + File toInstall = new File(CommonString.getApkFolder(context) + "app.apk"); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { Uri apkUri = FileProvider.getUriForFile(context, "cpm.com.gskmtorange.fileprovider", toInstall); @@ -291,10 +280,6 @@ public class AutoUpdateActivity extends AppCompatActivity { builder.setMessage(str).setCancelable(false) .setPositiveButton("OK", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int id) { - - /* Intent i = new Intent(activity, StorelistActivity.class); - activity.startActivity(i); - activity.finish();*/ finish(); } }); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/constant/CommonString.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/constant/CommonString.java index ee02f80..bd15c15 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/constant/CommonString.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/constant/CommonString.java @@ -1,7 +1,10 @@ package cpm.com.gskmtorange.constant; +import android.content.Context; import android.os.Environment; +import cpm.com.gskmtorange.AppUtils; + /** * Created by yadavendras on 19-12-2016. */ @@ -9,6 +12,7 @@ public class CommonString { public static final String BACKUP_PATH = Environment.getExternalStorageDirectory().getPath() + "/gsk_orange_backup"; // webservice constants // preferenec keys + public static final String PD_PROJECT_iD = "4f57635b-6b07-45bf-bfba-c61c2826b6db"; public static final String KEY_USERNAME = "username"; public static final String KEY_PASSWORD = "password"; public static final String KEY_DATE = "date"; @@ -107,7 +111,6 @@ public class CommonString { public static final String FROM_ADDITIONAL_ADHOC = "ADDITIONAL_ADHOC"; public static final String TABLE_INSERT_STOCK_DIALOG = "STOCK_DIALOG"; - public static final String KEY_P = "P"; public static final String KEY_D = "D"; public static final String KEY_U = "U"; @@ -143,7 +146,7 @@ public class CommonString { public static final int UNIT_HORIZONTAL = 200; // public static String URL = "http://gskme.parinaam.in/Gskwebservice.asmx"; - public static String URL = "http://gskmeIR.parinaam.in/Gskwebservice.asmx"; + public static String URL = "https://haleonme.parinaam.in/Gskwebservice.asmx"; // public static String URL = "https://gskme1.parinaam.in/Gskwebservice.asmx"; //Added new Test url for Turkey // public static String URL = "http://gskmetest.parinaam.in/Gskwebservice.asmx"; @@ -200,6 +203,7 @@ public class CommonString { public static final String METHOD_UPLOAD_COVERAGE_STATUS_PHARMA = "UploadCoverage_Status_Pharma"; public static final String SOAP_ACTION = "http://tempuri.org/"; + public static final String TABLE_INSERT_STOCK = "Stock_Data"; public static final String SOAP_ACTION_UPLOAD_STORE_COVERAGE = "http://tempuri.org/" + METHOD_UPLOAD_COVERAGE; @@ -1002,7 +1006,7 @@ public class CommonString { + ")"; public static final String CREATE_TABLE_INSERT_STOCK = "CREATE TABLE IF NOT EXISTS " - + TABLE_INSERT_MSL_AVAILABILITY_STOCK_FACING + + TABLE_INSERT_STOCK + "(" + "KEY_ID" + " INTEGER PRIMARY KEY AUTOINCREMENT ," @@ -1234,7 +1238,7 @@ public class CommonString { + ")"; - public static final String TABLE_INSERT_STOCK = "Stock_Data"; + public static final String CREATE_TABLE_INSERT_STOCK_ENTRY = "CREATE TABLE IF NOT EXISTS " + TABLE_INSERT_STOCK_ENTRY @@ -1530,4 +1534,26 @@ public class CommonString { + KEY_VISIT_ID + " INTEGER)"; + public static final String BACKUP_FOLDER_NAME = "HaleonMT_Backup"; + public static final String IMAGE_FOLDER_NAME = "HaleonMT_Images"; + public static final String Download_IMAGE_FOLDER = "Downloaded_HaleonMT_Images"; + public static final String ApkFolder = "HaleonMT_ApkFolder"; + + public static String getApkFolder(Context context) { + return AppUtils.getInternalDirectory(context, ApkFolder).getAbsolutePath() + "/"; + } + + public static String getImagesFolder(Context context) { + return AppUtils.getInternalDirectory(context, IMAGE_FOLDER_NAME).getAbsolutePath() + "/"; + } + + public static String getDownloadedImageFolder(Context context) { + return AppUtils.getInternalDirectory(context, Download_IMAGE_FOLDER).getAbsolutePath() + "/"; + } + + public static String getBackupFolder(Context context) { + return AppUtils.getInternalDirectory(context, BACKUP_FOLDER_NAME).getAbsolutePath() + "/"; + } + + } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/AdditionalPromoSKUwiseActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/AdditionalPromoSKUwiseActivity.java index 0819268..b57076c 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/AdditionalPromoSKUwiseActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/AdditionalPromoSKUwiseActivity.java @@ -1,5 +1,6 @@ package cpm.com.gskmtorange.dailyentry; +import android.annotation.SuppressLint; import android.app.Activity; import android.app.AlertDialog; import android.content.ActivityNotFoundException; @@ -219,84 +220,66 @@ public class AdditionalPromoSKUwiseActivity extends AppCompatActivity implements @Override public void onItemSelected(AdapterView parent, View view, int position, long id) { - switch (parent.getId()) { - case R.id.sp_sub_category: + if (parent.getId() == R.id.sp_sub_category) { - if (position != 0) { - sub_category = sub_category_list.get(position).getSub_category(); - sub_category_id = sub_category_list.get(position).getSub_category_id(); + if (position != 0) { + sub_category = sub_category_list.get(position).getSub_category(); + sub_category_id = sub_category_list.get(position).getSub_category_id(); - brand_list = db.getBrandMasterDataBySubCategory(sub_category_id); + brand_list = db.getBrandMasterDataBySubCategory(sub_category_id); - BrandMasterGetterSetter brand_select = new BrandMasterGetterSetter(); - String str = getResources().getString(R.string.select); - brand_select.setBRAND(str); - brand_select.setBRAND_ID("0"); - brand_list.add(0, brand_select); - CustomBrandAdapter adapter = new CustomBrandAdapter(AdditionalPromoSKUwiseActivity.this, R.layout.custom_spinner_item, brand_list); + BrandMasterGetterSetter brand_select = new BrandMasterGetterSetter(); + String str = getResources().getString(R.string.select); + brand_select.setBRAND(str); + brand_select.setBRAND_ID("0"); + brand_list.add(0, brand_select); - spinner_brand_list.setAdapter(adapter); - spinner_brand_list.setOnItemSelectedListener(this); - } else { + CustomBrandAdapter adapter = new CustomBrandAdapter(AdditionalPromoSKUwiseActivity.this, R.layout.custom_spinner_item, brand_list); + spinner_brand_list.setAdapter(adapter); + spinner_brand_list.setOnItemSelectedListener(this); + } else { + clearBrandSpinner(); + } - clearBrandSpinner(); - } + } else if (parent.getId() == R.id.sp_brand) { - break; + if (position != 0) { + brand = brand_list.get(position).getBRAND().get(0); + brand_id = brand_list.get(position).getBRAND_ID().get(0); - case R.id.sp_brand: + sku_list = db.getSKUMasterNewData(brand_id); - if (position != 0) { - brand = brand_list.get(position).getBRAND().get(0); - brand_id = brand_list.get(position).getBRAND_ID().get(0); + SkuMasterGetterSetter sku_select = new SkuMasterGetterSetter(); + String str = getResources().getString(R.string.select); + sku_select.setSKU(str); + sku_select.setSKU_ID("0"); + sku_list.add(0, sku_select); - sku_list = db.getSKUMasterNewData(brand_id); + CustomSkuAdapter adapter = new CustomSkuAdapter(AdditionalPromoSKUwiseActivity.this, R.layout.custom_spinner_item, sku_list); + spinner_sku_list.setAdapter(adapter); + spinner_sku_list.setOnItemSelectedListener(this); + } else { + clearSkuSpinner(); + } - SkuMasterGetterSetter sku_select = new SkuMasterGetterSetter(); - String str = getResources().getString(R.string.select); - sku_select.setSKU(str); - sku_select.setSKU_ID("0"); - sku_list.add(0, sku_select); - CustomSkuAdapter adapter = new CustomSkuAdapter(AdditionalPromoSKUwiseActivity.this, R.layout.custom_spinner_item, sku_list); + } else if (parent.getId() == R.id.sp_sku) { - spinner_sku_list.setAdapter(adapter); - spinner_sku_list.setOnItemSelectedListener(this); - } else { + if (position != 0) { + sku = sku_list.get(position).getSKU().get(0); + sku_id = sku_list.get(position).getSKU_ID().get(0); + } - clearSkuSpinner(); - } + } else if (parent.getId() == R.id.sp_flasher) { - break; - - case R.id.sp_sku: - - if (position != 0) { - sku = sku_list.get(position).getSKU().get(0); - sku_id = sku_list.get(position).getSKU_ID().get(0); - } - - break; - - case R.id.sp_flasher: - - switch (position) { - - case 0: - - price_flasher_available = -1; - break; - - case 1: - price_flasher_available = 1; - break; - - case 2: - price_flasher_available = 0; - break; - } - - break; + if (position == 0) { + price_flasher_available = -1; + } else if (position == 1) { + price_flasher_available = 1; + } else if (position == 2) { + price_flasher_available = 0; + } } + } @Override @@ -336,222 +319,154 @@ public class AdditionalPromoSKUwiseActivity extends AppCompatActivity implements public void onClick(View v) { int id = v.getId(); - switch (id) { + if (id == R.id.fab) { - case R.id.fab: + boolean valid_flag = true; - boolean valid_flag = true; + if (isExists) { + if (added_promo_list.size() == 0) { + valid_flag = false; + } + } - if (isExists) { - if (added_promo_list.size() == 0) { - valid_flag = false; - } + if (!valid_flag) { + Snackbar.make(rec_added_promo, R.string.title_activity_Want_add, Snackbar.LENGTH_SHORT).show(); + } else if (isdata_added) { + db.InsertPromoSKUwiseData(added_promo_list, categoryId, store_id, isExists); + finish(); + overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out); + } else { + finish(); + } + + } else if (id == R.id.fab_add) { + + discount = et_discount.getText().toString(); + price = et_price.getText().toString(); + + if (sub_category.equals("")) { + Snackbar.make(rec_added_promo, R.string.pls_select_sub_category, Snackbar.LENGTH_SHORT).show(); + } else if (brand.equals("")) { + Snackbar.make(rec_added_promo, R.string.pls_select_brand, Snackbar.LENGTH_SHORT).show(); + } else if (sku.equals("")) { + Snackbar.make(rec_added_promo, R.string.pls_select_sku, Snackbar.LENGTH_SHORT).show(); + } else if (price.equals("")) { + Snackbar.make(rec_added_promo, R.string.pls_enter_price, Snackbar.LENGTH_SHORT).show(); + } else if (!price.equals("") && price.substring(0, 1).equals(".")) { + Snackbar.make(rec_added_promo, R.string.incorrect_price, Snackbar.LENGTH_SHORT).show(); + } else if (is_camera_compulsory && img_str.equals("")) { + Snackbar.make(rec_added_promo, R.string.click_image, Snackbar.LENGTH_SHORT).show(); + } else if (price_flasher_available == -1) { + Snackbar.make(rec_added_promo, R.string.pls_select_price, Snackbar.LENGTH_SHORT).show(); + } else { + PromoComplianceSkuwiseGetterSetter promo = new PromoComplianceSkuwiseGetterSetter(); + promo.setBrand(brand); + promo.setBrand_id(brand_id); + promo.setSub_category(sub_category); + promo.setSub_category_id(sub_category_id); + promo.setSku(sku); + promo.setSku_id(sku_id); + promo.setImg(img_str); + promo.setDiscount_value(discount); + promo.setPrice(price); + promo.setPrice_flasher(price_flasher_available); + added_promo_list.add(promo); + + rec_added_promo.setLayoutManager(new LinearLayoutManager(context)); + PromoAdapter gapAdapter = new PromoAdapter(added_promo_list); + rec_added_promo.setAdapter(gapAdapter); + + sub_category = ""; + sub_category_id = "0"; + brand = ""; + brand_id = "0"; + sku = ""; + sku_id = "0"; + discount = ""; + price = ""; + img_str = ""; + price_flasher_available = -1; + + et_discount.setText(""); + et_price.setText(""); + spinner_sub_category_list.setSelection(0); + clearBrandSpinner(); + clearSkuSpinner(); + sp_flasher.setSelection(0); + + if (is_camera_compulsory) { + img_cam.setBackgroundResource(R.drawable.camera_orange_star_green); + } else { + img_cam.setBackgroundResource(R.mipmap.camera_orange); } - if (!valid_flag) { - Snackbar.make(rec_added_promo, R.string.title_activity_Want_add, Snackbar.LENGTH_SHORT).show(); - } else if (isdata_added) { + isdata_added = true; + } - db.InsertPromoSKUwiseData(added_promo_list, categoryId, store_id, isExists); - finish(); - overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out); + } else if (id == R.id.img_promotion_add) { - /*String promotion_sku_wise_data_xml = "", add_promotion_data_xml = "", exists_xml = "", add_xml = ""; + _pathforcheck = "Additional_Promo_Skuwise_Image" + store_id + categoryId + visit_date.replace("/", "") + "_" + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; + _path = CommonString.getImagesFolder(context) + _pathforcheck; - db.open(); - ArrayList promoComplianceSkuwiseGetterSetters, promoComplianceSkuwiseExistsGetterSetters; - promoComplianceSkuwiseExistsGetterSetters = db.getPromoComplianceSkuwiseExistsAfterData(store_id, null); - if (promoComplianceSkuwiseExistsGetterSetters.size() > 0) { + startCameraActivity(1); - for (int l = 0; l < promoComplianceSkuwiseExistsGetterSetters.size(); l++) { + } else if (id == R.id.btntoggle) { - promoComplianceSkuwiseGetterSetters = db.getPromoComplianceSkuwiseAfterData(promoComplianceSkuwiseExistsGetterSetters.get(l).get_id(), null); + isExists = btntoggle.isChecked(); - for (int i1 = 0; i1 < promoComplianceSkuwiseGetterSetters.size(); i1++) { - if (!promoComplianceSkuwiseGetterSetters.get(i1).getCategory_id().equals("0")) { + if (isExists) { + lin_parent.setVisibility(View.VISIBLE); + fab_add.show(); + } else { + android.app.AlertDialog.Builder builder = new android.app.AlertDialog.Builder(AdditionalPromoSKUwiseActivity.this); + builder.setTitle("Parinaam"); + builder.setMessage(getResources().getString(R.string.data_will_be_lost)).setCancelable(false) + .setPositiveButton(getString(R.string.ok), new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + fab_add.hide(); + added_promo_list.clear(); - String discount_val = promoComplianceSkuwiseGetterSetters.get(i1).getDiscount_value(); - if (discount_val.equals("")) { - discount_val = "0"; - } + rec_added_promo.setLayoutManager(new LinearLayoutManager(context)); + promoAdapter = new PromoAdapter(added_promo_list); + rec_added_promo.setAdapter(promoAdapter); - add_xml = "[PROMOTION_DATA]" - + "[MID]" + "0" + "[/MID]" - + "[USER_ID]" + username + "[/USER_ID]" - + "[CATEGORY_ID]" + Integer.parseInt(promoComplianceSkuwiseGetterSetters.get(i1).getCategory_id()) + "[/CATEGORY_ID]" - + "[SUB_CATEGORY_ID]" + Integer.parseInt(promoComplianceSkuwiseGetterSetters.get(i1).getSub_category_id()) + "[/SUB_CATEGORY_ID]" - + "[SKU_ID]" + Integer.parseInt(promoComplianceSkuwiseGetterSetters.get(i1).getSku_id()) + "[/SKU_ID]" - + "[BRAND_ID]" + Integer.parseInt(promoComplianceSkuwiseGetterSetters.get(i1).getBrand_id()) + "[/BRAND_ID]" - + "[DISCOUNT_VALUE]" + discount_val + "[/DISCOUNT_VALUE]" - + "[PRICE]" + promoComplianceSkuwiseGetterSetters.get(i1).getPrice() + "[/PRICE]" - + "[PROMO_IMAGE]" + promoComplianceSkuwiseGetterSetters.get(i1).getImg() + "[/PROMO_IMAGE]" - + "[PRICE_FLASHER_AVAILABLE]" + promoComplianceSkuwiseGetterSetters.get(i1).getPrice_flasher() + "[/PRICE_FLASHER_AVAILABLE]" - + "[/PROMOTION_DATA]"; - add_promotion_data_xml = add_promotion_data_xml + add_xml; + lin_parent.setVisibility(View.GONE); + + sub_category = ""; + sub_category_id = "0"; + brand = ""; + brand_id = "0"; + sku = ""; + sku_id = "0"; + discount = ""; + price = ""; + img_str = ""; + + et_discount.setText(""); + et_price.setText(""); + spinner_sub_category_list.setSelection(0); + clearBrandSpinner(); + clearSkuSpinner(); + + if (is_camera_compulsory) { + img_cam.setBackgroundResource(R.drawable.camera_orange_star_green); + } else { + img_cam.setBackgroundResource(R.mipmap.camera_orange); } + + isdata_added = true; } - - int exists = 0; - if (promoComplianceSkuwiseExistsGetterSetters.get(l).isExists()) { - exists = 1; + }) + .setNegativeButton(getString(R.string.cancel), new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + btntoggle.setChecked(true); } + }); - exists_xml = "[ADDITIONAL_PROMOTION_SKUWISE_DATA]" - + "[MID]" + "0" + "[/MID]" - + "[USER_ID]" + username + "[/USER_ID]" - + "[CATEGORY_ID]" + Integer.parseInt(promoComplianceSkuwiseExistsGetterSetters.get(l).getCategory_id()) + "[/CATEGORY_ID]" - + "[IS_EXISTS]" + exists + "[/IS_EXISTS]" - + "[ADDITIONAL_PROMOTION_DATA]" + add_promotion_data_xml + "[/ADDITIONAL_PROMOTION_DATA]" - + "[/ADDITIONAL_PROMOTION_SKUWISE_DATA]"; - - promotion_sku_wise_data_xml = promotion_sku_wise_data_xml + exists_xml; - - } - - final String sos_xml = "[DATA]" + promotion_sku_wise_data_xml + "[/DATA]"; - Log.d("sosdata", sos_xml); - }*/ - - } else { - finish(); - } - - break; - - case R.id.fab_add: - discount = et_discount.getText().toString(); - price = et_price.getText().toString(); - if (sub_category.equals("")) { - Snackbar.make(rec_added_promo, R.string.pls_select_sub_category, Snackbar.LENGTH_SHORT).show(); - } else if (brand.equals("")) { - Snackbar.make(rec_added_promo, R.string.pls_select_brand, Snackbar.LENGTH_SHORT).show(); - } else if (sku.equals("")) { - Snackbar.make(rec_added_promo, R.string.pls_select_sku, Snackbar.LENGTH_SHORT).show(); - }/*else if(discount.equals("")){ - Snackbar.make(rec_added_promo, R.string.pls_enter_discount,Snackbar.LENGTH_SHORT).show(); - }*/ else if (price.equals("")) { - Snackbar.make(rec_added_promo, R.string.pls_enter_price, Snackbar.LENGTH_SHORT).show(); - } else if (!price.equals("") && price.substring(0, 1).equals(".")) { - Snackbar.make(rec_added_promo, R.string.incorrect_price, Snackbar.LENGTH_SHORT).show(); - } else if (is_camera_compulsory && img_str.equals("")) { - Snackbar.make(rec_added_promo, R.string.click_image, Snackbar.LENGTH_SHORT).show(); - } else if (price_flasher_available == -1) { - Snackbar.make(rec_added_promo, R.string.pls_select_price, Snackbar.LENGTH_SHORT).show(); - } else { - PromoComplianceSkuwiseGetterSetter promo = new PromoComplianceSkuwiseGetterSetter(); - promo.setBrand(brand); - promo.setBrand_id(brand_id); - promo.setSub_category(sub_category); - promo.setSub_category_id(sub_category_id); - promo.setSku(sku); - promo.setSku_id(sku_id); - promo.setImg(img_str); - promo.setDiscount_value(discount); - promo.setPrice(price); - promo.setPrice_flasher(price_flasher_available); - added_promo_list.add(promo); - - rec_added_promo.setLayoutManager(new LinearLayoutManager(context)); - PromoAdapter gapAdapter = new PromoAdapter(added_promo_list); - rec_added_promo.setAdapter(gapAdapter); - - sub_category = ""; - sub_category_id = "0"; - brand = ""; - brand_id = "0"; - sku = ""; - sku_id = "0"; - discount = ""; - price = ""; - img_str = ""; - price_flasher_available = -1; - - et_discount.setText(""); - et_price.setText(""); - spinner_sub_category_list.setSelection(0); - clearBrandSpinner(); - clearSkuSpinner(); - sp_flasher.setSelection(0); - - if (is_camera_compulsory) { - img_cam.setBackgroundResource(R.drawable.camera_orange_star_green); - } else { - img_cam.setBackgroundResource(R.mipmap.camera_orange); - } - isdata_added = true; - } - - break; - - case R.id.img_promotion_add: - - _pathforcheck = "Additional_Promo_Skuwise_Image" + store_id + categoryId + visit_date.replace("/", "") + "_" + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - - _path = CommonString.FILE_PATH + _pathforcheck; - - startCameraActivity(1); - break; - - case R.id.btntoggle: - isExists = btntoggle.isChecked(); - - if (isExists) { - lin_parent.setVisibility(View.VISIBLE); - fab_add.show();//.setVisibility(View.VISIBLE); - } else { - android.app.AlertDialog.Builder builder = new android.app.AlertDialog.Builder(AdditionalPromoSKUwiseActivity.this); - builder.setTitle("Parinaam"); - builder.setMessage(getResources().getString(R.string.data_will_be_lost)).setCancelable(false).setPositiveButton(getString(R.string.ok), new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int id) { - - fab_add.hide();//.setVisibility(View.GONE); - added_promo_list.clear(); - - rec_added_promo.setLayoutManager(new LinearLayoutManager(context)); - promoAdapter = new PromoAdapter(added_promo_list); - rec_added_promo.setAdapter(promoAdapter); - - /* if(promoAdapter!=null){ - promoAdapter.list.clear(); - promoAdapter.notifyDataSetChanged(); - }*/ - - lin_parent.setVisibility(View.GONE); - - sub_category = ""; - sub_category_id = "0"; - brand = ""; - brand_id = "0"; - sku = ""; - sku_id = "0"; - discount = ""; - price = ""; - img_str = ""; - - et_discount.setText(""); - et_price.setText(""); - spinner_sub_category_list.setSelection(0); - clearBrandSpinner(); - clearSkuSpinner(); - if (is_camera_compulsory) { - img_cam.setBackgroundResource(R.drawable.camera_orange_star_green); - } else { - img_cam.setBackgroundResource(R.mipmap.camera_orange); - } - isdata_added = true; - - } - }).setNegativeButton(getString(R.string.cancel), new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - //checkBox.setChecked(true); - btntoggle.setChecked(true); - } - }); - android.app.AlertDialog alert = builder.create(); - alert.show(); - } - break; + android.app.AlertDialog alert = builder.create(); + alert.show(); + } } } @@ -625,7 +540,7 @@ public class AdditionalPromoSKUwiseActivity extends AppCompatActivity implements case -1: if (_pathforcheck != null && !_pathforcheck.equals("")) { - if (new File(CommonString.FILE_PATH + _pathforcheck).exists()) { + if (new File(CommonString.getImagesFolder(context) + _pathforcheck).exists()) { img_cam.setBackgroundResource(R.mipmap.camera_green); @@ -877,90 +792,12 @@ public class AdditionalPromoSKUwiseActivity extends AppCompatActivity implements } } + @SuppressLint("MissingSuperCall") @Override public void onBackPressed() { ischanged(); } - /*@Override - public boolean onCreateOptionsMenu(Menu menu) { - // Inflate the menu; this adds items to the action bar if it is present. - getMenuInflater().inflate(R.menu.menu_promo_skuwise, menu); - - final CheckBox checkBox = (CheckBox) menu.findItem(R.id.menuShowDue).getActionView(); - checkBox.setText(R.string.exists); - checkBox.setChecked(isExists); - - checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { - @Override - public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - isExists = isChecked; - - if(isExists){ - lin_parent.setVisibility(View.VISIBLE); - fab_add.show();//.setVisibility(View.VISIBLE); - } - else { - android.app.AlertDialog.Builder builder = new android.app.AlertDialog.Builder(AdditionalPromoSKUwiseActivity.this); - builder.setTitle("Parinaam"); - builder.setMessage(getResources().getString(R.string.data_will_be_lost)).setCancelable(false) - .setPositiveButton(getString(R.string.ok), new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int id) { - - fab_add.hide();//.setVisibility(View.GONE); - added_promo_list.clear(); - - rec_added_promo.setLayoutManager(new LinearLayoutManager(getApplicationContext())); - promoAdapter = new PromoAdapter(added_promo_list); - rec_added_promo.setAdapter(promoAdapter); - - *//* if(promoAdapter!=null){ - promoAdapter.list.clear(); - promoAdapter.notifyDataSetChanged(); - }*//* - - lin_parent.setVisibility(View.GONE); - - sub_category = ""; - sub_category_id = "0"; - brand= ""; - brand_id = "0"; - sku = ""; - sku_id = "0"; - discount = ""; - price = ""; - img_str = ""; - - et_discount.setText(""); - et_price.setText(""); - spinner_sub_category_list.setSelection(0); - clearBrandSpinner(); - clearSkuSpinner(); - if(is_camera_compulsory){ - img_cam.setBackgroundResource(R.drawable.camera_orange_star_green); - } - else { - img_cam.setBackgroundResource(R.mipmap.camera_orange); - } - isdata_added = true; - - } - }) - .setNegativeButton(getString(R.string.cancel), new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - checkBox.setChecked(true); - } - }); - android.app.AlertDialog alert = builder.create(); - alert.show(); - } - } - }); - - return true; - }*/ - @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/AdditionalVisibility.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/AdditionalVisibility.java index a3a8661..a5009ab 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/AdditionalVisibility.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/AdditionalVisibility.java @@ -183,7 +183,7 @@ public class AdditionalVisibility extends AppCompatActivity implements View.OnCl btntoggle.setChecked(true); - str = CommonString.FILE_PATH; + str = CommonString.getImagesFolder(context); ///band List @@ -794,7 +794,7 @@ public class AdditionalVisibility extends AppCompatActivity implements View.OnCl public void onClick(View view) { _pathforcheck1 = store_id + categoryId + "AdditionalImage1" + date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - _path = CommonString.FILE_PATH + _pathforcheck1; + _path = CommonString.getImagesFolder(context)+ _pathforcheck1; intime = CommonFunctions.getCurrentTimeWithLanguage(context); startCameraActivity(); @@ -806,7 +806,7 @@ public class AdditionalVisibility extends AppCompatActivity implements View.OnCl public void onClick(View view) { _pathforcheck2 = store_id + categoryId + "AdditionalImage2" + date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - _path = CommonString.FILE_PATH + _pathforcheck2; + _path = CommonString.getImagesFolder(context)+ _pathforcheck2; intime = CommonFunctions.getCurrentTimeWithLanguage(context); startCameraActivity(); @@ -818,7 +818,7 @@ public class AdditionalVisibility extends AppCompatActivity implements View.OnCl public void onClick(View view) { _pathforcheck3 = store_id + categoryId + "AdditionalImage3" + date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - _path = CommonString.FILE_PATH + _pathforcheck3; + _path = CommonString.getImagesFolder(context)+ _pathforcheck3; intime = CommonFunctions.getCurrentTimeWithLanguage(context); startCameraActivity(); @@ -922,14 +922,7 @@ public class AdditionalVisibility extends AppCompatActivity implements View.OnCl webView.getSettings().setAllowFileAccess(true); webView.getSettings().setJavaScriptEnabled(true); webView.getSettings().setBuiltInZoomControls(true); - - //String planogram_image = mp.get(0).getPLANOGRAM_IMAGE(); - /* if (new File(CommonString.FILE_PATH_PLANOGRAM + planogram_image).exists()) { - - String imagePath = "file://" + CommonString.FILE_PATH_PLANOGRAM + planogram_image; - //String imagePath = "file://" + CommonString.FILE_PATH + "/" + "image_ref.png"; - - }*/ + String html = ""; webView.loadDataWithBaseURL("", html, "text/html", "utf-8", ""); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/AuditActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/AuditActivity.java index 759dce0..5a9e401 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/AuditActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/AuditActivity.java @@ -2,6 +2,7 @@ package cpm.com.gskmtorange.dailyentry; import android.annotation.SuppressLint; import android.app.Activity; +import android.app.AlertDialog; import android.content.ActivityNotFoundException; import android.content.Context; import android.content.DialogInterface; @@ -101,7 +102,7 @@ public class AuditActivity extends AppCompatActivity { store_flag_str = preferences.getString(CommonString.KEY_STORE_FLAG, null); country_id = preferences.getString(CommonString.KEY_COUNTRY_ID, ""); toolbar.setTitle(getResources().getString(R.string.audit)); - str = CommonString.FILE_PATH; + str = CommonString.getImagesFolder(context); recyclerView = (RecyclerView) findViewById(R.id.list); db = new GSKOrangeDB(this); @@ -286,8 +287,9 @@ public class AuditActivity extends AppCompatActivity { @Override public void onBackPressed() { + super.onBackPressed(); if (question_list.size() > 0) { - android.app.AlertDialog.Builder builder = new android.app.AlertDialog.Builder(AuditActivity.this); + AlertDialog.Builder builder = new AlertDialog.Builder(AuditActivity.this); builder.setTitle("Parinaam"); builder.setMessage(getResources().getString(R.string.data_will_be_lost)).setCancelable(false) .setPositiveButton(getString(R.string.ok), new DialogInterface.OnClickListener() { @@ -302,7 +304,7 @@ public class AuditActivity extends AppCompatActivity { } }); - android.app.AlertDialog alert = builder.create(); + AlertDialog alert = builder.create(); alert.show(); } else { finish(); @@ -493,7 +495,7 @@ public class AuditActivity extends AppCompatActivity { @Override public void onClick(View v) { pathforcheck = store_id + "AuditAnsPic" + categoryId + date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - _path = CommonString.FILE_PATH + pathforcheck; + _path = CommonString.getImagesFolder(context)+ pathforcheck; intime = CommonFunctions.getCurrentTimeWithLanguage(context); child_position = position; startCameraActivity(0); @@ -505,7 +507,7 @@ public class AuditActivity extends AppCompatActivity { public void onClick(View v) { pathforcheck = store_id + "AuditAnsPic2" + categoryId + date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - _path = CommonString.FILE_PATH + pathforcheck; + _path = CommonString.getImagesFolder(context)+ pathforcheck; intime = CommonFunctions.getCurrentTimeWithLanguage(context); child_position = position; startCameraActivity(1); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CategoryPicture.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CategoryPicture.java index 9ff29bf..b677735 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CategoryPicture.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CategoryPicture.java @@ -89,7 +89,7 @@ public class CategoryPicture extends AppCompatActivity { date = preferences.getString(CommonString.KEY_DATE, null); intime = preferences.getString(CommonString.KEY_STORE_IN_TIME, ""); - str = CommonString.FILE_PATH; + str = CommonString.getImagesFolder(context); db = new GSKOrangeDB(CategoryPicture.this); db.open(); im1 = (ImageView) findViewById(R.id.image1); @@ -168,49 +168,19 @@ public class CategoryPicture extends AppCompatActivity { db.InsertCategoryPictureData(CP, listdat, categoryId); finish(); overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out); - - /* AlertDialog.Builder builder = new AlertDialog.Builder(CategoryPicture.this); - builder.setMessage(getResources().getString(R.string.check_save_message)) - .setCancelable(false) - .setPositiveButton(getResources().getString(R.string.yes), new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int id) { - db.open(); - - db.InsertCategoryPictureData(CP, listdat, categoryId); - finish(); - overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out); - } - }) - .setNegativeButton(getResources().getString(R.string.no), new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int id) { - dialog.cancel(); - } - }); - AlertDialog alert = builder.create(); - alert.show();*/ - - } else { Snackbar.make(view, R.string.title_activity_take_image, Snackbar.LENGTH_LONG).setAction("Action", null).show(); - - } - - } }); im1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - - _pathforcheck1 = store_id + "CategoryPicture1" + categoryId + date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - - _path = CommonString.FILE_PATH + _pathforcheck1; + _path = CommonString.getImagesFolder(context)+ _pathforcheck1; intime = CommonFunctions.getCurrentTimeWithLanguage(context); startCameraActivity(); - } }); @@ -220,7 +190,7 @@ public class CategoryPicture extends AppCompatActivity { _pathforcheck2 = store_id + "CategoryPicture2" + categoryId + date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - _path = CommonString.FILE_PATH + _pathforcheck2; + _path = CommonString.getImagesFolder(context)+ _pathforcheck2; intime = CommonFunctions.getCurrentTimeWithLanguage(context); startCameraActivity(); } @@ -231,7 +201,7 @@ public class CategoryPicture extends AppCompatActivity { _pathforcheck3 = store_id + "CategoryPicture3" + categoryId + date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - _path = CommonString.FILE_PATH + _pathforcheck3; + _path = CommonString.getImagesFolder(context)+ _pathforcheck3; intime = CommonFunctions.getCurrentTimeWithLanguage(context); startCameraActivity(); @@ -244,7 +214,7 @@ public class CategoryPicture extends AppCompatActivity { _pathforcheck4 = store_id + "CategoryPicture4" + categoryId + date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - _path = CommonString.FILE_PATH + _pathforcheck4; + _path = CommonString.getImagesFolder(context)+ _pathforcheck4; intime = CommonFunctions.getCurrentTimeWithLanguage(context); startCameraActivity(); @@ -490,7 +460,7 @@ public class CategoryPicture extends AppCompatActivity { Camerapath1 = store_id + "CategoryPicture" + list.get(position1).getSUB_CATEGORY_ID()+ date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(mcontext).replace(":", "") + ".jpg"; Adapterposition = position1; // Log.e("Camimage",Camerapath1); - _path = CommonString.FILE_PATH + Camerapath1; + _path = CommonString.getImagesFolder(context)+ Camerapath1; // intime = CommonFunctions.getCurrentTimeWithLanguage(context); intime = CommonFunctions.getCurrentTimeWithLanguage(mcontext); startCameraActivity(); @@ -509,7 +479,7 @@ public class CategoryPicture extends AppCompatActivity { // Camerapath2 = store_id + "CategoryPicture" + list.get(position1).getSUB_CATEGORY_ID().toString() + date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; Camerapath2 = store_id + "CategoryPicture" + list.get(position1).getSUB_CATEGORY_ID().toString() + date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(mcontext).replace(":", "") + ".jpg"; Adapterposition = position1; - _path = CommonString.FILE_PATH + Camerapath2; + _path = CommonString.getImagesFolder(context)+ Camerapath2; intime = CommonFunctions.getCurrentTimeWithLanguage(mcontext); // intime = CommonFunctions.getCurrentTimeWithLanguage(context); startCameraActivity(); @@ -651,8 +621,7 @@ public class CategoryPicture extends AppCompatActivity { @Override public void onBackPressed() { - //super.onBackPressed(); - + super.onBackPressed(); showDataLossAlert(); } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CheckoutActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CheckoutActivity.java index 06a98bf..ac12283 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CheckoutActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CheckoutActivity.java @@ -156,9 +156,6 @@ public class CheckoutActivity extends AppCompatActivity { SoapObject request = new SoapObject(CommonString.NAMESPACE, service); request.addProperty("onXML", sos_xml); - /*request.addProperty("KEYS", "CHECKOUT_STATUS"); - request.addProperty("USERNAME", username);*/ - //request.addProperty("MID", mid); SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); envelope.dotNet = true; @@ -232,8 +229,6 @@ public class CheckoutActivity extends AppCompatActivity { @Override public void run() { - // TODO Auto-generated method stub - showAlert(CommonString.MESSAGE_EXCEPTION); } }); @@ -288,13 +283,7 @@ public class CheckoutActivity extends AppCompatActivity { showAlert(getString(R.string.checkout_successful)); - //finish(); - } else if (!result.equals("")) { - /*AlertMessage message = new AlertMessage( - CheckOutStoreActivity.this, CommonString1.ERROR + result, "success", null); - message.showMessage();*/ - Toast.makeText(context, "Network Error Try Again", Toast.LENGTH_SHORT).show(); finish(); @@ -316,15 +305,6 @@ public class CheckoutActivity extends AppCompatActivity { toolbar.setTitle(getResources().getString(R.string.title_activity_checkout)); } - /*public String getCurrentTimeNotUsed() { - Calendar m_cal = Calendar.getInstance(); - - SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss:mmm"); - String cdate = formatter.format(m_cal.getTime()); - - return cdate; - }*/ - private static String arabicToenglish(String number) { char[] chars = new char[number.length()]; for (int i = 0; i < number.length(); i++) { @@ -353,8 +333,6 @@ public class CheckoutActivity extends AppCompatActivity { else if (preferences.getString(CommonString.KEY_LANGUAGE, "").equalsIgnoreCase(CommonString.KEY_LANGUAGE_ARABIC_JORDAN)) { cdate = arabicToenglish(cdate); } - - return cdate; } @@ -364,12 +342,7 @@ else if (preferences.getString(CommonString.KEY_LANGUAGE, "").equalsIgnoreCase(C builder.setMessage(str).setCancelable(false) .setPositiveButton("OK", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int id) { - - /* Intent i = new Intent(activity, StorelistActivity.class); - activity.startActivity(i); - activity.finish();*/ finish(); - } }); AlertDialog alert = builder.create(); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CoachingVisitActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CoachingVisitActivity.java index 5e08b7a..e388c52 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CoachingVisitActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CoachingVisitActivity.java @@ -33,6 +33,7 @@ import com.androidbuts.multispinnerfilter.MultiSpinnerSearch; import com.androidbuts.multispinnerfilter.SpinnerListener; import com.google.android.material.floatingactionbutton.FloatingActionButton; import com.google.android.material.snackbar.Snackbar; + import java.io.File; import java.util.ArrayList; import java.util.Arrays; @@ -47,7 +48,6 @@ import cpm.com.gskmtorange.xmlGetterSetter.ConfigurationMasterGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.SupervisorListGetterSetter; public class CoachingVisitActivity extends AppCompatActivity implements AdapterView.OnItemSelectedListener, View.OnClickListener { - private Context context; private GSKOrangeDB database; ArrayList supervisorList; @@ -92,7 +92,7 @@ public class CoachingVisitActivity extends AppCompatActivity implements AdapterV toolbar.setTitle(getResources().getString(R.string.title_activity_coaching_visit)); - str = CommonString.FILE_PATH; + str = CommonString.getImagesFolder(context); store_id = getIntent().getStringExtra(CommonString.KEY_STORE_ID); store_flag_str = getIntent().getStringExtra(CommonString.KEY_STORE_FLAG); @@ -115,8 +115,7 @@ public class CoachingVisitActivity extends AppCompatActivity implements AdapterV if (configurationData.size() > 0) { for (int i = 0; i < configurationData.size(); i++) { - if (configurationData.get(i).getCONFIGURE().get(0).equalsIgnoreCase("COACHING VISIT IMAGE") && - configurationData.get(i).getACTIVE().get(0).equalsIgnoreCase("1")) { + if (configurationData.get(i).getCONFIGURE().get(0).equalsIgnoreCase("COACHING VISIT IMAGE") && configurationData.get(i).getACTIVE().get(0).equalsIgnoreCase("1")) { coaching_visit_camera_flag = true; break; } @@ -132,8 +131,7 @@ public class CoachingVisitActivity extends AppCompatActivity implements AdapterV supervisorList = database.getSupervisorListData(); - exist_adapter = new ArrayAdapter<>(this, - android.R.layout.simple_spinner_item); + exist_adapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_item); String select_str = getResources().getString(R.string.select); @@ -143,8 +141,7 @@ public class CoachingVisitActivity extends AppCompatActivity implements AdapterV exist_spinner.setAdapter(exist_adapter); - exist_adapter - .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); + exist_adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); exist_spinner.setOnItemSelectedListener(this); @@ -169,97 +166,61 @@ public class CoachingVisitActivity extends AppCompatActivity implements AdapterV @Override public void onItemSelected(AdapterView parent, View view, int position, long id) { - switch (parent.getId()) { - case R.id.spinner_coaching_visit: - if (position != 0) { + if (parent.getId() == R.id.spinner_coaching_visit) { - if (!update_flag) { + if (position != 0) { - fab_save.show();//setVisibility(View.VISIBLE); + if (!update_flag) { - if (position == 1) { + fab_save.show(); //setVisibility(View.VISIBLE); - linear_supervisor.setVisibility(View.VISIBLE); + if (position == 1) { - coaching_visit = 1; + linear_supervisor.setVisibility(View.VISIBLE); + coaching_visit = 1; - /*supervisor_adapter = new ArrayAdapter(this, - android.R.layout.simple_spinner_item); + final List listArray0 = new ArrayList<>(); - String select_str = getResources().getString(R.string.select_promo); + for (int i = 0; i < supervisorList.size(); i++) { + KeyPairBoolData h = new KeyPairBoolData(); + h.setId(i + 1); + h.setName(supervisorList.get(i).getSUPERVISOR().get(0)); + h.setSelected(false); + listArray0.add(h); + } - supervisor_adapter.add(select_str); + multi_spinner_supervisor.setItems(listArray0, -1, new SpinnerListener() { + @Override + public void onItemsSelected(List items) { - for (int i = 0; i < supervisorList.size(); i++) { - supervisor_adapter.add(supervisorList.get(i).getSUPERVISOR().get(0)); - } + selectedSupervisorList.clear(); - supervisor_spinner.setAdapter(supervisor_adapter); - - supervisor_adapter - .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - - supervisor_spinner.setOnItemSelectedListener(this);*/ - - /** - * Getting array of String to Bind in Spinner - */ - //final List list = Arrays.asList(getResources().getStringArray(R.array.sports_array)); - - final List listArray0 = new ArrayList<>(); - - for (int i = 0; i < supervisorList.size(); i++) { - KeyPairBoolData h = new KeyPairBoolData(); - h.setId(i + 1); - h.setName(supervisorList.get(i).getSUPERVISOR().get(0)); - h.setSelected(false); - listArray0.add(h); - } - - multi_spinner_supervisor.setItems(listArray0, -1, new SpinnerListener() { - - @Override - public void onItemsSelected(List items) { - - selectedSupervisorList.clear(); - - for (int i = 0; i < items.size(); i++) { - if (items.get(i).isSelected()) { - - selectedSupervisorList.add(items.get(i).getName()); - Log.i("MultiSpinner", i + " : " + items.get(i).getName() + " : " + items.get(i).isSelected()); - } + for (int i = 0; i < items.size(); i++) { + if (items.get(i).isSelected()) { + selectedSupervisorList.add(items.get(i).getName()); + Log.i("MultiSpinner", i + " : " + items.get(i).getName() + " : " + items.get(i).isSelected()); } } - }); + } + }); - } else { - coaching_visit = 0; - selectedSupervisorList.clear(); - linear_supervisor.setVisibility(View.GONE); - } + } else { + coaching_visit = 0; + selectedSupervisorList.clear(); + linear_supervisor.setVisibility(View.GONE); } - - } else { - - coaching_visit = -1; - linear_supervisor.setVisibility(View.GONE); - fab_save.hide();//setVisibility(View.GONE); } - break; + } else { + coaching_visit = -1; + linear_supervisor.setVisibility(View.GONE); + fab_save.hide(); //setVisibility(View.GONE); + } - case R.id.multi_spinner_supervisor: - - /* if(position!=0){ - emp_id = supervisorList.get(position-1).getEMP_ID().get(0); - } - else { - emp_id = ""; - }*/ - - break; + } else if (parent.getId() == R.id.multi_spinner_supervisor) { + // Commented-out code from original } + } @Override @@ -270,79 +231,69 @@ public class CoachingVisitActivity extends AppCompatActivity implements AdapterV @Override public void onClick(View v) { - switch (v.getId()) { - case R.id.img_cam: - _pathforcheck = store_id + "CoachingVisit" + visit_date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - _path = CommonString.FILE_PATH + _pathforcheck; - startCameraActivity(); - break; + if (v.getId() == R.id.img_cam) { - case R.id.fab_save: + _pathforcheck = store_id + "CoachingVisit" + visit_date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; + _path = CommonString.getImagesFolder(context) + _pathforcheck; + startCameraActivity(); - if (coaching_visit == 1) { + } else if (v.getId() == R.id.fab_save) { - String error_msg = ""; - boolean flag = true; - //if(emp_id.equals("")){ - if (selectedSupervisorList.size() == 0) { - flag = false; - error_msg = getString(R.string.title_activity_select_dropdown); - } else if (coaching_visit_camera_flag && image_name.equals("")) { - flag = false; - error_msg = getString(R.string.clickimage); + if (coaching_visit == 1) { + String error_msg = ""; + boolean flag = true; + + if (selectedSupervisorList.size() == 0) { + flag = false; + error_msg = getString(R.string.title_activity_select_dropdown); + } else if (coaching_visit_camera_flag && image_name.equals("")) { + flag = false; + error_msg = getString(R.string.clickimage); + } + + if (flag) { + for (int i = 0; i < selectedSupervisorList.size(); i++) { + CoachingVisitGetterSetter coachingVisitGetterSetter = new CoachingVisitGetterSetter(); + coachingVisitGetterSetter.setEmp_id(getEmp_idFromName(selectedSupervisorList.get(i))); + coachingVisitGetterSetter.setImg_path(image_name); + coachingVisitGetterSetter.setExists(coaching_visit == 1); + database.insertCoachingVisitData(coachingVisitGetterSetter, store_id); } - if (flag) { - - for (int i = 0; i < selectedSupervisorList.size(); i++) { - CoachingVisitGetterSetter coachingVisitGetterSetter = new CoachingVisitGetterSetter(); - coachingVisitGetterSetter.setEmp_id(getEmp_idFromName(selectedSupervisorList.get(i))); - coachingVisitGetterSetter.setImg_path(image_name); - coachingVisitGetterSetter.setExists(coaching_visit == 1); - - database.insertCoachingVisitData(coachingVisitGetterSetter, store_id); - } - - Toast.makeText(context, getString(R.string.save_message), Toast.LENGTH_SHORT).show(); - - saved_flag = true; - - fab_next.show();//setVisibility(View.VISIBLE); - } else { - Snackbar.make(linear_supervisor, error_msg, Snackbar.LENGTH_SHORT).show(); - } - } else { - CoachingVisitGetterSetter coachingVisitGetterSetter = new CoachingVisitGetterSetter(); - coachingVisitGetterSetter.setEmp_id("0"); - coachingVisitGetterSetter.setImg_path(image_name); - coachingVisitGetterSetter.setExists(coaching_visit == 1); - - database.insertCoachingVisitData(coachingVisitGetterSetter, store_id); - Toast.makeText(context, getString(R.string.save_message), Toast.LENGTH_SHORT).show(); saved_flag = true; - fab_next.show();//setVisibility(View.VISIBLE); - } - - - break; - - case R.id.fab: - - if (saved_flag || update_flag) { - - // Intent i = new Intent(CoachingVisitActivity.this, StoreCheckoutImageActivity.class); - Intent i = new Intent(CoachingVisitActivity.this, CoachingVisitStoreActivity.class); - i.putExtra(CommonString.KEY_STORE_ID, store_id); - i.putExtra(CommonString.KEY_STORE_FLAG, store_flag_str); - startActivity(i); - finish(); - overridePendingTransition(R.anim.activity_in, R.anim.activity_out); + fab_next.show(); // setVisibility(View.VISIBLE); } else { - Snackbar.make(linear_supervisor, getString(R.string.please_save_data), Snackbar.LENGTH_SHORT).show(); + Snackbar.make(linear_supervisor, error_msg, Snackbar.LENGTH_SHORT).show(); } - break; + + } else { + CoachingVisitGetterSetter coachingVisitGetterSetter = new CoachingVisitGetterSetter(); + coachingVisitGetterSetter.setEmp_id("0"); + coachingVisitGetterSetter.setImg_path(image_name); + coachingVisitGetterSetter.setExists(coaching_visit == 1); + + database.insertCoachingVisitData(coachingVisitGetterSetter, store_id); + + Toast.makeText(context, getString(R.string.save_message), Toast.LENGTH_SHORT).show(); + saved_flag = true; + fab_next.show(); // setVisibility(View.VISIBLE); + } + + } else if (v.getId() == R.id.fab) { + if (saved_flag || update_flag) { + Intent i = new Intent(CoachingVisitActivity.this, CoachingVisitStoreActivity.class); + i.putExtra(CommonString.KEY_STORE_ID, store_id); + i.putExtra(CommonString.KEY_STORE_FLAG, store_flag_str); + startActivity(i); + finish(); + overridePendingTransition(R.anim.activity_in, R.anim.activity_out); + + } else { + Snackbar.make(linear_supervisor, getString(R.string.please_save_data), Snackbar.LENGTH_SHORT).show(); + } } + } String getEmp_idFromName(String name) { @@ -363,7 +314,7 @@ public class CoachingVisitActivity extends AppCompatActivity implements AdapterV Log.i("MakeMachine", "startCameraActivity()"); File file = new File(_path); - outputFileUri = FileProvider.getUriForFile(context, "cpm.com.gskmtorange.fileprovider", file); + outputFileUri = FileProvider.getUriForFile(context, "cpm.com.gskmtorange.fileprovider", file); String defaultCameraPackage = ""; final PackageManager packageManager = getPackageManager(); @@ -410,8 +361,8 @@ public class CoachingVisitActivity extends AppCompatActivity implements AdapterV startActivityForResult(intent, 0); } catch (Exception e) { - // Crashlytics.log(7, CommonString.MESSAGE_EXCEPTION, e.toString()); - // Crashlytics.logException(e.getCause()); + // Crashlytics.log(7, CommonString.MESSAGE_EXCEPTION, e.toString()); + // Crashlytics.logException(e.getCause()); //Crashlytics.logException(new Exception(e.getCause())); e.printStackTrace(); } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CoachingVisitStoreActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CoachingVisitStoreActivity.java index 8ba5def..ce5ed24 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CoachingVisitStoreActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CoachingVisitStoreActivity.java @@ -91,7 +91,7 @@ public class CoachingVisitStoreActivity extends AppCompatActivity implements Ada toolbar.setTitle(getResources().getString(R.string.title_activity_coaching_visit_store)); - str = CommonString.FILE_PATH; + str = CommonString.getImagesFolder(context); store_id = getIntent().getStringExtra(CommonString.KEY_STORE_ID); store_flag_str = getIntent().getStringExtra(CommonString.KEY_STORE_FLAG); @@ -168,97 +168,58 @@ public class CoachingVisitStoreActivity extends AppCompatActivity implements Ada @Override public void onItemSelected(AdapterView parent, View view, int position, long id) { - switch (parent.getId()) { - case R.id.spinner_coaching_visit: - if (position != 0) { + if (parent.getId() == R.id.spinner_coaching_visit) { - if (!update_flag) { + if (position != 0) { - fab_save.show();//setVisibility(View.VISIBLE); + if (!update_flag) { - if (position == 1) { + fab_save.show(); // setVisibility(View.VISIBLE); - linear_supervisor.setVisibility(View.VISIBLE); + if (position == 1) { - coaching_visit = 1; + linear_supervisor.setVisibility(View.VISIBLE); + coaching_visit = 1; - /*supervisor_adapter = new ArrayAdapter(this, - android.R.layout.simple_spinner_item); + // Creating list for multi-spinner + final List listArray0 = new ArrayList<>(); - String select_str = getResources().getString(R.string.select_promo); + for (int i = 0; i < supervisorList.size(); i++) { + KeyPairBoolData h = new KeyPairBoolData(); + h.setId(i + 1); + h.setName(supervisorList.get(i).getSUPERVISOR().get(0)); + h.setSelected(false); + listArray0.add(h); + } - supervisor_adapter.add(select_str); - - for (int i = 0; i < supervisorList.size(); i++) { - supervisor_adapter.add(supervisorList.get(i).getSUPERVISOR().get(0)); - } - - supervisor_spinner.setAdapter(supervisor_adapter); - - supervisor_adapter - .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - - supervisor_spinner.setOnItemSelectedListener(this);*/ - - /** - * Getting array of String to Bind in Spinner - */ - //final List list = Arrays.asList(getResources().getStringArray(R.array.sports_array)); - - final List listArray0 = new ArrayList<>(); - - for (int i = 0; i < supervisorList.size(); i++) { - KeyPairBoolData h = new KeyPairBoolData(); - h.setId(i + 1); - h.setName(supervisorList.get(i).getSUPERVISOR().get(0)); - h.setSelected(false); - listArray0.add(h); - } - - multi_spinner_supervisor.setItems(listArray0, -1, new SpinnerListener() { - - @Override - public void onItemsSelected(List items) { - - selectedSupervisorList.clear(); - - for (int i = 0; i < items.size(); i++) { - if (items.get(i).isSelected()) { - - selectedSupervisorList.add(items.get(i).getName()); - Log.i("MultiSpinner", i + " : " + items.get(i).getName() + " : " + items.get(i).isSelected()); - } + multi_spinner_supervisor.setItems(listArray0, -1, new SpinnerListener() { + @Override + public void onItemsSelected(List items) { + selectedSupervisorList.clear(); + for (int i = 0; i < items.size(); i++) { + if (items.get(i).isSelected()) { + selectedSupervisorList.add(items.get(i).getName()); + Log.i("MultiSpinner", i + " : " + items.get(i).getName() + " : " + items.get(i).isSelected()); } } - }); + } + }); - } else { - coaching_visit = 0; - selectedSupervisorList.clear(); - linear_supervisor.setVisibility(View.GONE); - } + } else { + coaching_visit = 0; + selectedSupervisorList.clear(); + linear_supervisor.setVisibility(View.GONE); } - - } else { - - coaching_visit = -1; - linear_supervisor.setVisibility(View.GONE); - fab_save.hide();//setVisibility(View.GONE); } - break; + } else { + coaching_visit = -1; + linear_supervisor.setVisibility(View.GONE); + fab_save.hide(); // setVisibility(View.GONE); + } - case R.id.multi_spinner_supervisor: - - /* if(position!=0){ - emp_id = supervisorList.get(position-1).getEMP_ID().get(0); - } - else { - emp_id = ""; - }*/ - - break; } + } @Override @@ -269,80 +230,76 @@ public class CoachingVisitStoreActivity extends AppCompatActivity implements Ada @Override public void onClick(View v) { - switch (v.getId()) { - case R.id.img_cam: - _pathforcheck = store_id + "CheckVisit" + visit_date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; + if (v.getId() == R.id.img_cam) { - _path = CommonString.FILE_PATH + _pathforcheck; + _pathforcheck = store_id + "CheckVisit" + visit_date.replace("/", "") + + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - startCameraActivity(); - break; + _path = CommonString.getImagesFolder(context) + _pathforcheck; - case R.id.fab_save: + startCameraActivity(); - if (coaching_visit == 1) { + } else if (v.getId() == R.id.fab_save) { - String error_msg = ""; - boolean flag = true; - //if(emp_id.equals("")){ - if (selectedSupervisorList.size() == 0) { - flag = false; - error_msg = getString(R.string.title_activity_select_dropdown); - } else if (coaching_visit_camera_flag && image_name.equals("")) { - flag = false; - error_msg = getString(R.string.clickimage); + if (coaching_visit == 1) { + String error_msg = ""; + boolean flag = true; + + if (selectedSupervisorList.size() == 0) { + flag = false; + error_msg = getString(R.string.title_activity_select_dropdown); + } else if (coaching_visit_camera_flag && image_name.equals("")) { + flag = false; + error_msg = getString(R.string.clickimage); + } + + if (flag) { + for (int i = 0; i < selectedSupervisorList.size(); i++) { + CoachingVisitGetterSetter coachingVisitGetterSetter = new CoachingVisitGetterSetter(); + coachingVisitGetterSetter.setEmp_id(getEmp_idFromName(selectedSupervisorList.get(i))); + coachingVisitGetterSetter.setImg_path(image_name); + coachingVisitGetterSetter.setExists(coaching_visit == 1); + + database.insertCoachingVisitStoreData(coachingVisitGetterSetter, store_id); } - if (flag) { - - for (int i = 0; i < selectedSupervisorList.size(); i++) { - CoachingVisitGetterSetter coachingVisitGetterSetter = new CoachingVisitGetterSetter(); - coachingVisitGetterSetter.setEmp_id(getEmp_idFromName(selectedSupervisorList.get(i))); - coachingVisitGetterSetter.setImg_path(image_name); - coachingVisitGetterSetter.setExists(coaching_visit == 1); - - database.insertCoachingVisitStoreData(coachingVisitGetterSetter, store_id); - } - - Toast.makeText(context, getString(R.string.save_message), Toast.LENGTH_SHORT).show(); - - saved_flag = true; - - fab_next.show();//setVisibility(View.VISIBLE); - } else { - Snackbar.make(linear_supervisor, error_msg, Snackbar.LENGTH_SHORT).show(); - } - } else { - CoachingVisitGetterSetter coachingVisitGetterSetter = new CoachingVisitGetterSetter(); - coachingVisitGetterSetter.setEmp_id("0"); - coachingVisitGetterSetter.setImg_path(image_name); - coachingVisitGetterSetter.setExists(coaching_visit == 1); - - database.insertCoachingVisitStoreData(coachingVisitGetterSetter, store_id); - Toast.makeText(context, getString(R.string.save_message), Toast.LENGTH_SHORT).show(); saved_flag = true; - fab_next.show();//setVisibility(View.VISIBLE); - } + fab_next.show(); // setVisibility(View.VISIBLE); - - break; - - case R.id.fab: - - if (saved_flag || update_flag) { - - Intent i = new Intent(CoachingVisitStoreActivity.this, StoreCheckoutImageActivity.class); - i.putExtra(CommonString.KEY_STORE_ID, store_id); - i.putExtra(CommonString.KEY_STORE_FLAG, store_flag_str); - startActivity(i); - finish(); - overridePendingTransition(R.anim.activity_in, R.anim.activity_out); } else { - Snackbar.make(linear_supervisor, getString(R.string.please_save_data), Snackbar.LENGTH_SHORT).show(); + Snackbar.make(linear_supervisor, error_msg, Snackbar.LENGTH_SHORT).show(); } - break; + + } else { + CoachingVisitGetterSetter coachingVisitGetterSetter = new CoachingVisitGetterSetter(); + coachingVisitGetterSetter.setEmp_id("0"); + coachingVisitGetterSetter.setImg_path(image_name); + coachingVisitGetterSetter.setExists(coaching_visit == 1); + + database.insertCoachingVisitStoreData(coachingVisitGetterSetter, store_id); + + Toast.makeText(context, getString(R.string.save_message), Toast.LENGTH_SHORT).show(); + saved_flag = true; + fab_next.show(); // setVisibility(View.VISIBLE); + } + + } else if (v.getId() == R.id.fab) { + + if (saved_flag || update_flag) { + + Intent i = new Intent(CoachingVisitStoreActivity.this, StoreCheckoutImageActivity.class); + i.putExtra(CommonString.KEY_STORE_ID, store_id); + i.putExtra(CommonString.KEY_STORE_FLAG, store_flag_str); + startActivity(i); + finish(); + overridePendingTransition(R.anim.activity_in, R.anim.activity_out); + + } else { + Snackbar.make(linear_supervisor, getString(R.string.please_save_data), Snackbar.LENGTH_SHORT).show(); + } } + } String getEmp_idFromName(String name) { @@ -410,8 +367,8 @@ public class CoachingVisitStoreActivity extends AppCompatActivity implements Ada startActivityForResult(intent, 0); } catch (Exception e) { - // Crashlytics.log(7, CommonString.MESSAGE_EXCEPTION, e.toString()); - // Crashlytics.logException(e.getCause()); + // Crashlytics.log(7, CommonString.MESSAGE_EXCEPTION, e.toString()); + // Crashlytics.logException(e.getCause()); //Crashlytics.logException(new Exception(e.getCause())); e.printStackTrace(); } @@ -457,7 +414,6 @@ public class CoachingVisitStoreActivity extends AppCompatActivity implements Ada finish(); overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out); } - return super.onOptionsItemSelected(item); } } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CompetitionPromoActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CompetitionPromoActivity.java index 4b2809a..f01190c 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CompetitionPromoActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CompetitionPromoActivity.java @@ -197,147 +197,135 @@ public class CompetitionPromoActivity extends AppCompatActivity implements Adapt btntoggle.setChecked(isExists); - str = CommonString.FILE_PATH; + str = CommonString.getImagesFolder(context); } @Override public void onClick(View v) { int id = v.getId(); - switch (id) { - case R.id.btntoggle: - isExists = btntoggle.isChecked(); + if (id == R.id.btntoggle) { + isExists = btntoggle.isChecked(); - if (isExists) { - lin_parent.setVisibility(View.VISIBLE); - isdata_added = true; - } else { - android.app.AlertDialog.Builder builder = new android.app.AlertDialog.Builder(CompetitionPromoActivity.this); - builder.setTitle("Parinaam"); - builder.setMessage(getResources().getString(R.string.data_will_be_lost)).setCancelable(false) - .setPositiveButton(getString(R.string.ok), new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int id) { + if (isExists) { + lin_parent.setVisibility(View.VISIBLE); + isdata_added = true; + } else { + android.app.AlertDialog.Builder builder = new android.app.AlertDialog.Builder(CompetitionPromoActivity.this); + builder.setTitle("Parinaam"); + builder.setMessage(getResources().getString(R.string.data_will_be_lost)).setCancelable(false) + .setPositiveButton(getString(R.string.ok), new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { - lin_parent.setVisibility(View.GONE); + lin_parent.setVisibility(View.GONE); - brand = ""; - subcategory = ""; - promotion = ""; - brand_id = 0; - subcategoryId = 0; - promotion_id = 0; - skuName = ""; - img_str = ""; - img_str1 = ""; - img_str2 = ""; - et_sku_name.setText(""); - sp_subcategory.setSelection(0); - spinner_brand_list.setSelection(0); - sp_promotion_typ.setSelection(0); + brand = ""; + subcategory = ""; + promotion = ""; + brand_id = 0; + subcategoryId = 0; + promotion_id = 0; + skuName = ""; + img_str = ""; + img_str1 = ""; + img_str2 = ""; + et_sku_name.setText(""); + sp_subcategory.setSelection(0); + spinner_brand_list.setSelection(0); + sp_promotion_typ.setSelection(0); - addedCounterfeitProducts.clear(); - isdata_added = true; - } - }) - .setNegativeButton(getString(R.string.cancel), new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - //checkBox.setChecked(true); - btntoggle.setChecked(true); - } - }); - android.app.AlertDialog alert = builder.create(); - alert.show(); - } - break; + addedCounterfeitProducts.clear(); + isdata_added = true; + } + }) + .setNegativeButton(getString(R.string.cancel), new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + btntoggle.setChecked(true); + } + }); + android.app.AlertDialog alert = builder.create(); + alert.show(); + } - case R.id.fab_add: + } else if (id == R.id.fab_add) { - skuName = et_sku_name.getText().toString().replaceAll("[&^<>{}'$]", "").replaceFirst("^0+(?!$)", ""); + skuName = et_sku_name.getText().toString().replaceAll("[&^<>{}'$]", "").replaceFirst("^0+(?!$)", ""); - if (promotion.equals("")) { - Snackbar.make(rec_added_counterfeit_product, R.string.pls_select_promo_type, Snackbar.LENGTH_SHORT).show(); - } else if (subcategory.equals("")) { - Snackbar.make(rec_added_counterfeit_product, R.string.pls_select_sub_category, Snackbar.LENGTH_SHORT).show(); - }else if (brand.equals("")) { - Snackbar.make(rec_added_counterfeit_product, R.string.pls_select_competitor, Snackbar.LENGTH_SHORT).show(); - } else if (skuName.equals("")) { - Snackbar.make(rec_added_counterfeit_product, R.string.pls_enter_comment, Snackbar.LENGTH_SHORT).show(); - } /*else if (img_str.equals("") && img_str1.equals("") && img_str2.equals("")) { - Snackbar.make(rec_added_counterfeit_product, R.string.click_image, Snackbar.LENGTH_SHORT).show(); - }*/ else { - CompetitonPromoGetterSetter product = new CompetitonPromoGetterSetter(); - product.setBrand(brand); - product.setPromotion(promotion); - product.setBrandId(brand_id); - product.setPromotion_id(promotion_id); - product.setSkuName(skuName); - product.setImgStr(img_str); - product.setImgStr1(img_str1); - product.setImgStr2(img_str2); + if (promotion.equals("")) { + Snackbar.make(rec_added_counterfeit_product, R.string.pls_select_promo_type, Snackbar.LENGTH_SHORT).show(); + } else if (subcategory.equals("")) { + Snackbar.make(rec_added_counterfeit_product, R.string.pls_select_sub_category, Snackbar.LENGTH_SHORT).show(); + } else if (brand.equals("")) { + Snackbar.make(rec_added_counterfeit_product, R.string.pls_select_competitor, Snackbar.LENGTH_SHORT).show(); + } else if (skuName.equals("")) { + Snackbar.make(rec_added_counterfeit_product, R.string.pls_enter_comment, Snackbar.LENGTH_SHORT).show(); + } else { + CompetitonPromoGetterSetter product = new CompetitonPromoGetterSetter(); + product.setBrand(brand); + product.setPromotion(promotion); + product.setBrandId(brand_id); + product.setPromotion_id(promotion_id); + product.setSkuName(skuName); + product.setImgStr(img_str); + product.setImgStr1(img_str1); + product.setImgStr2(img_str2); - addedCounterfeitProducts.add(product); + addedCounterfeitProducts.add(product); - rec_added_counterfeit_product.setLayoutManager(new LinearLayoutManager(context)); - productAdapter = new ProductAdapter(addedCounterfeitProducts); - rec_added_counterfeit_product.setAdapter(productAdapter); + rec_added_counterfeit_product.setLayoutManager(new LinearLayoutManager(context)); + productAdapter = new ProductAdapter(addedCounterfeitProducts); + rec_added_counterfeit_product.setAdapter(productAdapter); - subcategory = ""; - brand = ""; - promotion = ""; - subcategoryId = 0; - brand_id = 0; - promotion_id = 0; - skuName = ""; - img_str = ""; - img_str1 = ""; - img_str2 = ""; - et_sku_name.setText(""); - sp_subcategory.setSelection(0); - spinner_brand_list.setSelection(0); - sp_promotion_typ.setSelection(0); - //clearBrandSpinner(); + subcategory = ""; + brand = ""; + promotion = ""; + subcategoryId = 0; + brand_id = 0; + promotion_id = 0; + skuName = ""; + img_str = ""; + img_str1 = ""; + img_str2 = ""; + et_sku_name.setText(""); + sp_subcategory.setSelection(0); + spinner_brand_list.setSelection(0); + sp_promotion_typ.setSelection(0); - imgCam.setBackgroundResource(R.mipmap.camera_orange); - imgCam1.setBackgroundResource(R.mipmap.camera_orange); - imgCam2.setBackgroundResource(R.mipmap.camera_orange); + imgCam.setBackgroundResource(R.mipmap.camera_orange); + imgCam1.setBackgroundResource(R.mipmap.camera_orange); + imgCam2.setBackgroundResource(R.mipmap.camera_orange); - isdata_added = true; - } + isdata_added = true; + } - break; + } else if (id == R.id.fab) { - case R.id.fab: - if(isExists && addedCounterfeitProducts.size()==0){ - Snackbar.make(rec_added_counterfeit_product, R.string.title_activity_Want_add,Snackbar.LENGTH_SHORT).show(); - } - else { - db.InsertComptionPromotData(addedCounterfeitProducts, categoryId, store_id, isExists); - finish(); - overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out); - } + if (isExists && addedCounterfeitProducts.size() == 0) { + Snackbar.make(rec_added_counterfeit_product, R.string.title_activity_Want_add, Snackbar.LENGTH_SHORT).show(); + } else { + db.InsertComptionPromotData(addedCounterfeitProducts, categoryId, store_id, isExists); + finish(); + overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out); + } - break; + } else if (id == R.id.img_cam) { + _pathforcheck = store_id + "CounterfeitProductImg1" + categoryId + visit_date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; + _path = CommonString.getImagesFolder(context) + _pathforcheck; + startCameraActivity(); - case R.id.img_cam: - _pathforcheck = store_id + "CounterfeitProductImg1" + categoryId + visit_date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - _path = CommonString.FILE_PATH + _pathforcheck; - startCameraActivity(); - break; + } else if (id == R.id.img_cam1) { + _pathforcheck1 = store_id + "CounterfeitProductImg2" + categoryId + visit_date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; + _path = CommonString.getImagesFolder(context) + _pathforcheck1; + startCameraActivity(); - case R.id.img_cam1: - _pathforcheck1 = store_id + "CounterfeitProductImg2" + categoryId + visit_date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - _path = CommonString.FILE_PATH + _pathforcheck1; - startCameraActivity(); - break; - - case R.id.img_cam2: - _pathforcheck2 = store_id + "CounterfeitProductImg3" + categoryId + visit_date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - _path = CommonString.FILE_PATH + _pathforcheck2; - startCameraActivity(); - break; + } else if (id == R.id.img_cam2) { + _pathforcheck2 = store_id + "CounterfeitProductImg3" + categoryId + visit_date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; + _path = CommonString.getImagesFolder(context) + _pathforcheck2; + startCameraActivity(); } + } void clearBrandSpinner() { @@ -355,59 +343,52 @@ public class CompetitionPromoActivity extends AppCompatActivity implements Adapt } @Override - public void onItemSelected(AdapterView parent, View view, int position, long id) { - switch (parent.getId()) { - case R.id.sp_subcategory: - if (position != 0) { - subcategory = subcategory_list.get(position).getSUB_CATEGORY().get(0); - subcategoryId = Integer.parseInt(subcategory_list.get(position).getSUB_CATEGORY_ID().get(0)); + public void onItemSelected(AdapterView parent, View view, int position, long _po) { + int id = parent.getId(); - brand_list = db.getCompetionData(keyAccount_id, storeType_id,class_id,categoryId,subcategoryId); - //brand data - BrandMasterGetterSetter brand_select = new BrandMasterGetterSetter(); - String select = getResources().getString(R.string.select); - brand_select.setBRAND(select); - brand_select.setBRAND_ID("0"); - brand_list.add(0, brand_select); - CustomBrandAdapter adapter = new CustomBrandAdapter(CompetitionPromoActivity.this, R.layout.custom_spinner_item, brand_list); - spinner_brand_list.setAdapter(adapter); - spinner_brand_list.setOnItemSelectedListener(this); + if (id == R.id.sp_subcategory) { + if (position != 0) { + subcategory = subcategory_list.get(position).getSUB_CATEGORY().get(0); + subcategoryId = Integer.parseInt(subcategory_list.get(position).getSUB_CATEGORY_ID().get(0)); - lay_competitor_name.setVisibility(View.VISIBLE); - } else { - subcategory = ""; - subcategoryId = 0; - lay_competitor_name.setVisibility(View.GONE); - } - break; + brand_list = db.getCompetionData(keyAccount_id, storeType_id, class_id, categoryId, subcategoryId); - case R.id.sp_brand: - - if (position != 0) { - brand = brand_list.get(position).getBRAND().get(0); - brand_id = Integer.parseInt(brand_list.get(position).getBRAND_ID().get(0)); - } else { - brand = ""; - brand_id = 0; - } - - break; - case R.id.sp_promotion_typ: - - if (position != 0) { - promotion = promotion_list.get(position).getPROMOTION_TYPE().get(0); - promotion_id = Integer.parseInt(promotion_list.get(position).getPROMOTION_TYPE_ID().get(0)); - } else { - promotion = ""; - promotion_id = 0; - - } - - break; + // Prepare brand data with default "Select" option + BrandMasterGetterSetter brand_select = new BrandMasterGetterSetter(); + String select = getResources().getString(R.string.select); + brand_select.setBRAND(select); + brand_select.setBRAND_ID("0"); + brand_list.add(0, brand_select); + CustomBrandAdapter adapter = new CustomBrandAdapter(CompetitionPromoActivity.this, R.layout.custom_spinner_item, brand_list); + spinner_brand_list.setAdapter(adapter); + spinner_brand_list.setOnItemSelectedListener(this); + lay_competitor_name.setVisibility(View.VISIBLE); + } else { + subcategory = ""; + subcategoryId = 0; + lay_competitor_name.setVisibility(View.GONE); + } + } else if (id == R.id.sp_brand) { + if (position != 0) { + brand = brand_list.get(position).getBRAND().get(0); + brand_id = Integer.parseInt(brand_list.get(position).getBRAND_ID().get(0)); + } else { + brand = ""; + brand_id = 0; + } + } else if (id == R.id.sp_promotion_typ) { + if (position != 0) { + promotion = promotion_list.get(position).getPROMOTION_TYPE().get(0); + promotion_id = Integer.parseInt(promotion_list.get(position).getPROMOTION_TYPE_ID().get(0)); + } else { + promotion = ""; + promotion_id = 0; + } } + } @Override @@ -806,6 +787,7 @@ public class CompetitionPromoActivity extends AppCompatActivity implements Adapt @Override public void onBackPressed() { + super.onBackPressed(); ischanged(); } } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CounterfeitProductsActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CounterfeitProductsActivity.java index 8ee0202..3db8211 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CounterfeitProductsActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/CounterfeitProductsActivity.java @@ -125,7 +125,7 @@ public class CounterfeitProductsActivity extends AppCompatActivity implements Ad imgCam1.setOnClickListener(this); imgCam2.setOnClickListener(this); - // brand_list = db.getBrandMasterData(store_id, categoryId); + // brand_list = db.getBrandMasterData(store_id, categoryId); brand_list = db.getBrandMasterData(store_id, categoryId); //brand_list = db.getBrandData(categoryId); @@ -161,141 +161,133 @@ public class CounterfeitProductsActivity extends AppCompatActivity implements Ad btntoggle.setChecked(isExists); - str = CommonString.FILE_PATH; + str = CommonString.getImagesFolder(context); } @Override public void onClick(View v) { int id = v.getId(); - switch (id) { - case R.id.btntoggle: - isExists = btntoggle.isChecked(); + if (id == R.id.btntoggle) { + isExists = btntoggle.isChecked(); - if (isExists) { - lin_parent.setVisibility(View.VISIBLE); - isdata_added = true; - } else { - android.app.AlertDialog.Builder builder = new android.app.AlertDialog.Builder(CounterfeitProductsActivity.this); - builder.setTitle("Parinaam"); - builder.setMessage(getResources().getString(R.string.data_will_be_lost)).setCancelable(false) - .setPositiveButton(getString(R.string.ok), new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int id) { + if (isExists) { + lin_parent.setVisibility(View.VISIBLE); + isdata_added = true; + } else { + android.app.AlertDialog.Builder builder = new android.app.AlertDialog.Builder(CounterfeitProductsActivity.this); + builder.setTitle("Parinaam"); + builder.setMessage(getResources().getString(R.string.data_will_be_lost)).setCancelable(false) + .setPositiveButton(getString(R.string.ok), new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { - lin_parent.setVisibility(View.GONE); + lin_parent.setVisibility(View.GONE); - brand = ""; - brand_id = 0; + brand = ""; + brand_id = 0; - stock = ""; - skuName = ""; - img_str = ""; - img_str1 = ""; - img_str2 = ""; + stock = ""; + skuName = ""; + img_str = ""; + img_str1 = ""; + img_str2 = ""; - et_stock.setText(""); - et_sku_name.setText(""); - spinner_brand_list.setSelection(0); + et_stock.setText(""); + et_sku_name.setText(""); + spinner_brand_list.setSelection(0); - addedCounterfeitProducts.clear(); - isdata_added = true; - } - }) - .setNegativeButton(getString(R.string.cancel), new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - //checkBox.setChecked(true); - btntoggle.setChecked(true); - } - }); - android.app.AlertDialog alert = builder.create(); - alert.show(); - } - break; + addedCounterfeitProducts.clear(); + isdata_added = true; + } + }) + .setNegativeButton(getString(R.string.cancel), new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + //checkBox.setChecked(true); + btntoggle.setChecked(true); + } + }); + android.app.AlertDialog alert = builder.create(); + alert.show(); + } - case R.id.fab_add: + } else if (id == R.id.fab_add) { + skuName = et_sku_name.getText().toString().replaceAll("[&^<>{}'$]", "").replaceFirst("^0+(?!$)", ""); + stock = et_stock.getText().toString(); - skuName = et_sku_name.getText().toString().replaceAll("[&^<>{}'$]", "").replaceFirst("^0+(?!$)", ""); - stock = et_stock.getText().toString(); + if (brand.equals("")) { + Snackbar.make(rec_added_counterfeit_product, R.string.pls_select_brand, Snackbar.LENGTH_SHORT).show(); + } else if (stock.equals("")) { + Snackbar.make(rec_added_counterfeit_product, R.string.pls_enter_stock, Snackbar.LENGTH_SHORT).show(); + } else if (skuName.equals("")) { + Snackbar.make(rec_added_counterfeit_product, R.string.pls_enter_sku, Snackbar.LENGTH_SHORT).show(); + } else if (img_str.equals("") && img_str1.equals("") && img_str2.equals("")) { + Snackbar.make(rec_added_counterfeit_product, R.string.click_image, Snackbar.LENGTH_SHORT).show(); + } else { + CounterfeitProductGetterSetter product = new CounterfeitProductGetterSetter(); + product.setBrand(brand); + product.setBrandId(brand_id); + product.setStock(Integer.parseInt(stock)); + product.setSkuName(skuName); + product.setImgStr(img_str); + product.setImgStr1(img_str1); + product.setImgStr2(img_str2); - if (brand.equals("")) { - Snackbar.make(rec_added_counterfeit_product, R.string.pls_select_brand, Snackbar.LENGTH_SHORT).show(); - } else if (stock.equals("")) { - Snackbar.make(rec_added_counterfeit_product, R.string.pls_enter_stock, Snackbar.LENGTH_SHORT).show(); - } else if (skuName.equals("")) { - Snackbar.make(rec_added_counterfeit_product, R.string.pls_enter_sku, Snackbar.LENGTH_SHORT).show(); - } else if (img_str.equals("") && img_str1.equals("") && img_str2.equals("")) { - Snackbar.make(rec_added_counterfeit_product, R.string.click_image, Snackbar.LENGTH_SHORT).show(); - } else { - CounterfeitProductGetterSetter product = new CounterfeitProductGetterSetter(); - product.setBrand(brand); - product.setBrandId(brand_id); - product.setStock(Integer.parseInt(stock)); - product.setSkuName(skuName); - product.setImgStr(img_str); - product.setImgStr1(img_str1); - product.setImgStr2(img_str2); + addedCounterfeitProducts.add(product); - addedCounterfeitProducts.add(product); + rec_added_counterfeit_product.setLayoutManager(new LinearLayoutManager(context)); + productAdapter = new ProductAdapter(addedCounterfeitProducts); + rec_added_counterfeit_product.setAdapter(productAdapter); - rec_added_counterfeit_product.setLayoutManager(new LinearLayoutManager(context)); - productAdapter = new ProductAdapter(addedCounterfeitProducts); - rec_added_counterfeit_product.setAdapter(productAdapter); + brand = ""; + brand_id = 0; - brand = ""; - brand_id = 0; + stock = ""; + skuName = ""; + img_str = ""; + img_str1 = ""; + img_str2 = ""; - stock = ""; - skuName = ""; - img_str = ""; - img_str1 = ""; - img_str2 = ""; + et_stock.setText(""); + et_sku_name.setText(""); + spinner_brand_list.setSelection(0); - et_stock.setText(""); - et_sku_name.setText(""); - spinner_brand_list.setSelection(0); - //clearBrandSpinner(); + imgCam.setBackgroundResource(R.mipmap.camera_orange); + imgCam1.setBackgroundResource(R.mipmap.camera_orange); + imgCam2.setBackgroundResource(R.mipmap.camera_orange); - imgCam.setBackgroundResource(R.mipmap.camera_orange); - imgCam1.setBackgroundResource(R.mipmap.camera_orange); - imgCam2.setBackgroundResource(R.mipmap.camera_orange); + isdata_added = true; + } - isdata_added = true; - } + } else if (id == R.id.fab) { + if (isExists && addedCounterfeitProducts.size() == 0) { + Snackbar.make(rec_added_counterfeit_product, R.string.title_activity_Want_add, Snackbar.LENGTH_SHORT).show(); + } else { + db.InsertCounterfeitProductData(addedCounterfeitProducts, categoryId, store_id, isExists); + finish(); + overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out); + } - break; + } else if (id == R.id.img_cam) { + _pathforcheck = store_id + "CounterfeitProductImg1" + categoryId + visit_date.replace("/", "") + + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; + _path = CommonString.getImagesFolder(context) + _pathforcheck; + startCameraActivity(); - case R.id.fab: - if(isExists && addedCounterfeitProducts.size()==0){ - Snackbar.make(rec_added_counterfeit_product, R.string.title_activity_Want_add,Snackbar.LENGTH_SHORT).show(); - } - else { - db.InsertCounterfeitProductData(addedCounterfeitProducts, categoryId, store_id, isExists); - finish(); - overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out); - } + } else if (id == R.id.img_cam1) { + _pathforcheck1 = store_id + "CounterfeitProductImg2" + categoryId + visit_date.replace("/", "") + + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; + _path = CommonString.getImagesFolder(context) + _pathforcheck1; + startCameraActivity(); - break; - - case R.id.img_cam: - _pathforcheck = store_id + "CounterfeitProductImg1" + categoryId + visit_date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - _path = CommonString.FILE_PATH + _pathforcheck; - startCameraActivity(); - break; - - case R.id.img_cam1: - _pathforcheck1 = store_id + "CounterfeitProductImg2" + categoryId + visit_date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - _path = CommonString.FILE_PATH + _pathforcheck1; - startCameraActivity(); - break; - - case R.id.img_cam2: - _pathforcheck2 = store_id + "CounterfeitProductImg3" + categoryId + visit_date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - _path = CommonString.FILE_PATH + _pathforcheck2; - startCameraActivity(); - break; + } else if (id == R.id.img_cam2) { + _pathforcheck2 = store_id + "CounterfeitProductImg3" + categoryId + visit_date.replace("/", "") + + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; + _path = CommonString.getImagesFolder(context) + _pathforcheck2; + startCameraActivity(); } + } void clearBrandSpinner() { @@ -314,20 +306,17 @@ public class CounterfeitProductsActivity extends AppCompatActivity implements Ad @Override public void onItemSelected(AdapterView parent, View view, int position, long id) { - switch (parent.getId()) { - case R.id.sp_brand: - - if (position != 0) { - brand = brand_list.get(position).getBRAND().get(0); - brand_id = Integer.parseInt(brand_list.get(position).getBRAND_ID().get(0)); - } else { - brand = ""; - brand_id = 0; - } - - break; + if (parent.getId() == R.id.sp_brand) { + if (position != 0) { + brand = brand_list.get(position).getBRAND().get(0); + brand_id = Integer.parseInt(brand_list.get(position).getBRAND_ID().get(0)); + } else { + brand = ""; + brand_id = 0; + } } + } @Override diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/DeliveryCallActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/DeliveryCallActivity.java index bf7e8ae..54f992b 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/DeliveryCallActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/DeliveryCallActivity.java @@ -1,5 +1,6 @@ package cpm.com.gskmtorange.dailyentry; +import android.annotation.SuppressLint; import android.app.AlertDialog; import android.app.Dialog; import android.content.Context; @@ -90,27 +91,18 @@ public class DeliveryCallActivity extends AppCompatActivity implements View.OnCl int id = v.getId(); - switch (id) { - - case R.id.fab_upload: - - new UploadTask().execute(); - break; - - case R.id.fab: - - if (isCheckedIn()) { - Snackbar.make(recyclerView, getString(R.string.title_store_list_checkout_current), Snackbar.LENGTH_SHORT).show(); - } else { - - Intent in = new Intent(context, DeliveryCallAddStoreActivity.class); - startActivity(in); - - overridePendingTransition(R.anim.activity_in, R.anim.activity_out); - } - - break; + if (id == R.id.fab_upload) { + new UploadTask().execute(); + } else if (id == R.id.fab) { + if (isCheckedIn()) { + Snackbar.make(recyclerView, getString(R.string.title_store_list_checkout_current), Snackbar.LENGTH_SHORT).show(); + } else { + Intent in = new Intent(context, DeliveryCallAddStoreActivity.class); + startActivity(in); + overridePendingTransition(R.anim.activity_in, R.anim.activity_out); + } } + } class DeliveryAdapter extends RecyclerView.Adapter { @@ -148,7 +140,7 @@ public class DeliveryCallActivity extends AppCompatActivity implements View.OnCl holder.imageview.setVisibility(View.VISIBLE); holder.imageview.setBackgroundResource(R.mipmap.tick); holder.cardView.setCardBackgroundColor(getResources().getColor(R.color.colorOrange)); - }else if (current.getUPLOAD_STATUS().equals(CommonString.KEY_C)) { + } else if (current.getUPLOAD_STATUS().equals(CommonString.KEY_C)) { holder.imageview.setVisibility(View.VISIBLE); holder.imageview.setBackgroundResource(R.mipmap.exclamation); holder.cardView.setCardBackgroundColor(getResources().getColor(R.color.colorOrange)); @@ -157,22 +149,22 @@ public class DeliveryCallActivity extends AppCompatActivity implements View.OnCl holder.cardView.setCardBackgroundColor(getResources().getColor(R.color.colorOrange)); } - holder.cardView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - if (current.getUPLOAD_STATUS().equals(CommonString.KEY_CHECK_IN)) { - + holder.cardView.setOnClickListener(v -> { + switch (current.getUPLOAD_STATUS()) { + case CommonString.KEY_CHECK_IN: Intent in = new Intent(context, DeliveryCallAddStoreActivity.class); in.putExtra(CommonString.KEY_STORE_ID, current); in.putExtra(CommonString.KEY_STORE_FLAG, false); startActivity(in); overridePendingTransition(R.anim.activity_in, R.anim.activity_out); - } else if (current.getUPLOAD_STATUS().equals(CommonString.KEY_U)) { + break; + case CommonString.KEY_U: Snackbar.make(v, R.string.title_store_list_activity_store_already_done, Snackbar.LENGTH_LONG).setAction("Action", null).show(); - } else if (current.getUPLOAD_STATUS().equals(CommonString.KEY_C)) { + break; + case CommonString.KEY_C: Snackbar.make(v, R.string.title_store_list_activity_store_already_checkout, Snackbar.LENGTH_LONG).setAction("Action", null).show(); - } + break; } }); } @@ -202,18 +194,13 @@ public class DeliveryCallActivity extends AppCompatActivity implements View.OnCl @Override protected void onResume() { super.onResume(); - CommonFunctions.updateLangResources(context, preferences.getString(CommonString.KEY_LANGUAGE, "")); toolbar.setTitle(getString(R.string.delivery_call)); - deliveryCallsList = database.getDeliveryCallsData(visit_date); - - if (deliveryCallsList.size() > 0) { - //list.setAdapter(new MyAdaptor()); + if (!deliveryCallsList.isEmpty()) { deliveryAdapter = new DeliveryAdapter(context, deliveryCallsList); recyclerView.setAdapter(deliveryAdapter); recyclerView.setLayoutManager(new LinearLayoutManager(this)); - if (isCheckedIn()) { fab_upload.hide();//setVisibility(View.GONE); } else if (isUploadAble()) { @@ -249,10 +236,10 @@ public class DeliveryCallActivity extends AppCompatActivity implements View.OnCl ((TextView) dialog.findViewById(R.id.tv_title)).setText(getString(R.string.uploaddata)); } + @SuppressLint("SetTextI18n") @Override protected void onProgressUpdate(Data... values) { // TODO Auto-generated method stub - pb.setProgress(values[0].value); percentage.setText(values[0].value + "%"); message.setText(values[0].name); @@ -262,18 +249,14 @@ public class DeliveryCallActivity extends AppCompatActivity implements View.OnCl protected String doInBackground(Void... voids) { try { Data data = new Data(); - ArrayList _deliveryCallsList = database.getDeliveryCallsData(null); + ArrayList _deliveryCallsList = database.getDeliveryCallsData(null); for (int i = 0; i < _deliveryCallsList.size(); i++) { - if (_deliveryCallsList.get(i).getUPLOAD_STATUS().equals(CommonString.KEY_C)) { - data.value = 50; data.name = getString(R.string.delivery_call); publishProgress(data); - - String store_name = URLEncoder.encode(_deliveryCallsList.get(i).getSTORE_NAME(), "utf-8"); - String store_address = URLEncoder.encode(_deliveryCallsList.get(i).getADDRESS(), "utf-8"); - + String store_name = URLEncoder.encode(_deliveryCallsList.get(i).getSTORE_NAME(), "utf-8"); + String store_address = URLEncoder.encode(_deliveryCallsList.get(i).getADDRESS(), "utf-8"); String onXML = "[DELIVERY_CALLS_DATA]" + "[USER_ID]" + userId + "[/USER_ID]" + "[VISIT_DATE]" + _deliveryCallsList.get(i).getVISIT_DATE() + "[/VISIT_DATE]" @@ -282,9 +265,9 @@ public class DeliveryCallActivity extends AppCompatActivity implements View.OnCl + "[IN_TIME]" + _deliveryCallsList.get(i).getIn_time() + "[/IN_TIME]" + "[OUT_TIME]" + _deliveryCallsList.get(i).getOut_time() + "[/OUT_TIME]" + "[IN_TIME_IMAGE]" + _deliveryCallsList.get(i).getIN_TIME_IMAGE() + "[/IN_TIME_IMAGE]" - + "[OUT_TIME_IMAGE]" + _deliveryCallsList.get(i).getOUT_TIME_IMAGE()+ "[/OUT_TIME_IMAGE]" - + "[LATITUDE]" + _deliveryCallsList.get(i).getLATITUDE()+ "[/LATITUDE]" - + "[LONGITUDE]" + _deliveryCallsList.get(i).getLONGITUDE()+ "[/LONGITUDE]" + + "[OUT_TIME_IMAGE]" + _deliveryCallsList.get(i).getOUT_TIME_IMAGE() + "[/OUT_TIME_IMAGE]" + + "[LATITUDE]" + _deliveryCallsList.get(i).getLATITUDE() + "[/LATITUDE]" + + "[LONGITUDE]" + _deliveryCallsList.get(i).getLONGITUDE() + "[/LONGITUDE]" + "[/DELIVERY_CALLS_DATA]"; final String delivery_xml = "[DATA]" + onXML + "[/DATA]"; @@ -294,18 +277,15 @@ public class DeliveryCallActivity extends AppCompatActivity implements View.OnCl request.addProperty("KEYS", "DELIVERY_CALLS"); request.addProperty("USERNAME", userId); request.addProperty("MID", 0); - SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); envelope.dotNet = true; envelope.setOutputSoapObject(request); - HttpTransportSE androidHttpTransport = new HttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); if (!result.toString().equalsIgnoreCase(CommonString.KEY_SUCCESS)) { return CommonString.METHOD_UPLOAD_STOCK_XML_DATA; - } - else { + } else { database.open(); database.updateDeliveryCallsUploadStatus(_deliveryCallsList.get(i).getId()); } @@ -314,50 +294,36 @@ public class DeliveryCallActivity extends AppCompatActivity implements View.OnCl return result.toString(); - } catch (MalformedURLException e) { - e.printStackTrace(); } catch (IOException e) { - //Crashlytics.log(7, CommonString.MESSAGE_EXCEPTION, e.toString()); - //Crashlytics.logException(e.getCause()); - // Crashlytics.logException(new Exception(e.getCause())); - e.printStackTrace(); + e.fillInStackTrace(); } catch (XmlPullParserException e) { - e.printStackTrace(); + e.fillInStackTrace(); } catch (Exception e) { - // Crashlytics.log(7, CommonString.MESSAGE_EXCEPTION, e.toString()); - // Crashlytics.logException(e.getCause()); - // Crashlytics.logException(new Exception(e.getCause())); - e.printStackTrace(); + e.fillInStackTrace(); } - return null; } @Override protected void onPostExecute(String result) { super.onPostExecute(result); - dialog.dismiss(); if (result.contains(CommonString.KEY_SUCCESS)) { //db.deleteAllTables(); - - File f = new File(CommonString.FILE_PATH); + File f = new File(CommonString.getImagesFolder(context)); File fileAll[] = f.listFiles(); ArrayList file_list = new ArrayList<>(); - for (int i = 0; i < fileAll.length; i++) { String name = fileAll[i].getName(); - if(name.contains("DeliveryCalls")){ + if (name.contains("DeliveryCalls")) { file_list.add(name); } } - UploadImageWithRetrofit.uploadedFiles = 0; UploadImageWithRetrofit.totalFiles = file_list.size(); UploadImageWithRetrofit uploadImg = new UploadImageWithRetrofit(visit_date, userId, DeliveryCallActivity.this); uploadImg.UploadDeliveryImageRecursive(DeliveryCallActivity.this, file_list, 0); - } else { showAlert(getString(R.string.error) + result.toString()); } @@ -365,19 +331,11 @@ public class DeliveryCallActivity extends AppCompatActivity implements View.OnCl } public void showAlert(String str) { - AlertDialog.Builder builder = new AlertDialog.Builder(DeliveryCallActivity.this); builder.setTitle("Parinaam"); builder.setMessage(str).setCancelable(false) - .setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int id) { - - /* Intent i = new Intent(activity, StorelistActivity.class); - activity.startActivity(i); - activity.finish();*/ - finish(); - - } + .setPositiveButton(R.string.ok, (dialog, id) -> { + finish(); }); AlertDialog alert = builder.create(); alert.show(); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/DeliveryCallAddStoreActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/DeliveryCallAddStoreActivity.java index 5af93a2..80f04d3 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/DeliveryCallAddStoreActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/DeliveryCallAddStoreActivity.java @@ -160,7 +160,7 @@ public class DeliveryCallAddStoreActivity extends AppCompatActivity implements V } }); - str = CommonString.FILE_PATH; + str = CommonString.getImagesFolder(context); if (checkPlayServices()) { @@ -315,29 +315,30 @@ public class DeliveryCallAddStoreActivity extends AppCompatActivity implements V @Override public void onClick(View v) { - switch (v.getId()) { - case R.id.img_checkin: + int viewId = v.getId(); - in_time = CommonFunctions.getCurrentTimeWithLanguage(context); + if (viewId == R.id.img_checkin) { - _pathforcheck = "DeliveryCalls" + visit_date.replace("/", "") + "InTime" + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; + in_time = CommonFunctions.getCurrentTimeWithLanguage(context); - _path = CommonString.FILE_PATH + _pathforcheck; + _pathforcheck = "DeliveryCalls" + visit_date.replace("/", "") + "InTime" + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - startCameraActivity(0); - break; + _path = CommonString.getImagesFolder(context) + _pathforcheck; - case R.id.img_checkout: + startCameraActivity(0); - out_time = CommonFunctions.getCurrentTimeWithLanguage(context); + } else if (viewId == R.id.img_checkout) { - _pathforcheck = "DeliveryCalls" + visit_date.replace("/", "") + "OutTime" + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; + out_time = CommonFunctions.getCurrentTimeWithLanguage(context); - _path = CommonString.FILE_PATH + _pathforcheck; + _pathforcheck = "DeliveryCalls" + visit_date.replace("/", "") + "OutTime" + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; + + _path = CommonString.getImagesFolder(context) + _pathforcheck; + + startCameraActivity(1); - startCameraActivity(1); - break; } + } protected void startCameraActivity(int request_code) { @@ -392,9 +393,9 @@ public class DeliveryCallAddStoreActivity extends AppCompatActivity implements V startActivityForResult(intent, request_code); } catch (Exception e) { - // Crashlytics.log(7, CommonString.MESSAGE_EXCEPTION, e.toString()); - // Crashlytics.logException(e.getCause()); - // Crashlytics.logException(new Exception(e.getCause())); + // Crashlytics.log(7, CommonString.MESSAGE_EXCEPTION, e.toString()); + // Crashlytics.logException(e.getCause()); + // Crashlytics.logException(new Exception(e.getCause())); e.printStackTrace(); } } @@ -440,7 +441,7 @@ public class DeliveryCallAddStoreActivity extends AppCompatActivity implements V PLAY_SERVICES_RESOLUTION_REQUEST).show(); } else { Toast.makeText(context, getResources().getString(R.string.notsuppoted) - , Toast.LENGTH_LONG) + , Toast.LENGTH_LONG) .show(); finish(); } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/FutureJCPActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/FutureJCPActivity.java index 559dff7..61e41a3 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/FutureJCPActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/FutureJCPActivity.java @@ -80,20 +80,21 @@ public class FutureJCPActivity extends AppCompatActivity implements View.OnClick @Override public void onClick(View v) { - switch (v.getId()) { - case R.id.iconCalender: - c = Calendar.getInstance(); - year = c.get(Calendar.YEAR); - month = c.get(Calendar.MONTH); - day = c.get(Calendar.DAY_OF_MONTH); - showDatePickerDialog(year, month, day); - break; - case R.id.fab: - Snackbar.make(v, "Replace with your own action", Snackbar.LENGTH_LONG) - .setAction("Action", null).show(); - break; + int viewId = v.getId(); + + if (viewId == R.id.iconCalender) { + c = Calendar.getInstance(); + year = c.get(Calendar.YEAR); + month = c.get(Calendar.MONTH); + day = c.get(Calendar.DAY_OF_MONTH); + showDatePickerDialog(year, month, day); + + } else if (viewId == R.id.fab) { + Snackbar.make(v, "Replace with your own action", Snackbar.LENGTH_LONG) + .setAction("Action", null).show(); } + } protected void showDatePickerDialog(int year, int month, int day) { diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/NewStockDataActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/NewStockDataActivity.java index 3b7caef..8f2843c 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/NewStockDataActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/NewStockDataActivity.java @@ -92,7 +92,7 @@ public class NewStockDataActivity extends AppCompatActivity implements DialogCal boolean editFlag = false; //temp - public static final String FILE_PATH = Environment.getExternalStorageDirectory() + "/"; + // public static final String FILE_PATH = Environment.getExternalStorageDirectory() + "/"; //ImageView bmImage; RelativeLayout view; @@ -147,7 +147,7 @@ public class NewStockDataActivity extends AppCompatActivity implements DialogCal getSupportActionBar().setDisplayHomeAsUpEnabled(true); - str_planogram = CommonString.FILE_PATH_PLANOGRAM; + str_planogram = CommonString.getDownloadedImageFolder(context); prepareList(); @@ -398,7 +398,7 @@ public class NewStockDataActivity extends AppCompatActivity implements DialogCal //img_planogram.setImageBitmap(bmp); setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); - String imagePath = "file://" + CommonString.FILE_PATH_PLANOGRAM + "/" + planogram_image; + String imagePath = "file://" + CommonString.getDownloadedImageFolder(context) + "/" + planogram_image; String html = ""; webView.loadDataWithBaseURL("", html, "text/html", "utf-8", ""); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/NoCameraActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/NoCameraActivity.java index 71c828c..579dc66 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/NoCameraActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/NoCameraActivity.java @@ -124,7 +124,7 @@ public class NoCameraActivity extends AppCompatActivity implements Listener { country_id = preferences.getString(CommonString.KEY_COUNTRY_ID, ""); store_flag_str = preferences.getString(CommonString.KEY_STORE_FLAG, null); - str = CommonString.FILE_PATH; + str = CommonString.getImagesFolder(context); //Intent data categoryName = getIntent().getStringExtra("categoryName"); @@ -1084,13 +1084,13 @@ public class NoCameraActivity extends AppCompatActivity implements Listener { planogram_image = mappingPlanogramList.get(0).getPLANOGRAM_IMAGE(); } if (!planogram_image.equals("")) { - if (new File(CommonString.FILE_PATH_PLANOGRAM + planogram_image).exists()) { - Bitmap bmp = BitmapFactory.decodeFile(CommonString.FILE_PATH_PLANOGRAM + planogram_image); + if (new File(CommonString.getDownloadedImageFolder(context) + planogram_image).exists()) { + Bitmap bmp = BitmapFactory.decodeFile(CommonString.getDownloadedImageFolder(context) + planogram_image); // img_planogram.setRotation(90); //img_planogram.setImageBitmap(bmp); setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); - String imagePath = "file://" + CommonString.FILE_PATH_PLANOGRAM + "/" + planogram_image; + String imagePath = "file://" + CommonString.getDownloadedImageFolder(context) + "/" + planogram_image; String html = ""; webView.loadDataWithBaseURL("", html, "text/html", "utf-8", ""); @@ -1146,7 +1146,7 @@ public class NoCameraActivity extends AppCompatActivity implements Listener { @Override public void onBackPressed() { - // super.onBackPressed(); + super.onBackPressed(); android.app.AlertDialog.Builder builder = new android.app.AlertDialog.Builder(NoCameraActivity.this); builder.setTitle("Parinaam"); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/NonWorkingReason.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/NonWorkingReason.java index 39fda5d..e8d8979 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/NonWorkingReason.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/NonWorkingReason.java @@ -143,7 +143,7 @@ public class NonWorkingReason extends AppCompatActivity implements database = new GSKOrangeDB(this); database.open(); - str = CommonString.FILE_PATH; + str = CommonString.getImagesFolder(context); //storelist = database.getStoreData(visit_date,CommonString.KEY_JOURNEY_PLAN ); @@ -211,9 +211,8 @@ public class NonWorkingReason extends AppCompatActivity implements @Override public void onBackPressed() { // TODO Auto-generated method stub - + super.onBackPressed(); finish(); - overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out); } @@ -222,77 +221,72 @@ public class NonWorkingReason extends AppCompatActivity implements long arg3) { // TODO Auto-generated method stub - switch (arg0.getId()) { - case R.id.spinner_reason: - if (position != 0) { - reasonname = reasondata.get(position - 1).getREASON().get(0); - reasonid = reasondata.get(position - 1).getREASON_ID().get(0); - entry_allow = reasondata.get(position - 1).getENTRY_ALLOW().get(0); + int id = arg0.getId(); - image_allow = reasondata.get(position - 1).getIMAGE_ALLOW().get(0); - remark_allow = reasondata.get(position - 1).getREMARK_REQUIRED().get(0); - remark_type = reasondata.get(position - 1).getREMARK_TYPE().get(0); + if (id == R.id.spinner_reason) { + if (position != 0) { + reasonname = reasondata.get(position - 1).getREASON().get(0); + reasonid = reasondata.get(position - 1).getREASON_ID().get(0); + entry_allow = reasondata.get(position - 1).getENTRY_ALLOW().get(0); - if (image_allow.equalsIgnoreCase("1")) { - rel_cam.setVisibility(View.VISIBLE); - image = "true"; - } else { - rel_cam.setVisibility(View.GONE); - image = "false"; - } - //reason_reamrk = "true"; - if (remark_allow.equalsIgnoreCase("1")) { - reason_lay.setVisibility(View.VISIBLE); - if(remark_type.equalsIgnoreCase("Text")){ - text.setVisibility(View.VISIBLE); - subreason_spinner.setVisibility(View.GONE); - } - else { - text.setVisibility(View.GONE); - subreason_spinner.setVisibility(View.VISIBLE); + image_allow = reasondata.get(position - 1).getIMAGE_ALLOW().get(0); + remark_allow = reasondata.get(position - 1).getREMARK_REQUIRED().get(0); + remark_type = reasondata.get(position - 1).getREMARK_TYPE().get(0); - sub_reasondata = database.getNonWorkingSubReasonData(reasonid); - - sub_reason_adapter = new ArrayAdapter(this, - android.R.layout.simple_spinner_item); - - String select_str = getResources().getString(R.string.select_promo) + " " +reasondata.get(position - 1).getREMARK_LABEL().get(0); - - sub_reason_adapter.add(select_str); - - for (int i = 0; i < sub_reasondata.size(); i++) { - sub_reason_adapter.add(sub_reasondata.get(i).getSUB_REASON().get(0)); - } - - subreason_spinner.setAdapter(sub_reason_adapter); - - sub_reason_adapter - .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - - subreason_spinner.setOnItemSelectedListener(this); - } - tv_remark.setText(reasondata.get(position - 1).getREMARK_LABEL().get(0)); - } else { - reason_lay.setVisibility(View.GONE); - } + if (image_allow.equalsIgnoreCase("1")) { + rel_cam.setVisibility(View.VISIBLE); + image = "true"; + } else { + rel_cam.setVisibility(View.GONE); + image = "false"; + } + + if (remark_allow.equalsIgnoreCase("1")) { + reason_lay.setVisibility(View.VISIBLE); + if (remark_type.equalsIgnoreCase("Text")) { + text.setVisibility(View.VISIBLE); + subreason_spinner.setVisibility(View.GONE); + } else { + text.setVisibility(View.GONE); + subreason_spinner.setVisibility(View.VISIBLE); + + sub_reasondata = database.getNonWorkingSubReasonData(reasonid); + + sub_reason_adapter = new ArrayAdapter(this, + android.R.layout.simple_spinner_item); + + String select_str = getResources().getString(R.string.select_promo) + " " + reasondata.get(position - 1).getREMARK_LABEL().get(0); + + sub_reason_adapter.add(select_str); + + for (int i = 0; i < sub_reasondata.size(); i++) { + sub_reason_adapter.add(sub_reasondata.get(i).getSUB_REASON().get(0)); + } + + subreason_spinner.setAdapter(sub_reason_adapter); + + sub_reason_adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); + + subreason_spinner.setOnItemSelectedListener(this); + } + tv_remark.setText(reasondata.get(position - 1).getREMARK_LABEL().get(0)); } else { - reasonname = ""; - reasonid = ""; reason_lay.setVisibility(View.GONE); } - break; - - case R.id.spinner_sub_reason: - - if (position != 0) { - sub_reason_id = sub_reasondata.get(position-1).getSUB_REASON_ID().get(0); - } - else { - sub_reason_id = ""; - } - break; + } else { + reasonname = ""; + reasonid = ""; + reason_lay.setVisibility(View.GONE); + } + } else if (id == R.id.spinner_sub_reason) { + if (position != 0) { + sub_reason_id = sub_reasondata.get(position - 1).getSUB_REASON_ID().get(0); + } else { + sub_reason_id = ""; + } } + } @Override @@ -426,7 +420,7 @@ public class NonWorkingReason extends AppCompatActivity implements _pathforcheck = store_id + "NonWorking" + visit_date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - _path = CommonString.FILE_PATH + _pathforcheck; + _path = CommonString.getImagesFolder(context) + _pathforcheck; startCameraActivity(); } @@ -467,7 +461,7 @@ public class NonWorkingReason extends AppCompatActivity implements int id) { alert.getButton( - AlertDialog.BUTTON_POSITIVE) + AlertDialog.BUTTON_POSITIVE) .setEnabled(false); if (entry_allow.equals("0")) { @@ -847,9 +841,9 @@ public class NonWorkingReason extends AppCompatActivity implements } catch (Exception e) { - // Crashlytics.log(7, CommonString.MESSAGE_EXCEPTION, e.toString()); - // Crashlytics.logException(e.getCause()); - // Crashlytics.logException(new Exception(e.getCause())); + // Crashlytics.log(7, CommonString.MESSAGE_EXCEPTION, e.toString()); + // Crashlytics.logException(e.getCause()); + // Crashlytics.logException(new Exception(e.getCause())); ResultFlag = false; strflag = CommonString.MESSAGE_EXCEPTION; diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/OrderTakingActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/OrderTakingActivity.java index 73a984b..331b196 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/OrderTakingActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/OrderTakingActivity.java @@ -174,7 +174,7 @@ public class OrderTakingActivity extends AppCompatActivity implements DialogCall country_id = preferences.getString(CommonString.KEY_COUNTRY_ID, ""); store_flag_str = preferences.getString(CommonString.KEY_STORE_FLAG, null); - str = CommonString.FILE_PATH; + str = CommonString.getImagesFolder(context); //Intent data @@ -195,7 +195,7 @@ public class OrderTakingActivity extends AppCompatActivity implements DialogCall getSupportActionBar().setDisplayHomeAsUpEnabled(true); - str_planogram = CommonString.FILE_PATH_PLANOGRAM; + str_planogram = CommonString.getDownloadedImageFolder(context); podateET.setText(visit_date); prepareList(); @@ -211,7 +211,7 @@ public class OrderTakingActivity extends AppCompatActivity implements DialogCall public void onClick(View v) { _pathforcheck = store_id + categoryId + "POImage_" + date.replace("/", "") + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - _path = CommonString.FILE_PATH + _pathforcheck; + _path = CommonString.getImagesFolder(context) + _pathforcheck; intime = CommonFunctions.getCurrentTimeWithLanguage(context); startCameraActivity(); } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/POGQuestionsActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/POGQuestionsActivity.java index 4e54e45..384dec6 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/POGQuestionsActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/POGQuestionsActivity.java @@ -148,13 +148,12 @@ public class POGQuestionsActivity extends AppCompatActivity { adapter.notifyDataSetChanged(); expandableListView.invalidateViews(); } - Snackbar.make(expandableListView, error_msg, Snackbar.LENGTH_SHORT).show(); } } }); - if (country_id.equals("2") && (storeType_id.equals("9") || storeType_id.equals("15")||storeType_id.equals("47"))) { + if (country_id.equals("2") && (storeType_id.equals("9") || storeType_id.equals("15")||storeType_id.equals("47")||storeType_id.equals("123"))) { linPlanogramType.setVisibility(View.VISIBLE); final ArrayAdapter planogramTypeAdapter = new ArrayAdapter(this, android.R.layout.simple_spinner_item); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/StoreCheckoutImageActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/StoreCheckoutImageActivity.java index 796794b..953d730 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/StoreCheckoutImageActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/StoreCheckoutImageActivity.java @@ -1,5 +1,7 @@ package cpm.com.gskmtorange.dailyentry; +import static com.google.android.gms.location.LocationRequest.Builder.IMPLICIT_MIN_UPDATE_INTERVAL; + import android.annotation.SuppressLint; import android.app.AlertDialog; import android.app.Dialog; @@ -19,6 +21,7 @@ import android.net.Uri; import android.os.AsyncTask; import android.os.Build; import android.os.Bundle; +import android.os.Looper; import android.preference.PreferenceManager; import android.provider.MediaStore; import android.util.Log; @@ -32,12 +35,18 @@ import android.widget.Toast; import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.widget.Toolbar; +import androidx.core.app.ActivityCompat; import androidx.core.content.ContextCompat; import androidx.core.content.FileProvider; import com.google.android.gms.common.ConnectionResult; import com.google.android.gms.common.api.GoogleApiClient; +import com.google.android.gms.location.FusedLocationProviderClient; +import com.google.android.gms.location.LocationCallback; +import com.google.android.gms.location.LocationRequest; +import com.google.android.gms.location.LocationResult; import com.google.android.gms.location.LocationServices; +import com.google.android.gms.location.Priority; import org.ksoap2.SoapEnvelope; import org.ksoap2.serialization.SoapObject; @@ -58,6 +67,7 @@ import java.util.ArrayList; import java.util.Calendar; import java.util.List; import java.util.Locale; +import java.util.Objects; import javax.xml.parsers.SAXParser; import javax.xml.parsers.SAXParserFactory; @@ -93,7 +103,8 @@ public class StoreCheckoutImageActivity extends AppCompatActivity implements Vie AlertDialog alert; String img_str, strflag; private GSKOrangeDB database; - + private FusedLocationProviderClient fusedLocationProviderClient; + LocationRequest locationRequest; String lat = "0.0", lon = "0.0"; GoogleApiClient mGoogleApiClient; ArrayList coverage_list; @@ -108,34 +119,25 @@ public class StoreCheckoutImageActivity extends AppCompatActivity implements Vie context = this; preferences = PreferenceManager.getDefaultSharedPreferences(this); CommonFunctions.updateLangResources(context, preferences.getString(CommonString.KEY_LANGUAGE, "")); - toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); - - getSupportActionBar().setDisplayHomeAsUpEnabled(true); - + Objects.requireNonNull(getSupportActionBar()).setDisplayHomeAsUpEnabled(true); img_cam = (ImageView) findViewById(R.id.img_selfie); img_clicked = (ImageView) findViewById(R.id.img_cam_selfie); - btn_save = (Button) findViewById(R.id.btn_save_selfie); - store_id = preferences.getString(CommonString.KEY_STORE_ID, null); visit_date = preferences.getString(CommonString.KEY_DATE, null); date = preferences.getString(CommonString.KEY_DATE, null); username = preferences.getString(CommonString.KEY_USERNAME, null); _UserId = preferences.getString(CommonString.KEY_USERNAME, ""); intime = preferences.getString(CommonString.KEY_STORE_IN_TIME, ""); - checkOutStore_id = getIntent().getStringExtra(CommonString.KEY_STORE_ID); store_flag_str = getIntent().getStringExtra(CommonString.KEY_STORE_FLAG); - - str = CommonString.FILE_PATH; - + str = CommonString.getImagesFolder(context); + fusedLocationProviderClient = LocationServices.getFusedLocationProviderClient(this); database = new GSKOrangeDB(this); database.open(); - coverage_list = database.getCoverageData(date, store_flag_str); - img_cam.setOnClickListener(this); img_clicked.setOnClickListener(this); btn_save.setOnClickListener(this); @@ -174,79 +176,57 @@ public class StoreCheckoutImageActivity extends AppCompatActivity implements Vie @Override public void onBackPressed() { - /*Intent i = new Intent(this, DailyEntryScreen.class); - startActivity(i);*/ - + super.onBackPressed(); finish(); overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out); } + @SuppressLint("NonConstantResourceId") @Override public void onClick(View v) { int id = v.getId(); + if (id == R.id.img_cam_selfie) { + _pathforcheck = checkOutStore_id + "CHK_SI_" + + visit_date.replace("/", "") + "_" + + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - switch (id) { - case R.id.img_cam_selfie: + _path = CommonString.getImagesFolder(context) + _pathforcheck; + intime = CommonFunctions.getCurrentTimeWithLanguage(context); + startCameraActivity(); - _pathforcheck = checkOutStore_id + "CHK_SI_" + visit_date.replace("/", "") + "_" + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - _path = CommonString.FILE_PATH + _pathforcheck; - intime = CommonFunctions.getCurrentTimeWithLanguage(context); + } else if (id == R.id.btn_save_selfie) { + if (img_str != null) { + AlertDialog.Builder builder = new AlertDialog.Builder(StoreCheckoutImageActivity.this); + builder.setMessage(getResources().getString(R.string.title_activity_save_data)) + .setCancelable(false) + .setPositiveButton(getResources().getString(R.string.ok), (dialog, id1) -> { + alert.getButton(AlertDialog.BUTTON_POSITIVE).setEnabled(false); + Intent i = new Intent(StoreCheckoutImageActivity.this, CheckoutActivity.class); + i.putExtra(CommonString.KEY_STORE_FLAG, store_flag_str); + i.putExtra(CommonString.KEY_STORE_ID, checkOutStore_id); + i.putExtra(CommonString.KEY_CHECKOUT_IMAGE, img_str); + i.putExtra(CommonString.KEY_LATITUDE, lat); + i.putExtra(CommonString.KEY_LONGITUDE, lon); + startActivity(i); + finish(); + }) + .setNegativeButton(getResources().getString(R.string.cancel), (dialog, id12) -> dialog.cancel()); - startCameraActivity(); - break; + alert = builder.create(); + alert.show(); - case R.id.btn_save_selfie: - if (img_str != null) { - AlertDialog.Builder builder = new AlertDialog.Builder(StoreCheckoutImageActivity.this); - builder.setMessage(getResources().getString(R.string.title_activity_save_data)) - .setCancelable(false) - .setPositiveButton(getResources().getString(R.string.ok), new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int id) { - - alert.getButton(AlertDialog.BUTTON_POSITIVE).setEnabled(false); - - Intent i = new Intent(StoreCheckoutImageActivity.this, CheckoutActivity.class); - i.putExtra(CommonString.KEY_STORE_FLAG, store_flag_str); - i.putExtra(CommonString.KEY_STORE_ID, checkOutStore_id); - i.putExtra(CommonString.KEY_CHECKOUT_IMAGE, img_str); - i.putExtra(CommonString.KEY_LATITUDE, lat); - i.putExtra(CommonString.KEY_LONGITUDE, lon); - startActivity(i); - finish(); - } - }) - .setNegativeButton(getResources().getString(R.string.cancel), new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int id) { - dialog.cancel(); - } - }); - - alert = builder.create(); - alert.show(); - } else { - Toast.makeText(context, getResources().getString(R.string.clickimage), Toast.LENGTH_SHORT).show(); - } - - break; + } else { + Toast.makeText(context, getResources().getString(R.string.clickimage), Toast.LENGTH_SHORT).show(); + } } + } protected void startCameraActivity() { try { - /*Log.i("MakeMachine", "startCameraActivity()"); - File file = new File(_path); - Uri outputFileUri = FileProvider.getUriForFile(getApplicationContext(), "cpm.com.gskmtorange.fileprovider", file); - - Intent intent = new Intent( - MediaStore.ACTION_IMAGE_CAPTURE); - intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri); - - startActivityForResult(intent, 0);*/ - Log.i("MakeMachine", "startCameraActivity()"); File file = new File(_path); - outputFileUri = FileProvider.getUriForFile(context, "cpm.com.gskmtorange.fileprovider", file); - + outputFileUri = FileProvider.getUriForFile(context, "cpm.com.gskmtorange.fileprovider", file); String defaultCameraPackage = ""; final PackageManager packageManager = getPackageManager(); List list = packageManager.getInstalledApplications(PackageManager.GET_UNINSTALLED_PACKAGES); @@ -260,16 +240,13 @@ public class StoreCheckoutImageActivity extends AppCompatActivity implements Vie if (packag.equalsIgnoreCase("Gallery") || packag.equalsIgnoreCase("Galeri") || packag.equalsIgnoreCase("الاستوديو")) { gallery_package = list.get(n).packageName; } - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { if (packag.equalsIgnoreCase("Camera") || packag.equalsIgnoreCase("Kamera") || packag.equalsIgnoreCase("الكاميرا")) { defaultCameraPackage = list.get(n).packageName; break; } } else { - if (packag.equalsIgnoreCase("Camera") || packag.equalsIgnoreCase("Kamera") || packag.equalsIgnoreCase("الكاميرا")) { - defaultCameraPackage = list.get(n).packageName; break; } @@ -336,9 +313,9 @@ public class StoreCheckoutImageActivity extends AppCompatActivity implements Vie if (preferences.getString(CommonString.KEY_LANGUAGE, "").equalsIgnoreCase(CommonString.KEY_LANGUAGE_ARABIC_KSA)) { cdate = arabicToenglish(cdate); - }else if (preferences.getString(CommonString.KEY_LANGUAGE, "").equalsIgnoreCase(CommonString.KEY_LANGUAGE_ARABIC_UAE)) { + } else if (preferences.getString(CommonString.KEY_LANGUAGE, "").equalsIgnoreCase(CommonString.KEY_LANGUAGE_ARABIC_UAE)) { cdate = arabicToenglish(cdate); - }else if (preferences.getString(CommonString.KEY_LANGUAGE, "").equalsIgnoreCase(CommonString.KEY_LANGUAGE_ARABIC_JORDAN)) { + } else if (preferences.getString(CommonString.KEY_LANGUAGE, "").equalsIgnoreCase(CommonString.KEY_LANGUAGE_ARABIC_JORDAN)) { cdate = arabicToenglish(cdate); } @@ -347,11 +324,11 @@ public class StoreCheckoutImageActivity extends AppCompatActivity implements Vie @Override public void onConnected(Bundle bundle) { - @SuppressLint("MissingPermission") Location mLastLocation = LocationServices.FusedLocationApi.getLastLocation(mGoogleApiClient); + /* @SuppressLint("MissingPermission") Location mLastLocation = LocationServices.FusedLocationApi.getLastLocation(mGoogleApiClient); if (mLastLocation != null) { lat = String.valueOf(mLastLocation.getLatitude()); lon = String.valueOf(mLastLocation.getLongitude()); - } + }*/ } @Override @@ -369,6 +346,36 @@ public class StoreCheckoutImageActivity extends AppCompatActivity implements Vie super.onResume(); CommonFunctions.updateLangResources(context, preferences.getString(CommonString.KEY_LANGUAGE, "")); toolbar.setTitle(R.string.title_activity_store_checkout_image); + + locationRequest = new LocationRequest.Builder(Priority.PRIORITY_HIGH_ACCURACY, 100000) + .setWaitForAccurateLocation(false) + .setMinUpdateIntervalMillis(IMPLICIT_MIN_UPDATE_INTERVAL) + .setMaxUpdateDelayMillis(1000) + .build(); + + + LocationCallback locationCallback = new LocationCallback() { + @Override + public void onLocationResult(LocationResult locationResult) { + if (locationResult != null) { + if (locationResult == null) { + return; + } + //Showing the latitude, longitude and accuracy on the home screen. + for (Location location : locationResult.getLocations()) { + lat = String.valueOf(location.getLatitude()); + lon = String.valueOf(location.getLongitude()); + // Log.e("latitude_inside",location.getLatitude() + "," +location.getLongitude()); + } + } + } + }; + if (ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED + && ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { + ActivityCompat.requestPermissions(StoreCheckoutImageActivity.this, new String[]{android.Manifest.permission.ACCESS_FINE_LOCATION}, 1); + ActivityCompat.requestPermissions(StoreCheckoutImageActivity.this, new String[]{android.Manifest.permission.ACCESS_COARSE_LOCATION}, 2); + } + fusedLocationProviderClient.requestLocationUpdates(locationRequest, locationCallback, Looper.getMainLooper()); } protected void onStart() { @@ -462,9 +469,6 @@ public class StoreCheckoutImageActivity extends AppCompatActivity implements Vie SoapObject request = new SoapObject(CommonString.NAMESPACE, CommonString.METHOD_UPLOAD_CURRENT_DATA); - //request.addProperty("MID", "0"); - // request.addProperty("KEYS", "CURRENT_DATA"); - // request.addProperty("USERNAME", username); request.addProperty("onXML", current_xml); @@ -573,13 +577,10 @@ public class StoreCheckoutImageActivity extends AppCompatActivity implements Vie //showAlert(getString(R.string.data_downloaded_successfully)); } else { - GSKOrangeDB db = new GSKOrangeDB(StoreCheckoutImageActivity.this); db.open(); - dialog.dismiss(); db.deleteTableWithStoreID(store_id); - showAlert(getString(R.string.datanotfound) + " " + result); } } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/StoreListActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/StoreListActivity.java index cca5b31..8c97d2c 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/StoreListActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/StoreListActivity.java @@ -1,5 +1,7 @@ package cpm.com.gskmtorange.dailyentry; +import static com.google.android.gms.location.LocationRequest.Builder.IMPLICIT_MIN_UPDATE_INTERVAL; + import android.Manifest; import android.app.Activity; import android.app.AlertDialog; @@ -10,8 +12,6 @@ import android.content.Intent; import android.content.IntentSender; import android.content.SharedPreferences; import android.content.pm.PackageManager; -import android.content.res.Configuration; -import android.content.res.Resources; import android.graphics.drawable.ColorDrawable; import android.location.Location; import android.location.LocationManager; @@ -20,12 +20,10 @@ import android.net.NetworkInfo; import android.os.AsyncTask; import android.os.Build; import android.os.Bundle; +import android.os.Looper; import android.preference.PreferenceManager; import android.provider.Settings; -import android.util.Log; import android.view.LayoutInflater; -import android.view.Menu; -import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; @@ -47,23 +45,25 @@ import androidx.core.app.ActivityCompat; import androidx.core.content.ContextCompat; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; - import com.google.android.gms.common.ConnectionResult; import com.google.android.gms.common.GooglePlayServicesUtil; import com.google.android.gms.common.api.GoogleApiClient; import com.google.android.gms.common.api.PendingResult; import com.google.android.gms.common.api.ResultCallback; import com.google.android.gms.common.api.Status; +import com.google.android.gms.location.FusedLocationProviderClient; +import com.google.android.gms.location.LocationCallback; import com.google.android.gms.location.LocationListener; import com.google.android.gms.location.LocationRequest; +import com.google.android.gms.location.LocationResult; import com.google.android.gms.location.LocationServices; import com.google.android.gms.location.LocationSettingsRequest; import com.google.android.gms.location.LocationSettingsResult; import com.google.android.gms.location.LocationSettingsStatusCodes; +import com.google.android.gms.location.Priority; import com.google.android.gms.maps.model.LatLng; import com.google.android.material.floatingactionbutton.FloatingActionButton; import com.google.android.material.snackbar.Snackbar; - import org.ksoap2.SoapEnvelope; import org.ksoap2.serialization.SoapObject; import org.ksoap2.serialization.SoapSerializationEnvelope; @@ -158,6 +158,10 @@ public class StoreListActivity extends AppCompatActivity implements GoogleApiCli String language, country_id; String store_flag_str; + //New Location changes + private FusedLocationProviderClient fusedLocationProviderClient; + LocationRequest locationRequest; + Context context; boolean enabled = true; GoogleApiClient mGoogleApiClient; @@ -176,6 +180,7 @@ public class StoreListActivity extends AppCompatActivity implements GoogleApiCli ArrayList geoFencingGetterSetters; + DisplayMasterGetterSetter displayMasterGetterSetter; MappingStockGetterSetter mappingStockGetterSetter; MappingStockStorewiseGetterSetter mappingStockStorewiseGetterSetter; @@ -225,6 +230,7 @@ public class StoreListActivity extends AppCompatActivity implements GoogleApiCli preferences = PreferenceManager.getDefaultSharedPreferences(this); context = this; + fusedLocationProviderClient = LocationServices.getFusedLocationProviderClient(this); CommonFunctions.updateLangResources(context, preferences.getString(CommonString.KEY_LANGUAGE, "")); @@ -354,7 +360,7 @@ public class StoreListActivity extends AppCompatActivity implements GoogleApiCli @Override public void onConnected(Bundle bundle) { - if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { + /* if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { // TODO: Consider calling // ActivityCompat#requestPermissions // here to request the missing permissions, and then overriding @@ -373,7 +379,7 @@ public class StoreListActivity extends AppCompatActivity implements GoogleApiCli } startLocationUpdates(); - } + }*/ } @Override @@ -470,6 +476,34 @@ public class StoreListActivity extends AppCompatActivity implements GoogleApiCli } checkgpsEnableDevice(); + locationRequest = new LocationRequest.Builder(Priority.PRIORITY_HIGH_ACCURACY, 100000).setWaitForAccurateLocation(false).setMinUpdateIntervalMillis(IMPLICIT_MIN_UPDATE_INTERVAL).setMaxUpdateDelayMillis(1000).build(); + + + + LocationCallback locationCallback = new LocationCallback() { + @Override + public void onLocationResult(LocationResult locationResult) { + if (locationResult != null) { + if (locationResult == null) { + return; + } + //Showing the latitude, longitude and accuracy on the home screen. + for (Location location : locationResult.getLocations()) { + lat = location.getLatitude(); + lon = location.getLongitude(); + // Log.e("latitude_inside",location.getLatitude() + "," +location.getLongitude()); + } + } + } + }; + if (ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED + && ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { + ActivityCompat.requestPermissions(StoreListActivity.this, new String[]{android.Manifest.permission.ACCESS_FINE_LOCATION}, 1); + ActivityCompat.requestPermissions(StoreListActivity.this, new String[]{android.Manifest.permission.ACCESS_COARSE_LOCATION}, 2); + } + fusedLocationProviderClient.requestLocationUpdates(locationRequest, locationCallback, Looper.getMainLooper()); + + CommonFunctions.updateLangResources(context, preferences.getString(CommonString.KEY_LANGUAGE, "")); //toolbar.setTitle(getString(R.string.title_activity_store_list)); // Log.e("storeflag",store_flag_str); @@ -599,7 +633,7 @@ public class StoreListActivity extends AppCompatActivity implements GoogleApiCli final CoverageBean coverageObj = db.getCoverageSpecificData(date, storeid); //viewHolder.txt.setText(current.txt); - viewHolder.txt.setText(current.getSTORE_NAME()); + viewHolder.txt.setText(current.getSTORE_NAME() +"(" + current.getSTORE_ID() + ")"); viewHolder.address.setText(current.getADDRESS()); /* if (current.getCHECKOUT_STATUS().equalsIgnoreCase(CommonString.KEY_VALID)) { viewHolder.chkbtn.setVisibility(View.VISIBLE); @@ -923,45 +957,6 @@ public class StoreListActivity extends AppCompatActivity implements GoogleApiCli viewHolder.chkbtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - - /* String visit_xml = ""; - String onXML = ""; - ArrayList visittypelist = db.getUploadedVisitType(store_id); - - if (visittypelist.size() > 0) { - for (int j = 0; j < visittypelist.size(); j++) { - // Log.e("visit_type_id", String.valueOf(visittypelist.get(j).getVISIT_TYPE_ID())); - if(String.valueOf(visittypelist.get(j).getVISIT_TYPE_ID()).equalsIgnoreCase("[3]")){ - onXML = "[VISIT_TYPE_STATUS]" - + "[MID]" + 0 + "[/MID]" - + "[USERID]" + userId + "[/USERID]" - + "[STORE_ID]" + store_id + "[/STORE_ID]" - + "[VISIT_TYPE_ID]" + "3" + "[/VISIT_TYPE_ID]" - + "[/VISIT_TYPE_STATUS]"; - } - else if(String.valueOf(visittypelist.get(j).getVISIT_TYPE_ID()).equalsIgnoreCase("[2]")){ - onXML = "[VISIT_TYPE_STATUS]" - + "[MID]" + 0 + "[/MID]" - + "[USERID]" + userId + "[/USERID]" - + "[STORE_ID]" + store_id + "[/STORE_ID]" - + "[VISIT_TYPE_ID]" + "2" + "[/VISIT_TYPE_ID]" - + "[/VISIT_TYPE_STATUS]"; - } - else{ - onXML = "[VISIT_TYPE_STATUS]" - + "[MID]" + 0 + "[/MID]" - + "[USERID]" + userId + "[/USERID]" - + "[STORE_ID]" + store_id + "[/STORE_ID]" - + "[VISIT_TYPE_ID]" +"1"+ "[/VISIT_TYPE_ID]" - + "[/VISIT_TYPE_STATUS]"; - } - - visit_xml = visit_xml + onXML; - } - final String sos_xml = "[DATA]" + visit_xml + "[/DATA]"; - Log.e("visit_xml_data", sos_xml); - }*/ - AlertDialog.Builder builder = new AlertDialog.Builder(StoreListActivity.this); builder.setMessage(R.string.wantcheckout) .setCancelable(false) @@ -1286,12 +1281,9 @@ public class StoreListActivity extends AppCompatActivity implements GoogleApiCli public void UpdateStore(String storeid) { - db.open(); db.deleteTableWithStoreID(storeid); - db.updateStoreStatus(storeid, storelist.get(0).getVISIT_DATE(), "N"); - } @@ -1786,7 +1778,7 @@ public class StoreListActivity extends AppCompatActivity implements GoogleApiCli String image_name = mapping_planogram_masterGetterSetter.getPLANOGRAM_IMAGE().get(i); String path = mapping_planogram_masterGetterSetter.getIMAGE_PATH().get(i); - String PATH = CommonString.FILE_PATH_PLANOGRAM; + String PATH = CommonString.getDownloadedImageFolder(context); File file = new File(PATH); if (!file.isDirectory()) { file.mkdir(); @@ -1848,7 +1840,7 @@ public class StoreListActivity extends AppCompatActivity implements GoogleApiCli String image_name = displayMasterGetterSetter.getIMAGE_URL().get(i); String img_url = displayMasterGetterSetter.getIMAGE_PATH().get(i); - String PATH = CommonString.FILE_PATH_PLANOGRAM; + String PATH = CommonString.getDownloadedImageFolder(context); File file = new File(PATH); if (!file.isDirectory()) { file.mkdir(); @@ -1912,7 +1904,7 @@ public class StoreListActivity extends AppCompatActivity implements GoogleApiCli String image_name = mappingPlanogramStorewiseGetterSetter.getPLANOGRAM_IMAGE().get(i); String path = mappingPlanogramStorewiseGetterSetter.getIMAGE_PATH().get(i); - String PATH = CommonString.FILE_PATH_PLANOGRAM; + String PATH = CommonString.getDownloadedImageFolder(context); File file = new File(PATH); if (!file.isDirectory()) { file.mkdir(); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/StoreimageActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/StoreimageActivity.java index 9d99a39..e643feb 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/StoreimageActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/StoreimageActivity.java @@ -1,5 +1,7 @@ package cpm.com.gskmtorange.dailyentry; +import static com.google.android.gms.location.LocationRequest.Builder.IMPLICIT_MIN_UPDATE_INTERVAL; + import android.Manifest; import android.app.AlertDialog; import android.app.Dialog; @@ -20,6 +22,8 @@ import android.net.Uri; import android.os.AsyncTask; import android.os.Build; import android.os.Bundle; +import android.os.Environment; +import android.os.Looper; import android.preference.PreferenceManager; import android.provider.MediaStore; import android.provider.Settings; @@ -42,9 +46,13 @@ import androidx.core.content.FileProvider; import com.google.android.gms.common.ConnectionResult; import com.google.android.gms.common.GooglePlayServicesUtil; import com.google.android.gms.common.api.GoogleApiClient; +import com.google.android.gms.location.FusedLocationProviderClient; +import com.google.android.gms.location.LocationCallback; import com.google.android.gms.location.LocationListener; import com.google.android.gms.location.LocationRequest; +import com.google.android.gms.location.LocationResult; import com.google.android.gms.location.LocationServices; +import com.google.android.gms.location.Priority; import org.ksoap2.SoapEnvelope; import org.ksoap2.serialization.SoapObject; @@ -122,11 +130,16 @@ public class StoreimageActivity extends AppCompatActivity implements View.OnClic private static final String TAG = StoreimageActivity.class.getSimpleName(); + //New Changes + private FusedLocationProviderClient fusedLocationProviderClient; + LocationRequest locationRequest; + protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_storeimage); context = this; preferences = PreferenceManager.getDefaultSharedPreferences(this); + fusedLocationProviderClient = LocationServices.getFusedLocationProviderClient(this); CommonFunctions.updateLangResources(context, preferences.getString(CommonString.KEY_LANGUAGE, "")); toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); @@ -148,7 +161,8 @@ public class StoreimageActivity extends AppCompatActivity implements View.OnClic VISIT_TYPE_ID = getIntent().getStringExtra("VISIT_TYPE_ID"); // Log.e("visittypeid",VISIT_TYPE_ID); - str = CommonString.FILE_PATH; + // str = CommonString.getImagesFolder(context); + str = CommonString.getImagesFolder(this); database = new GSKOrangeDB(this); database.open(); @@ -159,7 +173,6 @@ public class StoreimageActivity extends AppCompatActivity implements View.OnClic btn_save.setOnClickListener(this); if (checkPlayServices()) { - // Building the GoogleApi client buildGoogleApiClient(); createLocationRequest(); @@ -291,33 +304,6 @@ public class StoreimageActivity extends AppCompatActivity implements View.OnClic @Override public void onConnected(Bundle bundle) { - if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { - // TODO: Consider calling - // ActivityCompat#requestPermissions - // here to request the missing permissions, and then overriding - // public void onRequestPermissionsResult(int requestCode, String[] permissions, - // int[] grantResults) - // to handle the case where the user grants the permission. See the documentation - // for ActivityCompat#requestPermissions for more details. - return; - } - mLastLocation = LocationServices.FusedLocationApi.getLastLocation(mGoogleApiClient); - - if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED - || ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED) { - if (mLastLocation != null) { - lat = mLastLocation.getLatitude(); - lon = mLastLocation.getLongitude(); - - } - } - - - // if (mRequestingLocationUpdates) { - startLocationUpdates(); - // } - - // startLocationUpdates(); } @Override @@ -369,6 +355,7 @@ public class StoreimageActivity extends AppCompatActivity implements View.OnClic /*Intent i = new Intent(this, DailyEntryScreen.class); startActivity(i);*/ + super.onBackPressed(); finish(); overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out); } @@ -468,136 +455,111 @@ public class StoreimageActivity extends AppCompatActivity implements View.OnClic int id = v.getId(); - switch (id) { + if (id == R.id.img_cam_selfie) { - case R.id.img_cam_selfie: + _pathforcheck = store_id + "SI_" + visit_date.replace("/", "") + "_" + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; - _pathforcheck = store_id + "SI_" + visit_date.replace("/", "") + "_" + CommonFunctions.getCurrentTimeWithLanguage(context).replace(":", "") + ".jpg"; + _path = str + _pathforcheck; - _path = CommonString.FILE_PATH + _pathforcheck; + intime = CommonFunctions.getCurrentTimeWithLanguage(context); - intime = CommonFunctions.getCurrentTimeWithLanguage(context); + startCameraActivity(); - startCameraActivity(); + } else if (id == R.id.btn_save_selfie) { - break; + if (img_str != null) { + AlertDialog.Builder builder = new AlertDialog.Builder(StoreimageActivity.this); + builder.setMessage(getResources().getString(R.string.title_activity_save_data)) + .setCancelable(false) + .setPositiveButton(getResources().getString(R.string.ok), new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + alert.getButton(AlertDialog.BUTTON_POSITIVE).setEnabled(false); + String status; - case R.id.btn_save_selfie: - if (img_str != null) { - AlertDialog.Builder builder = new AlertDialog.Builder(StoreimageActivity.this); - builder.setMessage(getResources().getString(R.string.title_activity_save_data)) - .setCancelable(false) - .setPositiveButton(getResources().getString(R.string.ok), new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int id) { - alert.getButton(AlertDialog.BUTTON_POSITIVE).setEnabled(false); - String status; -//if (store_flag_str.equals(CommonString.FROM_JCP) || country_id.equalsIgnoreCase("5") || country_id.equalsIgnoreCase(CommonString.COUNTRY_ID_EGYPT +"") -// || store_flag_str.equals(CommonString.FROM_ADDITIONAL) || store_flag_str.equals(CommonString.FROM_PHARMA)) { - if (store_flag_str.equals(CommonString.FROM_JCP) || country_id.equalsIgnoreCase("5") || country_id.equalsIgnoreCase("15") - || store_flag_str.equals(CommonString.FROM_PHARMA)) { - status = CommonString.KEY_INVALID; - } else { - if (VISIT_TYPE_ID != null) { - if (country_id.equals("2") && (VISIT_TYPE_ID.equals("1") || VISIT_TYPE_ID.equals("3"))) { - status = CommonString.KEY_INVALID; - } else { - status = CommonString.KEY_VALID; - } + if (store_flag_str.equals(CommonString.FROM_JCP) + || country_id.equalsIgnoreCase("5") + || country_id.equalsIgnoreCase("15") + || store_flag_str.equals(CommonString.FROM_PHARMA)) { + status = CommonString.KEY_INVALID; + } else { + if (VISIT_TYPE_ID != null) { + if (country_id.equals("2") && (VISIT_TYPE_ID.equals("1") || VISIT_TYPE_ID.equals("3"))) { + status = CommonString.KEY_INVALID; } else { status = CommonString.KEY_VALID; } - - } - CoverageBean cdata = new CoverageBean(); - cdata.setStoreId(store_id); - cdata.setVisitDate(visit_date); - cdata.setUserId(username); - cdata.setInTime(intime); - cdata.setReason(""); - cdata.setReasonid("0"); - cdata.setLatitude(lat + ""); - cdata.setLongitude(lon + ""); - cdata.setImage(img_str); - cdata.setSub_reasonId("0"); - cdata.setRemark(""); - cdata.setStatus(status); - cdata.setCheckOut_Image(""); - cdata.setFlag_from(store_flag_str); - - if (country_id.equals("7") || country_id.equals("8") || country_id.equals("17")) { - cdata.setKeyAccountId("0"); - cdata.setStoreTypeId("0"); - cdata.setClassId("0"); } else { - cdata.setKeyAccountId(keyAccount_id); - cdata.setStoreTypeId(storeType_id); - cdata.setClassId(class_id); + status = CommonString.KEY_VALID; } - - database.open(); - database.InsertCoverageData(cdata); - String table; - if (store_flag_str.equals(CommonString.FROM_JCP)) { - table = CommonString.KEY_JOURNEY_PLAN; - } else if (store_flag_str.equals(CommonString.FROM_ADDITIONAL)) { - table = CommonString.KEY_JOURNEY_PLAN_ADDITIONAL; - } else if (store_flag_str.equals(CommonString.FROM_PHARMA)) { - table = CommonString.KEY_JOURNEY_PLAN_PHARMA; - } else if (store_flag_str.equals(CommonString.FROM_ADDITIONAL_ADHOC)) { - table = CommonString.KEY_ADHOC_JOURNEYPLAN_ADDITIONAL; - } else { - table = CommonString.KEY_ADHOC_JOURNEY_PLAN; - } - - database.updateCheckoutStatus(store_id, status, table); - - /* SharedPreferences.Editor editor = preferences.edit(); - - editor.putString(CommonString.KEY_STOREVISITED_STATUS, ""); - editor.putString(CommonString.KEY_STORE_IN_TIME, ""); - - editor.commit();*/ - - - //Intent in = new Intent(StoreimageActivity.this, CategoryListActivity.class); - new GeoTagUpload(StoreimageActivity.this).execute(); - } - }) - .setNegativeButton(getResources().getString(R.string.cancel), new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int id) { - dialog.cancel(); + + CoverageBean cdata = new CoverageBean(); + cdata.setStoreId(store_id); + cdata.setVisitDate(visit_date); + cdata.setUserId(username); + cdata.setInTime(intime); + cdata.setReason(""); + cdata.setReasonid("0"); + cdata.setLatitude(lat + ""); + cdata.setLongitude(lon + ""); + cdata.setImage(img_str); + cdata.setSub_reasonId("0"); + cdata.setRemark(""); + cdata.setStatus(status); + cdata.setCheckOut_Image(""); + cdata.setFlag_from(store_flag_str); + + if (country_id.equals("7") || country_id.equals("8") || country_id.equals("17")) { + cdata.setKeyAccountId("0"); + cdata.setStoreTypeId("0"); + cdata.setClassId("0"); + } else { + cdata.setKeyAccountId(keyAccount_id); + cdata.setStoreTypeId(storeType_id); + cdata.setClassId(class_id); } - }); - alert = builder.create(); - alert.show(); + database.open(); + database.InsertCoverageData(cdata); - } else { - Toast.makeText(context, getResources().getString(R.string.clickimage), Toast.LENGTH_SHORT).show(); - } - break; + String table; + if (store_flag_str.equals(CommonString.FROM_JCP)) { + table = CommonString.KEY_JOURNEY_PLAN; + } else if (store_flag_str.equals(CommonString.FROM_ADDITIONAL)) { + table = CommonString.KEY_JOURNEY_PLAN_ADDITIONAL; + } else if (store_flag_str.equals(CommonString.FROM_PHARMA)) { + table = CommonString.KEY_JOURNEY_PLAN_PHARMA; + } else if (store_flag_str.equals(CommonString.FROM_ADDITIONAL_ADHOC)) { + table = CommonString.KEY_ADHOC_JOURNEYPLAN_ADDITIONAL; + } else { + table = CommonString.KEY_ADHOC_JOURNEY_PLAN; + } + + database.updateCheckoutStatus(store_id, status, table); + + new GeoTagUpload(StoreimageActivity.this).execute(); + } + }) + .setNegativeButton(getResources().getString(R.string.cancel), new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + dialog.cancel(); + } + }); + + alert = builder.create(); + alert.show(); + + } else { + Toast.makeText(context, getResources().getString(R.string.clickimage), Toast.LENGTH_SHORT).show(); + } } + } - protected void startCameraActivity() { + /*protected void startCameraActivity() { try { - /*Log.i("MakeMachine", "startCameraActivity()"); - File file = new File(_path); - Uri outputFileUri = FileProvider.getUriForFile(getApplicationContext(), "cpm.com.gskmtorange.fileprovider", file); - - Intent intent = new Intent( - MediaStore.ACTION_IMAGE_CAPTURE); - intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri); - - startActivityForResult(intent, 0);*/ - Log.i("MakeMachine", "startCameraActivity()"); File file = new File(_path); - - //android.os.FileUriExposedException: file:///storage/emulated/0/.GSK_MT_ORANGE_IMAGES/15024SI_01022019_120426.jpg exposed beyond app through ClipData.Item.getUri() - //outputFileUri = FileProvider.getUriForFile(getApplicationContext(), "cpm.com.gskmtorange.fileprovider", file); - outputFileUri = FileProvider.getUriForFile(context, "cpm.com.gskmtorange.fileprovider", file); String defaultCameraPackage = ""; @@ -647,6 +609,49 @@ public class StoreimageActivity extends AppCompatActivity implements View.OnClic } catch (Exception e) { e.printStackTrace(); } + }*/ + protected void startCameraActivity() { + try { + Log.i("MakeMachine", "startCameraActivity()"); + + File file = new File(_path); + outputFileUri = FileProvider.getUriForFile( + context, + "cpm.com.gskmtorange.fileprovider", + file + ); + + Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); + intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri); + + // ✅ important + intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); + intent.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION); + + // 🚀 FORCE OPEN CAMERA (no resolveActivity check) + startActivityForResult(intent, 0); + + } catch (ActivityNotFoundException e) { + e.printStackTrace(); + + // 🔥 LAST fallback (Moto fix) + try { + Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); + intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri); + intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); + intent.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION); + + startActivityForResult(intent, 0); + + } catch (Exception ex) { + ex.printStackTrace(); + Toast.makeText(this, "Camera not supported on this device", Toast.LENGTH_LONG).show(); + } + + } catch (Exception e) { + e.printStackTrace(); + Toast.makeText(this, "Camera error", Toast.LENGTH_SHORT).show(); + } } @Override @@ -661,9 +666,7 @@ public class StoreimageActivity extends AppCompatActivity implements View.OnClic case -1: if (_pathforcheck != null && !_pathforcheck.equals("")) { if (new File(str + _pathforcheck).exists()) { - try { - Bitmap bmp = BitmapFactory.decodeFile(str + _pathforcheck); img_cam.setImageBitmap(bmp); } catch (OutOfMemoryError ex) { @@ -708,19 +711,36 @@ public class StoreimageActivity extends AppCompatActivity implements View.OnClic if (mGoogleApiClient.isConnected()) { startLocationUpdates(); } + if (ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED + && ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { + ActivityCompat.requestPermissions(StoreimageActivity.this, new String[]{android.Manifest.permission.ACCESS_FINE_LOCATION}, 1); + ActivityCompat.requestPermissions(StoreimageActivity.this, new String[]{android.Manifest.permission.ACCESS_COARSE_LOCATION}, 2); + } + + locationRequest= new LocationRequest.Builder(Priority.PRIORITY_HIGH_ACCURACY, 100000) + .setWaitForAccurateLocation(false) + .setMinUpdateIntervalMillis(IMPLICIT_MIN_UPDATE_INTERVAL) + .setMaxUpdateDelayMillis(1000) + .build(); + + LocationCallback locationCallback = new LocationCallback() { + @Override + public void onLocationResult(LocationResult locationResult) { + if (locationResult != null) { + if (locationResult == null) { + return; + } + //Showing the latitude, longitude and accuracy on the home screen. + for (Location location : locationResult.getLocations()) { + lat = location.getLatitude(); + lon = location.getLongitude(); + } + } + } + }; + fusedLocationProviderClient.requestLocationUpdates(locationRequest, locationCallback, Looper.getMainLooper()); } - /*protected void onStart() { - mGoogleApiClient.connect(); - super.onStart(); - } - - protected void onStop() { - mGoogleApiClient.disconnect(); - super.onStop(); - }*/ - - @Override public void onLocationChanged(Location location) { @@ -877,30 +897,17 @@ public class StoreimageActivity extends AppCompatActivity implements View.OnClic ResultFlag = false; strflag = CommonString.MESSAGE_EXCEPTION; - } catch (IOException e) { - ResultFlag = false; strflag = CommonString.MESSAGE_SOCKETEXCEPTION; } catch (XmlPullParserException e) { - - // Crashlytics.log(7, CommonString.MESSAGE_EXCEPTION, e.toString()); - //Crashlytics.logException(e.getCause()); - // Crashlytics.logException(new Exception(e.getCause())); - ResultFlag = false; strflag = CommonString.MESSAGE_XmlPull; } catch (Exception e) { - - // Crashlytics.log(7, CommonString.MESSAGE_EXCEPTION, e.toString()); - // Crashlytics.logException(e.getCause()); - // Crashlytics.logException(new Exception(e.getCause())); - ResultFlag = false; strflag = CommonString.MESSAGE_EXCEPTION; - } if (ResultFlag) { diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/T2PComplianceActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/T2PComplianceActivity.java index eebf7c7..844007f 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/T2PComplianceActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/T2PComplianceActivity.java @@ -83,7 +83,7 @@ public class T2PComplianceActivity extends AppCompatActivity { MyAdaptorStock adapterData; String categoryName, categoryId; String store_id, visit_date, username, intime, date, keyAccount_id, class_id, storeType_id, camera_allow, country_id, store_flag_str; - String str = CommonString.FILE_PATH, + String str = "", path = "", path1 = "", path2 = "", _pathforcheck = "", _pathforcheck1 = "", _pathforcheck2 = "", img = "", img1 = "", img2 = ""; @@ -116,6 +116,7 @@ public class T2PComplianceActivity extends AppCompatActivity { context = this; //preference data preferences = PreferenceManager.getDefaultSharedPreferences(this); + str = CommonString.getImagesFolder(this); CommonFunctions.updateLangResources(context, preferences.getString(CommonString.KEY_LANGUAGE, "")); @@ -1244,7 +1245,7 @@ public class T2PComplianceActivity extends AppCompatActivity { @Override public void onBackPressed() { - //super.onBackPressed(); + super.onBackPressed(); if (editFlag) { android.app.AlertDialog.Builder builder = new android.app.AlertDialog.Builder(T2PComplianceActivity.this); @@ -1589,10 +1590,10 @@ public class T2PComplianceActivity extends AppCompatActivity { webView.getSettings().setBuiltInZoomControls(true); //String planogram_image = mp.get(0).getPLANOGRAM_IMAGE(); - if (new File(CommonString.FILE_PATH_PLANOGRAM + planogram_image).exists()) { + if (new File(CommonString.getDownloadedImageFolder(this) + planogram_image).exists()) { - String imagePath = "file://" + CommonString.FILE_PATH_PLANOGRAM + "/" + planogram_image; - //String imagePath = "file://" + CommonString.FILE_PATH + "/" + "image_ref.png"; + String imagePath = "file://" + CommonString.getDownloadedImageFolder(this) + "/" + planogram_image; + //String imagePath = "file://" + CommonString.getImagesFolder(context)+ "/" + "image_ref.png"; String html = ""; webView.loadDataWithBaseURL("", html, "text/html", "utf-8", ""); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/download/DownloadActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/download/DownloadActivity.java index ad86deb..ff3900c 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/download/DownloadActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/download/DownloadActivity.java @@ -23,7 +23,6 @@ import androidx.appcompat.widget.Toolbar; import org.ksoap2.SoapEnvelope; import org.ksoap2.serialization.SoapObject; import org.ksoap2.serialization.SoapSerializationEnvelope; -import org.ksoap2.transport.HttpTransportSE; import org.xmlpull.v1.XmlPullParser; import org.xmlpull.v1.XmlPullParserException; import org.xmlpull.v1.XmlPullParserFactory; @@ -44,6 +43,7 @@ import cpm.com.gskmtorange.Database.GSKOrangeDB; import cpm.com.gskmtorange.R; import cpm.com.gskmtorange.constant.CommonFunctions; import cpm.com.gskmtorange.constant.CommonString; +import cpm.com.gskmtorange.utils.OkHttpTransportSE; import cpm.com.gskmtorange.xmlGetterSetter.ADDITIONAL_DISPLAY_MASTERGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.AdditionalQuestiongetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.BrandMasterGetterSetter; @@ -223,7 +223,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - HttpTransportSE androidHttpTransport = new HttpTransportSE(CommonString.URL); + OkHttpTransportSE androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); Log.d("requestdata",request.toString()); @@ -267,7 +267,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -311,7 +311,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -344,7 +344,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -380,7 +380,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -415,7 +415,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -452,7 +452,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -489,7 +489,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -526,7 +526,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -562,7 +562,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -598,7 +598,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -633,7 +633,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -673,7 +673,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -713,7 +713,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -752,7 +752,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -788,7 +788,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -826,7 +826,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -861,7 +861,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -899,7 +899,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -936,7 +936,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -973,7 +973,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1012,7 +1012,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1049,7 +1049,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1085,7 +1085,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1122,7 +1122,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1158,7 +1158,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1197,7 +1197,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1233,7 +1233,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1269,7 +1269,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1304,7 +1304,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1339,7 +1339,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1376,7 +1376,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1411,7 +1411,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1446,7 +1446,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1481,7 +1481,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1516,7 +1516,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1552,7 +1552,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1590,7 +1590,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1620,7 +1620,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1650,7 +1650,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1689,7 +1689,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1729,7 +1729,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1766,7 +1766,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1804,7 +1804,7 @@ public class DownloadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); result = envelope.getResponse(); @@ -1849,7 +1849,7 @@ public class DownloadActivity extends AppCompatActivity { String image_name = mapping_planogram_masterGetterSetter.getPLANOGRAM_IMAGE().get(i); String path = mapping_planogram_masterGetterSetter.getIMAGE_PATH().get(i); - String PATH = CommonString.FILE_PATH_PLANOGRAM; + String PATH = CommonString.getDownloadedImageFolder(context); File file = new File(PATH); if (!file.isDirectory()) { file.mkdir(); @@ -1911,7 +1911,7 @@ public class DownloadActivity extends AppCompatActivity { String image_name = displayMasterGetterSetter.getIMAGE_URL().get(i); String img_url = displayMasterGetterSetter.getIMAGE_PATH().get(i); - String PATH = CommonString.FILE_PATH_PLANOGRAM; + String PATH = CommonString.getDownloadedImageFolder(context); File file = new File(PATH); if (!file.isDirectory()) { file.mkdir(); @@ -1975,7 +1975,7 @@ public class DownloadActivity extends AppCompatActivity { String image_name = mappingPlanogramStorewiseGetterSetter.getPLANOGRAM_IMAGE().get(i); String path = mappingPlanogramStorewiseGetterSetter.getIMAGE_PATH().get(i); - String PATH = CommonString.FILE_PATH_PLANOGRAM; + String PATH = CommonString.getDownloadedImageFolder(context); File file = new File(PATH); if (!file.isDirectory()) { file.mkdir(); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/fragment/SelectLanguageFragment.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/fragment/SelectLanguageFragment.java index 4f0b0d1..337e14d 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/fragment/SelectLanguageFragment.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/fragment/SelectLanguageFragment.java @@ -158,45 +158,39 @@ public class SelectLanguageFragment extends Fragment implements View.OnClickList public void onClick(View view) { int id = view.getId(); - switch (id) { - case R.id.btn_language_one: + if (id == R.id.btn_language_one) { + //selected_flag = true; + onButtonPressed(language.get(0), culture_id.get(0), login_data.getNOTICE_URL().get(0)); - //selected_flag = true; - onButtonPressed(language.get(0),culture_id.get(0),login_data.getNOTICE_URL().get(0)); + CommonFunctions.updateLangResources(getActivity(), language.get(0)); - CommonFunctions.updateLangResources(getActivity(), language.get(0)); + btn_lang_1.setBackgroundColor(getResources().getColor(R.color.colorPrimary)); + btn_lang_2.setBackgroundColor(getResources().getColor(R.color.grey_background)); + btn_lang_1.setTextColor(getResources().getColor(R.color.white)); + btn_lang_2.setTextColor(getResources().getColor(R.color.black)); - btn_lang_1.setBackgroundColor(getResources().getColor(R.color.colorPrimary)); - btn_lang_2.setBackgroundColor(getResources().getColor(R.color.grey_background)); - btn_lang_1.setTextColor(getResources().getColor(R.color.white)); - btn_lang_2.setTextColor(getResources().getColor(R.color.black)); + editor.putString(CommonString.KEY_LANGUAGE, language.get(0)); + editor.putString(CommonString.KEY_CULTURE_ID, culture_id.get(0)); + editor.putString(CommonString.KEY_NOTICE_BOARD_LINK, login_data.getNOTICE_URL().get(0)); + editor.commit(); - editor.putString(CommonString.KEY_LANGUAGE, language.get(0)); - editor.putString(CommonString.KEY_CULTURE_ID, culture_id.get(0)); - editor.putString(CommonString.KEY_NOTICE_BOARD_LINK, login_data.getNOTICE_URL().get(0)); - editor.commit(); + } else if (id == R.id.btn_language_two) { + //selected_flag = true; + onButtonPressed(language.get(1), culture_id.get(1), login_data.getNOTICE_URL().get(1)); - break; + CommonFunctions.updateLangResources(getActivity(), language.get(1)); - case R.id.btn_language_two: + btn_lang_1.setBackgroundColor(getResources().getColor(R.color.grey_background)); + btn_lang_2.setBackgroundColor(getResources().getColor(R.color.colorPrimary)); + btn_lang_2.setTextColor(getResources().getColor(R.color.white)); + btn_lang_1.setTextColor(getResources().getColor(R.color.black)); - //selected_flag = true; - onButtonPressed(language.get(1),culture_id.get(1),login_data.getNOTICE_URL().get(1)); - - CommonFunctions.updateLangResources(getActivity(), language.get(1)); - - btn_lang_1.setBackgroundColor(getResources().getColor(R.color.grey_background)); - btn_lang_2.setBackgroundColor(getResources().getColor(R.color.colorPrimary)); - btn_lang_2.setTextColor(getResources().getColor(R.color.white)); - btn_lang_1.setTextColor(getResources().getColor(R.color.black)); - - editor.putString(CommonString.KEY_LANGUAGE, language.get(1)); - editor.putString(CommonString.KEY_CULTURE_ID, culture_id.get(1)); - editor.putString(CommonString.KEY_NOTICE_BOARD_LINK, login_data.getNOTICE_URL().get(1)); - editor.commit(); - - break; + editor.putString(CommonString.KEY_LANGUAGE, language.get(1)); + editor.putString(CommonString.KEY_CULTURE_ID, culture_id.get(1)); + editor.putString(CommonString.KEY_NOTICE_BOARD_LINK, login_data.getNOTICE_URL().get(1)); + editor.commit(); } + } /** diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/fragment/ServiceActivityFragment.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/fragment/ServiceActivityFragment.java index 87c626b..405ac36 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/fragment/ServiceActivityFragment.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/fragment/ServiceActivityFragment.java @@ -51,6 +51,7 @@ import retrofit.Retrofit; public class ServiceActivityFragment extends Fragment { String result = ""; boolean isvalid = false; + Context context; public ServiceActivityFragment() { } @@ -67,6 +68,7 @@ public class ServiceActivityFragment extends Fragment { Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_service, container, false); + context = view.getContext(); preferences = PreferenceManager.getDefaultSharedPreferences(getActivity()); username = preferences.getString(CommonString.KEY_USERNAME, ""); visit_date = preferences.getString(CommonString.KEY_DATE, null); @@ -123,7 +125,7 @@ public class ServiceActivityFragment extends Fragment { } /* else if(position==1){ - File f = new File(CommonString.FILE_PATH); + File f = new File(CommonString.getImagesFolder(context)); if(f!=null){ File file[] = f.listFiles(); if(file.length>0){ @@ -196,7 +198,10 @@ public class ServiceActivityFragment extends Fragment { public void restoreBackup(){ try { - File sd = Environment.getExternalStorageDirectory(); + /* File sd = Environment.getExternalStorageDirectory(); + File data = Environment.getDataDirectory();*/ + + File sd = context.getExternalFilesDir(""); File data = Environment.getDataDirectory(); if (sd.canWrite()) { @@ -229,14 +234,17 @@ public class ServiceActivityFragment extends Fragment { @SuppressWarnings("resource") public void onClick(DialogInterface dialog, int id) { try { - File file = new File(Environment + /*File file = new File(Environment .getExternalStorageDirectory(), "gsk_orange_backup"); if (!file.isDirectory()) { file.mkdir(); - } + }*/ - File sd = Environment.getExternalStorageDirectory(); + /* File sd = Environment.getExternalStorageDirectory(); + File data = Environment.getDataDirectory();*/ + + File sd = context.getExternalFilesDir(""); File data = Environment.getDataDirectory(); if (sd.canWrite()) { @@ -249,8 +257,9 @@ public class ServiceActivityFragment extends Fragment { String backupDBPath = "GSKMT_ORANGE_Database_backup" + "_"+username+"_"+ visit_date.replace("/", "") + "_" + CommonFunctions.getCurrentTimeWithLanguage(getActivity()).replace(":", "") ; - String path = Environment.getExternalStorageDirectory().getPath()+ "/gsk_orange_backup"; + // String path = Environment.getExternalStorageDirectory().getPath()+ "/gsk_orange_backup"; + String path = CommonString.getBackupFolder(context); File currentDB = new File(data, currentDBPath); File backupDB = new File(path, backupDBPath); @@ -269,7 +278,7 @@ public class ServiceActivityFragment extends Fragment { //usk // File dir = new File(CommonString.BACKUP_PATH); - File dir = new File(CommonString.BACKUP_PATH); + File dir = new File(CommonString.getBackupFolder(context)); ArrayList list = new ArrayList(); list = getFileNames(dir.listFiles()); if (list.size() > 0) { @@ -316,7 +325,7 @@ public class ServiceActivityFragment extends Fragment { RequestBody body1; result = ""; isvalid = false; - final File originalFile = new File(CommonString.BACKUP_PATH +"/"+ file_name); + final File originalFile = new File(CommonString.getBackupFolder(context) + file_name); RequestBody photo = RequestBody.create(MediaType.parse("application/octet-stream"), originalFile); body1 = new MultipartBuilder().type(MultipartBuilder.FORM) .addFormDataPart("file", originalFile.getName(), photo) diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/CategoryListActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/CategoryListActivity.java index 6961f84..1fef9e5 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/CategoryListActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/CategoryListActivity.java @@ -116,22 +116,204 @@ public class CategoryListActivity extends AppCompatActivity { boolean flag_mapping_stock = db.isMappingStockDataStockFacing(category_id, keyAccount_id, storeType_id, class_id, store_id, CommonString.TABLE_MAPPING_STOCK_ADDITIONAL); if (flag_mapping_stock) { - if (db.checkStockData(store_id, category_id,visit_date)) { + if (db.checkStockData(store_id, category_id, visit_date)) { flag_filled = true; } else { flag_filled = false; } } + } else if (store_flag_str.equalsIgnoreCase(CommonString.FROM_DEVIATION) && + country_id.equals("2") && visit_type_id.equals("3")) { + db.open(); + if (db.additionalVisibilitydata(store_id, category_id)) { + flag_filled = true; + } else { + flag_filled = false; + } } - else if(store_flag_str.equalsIgnoreCase(CommonString.FROM_DEVIATION) && - country_id.equals("2") && visit_type_id.equals("3")){ - db.open(); - if (db.additionalVisibilitydata(store_id, category_id)) { - flag_filled = true; + + /*else { + + Log.e("KPI_DEBUG", "----------------------------------"); + Log.e("KPI_DEBUG", "Checking Category: " + category_id); + + //Additional_Visibility + if (db.additionalVisibilitydata(store_id, category_id)) { + + Log.e("KPI_DEBUG", "Additional Visibility PASSED"); + + boolean flag = true; + + //MSL_Availability + boolean flag_mapping_stock; + + if (country_id.equals("7")) { + flag_mapping_stock = db.isMappingStockDataStockFacing(category_id, null, null, null, store_id, + CommonString.TABLE_MAPPING_STOCK_STOREWISE); + } else if (store_flag_str.equalsIgnoreCase(CommonString.FROM_DEVIATION)) { + flag_mapping_stock = db.isMappingStockDataStockFacing(category_id, keyAccount_id, storeType_id, class_id, store_id, + CommonString.TABLE_MAPPING_STOCK_ADHOC); } else { + flag_mapping_stock = db.isMappingStockDataStockFacing(category_id, keyAccount_id, storeType_id, class_id, store_id, + CommonString.TABLE_MAPPING_STOCK); + } + + if (flag_mapping_stock) { + if (!db.checkMsl_Availability_StockFacingDataNew(store_id, category_id, visit_date)) { + Log.e("KPI_DEBUG", "MSL FAILED"); + flag = false; + } else { + Log.e("KPI_DEBUG", "MSL PASSED"); + } + } else { + Log.e("KPI_DEBUG", "MSL Mapping NOT REQUIRED"); + } + + //Stock Entry + boolean flag_stock_mapping_stock; + + if (country_id.equals("10")) { + flag_stock_mapping_stock = db.isMappingStockDataStockFacing(category_id, null, null, null, store_id, + CommonString.TABLE_MAPPING_STOCK_STOREWISE); + } else if (store_flag_str.equalsIgnoreCase(CommonString.FROM_DEVIATION)) { + flag_stock_mapping_stock = db.isMappingStockDataStockFacing(category_id, keyAccount_id, storeType_id, class_id, store_id, + CommonString.TABLE_MAPPING_STOCK_ADHOC); + } else { + flag_stock_mapping_stock = db.isMappingStockDataStockFacing(category_id, keyAccount_id, storeType_id, class_id, store_id, + CommonString.TABLE_MAPPING_STOCK); + } + + if (flag_stock_mapping_stock) { + if (!db.checkStock_Entry_FacingDataNew(store_id, category_id, visit_date)) { + Log.e("KPI_DEBUG", "Stock Entry FAILED"); + flag = false; + } else { + Log.e("KPI_DEBUG", "Stock Entry PASSED"); + } + } else { + Log.e("KPI_DEBUG", "Stock Entry Mapping NOT REQUIRED"); + } + + //Promo Compliance + if (flag) { + + if (country_id.equals("7")) { + + if (db.getPromoComplianceSkuwiseExistsAfterData(store_id, category_id).size() == 0) { + Log.e("KPI_DEBUG", "Promo Compliance FAILED"); + flag = false; + } else { + Log.e("KPI_DEBUG", "Promo Compliance PASSED"); + } + + } else { + + boolean isMappingPromotion_Flag; + + if (store_flag_str.equalsIgnoreCase(CommonString.FROM_DEVIATION)) { + isMappingPromotion_Flag = db.isMappingPromotionData(store_id, category_id, + CommonString.TABLE_MAPPING_PROMOTION_ADHOC); + } else { + isMappingPromotion_Flag = db.isMappingPromotionData(store_id, category_id, + CommonString.TABLE_MAPPING_PROMOTION); + } + + if (isMappingPromotion_Flag) { + + if (!db.checkPromoComplianceData(store_id, category_id)) { + Log.e("KPI_DEBUG", "Promo Compliance FAILED"); + flag = false; + } else { + Log.e("KPI_DEBUG", "Promo Compliance PASSED"); + } + + } else { + Log.e("KPI_DEBUG", "Promo Compliance Mapping NOT REQUIRED"); + } + } + } + + //T2P + if (flag) { + + boolean flag_t2p_mapping; + + if (store_flag_str.equalsIgnoreCase(CommonString.FROM_DEVIATION)) { + flag_t2p_mapping = db.isMappingT2PData(store_id, category_id, + CommonString.TABLE_MAPPING_T2P_ADHOC); + } else { + flag_t2p_mapping = db.isMappingT2PData(store_id, category_id, + CommonString.TABLE_MAPPING_T2P); + } + + if (flag_t2p_mapping) { + + if (!db.isFilledT2P(store_id, category_id)) { + Log.e("KPI_DEBUG", "T2P FAILED"); + flag = false; + } else { + Log.e("KPI_DEBUG", "T2P PASSED"); + } + + } else { + Log.e("KPI_DEBUG", "T2P Mapping NOT REQUIRED"); + } + } + + //Category Image + if (camera_allow.equals("1")) { + + if (!db.isCategoryPictureData(store_id, category_id)) { + Log.e("KPI_DEBUG", "Category Image FAILED"); + flag = false; + } else { + Log.e("KPI_DEBUG", "Category Image PASSED"); + } + + } + + //Order Taking + if (country_id.equals("15") || ((country_id.equals("17") && category_id.equals("2")))) { + + if (!db.checkOrder_taking_Data(store_id, category_id)) { + Log.e("KPI_DEBUG", "Order Taking FAILED"); + flag = false; + } else { + Log.e("KPI_DEBUG", "Order Taking PASSED"); + } + + } + + //Audit + if (flag) { + + ArrayList question_list = getAuditQnsRemoved(category_id); + + if (question_list.size() > 0) { + + if (db.getAfterSaveAuditQuestionAnswerData(store_id, category_id).size() == 0) { + Log.e("KPI_DEBUG", "Audit FAILED"); + flag = false; + } else { + Log.e("KPI_DEBUG", "Audit PASSED"); + } + + } + } + + Log.e("KPI_DEBUG", "FINAL FLAG RESULT = " + flag); + + if (!flag) { flag_filled = false; } - } + + } else { + + Log.e("KPI_DEBUG", "Additional Visibility FAILED"); + + flag_filled = false; + } + }*/ else { //Additional_Visibility if (db.additionalVisibilitydata(store_id, category_id)) { @@ -151,7 +333,7 @@ public class CategoryListActivity extends AppCompatActivity { CommonString.TABLE_MAPPING_STOCK); } if (flag_mapping_stock) { - if (!db.checkMsl_Availability_StockFacingDataNew(store_id, category_id,visit_date)) { + if (!db.checkMsl_Availability_StockFacingDataNew(store_id, category_id, visit_date)) { flag = false; } } @@ -168,8 +350,8 @@ public class CategoryListActivity extends AppCompatActivity { flag_stock_mapping_stock = db.isMappingStockDataStockFacing(category_id, keyAccount_id, storeType_id, class_id, store_id, CommonString.TABLE_MAPPING_STOCK); } - if (flag_stock_mapping_stock) { - if (!db.checkStock_Entry_FacingDataNew(store_id, category_id,visit_date)) { + if (flag_stock_mapping_stock && country_id.equals("10")) { + if (!db.checkStock_Entry_FacingDataNew(store_id, category_id, visit_date)) { flag = false; } } @@ -235,22 +417,18 @@ public class CategoryListActivity extends AppCompatActivity { } } + //Order Taking Data - if(country_id.equals("15") || ((country_id.equals("17") && category_id.equals("2")))){ + if (country_id.equals("15") || ((country_id.equals("17") && category_id.equals("2")))) { if (!db.checkOrder_taking_Data(store_id, category_id)) { flag = false; } } + // flag = true; if (flag) { - //changed on 23.10.2018 - //ArrayList question_list = getAuditAfterDeletion(category_id); - //changed on 03.12.2018 ArrayList question_list = getAuditQnsRemoved(category_id); if (question_list.size() > 0) { - /*if (!country_id.equals("6") && db.getAfterSaveAuditQuestionAnswerData(store_id, category_id).size() == 0) { - flag = false; - }*/ if (db.getAfterSaveAuditQuestionAnswerData(store_id, category_id).size() == 0) { flag = false; } @@ -259,11 +437,11 @@ public class CategoryListActivity extends AppCompatActivity { //new add UAE pharma if (flag) { - if (db.getSubCategoryMasterForPOG(category_id, storeType_id, pog_type_id, null).size() > 0) { - if (db.getAfterSavePOGUploadQuestionAnswerData(store_id, category_id).size() == 0) { - flag = false; - } - } + if (db.getSubCategoryMasterForPOG(category_id, storeType_id, pog_type_id, null).size() > 0) { + if (db.getAfterSavePOGUploadQuestionAnswerData(store_id, category_id).size() == 0) { + flag = false; + } + } if (country_id.equals("2")) { if (camera_allow.equals("1")) { if (db.getSubCategoryMasterForPOG(category_id, storeType_id, pog_type_id, null).size() > 0) { @@ -271,8 +449,6 @@ public class CategoryListActivity extends AppCompatActivity { flag = false; } } - } else { - flag = true; } } else { if (db.getSubCategoryMasterForPOG(category_id, storeType_id, pog_type_id, null).size() > 0) { @@ -298,10 +474,14 @@ public class CategoryListActivity extends AppCompatActivity { } } } + flag_filled = flag; } } + + + if (flag_filled) { if (category_id.equals("1")) { categoryList.get(i).setCategory_img(R.mipmap.health_food_drink_tick); @@ -325,6 +505,7 @@ public class CategoryListActivity extends AppCompatActivity { categoryList.get(i).setCategory_img(R.mipmap.cough_n_cold_tick); } } else { + // Log.e("CATEGORY_DEBUG", "Category: " + category_id + " Flag: " + flag_filled); if (category_id.equals("1")) { categoryList.get(i).setCategory_img(R.mipmap.health_food_drink); } else if (category_id.equals("2")) { @@ -754,5 +935,4 @@ public class CategoryListActivity extends AppCompatActivity { } } - } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/DailyDataMenuActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/DailyDataMenuActivity.java index 4ca88b3..6b0096f 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/DailyDataMenuActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/DailyDataMenuActivity.java @@ -423,6 +423,26 @@ public class DailyDataMenuActivity extends AppCompatActivity { } + //IR Images + data = new DailyDataMenuGetterSetter(); + data.setCategory_name(getResources().getString(R.string.title_activity_ir_image)); + //category_camera_list = db.getCategoryPicturedata(categoryId, keyAccount_id, storeType_id, class_id); + Log.e("catiddata",categoryId); + if (camera_allow.equalsIgnoreCase("1") && country_id.equals("8")) { + // Log.d("servicestatus", String.valueOf(!SessionService.isServiceRunning)); + /*if(db.isSosData(store_id,visit_date,CommonString.KEY_COMPELETE)){ + data.setCategory_img(R.mipmap.picturecatogory_done); + editor = preferences.edit(); + editor.putString("Service_StoreValue",""); + editor.commit(); + } + else{ + data.setCategory_img(R.mipmap.picturecatogory); + }*/ + data.setCategory_img(R.mipmap.picturecatogory); + categoryList.add(data); + } + //Stock Pricing Option - Turkey /*if(country_id.equals("4")){ data = new DailyDataMenuGetterSetter(); @@ -610,7 +630,8 @@ public class DailyDataMenuActivity extends AppCompatActivity { } else { holder.categoryName.setTextColor(getResources().getColor(R.color.grey_background)); } - } else if (dailyData.getCategory_name().equalsIgnoreCase((getResources().getString(R.string.daily_data_menu_category_picture)))) { + } + else if (dailyData.getCategory_name().equalsIgnoreCase((getResources().getString(R.string.daily_data_menu_category_picture)))) { if (camera_allow.equalsIgnoreCase("1")) { holder.categoryName.setTextColor(getResources().getColor(R.color.black)); } @@ -730,7 +751,8 @@ public class DailyDataMenuActivity extends AppCompatActivity { intent.putExtra("categoryId", categoryId); startActivity(intent); overridePendingTransition(R.anim.activity_in, R.anim.activity_out); - } else if (dailyData.getCategory_name().equalsIgnoreCase((getResources().getString(R.string.daily_data_menu_category_picture)))) { + } + else if (dailyData.getCategory_name().equalsIgnoreCase((getResources().getString(R.string.daily_data_menu_category_picture)))) { if (camera_allow.equalsIgnoreCase("1")) { Intent intent = new Intent(DailyDataMenuActivity.this, CategoryPicture.class); intent.putExtra("categoryName", dailyData.getCategory_name()); @@ -744,7 +766,9 @@ public class DailyDataMenuActivity extends AppCompatActivity { startActivity(intent); overridePendingTransition(R.anim.activity_in, R.anim.activity_out); } - } else if (dailyData.getCategory_name().equalsIgnoreCase(getResources().getString(R.string.order_taking))) { + } + + else if (dailyData.getCategory_name().equalsIgnoreCase(getResources().getString(R.string.order_taking))) { if (isMappingStockData()) { Intent intent = new Intent(DailyDataMenuActivity.this, OrderTakingActivity.class); intent.putExtra("categoryName", dailyData.getCategory_name()); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_Availability_StockFacingActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_Availability_StockFacingActivity.java index b6f24f8..4c107e5 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_Availability_StockFacingActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_Availability_StockFacingActivity.java @@ -143,7 +143,7 @@ public class MSL_Availability_StockFacingActivity extends AppCompatActivity impl toolbar.setTitle(getResources().getString(R.string.title_activity_msl__availability)); setSupportActionBar(toolbar); getSupportActionBar().setDisplayHomeAsUpEnabled(true); - str_planogram = CommonString.FILE_PATH_PLANOGRAM; + str_planogram = CommonString.getDownloadedImageFolder(context); prepareList(); prepareDefaultList(); cameraMethod(); @@ -319,7 +319,7 @@ public class MSL_Availability_StockFacingActivity extends AppCompatActivity impl if (new File(str_planogram + planogram_image).exists()) { Bitmap bmp = BitmapFactory.decodeFile(str_planogram + planogram_image); setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); - String imagePath = "file://" + CommonString.FILE_PATH_PLANOGRAM + "/" + planogram_image; + String imagePath = "file://" + str_planogram + "/" + planogram_image; String html = ""; webView.loadDataWithBaseURL("", html, "text/html", "utf-8", ""); dialog.show(); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/OrderStatusDetailActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/OrderStatusDetailActivity.java index e23ecaf..b3f0a85 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/OrderStatusDetailActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/OrderStatusDetailActivity.java @@ -165,7 +165,7 @@ public class OrderStatusDetailActivity extends AppCompatActivity{ // Log.e("sys_po_num",sys_po_number +","+timeMilli); getSupportActionBar().setDisplayHomeAsUpEnabled(true); - str_planogram = CommonString.FILE_PATH_PLANOGRAM; + str_planogram = CommonString.getDownloadedImageFolder(context); prepareList(); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/PromoComplianceActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/PromoComplianceActivity.java index 44641f0..9ae7758 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/PromoComplianceActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/PromoComplianceActivity.java @@ -77,8 +77,7 @@ public class PromoComplianceActivity extends AppCompatActivity { String store_id, visit_date, username, intime, date, keyAccount_id, class_id, storeType_id, camera_allow, store_flag_str; private SharedPreferences preferences; - String str = CommonString.FILE_PATH, - path = "", _pathforcheck = "", img = ""; + String str ="",path = "", _pathforcheck = "", img = ""; int child_position = -1; Uri outputFileUri; String gallery_package = ""; @@ -100,6 +99,7 @@ public class PromoComplianceActivity extends AppCompatActivity { getSupportActionBar().setDisplayHomeAsUpEnabled(true); context = this; + str = CommonString.getImagesFolder(context); lin_promo_sku = (LinearLayout) findViewById(R.id.lin_promo_sku); lin_addtional_promo = (LinearLayout) findViewById(R.id.lin_addtional_promo); view_promo_sku = findViewById(R.id.view_promo_sku); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/StockEntryActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/StockEntryActivity.java index 5d56c0f..76f7e7e 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/StockEntryActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/StockEntryActivity.java @@ -137,7 +137,7 @@ public class StockEntryActivity extends AppCompatActivity implements DialogCallb toolbar.setTitle(getResources().getString(R.string.stock_entry)); setSupportActionBar(toolbar); getSupportActionBar().setDisplayHomeAsUpEnabled(true); - str_planogram = CommonString.FILE_PATH_PLANOGRAM; + str_planogram = CommonString.getDownloadedImageFolder(context); prepareList(); prepareDefaultList(); cameraMethod(); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/Stock_FacingActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/Stock_FacingActivity.java index 2c9a6f3..c4f7426 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/Stock_FacingActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/Stock_FacingActivity.java @@ -161,7 +161,7 @@ public class Stock_FacingActivity extends AppCompatActivity { //Stock Facing List prepareList(); - str = CommonString.FILE_PATH + _pathforcheck; + str = CommonString.getImagesFolder(context) + _pathforcheck; prepareDefaultList(); @@ -1009,13 +1009,13 @@ public class Stock_FacingActivity extends AppCompatActivity { planogram_image = mappingPlanogramList.get(0).getPLANOGRAM_IMAGE(); } if (!planogram_image.equals("")) { - if (new File(CommonString.FILE_PATH_PLANOGRAM + planogram_image).exists()) { - Bitmap bmp = BitmapFactory.decodeFile(CommonString.FILE_PATH_PLANOGRAM + planogram_image); + if (new File(CommonString.getDownloadedImageFolder(context) + planogram_image).exists()) { + Bitmap bmp = BitmapFactory.decodeFile(CommonString.getDownloadedImageFolder(context) + planogram_image); // img_planogram.setRotation(90); //img_planogram.setImageBitmap(bmp); setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); - String imagePath = "file://" + CommonString.FILE_PATH_PLANOGRAM + "/" + planogram_image; + String imagePath = "file://" + CommonString.getDownloadedImageFolder(context) + "/" + planogram_image; String html = ""; webView.loadDataWithBaseURL("", html, "text/html", "utf-8", ""); @@ -1066,9 +1066,9 @@ public class Stock_FacingActivity extends AppCompatActivity { @Override public void onBackPressed() { - //super.onBackPressed(); - android.app.AlertDialog.Builder builder = new android.app.AlertDialog.Builder(Stock_FacingActivity.this); + super.onBackPressed(); + AlertDialog.Builder builder = new AlertDialog.Builder(Stock_FacingActivity.this); builder.setTitle(getResources().getString(R.string.dialog_title)); builder.setMessage(getResources().getString(R.string.data_will_be_lost)).setCancelable(false) .setPositiveButton(getResources().getString(R.string.ok), new DialogInterface.OnClickListener() { @@ -1089,7 +1089,7 @@ public class Stock_FacingActivity extends AppCompatActivity { public void onClick(DialogInterface dialog, int which) { } }); - android.app.AlertDialog alert = builder.create(); + AlertDialog alert = builder.create(); alert.show(); } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/password/ChangePasswordActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/password/ChangePasswordActivity.java index 316ef49..f9c2891 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/password/ChangePasswordActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/password/ChangePasswordActivity.java @@ -138,25 +138,22 @@ public class ChangePasswordActivity extends AppCompatActivity implements View.On public void onClick(View v) { int id = v.getId(); - switch (id){ - case R.id.img_info: + if (id == R.id.img_info) { - Dialog dialog = new Dialog(ChangePasswordActivity.this); - dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); - dialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT)); - dialog.setContentView(R.layout.password_rule_dialog); - dialog.show(); + Dialog dialog = new Dialog(ChangePasswordActivity.this); + dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); + dialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT)); + dialog.setContentView(R.layout.password_rule_dialog); + dialog.show(); - break; + } else if (id == R.id.btn_submit) { - case R.id.btn_submit: + if (isValid()) { + // your code here + } - if(isValid()){ - - } - - break; } + } boolean isValid(){ @@ -167,7 +164,7 @@ public class ChangePasswordActivity extends AppCompatActivity implements View.On //New Password - new_pw = et_new_password.getText().toString(); + new_pw = et_new_password.getText().toString(); if(new_pw.equals("")){ et_new_password.setError(getString(R.string.error_field_required)); @@ -244,7 +241,7 @@ public class ChangePasswordActivity extends AppCompatActivity implements View.On } - return !cancel; + return !cancel; } private class AuthenticateTask extends AsyncTask { @@ -352,7 +349,7 @@ public class ChangePasswordActivity extends AppCompatActivity implements View.On });*/ } catch (IOException e) { - final AlertMessage message = new AlertMessage( + final AlertMessage message = new AlertMessage( ChangePasswordActivity.this, AlertMessage.MESSAGE_SOCKETEXCEPTION, "socket_login", e); } catch (Exception e) { diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/password/MPinActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/password/MPinActivity.java index 873ca63..8da0b61 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/password/MPinActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/password/MPinActivity.java @@ -1,11 +1,12 @@ package cpm.com.gskmtorange.password; +import static com.google.android.gms.location.LocationRequest.Builder.IMPLICIT_MIN_UPDATE_INTERVAL; + import android.Manifest; import android.annotation.SuppressLint; import android.app.Activity; import android.app.AlertDialog; import android.app.Dialog; -import android.app.ProgressDialog; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; @@ -21,8 +22,9 @@ import android.os.AsyncTask; import android.os.Build; import android.os.Bundle; import android.os.Environment; -import android.os.Trace; +import android.os.Looper; import android.preference.PreferenceManager; +import android.util.Log; import android.view.Gravity; import android.view.View; import android.view.Window; @@ -30,7 +32,6 @@ import android.view.WindowManager; import android.widget.ImageView; import android.widget.Toast; -//import com.crashlytics.android.Crashlytics; import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; import androidx.core.app.ActivityCompat; @@ -42,12 +43,16 @@ import com.google.android.gms.common.api.GoogleApiClient; import com.google.android.gms.common.api.PendingResult; import com.google.android.gms.common.api.ResultCallback; import com.google.android.gms.common.api.Status; +import com.google.android.gms.location.FusedLocationProviderClient; +import com.google.android.gms.location.LocationCallback; import com.google.android.gms.location.LocationListener; import com.google.android.gms.location.LocationRequest; +import com.google.android.gms.location.LocationResult; import com.google.android.gms.location.LocationServices; import com.google.android.gms.location.LocationSettingsRequest; import com.google.android.gms.location.LocationSettingsResult; import com.google.android.gms.location.LocationSettingsStatusCodes; +import com.google.android.gms.location.Priority; import com.google.android.gms.maps.model.LatLng; import com.google.android.material.floatingactionbutton.FloatingActionButton; import com.google.android.material.snackbar.Snackbar; @@ -69,7 +74,9 @@ import java.io.StringReader; import java.lang.reflect.Type; import java.net.MalformedURLException; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; +import java.util.Map; import cpm.com.gskmtorange.LoginActivity; import cpm.com.gskmtorange.MainActivity; @@ -87,10 +94,7 @@ import cpm.com.gskmtorange.xmlGetterSetter.FailureGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.LoginGetterSetter; import cpm.com.gskmtorange.xmlHandlers.XMLHandlers; -public class MPinActivity extends AppCompatActivity implements - View.OnClickListener, - BlurLockView.OnPasswordInputListener, - BlurLockView.OnLeftButtonClickListener, GoogleApiClient.ConnectionCallbacks, GoogleApiClient.OnConnectionFailedListener, LocationListener { +public class MPinActivity extends AppCompatActivity implements View.OnClickListener, BlurLockView.OnPasswordInputListener, BlurLockView.OnLeftButtonClickListener, GoogleApiClient.ConnectionCallbacks, GoogleApiClient.OnConnectionFailedListener, LocationListener { BlurLockView blurLockView; ImageView imageView1; @@ -115,6 +119,8 @@ public class MPinActivity extends AppCompatActivity implements private static final int MY_PERMISSIONS_REQUEST_STORAGE_READ = 12; private static final int MY_PERMISSIONS_REQUEST_STORAGE_WRITE = 14; + private static final int PERMISSION_ALL = 99; + GoogleApiClient mGoogleApiClient; private static int UPDATE_INTERVAL = 200; // 5 sec private static int FATEST_INTERVAL = 100; // 1 sec @@ -125,6 +131,10 @@ public class MPinActivity extends AppCompatActivity implements private LocationRequest mLocationRequest; private Context context; + //New Location Changes + private FusedLocationProviderClient fusedLocationProviderClient; + LocationRequest locationRequest; + double lat = 0.0; double lon = 0.0; @@ -137,6 +147,7 @@ public class MPinActivity extends AppCompatActivity implements setContentView(R.layout.activity_mpin); context = this; + fusedLocationProviderClient = LocationServices.getFusedLocationProviderClient(this); IS_PASSWORD_CHECK = getIntent().getBooleanExtra(CommonString.IS_PASSWORD_CHECK, false); @@ -181,26 +192,124 @@ public class MPinActivity extends AppCompatActivity implements blurLockView.setTypeface(getTypeface()); blurLockView.setOnLeftButtonClickListener(this); blurLockView.setOnPasswordInputListener(this); - - //blurLockView.setType(getPasswordType(), false); - //blurLockView.setPasswordLength(4); - - /* blurLockView.show( - getIntent().getIntExtra("SHOW_DURATION", 1000), - getShowType(getIntent().getIntExtra("SHOW_DIRECTION", 0)), - getEaseType(getIntent().getIntExtra("SHOW_EASE_TYPE", 30)));*/ blurLockView.setType(Password.NUMBER, true); FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); fab.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) - .setAction("Action", null).show(); + Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG).setAction("Action", null).show(); } }); - checkAppPermission(Manifest.permission.CAMERA, MY_PERMISSIONS_REQUEST_CAMERA); + // checkAppPermission(Manifest.permission.CAMERA, MY_PERMISSIONS_REQUEST_CAMERA); + checkAndRequestPermissions(); + } + + private void checkAndRequestPermissions() { + int CAMERA = ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA); + int ACCESS_NETWORK_STATE = ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_NETWORK_STATE); + int ACCESS_COARSE_LOCATION = ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION); + int locationPermission = ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION); + int READ_PHONE_STATE = ContextCompat.checkSelfPermission(this, Manifest.permission.READ_PHONE_STATE); + List listPermissionsNeeded = new ArrayList<>(); + + if (CAMERA != PackageManager.PERMISSION_GRANTED) { + listPermissionsNeeded.add(Manifest.permission.CAMERA); + } + + if (ACCESS_NETWORK_STATE != PackageManager.PERMISSION_GRANTED) { + listPermissionsNeeded.add(Manifest.permission.ACCESS_NETWORK_STATE); + } + if (ACCESS_COARSE_LOCATION != PackageManager.PERMISSION_GRANTED) { + listPermissionsNeeded.add(Manifest.permission.ACCESS_COARSE_LOCATION); + } + if (locationPermission != PackageManager.PERMISSION_GRANTED) { + listPermissionsNeeded.add(Manifest.permission.ACCESS_FINE_LOCATION); + } + + if (READ_PHONE_STATE != PackageManager.PERMISSION_GRANTED) { + listPermissionsNeeded.add(Manifest.permission.READ_PHONE_STATE); + } + + if (!listPermissionsNeeded.isEmpty()) { + ActivityCompat.requestPermissions(this, listPermissionsNeeded.toArray(new String[listPermissionsNeeded.size()]), PERMISSION_ALL); + } + + if (checkPlayServices()) { + // Building the GoogleApi client + buildGoogleApiClient(); + createLocationRequest(); + } + + // Create an instance of GoogleAPIClient. + if (mGoogleApiClient == null) { + mGoogleApiClient = new GoogleApiClient.Builder(context).addConnectionCallbacks(this).addOnConnectionFailedListener(this).addApi(LocationServices.API).build(); + } + } + + @Override + public void onRequestPermissionsResult(int requestCode, @NonNull String permissions[], @NonNull int[] grantResults) { + super.onRequestPermissionsResult(requestCode, permissions, grantResults); + Log.d("", "Permission callback called-------"); + + if (checkPlayServices()) { + // Building the GoogleApi client + buildGoogleApiClient(); + createLocationRequest(); + } + + // Create an instance of GoogleAPIClient. + if (mGoogleApiClient == null) { + mGoogleApiClient = new GoogleApiClient.Builder(this).addConnectionCallbacks(this).addOnConnectionFailedListener(this).addApi(LocationServices.API).build(); + } + if (requestCode == PERMISSION_ALL) { + Map perms = new HashMap<>(); + // Initialize the map with both permissions + perms.put(Manifest.permission.CAMERA, PackageManager.PERMISSION_GRANTED); + perms.put(Manifest.permission.ACCESS_NETWORK_STATE, PackageManager.PERMISSION_GRANTED); + perms.put(Manifest.permission.ACCESS_COARSE_LOCATION, PackageManager.PERMISSION_GRANTED); + perms.put(Manifest.permission.ACCESS_FINE_LOCATION, PackageManager.PERMISSION_GRANTED); + perms.put(Manifest.permission.READ_PHONE_STATE, PackageManager.PERMISSION_GRANTED); + // Fill with actual results from user + if (grantResults.length > 0) { + for (int i = 0; i < permissions.length; i++) + perms.put(permissions[i], grantResults[i]); + // Check for both permissions// + if (perms.get(Manifest.permission.CAMERA) == PackageManager.PERMISSION_GRANTED && perms.get(Manifest.permission.ACCESS_NETWORK_STATE) == PackageManager.PERMISSION_GRANTED && perms.get(Manifest.permission.ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED && perms.get(Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED && perms.get(Manifest.permission.READ_PHONE_STATE) == PackageManager.PERMISSION_GRANTED) { + // imeiNumbers = imei.getDeviceImei(); + Log.d("", "sms & location services permission granted"); + // process the normal flow + //else any one or both the permissions are not granted + } else { + Log.d("", "Some permissions are not granted ask again "); + //permission is denied (this is the first time, when "never ask again" is not checked) so ask again explaining the usage of permission +// // shouldShowRequestPermissionRationale will return true + //show the dialog or snackbar saying its necessary and try again otherwise proceed with setup. + if (ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.CAMERA) || ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.ACCESS_NETWORK_STATE) || ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.ACCESS_COARSE_LOCATION) || ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.ACCESS_FINE_LOCATION) || ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.READ_EXTERNAL_STORAGE) || ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.READ_PHONE_STATE)) { + showDialogOK("Location,Photos,media,file,manage phone calls and Camera Services Permission required for this app", (dialog, which) -> { + switch (which) { + case DialogInterface.BUTTON_POSITIVE: + checkAndRequestPermissions(); + break; + case DialogInterface.BUTTON_NEGATIVE: + // proceed with logic by disabling the related features or quit the app. + Intent startMain = new Intent(Intent.ACTION_MAIN); + startMain.addCategory(Intent.CATEGORY_HOME); + startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + startActivity(startMain); + break; + } + }); + } + } + } + } + + } + + private void showDialogOK(String message, DialogInterface.OnClickListener okListener) { + new androidx.appcompat.app.AlertDialog.Builder(this).setMessage(message).setPositiveButton("OK", okListener).setNegativeButton("Cancel", okListener).create().show(); } @Override @@ -212,6 +321,32 @@ public class MPinActivity extends AppCompatActivity implements } checkgpsEnableDevice(); + + locationRequest = new LocationRequest.Builder(Priority.PRIORITY_HIGH_ACCURACY, 100000).setWaitForAccurateLocation(false).setMinUpdateIntervalMillis(IMPLICIT_MIN_UPDATE_INTERVAL).setMaxUpdateDelayMillis(1000).build(); + + + LocationCallback locationCallback = new LocationCallback() { + @Override + public void onLocationResult(LocationResult locationResult) { + if (locationResult != null) { + if (locationResult == null) { + return; + } + //Showing the latitude, longitude and accuracy on the home screen. + for (Location location : locationResult.getLocations()) { + lat = location.getLatitude(); + lon = location.getLongitude(); + // Log.e("latitude_inside",location.getLatitude() + "," +location.getLongitude()); + } + } + } + }; + if (ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { + ActivityCompat.requestPermissions(MPinActivity.this, new String[]{android.Manifest.permission.ACCESS_FINE_LOCATION}, 1); + ActivityCompat.requestPermissions(MPinActivity.this, new String[]{android.Manifest.permission.ACCESS_COARSE_LOCATION}, 2); + } + fusedLocationProviderClient.requestLocationUpdates(locationRequest, locationCallback, Looper.getMainLooper()); + } private Password getPasswordType() { @@ -225,8 +360,7 @@ public class MPinActivity extends AppCompatActivity implements private Typeface getTypeface() { if ("SAN".equals(getIntent().getStringExtra("TYPEFACE"))) return Typeface.createFromAsset(getAssets(), "fonts/San Francisco Regular.ttf"); - else if ("DEFAULT".equals(getIntent().getStringExtra("TYPEFACE"))) - return Typeface.DEFAULT; + else if ("DEFAULT".equals(getIntent().getStringExtra("TYPEFACE"))) return Typeface.DEFAULT; return Typeface.DEFAULT; } @@ -239,9 +373,7 @@ public class MPinActivity extends AppCompatActivity implements new AuthenticateTask().execute(); } else { - Toast.makeText(this, - "Correct", - Toast.LENGTH_SHORT).show(); + Toast.makeText(this, "Correct", Toast.LENGTH_SHORT).show(); } } @@ -258,27 +390,16 @@ public class MPinActivity extends AppCompatActivity implements Snackbar snackbar = Snackbar.make(blurLockView, R.string.incorrect_mpin_limit_reached, Snackbar.LENGTH_INDEFINITE); View view = snackbar.getView(); - /*TextView tv = (TextView)view.findViewById(android.support.design.R.id.snackbar_text); - tv.setTextColor(Color.RED);*/ - snackbar.setAction(R.string.reset, new View.OnClickListener() { - @Override - public void onClick(View v) { - - editor.putString(CommonString.MPIN, null); - - editor.commit(); - - finish(); - - Intent in = new Intent(context , LoginActivity.class); - startActivity(in); - - } + snackbar.setAction(R.string.reset, v -> { + editor.putString(CommonString.MPIN, null); + editor.commit(); + Intent in = new Intent(context, LoginActivity.class); + startActivity(in); + finish(); }); snackbar.setActionTextColor(Color.GREEN); snackbar.show(); } else { - int count = 3 - incorrect_times; String attemt_str; if (count == 1) { @@ -288,12 +409,8 @@ public class MPinActivity extends AppCompatActivity implements } String msg = getString(R.string.error_incorrect_pin) + attemt_str; - //blurLockView.setIncorrectInputTimes(incorrect_times); - Toast.makeText(this, - msg, - Toast.LENGTH_SHORT).show(); + Toast.makeText(this, msg, Toast.LENGTH_SHORT).show(); } - } else { pin = inputPassword; } @@ -313,13 +430,7 @@ public class MPinActivity extends AppCompatActivity implements @Override public void onClick(View v) { switch (v.getId()) { - case R.id.image_1: - /* blurLockView.show( - getIntent().getIntExtra("SHOW_DURATION", 1000), - getShowType(getIntent().getIntExtra("SHOW_DIRECTION", 0)), - getEaseType(getIntent().getIntExtra("SHOW_EASE_TYPE", 30))); - blurLockView.setType(Password.TEXT, true);*/ - break; + } } @@ -548,15 +659,7 @@ public class MPinActivity extends AppCompatActivity implements versionCode = getPackageManager().getPackageInfo(getPackageName(), 0).versionCode; - String userauth_xml = "[DATA]" + "[USER_DATA][USER_ID]" - + userId + "[/USER_ID]" + "[PASSWORD]" + password - + "[/PASSWORD]" + "[IN_TIME]" + CommonFunctions.getCurrentTimeWithLanguage(context) - + "[/IN_TIME]" + "[LATITUDE]" + lat - + "[/LATITUDE]" + "[LONGITUDE]" + lon - + "[/LONGITUDE]" + "[APP_VERSION]" + app_ver - + "[/APP_VERSION]" + "[ATT_MODE]OnLine[/ATT_MODE]" - + "[NETWORK_STATUS]" + "LoginStatus" - + "[/NETWORK_STATUS]" + "[/USER_DATA][/DATA]"; + String userauth_xml = "[DATA]" + "[USER_DATA][USER_ID]" + userId + "[/USER_ID]" + "[PASSWORD]" + password + "[/PASSWORD]" + "[IN_TIME]" + CommonFunctions.getCurrentTimeWithLanguage(context) + "[/IN_TIME]" + "[LATITUDE]" + lat + "[/LATITUDE]" + "[LONGITUDE]" + lon + "[/LONGITUDE]" + "[APP_VERSION]" + app_ver +"-T3"+ "[/APP_VERSION]" + "[ATT_MODE]OnLine[/ATT_MODE]" + "[NETWORK_STATUS]" + "LoginStatus" + "[/NETWORK_STATUS]" + "[/USER_DATA][/DATA]"; SoapObject request = new SoapObject(CommonString.NAMESPACE, CommonString.METHOD_LOGIN); request.addProperty("onXML", userauth_xml); @@ -710,8 +813,8 @@ public class MPinActivity extends AppCompatActivity implements //Stop performance trace // myTrace.stop(); - if (result.equals(CommonString.KEY_SUCCESS)) { - + if (result.equalsIgnoreCase(CommonString.KEY_SUCCESS)) { + // initializePDSDK(context, userId); //set true for South Africa boolean forSA = false; @@ -719,8 +822,7 @@ public class MPinActivity extends AppCompatActivity implements //For SA Only if (preferences.getString(CommonString.KEY_LANGUAGE, "").equals("")) { - Intent intent = new Intent(getBaseContext(), - SelectLanguageActivity.class); + Intent intent = new Intent(getBaseContext(), SelectLanguageActivity.class); intent.putExtra(CommonString.KEY_LOGIN_DATA, lgs); startActivity(intent); @@ -732,8 +834,7 @@ public class MPinActivity extends AppCompatActivity implements CommonFunctions.updateLangResources(context, preferences.getString(CommonString.KEY_LANGUAGE, "")); - Intent intent = new Intent(getBaseContext(), - MainActivity.class); + Intent intent = new Intent(getBaseContext(), MainActivity.class); startActivity(intent); finish(); @@ -743,8 +844,7 @@ public class MPinActivity extends AppCompatActivity implements } else { //for other than SA //database.open(); - if (preferences.getString(CommonString.KEY_VERSION, "").equals( - Integer.toString(versionCode))) { + if (preferences.getString(CommonString.KEY_VERSION, "").equals(Integer.toString(versionCode))) { setLanguageDataFromSharedPreferences(); @@ -756,11 +856,9 @@ public class MPinActivity extends AppCompatActivity implements } else { - Intent intent = new Intent(getBaseContext(), - AutoUpdateActivity.class); + Intent intent = new Intent(getBaseContext(), AutoUpdateActivity.class); - intent.putExtra(CommonString.KEY_PATH, - preferences.getString(CommonString.KEY_PATH, "")); + intent.putExtra(CommonString.KEY_PATH, preferences.getString(CommonString.KEY_PATH, "")); startActivity(intent); finish(); } @@ -807,17 +905,16 @@ public class MPinActivity extends AppCompatActivity implements AlertDialog.Builder builder = new AlertDialog.Builder(MPinActivity.this); builder.setTitle("Parinaam"); - builder.setMessage(str).setCancelable(false) - .setPositiveButton("OK", new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int id) { + builder.setMessage(str).setCancelable(false).setPositiveButton("OK", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { /* Intent i = new Intent(activity, StorelistActivity.class); activity.startActivity(i); activity.finish();*/ - finish(); + finish(); - } - }); + } + }); AlertDialog alert = builder.create(); alert.show(); } @@ -836,10 +933,8 @@ public class MPinActivity extends AppCompatActivity implements char[] chars = new char[number.length()]; for (int i = 0; i < number.length(); i++) { char ch = number.charAt(i); - if (ch >= 0x0660 && ch <= 0x0669) - ch -= 0x0660 - '0'; - else if (ch >= 0x06f0 && ch <= 0x06F9) - ch -= 0x06f0 - '0'; + if (ch >= 0x0660 && ch <= 0x0669) ch -= 0x0660 - '0'; + else if (ch >= 0x06f0 && ch <= 0x06F9) ch -= 0x06f0 - '0'; chars[i] = ch; } return new String(chars); @@ -861,17 +956,14 @@ public class MPinActivity extends AppCompatActivity implements // Permission is not granted // Should we show an explanation? - if (ActivityCompat.shouldShowRequestPermissionRationale(MPinActivity.this, - permission)) { + if (ActivityCompat.shouldShowRequestPermissionRationale(MPinActivity.this, permission)) { // Show an explanation to the user *asynchronously* -- don't block // this thread waiting for the user's response! After the user // sees the explanation, try again to request the permission. showOnPermissiondenied(Manifest.permission.CAMERA, MY_PERMISSIONS_REQUEST_CAMERA, 1); } else { // No explanation needed; request the permission - ActivityCompat.requestPermissions(MPinActivity.this, - new String[]{permission}, - requestCode); + ActivityCompat.requestPermissions(MPinActivity.this, new String[]{permission}, requestCode); // MY_PERMISSIONS_REQUEST_READ_CONTACTS is an // app-defined int constant. The callback method gets the @@ -898,10 +990,7 @@ public class MPinActivity extends AppCompatActivity implements file_planogram.mkdir(); } - if (Build.VERSION.SDK_INT >= 23 && ContextCompat.checkSelfPermission(context, - android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && - ContextCompat.checkSelfPermission(context, - android.Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { + if (Build.VERSION.SDK_INT >= 23 && ContextCompat.checkSelfPermission(context, android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ContextCompat.checkSelfPermission(context, android.Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { return; } @@ -914,11 +1003,7 @@ public class MPinActivity extends AppCompatActivity implements // Create an instance of GoogleAPIClient. if (mGoogleApiClient == null) { - mGoogleApiClient = new GoogleApiClient.Builder(this) - .addConnectionCallbacks(this) - .addOnConnectionFailedListener(this) - .addApi(LocationServices.API) - .build(); + mGoogleApiClient = new GoogleApiClient.Builder(this).addConnectionCallbacks(this).addOnConnectionFailedListener(this).addApi(LocationServices.API).build(); } //attemptLogin(); @@ -938,9 +1023,7 @@ public class MPinActivity extends AppCompatActivity implements if (check == 0) { checkAppPermission(permissionsRequired, request_code); } else { - ActivityCompat.requestPermissions(MPinActivity.this, - new String[]{permissionsRequired}, - request_code); + ActivityCompat.requestPermissions(MPinActivity.this, new String[]{permissionsRequired}, request_code); } } @@ -955,18 +1038,18 @@ public class MPinActivity extends AppCompatActivity implements builder.show(); } - @Override - public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { + /* @Override + public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { - super.onRequestPermissionsResult(requestCode, permissions, grantResults); - checkAppPermission(Manifest.permission.CAMERA, MY_PERMISSIONS_REQUEST_CAMERA); + super.onRequestPermissionsResult(requestCode, permissions, grantResults); + checkAppPermission(Manifest.permission.CAMERA, MY_PERMISSIONS_REQUEST_CAMERA); - /*if (requestCode == PERMISSIONS_REQUEST_READ_PHONE_STATE + *//*if (requestCode == PERMISSIONS_REQUEST_READ_PHONE_STATE && grantResults[0] == PackageManager.PERMISSION_GRANTED) { imeiNumbers = imei.getDeviceImei(); } - */ + *//* if (Build.VERSION.SDK_INT >= 23 && ContextCompat.checkSelfPermission(context, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && @@ -992,18 +1075,14 @@ public class MPinActivity extends AppCompatActivity implements } } - +*/ private boolean checkPlayServices() { - int resultCode = GooglePlayServicesUtil - .isGooglePlayServicesAvailable(this); + int resultCode = GooglePlayServicesUtil.isGooglePlayServicesAvailable(this); if (resultCode != ConnectionResult.SUCCESS) { if (GooglePlayServicesUtil.isUserRecoverableError(resultCode)) { - GooglePlayServicesUtil.getErrorDialog(resultCode, this, - PLAY_SERVICES_RESOLUTION_REQUEST).show(); + GooglePlayServicesUtil.getErrorDialog(resultCode, this, PLAY_SERVICES_RESOLUTION_REQUEST).show(); } else { - Toast.makeText(context, getResources().getString(R.string.notsuppoted) - , Toast.LENGTH_LONG) - .show(); + Toast.makeText(context, getResources().getString(R.string.notsuppoted), Toast.LENGTH_LONG).show(); finish(); } return false; @@ -1013,11 +1092,7 @@ public class MPinActivity extends AppCompatActivity implements protected synchronized void buildGoogleApiClient() { if (mGoogleApiClient == null) { - mGoogleApiClient = new GoogleApiClient.Builder(context) - .addConnectionCallbacks(this) - .addOnConnectionFailedListener(this) - .addApi(LocationServices.API) - .build(); + mGoogleApiClient = new GoogleApiClient.Builder(context).addConnectionCallbacks(this).addOnConnectionFailedListener(this).addApi(LocationServices.API).build(); } } @@ -1049,8 +1124,7 @@ public class MPinActivity extends AppCompatActivity implements @SuppressLint("MissingPermission") protected void startLocationUpdates() { - if (ContextCompat.checkSelfPermission(context, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED - || ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED) { + if (ContextCompat.checkSelfPermission(context, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED || ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED) { if (mGoogleApiClient != null) { LocationServices.FusedLocationApi.requestLocationUpdates(mGoogleApiClient, mLocationRequest, this); } @@ -1062,9 +1136,7 @@ public class MPinActivity extends AppCompatActivity implements double earthRadius = 6371000; //meters double dLat = Math.toRadians(lat2 - lat1); double dLng = Math.toRadians(lng2 - lng1); - double a = Math.sin(dLat / 2) * Math.sin(dLat / 2) + - Math.cos(Math.toRadians(lat1)) * Math.cos(Math.toRadians(lat2)) * - Math.sin(dLng / 2) * Math.sin(dLng / 2); + double a = Math.sin(dLat / 2) * Math.sin(dLat / 2) + Math.cos(Math.toRadians(lat1)) * Math.cos(Math.toRadians(lat2)) * Math.sin(dLng / 2) * Math.sin(dLng / 2); double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a)); int dist = (int) (earthRadius * c); @@ -1073,7 +1145,7 @@ public class MPinActivity extends AppCompatActivity implements @Override public void onConnected(Bundle bundle) { - if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { + /* if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { // TODO: Consider calling // ActivityCompat#requestPermissions // here to request the missing permissions, and then overriding @@ -1091,7 +1163,7 @@ public class MPinActivity extends AppCompatActivity implements lon = mLastLocation.getLongitude(); } startLocationUpdates(); - } + }*/ } @Override @@ -1125,11 +1197,9 @@ public class MPinActivity extends AppCompatActivity implements private boolean hasGPSDevice(Context context) { final LocationManager mgr = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE); - if (mgr == null) - return false; + if (mgr == null) return false; final List providers = mgr.getAllProviders(); - if (providers == null) - return false; + if (providers == null) return false; return providers.contains(LocationManager.GPS_PROVIDER); } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/pharma_stores/MSLFragment.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/pharma_stores/MSLFragment.java index 1d1be43..a5c44ed 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/pharma_stores/MSLFragment.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/pharma_stores/MSLFragment.java @@ -91,7 +91,7 @@ public class MSLFragment extends Fragment { String gallery_package = ""; Uri outputFileUri; - String str = CommonString.FILE_PATH, path = "", _pathforcheck = ""; + String str = CommonString.getImagesFolder(getContext()), path = "", _pathforcheck = ""; int child_position = -1; int group_position = -1; @@ -153,6 +153,7 @@ public class MSLFragment extends Fragment { getActivity().setTitle(R.string.msl_availability_availability); + db = new GSKOrangeDB(getActivity()); db.open(); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/pharma_stores/StoreDetailFragment.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/pharma_stores/StoreDetailFragment.java index ff868a5..b46ccd9 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/pharma_stores/StoreDetailFragment.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/pharma_stores/StoreDetailFragment.java @@ -95,7 +95,7 @@ public class StoreDetailFragment extends Fragment implements View.OnClickListene String gallery_package = ""; Uri outputFileUri; - String str = CommonString.FILE_PATH, path = "", _pathforcheck = "", pathForCam1 = "", pathForCam2 = "", pathForCam3 = "", pathForCam4 = ""; + String str = CommonString.getImagesFolder(getContext()), path = "", _pathforcheck = "", pathForCam1 = "", pathForCam2 = "", pathForCam3 = "", pathForCam4 = ""; int child_position = -1; int group_position = -1; @@ -253,40 +253,35 @@ public class StoreDetailFragment extends Fragment implements View.OnClickListene public void onClick(View v) { int id = v.getId(); - switch (id) { + if (id == R.id.img_camera1) { + _pathforcheck = "Pharma_MSL_Top_Image_" + store_id + "_" + visit_date.replace("/", "") + "_" + + CommonFunctions.getCurrentTimeWithLanguage(getActivity()).replace(":", "") + ".jpg"; + path = str + _pathforcheck; - case R.id.img_camera1: - _pathforcheck = "Pharma_MSL_Top_Image_" + store_id + "_" + visit_date.replace("/", "") + "_" + - CommonFunctions.getCurrentTimeWithLanguage(getActivity()).replace(":", "") + ".jpg"; - path = str + _pathforcheck; + startCameraActivity(1); - startCameraActivity(1); - break; + } else if (id == R.id.img_camera2) { + _pathforcheck = "Pharma_MSL_Top_Image_" + store_id + "_" + visit_date.replace("/", "") + "_" + + CommonFunctions.getCurrentTimeWithLanguage(getActivity()).replace(":", "") + ".jpg"; + path = str + _pathforcheck; - case R.id.img_camera2: - _pathforcheck = "Pharma_MSL_Top_Image_" + store_id + "_" + visit_date.replace("/", "") + "_" + - CommonFunctions.getCurrentTimeWithLanguage(getActivity()).replace(":", "") + ".jpg"; - path = str + _pathforcheck; + startCameraActivity(2); - startCameraActivity(2); - break; + } else if (id == R.id.img_camera3) { + _pathforcheck = "Pharma_MSL_Top_Image_" + store_id + "_" + visit_date.replace("/", "") + "_" + + CommonFunctions.getCurrentTimeWithLanguage(getActivity()).replace(":", "") + ".jpg"; + path = str + _pathforcheck; - case R.id.img_camera3: - _pathforcheck = "Pharma_MSL_Top_Image_" + store_id + "_" + visit_date.replace("/", "") + "_" + - CommonFunctions.getCurrentTimeWithLanguage(getActivity()).replace(":", "") + ".jpg"; - path = str + _pathforcheck; + startCameraActivity(3); - startCameraActivity(3); - break; + } else if (id == R.id.img_camera4) { + _pathforcheck = "Pharma_MSL_Top_Image_" + store_id + "_" + visit_date.replace("/", "") + "_" + + CommonFunctions.getCurrentTimeWithLanguage(getActivity()).replace(":", "") + ".jpg"; + path = str + _pathforcheck; - case R.id.img_camera4: - _pathforcheck = "Pharma_MSL_Top_Image_" + store_id + "_" + visit_date.replace("/", "") + "_" + - CommonFunctions.getCurrentTimeWithLanguage(getActivity()).replace(":", "") + ".jpg"; - path = str + _pathforcheck; - - startCameraActivity(4); - break; + startCameraActivity(4); } + } /** @@ -688,7 +683,6 @@ public class StoreDetailFragment extends Fragment implements View.OnClickListene private void startCameraActivity(int pos) { try { - Log.i("Stock & Facing ", "startCameraActivity()"); File file = new File(path); outputFileUri = FileProvider.getUriForFile(getActivity(), "cpm.com.gskmtorange.fileprovider", file); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/retrofit/PostApiForFile.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/retrofit/PostApiForFile.java index f288e55..b1313e7 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/retrofit/PostApiForFile.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/retrofit/PostApiForFile.java @@ -7,10 +7,6 @@ import retrofit.Call; import retrofit.http.Body; import retrofit.http.POST; -/** - * Created by jeevanp on 05-10-2017. - */ - public interface PostApiForFile { @POST("Uploadimages") Call getUploadImage(@Body RequestBody reqesBody); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/storeinmap/StoreRouteActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/storeinmap/StoreRouteActivity.java index c4f980f..db33021 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/storeinmap/StoreRouteActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/storeinmap/StoreRouteActivity.java @@ -6,7 +6,6 @@ import android.content.pm.PackageManager; import android.graphics.Bitmap; import android.graphics.Color; import android.location.Location; -import android.net.Uri; import android.os.AsyncTask; import android.os.Bundle; import android.util.Log; @@ -24,11 +23,10 @@ import androidx.fragment.app.FragmentActivity; import com.google.android.gms.appindexing.Action; import com.google.android.gms.appindexing.AppIndex; import com.google.android.gms.appindexing.Thing; -import com.google.android.gms.common.ConnectionResult; -import com.google.android.gms.common.GooglePlayServicesUtil; -import com.google.android.gms.common.api.GoogleApiClient; -import com.google.android.gms.location.LocationListener; +import com.google.android.gms.location.FusedLocationProviderClient; +import com.google.android.gms.location.LocationCallback; import com.google.android.gms.location.LocationRequest; +import com.google.android.gms.location.LocationResult; import com.google.android.gms.location.LocationServices; import com.google.android.gms.maps.CameraUpdateFactory; import com.google.android.gms.maps.GoogleMap; @@ -40,9 +38,7 @@ import com.google.android.gms.maps.model.LatLngBounds; import com.google.android.gms.maps.model.MarkerOptions; import com.google.android.gms.maps.model.PolylineOptions; import com.google.android.material.floatingactionbutton.FloatingActionButton; - import org.json.JSONObject; - import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; @@ -57,122 +53,136 @@ import cpm.com.gskmtorange.GetterSetter.StoreBean; import cpm.com.gskmtorange.R; import cpm.com.gskmtorange.constant.CommonString; -public class StoreRouteActivity extends FragmentActivity implements OnMapReadyCallback, GoogleApiClient.ConnectionCallbacks, GoogleApiClient.OnConnectionFailedListener, LocationListener { +public class StoreRouteActivity extends FragmentActivity implements OnMapReadyCallback { + private Context context; private GoogleMap mMap; - StoreBean store; - LatLng origin, destination; - private final static int PLAY_SERVICES_RESOLUTION_REQUEST = 1000; - private GoogleApiClient mGoogleApiClient; - private LocationRequest mLocationRequest; - private static int UPDATE_INTERVAL = 500; // 5 sec - private static int FATEST_INTERVAL = 100; // 1 sec - private static int DISPLACEMENT = 5; // 10 meters - private Location mLastLocation; - double latitude = 0.0; - double longitude = 0.0; - Boolean markerflag = true; + private StoreBean store; + private LatLng origin, destination; + + private FusedLocationProviderClient fusedLocationClient; + private LocationRequest locationRequest; + private LocationCallback locationCallback; + + private static final int LOCATION_PERMISSION_REQUEST = 1001; + FloatingActionButton fab_cancel; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_store_route); - fab_cancel = (FloatingActionButton) findViewById(R.id.fab_cancel); context = this; - fab_cancel.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - finish(); - overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out); - } + + fab_cancel = findViewById(R.id.fab_cancel); + fab_cancel.setOnClickListener(v -> { + finish(); + overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out); }); store = (StoreBean) getIntent().getSerializableExtra(CommonString.KEY_STORE_LIST); - /*store.setLATITUDE("28.5420901"); - store.setLONGITUDE("77.2430997");*/ - /*store.setLATITUDE("28.544055"); - store.setLONGITUDE("77.264060");*/ - // Obtain the SupportMapFragment and get notified when the map is ready to be used. + fusedLocationClient = LocationServices.getFusedLocationProviderClient(this); + + locationRequest = LocationRequest.create() + .setInterval(2000) // 2 sec + .setFastestInterval(1000) // 1 sec + .setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY); + + locationCallback = new LocationCallback() { + @Override + public void onLocationResult(@NonNull LocationResult locationResult) { + if (locationResult.getLastLocation() != null) { + Location loc = locationResult.getLastLocation(); + updateMapWithCurrentLocation(loc); + } + } + }; + SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager() .findFragmentById(R.id.map); - mapFragment.getMapAsync(this); - - if (checkPlayServices()) { - - // Building the GoogleApi client - buildGoogleApiClient(); - - createLocationRequest(); + if (mapFragment != null) { + mapFragment.getMapAsync(this); } } - private boolean checkPlayServices() { - int resultCode = GooglePlayServicesUtil - .isGooglePlayServicesAvailable(this); - if (resultCode != ConnectionResult.SUCCESS) { - if (GooglePlayServicesUtil.isUserRecoverableError(resultCode)) { - GooglePlayServicesUtil.getErrorDialog(resultCode, this, - PLAY_SERVICES_RESOLUTION_REQUEST).show(); - } else { - Toast.makeText(context, getResources().getString(R.string.notsuppoted) - , Toast.LENGTH_LONG) - .show(); - finish(); - } + @Override + public void onMapReady(GoogleMap googleMap) { + mMap = googleMap; + + // Enable zoom controls for user + mMap.getUiSettings().setZoomControlsEnabled(true); + + // Request permissions + if (checkLocationPermission()) { + startLocationUpdates(); + fusedLocationClient.getLastLocation() + .addOnSuccessListener(this, location -> { + if (location != null) { + updateMapWithCurrentLocation(location); // show instantly with last known location + } else { + Toast.makeText(this, "Waiting for current location...", Toast.LENGTH_SHORT).show(); + } + }); + } + /* if (store != null) { + LatLng storeLoc = new LatLng(Double.parseDouble(store.getLATITUDE()), Double.parseDouble(store.getLONGITUDE())); + mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(storeLoc, 15)); + }*/ + } + + private boolean checkLocationPermission() { + if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) + != PackageManager.PERMISSION_GRANTED) { + ActivityCompat.requestPermissions( + this, + new String[]{Manifest.permission.ACCESS_FINE_LOCATION}, + LOCATION_PERMISSION_REQUEST + ); return false; } return true; } - protected synchronized void buildGoogleApiClient() { - mGoogleApiClient = new GoogleApiClient.Builder(this) - .addConnectionCallbacks(this) - .addOnConnectionFailedListener(this) - .addApi(LocationServices.API).build(); - } - - - protected void createLocationRequest() { - mLocationRequest = new LocationRequest(); - mLocationRequest.setInterval(UPDATE_INTERVAL); - mLocationRequest.setFastestInterval(FATEST_INTERVAL); - mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY); - mLocationRequest.setSmallestDisplacement(DISPLACEMENT); - } - - protected void startLocationUpdates() { - - - if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED - || ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED) { - - LocationServices.FusedLocationApi.requestLocationUpdates(mGoogleApiClient, mLocationRequest, this); - + private void startLocationUpdates() { + if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED) { + fusedLocationClient.requestLocationUpdates(locationRequest, locationCallback, null); } - } - /** - * Manipulates the map once available. - * This callback is triggered when the map is ready to be used. - * This is where we can add markers or lines, add listeners or move the camera. In this case, - * we just add a marker near Sydney, Australia. - * If Google Play services is not installed on the device, the user will be prompted to install - * it inside the SupportMapFragment. This method will only be triggered once the user has - * installed Google Play services and returned to the app. - */ - @Override - public void onMapReady(GoogleMap googleMap) { - mMap = googleMap; + private void updateMapWithCurrentLocation(Location location) { + double latitude = location.getLatitude(); + double longitude = location.getLongitude(); + + origin = new LatLng(latitude, longitude); + destination = new LatLng(Double.parseDouble(store.getLATITUDE()), Double.parseDouble(store.getLONGITUDE())); + + // Show markers + StoreBean currentStore = new StoreBean(); + currentStore.setLATITUDE(latitude + ""); + currentStore.setLONGITUDE(longitude + ""); + currentStore.setSTORE_NAME("Current Location"); + showMarker(currentStore, R.layout.current_marker_view); + + showMarker(store, R.layout.marker_view); + + // Move camera to fit both points + LatLngBounds.Builder builder = new LatLngBounds.Builder(); + builder.include(origin); + builder.include(destination); + mMap.animateCamera(CameraUpdateFactory.newLatLngBounds(builder.build(), 100)); + + // Fetch and draw route + String url = getUrl(origin, destination); + new FetchUrl().execute(url); + + // Stop updates once we get location + fusedLocationClient.removeLocationUpdates(locationCallback); } - public void showMarker(double lat, double lon) { - // Add a marker and move the camera - LinearLayout tv = (LinearLayout) this.getLayoutInflater().inflate(R.layout.marker_view, null, false); - - TextView desc = (TextView) tv.findViewById(R.id.tv_desc); + public void showMarker(StoreBean store, int layout_resource) { + LinearLayout tv = (LinearLayout) this.getLayoutInflater().inflate(layout_resource, null, false); + TextView desc = tv.findViewById(R.id.tv_desc); desc.setText(store.getSTORE_NAME()); tv.measure(View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED), @@ -180,302 +190,117 @@ public class StoreRouteActivity extends FragmentActivity implements OnMapReadyCa tv.layout(0, 0, tv.getMeasuredWidth(), tv.getMeasuredHeight()); tv.setDrawingCacheEnabled(true); - tv.buildDrawingCache(); Bitmap bm = tv.getDrawingCache(); + LatLng loc = new LatLng(Double.parseDouble(store.getLATITUDE()), Double.parseDouble(store.getLONGITUDE())); - mMap.addMarker(new MarkerOptions().position(loc).anchor(0.5f, 0.5f).icon(BitmapDescriptorFactory.fromBitmap(bm))); + mMap.addMarker(new MarkerOptions() + .position(loc) + .anchor(0.5f, 0.5f) + .icon(BitmapDescriptorFactory.fromBitmap(bm))); } private String getUrl(LatLng origin, LatLng dest) { - - // Origin of route String str_origin = "origin=" + origin.latitude + "," + origin.longitude; - - // Destination of route String str_dest = "destination=" + dest.latitude + "," + dest.longitude; - - - // Sensor enabled - String sensor = "sensor=false"; - - // Building the parameters to the web service - String parameters = str_origin + "&" + str_dest + "&" + sensor; - - // Output format + String parameters = str_origin + "&" + str_dest + "&sensor=false"; String output = "json"; - - // Building the url to the web service - String url = "https://maps.googleapis.com/maps/api/directions/" + output + "?" + parameters+"&key=AIzaSyCPo-giwVv5h8AzsbE1IDRsFsPHjVlCm5A"; - - - return url; + return "https://maps.googleapis.com/maps/api/directions/" + output + "?" + parameters + "&key=AIzaSyCPo-giwVv5h8AzsbE1IDRsFsPHjVlCm5A"; } - /** - * A method to download json data from url - */ private String downloadUrl(String strUrl) throws IOException { - String data = ""; + StringBuilder sb = new StringBuilder(); InputStream iStream = null; HttpURLConnection urlConnection = null; try { URL url = new URL(strUrl); - - // Creating an http connection to communicate with url urlConnection = (HttpURLConnection) url.openConnection(); - - // Connecting to url urlConnection.connect(); - - // Reading data from url iStream = urlConnection.getInputStream(); - BufferedReader br = new BufferedReader(new InputStreamReader(iStream)); - - StringBuffer sb = new StringBuffer(); - - String line = ""; + String line; while ((line = br.readLine()) != null) { sb.append(line); } - - data = sb.toString(); - Log.d("downloadUrl", data.toString()); br.close(); - } catch (Exception e) { - Log.d("Exception", e.toString()); + Log.e("Exception", e.toString()); } finally { - iStream.close(); - urlConnection.disconnect(); + if (iStream != null) iStream.close(); + if (urlConnection != null) urlConnection.disconnect(); } - return data; + return sb.toString(); } - @Override - public void onConnected(@Nullable Bundle bundle) { - if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { - // TODO: Consider calling - // ActivityCompat#requestPermissions - // here to request the missing permissions, and then overriding - // public void onRequestPermissionsResult(int requestCode, String[] permissions, - // int[] grantResults) - // to handle the case where the user grants the permission. See the documentation - // for ActivityCompat#requestPermissions for more details. - return; - } - mLastLocation = LocationServices.FusedLocationApi.getLastLocation(mGoogleApiClient); - - if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED - || ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED) { - if (mLastLocation != null) { - latitude = mLastLocation.getLatitude(); - longitude = mLastLocation.getLongitude(); - - mMap.setMyLocationEnabled(true); - - origin = new LatLng(latitude, longitude); - destination = new LatLng(Double.parseDouble(store.getLATITUDE()), Double.parseDouble(store.getLONGITUDE())); - - StoreBean store1 = new StoreBean(); - store1.setLATITUDE(latitude+""); - store1.setLONGITUDE(longitude+""); - store1.setSTORE_NAME("Current Location"); - showMarker(store1, R.layout.current_marker_view); - - showMarker(store, R.layout.marker_view); - - LatLngBounds.Builder builder = new LatLngBounds.Builder(); - builder.include(new LatLng(Double.parseDouble(store.getLATITUDE()), Double.parseDouble(store.getLONGITUDE()))); - builder.include(new LatLng(latitude, longitude)); - //mMap.moveCamera(CameraUpdateFactory.newLatLngBounds(builder.build(), 48)); - mMap.animateCamera(CameraUpdateFactory.newLatLngBounds(builder.build(), 48)); - - //destination = new LatLng(mapLat[1], mapLon[1]); - /*mMap.moveCamera(CameraUpdateFactory.newLatLng(origin)); - mMap.animateCamera(CameraUpdateFactory.zoomTo(17));*/ - - //new GetDirection().execute(); - // Getting URL to the Google Directions API - String url = getUrl(origin, destination); - Log.d("onMapClick", url.toString()); - FetchUrl FetchUrl = new FetchUrl(); - - // Start downloading json data from Google Directions API - FetchUrl.execute(url); - - } - } - - - // if (mRequestingLocationUpdates) { - startLocationUpdates(); - } - - @Override - public void onConnectionSuspended(int i) { - - } - - @Override - public void onConnectionFailed(@NonNull ConnectionResult connectionResult) { - - } - - @Override - public void onLocationChanged(Location location) { - - } - - public void showMarker(StoreBean store, int layout_resource){ - // Add a marker of latest location and move the camera - LinearLayout tv = (LinearLayout) this.getLayoutInflater().inflate(layout_resource, null, false); - - TextView desc = (TextView) tv.findViewById(R.id.tv_desc); - desc.setText(store.getSTORE_NAME()); - - tv.measure(View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED), - View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED)); - tv.layout(0, 0, tv.getMeasuredWidth(), tv.getMeasuredHeight()); - - tv.setDrawingCacheEnabled(true); - tv.buildDrawingCache(); - Bitmap bm = tv.getDrawingCache(); - LatLng loc = new LatLng(Double.parseDouble(store.getLATITUDE()), Double.parseDouble(store.getLONGITUDE())); - mMap.addMarker(new MarkerOptions().position(loc).anchor(0.5f, 0.5f).icon(BitmapDescriptorFactory.fromBitmap(bm))); - - - } - - protected void onStart() { - super.onStart();// ATTENTION: This was auto-generated to implement the App Indexing API. -// See https://g.co/AppIndexing/AndroidStudio for more information. - mGoogleApiClient.connect(); - if (mGoogleApiClient != null) { - mGoogleApiClient.connect(); - } - // ATTENTION: This was auto-generated to implement the App Indexing API. - // See https://g.co/AppIndexing/AndroidStudio for more information. - // AppIndex.AppIndexApi.start(mGoogleApiClient, getIndexApiAction()); - } - - /** - * ATTENTION: This was auto-generated to implement the App Indexing API. - * See https://g.co/AppIndexing/AndroidStudio for more information. - */ - public Action getIndexApiAction() { - Thing object = new Thing.Builder() - .setName("GeoTag Page") // TODO: Define a title for the content shown. - // TODO: Make sure this auto-generated URL is correct. - .setUrl(Uri.parse("http://[ENTER-YOUR-URL-HERE]")) - .build(); - return new Action.Builder(Action.TYPE_VIEW) - .setObject(object) - .setActionStatus(Action.STATUS_TYPE_COMPLETED) - .build(); - } - - // Fetches data from url passed + // AsyncTask to fetch directions private class FetchUrl extends AsyncTask { - @Override protected String doInBackground(String... url) { - - // For storing data from web service - String data = ""; - try { - // Fetching the data from web service - data = downloadUrl(url[0]); - Log.d("Background Task data", data.toString()); - } catch (Exception e) { - Log.d("Background Task", e.toString()); + return downloadUrl(url[0]); + } catch (IOException e) { + Log.e("Background Task", e.toString()); + return ""; } - return data; } @Override protected void onPostExecute(String result) { super.onPostExecute(result); - - ParserTask parserTask = new ParserTask(); - - // Invokes the thread for parsing the JSON data - parserTask.execute(result); - + Log.d("DirectionsResponse", result); + new ParserTask().execute(result); } } - /** - * A class to parse the Google Places in JSON format - */ private class ParserTask extends AsyncTask>>> { - - // Parsing the data in non-ui thread @Override protected List>> doInBackground(String... jsonData) { - - JSONObject jObject; - List>> routes = null; - try { - jObject = new JSONObject(jsonData[0]); - Log.d("ParserTask",jsonData[0].toString()); + JSONObject jObject = new JSONObject(jsonData[0]); DataParser parser = new DataParser(); - Log.d("ParserTask", parser.toString()); - - // Starts parsing data - routes = parser.parse(jObject); - Log.d("ParserTask","Executing routes"); - Log.d("ParserTask",routes.toString()); - + return parser.parse(jObject); } catch (Exception e) { - Log.d("ParserTask",e.toString()); - e.printStackTrace(); + Log.e("ParserTask", e.toString()); + return null; } - return routes; } - // Executes in UI thread, after the parsing process @Override protected void onPostExecute(List>> result) { + if (result == null) return; + ArrayList points; PolylineOptions lineOptions = null; - // Traversing through all the routes - for (int i = 0; i < result.size(); i++) { + for (List> path : result) { points = new ArrayList<>(); lineOptions = new PolylineOptions(); - // Fetching i-th route - List> path = result.get(i); - - // Fetching all the points in i-th route - for (int j = 0; j < path.size(); j++) { - HashMap point = path.get(j); - + for (HashMap point : path) { double lat = Double.parseDouble(point.get("lat")); double lng = Double.parseDouble(point.get("lng")); - LatLng position = new LatLng(lat, lng); - - points.add(position); + points.add(new LatLng(lat, lng)); } - // Adding all the points in the route to LineOptions lineOptions.addAll(points); lineOptions.width(12); lineOptions.color(Color.parseColor("#5ac614")); - - Log.d("onPostExecute","onPostExecute lineoptions decoded"); - } - // Drawing polyline in the Google Map for the i-th route - if(lineOptions != null) { + if (lineOptions != null) { mMap.addPolyline(lineOptions); } - else { - Log.d("onPostExecute","without Polylines drawn"); + } + } + + @Override + public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, + @NonNull int[] grantResults) { + super.onRequestPermissionsResult(requestCode, permissions, grantResults); + if (requestCode == LOCATION_PERMISSION_REQUEST) { + if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) { + startLocationUpdates(); + } else { + Toast.makeText(this, "Location permission required", Toast.LENGTH_SHORT).show(); } } } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/PreviousDataUploadActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/PreviousDataUploadActivity.java index a284b29..6843dfc 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/PreviousDataUploadActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/PreviousDataUploadActivity.java @@ -22,7 +22,6 @@ import androidx.appcompat.app.AppCompatActivity; import org.ksoap2.SoapEnvelope; import org.ksoap2.serialization.SoapObject; import org.ksoap2.serialization.SoapSerializationEnvelope; -import org.ksoap2.transport.HttpTransportSE; import org.xml.sax.InputSource; import org.xml.sax.XMLReader; import org.xmlpull.v1.XmlPullParserException; @@ -48,6 +47,7 @@ import cpm.com.gskmtorange.GetterSetter.StoreBean; import cpm.com.gskmtorange.R; import cpm.com.gskmtorange.constant.CommonFunctions; import cpm.com.gskmtorange.constant.CommonString; +import cpm.com.gskmtorange.utils.OkHttpTransportSE; import cpm.com.gskmtorange.xmlGetterSetter.AuditDataGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.CompetitonPromoGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.CounterfeitProductGetterSetter; @@ -118,7 +118,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { db = new GSKOrangeDB(this); db.open(); context = this; - Path = CommonString.FILE_PATH; + Path = CommonString.getImagesFolder(context); CommonFunctions.updateLangResources(context, preferences.getString(CommonString.KEY_LANGUAGE, "")); //start upload new UploadTask(this).execute(); @@ -168,7 +168,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - HttpTransportSE androidHttpTransport = new HttpTransportSE(CommonString.URL); + OkHttpTransportSE androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UPLOAD_IMAGE, envelope); Object result = envelope.getResponse(); @@ -267,7 +267,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - HttpTransportSE androidHttpTransport = new HttpTransportSE(CommonString.URL); + OkHttpTransportSE androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -321,7 +321,6 @@ public class PreviousDataUploadActivity extends AppCompatActivity { if (sub_reason_id != null && sub_reason_id.equals("")) { sub_reason_id = "0"; } - String onXML = "[DATA]" + "[USER_DATA]" + "[STORE_CD]" + coverageList.get(i).getStoreId() + "[/STORE_CD]" @@ -350,7 +349,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - HttpTransportSE androidHttpTransport = new HttpTransportSE(CommonString.URL); + OkHttpTransportSE androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + coverage_service, envelope); result = envelope.getResponse(); @@ -413,7 +412,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -475,7 +474,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -522,7 +521,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -567,7 +566,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -632,7 +631,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); } @@ -640,7 +639,6 @@ public class PreviousDataUploadActivity extends AppCompatActivity { data.name = getString(R.string.availability_data_uploading); publishProgress(data); - String msl_availabilityStockEntryXml = ""; onXML = ""; db.open(); @@ -690,7 +688,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -744,7 +742,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -822,7 +820,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -877,7 +875,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -977,7 +975,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1107,7 +1105,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1158,7 +1156,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1256,7 +1254,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1308,7 +1306,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1355,7 +1353,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1398,7 +1396,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1447,7 +1445,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1496,7 +1494,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1567,7 +1565,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1640,7 +1638,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1706,7 +1704,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1757,7 +1755,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1800,7 +1798,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1823,7 +1821,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { for (int i1 = 0; i1 < additionalVisibilityList.size(); i1++) { if (additionalVisibilityList.get(i1).getImage() != null && !additionalVisibilityList.get(i1).getImage().equals("")) { - if (new File(CommonString.FILE_PATH + additionalVisibilityList.get(i1).getImage()).exists()) { + if (new File(CommonString.getImagesFolder(context) + additionalVisibilityList.get(i1).getImage()).exists()) { try { result = UploadImage(additionalVisibilityList.get(i1).getImage(), "AdditionalVisibilityImages"); @@ -1843,7 +1841,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { } if (additionalVisibilityList.get(i1).getImage2() != null && !additionalVisibilityList.get(i1).getImage2().equals("")) { - if (new File(CommonString.FILE_PATH + additionalVisibilityList.get(i1).getImage2()).exists()) { + if (new File(CommonString.getImagesFolder(context) + additionalVisibilityList.get(i1).getImage2()).exists()) { try { result = UploadImage(additionalVisibilityList.get(i1).getImage2(), "AdditionalVisibilityImages"); @@ -1864,7 +1862,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { if (additionalVisibilityList.get(i1).getImage3() != null && !additionalVisibilityList.get(i1).getImage3().equals("")) { - if (new File(CommonString.FILE_PATH + additionalVisibilityList.get(i1).getImage3()).exists()) { + if (new File(CommonString.getImagesFolder(context) + additionalVisibilityList.get(i1).getImage3()).exists()) { try { result = UploadImage(additionalVisibilityList.get(i1).getImage3(), "AdditionalVisibilityImages"); @@ -1902,7 +1900,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { for (int i1 = 0; i1 < listdat.size(); i1++) { if (listdat.get(i1).getSubCategoryCamera1() != null && !listdat.get(i1).getSubCategoryCamera1().equals("")) { - if (new File(CommonString.FILE_PATH + listdat.get(i1).getSubCategoryCamera1()).exists()) { + if (new File(CommonString.getImagesFolder(context) + listdat.get(i1).getSubCategoryCamera1()).exists()) { try { result = UploadImage(listdat.get(i1).getSubCategoryCamera1(), "CategoryImages"); @@ -1922,7 +1920,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { } if (listdat.get(i1).getSubCategoryCamera2() != null && !listdat.get(i1).getSubCategoryCamera2().equals("")) { - if (new File(CommonString.FILE_PATH + listdat.get(i1).getSubCategoryCamera2()).exists()) { + if (new File(CommonString.getImagesFolder(context) + listdat.get(i1).getSubCategoryCamera2()).exists()) { try { result = UploadImage(listdat.get(i1).getSubCategoryCamera2(), "CategoryImages"); @@ -1954,7 +1952,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { for (int i1 = 0; i1 < adddata.size(); i1++) { if (adddata.get(i1).getCategoryImage1() != null && !adddata.get(i1).getCategoryImage1().equals("")) { - if (new File(CommonString.FILE_PATH + adddata.get(i1).getCategoryImage1()).exists()) { + if (new File(CommonString.getImagesFolder(context) + adddata.get(i1).getCategoryImage1()).exists()) { try { result = UploadImage(adddata.get(i1).getCategoryImage1(), "CategoryImages"); @@ -1974,7 +1972,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { } if (adddata.get(i1).getCategoryImage2() != null && !adddata.get(i1).getCategoryImage2().equals("")) { - if (new File(CommonString.FILE_PATH + adddata.get(i1).getCategoryImage2()).exists()) { + if (new File(CommonString.getImagesFolder(context) + adddata.get(i1).getCategoryImage2()).exists()) { try { result = UploadImage(adddata.get(i1).getCategoryImage2(), "CategoryImages"); @@ -1994,7 +1992,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { } if (adddata.get(i1).getCategoryImage3() != null && !adddata.get(i1).getCategoryImage3().equals("")) { - if (new File(CommonString.FILE_PATH + adddata.get(i1).getCategoryImage3()).exists()) { + if (new File(CommonString.getImagesFolder(context) + adddata.get(i1).getCategoryImage3()).exists()) { try { result = UploadImage(adddata.get(i1).getCategoryImage3(), "CategoryImages"); @@ -2013,7 +2011,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { } } if (adddata.get(i1).getCategoryImage4() != null && !adddata.get(i1).getCategoryImage4().equals("")) { - if (new File(CommonString.FILE_PATH + adddata.get(i1).getCategoryImage4()).exists()) { + if (new File(CommonString.getImagesFolder(context) + adddata.get(i1).getCategoryImage4()).exists()) { try { result = UploadImage(adddata.get(i1).getCategoryImage4(), "CategoryImages"); @@ -2042,7 +2040,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { for (int i1 = 0; i1 < adddata.size(); i1++) { if (adddata.get(i1).getCategoryImage1() != null && !adddata.get(i1).getCategoryImage1().equals("")) { - if (new File(CommonString.FILE_PATH + adddata.get(i1).getCategoryImage1()).exists()) { + if (new File(CommonString.getImagesFolder(context) + adddata.get(i1).getCategoryImage1()).exists()) { try { result = UploadImage(adddata.get(i1).getCategoryImage1(), "CategoryImages"); @@ -2062,7 +2060,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { } if (adddata.get(i1).getCategoryImage2() != null && !adddata.get(i1).getCategoryImage2().equals("")) { - if (new File(CommonString.FILE_PATH + adddata.get(i1).getCategoryImage2()).exists()) { + if (new File(CommonString.getImagesFolder(context) + adddata.get(i1).getCategoryImage2()).exists()) { try { result = UploadImage(adddata.get(i1).getCategoryImage2(), "CategoryImages"); @@ -2082,7 +2080,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { } if (adddata.get(i1).getCategoryImage3() != null && !adddata.get(i1).getCategoryImage3().equals("")) { - if (new File(CommonString.FILE_PATH + adddata.get(i1).getCategoryImage3()).exists()) { + if (new File(CommonString.getImagesFolder(context) + adddata.get(i1).getCategoryImage3()).exists()) { try { result = UploadImage(adddata.get(i1).getCategoryImage3(), "CategoryImages"); @@ -2101,7 +2099,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { } } if (adddata.get(i1).getCategoryImage4() != null && !adddata.get(i1).getCategoryImage4().equals("")) { - if (new File(CommonString.FILE_PATH + adddata.get(i1).getCategoryImage4()).exists()) { + if (new File(CommonString.getImagesFolder(context) + adddata.get(i1).getCategoryImage4()).exists()) { try { result = UploadImage(adddata.get(i1).getCategoryImage4(), "CategoryImages"); @@ -2130,7 +2128,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { for (int i1 = 0; i1 < coverageList.size(); i1++) { if (coverageList.get(i1).getImage() != null && !coverageList.get(i1).getImage().equals("")) { - if (new File(CommonString.FILE_PATH + coverageList.get(i1).getImage()).exists()) { + if (new File(CommonString.getImagesFolder(context) + coverageList.get(i1).getImage()).exists()) { try { result = UploadImage(coverageList.get(i1).getImage(), "StoreImages"); @@ -2159,7 +2157,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { for (int i1 = 0; i1 < promotionSkuList.size(); i1++) { if (promotionSkuList.get(i1).getImage_promotion() != null && !promotionSkuList.get(i1).getImage_promotion().equals("")) { - if (new File(CommonString.FILE_PATH + promotionSkuList.get(i1).getImage_promotion()).exists()) { + if (new File(CommonString.getImagesFolder(context) + promotionSkuList.get(i1).getImage_promotion()).exists()) { try { result = UploadImage(promotionSkuList.get(i1).getImage_promotion(), "PromotionImages"); @@ -2188,7 +2186,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { for (int i1 = 0; i1 < additionalPromotionList.size(); i1++) { if (additionalPromotionList.get(i1).getImage_promotion() != null && !additionalPromotionList.get(i1).getImage_promotion().equals("")) { - if (new File(CommonString.FILE_PATH + additionalPromotionList.get(i1).getImage_promotion()).exists()) { + if (new File(CommonString.getImagesFolder(context) + additionalPromotionList.get(i1).getImage_promotion()).exists()) { try { result = UploadImage(additionalPromotionList.get(i1).getImage_promotion(), "AdditionalPromotionImages"); @@ -2217,7 +2215,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { for (int i1 = 0; i1 < coverageList.size(); i1++) { if (coverageList.get(i1).getCheckOut_Image() != null && !coverageList.get(i1).getCheckOut_Image().equals("")) { - if (new File(CommonString.FILE_PATH + coverageList.get(i1).getCheckOut_Image()).exists()) { + if (new File(CommonString.getImagesFolder(context) + coverageList.get(i1).getCheckOut_Image()).exists()) { try { result = UploadImage(coverageList.get(i1).getCheckOut_Image(), "StoreImages"); @@ -2245,7 +2243,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { for (int m = 0; m < t2PGetterSetters.size(); m++) { if (t2PGetterSetters.get(m).getImage() != null && !t2PGetterSetters.get(m).getImage().equals("")) { - if (new File(CommonString.FILE_PATH + t2PGetterSetters.get(m).getImage()).exists()) { + if (new File(CommonString.getImagesFolder(context) + t2PGetterSetters.get(m).getImage()).exists()) { try { result = UploadImage(t2PGetterSetters.get(m).getImage(), "T2PImages"); @@ -2265,7 +2263,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { } if (t2PGetterSetters.get(m).getImage1() != null && !t2PGetterSetters.get(m).getImage1().equals("")) { - if (new File(CommonString.FILE_PATH + t2PGetterSetters.get(m).getImage1()).exists()) { + if (new File(CommonString.getImagesFolder(context) + t2PGetterSetters.get(m).getImage1()).exists()) { try { result = UploadImage(t2PGetterSetters.get(m).getImage1(), "T2PImages"); @@ -2285,7 +2283,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { } if (t2PGetterSetters.get(m).getImage2() != null && !t2PGetterSetters.get(m).getImage2().equals("")) { - if (new File(CommonString.FILE_PATH + t2PGetterSetters.get(m).getImage2()).exists()) { + if (new File(CommonString.getImagesFolder(context) + t2PGetterSetters.get(m).getImage2()).exists()) { try { result = UploadImage(t2PGetterSetters.get(m).getImage2(), "T2PImages"); @@ -2309,7 +2307,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { for (int m = 0; m < audit_data.size(); m++) { if (audit_data.get(m).getCAM_IMAGE() != null && !audit_data.get(m).getCAM_IMAGE().equals("")) { - if (new File(CommonString.FILE_PATH + audit_data.get(m).getCAM_IMAGE()).exists()) { + if (new File(CommonString.getImagesFolder(context) + audit_data.get(m).getCAM_IMAGE()).exists()) { try { result = UploadImage(audit_data.get(m).getCAM_IMAGE(), "AuditImages"); @@ -2352,7 +2350,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + status_service, envelope); result = envelope.getResponse(); @@ -2416,7 +2414,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { if (result.contains(CommonString.KEY_SUCCESS)) { //db.deleteAllTables(); - File f = new File(CommonString.FILE_PATH); + File f = new File(CommonString.getImagesFolder(context)); //if (f != null && f.listFiles().length > 0) { File file[] = f.listFiles(); UploadImageWithRetrofit.uploadedFiles = 0; diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/UploadActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/UploadActivity.java index b2b68b4..ceb530c 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/UploadActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/UploadActivity.java @@ -29,7 +29,6 @@ import com.squareup.okhttp.RequestBody; import org.ksoap2.SoapEnvelope; import org.ksoap2.serialization.SoapObject; import org.ksoap2.serialization.SoapSerializationEnvelope; -import org.ksoap2.transport.HttpTransportSE; import org.xml.sax.InputSource; import org.xml.sax.XMLReader; import org.xmlpull.v1.XmlPullParserException; @@ -63,6 +62,7 @@ import cpm.com.gskmtorange.constant.CommonFunctions; import cpm.com.gskmtorange.constant.CommonString; import cpm.com.gskmtorange.retrofit.PostApiForFile; import cpm.com.gskmtorange.retrofit.StringConverterFactory; +import cpm.com.gskmtorange.utils.OkHttpTransportSE; import cpm.com.gskmtorange.xmlGetterSetter.AuditDataGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.CompetitonPromoGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.CounterfeitProductGetterSetter; @@ -142,7 +142,7 @@ public class UploadActivity extends AppCompatActivity { db = new GSKOrangeDB(this); db.open(); - Path = CommonString.FILE_PATH; + Path = CommonString.getImagesFolder(context); //start upload new UploadTask(this).execute(); @@ -194,7 +194,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - HttpTransportSE androidHttpTransport = new HttpTransportSE(CommonString.URL); + OkHttpTransportSE androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION_UPLOAD_IMAGE, envelope); result = envelope.getResponse(); @@ -295,7 +295,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - HttpTransportSE androidHttpTransport = new HttpTransportSE(CommonString.URL); + OkHttpTransportSE androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -329,7 +329,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - HttpTransportSE androidHttpTransport = new HttpTransportSE(CommonString.URL); + OkHttpTransportSE androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -416,7 +416,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - HttpTransportSE androidHttpTransport = new HttpTransportSE(CommonString.URL); + OkHttpTransportSE androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + coverage_service, envelope); result = envelope.getResponse(); @@ -472,7 +472,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -528,7 +528,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -591,7 +591,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -641,7 +641,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -689,7 +689,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -751,7 +751,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -798,7 +798,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -843,7 +843,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -913,7 +913,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -926,7 +926,6 @@ public class UploadActivity extends AppCompatActivity { data.name = getString(R.string.availability_data_uploading); publishProgress(data); - //MSL_Availability_StockFacing String msl_availabilityStockEntryXml = ""; onXML = ""; @@ -977,7 +976,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1030,7 +1029,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1107,7 +1106,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1162,7 +1161,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1262,7 +1261,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1392,7 +1391,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1443,7 +1442,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1541,7 +1540,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1593,7 +1592,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1639,7 +1638,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1682,7 +1681,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1731,7 +1730,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1780,7 +1779,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1851,7 +1850,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1925,7 +1924,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -1991,7 +1990,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -2039,7 +2038,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -2083,7 +2082,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope); result = envelope.getResponse(); @@ -2120,7 +2119,7 @@ public class UploadActivity extends AppCompatActivity { envelope.dotNet = true; envelope.setOutputSoapObject(request); - androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport = new OkHttpTransportSE(CommonString.URL); androidHttpTransport.call(CommonString.SOAP_ACTION + status_service, envelope); result = envelope.getResponse(); @@ -2164,7 +2163,7 @@ public class UploadActivity extends AppCompatActivity { super.onPostExecute(result); dialog.dismiss(); if (result.contains(CommonString.KEY_SUCCESS)) { - File f = new File(CommonString.FILE_PATH); + File f = new File(CommonString.getImagesFolder(context)); //if (f != null && f.listFiles().length > 0) { File file[] = f.listFiles(); UploadImageWithRetrofit.uploadedFiles = 0; diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/UploadImageWithRetrofit.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/UploadImageWithRetrofit.java index 4c35b40..ff22402 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/UploadImageWithRetrofit.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/UploadImageWithRetrofit.java @@ -12,16 +12,11 @@ import android.graphics.Matrix; import android.graphics.RectF; import android.os.AsyncTask; import android.util.Log; - -//import com.crashlytics.android.Crashlytics; import com.google.gson.JsonSyntaxException; import com.squareup.okhttp.MediaType; import com.squareup.okhttp.MultipartBuilder; import com.squareup.okhttp.OkHttpClient; -import com.squareup.okhttp.Protocol; import com.squareup.okhttp.RequestBody; - -import org.json.JSONObject; import org.ksoap2.SoapEnvelope; import org.ksoap2.serialization.SoapObject; import org.ksoap2.serialization.SoapSerializationEnvelope; @@ -52,9 +47,6 @@ import cpm.com.gskmtorange.xmlGetterSetter.JourneyPlanGetterSetter; import retrofit.GsonConverterFactory; import retrofit.Retrofit; -/** - * Created by yadavendras on 4/5/2018. - */ public class UploadImageWithRetrofit { RequestBody body1; @@ -90,7 +82,7 @@ public class UploadImageWithRetrofit { status = 0; String filename = null, foldername = null; int totalfiles = 0; - File f = new File(CommonString.FILE_PATH); + File f = new File(CommonString.getImagesFolder(context)); File file[] = f.listFiles(); count = file.length; if (file.length > 0) { @@ -98,7 +90,7 @@ public class UploadImageWithRetrofit { totalfiles = f.listFiles().length; pd.setMessage(context.getString(R.string.uploaddata) + " - " + context.getString(R.string.image) + " (" + uploadedFiles + "/" + totalFiles + ")"); for (int i = 0; i < file.length; i++) { - if (new File(CommonString.FILE_PATH + file[i].getName()).exists()) { + if (new File(CommonString.getImagesFolder(context) + file[i].getName()).exists()) { if (file[i].getName().contains("SI_") || file[i].getName().contains("CHK_SI_") || file[i].getName().contains("NonWorking")) { foldername = "StoreImages"; } else if (file[i].getName().contains("GeoTag")) { @@ -133,19 +125,16 @@ public class UploadImageWithRetrofit { } break; } - - File originalFile = new File(CommonString.FILE_PATH + filename); + File originalFile = new File(CommonString.getImagesFolder(context) + filename); File finalFile = saveBitmapToFileSmaller(originalFile); if (finalFile == null) { finalFile = originalFile; } OkHttpClient okHttpClient = new OkHttpClient(); - // okHttpClient.setProtocols(Arrays.asList(Protocol.HTTP_1_1)); okHttpClient.setConnectTimeout(20, TimeUnit.SECONDS); okHttpClient.setWriteTimeout(20, TimeUnit.SECONDS); okHttpClient.setReadTimeout(20, TimeUnit.SECONDS); - // MediaType mediaType = MediaType.parse("text/plain"); RequestBody photo = RequestBody.create(MediaType.parse("application/octet-stream"), finalFile); body1 = new MultipartBuilder() @@ -153,12 +142,9 @@ public class UploadImageWithRetrofit { .addFormDataPart("file", finalFile.getName(), photo) .addFormDataPart("FolderName", foldername) .build(); - // Log.e("imagedata", String.valueOf(body1)); adapter = new Retrofit.Builder() .baseUrl(CommonString.URL + "/") - // .client(okHttpClient) - // .addConverterFactory(GsonConverterFactory.create()) .addConverterFactory(new StringConverterFactory()) .build(); @@ -168,7 +154,6 @@ public class UploadImageWithRetrofit { call.enqueue(new retrofit.Callback() { @Override public void onResponse(retrofit.Response response) { - Log.d("responsedata", String.valueOf(response)); if (response.isSuccess() && response.body().contains("Success")) { finalFile1.delete(); status = 1; @@ -186,14 +171,13 @@ public class UploadImageWithRetrofit { UploadImageRecursiveNew(context); } } - @Override public void onFailure(Throwable t) { if (t instanceof IOException || t instanceof SocketTimeoutException || t instanceof SocketException) { status = -1; //uploadedFiles = 0; pd.dismiss(); - Log.e("Errormsg :",t.toString()); + // Log.e("Errormsg :",t.toString()); // AlertandMessages.showAlert((Activity) context, "Network Error in upload", false); if (!((Activity) context).isFinishing()) { showAlert((Activity) context, context.getString(R.string.NetworkError), false); @@ -201,17 +185,10 @@ public class UploadImageWithRetrofit { } } }); - - } else { if (totalFiles == uploadedFiles) { - //region Coverage upload status Data new StatusUpload().execute(); - //endregion - //pd.cancel(); - //showAlert((Activity) context, context.getString(R.string.data_uploaded_successfully),true); } - } } catch (JsonSyntaxException e) { e.printStackTrace(); @@ -224,7 +201,6 @@ public class UploadImageWithRetrofit { showAlert((Activity) context, CommonString.KEY_FAILURE, false); } } - } public void UploadDeliveryImageRecursive(final Context context, final ArrayList file_list, final int index) { @@ -238,7 +214,7 @@ public class UploadImageWithRetrofit { pd.setMessage(context.getString(R.string.uploaddata) + " - " + context.getString(R.string.image) + " (" + uploadedFiles + "/" + totalFiles + ")"); - File originalFile = new File(CommonString.FILE_PATH + filename); + File originalFile = new File(CommonString.getImagesFolder(context) + filename); File finalFile = saveBitmapToFileSmaller(originalFile); if (finalFile == null) { @@ -250,7 +226,7 @@ public class UploadImageWithRetrofit { okHttpClient.setWriteTimeout(20, TimeUnit.SECONDS); okHttpClient.setReadTimeout(20, TimeUnit.SECONDS); - com.squareup.okhttp.RequestBody photo = com.squareup.okhttp.RequestBody.create(com.squareup.okhttp.MediaType.parse("application/octet-stream"), finalFile); + RequestBody photo = RequestBody.create(MediaType.parse("application/octet-stream"), finalFile); body1 = new MultipartBuilder() .type(MultipartBuilder.FORM) .addFormDataPart("file", finalFile.getName(), photo) diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/utils/OkHttpTransportSE.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/utils/OkHttpTransportSE.java new file mode 100644 index 0000000..0efbd90 --- /dev/null +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/utils/OkHttpTransportSE.java @@ -0,0 +1,115 @@ +package cpm.com.gskmtorange.utils; + +import com.squareup.okhttp.ConnectionSpec; +import com.squareup.okhttp.MediaType; +import com.squareup.okhttp.OkHttpClient; +import com.squareup.okhttp.Request; +import com.squareup.okhttp.RequestBody; +import com.squareup.okhttp.Response; +import com.squareup.okhttp.TlsVersion; + +import org.ksoap2.HeaderProperty; +import org.ksoap2.SoapEnvelope; +import org.ksoap2.transport.ServiceConnection; +import org.ksoap2.transport.Transport; +import org.xmlpull.v1.XmlPullParserException; + +import java.io.File; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import java.util.concurrent.TimeUnit; + +public class OkHttpTransportSE extends Transport { + + private final String url; + private final OkHttpClient client; + + public OkHttpTransportSE(String url) { + this(url, 60000); // default 60s timeout + } + + public OkHttpTransportSE(String url, int timeout) { + super(url, timeout); + this.url = url; + + client = new OkHttpClient(); + + // Force TLS 1.2 + ConnectionSpec spec = new ConnectionSpec.Builder(ConnectionSpec.MODERN_TLS) + .tlsVersions(TlsVersion.TLS_1_2, + TlsVersion.TLS_1_1, + TlsVersion.TLS_1_0) + .build(); + + client.setConnectionSpecs(Collections.singletonList(spec)); + client.setConnectTimeout(timeout, TimeUnit.MILLISECONDS); + client.setReadTimeout(timeout, TimeUnit.MILLISECONDS); + } + + @Override + public List call(String soapAction, SoapEnvelope envelope, List headers) + throws IOException, XmlPullParserException { + return call(soapAction, envelope, headers, null); + } + + + @Override + public ServiceConnection getServiceConnection() throws IOException { + return null; // not used with OkHttp + } + + @Override + public List call(String soapAction, SoapEnvelope envelope, List headers, File outputFile) + throws IOException, XmlPullParserException { + + if (soapAction == null) { + soapAction = ""; + } + + byte[] requestData = this.createRequestData(envelope, "UTF-8"); + this.requestDump = this.debug ? new String(requestData) : null; + this.responseDump = null; + + // Build request + Request.Builder builder = new Request.Builder() + .url(url) + .addHeader("User-Agent", "ksoap2-android/2.6.0+"); + + if (envelope.version == SoapEnvelope.VER12) { + builder.addHeader("Content-Type", "application/soap+xml;charset=utf-8"); + } else { + builder.addHeader("Content-Type", "text/xml;charset=utf-8"); + builder.addHeader("SOAPAction", soapAction); // Match HttpTransportSE + } + + // Add custom headers if any + if (headers != null) { + for (Object h : headers) { + HeaderProperty hp = (HeaderProperty) h; + if (hp.getKey() != null && hp.getValue() != null) { + builder.addHeader(hp.getKey(), hp.getValue()); + } + } + } + + builder.post(RequestBody.create(MediaType.parse("text/xml; charset=utf-8"), requestData)); + + // Execute request + Response response = client.newCall(builder.build()).execute(); + + if (!response.isSuccessful()) { + throw new IOException("HTTP request failed, code: " + response.code()); + } + + // Collect response headers + List retHeaders = new ArrayList<>(); + for (String name : response.headers().names()) { + retHeaders.add(new HeaderProperty(name, response.header(name))); + } + // Parse SOAP response + parseResponse(envelope, response.body().byteStream()); + return retHeaders; + } +} diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/SubCategoryMasterGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/SubCategoryMasterGetterSetter.java index d0e912a..4f10313 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/SubCategoryMasterGetterSetter.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/SubCategoryMasterGetterSetter.java @@ -25,6 +25,15 @@ public class SubCategoryMasterGetterSetter { ArrayList SUB_CATEGORY_SEQUENCE_SA = new ArrayList<>(); + ArrayList PD_SUB_CATEGORY_CODE = new ArrayList<>(); + + public ArrayList getPD_SUB_CATEGORY_CODE() { + return PD_SUB_CATEGORY_CODE; + } + public void setPD_SUB_CATEGORY_CODE(String PD_SUB_CATEGORY_CODE ) { + this.PD_SUB_CATEGORY_CODE.add(PD_SUB_CATEGORY_CODE); + } + public String getTable_SUB_CATEGORY_MASTER() { return table_SUB_CATEGORY_MASTER; diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlHandlers/XMLHandlers.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlHandlers/XMLHandlers.java index 992af99..368c495 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlHandlers/XMLHandlers.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlHandlers/XMLHandlers.java @@ -353,7 +353,9 @@ public class XMLHandlers { if (xpp.getName().equals("SUB_CATEGORY_SEQUENCE_SA")) { category.setSUB_CATEGORY_SEQUENCE_SA(xpp.nextText()); } - + if (xpp.getName().equals("PD_SUB_CATEGORY_CODE")) { + category.setPD_SUB_CATEGORY_CODE(xpp.nextText()); + } } xpp.next(); } diff --git a/GSKMTOrange/src/main/res/layout/activity_pd_java_image.xml b/GSKMTOrange/src/main/res/layout/activity_pd_java_image.xml new file mode 100644 index 0000000..51353e5 --- /dev/null +++ b/GSKMTOrange/src/main/res/layout/activity_pd_java_image.xml @@ -0,0 +1,10 @@ + + + + \ No newline at end of file diff --git a/GSKMTOrange/src/main/res/layout/activity_pdimage.xml b/GSKMTOrange/src/main/res/layout/activity_pdimage.xml new file mode 100644 index 0000000..e48d92d --- /dev/null +++ b/GSKMTOrange/src/main/res/layout/activity_pdimage.xml @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/GSKMTOrange/src/main/res/layout/content_ir_picture.xml b/GSKMTOrange/src/main/res/layout/content_ir_picture.xml new file mode 100644 index 0000000..70efb2a --- /dev/null +++ b/GSKMTOrange/src/main/res/layout/content_ir_picture.xml @@ -0,0 +1,29 @@ + + + + + + + + + diff --git a/GSKMTOrange/src/main/res/layout/contentiradpterlayout.xml b/GSKMTOrange/src/main/res/layout/contentiradpterlayout.xml new file mode 100644 index 0000000..f5d5fbf --- /dev/null +++ b/GSKMTOrange/src/main/res/layout/contentiradpterlayout.xml @@ -0,0 +1,75 @@ + + + + + + + + + + + + +