From 242c49ae6e64d0221d573617ada4da913ca31b24 Mon Sep 17 00:00:00 2001 From: yadavendras Date: Fri, 17 May 2019 18:49:15 +0530 Subject: [PATCH] YSY commit --- .idea/misc.xml | 2 +- GSKMTOrange/build.gradle | 8 +- .../com/gskmtorange/Database/GSKOrangeDB.java | 304 +++++++++++++++++- .../cpm/com/gskmtorange/LoginActivity.java | 49 ++- .../cpm/com/gskmtorange/MainActivity.java | 15 +- .../gskmtorange/constant/CommonString.java | 28 ++ .../dailyentry/CheckoutActivity.java | 2 + .../dailyentry/SettingsActivity.java | 2 +- .../dailyentry/StoreListActivity.java | 4 +- .../dailyentry/StoreimageActivity.java | 2 +- .../download/DownloadActivity.java | 109 +++++-- .../MSL_Availability_StockFacingActivity.java | 54 ++++ .../gskmtorange/password/MPinActivity.java | 49 ++- .../pharma_stores/MSLFragment.java | 166 ++++++++-- .../pharma_stores/PharmaActivity.java | 20 +- .../pharma_stores/SOSFragment.java | 205 +++++++++++- .../pharma_stores/StoreDetailFragment.java | 139 +++++++- .../upload/PreviousDataUploadActivity.java | 18 +- .../gskmtorange/upload/UploadActivity.java | 21 +- .../BrandMasterGetterSetter.java | 9 + .../MappingPharmaMSLGetterSetter.java | 35 ++ .../PharmaMSLInsertedGetterSetter.java | 40 +++ .../PharmaSOSGetterSetter.java | 72 +++++ .../SkuMasterGetterSetter.java | 10 + .../SubCategoryMasterGetterSetter.java | 10 + .../xmlGetterSetter/TableBean.java | 10 + .../gskmtorange/xmlHandlers/XMLHandlers.java | 41 +++ .../res/layout/content_msl__availability.xml | 13 +- .../src/main/res/layout/fragment_so.xml | 3 +- .../src/main/res/layout/item_pharma_sos.xml | 14 +- .../main/res/menu/activity_main_drawer.xml | 2 +- GSKMTOrange/src/main/res/values/strings.xml | 1 + .../compile-file-map.properties | 2 +- 33 files changed, 1319 insertions(+), 140 deletions(-) create mode 100644 GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/MappingPharmaMSLGetterSetter.java create mode 100644 GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/PharmaMSLInsertedGetterSetter.java create mode 100644 GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/PharmaSOSGetterSetter.java diff --git a/.idea/misc.xml b/.idea/misc.xml index 6229e93..d1a5190 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -42,7 +42,7 @@ - + diff --git a/GSKMTOrange/build.gradle b/GSKMTOrange/build.gradle index bf5753b..1e7dd18 100644 --- a/GSKMTOrange/build.gradle +++ b/GSKMTOrange/build.gradle @@ -29,16 +29,16 @@ android { versionName "3.3"*/ //For Turkey - versionCode 21 - versionName "3.3" + /*versionCode 21 + versionName "3.3"*/ //For KSA /*versionCode 25 versionName "3.7"*/ //For SA - /*versionCode 25 - versionName "3.6"*/ + versionCode 26 + versionName "3.7" multiDexEnabled true diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java index dec5823..07bd2d7 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java @@ -52,6 +52,7 @@ import cpm.com.gskmtorange.xmlGetterSetter.MSL_AvailabilityGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MSL_AvailabilityStockFacingGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MappingCategoryImageAllowGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MappingDisplayChecklistGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.MappingPharmaMSLGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MappingPharmaQuestionGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MappingPlanogramCountrywiseGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MappingPlanogramStorewiseGetterSetter; @@ -66,6 +67,8 @@ import cpm.com.gskmtorange.xmlGetterSetter.NonWorkingReasonGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.NonWorkingSubReasonGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.POGGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.POGQuestionGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.PharmaMSLInsertedGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.PharmaSOSGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.PromoComplianceSkuwiseGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.Promo_Compliance_DataGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.RowColumnGetterSetter; @@ -88,7 +91,7 @@ import cpm.com.gskmtorange.xmlGetterSetter.TableBean; */ public class GSKOrangeDB extends SQLiteOpenHelper { - public static final String DATABASE_NAME = "GSK_ORANGE_DB53"; + public static final String DATABASE_NAME = "GSK_ORANGE_DB57"; public static final int DATABASE_VERSION = 15; TableBean tableBean; private SQLiteDatabase db; @@ -219,6 +222,9 @@ public class GSKOrangeDB extends SQLiteOpenHelper { db.execSQL(TableBean.getTable_MAPPING_PHARMA_QUESTION());//--Added 12.04.2019 db.execSQL(CommonString.CREATE_TABLE_INSERT_STORE_PROFILE_DATA);//--Added 25.04.2019 + db.execSQL(CommonString.CREATE_TABLE_INSERT_SOS_PHARMA_DATA);//--Added 29.04.2019 + db.execSQL(CommonString.CREATE_TABLE_INSERT_PHARMA_MSL_DATA);//--Added 30.04.2019 + db.execSQL(TableBean.getTable_MAPPING_PHARMA_MSL());//--Added 16.05.2019 } catch (SQLException e) { e.printStackTrace(); @@ -279,6 +285,9 @@ public class GSKOrangeDB extends SQLiteOpenHelper { db.delete(CommonString.TABLE_INSERT_COUNTERFEIT_PRODUCT_EXISTS, "STORE_ID" + "='" + storeid + "'", null); db.delete(CommonString.TABLE_INSERT_COUNTERFEIT_PRODUCT, "STORE_ID" + "='" + storeid + "'", null); db.delete(CommonString.TABLE_INSERT_STOCK, "Store_Id" + "='" + storeid + "'", null); + db.delete(CommonString.TABLE_INSERT_PHARMA_MSL_DATA, "Store_Id" + "='" + storeid + "'", null); + db.delete(CommonString.TABLE_INSERT_SOS_PHARMA_DATA, "Store_Id" + "='" + storeid + "'", null); + db.delete(CommonString.TABLE_INSERT_STORE_PROFILE_DATA, "Store_Id" + "='" + storeid + "'", null); } @@ -977,6 +986,7 @@ public class GSKOrangeDB extends SQLiteOpenHelper { values.put("SUB_CATEGORY", data.getSUB_CATEGORY().get(i)); values.put("CATEGORY_ID", data.getCATEGORY_ID().get(i)); values.put("SUB_CATEGORY_SEQUENCE", data.getSUB_CATEGORY_SEQUENCE().get(i)); + values.put("SUB_CATEGORY_SEQUENCE_SA", data.getSUB_CATEGORY_SEQUENCE_SA().get(i)); db.insert("SUB_CATEGORY_MASTER", null, values); } @@ -997,6 +1007,7 @@ public class GSKOrangeDB extends SQLiteOpenHelper { values.put("SUB_CATEGORY_ID", data.getSUB_CATEGORY_ID().get(i)); values.put("COMPANY_ID", data.getCOMPANY_ID().get(i)); values.put("BRAND_SEQUENCE", data.getBRAND_SEQUENCE().get(i)); + values.put("BRAND_SEQUENCE_SA", data.getBRAND_SEQUENCE_SA().get(i)); db.insert("BRAND_MASTER", null, values); } @@ -1018,6 +1029,7 @@ public class GSKOrangeDB extends SQLiteOpenHelper { values.put("MRP", data.getMRP().get(i)); values.put("SKU_SEQUENCE", data.getSKU_SEQUENCE().get(i)); values.put("PROMO_SKU", data.getPROMO_SKU().get(i)); + values.put("SKU_SEQUENCE_SA", data.getSKU_SEQUENCE_SA().get(i)); db.insert("SKU_MASTER", null, values); } @@ -2012,6 +2024,8 @@ public class GSKOrangeDB extends SQLiteOpenHelper { table = CommonString.KEY_JOURNEY_PLAN; } else if (flag_from.equals(CommonString.FROM_ADDITIONAL)) { table = CommonString.KEY_JOURNEY_PLAN_ADDITIONAL; + }else if (flag_from.equals(CommonString.FROM_PHARMA)) { + table = CommonString.KEY_JOURNEY_PLAN_PHARMA; } else { table = CommonString.KEY_ADHOC_JOURNEY_PLAN; } @@ -2040,7 +2054,9 @@ public class GSKOrangeDB extends SQLiteOpenHelper { table = CommonString.KEY_JOURNEY_PLAN; } else if (flag_from.equals(CommonString.FROM_ADDITIONAL)) { table = CommonString.KEY_JOURNEY_PLAN_ADDITIONAL; - } else{ + } else if (flag_from.equals(CommonString.FROM_PHARMA)) { + table = CommonString.KEY_JOURNEY_PLAN_PHARMA; + }else{ table = CommonString.KEY_ADHOC_JOURNEY_PLAN; } } else { @@ -5127,7 +5143,7 @@ public class GSKOrangeDB extends SQLiteOpenHelper { "inner join CATEGORY_MASTER CA " + "on SB.CATEGORY_ID=CA.CATEGORY_ID " + "where CA.CATEGORY_ID='" + category_id + "' AND M.STORE_ID = '" + store_id + "'" + - " order by SB.SUB_CATEGORY, BR.COMPANY_ID,BR.BRAND_SEQUENCE", null); + " order by SB.SUB_CATEGORY_SEQUENCE_SA, BR.BRAND_SEQUENCE_SA", null); //" order by SB.SUB_CATEGORY,BR.COMPANY_ID,BR.BRAND, BR.BRAND_SEQUENCE", null); } @@ -5210,7 +5226,8 @@ 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 M.MUST_HAVE DESC", null); + "' AND M.STORE_ID = '" + store_id + "' order by SK.SKU_SEQUENCE_SA DESC", null); + //"' AND M.STORE_ID = '" + store_id + "' order by M.MUST_HAVE DESC", null); } @@ -7959,7 +7976,7 @@ public class GSKOrangeDB extends SQLiteOpenHelper { ContentValues values = new ContentValues(); try { - db.beginTransaction(); + //db.beginTransaction(); for (int i = 0; i < hashMapListHeaderData.size(); i++) { for (int j = 0; j < hashMapListChildData.get(hashMapListHeaderData.get(i)).size(); j++) { @@ -7978,10 +7995,283 @@ public class GSKOrangeDB extends SQLiteOpenHelper { db.insert(CommonString.TABLE_INSERT_STORE_PROFILE_DATA, null, values); } } - db.setTransactionSuccessful(); - db.endTransaction(); + /*db.setTransactionSuccessful(); + db.endTransaction();*/ } catch (Exception ex) { Log.d("Exception ", " in Insert MSL_Availability_StockFacing " + ex.toString()); } } + + //Get Pharma Store detail for SOS Data + public ArrayList getStoreDetailPharmaForSOSData(String store_id, String questionId) { + ArrayList list = new ArrayList<>(); + Cursor dbcursor = null; + + try { + dbcursor = db.rawQuery("Select * from " + CommonString.TABLE_INSERT_STORE_PROFILE_DATA + + " where "+ CommonString.KEY_STORE_ID +"='" + store_id + "' AND " + CommonString.KEY_QUESTION_ID +"='"+ questionId +"' AND "+ + CommonString.KEY_PRESENT +"='1'", null); + + if (dbcursor != null) { + dbcursor.moveToFirst(); + while (!dbcursor.isAfterLast()) { + PharmaSOSGetterSetter cd = new PharmaSOSGetterSetter(); + + cd.setQUESTION_ID(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_QUESTION_ID))); + cd.setBRAND(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_BRAND))); + cd.setBRAND_ID(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_BRAND_ID))); + cd.setSUB_CATEGORY_ID(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_SUB_CATEGORY_ID))); + cd.setSUB_CATEGORY(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_SUB_CATEGORY))); + + list.add(cd); + dbcursor.moveToNext(); + } + dbcursor.close(); + return list; + } + } catch (Exception e) { + Log.d("Exception ", "get SOS Question Data!" + e.toString()); + return list; + } + return list; + } + + //Get Pharma Store detail Question Inserted Data + public ArrayList getStoreDetailPharmaQuestionInsertedData(String store_id) { + ArrayList list = new ArrayList<>(); + Cursor dbcursor = null; + + try { + dbcursor = db.rawQuery("Select DISTINCT QUESTION_ID, QUESTION from " + CommonString.TABLE_INSERT_STORE_PROFILE_DATA + + " where "+ CommonString.KEY_STORE_ID +"='" + store_id + "'", null); + + if (dbcursor != null) { + dbcursor.moveToFirst(); + while (!dbcursor.isAfterLast()) { + MappingPharmaQuestionGetterSetter cd = new MappingPharmaQuestionGetterSetter(); + + cd.setQUESTION_ID(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_QUESTION_ID))); + cd.setQUESTION(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_QUESTION))); + + list.add(cd); + dbcursor.moveToNext(); + } + dbcursor.close(); + return list; + } + } catch (Exception e) { + Log.d("Exception ", "get MSL_Availability server upload Data!" + e.toString()); + return list; + } + return list; + } + + //Get Pharma Store detail Answer Inserted Data + public ArrayList getStoreDetailPharmaAnswerInsertedData(String store_id, String questionId) { + ArrayList list = new ArrayList<>(); + Cursor dbcursor = null; + + try { + dbcursor = db.rawQuery("Select * from " + CommonString.TABLE_INSERT_STORE_PROFILE_DATA + + " where "+ CommonString.KEY_STORE_ID +"='" + store_id + "' AND " + CommonString.KEY_QUESTION_ID +"='"+ questionId +"'", null); + + if (dbcursor != null) { + dbcursor.moveToFirst(); + while (!dbcursor.isAfterLast()) { + MappingPharmaQuestionGetterSetter cd = new MappingPharmaQuestionGetterSetter(); + + cd.setQUESTION_ID(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_QUESTION_ID))); + cd.setQUESTION(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_QUESTION))); + cd.setBRAND(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_BRAND))); + cd.setBRAND_ID(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_BRAND_ID))); + cd.setSUB_CATEGORY_ID(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_SUB_CATEGORY_ID))); + cd.setSUB_CATEGORY(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_SUB_CATEGORY))); + cd.setImgPath(dbcursor.getString(dbcursor.getColumnIndexOrThrow(CommonString.KEY_IMAGE))); + cd.setIsChecked(dbcursor.getInt(dbcursor.getColumnIndexOrThrow(CommonString.KEY_PRESENT))); + + list.add(cd); + dbcursor.moveToNext(); + } + dbcursor.close(); + return list; + } + } catch (Exception e) { + Log.d("Exception ", "get MSL_Availability server upload Data!" + e.toString()); + return list; + } + return list; + } + + //Insert SOS Pharma stores + public void InsertSOSPharma( + String storeId, List sosListData) { + + db.delete(CommonString.TABLE_INSERT_SOS_PHARMA_DATA, CommonString.KEY_STORE_ID +"='" +storeId +"'", null); + + ContentValues values = new ContentValues(); + + try { + //db.beginTransaction(); + + for (int j = 0; j < sosListData.size(); j++) { + PharmaSOSGetterSetter data = sosListData.get(j); + + values.put(CommonString.KEY_STORE_ID, storeId); + values.put(CommonString.KEY_QUESTION_ID, data.getQUESTION_ID()); + values.put(CommonString.KEY_QUESTION, data.getQUESTION()); + values.put(CommonString.KEY_SUB_CATEGORY_ID, data.getSUB_CATEGORY_ID()); + values.put(CommonString.KEY_SUB_CATEGORY, data.getSUB_CATEGORY()); + values.put(CommonString.KEY_BRAND_ID, data.getBRAND_ID()); + values.put(CommonString.KEY_BRAND, data.getBRAND()); + values.put(CommonString.KEY_GSK_FACING, data.getGskFacing()); + values.put(CommonString.KEY_COMPETITION_FACING, data.getCompetitorFacing()); + + db.insert(CommonString.TABLE_INSERT_SOS_PHARMA_DATA, null, values); + } + + /*db.setTransactionSuccessful(); + db.endTransaction();*/ + } catch (Exception ex) { + Log.d("Exception ", " in Insert SOS Pharma " + ex.toString()); + } + } + + //Insert Pharma MSL + public void InsertPharmaMSL( + String storeId, List hashMapListHeaderData, + HashMap> hashMapListChildData) { + + db.delete(CommonString.TABLE_INSERT_PHARMA_MSL_DATA, CommonString.KEY_STORE_ID +"='" +storeId +"'", null); + + ContentValues values = new ContentValues(); + + try { + //db.beginTransaction(); + for (int i = 0; i < hashMapListHeaderData.size(); i++) { + + for (int j = 0; j < hashMapListChildData.get(hashMapListHeaderData.get(i)).size(); j++) { + PharmaMSLInsertedGetterSetter data = hashMapListChildData.get(hashMapListHeaderData.get(i)).get(j); + + values.put(CommonString.KEY_STORE_ID, storeId); + values.put(CommonString.KEY_BRAND_ID, data.getBrandId()); + values.put(CommonString.KEY_SKU, data.getSku()); + values.put(CommonString.KEY_SKU_ID, data.getSkuId()); + values.put(CommonString.KEY_PRESENT, data.getPresent()); + + db.insert(CommonString.TABLE_INSERT_PHARMA_MSL_DATA, null, values); + + } + } +// db.setTransactionSuccessful(); +// db.endTransaction(); + } catch (Exception ex) { + Log.d("Exception ", " in Insert Pharma MSL " + ex.toString()); + } + } + + //insert MAPPING_PHARMA_MSL + public void InsertMAPPING_PHARMA_MSL(MappingPharmaMSLGetterSetter data) { + db.delete("MAPPING_PHARMA_MSL", null, null); + + ContentValues values = new ContentValues(); + try { + for (int i = 0; i < data.getSKU_ID().size(); i++) { + + values.put("COUNTRY_ID", data.getCOUNTRY_ID().get(i)); + values.put("SKU_ID", data.getSKU_ID().get(i)); + + db.insert("MAPPING_PHARMA_MSL", null, values); + } + } catch (Exception ex) { + Log.d("Exception ", " in MAPPING_PHARMA_MSL " + ex.toString()); + } + } + + //Pharma MSL Header + public ArrayList getPharmaMSLHeaderData() { + + ArrayList list = new ArrayList<>(); + Cursor dbcursor = null; + + try { + + dbcursor = db.rawQuery("Select DISTINCT SB.SUB_CATEGORY_ID,SB.SUB_CATEGORY,BR.BRAND_ID,BR.BRAND,BR.COMPANY_ID " + + "from MAPPING_PHARMA_MSL 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 " + + "inner join SUB_CATEGORY_MASTER SB " + + "on BR.SUB_CATEGORY_ID=SB.SUB_CATEGORY_ID " + + "inner join CATEGORY_MASTER CA " + + "on SB.CATEGORY_ID=CA.CATEGORY_ID " + + "where BR.COMPANY_ID='" + 1 + "' " + + "order by SB.SUB_CATEGORY,BR.COMPANY_ID,BR.BRAND", null); + + if (dbcursor != null) { + dbcursor.moveToFirst(); + while (!dbcursor.isAfterLast()) { + MSL_AvailabilityStockFacingGetterSetter cd = new MSL_AvailabilityStockFacingGetterSetter(); + + cd.setSub_category_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SUB_CATEGORY_ID"))); + cd.setSub_category(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SUB_CATEGORY"))); + cd.setBrand_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("BRAND_ID"))); + cd.setBrand(dbcursor.getString(dbcursor.getColumnIndexOrThrow("BRAND"))); + cd.setCompany_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("COMPANY_ID"))); + + list.add(cd); + dbcursor.moveToNext(); + } + dbcursor.close(); + return list; + } + } catch (Exception e) { + Log.d("Exception ", "get MSL_AvailabilityHeader!" + e.toString()); + return list; + } + return list; + } + + //get Pharma MSL default data + public ArrayList getPharmaMSLSKUData(String brand_id) { + + ArrayList list = new ArrayList<>(); + Cursor dbcursor = null; + + try { + + dbcursor = db.rawQuery("Select DISTINCT SK.SKU_ID,SK.SKU " + + "from MAPPING_PHARMA_MSL 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 " + + "inner join SUB_CATEGORY_MASTER SB " + + "on BR.SUB_CATEGORY_ID=SB.SUB_CATEGORY_ID " + + "inner join CATEGORY_MASTER CA " + + "on SB.CATEGORY_ID=CA.CATEGORY_ID " + + "where BR.BRAND_ID='" + brand_id + + "' order by SK.SKU_SEQUENCE ", null); + + + if (dbcursor != null) { + dbcursor.moveToFirst(); + while (!dbcursor.isAfterLast()) { + PharmaMSLInsertedGetterSetter cd = new PharmaMSLInsertedGetterSetter(); + + cd.setSkuId(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SKU_ID"))); + cd.setSku(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SKU"))); + + list.add(cd); + dbcursor.moveToNext(); + } + dbcursor.close(); + return list; + } + } catch (Exception e) { + Log.d("Exception ", "get MSL_AvailabilityHeader!" + e.toString()); + return list; + } + return list; + } } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/LoginActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/LoginActivity.java index b4df3d2..44d9c02 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/LoginActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/LoginActivity.java @@ -56,6 +56,7 @@ import com.google.firebase.analytics.FirebaseAnalytics; import com.google.firebase.perf.FirebasePerformance; import com.google.firebase.perf.metrics.Trace; import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; import org.ksoap2.SoapEnvelope; import org.ksoap2.serialization.SoapObject; @@ -68,9 +69,11 @@ import org.xmlpull.v1.XmlPullParserFactory; import java.io.File; import java.io.IOException; import java.io.StringReader; +import java.lang.reflect.Type; import java.net.MalformedURLException; import java.text.ParseException; import java.text.SimpleDateFormat; +import java.util.ArrayList; import java.util.Calendar; import java.util.Date; import java.util.List; @@ -683,7 +686,7 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient. if (result.equals(CommonString.KEY_SUCCESS)) { // database.open(); - if (preferences.getString(CommonString.KEY_VERSION, "").equals( + /* if (preferences.getString(CommonString.KEY_VERSION, "").equals( Integer.toString(versionCode))) { if (preferences.getString(CommonString.KEY_LANGUAGE, "").equals("")) { @@ -697,6 +700,8 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient. finish(); } else { + setLanguageDataFromSharedPreferences(); + Intent in = new Intent(getApplicationContext(), MPinActivity.class); in.putExtra(CommonString.IS_PASSWORD_CHECK, false); startActivity(in); @@ -716,9 +721,9 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient. preferences.getString(CommonString.KEY_PATH, "")); startActivity(intent); finish(); - } + }*/ //For SA Only - /* if (preferences.getString(CommonString.KEY_LANGUAGE, "").equals("")) { + if (preferences.getString(CommonString.KEY_LANGUAGE, "").equals("")) { Intent intent = new Intent(getBaseContext(), SelectLanguageActivity.class); @@ -729,6 +734,8 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient. finish(); } else { + setLanguageDataFromSharedPreferences(); + CommonFunctions.updateLangResources(getApplicationContext(), preferences.getString(CommonString.KEY_LANGUAGE, "")); @@ -739,7 +746,7 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient. //uploadPreviousImages(); - }*/ + } } dialog.dismiss(); } @@ -1208,5 +1215,39 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient. }); } } + + ArrayList language, culture_id, notice_url; + + LoginGetterSetter login_data; + + private void setLanguageDataFromSharedPreferences(){ + Gson gson = new Gson(); + login_data = new LoginGetterSetter(); + + String jsonPreferences = preferences.getString(CommonString.KEY_LOOGIN_PREF, ""); + + Type type = new TypeToken() {}.getType(); + login_data = gson.fromJson(jsonPreferences, type); + + language = login_data.getCULTURE_NAME(); + culture_id = login_data.getCULTURE_ID(); + notice_url = login_data.getNOTICE_URL(); + + String lang = preferences.getString(CommonString.KEY_LANGUAGE, ""); + + if(language.size()>0){ + for(int i=0; i 0) { + resultHttp = CommonString.KEY_SUCCESS; + } + else { + + if (no_jcp_flag && no_adhoc_flag) { + return "JOURNEY_PLAN"; + } + } + + String additional_jcpTable = additionalJcpGetterSetter.getTable_journey_plan(); + TableBean.setAdditionalJourneyPlan(additional_jcpTable); + } + //GEO_FENCING request = new SoapObject(CommonString.NAMESPACE, CommonString.METHOD_NAME_UNIVERSAL_DOWNLOAD); request.addProperty("UserName", userId); @@ -1390,35 +1428,6 @@ public class DownloadActivity extends AppCompatActivity { } publishProgress(data); - //JOURNEY_PLAN_ADDITIONAL - request = new SoapObject(CommonString.NAMESPACE, CommonString.METHOD_NAME_UNIVERSAL_DOWNLOAD); - request.addProperty("UserName", userId); - request.addProperty("Type", "JOURNEY_PLAN_ADDITIONAL"); - request.addProperty("cultureid", culture_id); - - envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); - envelope.dotNet = true; - envelope.setOutputSoapObject(request); - - androidHttpTransport = new HttpTransportSE(CommonString.URL); - androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); - - result = envelope.getResponse(); - - if (result.toString() != null) { - xpp.setInput(new StringReader(result.toString())); - xpp.next(); - eventType = xpp.getEventType(); - additionalJcpGetterSetter = XMLHandlers.JCPXMLHandler(xpp, eventType); - - if (additionalJcpGetterSetter.getSTORE_ID().size() > 0) { - resultHttp = CommonString.KEY_SUCCESS; - } - - String additional_jcpTable = additionalJcpGetterSetter.getTable_journey_plan(); - TableBean.setAdditionalJourneyPlan(additional_jcpTable); - } - //publishProgress(data); // MAPPING_STOCK_ADDITIONAL request = new SoapObject(CommonString.NAMESPACE, CommonString.METHOD_NAME_UNIVERSAL_DOWNLOAD); @@ -1516,7 +1525,42 @@ public class DownloadActivity extends AppCompatActivity { TableBean.setTable_MAPPING_PHARMA_QUESTION(mapping_pahrma_question_Table); } + // MAPPING_PHARMA_MSL + request = new SoapObject(CommonString.NAMESPACE, CommonString.METHOD_NAME_UNIVERSAL_DOWNLOAD); + request.addProperty("UserName", userId); + request.addProperty("Type", "MAPPING_PHARMA_MSL"); + request.addProperty("cultureid", culture_id); + envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); + envelope.dotNet = true; + envelope.setOutputSoapObject(request); + + androidHttpTransport = new HttpTransportSE(CommonString.URL); + androidHttpTransport.call(CommonString.SOAP_ACTION_UNIVERSAL, envelope); + + result = envelope.getResponse(); + + if (result.toString() != null) { + xpp.setInput(new StringReader(result.toString())); + xpp.next(); + eventType = xpp.getEventType(); + mappingPharmaMSLGetterSetter = XMLHandlers.mappingPharmaMSLXMLHandler(xpp, eventType); + + String stocktable = mappingPharmaMSLGetterSetter.getTable_MAPPING_PHARMA_MSL(); + if (stocktable != null) { + resultHttp = CommonString.KEY_SUCCESS; + TableBean.setTable_MAPPING_PHARMA_MSL(stocktable); + } + + if (mappingPharmaMSLGetterSetter.getSKU_ID().size() > 0) { + data.value = 99; + data.name = "MAPPING_PHARMA_MSL " + getResources().getString(R.string.download_data); + } else { + // return "MAPPING_PHARMA_MSL"; + } + + } + publishProgress(data); /* //MAPPING_COUNTRYWISE_PLANOGRAM request = new SoapObject(CommonString.NAMESPACE, CommonString.METHOD_NAME_UNIVERSAL_DOWNLOAD); @@ -1899,6 +1943,7 @@ public class DownloadActivity extends AppCompatActivity { db.InsertMappingStock(mappingStockAdditionalGetterSetter, "MAPPING_STOCK_ADDITIONAL"); db.insertMappingPahrmaQuestion(mappingPharmaQuestionGetterSetter); db.InsertPharmaJCP(pharmaJcpGetterSetter); + db.InsertMAPPING_PHARMA_MSL(mappingPharmaMSLGetterSetter); } catch (MalformedURLException e) { 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 8cac1ca..1709f30 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 @@ -14,6 +14,7 @@ import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Typeface; import android.os.Bundle; +import android.os.Environment; import android.preference.PreferenceManager; import android.support.design.widget.FloatingActionButton; import android.support.design.widget.Snackbar; @@ -45,6 +46,9 @@ import android.widget.TextView; import android.widget.ToggleButton; import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileOutputStream; +import java.io.IOException; import java.text.DecimalFormat; import java.util.ArrayList; import java.util.HashMap; @@ -93,6 +97,11 @@ public class MSL_Availability_StockFacingActivity extends AppCompatActivity impl HashMap> planogramHashMapListChildData = new HashMap<>(); boolean editFlag = false; + //temp + public static final String FILE_PATH = Environment.getExternalStorageDirectory() + "/"; + //ImageView bmImage; + RelativeLayout view; + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -295,6 +304,51 @@ public class MSL_Availability_StockFacingActivity extends AppCompatActivity impl } catch (Resources.NotFoundException e) { e.printStackTrace(); } + + + /* view = (RelativeLayout)findViewById(R.id.content_msl__availability); + //bmImage = (ImageView)findViewById(R.id.image); + + view.setDrawingCacheEnabled(true); + // this is the important code :) + // Without it the view will have a dimension of 0,0 and the bitmap will be null + + view.measure(View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED), + View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED)); + + view.layout(0, 0, view.getMeasuredWidth(), view.getMeasuredHeight()); + + view.buildDrawingCache(true); + final Bitmap b = Bitmap.createBitmap(view.getDrawingCache()); + view.setDrawingCacheEnabled(false); // clear drawing cache + + //bmImage.setImageBitmap(b); + + try{ + + + File yourFile = new File(FILE_PATH+"imgForTxt.png"); + yourFile.createNewFile(); // if file already exists will do nothing + final FileOutputStream stream = new FileOutputStream(yourFile, false); //create your FileOutputStream here + + new Thread(new Runnable() { + public void run(){ + b.compress(Bitmap.CompressFormat.PNG, 85, stream); + b.recycle(); + try { + stream.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + }).start(); + + } + catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + }*/ } @Override 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 c4fe9cd..dcd095e 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/password/MPinActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/password/MPinActivity.java @@ -53,6 +53,7 @@ import com.google.firebase.analytics.FirebaseAnalytics; import com.google.firebase.perf.FirebasePerformance; import com.google.firebase.perf.metrics.Trace; import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; import org.ksoap2.SoapEnvelope; import org.ksoap2.serialization.SoapObject; @@ -65,7 +66,9 @@ import org.xmlpull.v1.XmlPullParserFactory; import java.io.File; import java.io.IOException; import java.io.StringReader; +import java.lang.reflect.Type; import java.net.MalformedURLException; +import java.util.ArrayList; import java.util.List; import cpm.com.gskmtorange.LoginActivity; @@ -791,9 +794,11 @@ public class MPinActivity extends AppCompatActivity implements if (result.equals(CommonString.KEY_SUCCESS)) { // database.open(); - if (preferences.getString(CommonString.KEY_VERSION, "").equals( + /* if (preferences.getString(CommonString.KEY_VERSION, "").equals( Integer.toString(versionCode))) { + setLanguageDataFromSharedPreferences(); + Intent in = new Intent(getApplicationContext(), MainActivity.class); in.putExtra(CommonString.IS_PASSWORD_CHECK, false); startActivity(in); @@ -809,10 +814,10 @@ public class MPinActivity extends AppCompatActivity implements preferences.getString(CommonString.KEY_PATH, "")); startActivity(intent); finish(); - } + }*/ //For SA Only - /* if (preferences.getString(CommonString.KEY_LANGUAGE, "").equals("")) { + if (preferences.getString(CommonString.KEY_LANGUAGE, "").equals("")) { Intent intent = new Intent(getBaseContext(), SelectLanguageActivity.class); @@ -823,6 +828,8 @@ public class MPinActivity extends AppCompatActivity implements finish(); } else { + setLanguageDataFromSharedPreferences(); + CommonFunctions.updateLangResources(getApplicationContext(), preferences.getString(CommonString.KEY_LANGUAGE, "")); Intent intent = new Intent(getBaseContext(), @@ -832,13 +839,47 @@ public class MPinActivity extends AppCompatActivity implements finish(); //uploadPreviousImages(); - }*/ + } } dialog.dismiss(); } } + ArrayList language, culture_id, notice_url; + + LoginGetterSetter login_data; + + private void setLanguageDataFromSharedPreferences(){ + Gson gson = new Gson(); + login_data = new LoginGetterSetter(); + + String jsonPreferences = preferences.getString(CommonString.KEY_LOOGIN_PREF, ""); + + Type type = new TypeToken() {}.getType(); + login_data = gson.fromJson(jsonPreferences, type); + + language = login_data.getCULTURE_NAME(); + culture_id = login_data.getCULTURE_ID(); + notice_url = login_data.getNOTICE_URL(); + + String lang = preferences.getString(CommonString.KEY_LANGUAGE, ""); + + if(language.size()>0){ + for(int i=0; i headerDataList; - ArrayList childDataList; + ArrayList childDataList; List hashMapListHeaderData; - HashMap> hashMapListChildData; + HashMap> hashMapListChildData; List checkHeaderArray = new ArrayList<>(); boolean checkflag = true; @@ -152,13 +156,45 @@ public class MSLFragment extends Fragment { prepareList(); + fab.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + + if(validateData(headerDataList, hashMapListChildData)){ + db.InsertPharmaMSL(store_id, headerDataList, hashMapListChildData); + + //update status to valid + db.updateCheckoutStatus(store_id, CommonString.KEY_VALID, CommonString.KEY_JOURNEY_PLAN_PHARMA); + + onButtonPressed(); + } + else { + for (int i = 0; i < adapter.getGroupCount(); i++) + expandableListView.expandGroup(i); + + AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); + builder.setMessage(Error_Message) + .setCancelable(false) + .setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + expandableListView.smoothScrollToPosition(scrollPosition); + + dialog.dismiss(); + } + }); + AlertDialog alert = builder.create(); + alert.show(); + } + } + }); + return view; } // TODO: Rename method, update argument and hook method into UI event - public void onButtonPressed(Uri uri) { + public void onButtonPressed() { if (mListener != null) { - mListener.onFragmentInteraction(uri); + mListener.onFragmentInteraction(getActivity().getSupportFragmentManager().findFragmentById(R.id.fragment)); } } @@ -191,7 +227,7 @@ public class MSLFragment extends Fragment { */ public interface OnFragmentInteractionListener { // TODO: Update argument type and name - void onFragmentInteraction(Uri uri); + void onFragmentInteraction(Fragment uri); } private void prepareList() { @@ -200,30 +236,16 @@ public class MSLFragment extends Fragment { hashMapListChildData = new HashMap<>(); //Header - if(country_id.equals("7")){ - headerDataList = db.getStockFacingHeaderData(categoryId, null, null, null, store_id, CommonString.TABLE_MAPPING_STOCK_STOREWISE, CommonString.TABLE_MAPPING_SOS_TARGET); - } - else if(store_flag_str.equalsIgnoreCase(CommonString.FROM_DEVIATION)) { - headerDataList = db.getStockFacingHeaderData(categoryId, keyAccount_id, storeType_id, class_id, store_id,CommonString.TABLE_MAPPING_STOCK_ADHOC, CommonString.TABLE_MAPPING_SOS_TARGET_ADHOC); - } - else { - headerDataList = db.getStockFacingHeaderData(categoryId, keyAccount_id, storeType_id, class_id, store_id,CommonString.TABLE_MAPPING_STOCK, CommonString.TABLE_MAPPING_SOS_TARGET); - } + headerDataList = db.getPharmaMSLHeaderData(); if (headerDataList.size() > 0) { for (int i = 0; i < headerDataList.size(); i++) { hashMapListHeaderData.add(headerDataList.get(i)); //childDataList = new ArrayList<>(); - childDataList = db.getStockAfterSaveData(categoryId, headerDataList.get(i).getBrand_id(), store_id); - if (!(childDataList.size() > 0)) { - if (country_id.equals("7")) { - childDataList = db.getMSL_Availability_StockFacingSKUData(categoryId, headerDataList.get(i).getBrand_id(), null, null, null, store_id, CommonString.TABLE_MAPPING_STOCK_STOREWISE); - } else if (store_flag_str.equalsIgnoreCase(CommonString.FROM_DEVIATION)) { - childDataList = db.getMSL_Availability_StockFacingSKUData(categoryId, headerDataList.get(i).getBrand_id(), keyAccount_id, storeType_id, class_id, store_id, CommonString.TABLE_MAPPING_STOCK_ADHOC); - } else { - childDataList = db.getMSL_Availability_StockFacingSKUData(categoryId, headerDataList.get(i).getBrand_id(), keyAccount_id, storeType_id, class_id, store_id, CommonString.TABLE_MAPPING_STOCK); - } + //childDataList = db.getStockAfterSaveData(categoryId, headerDataList.get(i).getBrand_id(), store_id); + if (childDataList.size() == 0) { + childDataList = db.getPharmaMSLSKUData(headerDataList.get(i).getBrand_id()); } hashMapListChildData.put(hashMapListHeaderData.get(i), childDataList); @@ -315,10 +337,10 @@ public class MSLFragment extends Fragment { public class ExpandableListAdapter extends BaseExpandableListAdapter { private Context _context; private List _listDataHeader; - private HashMap> _listDataChild; + private HashMap> _listDataChild; public ExpandableListAdapter(Context context, List listDataHeader, - HashMap> listChildData) { + HashMap> listChildData) { this._context = context; this._listDataHeader = listDataHeader; this._listDataChild = listChildData; @@ -442,16 +464,18 @@ public class MSLFragment extends Fragment { holder.txt_skuName.setText(childData.getSku()); - if (childData.getCompany_id().equals("1") && childData.getMust_have().equals("1")) { + /* if (childData.getCompany_id().equals("1") && childData.getMust_have().equals("1")) { holder.lin_category.setBackgroundColor(getResources().getColor(R.color.colorOrange)); } else { holder.lin_category.setBackgroundColor(getResources().getColor(R.color.white)); - } + }*/ - if (childData.getCompany_id().equals("1")) { + holder.lin_category.setBackgroundColor(getResources().getColor(R.color.white)); + + /*if (childData.getCompany_id().equals("1")) { if (childData.getMust_have().equals("1")) { holder.txt_skuName.setTextColor(getResources().getColor(R.color.colorPrimary)); @@ -462,7 +486,7 @@ public class MSLFragment extends Fragment { } else { holder.txt_skuName.setTextColor(getResources().getColor(R.color.black)); } - +*/ final ViewHolder finalHolder1 = holder; holder.rg.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { @@ -655,10 +679,10 @@ public class MSLFragment extends Fragment { } } - @Override + /*@Override public void onActivityResult(int requestCode, int resultCode, Intent data) { Log.e("Stock & Facing", "resultCode: " + resultCode + " requestCode: " + requestCode); - /*switch (resultCode) { + *//*switch (resultCode) { case 0: Log.e("Stock & Facing", "User cancelled"); @@ -672,7 +696,7 @@ public class MSLFragment extends Fragment { } } break; - }*/ + }*//* switch (requestCode) { case 1: @@ -694,5 +718,83 @@ public class MSLFragment extends Fragment { } super.onActivityResult(requestCode, resultCode, data); + }*/ + + boolean validateData(List listDataHeader, + HashMap> listDataChild) { + boolean flag = true, child_flag = true, all_flag = true; + + checkHeaderArray.clear(); + int childCount = 0; + + //temp list data for empty only + List listDataHeaderTemp = new ArrayList<>(); + + HashMap> listDataChildTemp = new HashMap<>(); + + + for (int i = 0; i < listDataHeader.size(); i++) { + flag = true; + + List listTemp = new ArrayList<>(); + + for (int j = 0; j < listDataChild.get(listDataHeader.get(i)).size(); j++) { + + child_flag = true; + + PharmaMSLInsertedGetterSetter data = listDataChild.get(listDataHeader.get(i)).get(j); + + int isChecked = data.getPresent(); + //String imgPath = data.getImgPath(); + + if(isChecked==-1){ + + scrollPosition = i + j + childCount; + + flag = false; + Error_Message = getResources().getString(R.string.msg_select_present); + break; + } + /* else if (isChecked==1) { + + if(imgPath == null || imgPath.equals("")){ + + scrollPosition = i + j + childCount; + + flag = false; + Error_Message = getResources().getString(R.string.click_image); + break; + } + }*/ + /*if (!child_flag) + listTemp.add(data);*/ + + } + + if (flag == false) { + //checkflag = false; + /* listDataHeaderTemp.add(listDataHeader.get(i)); + listDataChildTemp.put(listDataHeader.get(i), listTemp);*/ + + if (!checkHeaderArray.contains(i)) { + checkHeaderArray.add(i); + } + checkflag = false; + break; + } else { + childCount = childCount + listDataChild.get(listDataHeader.get(i)).size(); + checkflag = true; + } + } + + /* if (!all_flag) { + adapter = new ExpandableListAdapter(this, listDataHeaderTemp, listDataChildTemp); + expandableListView.setAdapter(adapter); + checkflag = false; + } else { + checkflag = true; + }*/ + + return checkflag; } } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/pharma_stores/PharmaActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/pharma_stores/PharmaActivity.java index c9a36dd..efa19f2 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/pharma_stores/PharmaActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/pharma_stores/PharmaActivity.java @@ -15,7 +15,7 @@ import android.view.View; import cpm.com.gskmtorange.R; import cpm.com.gskmtorange.constant.CommonString; -public class PharmaActivity extends AppCompatActivity implements StoreDetailFragment.OnFragmentInteractionListener, MSLFragment.OnFragmentInteractionListener { +public class PharmaActivity extends AppCompatActivity implements StoreDetailFragment.OnFragmentInteractionListener, MSLFragment.OnFragmentInteractionListener, SOSFragment.OnFragmentInteractionListener{ private SharedPreferences.Editor editor = null; private SharedPreferences preferences; FloatingActionButton fab; @@ -54,7 +54,7 @@ public class PharmaActivity extends AppCompatActivity implements StoreDetailFrag getSupportFragmentManager().beginTransaction().replace(R.id.fragment, fragment).commit(); } - else if(f instanceof SOSFragment){ + else if(f instanceof SOSFragment){ Bundle bundle = new Bundle(); bundle.putString("categoryName", "Oral Health"); bundle.putString("categoryId", "2"); @@ -62,8 +62,7 @@ public class PharmaActivity extends AppCompatActivity implements StoreDetailFrag fragment.setArguments(bundle); getSupportFragmentManager().beginTransaction().replace(R.id.fragment, fragment).commit(); - } - else{ + } else{ // do something with f Snackbar.make(fab, "---",Snackbar.LENGTH_SHORT).show(); } @@ -92,11 +91,20 @@ public class PharmaActivity extends AppCompatActivity implements StoreDetailFrag fragment.setArguments(bundle); getSupportFragmentManager().beginTransaction().replace(R.id.fragment, fragment).commit(); + }else if(f instanceof MSLFragment){ + /*Bundle bundle = new Bundle(); + bundle.putString("categoryName", "Oral Health"); + bundle.putString("categoryId", "2"); + MSLFragment fragment = new MSLFragment(); + fragment.setArguments(bundle); + + getSupportFragmentManager().beginTransaction().replace(R.id.fragment, fragment).commit();*/ + finish(); } } @Override - public void onFragmentInteraction(Uri uri) { - + public void onBackPressed() { + //super.onBackPressed(); } } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/pharma_stores/SOSFragment.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/pharma_stores/SOSFragment.java index 962c25f..5c782f7 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/pharma_stores/SOSFragment.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/pharma_stores/SOSFragment.java @@ -1,18 +1,33 @@ package cpm.com.gskmtorange.pharma_stores; +import android.app.AlertDialog; import android.content.Context; +import android.content.DialogInterface; +import android.content.SharedPreferences; import android.net.Uri; import android.os.Bundle; +import android.preference.PreferenceManager; import android.support.annotation.NonNull; +import android.support.design.widget.FloatingActionButton; import android.support.v4.app.Fragment; +import android.support.v7.widget.CardView; import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import android.widget.EditText; import android.widget.TextView; +import java.util.ArrayList; +import java.util.List; + +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.xmlGetterSetter.MappingPharmaQuestionGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.PharmaSOSGetterSetter; /** * A simple {@link Fragment} subclass. @@ -36,6 +51,20 @@ public class SOSFragment extends Fragment { RecyclerView rec_sos; + private SharedPreferences preferences; + String store_id, visit_date, username, intime, keyAccount_id, class_id, storeType_id, country_id, store_flag_str; + GSKOrangeDB db; + + FloatingActionButton fab; + + ArrayList listBrandSubGroup; + + String Error_Message = ""; + int scrollPosition = 0; + boolean checkflag = true; + + SOSAdapter adapter; + public SOSFragment() { // Required empty public constructor } @@ -72,18 +101,63 @@ public class SOSFragment extends Fragment { Bundle savedInstanceState) { // Inflate the layout for this fragment View view = inflater.inflate(R.layout.fragment_so, container, false); + + preferences = PreferenceManager.getDefaultSharedPreferences(getActivity()); + CommonFunctions.updateLangResources(getActivity(), preferences.getString(CommonString.KEY_LANGUAGE, "")); + store_id = preferences.getString(CommonString.KEY_STORE_ID, null); + visit_date = preferences.getString(CommonString.KEY_DATE, null); + username = preferences.getString(CommonString.KEY_USERNAME, null); + intime = preferences.getString(CommonString.KEY_STORE_IN_TIME, ""); + keyAccount_id = preferences.getString(CommonString.KEY_KEYACCOUNT_ID, ""); + class_id = preferences.getString(CommonString.KEY_CLASS_ID, ""); + storeType_id = preferences.getString(CommonString.KEY_STORETYPE_ID, ""); + country_id = preferences.getString(CommonString.KEY_COUNTRY_ID, ""); + store_flag_str = preferences.getString(CommonString.KEY_STORE_FLAG, null); + + fab = (FloatingActionButton) getActivity().findViewById(R.id.fab); + rec_sos = view.findViewById(R.id.rec_sos); - rec_sos.setAdapter(new SOSAdapter(getActivity())); - rec_sos.setLayoutManager(new LinearLayoutManager(getActivity())); + getActivity().setTitle(R.string.sos_detail); + + db = new GSKOrangeDB(getActivity()); + db.open(); + + prepareList(); + + fab.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + rec_sos.clearFocus(); + if(validateData(listBrandSubGroup)){ + db.InsertSOSPharma(store_id, listBrandSubGroup); + onButtonPressed(); + } + else { + + AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); + builder.setMessage(Error_Message) + .setCancelable(false) + .setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + adapter.notifyDataSetChanged(); + dialog.dismiss(); + } + }); + AlertDialog alert = builder.create(); + alert.show(); + } + + } + }); return view; } // TODO: Rename method, update argument and hook method into UI event - public void onButtonPressed(Uri uri) { + public void onButtonPressed() { if (mListener != null) { - mListener.onFragmentInteraction(uri); + mListener.onFragmentInteraction(getActivity().getSupportFragmentManager().findFragmentById(R.id.fragment)); } } @@ -116,7 +190,14 @@ public class SOSFragment extends Fragment { */ public interface OnFragmentInteractionListener { // TODO: Update argument type and name - void onFragmentInteraction(Uri uri); + void onFragmentInteraction(Fragment uri); + } + + void prepareList(){ + listBrandSubGroup = db.getStoreDetailPharmaForSOSData(store_id, "1"); + adapter = new SOSAdapter(getActivity()); + rec_sos.setAdapter(adapter); + rec_sos.setLayoutManager(new LinearLayoutManager(getActivity())); } class SOSAdapter extends RecyclerView.Adapter { @@ -135,28 +216,138 @@ public class SOSFragment extends Fragment { MyViewHolder holder = new MyViewHolder(view); + + return holder; } @Override - public void onBindViewHolder(@NonNull MyViewHolder myViewHolder, int i) { + public void onBindViewHolder(@NonNull MyViewHolder myViewHolder, int position) { + final PharmaSOSGetterSetter current = listBrandSubGroup.get(position); + /*holder.stock.setOnFocusChangeListener(new View.OnFocusChangeListener() { + @Override + public void onFocusChange(View v, boolean hasFocus) { + final EditText caption = (EditText) v; + String edStock = caption.getText().toString().replaceFirst("^0+(?!$)", "");*/ + myViewHolder.et_gsk_facing.setOnFocusChangeListener(new View.OnFocusChangeListener() { + @Override + public void onFocusChange(View v, boolean hasFocus) { + if(!hasFocus){ + final EditText caption = (EditText) v; + String gskFacing = caption.getText().toString().replaceFirst("^0+(?!$)", ""); + if(gskFacing.equals("")){ + current.setGskFacing(""); + } + else { + current.setGskFacing(gskFacing); + } + } + } + }); + + myViewHolder.et_competitor_facing.setOnFocusChangeListener(new View.OnFocusChangeListener() { + @Override + public void onFocusChange(View v, boolean hasFocus) { + if(!hasFocus){ + final EditText caption = (EditText) v; + String compFacing = caption.getText().toString().replaceFirst("^0+(?!$)", ""); + + if(compFacing.equals("")){ + current.setCompetitorFacing(""); + } + else { + current.setCompetitorFacing(compFacing); + } + } + } + }); + + myViewHolder.tv_brand.setText(current.getSUB_CATEGORY() +" - "+ current.getBRAND()); + myViewHolder.et_gsk_facing.setText(current.getGskFacing()); + myViewHolder.et_competitor_facing.setText(current.getCompetitorFacing()); + + if(!checkflag){ + if(current.getGskFacing()==null || current.getGskFacing().equals("") || current.getCompetitorFacing()==null || current.getCompetitorFacing().equals("")){ + myViewHolder.card_view.setCardBackgroundColor(getResources().getColor(android.R.color.holo_red_dark)); + } + else { + myViewHolder.card_view.setCardBackgroundColor(getResources().getColor(R.color.white)); + } + } } @Override public int getItemCount() { - return 2; + + return listBrandSubGroup.size(); } class MyViewHolder extends RecyclerView.ViewHolder { TextView tv_brand; + EditText et_gsk_facing, et_competitor_facing; + CardView card_view; public MyViewHolder(@NonNull View itemView) { super(itemView); tv_brand = (TextView) itemView.findViewById(R.id.tv_brand); + et_gsk_facing = (EditText) itemView.findViewById(R.id.et_gsk_facing); + et_competitor_facing = (EditText) itemView.findViewById(R.id.et_competitor_facing); + card_view = (CardView) itemView.findViewById(R.id.card_view); } } } + + boolean validateData(List listData) { + boolean flag = true, child_flag = true, all_flag = true; + + int childCount = 0; + + //temp list data for empty only + List listDataHeaderTemp = new ArrayList<>(); + + flag = true; + + for (int j = 0; j < listData.size(); j++) { + + PharmaSOSGetterSetter data = listData.get(j); + + String gskFacing = data.getGskFacing(); + String competitionFacing = data.getCompetitorFacing(); + + if(gskFacing==null || gskFacing.equals("")){ + + flag = false; + Error_Message = getResources().getString(R.string.enter_facing); + break; + } + else if (competitionFacing==null || competitionFacing.equals("")) { + + flag = false; + Error_Message = getResources().getString(R.string.enter_facing); + break; + } + /*if (!child_flag) + listTemp.add(data);*/ + } + + if(flag){ + checkflag = true; + } + else { + checkflag = false; + } + + /* if (!all_flag) { + adapter = new ExpandableListAdapter(this, listDataHeaderTemp, listDataChildTemp); + expandableListView.setAdapter(adapter); + checkflag = false; + } else { + checkflag = true; + }*/ + + return checkflag; + } } 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 6d564c8..fa06b1a 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 @@ -1,7 +1,9 @@ package cpm.com.gskmtorange.pharma_stores; +import android.app.AlertDialog; import android.content.ActivityNotFoundException; import android.content.Context; +import android.content.DialogInterface; import android.content.Intent; import android.content.SharedPreferences; import android.content.pm.ApplicationInfo; @@ -40,7 +42,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.xmlGetterSetter.MSL_AvailabilityStockFacingGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.MappingPharmaQuestionGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MappingPharmaQuestionGetterSetter; /** @@ -66,7 +68,7 @@ public class StoreDetailFragment extends Fragment { GSKOrangeDB db; String categoryName, categoryId, Error_Message = ""; - String store_id, visit_date, username, intime, date, keyAccount_id, class_id, storeType_id, country_id, store_flag_str; + String store_id, visit_date, username, intime, keyAccount_id, class_id, storeType_id, country_id, store_flag_str; boolean isDialogOpen = true; private SharedPreferences preferences; int scrollPosition = 0; @@ -76,7 +78,7 @@ public class StoreDetailFragment extends Fragment { ArrayList headerDataList; ArrayList childDataList; - List hashMapListHeaderData; + //List hashMapListHeaderData; HashMap> hashMapListChildData; List checkHeaderArray = new ArrayList<>(); @@ -136,7 +138,6 @@ public class StoreDetailFragment extends Fragment { CommonFunctions.updateLangResources(getActivity(), preferences.getString(CommonString.KEY_LANGUAGE, "")); 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); intime = preferences.getString(CommonString.KEY_STORE_IN_TIME, ""); keyAccount_id = preferences.getString(CommonString.KEY_KEYACCOUNT_ID, ""); @@ -157,8 +158,28 @@ public class StoreDetailFragment extends Fragment { fab.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - db.InsertStoreDetailPharma(store_id, headerDataList, hashMapListChildData); - onButtonPressed(); + + if(validateData(headerDataList, hashMapListChildData)){ + db.InsertStoreDetailPharma(store_id, headerDataList, hashMapListChildData); + onButtonPressed(); + } + else { + for (int i = 0; i < adapter.getGroupCount(); i++) + expandableListView.expandGroup(i); + + AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); + builder.setMessage(Error_Message) + .setCancelable(false) + .setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + expandableListView.smoothScrollToPosition(scrollPosition); + + dialog.dismiss(); + } + }); + AlertDialog alert = builder.create(); + alert.show(); + } } }); @@ -206,25 +227,43 @@ public class StoreDetailFragment extends Fragment { private void prepareList() { try { - hashMapListHeaderData = new ArrayList<>(); + //hashMapListHeaderData = new ArrayList<>(); hashMapListChildData = new HashMap<>(); //Header - headerDataList = db.getPharmaQuestionsData(); + headerDataList = db.getStoreDetailPharmaQuestionInsertedData(store_id); + //if inserted data not found + if(headerDataList.size()==0){ + + //default question data + headerDataList = db.getPharmaQuestionsData(); + + for (int i = 0; i < headerDataList.size(); i++) { + + //childDataList = new ArrayList<>(); + childDataList = db.getPharmaAnswerData(headerDataList.get(i).getQUESTION_ID().get(0)); + + hashMapListChildData.put(headerDataList.get(i), childDataList); + } + } + else { - if (headerDataList.size() > 0) { for (int i = 0; i < headerDataList.size(); i++) { - //childDataList = new ArrayList<>(); - childDataList = db.getPharmaAnswerData(headerDataList.get(i).getQUESTION_ID().get(0)); + childDataList = db.getStoreDetailPharmaAnswerInsertedData(store_id, headerDataList.get(i).getQUESTION_ID().get(0)); hashMapListChildData.put(headerDataList.get(i), childDataList); } + } + adapter = new ExpandableListAdapter(getActivity(), headerDataList, hashMapListChildData); expandableListView.setAdapter(adapter); + for (int i = 0; i < adapter.getGroupCount(); i++) + expandableListView.expandGroup(i); + expandableListView.setOnScrollListener(new AbsListView.OnScrollListener() { @Override public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) { @@ -642,4 +681,82 @@ public class StoreDetailFragment extends Fragment { super.onActivityResult(requestCode, resultCode, data); } + + boolean validateData(List listDataHeader, + HashMap> listDataChild) { + boolean flag = true, child_flag = true, all_flag = true; + + checkHeaderArray.clear(); + int childCount = 0; + + //temp list data for empty only + List listDataHeaderTemp = new ArrayList<>(); + + HashMap> listDataChildTemp = new HashMap<>(); + + + for (int i = 0; i < listDataHeader.size(); i++) { + flag = true; + + List listTemp = new ArrayList<>(); + + for (int j = 0; j < listDataChild.get(listDataHeader.get(i)).size(); j++) { + + child_flag = true; + + MappingPharmaQuestionGetterSetter data = listDataChild.get(listDataHeader.get(i)).get(j); + + int isChecked = data.getIsChecked(); + String imgPath = data.getImgPath(); + + if(isChecked==-1){ + + scrollPosition = i + j + childCount; + + flag = false; + Error_Message = getResources().getString(R.string.msg_select_present); + break; + } + else if (isChecked==1) { + + if(imgPath == null || imgPath.equals("")){ + + scrollPosition = i + j + childCount; + + flag = false; + Error_Message = getResources().getString(R.string.click_image); + break; + } + } + /*if (!child_flag) + listTemp.add(data);*/ + + } + + if (flag == false) { + //checkflag = false; + /* listDataHeaderTemp.add(listDataHeader.get(i)); + listDataChildTemp.put(listDataHeader.get(i), listTemp);*/ + + if (!checkHeaderArray.contains(i)) { + checkHeaderArray.add(i); + } + checkflag = false; + break; + } else { + childCount = childCount + listDataChild.get(listDataHeader.get(i)).size(); + checkflag = true; + } + } + + /* if (!all_flag) { + adapter = new ExpandableListAdapter(this, listDataHeaderTemp, listDataChildTemp); + expandableListView.setAdapter(adapter); + checkflag = false; + } else { + checkflag = true; + }*/ + + return checkflag; + } } 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 e9ee013..eaf5269 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/PreviousDataUploadActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/PreviousDataUploadActivity.java @@ -503,16 +503,16 @@ public class PreviousDataUploadActivity extends AppCompatActivity { } else { stock = "0"; } - onXML = "[MSL_AVAILABILITY_STOCK_FACING_DATA_NEW]" + onXML = "[ST]" + "[MID]" + mid + "[/MID]" - + "[USER_ID]" + userId + "[/USER_ID]" - + "[SKU_ID]" + Integer.parseInt(msl_availabilityStockFacingList.get(j).getSku_id()) + "[/SKU_ID]" + //+ "[USERID]" + userId + "[/USERID]" + + "[SID]" + Integer.parseInt(msl_availabilityStockFacingList.get(j).getSku_id()) + "[/SID]" + "[MBQ]" + Integer.parseInt(msl_availabilityStockFacingList.get(j).getMbq()) + "[/MBQ]" - + "[AVAILABILITY]" + Integer.parseInt(msl_availabilityStockFacingList.get(j).getToggleValue()) + "[/AVAILABILITY]" - + "[FACING]" + Double.parseDouble(msl_availabilityStockFacingList.get(j).getFacing()) + "[/FACING]" - + "[STOCK]" + Integer.parseInt(stock) + "[/STOCK]" - + "[MUST_HAVE]" + Integer.parseInt(msl_availabilityStockFacingList.get(j).getMust_have()) + "[/MUST_HAVE]" + - "[/MSL_AVAILABILITY_STOCK_FACING_DATA_NEW]"; + + "[AVL]" + Integer.parseInt(msl_availabilityStockFacingList.get(j).getToggleValue()) + "[/AVL]" + + "[FC]" + Double.parseDouble(msl_availabilityStockFacingList.get(j).getFacing()) + "[/FC]" + + "[SK]" + Integer.parseInt(stock) + "[/SK]" + + "[ML]" + Integer.parseInt(msl_availabilityStockFacingList.get(j).getMust_have()) + "[/ML]" + + "[/ST]"; mslAvailability_stockFacing_xml = mslAvailability_stockFacing_xml + onXML; } @@ -522,7 +522,7 @@ public class PreviousDataUploadActivity extends AppCompatActivity { request = new SoapObject(CommonString.NAMESPACE, CommonString.METHOD_UPLOAD_STOCK_XML_DATA); request.addProperty("XMLDATA", sos_xml); - request.addProperty("KEYS", "STOCK_AVAILABILITY_POINT"); + request.addProperty("KEYS", "STOCK_AVAILABILITY_POINT_LATEST"); request.addProperty("USERNAME", userId); request.addProperty("MID", mid); 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 79a75c5..83a8fd7 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/UploadActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/UploadActivity.java @@ -338,10 +338,15 @@ public class UploadActivity extends AppCompatActivity { String coverage_service, status_service; if(coverageList.get(i).getFlag_from().equals(CommonString.FROM_ADDITIONAL)){ + status_service = CommonString.METHOD_UPLOAD_COVERAGE_STATUS_ADDITIONAL; coverage_service = CommonString.METHOD_UPLOAD_COVERAGE_NEW_ADDITIONAL; - } - else { + }else if(coverageList.get(i).getFlag_from().equals(CommonString.FROM_PHARMA)){ + + status_service = CommonString.METHOD_UPLOAD_COVERAGE_STATUS_PHARMA; + coverage_service = CommonString.METHOD_UPLOAD_COVERAGE_NEW_PHARMA; + } else { + status_service = CommonString.METHOD_UPLOAD_COVERAGE_STATUS; coverage_service = CommonString.METHOD_UPLOAD_COVERAGE_NEW; } @@ -588,13 +593,13 @@ public class UploadActivity extends AppCompatActivity { } onXML = "[ST]" + "[MID]" + mid + "[/MID]" - + "[USERID]" + userId + "[/USERID]" - + "[SKUID]" + Integer.parseInt(msl_availabilityStockFacingList.get(j).getSku_id()) + "[/SKUID]" + //+ "[USERID]" + userId + "[/USERID]" + + "[SID]" + Integer.parseInt(msl_availabilityStockFacingList.get(j).getSku_id()) + "[/SID]" + "[MBQ]" + Integer.parseInt(msl_availabilityStockFacingList.get(j).getMbq()) + "[/MBQ]" + "[AVL]" + Integer.parseInt(msl_availabilityStockFacingList.get(j).getToggleValue()) + "[/AVL]" - + "[FAC]" + Double.parseDouble(msl_availabilityStockFacingList.get(j).getFacing()) + "[/FAC]" - + "[STK]" + Integer.parseInt(stock) + "[/STK]" - + "[MSL]" + Integer.parseInt(msl_availabilityStockFacingList.get(j).getMust_have()) + "[/MSL]" + + + "[FC]" + Double.parseDouble(msl_availabilityStockFacingList.get(j).getFacing()) + "[/FC]" + + "[SK]" + Integer.parseInt(stock) + "[/SK]" + + "[ML]" + Integer.parseInt(msl_availabilityStockFacingList.get(j).getMust_have()) + "[/ML]" + "[/ST]"; mslAvailability_stockFacing_xml = mslAvailability_stockFacing_xml + onXML; @@ -605,7 +610,7 @@ public class UploadActivity extends AppCompatActivity { request = new SoapObject(CommonString.NAMESPACE, CommonString.METHOD_UPLOAD_STOCK_XML_DATA); request.addProperty("XMLDATA", sos_xml); - request.addProperty("KEYS", "STOCK_AVAILABILITY_POINT_NEW"); + request.addProperty("KEYS", "STOCK_AVAILABILITY_POINT_LATEST"); request.addProperty("USERNAME", userId); request.addProperty("MID", mid); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/BrandMasterGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/BrandMasterGetterSetter.java index 3634b29..26cfda9 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/BrandMasterGetterSetter.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/BrandMasterGetterSetter.java @@ -15,6 +15,15 @@ public class BrandMasterGetterSetter { ArrayList SUB_CATEGORY_ID = new ArrayList<>(); ArrayList COMPANY_ID = new ArrayList<>(); ArrayList BRAND_SEQUENCE = new ArrayList<>(); + ArrayList BRAND_SEQUENCE_SA = new ArrayList<>(); + + public ArrayList getBRAND_SEQUENCE_SA() { + return BRAND_SEQUENCE_SA; + } + + public void setBRAND_SEQUENCE_SA(String BRAND_SEQUENCE_SA) { + this.BRAND_SEQUENCE_SA.add(BRAND_SEQUENCE_SA); + } public String getTable_BRAND_MASTER() { return table_BRAND_MASTER; diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/MappingPharmaMSLGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/MappingPharmaMSLGetterSetter.java new file mode 100644 index 0000000..92ac507 --- /dev/null +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/MappingPharmaMSLGetterSetter.java @@ -0,0 +1,35 @@ +package cpm.com.gskmtorange.xmlGetterSetter; + +import java.util.ArrayList; + +public class MappingPharmaMSLGetterSetter { + + String table_MAPPING_PHARMA_MSL; + + ArrayList COUNTRY_ID = new ArrayList<>(); + ArrayList SKU_ID = new ArrayList<>(); + + public String getTable_MAPPING_PHARMA_MSL() { + return table_MAPPING_PHARMA_MSL; + } + + public void setTable_MAPPING_PHARMA_MSL(String table_MAPPING_PHARMA_MSL) { + this.table_MAPPING_PHARMA_MSL = table_MAPPING_PHARMA_MSL; + } + + public ArrayList getCOUNTRY_ID() { + return COUNTRY_ID; + } + + public void setCOUNTRY_ID(String COUNTRY_ID) { + this.COUNTRY_ID.add(COUNTRY_ID); + } + + public ArrayList getSKU_ID() { + return SKU_ID; + } + + public void setSKU_ID(String SKU_ID) { + this.SKU_ID.add(SKU_ID); + } +} diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/PharmaMSLInsertedGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/PharmaMSLInsertedGetterSetter.java new file mode 100644 index 0000000..07e7d2b --- /dev/null +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/PharmaMSLInsertedGetterSetter.java @@ -0,0 +1,40 @@ +package cpm.com.gskmtorange.xmlGetterSetter; + +public class PharmaMSLInsertedGetterSetter { + + int present = -1; + + String skuId, sku, brandId; + + public int getPresent() { + return present; + } + + public void setPresent(int present) { + this.present = present; + } + + public String getSkuId() { + return skuId; + } + + public void setSkuId(String skuId) { + this.skuId = skuId; + } + + public String getSku() { + return sku; + } + + public void setSku(String sku) { + this.sku = sku; + } + + public String getBrandId() { + return brandId; + } + + public void setBrandId(String brandId) { + this.brandId = brandId; + } +} diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/PharmaSOSGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/PharmaSOSGetterSetter.java new file mode 100644 index 0000000..0e0277a --- /dev/null +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/PharmaSOSGetterSetter.java @@ -0,0 +1,72 @@ +package cpm.com.gskmtorange.xmlGetterSetter; + +import java.util.ArrayList; + +public class PharmaSOSGetterSetter { + + String QUESTION_ID, QUESTION, BRAND_ID, BRAND, SUB_CATEGORY_ID, SUB_CATEGORY, gskFacing, competitorFacing; + + public String getQUESTION_ID() { + return QUESTION_ID; + } + + public void setQUESTION_ID(String QUESTION_ID) { + this.QUESTION_ID = QUESTION_ID; + } + + public String getQUESTION() { + return QUESTION; + } + + public void setQUESTION(String QUESTION) { + this.QUESTION = QUESTION; + } + + public String getBRAND_ID() { + return BRAND_ID; + } + + public void setBRAND_ID(String BRAND_ID) { + this.BRAND_ID = BRAND_ID; + } + + public String getBRAND() { + return BRAND; + } + + public void setBRAND(String BRAND) { + this.BRAND = BRAND; + } + + public String getSUB_CATEGORY_ID() { + return SUB_CATEGORY_ID; + } + + public void setSUB_CATEGORY_ID(String SUB_CATEGORY_ID) { + this.SUB_CATEGORY_ID = SUB_CATEGORY_ID; + } + + public String getSUB_CATEGORY() { + return SUB_CATEGORY; + } + + public void setSUB_CATEGORY(String SUB_CATEGORY) { + this.SUB_CATEGORY = SUB_CATEGORY; + } + + public String getGskFacing() { + return gskFacing; + } + + public void setGskFacing(String gskFacing) { + this.gskFacing = gskFacing; + } + + public String getCompetitorFacing() { + return competitorFacing; + } + + public void setCompetitorFacing(String competitorFacing) { + this.competitorFacing = competitorFacing; + } +} diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/SkuMasterGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/SkuMasterGetterSetter.java index 4aaf913..a76a37a 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/SkuMasterGetterSetter.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/SkuMasterGetterSetter.java @@ -17,6 +17,16 @@ public class SkuMasterGetterSetter { ArrayList SKU_SEQUENCE = new ArrayList<>(); ArrayList PROMO_SKU = new ArrayList<>(); + public ArrayList getSKU_SEQUENCE_SA() { + return SKU_SEQUENCE_SA; + } + + public void setSKU_SEQUENCE_SA(String SKU_SEQUENCE_SA) { + this.SKU_SEQUENCE_SA.add(SKU_SEQUENCE_SA); + } + + ArrayList SKU_SEQUENCE_SA = new ArrayList<>(); + public ArrayList getSKU_ID() { return SKU_ID; } 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 aaa6b3b..d0e912a 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/SubCategoryMasterGetterSetter.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/SubCategoryMasterGetterSetter.java @@ -15,6 +15,16 @@ public class SubCategoryMasterGetterSetter { ArrayList CATEGORY_ID = new ArrayList<>(); ArrayList SUB_CATEGORY_SEQUENCE = new ArrayList<>(); + public ArrayList getSUB_CATEGORY_SEQUENCE_SA() { + return SUB_CATEGORY_SEQUENCE_SA; + } + + public void setSUB_CATEGORY_SEQUENCE_SA(String SUB_CATEGORY_SEQUENCE_SA) { + this.SUB_CATEGORY_SEQUENCE_SA.add(SUB_CATEGORY_SEQUENCE_SA); + } + + ArrayList SUB_CATEGORY_SEQUENCE_SA = new ArrayList<>(); + public String getTable_SUB_CATEGORY_MASTER() { return table_SUB_CATEGORY_MASTER; diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/TableBean.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/TableBean.java index 5f0c00d..bd5d838 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/TableBean.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/TableBean.java @@ -44,6 +44,16 @@ public class TableBean { public static String Table_MAPPING_STOCK_STOREWISE; public static String Table_MAPPING_PLANOGRAM_STORE_WISE; + public static String getTable_MAPPING_PHARMA_MSL() { + return Table_MAPPING_PHARMA_MSL; + } + + public static void setTable_MAPPING_PHARMA_MSL(String table_MAPPING_PHARMA_MSL) { + Table_MAPPING_PHARMA_MSL = table_MAPPING_PHARMA_MSL; + } + + public static String Table_MAPPING_PHARMA_MSL; + public static String getTable_MAPPING_PHARMA_QUESTION() { return Table_MAPPING_PHARMA_QUESTION; } 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 7e53811..1631c33 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlHandlers/XMLHandlers.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlHandlers/XMLHandlers.java @@ -24,6 +24,7 @@ import cpm.com.gskmtorange.xmlGetterSetter.MAPPING_PLANOGRAM_MasterGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MAPPING_SOS_TARGET_MasterGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MappingCategoryImageAllowGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MappingDisplayChecklistGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.MappingPharmaMSLGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MappingPharmaQuestionGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MappingPlanogramCountrywiseGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MappingPlanogramStorewiseGetterSetter; @@ -258,6 +259,9 @@ public class XMLHandlers { if (xpp.getName().equals("PROMO_SKU")) { sku.setPROMO_SKU(xpp.nextText()); } + if (xpp.getName().equals("SKU_SEQUENCE_SA")) { + sku.setSKU_SEQUENCE_SA(xpp.nextText()); + } } xpp.next(); @@ -298,6 +302,9 @@ public class XMLHandlers { if (xpp.getName().equals("BRAND_SEQUENCE")) { brand.setBRAND_SEQUENCE(xpp.nextText()); } + if (xpp.getName().equals("BRAND_SEQUENCE_SA")) { + brand.setBRAND_SEQUENCE_SA(xpp.nextText()); + } } xpp.next(); @@ -335,6 +342,9 @@ public class XMLHandlers { if (xpp.getName().equals("SUB_CATEGORY_SEQUENCE")) { category.setSUB_CATEGORY_SEQUENCE(xpp.nextText()); } + if (xpp.getName().equals("SUB_CATEGORY_SEQUENCE_SA")) { + category.setSUB_CATEGORY_SEQUENCE_SA(xpp.nextText()); + } } xpp.next(); @@ -1547,4 +1557,35 @@ public class XMLHandlers { } return stock; } + + // MAPPING_PHARMA_MSL XML HANDLER + public static MappingPharmaMSLGetterSetter mappingPharmaMSLXMLHandler(XmlPullParser xpp, + int eventType) { + MappingPharmaMSLGetterSetter stock = new MappingPharmaMSLGetterSetter(); + + try { + while (xpp.getEventType() != XmlPullParser.END_DOCUMENT) { + if (xpp.getEventType() == XmlPullParser.START_TAG) { + if (xpp.getName().equals("META_DATA")) { + stock.setTable_MAPPING_PHARMA_MSL(xpp.nextText()); + } + if (xpp.getName().equals("COUNTRY_ID")) { + stock.setCOUNTRY_ID(xpp.nextText()); + } + if (xpp.getName().equals("SKU_ID")) { + stock.setSKU_ID(xpp.nextText()); + } + + } + xpp.next(); + } + } catch (XmlPullParserException e) { + + e.printStackTrace(); + } catch (IOException e) { + + e.printStackTrace(); + } + return stock; + } } diff --git a/GSKMTOrange/src/main/res/layout/content_msl__availability.xml b/GSKMTOrange/src/main/res/layout/content_msl__availability.xml index 64950b1..feaa628 100644 --- a/GSKMTOrange/src/main/res/layout/content_msl__availability.xml +++ b/GSKMTOrange/src/main/res/layout/content_msl__availability.xml @@ -1,12 +1,13 @@ - + tools:showIn="@layout/activity_msl__availability" + android:orientation="vertical"> - + + + diff --git a/GSKMTOrange/src/main/res/layout/fragment_so.xml b/GSKMTOrange/src/main/res/layout/fragment_so.xml index db51dbb..855e9c8 100644 --- a/GSKMTOrange/src/main/res/layout/fragment_so.xml +++ b/GSKMTOrange/src/main/res/layout/fragment_so.xml @@ -12,7 +12,8 @@ android:orientation="vertical" android:layout_alignParentTop="true" android:layout_alignParentLeft="true" - android:layout_alignParentStart="true"> + android:layout_alignParentStart="true" + > @@ -26,7 +26,7 @@ + android:layout_weight="2"> @@ -42,7 +42,7 @@ diff --git a/GSKMTOrange/src/main/res/menu/activity_main_drawer.xml b/GSKMTOrange/src/main/res/menu/activity_main_drawer.xml index 70462aa..bd6c4b7 100644 --- a/GSKMTOrange/src/main/res/menu/activity_main_drawer.xml +++ b/GSKMTOrange/src/main/res/menu/activity_main_drawer.xml @@ -52,7 +52,7 @@ android:id="@+id/nav_pharmacy_stores" android:icon="@mipmap/baseline_local_pharmacy_black_48" android:title="@string/pharma_stores" - + android:visible="false" /> Additional Stores GSK Competitor + SOS Detail diff --git a/library/build/intermediates/incremental/packageReleaseResources/compile-file-map.properties b/library/build/intermediates/incremental/packageReleaseResources/compile-file-map.properties index bf36fd7..1ed8436 100644 --- a/library/build/intermediates/incremental/packageReleaseResources/compile-file-map.properties +++ b/library/build/intermediates/incremental/packageReleaseResources/compile-file-map.properties @@ -1,4 +1,4 @@ -#Tue Apr 23 16:25:39 IST 2019 +#Fri May 17 18:44:04 IST 2019 D\:\\GITHub\\GSKORANGEV2\\library\\src\\main\\res\\layout\\item_listview_single.xml=D\:\\GITHub\\GSKORANGEV2\\library\\build\\intermediates\\packaged_res\\release\\layout\\item_listview_single.xml D\:\\GITHub\\GSKORANGEV2\\library\\src\\main\\res\\layout\\item_listview_multiple.xml=D\:\\GITHub\\GSKORANGEV2\\library\\build\\intermediates\\packaged_res\\release\\layout\\item_listview_multiple.xml D\:\\GITHub\\GSKORANGEV2\\library\\src\\main\\res\\layout\\activity_main.xml=D\:\\GITHub\\GSKORANGEV2\\library\\build\\intermediates\\packaged_res\\release\\layout\\activity_main.xml