From 2be9a664c24d575b47e7e57643ec992aedd61c55 Mon Sep 17 00:00:00 2001 From: yadavendras Date: Fri, 30 Dec 2016 11:26:11 +0530 Subject: [PATCH 01/12] new download branch --- .../cpm/com/gskmtorange/LoginActivity.java | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/LoginActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/LoginActivity.java index f9c903c..678ee79 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/LoginActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/LoginActivity.java @@ -5,10 +5,13 @@ import android.animation.AnimatorListenerAdapter; import android.annotation.TargetApi; import android.app.AlertDialog; import android.app.ProgressDialog; +import android.content.Context; import android.content.DialogInterface; import android.content.Intent; import android.content.SharedPreferences; import android.content.pm.PackageManager; +import android.content.res.Configuration; +import android.content.res.Resources; import android.location.Location; import android.location.LocationListener; import android.preference.PreferenceManager; @@ -50,6 +53,7 @@ import java.net.MalformedURLException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.List; +import java.util.Locale; import cpm.com.gskmtorange.autoupdate.AutoUpdateActivity; import cpm.com.gskmtorange.constant.CommonString; @@ -577,6 +581,8 @@ public class LoginActivity extends AppCompatActivity { } else{ + updateResources(getApplicationContext(),preferences.getString(CommonString.KEY_LANGUAGE, "")); + Intent intent = new Intent(getBaseContext(), MainActivity.class); startActivity(intent); @@ -634,6 +640,31 @@ public class LoginActivity extends AppCompatActivity { } + private static boolean updateResources(Context context, String language) { + String lang ; + + if(language.equals("English")){ + lang = "EN"; + } + else if(language.equals("UAE")) { + lang = "AR"; + } + else { + lang = "TR"; + } + + Locale locale = new Locale(lang); + Locale.setDefault(locale); + + Resources resources = context.getResources(); + + Configuration configuration = resources.getConfiguration(); + configuration.locale = locale; + + resources.updateConfiguration(configuration, resources.getDisplayMetrics()); + + return true; + } } From fed55552f5b5827683aeca525d91dd92cc4bbed5 Mon Sep 17 00:00:00 2001 From: Gagan290 Date: Fri, 30 Dec 2016 13:39:07 +0530 Subject: [PATCH 02/12] Merge branch 'master' of https://github.com/CPM-INDIA-SALES-AND-MARKETING-PVT-LTD/GSKORANGEV1 into Category_G # Conflicts: # GSKMTOrange/src/main/AndroidManifest.xml # GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java --- .../com/gskmtorange/Database/GSKOrangeDB.java | 132 +++++++++++++++++- .../gsk_dailyentry/CategoryListActivity.java | 25 ++-- .../CategoryWisePerformanceActivity.java | 7 +- .../gsk_dailyentry/DailyDataMenuActivity.java | 15 +- .../MSL_AvailabilityActivity.java | 71 +++------- .../xmlGetterSetter/CategoryGetterSetter.java | 23 +-- .../MSL_AvailabilityGetterSetter.java | 66 +++++++-- .../activity_category_wise_performance.xml | 2 +- .../res/layout/activity_daily_data_menu.xml | 1 + .../res/layout/content_daily_main_menu.xml | 2 +- .../layout/item_msl_availability_child.xml | 18 +-- 11 files changed, 252 insertions(+), 110 deletions(-) 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 aa8fc2a..409addf 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java @@ -17,6 +17,7 @@ import cpm.com.gskmtorange.xmlGetterSetter.CategoryMasterGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.DisplayMasterGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.JourneyPlanGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MAPPINGT2PGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.MSL_AvailabilityGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MappingStockGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.SkuMasterGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.SubCategoryMasterGetterSetter; @@ -119,14 +120,12 @@ public class GSKOrangeDB extends SQLiteOpenHelper { } public ArrayList getStoreData(String date) { - - ArrayList list = new ArrayList(); Cursor dbcursor = null; try { - - dbcursor = db.rawQuery("SELECT * from JOURNEY_PLAN where VISIT_DATE ='" + date + "'", null); + dbcursor = db.rawQuery("SELECT * from JOURNEY_PLAN " + + "where VISIT_DATE ='" + date + "'", null); if (dbcursor != null) { dbcursor.moveToFirst(); @@ -330,4 +329,129 @@ public class GSKOrangeDB extends SQLiteOpenHelper { Log.d("Exception ", " in MAPPING_T2P " + ex.toString()); } } + + + public ArrayList getCategoryListData(String keyAccountId, String storeTypeId, String classId) { + ArrayList list = new ArrayList<>(); + Cursor dbcursor = null; + + try { + dbcursor = db.rawQuery("Select DISTINCT CA.CATEGORY_ID,CA.CATEGORY " + + "from MAPPING_STOCK 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 M.KEYACCOUNT_ID='" + keyAccountId + "' AND " + + "M.STORETYPE_ID='" + storeTypeId + "' AND " + + "M.CLASS_ID='" + classId + "'", null); + + if (dbcursor != null) { + dbcursor.moveToFirst(); + while (!dbcursor.isAfterLast()) { + CategoryGetterSetter cd = new CategoryGetterSetter(); + + cd.setCategory_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("CATEGORY_ID"))); + cd.setCategory(dbcursor.getString(dbcursor.getColumnIndexOrThrow("CATEGORY"))); + cd.setCategory_img("category"); + + list.add(cd); + dbcursor.moveToNext(); + } + dbcursor.close(); + return list; + } + } catch (Exception e) { + Log.d("Exception get JCP!", e.toString()); + return list; + } + return list; + } + + public ArrayList getMSL_AvailabilityHeaderData(String category_id) { + 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 " + + "from MAPPING_STOCK 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 M.MUST_HAVE=1 AND CA.CATEGORY_ID='" + category_id + "' " + + "order by SB.SUB_CATEGORY,BR.BRAND", null); + + if (dbcursor != null) { + dbcursor.moveToFirst(); + while (!dbcursor.isAfterLast()) { + MSL_AvailabilityGetterSetter cd = new MSL_AvailabilityGetterSetter(); + + 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"))); + + list.add(cd); + dbcursor.moveToNext(); + } + dbcursor.close(); + return list; + } + } catch (Exception e) { + Log.d("Exception ", "get MSL_AvailabilityHeader!" + e.toString()); + return list; + } + return list; + } + + public ArrayList getMSL_AvailabilitySKUData(String category_id, String brand_id) { + ArrayList list = new ArrayList<>(); + Cursor dbcursor = null; + + try { + dbcursor = db.rawQuery("Select DISTINCT SK.SKU_ID,SK.SKU,SK.MRP,SK.SKU_SEQUENCE " + + "from MAPPING_STOCK 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 M.MUST_HAVE=1 AND " + + "CA.CATEGORY_ID='" + category_id + "' AND BR.BRAND_ID='" + brand_id + "'", null); + + if (dbcursor != null) { + dbcursor.moveToFirst(); + while (!dbcursor.isAfterLast()) { + MSL_AvailabilityGetterSetter cd = new MSL_AvailabilityGetterSetter(); + + cd.setSku_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SKU_ID"))); + cd.setSku(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SKU"))); + cd.setMrp(dbcursor.getString(dbcursor.getColumnIndexOrThrow("MRP"))); + cd.setSku_sequence(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SKU_SEQUENCE"))); + + 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/gsk_dailyentry/CategoryListActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/CategoryListActivity.java index 8e7364b..319d564 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 @@ -22,14 +22,18 @@ import java.util.ArrayList; import java.util.Collections; import java.util.List; +import cpm.com.gskmtorange.Database.GSKOrangeDB; import cpm.com.gskmtorange.R; import cpm.com.gskmtorange.xmlGetterSetter.CategoryGetterSetter; public class CategoryListActivity extends AppCompatActivity { RecyclerView recyclerView; + TextView txt_categoryName; + ArrayList categoryList; CategoryListAdapter adapter; - TextView txt_categoryName; + + GSKOrangeDB db; @Override protected void onCreate(Bundle savedInstanceState) { @@ -41,6 +45,9 @@ public class CategoryListActivity extends AppCompatActivity { getSupportActionBar().setHomeButtonEnabled(true); getSupportActionBar().setDisplayHomeAsUpEnabled(true); + db = new GSKOrangeDB(this); + db.open(); + txt_categoryName = (TextView) findViewById(R.id.txt_categoryName); txt_categoryName.setText("Category List"); @@ -61,7 +68,7 @@ public class CategoryListActivity extends AppCompatActivity { recyclerView = (RecyclerView) findViewById(R.id.recyclerView); categoryList = new ArrayList<>(); - CategoryGetterSetter data = new CategoryGetterSetter(); + /*CategoryGetterSetter data = new CategoryGetterSetter(); data.setCategory_name("Oral Health"); data.setCategory_img(R.drawable.category); categoryList.add(data); @@ -74,7 +81,9 @@ public class CategoryListActivity extends AppCompatActivity { data = new CategoryGetterSetter(); data.setCategory_name("Wellness"); data.setCategory_img(R.drawable.category); - categoryList.add(data); + categoryList.add(data);*/ + + categoryList = db.getCategoryListData("1", "1", "1"); adapter = new CategoryListAdapter(CategoryListActivity.this, categoryList); recyclerView.setAdapter(adapter); @@ -103,22 +112,20 @@ public class CategoryListActivity extends AppCompatActivity { public void onBindViewHolder(MyViewHolder holder, int position) { final CategoryGetterSetter categoryData = list.get(position); - holder.categoryName.setText(categoryData.getCategory_name()); - holder.categoryIcon.setImageResource(categoryData.getCategory_img()); + holder.categoryName.setText(categoryData.getCategory()); + holder.categoryIcon.setImageResource(R.drawable.category); holder.lay_menu.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Intent intent = new Intent(CategoryListActivity.this, CategoryWisePerformanceActivity.class); - intent.putExtra("categoryName", categoryData.getCategory_name()); + intent.putExtra("categoryName", categoryData.getCategory()); + intent.putExtra("categoryId", categoryData.getCategory_id()); startActivity(intent); } }); - - } - @Override public int getItemCount() { return list.size(); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/CategoryWisePerformanceActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/CategoryWisePerformanceActivity.java index 07eeef2..a7686ea 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/CategoryWisePerformanceActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/CategoryWisePerformanceActivity.java @@ -14,6 +14,7 @@ import android.view.View; import android.view.ViewGroup; import android.widget.LinearLayout; import android.widget.TextView; + import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -25,7 +26,7 @@ public class CategoryWisePerformanceActivity extends AppCompatActivity { TextView txt_categoryName; RecyclerView recyclerView; - String categoryName = ""; + String categoryName = "", categoryId; ArrayList categoryWisePerformanceList; CategoryWisePerformaceAdapter adapter; @@ -44,6 +45,7 @@ public class CategoryWisePerformanceActivity extends AppCompatActivity { txt_categoryName = (TextView) findViewById(R.id.txt_categoryName); categoryName = getIntent().getStringExtra("categoryName"); + categoryId = getIntent().getStringExtra("categoryId"); txt_categoryName.setText("CategoryWise Performance " + categoryName); @@ -51,10 +53,9 @@ public class CategoryWisePerformanceActivity extends AppCompatActivity { 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();*/ Intent intent = new Intent(CategoryWisePerformanceActivity.this, DailyDataMenuActivity.class); intent.putExtra("categoryName", categoryName); + intent.putExtra("categoryId", categoryId); startActivity(intent); } }); 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 798ae71..a219fa7 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 @@ -30,7 +30,7 @@ public class DailyDataMenuActivity extends AppCompatActivity { ArrayList categoryList; DailyDataMenuAdapter adapter; TextView txt_categoryName; - String categoryName = ""; + String categoryName = "", categoryId; @Override protected void onCreate(Bundle savedInstanceState) { @@ -46,17 +46,18 @@ public class DailyDataMenuActivity extends AppCompatActivity { txt_categoryName = (TextView) findViewById(R.id.txt_categoryName); categoryName = getIntent().getStringExtra("categoryName"); + categoryId = getIntent().getStringExtra("categoryId"); txt_categoryName.setText("Daily Data Menu - " + categoryName); - FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); + /*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(); } - }); + });*/ } @Override @@ -136,11 +137,13 @@ public class DailyDataMenuActivity extends AppCompatActivity { if (dailyData.getCategory_name().equalsIgnoreCase("MSL Availability")) { Intent intent = new Intent(DailyDataMenuActivity.this, MSL_AvailabilityActivity.class); intent.putExtra("categoryName", dailyData.getCategory_name()); + intent.putExtra("categoryId", categoryId); startActivity(intent); } else if (dailyData.getCategory_name().equalsIgnoreCase("Stock & Facing")) { - Intent intent1 = new Intent(DailyDataMenuActivity.this, Stock_FacingActivity.class); - intent1.putExtra("categoryName", dailyData.getCategory_name()); - startActivity(intent1); + Intent intent = new Intent(DailyDataMenuActivity.this, Stock_FacingActivity.class); + intent.putExtra("categoryName", dailyData.getCategory_name()); + intent.putExtra("categoryId", categoryId); + startActivity(intent); } } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_AvailabilityActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_AvailabilityActivity.java index abc3613..4e550fd 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_AvailabilityActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_AvailabilityActivity.java @@ -28,6 +28,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; +import cpm.com.gskmtorange.Database.GSKOrangeDB; import cpm.com.gskmtorange.R; import cpm.com.gskmtorange.xmlGetterSetter.MSL_AvailabilityGetterSetter; @@ -42,7 +43,9 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { ExpandableListAdapter adapter; - String title; + GSKOrangeDB db; + + String categoryName, categoryId; @Override protected void onCreate(Bundle savedInstanceState) { @@ -54,11 +57,16 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { getSupportActionBar().setHomeButtonEnabled(true); getSupportActionBar().setDisplayHomeAsUpEnabled(true); + db = new GSKOrangeDB(this); + db.open(); + expandableListView = (ExpandableListView) findViewById(R.id.expandableListView); txt_mslAvailabilityName = (TextView) findViewById(R.id.txt_mslAvailabilityName); - title = getIntent().getStringExtra("categoryName"); - txt_mslAvailabilityName.setText(title); + categoryName = getIntent().getStringExtra("categoryName"); + categoryId = getIntent().getStringExtra("categoryId"); + + txt_mslAvailabilityName.setText(categoryName); prepareList(); @@ -135,58 +143,22 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { } private void prepareList() { - headerDataList = new ArrayList<>(); - - MSL_AvailabilityGetterSetter msl = new MSL_AvailabilityGetterSetter(); - msl.setBrandName("Parodontax header 1"); - msl.setMbq("1"); - msl.setAvailable("No"); - headerDataList.add(msl); - - msl = new MSL_AvailabilityGetterSetter(); - msl.setBrandName("Parodontax header 2"); - msl.setMbq("2"); - msl.setAvailable("Yes"); - headerDataList.add(msl); - - msl = new MSL_AvailabilityGetterSetter(); - msl.setBrandName("Parodontax header 3"); - msl.setMbq("3"); - msl.setAvailable("Yes"); - headerDataList.add(msl); - - msl = new MSL_AvailabilityGetterSetter(); - msl.setBrandName("Parodontax header 4"); - msl.setMbq("4"); - msl.setAvailable("No"); - headerDataList.add(msl); - - hashMapListHeaderData = new ArrayList<>(); hashMapListChildData = new HashMap<>(); - if (headerDataList.size() > 0) { + //Header + headerDataList = db.getMSL_AvailabilityHeaderData(categoryId); + if (headerDataList.size() > 0) { for (int i = 0; i < headerDataList.size(); i++) { hashMapListHeaderData.add(headerDataList.get(i)); - childDataList = new ArrayList<>(); + //childDataList = new ArrayList<>(); + childDataList = db.getMSL_AvailabilitySKUData(categoryId, headerDataList.get(i).getBrand_id()); - MSL_AvailabilityGetterSetter msl1 = new MSL_AvailabilityGetterSetter(); - msl.setBrandName("Parodontax 1"); - msl.setMbq("1"); - msl.setAvailable("No"); - childDataList.add(msl1); - - msl1 = new MSL_AvailabilityGetterSetter(); - msl.setBrandName("Parodontax 2"); - msl.setMbq("2"); - msl.setAvailable("No"); - childDataList.add(msl1); hashMapListChildData.put(hashMapListHeaderData.get(i), childDataList); } - } adapter = new ExpandableListAdapter(this, hashMapListHeaderData, hashMapListChildData); @@ -234,7 +206,7 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { ImageView img_camera = (ImageView) convertView.findViewById(R.id.img_camera); txt_categoryHeader.setTypeface(null, Typeface.BOLD); - txt_categoryHeader.setText(headerTitle.getBrandName()); + txt_categoryHeader.setText(headerTitle.getSub_category() + "-" + headerTitle.getBrand()); /*img_camera.setOnClickListener(new View.OnClickListener() { @Override @@ -304,15 +276,15 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { holder.lin_category = (LinearLayout) convertView.findViewById(R.id.lin_category); holder.txt_skuName = (TextView) convertView.findViewById(R.id.txt_skuName); - holder.ed_mbq = (EditText) convertView.findViewById(R.id.ed_mbq); + holder.txt_mbq = (TextView) convertView.findViewById(R.id.txt_mbq); holder.toggle_available = (ToggleButton) convertView.findViewById(R.id.toggle_available); convertView.setTag(holder); } else { holder = (ViewHolder) convertView.getTag(); } - holder.txt_skuName.setText(childData.getBrandName()); - holder.ed_mbq.setText(childData.getMbq()); + holder.txt_skuName.setText(childData.getSku()); + holder.txt_mbq.setText(childData.getMrp()); holder.toggle_available.setTextOff("No"); holder.toggle_available.setTextOn("Yes"); @@ -332,9 +304,8 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { } public class ViewHolder { - EditText ed_mbq; CardView cardView; - TextView txt_skuName; + TextView txt_skuName, txt_mbq; ToggleButton toggle_available; LinearLayout lin_category; } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/CategoryGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/CategoryGetterSetter.java index 1674bc9..ec785aa 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/CategoryGetterSetter.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/CategoryGetterSetter.java @@ -6,22 +6,29 @@ package cpm.com.gskmtorange.xmlGetterSetter; public class CategoryGetterSetter { - String category_name; - int category_img = -1; + String category_id, category, category_img; - public String getCategory_name() { - return category_name; + public String getCategory_id() { + return category_id; } - public void setCategory_name(String category_name) { - this.category_name = category_name; + public void setCategory_id(String category_id) { + this.category_id = category_id; } - public int getCategory_img() { + public String getCategory() { + return category; + } + + public void setCategory(String category) { + this.category = category; + } + + public String getCategory_img() { return category_img; } - public void setCategory_img(int category_img) { + public void setCategory_img(String category_img) { this.category_img = category_img; } } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/MSL_AvailabilityGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/MSL_AvailabilityGetterSetter.java index c4d96f2..1fbc71b 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/MSL_AvailabilityGetterSetter.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/MSL_AvailabilityGetterSetter.java @@ -5,29 +5,69 @@ package cpm.com.gskmtorange.xmlGetterSetter; */ public class MSL_AvailabilityGetterSetter { - String brandName, mbq, available; + String sub_category_id, sub_category, brand_id, brand, sku_id, sku, mrp, sku_sequence; - public String getBrandName() { - return brandName; + public String getSub_category_id() { + return sub_category_id; } - public void setBrandName(String brandName) { - this.brandName = brandName; + public void setSub_category_id(String sub_category_id) { + this.sub_category_id = sub_category_id; } - public String getMbq() { - return mbq; + public String getSub_category() { + return sub_category; } - public void setMbq(String mbq) { - this.mbq = mbq; + public void setSub_category(String sub_category) { + this.sub_category = sub_category; } - public String getAvailable() { - return available; + public String getBrand_id() { + return brand_id; } - public void setAvailable(String available) { - this.available = available; + 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 getSku_id() { + return sku_id; + } + + public void setSku_id(String sku_id) { + this.sku_id = sku_id; + } + + public String getSku() { + return sku; + } + + public void setSku(String sku) { + this.sku = sku; + } + + public String getMrp() { + return mrp; + } + + public void setMrp(String mrp) { + this.mrp = mrp; + } + + public String getSku_sequence() { + return sku_sequence; + } + + public void setSku_sequence(String sku_sequence) { + this.sku_sequence = sku_sequence; } } diff --git a/GSKMTOrange/src/main/res/layout/activity_category_wise_performance.xml b/GSKMTOrange/src/main/res/layout/activity_category_wise_performance.xml index 108bc80..4b77c52 100644 --- a/GSKMTOrange/src/main/res/layout/activity_category_wise_performance.xml +++ b/GSKMTOrange/src/main/res/layout/activity_category_wise_performance.xml @@ -29,6 +29,6 @@ android:layout_gravity="bottom|end" android:layout_margin="@dimen/fab_margin" android:backgroundTint="@color/colorPrimary" - app:srcCompat="@drawable/save_icon" /> + app:srcCompat="@drawable/right_arrow" /> diff --git a/GSKMTOrange/src/main/res/layout/activity_daily_data_menu.xml b/GSKMTOrange/src/main/res/layout/activity_daily_data_menu.xml index 86f7248..1617da3 100644 --- a/GSKMTOrange/src/main/res/layout/activity_daily_data_menu.xml +++ b/GSKMTOrange/src/main/res/layout/activity_daily_data_menu.xml @@ -29,6 +29,7 @@ android:layout_gravity="bottom|end" android:layout_margin="@dimen/fab_margin" android:backgroundTint="@color/colorPrimary" + android:visibility="gone" app:srcCompat="@drawable/save_icon" /> diff --git a/GSKMTOrange/src/main/res/layout/content_daily_main_menu.xml b/GSKMTOrange/src/main/res/layout/content_daily_main_menu.xml index 788d0c0..061d5e1 100644 --- a/GSKMTOrange/src/main/res/layout/content_daily_main_menu.xml +++ b/GSKMTOrange/src/main/res/layout/content_daily_main_menu.xml @@ -21,7 +21,7 @@ android:paddingBottom="10dp" android:paddingLeft="20dp" android:paddingTop="10dp" - android:text="Category Performance" + android:text="Daily Data Menu" android:textAppearance="?android:attr/textAppearanceMedium" android:textColor="@android:color/black" /> diff --git a/GSKMTOrange/src/main/res/layout/item_msl_availability_child.xml b/GSKMTOrange/src/main/res/layout/item_msl_availability_child.xml index 4c2a186..3970b89 100644 --- a/GSKMTOrange/src/main/res/layout/item_msl_availability_child.xml +++ b/GSKMTOrange/src/main/res/layout/item_msl_availability_child.xml @@ -61,23 +61,11 @@ android:layout_weight="1.25" android:orientation="vertical"> - - - From 065e43ea5b5e198732792d4d394c149519f47b70 Mon Sep 17 00:00:00 2001 From: Gagan290 Date: Fri, 30 Dec 2016 13:42:13 +0530 Subject: [PATCH 03/12] Merge branch 'master' of https://github.com/CPM-INDIA-SALES-AND-MARKETING-PVT-LTD/GSKORANGEV1 into Category_G # Conflicts: # GSKMTOrange/src/main/AndroidManifest.xml # GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java --- .../main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 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 409addf..26cbea5 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java @@ -49,12 +49,13 @@ public class GSKOrangeDB extends SQLiteOpenHelper { public void onCreate(SQLiteDatabase db) { db.execSQL(TableBean.getJourneyPlan()); + + //Gagan db.execSQL(TableBean.getBrandMaster()); db.execSQL(TableBean.getSkuMaster()); db.execSQL(TableBean.getCategoryMaster()); db.execSQL(TableBean.getSubCategoryMaster()); db.execSQL(TableBean.getDisplayMaster()); - db.execSQL(TableBean.getMappingStock()); db.execSQL(TableBean.getMappingT2p()); } From 0b0043f40fb7ba1242e89abbb795ad8c927a725f Mon Sep 17 00:00:00 2001 From: yadavendras Date: Fri, 30 Dec 2016 15:11:30 +0530 Subject: [PATCH 04/12] new download branch --- .../cpm/com/gskmtorange/Database/GSKOrangeDB.java | 11 +++-------- .../cpm/com/gskmtorange/GetterSetter/StoreBean.java | 2 +- 2 files changed, 4 insertions(+), 9 deletions(-) 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 11ac1b7..66ae885 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java @@ -9,24 +9,19 @@ import android.util.Log; import java.util.ArrayList; - -import cpm.com.gskmtorange.gettersetter.StoreBean; +import cpm.com.gskmtorange.getterSetter.StoreBean; import cpm.com.gskmtorange.xmlGetterSetter.JourneyPlanGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.TableBean; - -import cpm.com.gskmtorange.GetterSetter.StoreBean; -import cpm.com.gskmtorange.constant.CommonString; import cpm.com.gskmtorange.xmlGetterSetter.BrandMasterGetterSetter; -import cpm.com.gskmtorange.xmlGetterSetter.CategoryGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.CategoryMasterGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.DisplayMasterGetterSetter; -import cpm.com.gskmtorange.xmlGetterSetter.JourneyPlanGetterSetter; + import cpm.com.gskmtorange.xmlGetterSetter.MAPPINGT2PGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MappingStockGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.SkuMasterGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.SubCategoryMasterGetterSetter; -import cpm.com.gskmtorange.xmlGetterSetter.TableBean; + /** diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GetterSetter/StoreBean.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GetterSetter/StoreBean.java index 139ca38..a42e0cc 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GetterSetter/StoreBean.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GetterSetter/StoreBean.java @@ -1,4 +1,4 @@ -package cpm.com.gskmtorange.gettersetter; +package cpm.com.gskmtorange.getterSetter; /** * Created by ashishc on 29-12-2016. From 8d4ac80aae07691d7328c6339864b18ee5ca4965 Mon Sep 17 00:00:00 2001 From: yadavendras Date: Fri, 30 Dec 2016 15:28:50 +0530 Subject: [PATCH 05/12] new download branch --- .../main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java | 4 ++-- .../main/java/cpm/com/gskmtorange/GeoTag/GeoTagStoreList.java | 3 +-- .../main/java/cpm/com/gskmtorange/GetterSetter/StoreBean.java | 2 +- .../cpm/com/gskmtorange/dailyentry/StoreListActivity.java | 2 +- .../java/cpm/com/gskmtorange/download/DownloadActivity.java | 2 +- 5 files changed, 6 insertions(+), 7 deletions(-) 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 66ae885..91a6ba9 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java @@ -1,4 +1,4 @@ -package cpm.com.gskmtorange.database; +package cpm.com.gskmtorange.Database; import android.content.ContentValues; import android.content.Context; @@ -9,7 +9,7 @@ import android.util.Log; import java.util.ArrayList; -import cpm.com.gskmtorange.getterSetter.StoreBean; +import cpm.com.gskmtorange.GetterSetter.StoreBean; import cpm.com.gskmtorange.xmlGetterSetter.JourneyPlanGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.TableBean; diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GeoTag/GeoTagStoreList.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GeoTag/GeoTagStoreList.java index 85e989f..b6d7214 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GeoTag/GeoTagStoreList.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GeoTag/GeoTagStoreList.java @@ -22,8 +22,7 @@ import android.widget.Toast; import java.util.ArrayList; -import cpm.com.gskmtorange.dailyentry.StoreListActivity; -import cpm.com.gskmtorange.database.GSKOrangeDB; +import cpm.com.gskmtorange.Database.GSKOrangeDB; import cpm.com.gskmtorange.gettersetter.StoreBean; import cpm.com.gskmtorange.R; import cpm.com.gskmtorange.constant.CommonString; diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GetterSetter/StoreBean.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GetterSetter/StoreBean.java index a42e0cc..31cf805 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GetterSetter/StoreBean.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GetterSetter/StoreBean.java @@ -1,4 +1,4 @@ -package cpm.com.gskmtorange.getterSetter; +package cpm.com.gskmtorange.GetterSetter; /** * Created by ashishc on 29-12-2016. 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 ba2bcee..da25077 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/StoreListActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/StoreListActivity.java @@ -23,7 +23,7 @@ import android.widget.Toast; import java.util.ArrayList; -import cpm.com.gskmtorange.database.GSKOrangeDB; +import cpm.com.gskmtorange.Database.GSKOrangeDB; import cpm.com.gskmtorange.gettersetter.StoreBean; import cpm.com.gskmtorange.R; import cpm.com.gskmtorange.constant.CommonString; 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 db57ba2..b68481a 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/download/DownloadActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/download/DownloadActivity.java @@ -26,7 +26,7 @@ import java.io.StringReader; import java.net.MalformedURLException; -import cpm.com.gskmtorange.database.GSKOrangeDB; +import cpm.com.gskmtorange.Database.GSKOrangeDB; import cpm.com.gskmtorange.R; import cpm.com.gskmtorange.constant.CommonString; From 422da8a54c5d70d4147606f4487bb7e50281b079 Mon Sep 17 00:00:00 2001 From: Gagan290 Date: Fri, 30 Dec 2016 15:37:40 +0530 Subject: [PATCH 06/12] Merge branch 'master' of https://github.com/CPM-INDIA-SALES-AND-MARKETING-PVT-LTD/GSKORANGEV1 into Category_G # Conflicts: # GSKMTOrange/src/main/AndroidManifest.xml # GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java --- .../com/gskmtorange/Database/GSKOrangeDB.java | 4 ++- .../gskmtorange/constant/CommonString.java | 19 +++++++++- .../MSL_AvailabilityActivity.java | 36 ++++++++++++++++--- .../MSL_AvailabilityGetterSetter.java | 19 +++++++++- 4 files changed, 71 insertions(+), 7 deletions(-) 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 26cbea5..4d7c941 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java @@ -419,7 +419,7 @@ public class GSKOrangeDB extends SQLiteOpenHelper { Cursor dbcursor = null; try { - dbcursor = db.rawQuery("Select DISTINCT SK.SKU_ID,SK.SKU,SK.MRP,SK.SKU_SEQUENCE " + + dbcursor = db.rawQuery("Select DISTINCT SK.SKU_ID,SK.SKU,SK.MRP,SK.SKU_SEQUENCE,M.MBQ " + "from MAPPING_STOCK M " + "inner join SKU_MASTER SK " + "on M.SKU_ID=SK.SKU_ID " + @@ -441,6 +441,8 @@ public class GSKOrangeDB extends SQLiteOpenHelper { cd.setSku(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SKU"))); cd.setMrp(dbcursor.getString(dbcursor.getColumnIndexOrThrow("MRP"))); cd.setSku_sequence(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SKU_SEQUENCE"))); + cd.setMbq(dbcursor.getString(dbcursor.getColumnIndexOrThrow("MBQ"))); + cd.setToggleValue("0"); list.add(cd); dbcursor.moveToNext(); 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 5f114c9..4130006 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/constant/CommonString.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/constant/CommonString.java @@ -16,7 +16,6 @@ public class CommonString { public static final String KEY_STOREVISITED_STATUS = "STOREVISITED_STATUS"; - public static final String KEY_PATH = "path"; public static final String KEY_VERSION = "APP_VERSION"; @@ -53,5 +52,23 @@ public class CommonString { public static final String MESSAGE_EXCEPTION = "Problem Occured : Report The Problem To Parinaam "; public static final String MESSAGE_SOCKETEXCEPTION = "Network Communication Failure. Check Your Network Connection"; + public static final String TABLE_INSERT_MSL_AVAILABILITY = "Msl_Availability_Data"; + + public static final String CREATE_TABLE_INSERT_MSL_AVAILABILITY = "CREATE TABLE IF NOT EXISTS " + + TABLE_INSERT_MSL_AVAILABILITY + + "(" + + "KEY_ID" + + " INTEGER PRIMARY KEY AUTOINCREMENT ," + + + "Common_ID" + + " VARCHAR," + + + "POST_WORK_IMAGE" + + " VARCHAR," + + + "POST_WORK_IMAGE1" + + " VARCHAR" + + + ")"; } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_AvailabilityActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_AvailabilityActivity.java index 4e550fd..5347ef8 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_AvailabilityActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_AvailabilityActivity.java @@ -16,6 +16,7 @@ import android.view.inputmethod.InputMethodManager; import android.widget.AbsListView; import android.widget.BaseExpandableListAdapter; import android.widget.Button; +import android.widget.CompoundButton; import android.widget.EditText; import android.widget.ExpandableListView; import android.widget.ImageView; @@ -70,7 +71,7 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { prepareList(); - FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); + final FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); fab.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { @@ -82,6 +83,15 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { expandableListView.setOnScrollListener(new AbsListView.OnScrollListener() { @Override public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) { + int lastItem = firstVisibleItem + visibleItemCount; + + if (firstVisibleItem == 0) { + fab.setVisibility(View.VISIBLE); + } else if (lastItem == totalItemCount) { + fab.setVisibility(View.INVISIBLE); + } else { + fab.setVisibility(View.VISIBLE); + } } @Override @@ -139,7 +149,6 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { return false; } }); - } private void prepareList() { @@ -264,7 +273,7 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { @Override public View getChildView(final int groupPosition, final int childPosition, boolean isLastChild, View convertView, ViewGroup parent) { - MSL_AvailabilityGetterSetter childData = (MSL_AvailabilityGetterSetter) getChild(groupPosition, childPosition); + final MSL_AvailabilityGetterSetter childData = (MSL_AvailabilityGetterSetter) getChild(groupPosition, childPosition); ViewHolder holder = null; if (convertView == null) { @@ -284,11 +293,30 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { } holder.txt_skuName.setText(childData.getSku()); - holder.txt_mbq.setText(childData.getMrp()); + holder.txt_mbq.setText(childData.getMbq()); holder.toggle_available.setTextOff("No"); holder.toggle_available.setTextOn("Yes"); + if (childData.getToggleValue().equals("1")) { + holder.toggle_available.setChecked(true); + } else { + holder.toggle_available.setChecked(false); + } + + holder.toggle_available.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { + @Override + public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { + if (isChecked) { + childData.setToggleValue("1"); + } else { + childData.setToggleValue("0"); + } + + expandableListView.invalidateViews(); + } + }); + return convertView; } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/MSL_AvailabilityGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/MSL_AvailabilityGetterSetter.java index 1fbc71b..ea47eb8 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/MSL_AvailabilityGetterSetter.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/MSL_AvailabilityGetterSetter.java @@ -5,7 +5,8 @@ package cpm.com.gskmtorange.xmlGetterSetter; */ public class MSL_AvailabilityGetterSetter { - String sub_category_id, sub_category, brand_id, brand, sku_id, sku, mrp, sku_sequence; + String sub_category_id, sub_category, brand_id, brand, + sku_id, sku, mrp, sku_sequence, toggleValue,mbq; public String getSub_category_id() { return sub_category_id; @@ -70,4 +71,20 @@ public class MSL_AvailabilityGetterSetter { public void setSku_sequence(String sku_sequence) { this.sku_sequence = sku_sequence; } + + public String getToggleValue() { + return toggleValue; + } + + public void setToggleValue(String toggleValue) { + this.toggleValue = toggleValue; + } + + public String getMbq() { + return mbq; + } + + public void setMbq(String mbq) { + this.mbq = mbq; + } } From 18bd289c1d1be054b0cd73baaea623165c817782 Mon Sep 17 00:00:00 2001 From: Gagan290 Date: Wed, 4 Jan 2017 12:49:55 +0530 Subject: [PATCH 07/12] Merge branch 'master' of https://github.com/CPM-INDIA-SALES-AND-MARKETING-PVT-LTD/GSKORANGEV1 into Category_G # Conflicts: # GSKMTOrange/src/main/AndroidManifest.xml # GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java --- .../com/gskmtorange/Database/GSKOrangeDB.java | 171 +++++++++++++++ .../cpm/com/gskmtorange/MainActivity.java | 2 + .../gskmtorange/constant/CommonString.java | 90 +++++++- .../MSL_AvailabilityActivity.java | 68 +++++- .../gsk_dailyentry/Stock_FacingActivity.java | 203 +++++++++++++----- .../Stock_FacingGetterSetter.java | 107 ++++++++- .../src/main/res/layout/activity_main.xml | 1 - .../src/main/res/layout/app_bar_main.xml | 1 + 8 files changed, 570 insertions(+), 73 deletions(-) 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 4d7c941..470cd79 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java @@ -8,6 +8,8 @@ import android.database.sqlite.SQLiteOpenHelper; import android.util.Log; import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import cpm.com.gskmtorange.GetterSetter.StoreBean; import cpm.com.gskmtorange.constant.CommonString; @@ -20,6 +22,7 @@ import cpm.com.gskmtorange.xmlGetterSetter.MAPPINGT2PGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MSL_AvailabilityGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MappingStockGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.SkuMasterGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.Stock_FacingGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.SubCategoryMasterGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.TableBean; @@ -58,6 +61,11 @@ public class GSKOrangeDB extends SQLiteOpenHelper { db.execSQL(TableBean.getDisplayMaster()); db.execSQL(TableBean.getMappingStock()); db.execSQL(TableBean.getMappingT2p()); + + db.execSQL(CommonString.CREATE_TABLE_INSERT_MSL_AVAILABILITY); + + db.execSQL(CommonString.CREATE_TABLE_INSERT_STOCK_FACING_HEADER); + db.execSQL(CommonString.CREATE_TABLE_INSERT_STOCK_FACING_CHILD); } @Override @@ -332,6 +340,7 @@ public class GSKOrangeDB extends SQLiteOpenHelper { } + //Category List public ArrayList getCategoryListData(String keyAccountId, String storeTypeId, String classId) { ArrayList list = new ArrayList<>(); Cursor dbcursor = null; @@ -373,6 +382,7 @@ public class GSKOrangeDB extends SQLiteOpenHelper { return list; } + //MSL_Availability public ArrayList getMSL_AvailabilityHeaderData(String category_id) { ArrayList list = new ArrayList<>(); Cursor dbcursor = null; @@ -457,4 +467,165 @@ public class GSKOrangeDB extends SQLiteOpenHelper { return list; } + public void InsertMSL_Availability(String storeId, String categoryId, List hashMapListHeaderData, + HashMap> hashMapListChildData) { + 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++) { + MSL_AvailabilityGetterSetter data = hashMapListChildData.get(hashMapListHeaderData.get(i)).get(j); + + values.put("Store_Id", storeId); + values.put("Category_Id", categoryId); + values.put("SKU_ID", data.getSku_id()); + values.put("SKU", data.getSku()); + values.put("SKU_SEQUENCE", data.getSku_sequence()); + values.put("MBQ", data.getMbq()); + values.put("TOGGLE_VALUE", data.getToggleValue()); + + db.insert(CommonString.TABLE_INSERT_MSL_AVAILABILITY, null, values); + } + } + db.setTransactionSuccessful(); + db.endTransaction(); + } catch (Exception ex) { + Log.d("Exception ", " in Insert MSL_Availability " + ex.toString()); + } + } + + //Stock_facing + public ArrayList getStockAndFacingHeaderData(String category_id) { + 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 " + + "from MAPPING_STOCK 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 CA.CATEGORY_ID='" + category_id + "' " + + "order by SB.SUB_CATEGORY,BR.BRAND", null); + + if (dbcursor != null) { + dbcursor.moveToFirst(); + while (!dbcursor.isAfterLast()) { + Stock_FacingGetterSetter cd = new Stock_FacingGetterSetter(); + + 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.setImage1(""); + cd.setImage2(""); + + list.add(cd); + dbcursor.moveToNext(); + } + dbcursor.close(); + return list; + } + } catch (Exception e) { + Log.d("Exception ", "get MSL_AvailabilityHeader!" + e.toString()); + return list; + } + return list; + } + + public ArrayList getStockAndFacingSKUData(String category_id, String brand_id) { + ArrayList list = new ArrayList<>(); + Cursor dbcursor = null; + + try { + dbcursor = db.rawQuery("Select DISTINCT SK.SKU_ID,SK.SKU,SK.MRP,SK.SKU_SEQUENCE,M.MBQ,BR.COMPANY_ID " + + "from MAPPING_STOCK 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 CA.CATEGORY_ID='" + category_id + "' AND BR.BRAND_ID='" + brand_id + "'", null); + + if (dbcursor != null) { + + dbcursor.moveToFirst(); + while (!dbcursor.isAfterLast()) { + Stock_FacingGetterSetter cd = new Stock_FacingGetterSetter(); + + cd.setSku_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SKU_ID"))); + cd.setSku(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SKU"))); + cd.setMrp(dbcursor.getString(dbcursor.getColumnIndexOrThrow("MRP"))); + cd.setSku_sequence(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SKU_SEQUENCE"))); + cd.setMbq(dbcursor.getString(dbcursor.getColumnIndexOrThrow("MBQ"))); + cd.setCompany_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("COMPANY_ID"))); + cd.setStock(""); + cd.setFacing(""); + + list.add(cd); + dbcursor.moveToNext(); + } + dbcursor.close(); + return list; + } + } catch (Exception e) { + Log.d("Exception ", "get MSL_AvailabilityHeader!" + e.toString()); + return list; + } + return list; + } + + public void InsertStock_Facing(String storeId, String categoryId, List hashMapListHeaderData, + HashMap> hashMapListChildData) { + ContentValues values = new ContentValues(); + ContentValues values1 = new ContentValues(); + + try { + db.beginTransaction(); + for (int i = 0; i < hashMapListHeaderData.size(); i++) { + Stock_FacingGetterSetter data1 = hashMapListHeaderData.get(i); + + values1.put("Store_Id", storeId); + values1.put("Category_Id", categoryId); + values1.put("SUB_CATEGORY_ID", data1.getSub_category_id()); + values1.put("SUB_CATEGORY", data1.getSub_category()); + values1.put("BRAND_ID", data1.getBrand_id()); + values1.put("BRAND", data1.getBrand()); + values1.put("IMAGE1", data1.getImage1()); + values1.put("IMAGE2", data1.getImage2()); + + db.insert(CommonString.TABLE_INSERT_STOCK_FACING_HEADER, null, values1); + + for (int j = 0; j < hashMapListChildData.get(hashMapListHeaderData.get(i)).size(); j++) { + Stock_FacingGetterSetter data = hashMapListChildData.get(hashMapListHeaderData.get(i)).get(j); + + values.put("Store_Id", storeId); + values.put("Category_Id", categoryId); + values.put("SKU_ID", data.getSku_id()); + values.put("SKU", data.getSku()); + values.put("SKU_SEQUENCE", data.getSku_sequence()); + values.put("MBQ", data.getMbq()); + values.put("COMPANY_ID", data.getCompany_id()); + values.put("STOCK_VALUE", data.getStock()); + values.put("FACEUP_VALUE", data.getFacing()); + + db.insert(CommonString.TABLE_INSERT_STOCK_FACING_CHILD, null, values); + } + } + db.setTransactionSuccessful(); + db.endTransaction(); + } catch (Exception ex) { + Log.d("Exception ", " in Insert MSL_Availability " + ex.toString()); + } + } } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java index 8b2a9cf..ec70813 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java @@ -23,6 +23,7 @@ import android.webkit.WebView; import android.webkit.WebViewClient; import android.widget.ImageView; import android.widget.TextView; +import android.widget.Toast; import java.io.File; import java.io.FileInputStream; @@ -198,6 +199,7 @@ public class MainActivity extends AppCompatActivity File backupDB = new File(path, backupDBPath); //Snackbar.make(rec_store_data, "Database Exported Successfully", Snackbar.LENGTH_SHORT).show(); + Toast.makeText(MainActivity.this, "Database Exported Successfully", Toast.LENGTH_SHORT).show(); if (currentDB.exists()) { @SuppressWarnings("resource") 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 4130006..b4d5ff1 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/constant/CommonString.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/constant/CommonString.java @@ -60,13 +60,97 @@ public class CommonString { + "KEY_ID" + " INTEGER PRIMARY KEY AUTOINCREMENT ," - + "Common_ID" + + "Store_Id" + " VARCHAR," - + "POST_WORK_IMAGE" + + "Category_Id" + " VARCHAR," - + "POST_WORK_IMAGE1" + + "SKU_ID" + + " VARCHAR," + + + "SKU" + + " VARCHAR," + + + "SKU_SEQUENCE" + + " VARCHAR," + + + "MBQ" + + " VARCHAR," + + + "TOGGLE_VALUE" + + " VARCHAR" + + + ")"; + + + public static final String TABLE_INSERT_STOCK_FACING_HEADER = "Stock_Facing_Header_Data"; + + public static final String CREATE_TABLE_INSERT_STOCK_FACING_HEADER = "CREATE TABLE IF NOT EXISTS " + + TABLE_INSERT_STOCK_FACING_HEADER + + "(" + + "KEY_ID" + + " INTEGER PRIMARY KEY AUTOINCREMENT ," + + + "Store_Id" + + " VARCHAR," + + + "Category_Id" + + " VARCHAR," + + + "SUB_CATEGORY_ID" + + " VARCHAR," + + + "SUB_CATEGORY" + + " VARCHAR," + + + "BRAND_ID" + + " VARCHAR," + + + "BRAND" + + " VARCHAR," + + + "IMAGE1" + + " VARCHAR," + + + "IMAGE2" + + " VARCHAR" + + + ")"; + + public static final String TABLE_INSERT_STOCK_FACING_CHILD = "Stock_Facing_Child_Data"; + + public static final String CREATE_TABLE_INSERT_STOCK_FACING_CHILD = "CREATE TABLE IF NOT EXISTS " + + TABLE_INSERT_STOCK_FACING_CHILD + + "(" + + "KEY_ID" + + " INTEGER PRIMARY KEY AUTOINCREMENT ," + + + "Store_Id" + + " VARCHAR," + + + "Category_Id" + + " VARCHAR," + + + "SKU_ID" + + " VARCHAR," + + + "SKU" + + " VARCHAR," + + + "SKU_SEQUENCE" + + " VARCHAR," + + + "MBQ" + + " VARCHAR," + + + "COMPANY_ID" + + " VARCHAR," + + + "STOCK_VALUE" + + " VARCHAR," + + + "FACEUP_VALUE" + " VARCHAR" + ")"; diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_AvailabilityActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_AvailabilityActivity.java index 5347ef8..41ba3b6 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_AvailabilityActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_AvailabilityActivity.java @@ -1,6 +1,8 @@ package cpm.com.gskmtorange.gsk_dailyentry; +import android.app.AlertDialog; import android.content.Context; +import android.content.DialogInterface; import android.graphics.Typeface; import android.os.Bundle; import android.support.design.widget.FloatingActionButton; @@ -23,6 +25,7 @@ import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.RelativeLayout; import android.widget.TextView; +import android.widget.Toast; import android.widget.ToggleButton; import java.util.ArrayList; @@ -46,7 +49,7 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { GSKOrangeDB db; - String categoryName, categoryId; + String categoryName, categoryId, storeId; @Override protected void onCreate(Bundle savedInstanceState) { @@ -66,6 +69,7 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { categoryName = getIntent().getStringExtra("categoryName"); categoryId = getIntent().getStringExtra("categoryId"); + storeId = ""; txt_mslAvailabilityName.setText(categoryName); @@ -75,8 +79,43 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { 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(); + + //if (validateData(listDataHeader, listDataChild)) { + AlertDialog.Builder builder = new AlertDialog.Builder(MSL_AvailabilityActivity.this); + builder.setMessage("Are you sure you want to save") + .setCancelable(false) + .setPositiveButton("Yes", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + db.open(); + + db.InsertMSL_Availability(storeId,categoryId, hashMapListHeaderData, hashMapListChildData); + + Toast.makeText(getApplicationContext(), "Data has been saved", Toast.LENGTH_LONG).show(); + finish(); + overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out); + } + }) + .setNegativeButton("No", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + dialog.cancel(); + } + }); + AlertDialog alert = builder.create(); + alert.show(); + + /*} else { + AlertDialog.Builder builder = new AlertDialog.Builder(MSL_AvailabilityActivity.this); + builder.setMessage("Fill the value or fill 0 ") + .setCancelable(false) + .setPositiveButton("OK", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + dialog.dismiss(); + } + }); + AlertDialog alert = builder.create(); + alert.show(); + }*/ + } }); @@ -103,7 +142,7 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { getCurrentFocus().clearFocus(); } - expandableListView.invalidateViews(); + //expandableListView.invalidateViews(); } }); @@ -287,6 +326,10 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { holder.txt_skuName = (TextView) convertView.findViewById(R.id.txt_skuName); holder.txt_mbq = (TextView) convertView.findViewById(R.id.txt_mbq); holder.toggle_available = (ToggleButton) convertView.findViewById(R.id.toggle_available); + + holder.toggle_available.setTextOff("No"); + holder.toggle_available.setTextOn("Yes"); + convertView.setTag(holder); } else { holder = (ViewHolder) convertView.getTag(); @@ -295,14 +338,11 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { holder.txt_skuName.setText(childData.getSku()); holder.txt_mbq.setText(childData.getMbq()); - holder.toggle_available.setTextOff("No"); - holder.toggle_available.setTextOn("Yes"); - - if (childData.getToggleValue().equals("1")) { - holder.toggle_available.setChecked(true); + /*if (childData.getToggleValue().equals("1")) { + holder.toggle_available.setText("Yes"); } else { - holder.toggle_available.setChecked(false); - } + holder.toggle_available.setText("No"); + }*/ holder.toggle_available.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override @@ -317,6 +357,12 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { } }); + if (childData.getToggleValue().equals("1")) { + holder.toggle_available.setChecked(true); + } else { + holder.toggle_available.setChecked(false); + } + return convertView; } 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 478891c..aaeb410 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 @@ -1,6 +1,8 @@ package cpm.com.gskmtorange.gsk_dailyentry; +import android.app.AlertDialog; import android.content.Context; +import android.content.DialogInterface; import android.content.Intent; import android.content.pm.ApplicationInfo; import android.content.pm.PackageManager; @@ -28,6 +30,7 @@ import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.RelativeLayout; import android.widget.TextView; +import android.widget.Toast; import android.widget.ToggleButton; import java.io.File; @@ -38,6 +41,7 @@ import java.util.Date; import java.util.HashMap; import java.util.List; +import cpm.com.gskmtorange.Database.GSKOrangeDB; import cpm.com.gskmtorange.R; import cpm.com.gskmtorange.xmlGetterSetter.MSL_AvailabilityGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.Stock_FacingGetterSetter; @@ -52,11 +56,13 @@ public class Stock_FacingActivity extends AppCompatActivity { HashMap> hashMapListChildData; ExpandableListAdapter adapter; + GSKOrangeDB db; - String title; + String categoryName, categoryId, storeId; String path = "", str = "", _pathforcheck = "", img1 = ""; static int child_position = -1; + boolean isDialogOpen = true; @Override protected void onCreate(Bundle savedInstanceState) { @@ -68,11 +74,17 @@ public class Stock_FacingActivity extends AppCompatActivity { getSupportActionBar().setHomeButtonEnabled(true); getSupportActionBar().setDisplayHomeAsUpEnabled(true); + db = new GSKOrangeDB(this); + db.open(); + expandableListView = (ExpandableListView) findViewById(R.id.expandableListView); txt_stockFacingName = (TextView) findViewById(R.id.txt_stockFacingName); - title = getIntent().getStringExtra("categoryName"); - txt_stockFacingName.setText(title); + categoryName = getIntent().getStringExtra("categoryName"); + categoryId = getIntent().getStringExtra("categoryId"); + storeId = ""; + + txt_stockFacingName.setText(categoryName); prepareList(); @@ -82,8 +94,44 @@ public class Stock_FacingActivity extends AppCompatActivity { 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();*/ + + //if (validateData(listDataHeader, listDataChild)) { + AlertDialog.Builder builder = new AlertDialog.Builder(Stock_FacingActivity.this); + builder.setMessage("Are you sure you want to save") + .setCancelable(false) + .setPositiveButton("Yes", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + db.open(); + + db.InsertStock_Facing(storeId, categoryId, hashMapListHeaderData, hashMapListChildData); + + Toast.makeText(getApplicationContext(), "Data has been saved", Toast.LENGTH_LONG).show(); + finish(); + overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out); + } + }) + .setNegativeButton("No", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + dialog.cancel(); + } + }); + AlertDialog alert = builder.create(); + alert.show(); + + /*} else { + AlertDialog.Builder builder = new AlertDialog.Builder(MSL_AvailabilityActivity.this); + builder.setMessage("Fill the value or fill 0 ") + .setCancelable(false) + .setPositiveButton("OK", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + dialog.dismiss(); + } + }); + AlertDialog alert = builder.create(); + alert.show(); + }*/ } }); @@ -150,58 +198,23 @@ public class Stock_FacingActivity extends AppCompatActivity { } private void prepareList() { - headerDataList = new ArrayList<>(); - - Stock_FacingGetterSetter msl = new Stock_FacingGetterSetter(); - msl.setBrandName("Parodontax header 1"); - msl.setMbq("1"); - msl.setAvailable("No"); - headerDataList.add(msl); - - msl = new Stock_FacingGetterSetter(); - msl.setBrandName("Parodontax header 2"); - msl.setMbq("2"); - msl.setAvailable("Yes"); - headerDataList.add(msl); - - msl = new Stock_FacingGetterSetter(); - msl.setBrandName("Parodontax header 3"); - msl.setMbq("3"); - msl.setAvailable("Yes"); - headerDataList.add(msl); - - msl = new Stock_FacingGetterSetter(); - msl.setBrandName("Parodontax header 4"); - msl.setMbq("4"); - msl.setAvailable("No"); - headerDataList.add(msl); - - hashMapListHeaderData = new ArrayList<>(); hashMapListChildData = new HashMap<>(); + //Header + headerDataList = db.getStockAndFacingHeaderData(categoryId); + if (headerDataList.size() > 0) { for (int i = 0; i < headerDataList.size(); i++) { hashMapListHeaderData.add(headerDataList.get(i)); - childDataList = new ArrayList<>(); + //childDataList = new ArrayList<>(); + childDataList = db.getStockAndFacingSKUData(categoryId, headerDataList.get(i).getBrand_id()); - Stock_FacingGetterSetter msl1 = new Stock_FacingGetterSetter(); - msl.setBrandName("Parodontax 1"); - msl.setMbq("1"); - msl.setAvailable("No"); - childDataList.add(msl1); - - msl1 = new Stock_FacingGetterSetter(); - msl.setBrandName("Parodontax 2"); - msl.setMbq("2"); - msl.setAvailable("No"); - childDataList.add(msl1); hashMapListChildData.put(hashMapListHeaderData.get(i), childDataList); } - } adapter = new ExpandableListAdapter(this, hashMapListHeaderData, hashMapListChildData); @@ -252,7 +265,7 @@ public class Stock_FacingActivity extends AppCompatActivity { ImageView img_edit = (ImageView) convertView.findViewById(R.id.img_edit); txt_stockFaceupHeader.setTypeface(null, Typeface.BOLD); - txt_stockFaceupHeader.setText(headerTitle.getBrandName()); + txt_stockFaceupHeader.setText(headerTitle.getSub_category() + "-" + headerTitle.getBrand()); img_camera1.setOnClickListener(new View.OnClickListener() { @Override @@ -338,7 +351,7 @@ public class Stock_FacingActivity extends AppCompatActivity { @Override public View getChildView(final int groupPosition, final int childPosition, boolean isLastChild, View convertView, ViewGroup parent) { - Stock_FacingGetterSetter childData = (Stock_FacingGetterSetter) getChild(groupPosition, childPosition); + final Stock_FacingGetterSetter childData = (Stock_FacingGetterSetter) getChild(groupPosition, childPosition); ViewHolder holder = null; if (convertView == null) { @@ -357,8 +370,100 @@ public class Stock_FacingActivity extends AppCompatActivity { holder = (ViewHolder) convertView.getTag(); } - holder.txt_skuName.setText(childData.getBrandName()); - holder.ed_stock.setText(childData.getMbq()); + holder.txt_skuName.setText(childData.getSku()); + + if (childData.getCompany_id().equals("1")) { + holder.txt_skuName.setTextColor(getResources().getColor(R.color.colorPrimaryDark)); + } else { + holder.txt_skuName.setTextColor(getResources().getColor(R.color.black)); + } + + + if (childData.getStock().equals("0")) { + holder.ed_facing.setEnabled(false); + } else { + holder.ed_facing.setEnabled(true); + } + + final ViewHolder finalHolder = holder; + holder.ed_stock.setOnFocusChangeListener(new View.OnFocusChangeListener() { + @Override + public void onFocusChange(View v, boolean hasFocus) { + + final EditText caption = (EditText) v; + String edStock = caption.getText().toString(); + + if (!edStock.equals("")) { + String stock = edStock.replaceFirst("^0+(?!$)", ""); + childData.setStock(stock); + + if (edStock.equals("0")) { + childData.setFacing("0"); + + finalHolder.ed_facing.setEnabled(false); + } else { + childData.setFacing(childData.getFacing()); + finalHolder.ed_facing.setEnabled(true); + } + } else { + childData.setStock(""); + finalHolder.ed_facing.setEnabled(true); + } + } + }); + + holder.ed_stock.setText(childData.getStock()); + + holder.ed_facing.setOnFocusChangeListener(new View.OnFocusChangeListener() { + @Override + public void onFocusChange(View v, boolean hasFocus) { + final EditText caption = (EditText) v; + final String edFaceup = caption.getText().toString().replaceFirst("^0+(?!$)", ""); + + if (!childData.getStock().equals("")) { + if (!edFaceup.equals("")) { + if (Integer.parseInt(edFaceup) <= Integer.parseInt(childData.getStock())) { + childData.setFacing(edFaceup); + } else { + if (isDialogOpen) { + isDialogOpen = !isDialogOpen; + AlertDialog.Builder builder = new AlertDialog.Builder(Stock_FacingActivity.this); + builder.setMessage("Faceup can not be greater than stock value") + .setCancelable(false) + .setPositiveButton("OK", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + dialog.dismiss(); + isDialogOpen = !isDialogOpen; + } + }); + AlertDialog alert = builder.create(); + alert.show(); + } + } + } else { + childData.setFacing(""); + } + } else { + if (isDialogOpen) { + isDialogOpen = !isDialogOpen; + AlertDialog.Builder builder = new AlertDialog.Builder(Stock_FacingActivity.this); + builder.setMessage("First fill the stock value") + .setCancelable(false) + .setPositiveButton("OK", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + dialog.dismiss(); + isDialogOpen = !isDialogOpen; + } + }); + AlertDialog alert = builder.create(); + alert.show(); + } + } + } + }); + + holder.ed_facing.setText(childData.getFacing()); + return convertView; } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/Stock_FacingGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/Stock_FacingGetterSetter.java index bb2b594..960d9ff 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/Stock_FacingGetterSetter.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/Stock_FacingGetterSetter.java @@ -5,14 +5,87 @@ package cpm.com.gskmtorange.xmlGetterSetter; */ public class Stock_FacingGetterSetter { - String brandName, mbq, available; + String sub_category_id, sub_category, brand_id, brand, + sku_id, sku, mrp, sku_sequence, stock, facing, mbq, company_id, image1, image2; - public String getBrandName() { - return brandName; + public String getSub_category_id() { + return sub_category_id; } - public void setBrandName(String brandName) { - this.brandName = brandName; + 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 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 getSku_id() { + return sku_id; + } + + public void setSku_id(String sku_id) { + this.sku_id = sku_id; + } + + public String getSku() { + return sku; + } + + public void setSku(String sku) { + this.sku = sku; + } + + public String getMrp() { + return mrp; + } + + public void setMrp(String mrp) { + this.mrp = mrp; + } + + public String getSku_sequence() { + return sku_sequence; + } + + public void setSku_sequence(String sku_sequence) { + this.sku_sequence = sku_sequence; + } + + public String getStock() { + return stock; + } + + public void setStock(String stock) { + this.stock = stock; + } + + public String getFacing() { + return facing; + } + + public void setFacing(String facing) { + this.facing = facing; } public String getMbq() { @@ -23,11 +96,27 @@ public class Stock_FacingGetterSetter { this.mbq = mbq; } - public String getAvailable() { - return available; + public String getCompany_id() { + return company_id; } - public void setAvailable(String available) { - this.available = available; + public void setCompany_id(String company_id) { + this.company_id = company_id; + } + + public String getImage1() { + return image1; + } + + public void setImage1(String image1) { + this.image1 = image1; + } + + public String getImage2() { + return image2; + } + + public void setImage2(String image2) { + this.image2 = image2; } } diff --git a/GSKMTOrange/src/main/res/layout/activity_main.xml b/GSKMTOrange/src/main/res/layout/activity_main.xml index bb289f8..a7032f4 100644 --- a/GSKMTOrange/src/main/res/layout/activity_main.xml +++ b/GSKMTOrange/src/main/res/layout/activity_main.xml @@ -19,7 +19,6 @@ android:layout_height="match_parent" android:layout_gravity="start" android:fitsSystemWindows="true" - app:menu="@menu/activity_main_drawer" /> diff --git a/GSKMTOrange/src/main/res/layout/app_bar_main.xml b/GSKMTOrange/src/main/res/layout/app_bar_main.xml index 32d35b4..760fe10 100644 --- a/GSKMTOrange/src/main/res/layout/app_bar_main.xml +++ b/GSKMTOrange/src/main/res/layout/app_bar_main.xml @@ -5,6 +5,7 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" + android:id="@+id/coordinate" tools:context="cpm.com.gskmtorange.MainActivity"> Date: Wed, 4 Jan 2017 16:41:37 +0530 Subject: [PATCH 08/12] Merge branch 'master' of https://github.com/CPM-INDIA-SALES-AND-MARKETING-PVT-LTD/GSKORANGEV1 into Category_G # Conflicts: # GSKMTOrange/src/main/AndroidManifest.xml # GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java --- .../com/gskmtorange/Database/GSKOrangeDB.java | 232 ++++++++++++++++++ .../gskmtorange/constant/CommonString.java | 6 + .../MSL_AvailabilityActivity.java | 12 +- .../gsk_dailyentry/Stock_FacingActivity.java | 22 +- 4 files changed, 263 insertions(+), 9 deletions(-) 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 470cd79..13c6ae6 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java @@ -480,6 +480,7 @@ public class GSKOrangeDB extends SQLiteOpenHelper { values.put("Store_Id", storeId); values.put("Category_Id", categoryId); + values.put("Brand_Id", hashMapListHeaderData.get(i).getBrand_id()); values.put("SKU_ID", data.getSku_id()); values.put("SKU", data.getSku()); values.put("SKU_SEQUENCE", data.getSku_sequence()); @@ -496,6 +497,98 @@ public class GSKOrangeDB extends SQLiteOpenHelper { } } + public ArrayList getMSL_AvailabilitySKU_AfterSaveData(String category_id, String brand_id) { + ArrayList list = new ArrayList<>(); + Cursor dbcursor = null; + + try { + dbcursor = db.rawQuery("Select * from Msl_Availability_Data " + + "where category_id='" + category_id + "' and Brand_Id='" + brand_id + "'", null); + + if (dbcursor != null) { + dbcursor.moveToFirst(); + while (!dbcursor.isAfterLast()) { + MSL_AvailabilityGetterSetter cd = new MSL_AvailabilityGetterSetter(); + + cd.setSku_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SKU_ID"))); + cd.setSku(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SKU"))); + cd.setSku_sequence(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SKU_SEQUENCE"))); + cd.setMbq(dbcursor.getString(dbcursor.getColumnIndexOrThrow("MBQ"))); + cd.setToggleValue(dbcursor.getString(dbcursor.getColumnIndexOrThrow("TOGGLE_VALUE"))); + + list.add(cd); + dbcursor.moveToNext(); + } + dbcursor.close(); + return list; + } + } catch (Exception e) { + Log.d("Exception ", "get MSL_Availability Sku After Save Data!" + e.toString()); + return list; + } + return list; + } + + public boolean checkMsl_AvailabilityData(String store_id, String category_id) { + Log.d("MSL_Availability ", "Stock data--------------->Start<------------"); + ArrayList list = new ArrayList<>(); + Cursor dbcursor = null; + + try { + dbcursor = db.rawQuery("Select * from Msl_Availability_Data " + + "where category_id='" + category_id + "' and Store_Id='" + store_id + "'", null); + + if (dbcursor != null) { + if (dbcursor.moveToFirst()) { + do { + MSL_AvailabilityGetterSetter sb = new MSL_AvailabilityGetterSetter(); + + sb.setSku_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SKU_ID"))); + list.add(sb); + } while (dbcursor.moveToNext()); + } + dbcursor.close(); + + if (list.size() > 0) { + return true; + } else { + return false; + } + } + } catch (Exception e) { + Log.d("Exception ", "when fetching Records!!!!!!!!!!!!!!!!!!!!!" + e.toString()); + return false; + } + + Log.d("MSL_Availability ", "midday---------------------->Stop<-----------"); + return false; + } + + public void updateMSL_Availability(String storeId, String categoryId, List hashMapListHeaderData, + HashMap> hashMapListChildData) { + 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++) { + MSL_AvailabilityGetterSetter data = hashMapListChildData.get(hashMapListHeaderData.get(i)).get(j); + + values.put("TOGGLE_VALUE", data.getToggleValue()); + + db.update(CommonString.TABLE_INSERT_MSL_AVAILABILITY, values, + "Brand_Id ='" + hashMapListHeaderData.get(i).getBrand_id() + "' AND SKU_ID ='" + data.getSku_id() + + "' AND Category_Id='" + categoryId + "'", null); + } + } + db.setTransactionSuccessful(); + db.endTransaction(); + } catch (Exception ex) { + Log.d("Exception ", " in Insert MSL_Availability " + ex.toString()); + } + } + //Stock_facing public ArrayList getStockAndFacingHeaderData(String category_id) { ArrayList list = new ArrayList<>(); @@ -611,6 +704,7 @@ public class GSKOrangeDB extends SQLiteOpenHelper { values.put("Store_Id", storeId); values.put("Category_Id", categoryId); + values.put("Brand_Id", hashMapListHeaderData.get(i).getBrand_id()); values.put("SKU_ID", data.getSku_id()); values.put("SKU", data.getSku()); values.put("SKU_SEQUENCE", data.getSku_sequence()); @@ -628,4 +722,142 @@ public class GSKOrangeDB extends SQLiteOpenHelper { Log.d("Exception ", " in Insert MSL_Availability " + ex.toString()); } } + + public ArrayList getStockAndFacingHeader_AfterSaveData(String category_id) { + ArrayList list = new ArrayList<>(); + Cursor dbcursor = null; + + try { + dbcursor = db.rawQuery("Select * from Stock_Facing_Header_Data " + + "where category_id='" + category_id + "'", null); + + if (dbcursor != null) { + dbcursor.moveToFirst(); + while (!dbcursor.isAfterLast()) { + Stock_FacingGetterSetter cd = new Stock_FacingGetterSetter(); + + 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.setImage1(dbcursor.getString(dbcursor.getColumnIndexOrThrow("IMAGE1"))); + cd.setImage2(dbcursor.getString(dbcursor.getColumnIndexOrThrow("IMAGE2"))); + + list.add(cd); + dbcursor.moveToNext(); + } + dbcursor.close(); + return list; + } + } catch (Exception e) { + Log.d("Exception ", "get after save Stock_FacingHeader!" + e.toString()); + return list; + } + return list; + } + + public ArrayList getStockAndFacingSKU_AfterSaveData(String category_id, String brand_id) { + ArrayList list = new ArrayList<>(); + Cursor dbcursor = null; + + try { + dbcursor = db.rawQuery("Select * from Stock_Facing_Child_Data " + + "where category_id='" + category_id + "' and Brand_Id='" + brand_id + "'", null); + + if (dbcursor != null) { + dbcursor.moveToFirst(); + while (!dbcursor.isAfterLast()) { + Stock_FacingGetterSetter cd = new Stock_FacingGetterSetter(); + + cd.setSku_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SKU_ID"))); + cd.setSku(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SKU"))); + cd.setSku_sequence(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SKU_SEQUENCE"))); + cd.setMbq(dbcursor.getString(dbcursor.getColumnIndexOrThrow("MBQ"))); + cd.setCompany_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("COMPANY_ID"))); + cd.setStock(dbcursor.getString(dbcursor.getColumnIndexOrThrow("STOCK_VALUE"))); + cd.setFacing(dbcursor.getString(dbcursor.getColumnIndexOrThrow("FACEUP_VALUE"))); + + list.add(cd); + dbcursor.moveToNext(); + } + dbcursor.close(); + return list; + } + } catch (Exception e) { + Log.d("Exception ", "get Stock_Facing Sku After Save Data!" + e.toString()); + return list; + } + return list; + } + + public boolean checkStockAndFacingData(String store_id, String category_id) { + Log.d("Stock_Facing ", "Stock data--------------->Start<------------"); + ArrayList list = new ArrayList<>(); + Cursor dbcursor = null; + + try { + dbcursor = db.rawQuery("Select * from Stock_Facing_Child_Data " + + "where category_id='" + category_id + "' and Store_Id='" + store_id + "'", null); + + if (dbcursor != null) { + if (dbcursor.moveToFirst()) { + do { + Stock_FacingGetterSetter sb = new Stock_FacingGetterSetter(); + + sb.setSku_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SKU_ID"))); + list.add(sb); + } while (dbcursor.moveToNext()); + } + dbcursor.close(); + + if (list.size() > 0) { + return true; + } else { + return false; + } + } + } catch (Exception e) { + Log.d("Exception ", "when fetching Records!!!!!!!!!!!!!!!!!!!!!" + e.toString()); + return false; + } + + Log.d("Stock_Facing ", "midday---------------------->Stop<-----------"); + return false; + } + + public void updateStockAndFacing(String storeId, String categoryId, List hashMapListHeaderData, + HashMap> hashMapListChildData) { + ContentValues values = new ContentValues(); + ContentValues values1 = new ContentValues(); + + try { + db.beginTransaction(); + for (int i = 0; i < hashMapListHeaderData.size(); i++) { + Stock_FacingGetterSetter data1 = hashMapListHeaderData.get(i); + + values1.put("IMAGE1", data1.getImage1()); + values1.put("IMAGE2", data1.getImage2()); + + //db.insert(CommonString.TABLE_INSERT_STOCK_FACING_HEADER, null, values1); + db.update(CommonString.TABLE_INSERT_STOCK_FACING_HEADER, values1, + "Category_Id='" + categoryId + "'", null); + + for (int j = 0; j < hashMapListChildData.get(hashMapListHeaderData.get(i)).size(); j++) { + Stock_FacingGetterSetter data = hashMapListChildData.get(hashMapListHeaderData.get(i)).get(j); + + values.put("STOCK_VALUE", data.getStock()); + values.put("FACEUP_VALUE", data.getFacing()); + + //db.insert(CommonString.TABLE_INSERT_STOCK_FACING_CHILD, null, values); + db.update(CommonString.TABLE_INSERT_STOCK_FACING_CHILD, values, + "Brand_Id ='" + hashMapListHeaderData.get(i).getBrand_id() + "' AND SKU_ID ='" + data.getSku_id() + + "' AND Category_Id='" + categoryId + "'", null); + } + } + db.setTransactionSuccessful(); + db.endTransaction(); + } catch (Exception ex) { + Log.d("Exception ", " in Insert MSL_Availability " + ex.toString()); + } + } } 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 b4d5ff1..0114124 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/constant/CommonString.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/constant/CommonString.java @@ -66,6 +66,9 @@ public class CommonString { + "Category_Id" + " VARCHAR," + + "Brand_Id" + + " VARCHAR," + + "SKU_ID" + " VARCHAR," @@ -132,6 +135,9 @@ public class CommonString { + "Category_Id" + " VARCHAR," + + "Brand_Id" + + " VARCHAR," + + "SKU_ID" + " VARCHAR," diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_AvailabilityActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_AvailabilityActivity.java index 41ba3b6..dddbdf4 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_AvailabilityActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_AvailabilityActivity.java @@ -88,7 +88,11 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { public void onClick(DialogInterface dialog, int id) { db.open(); - db.InsertMSL_Availability(storeId,categoryId, hashMapListHeaderData, hashMapListChildData); + if (db.checkMsl_AvailabilityData(storeId, categoryId)) { + db.updateMSL_Availability(storeId, categoryId, hashMapListHeaderData, hashMapListChildData); + } else { + db.InsertMSL_Availability(storeId, categoryId, hashMapListHeaderData, hashMapListChildData); + } Toast.makeText(getApplicationContext(), "Data has been saved", Toast.LENGTH_LONG).show(); finish(); @@ -202,8 +206,10 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { hashMapListHeaderData.add(headerDataList.get(i)); //childDataList = new ArrayList<>(); - childDataList = db.getMSL_AvailabilitySKUData(categoryId, headerDataList.get(i).getBrand_id()); - + childDataList = db.getMSL_AvailabilitySKU_AfterSaveData(categoryId, headerDataList.get(i).getBrand_id()); + if (!(childDataList.size() > 0)) { + childDataList = db.getMSL_AvailabilitySKUData(categoryId, headerDataList.get(i).getBrand_id()); + } hashMapListChildData.put(hashMapListHeaderData.get(i), childDataList); } 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 aaeb410..4b64158 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 @@ -104,8 +104,13 @@ public class Stock_FacingActivity extends AppCompatActivity { .setPositiveButton("Yes", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int id) { db.open(); + //db.InsertStock_Facing(storeId, categoryId, hashMapListHeaderData, hashMapListChildData); - db.InsertStock_Facing(storeId, categoryId, hashMapListHeaderData, hashMapListChildData); + if (db.checkStockAndFacingData(storeId, categoryId)) { + db.updateStockAndFacing(storeId, categoryId, hashMapListHeaderData, hashMapListChildData); + } else { + db.InsertStock_Facing(storeId, categoryId, hashMapListHeaderData, hashMapListChildData); + } Toast.makeText(getApplicationContext(), "Data has been saved", Toast.LENGTH_LONG).show(); finish(); @@ -201,17 +206,22 @@ public class Stock_FacingActivity extends AppCompatActivity { hashMapListHeaderData = new ArrayList<>(); hashMapListChildData = new HashMap<>(); - //Header - headerDataList = db.getStockAndFacingHeaderData(categoryId); + //Header Data + headerDataList = db.getStockAndFacingHeader_AfterSaveData(categoryId); + if (!(headerDataList.size() > 0)) { + headerDataList = db.getStockAndFacingHeaderData(categoryId); + } if (headerDataList.size() > 0) { for (int i = 0; i < headerDataList.size(); i++) { hashMapListHeaderData.add(headerDataList.get(i)); - //childDataList = new ArrayList<>(); - childDataList = db.getStockAndFacingSKUData(categoryId, headerDataList.get(i).getBrand_id()); - + //Child Data + childDataList = db.getStockAndFacingSKU_AfterSaveData(categoryId, headerDataList.get(i).getBrand_id()); + if (!(childDataList.size() > 0)) { + childDataList = db.getStockAndFacingSKUData(categoryId, headerDataList.get(i).getBrand_id()); + } hashMapListChildData.put(hashMapListHeaderData.get(i), childDataList); } From e0ed5b560e1bc913eea3978346b5a76da3359454 Mon Sep 17 00:00:00 2001 From: Gagan290 Date: Wed, 4 Jan 2017 18:09:32 +0530 Subject: [PATCH 09/12] Merge branch 'master' of https://github.com/CPM-INDIA-SALES-AND-MARKETING-PVT-LTD/GSKORANGEV1 into Category_G # Conflicts: # GSKMTOrange/src/main/AndroidManifest.xml # GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java --- .../gsk_dailyentry/CategoryListActivity.java | 18 ++---------- .../CategoryWisePerformanceActivity.java | 3 +- .../gsk_dailyentry/DailyDataMenuActivity.java | 29 ++++++++++++------- .../MSL_AvailabilityActivity.java | 3 +- .../gsk_dailyentry/Stock_FacingActivity.java | 3 +- .../res/layout/content_msl__availability.xml | 6 ++-- GSKMTOrange/src/main/res/values/strings.xml | 25 ++++++++++++++-- 7 files changed, 51 insertions(+), 36 deletions(-) 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 319d564..329d695 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 @@ -49,7 +49,8 @@ public class CategoryListActivity extends AppCompatActivity { db.open(); txt_categoryName = (TextView) findViewById(R.id.txt_categoryName); - txt_categoryName.setText("Category List"); + //txt_categoryName.setText("Category List"); + txt_categoryName.setText(getResources().getString(R.string.title_activity_category_list)); FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); fab.setOnClickListener(new View.OnClickListener() { @@ -68,21 +69,6 @@ public class CategoryListActivity extends AppCompatActivity { recyclerView = (RecyclerView) findViewById(R.id.recyclerView); categoryList = new ArrayList<>(); - /*CategoryGetterSetter data = new CategoryGetterSetter(); - data.setCategory_name("Oral Health"); - data.setCategory_img(R.drawable.category); - categoryList.add(data); - - data = new CategoryGetterSetter(); - data.setCategory_name("Nutritionals"); - data.setCategory_img(R.drawable.category); - categoryList.add(data); - - data = new CategoryGetterSetter(); - data.setCategory_name("Wellness"); - data.setCategory_img(R.drawable.category); - categoryList.add(data);*/ - categoryList = db.getCategoryListData("1", "1", "1"); adapter = new CategoryListAdapter(CategoryListActivity.this, categoryList); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/CategoryWisePerformanceActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/CategoryWisePerformanceActivity.java index a7686ea..e7985aa 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/CategoryWisePerformanceActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/CategoryWisePerformanceActivity.java @@ -47,7 +47,8 @@ public class CategoryWisePerformanceActivity extends AppCompatActivity { categoryName = getIntent().getStringExtra("categoryName"); categoryId = getIntent().getStringExtra("categoryId"); - txt_categoryName.setText("CategoryWise Performance " + categoryName); + //txt_categoryName.setText("CategoryWise Performance " + categoryName); + txt_categoryName.setText(getResources().getString(R.string.title_activity_category_wise_performance) + " " + categoryName); FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); fab.setOnClickListener(new View.OnClickListener() { 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 a219fa7..9afdba0 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 @@ -48,7 +48,8 @@ public class DailyDataMenuActivity extends AppCompatActivity { categoryName = getIntent().getStringExtra("categoryName"); categoryId = getIntent().getStringExtra("categoryId"); - txt_categoryName.setText("Daily Data Menu - " + categoryName); + //txt_categoryName.setText("Daily Data Menu - " + categoryName); + txt_categoryName.setText(getResources().getString(R.string.title_activity_daily_main_menu) + " - " + categoryName); /*FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); fab.setOnClickListener(new View.OnClickListener() { @@ -67,37 +68,44 @@ public class DailyDataMenuActivity extends AppCompatActivity { categoryList = new ArrayList<>(); DailyDataMenuGetterSetter data = new DailyDataMenuGetterSetter(); - data.setCategory_name("MSL Availability"); + //data.setCategory_name("MSL Availability"); + data.setCategory_name(getResources().getString(R.string.daily_data_menu_msl_availability)); data.setCategory_img(R.drawable.category); categoryList.add(data); data = new DailyDataMenuGetterSetter(); - data.setCategory_name("Stock & Facing"); + data.setCategory_name(getResources().getString(R.string.daily_data_menu_stock_facing)); + //data.setCategory_name("Stock & Facing"); data.setCategory_img(R.drawable.category); categoryList.add(data); data = new DailyDataMenuGetterSetter(); - data.setCategory_name("T2P Compliance"); + data.setCategory_name(getResources().getString(R.string.daily_data_menu_t2p)); + //data.setCategory_name("T2P Compliance"); data.setCategory_img(R.drawable.category); categoryList.add(data); data = new DailyDataMenuGetterSetter(); - data.setCategory_name("Additional Visibility"); + data.setCategory_name(getResources().getString(R.string.daily_data_menu_additional_visibility)); + //data.setCategory_name("Additional Visibility"); data.setCategory_img(R.drawable.category); categoryList.add(data); data = new DailyDataMenuGetterSetter(); - data.setCategory_name("Promo Compliance"); + data.setCategory_name(getResources().getString(R.string.daily_data_menu_promo_compliance)); + //data.setCategory_name("Promo Compliance"); data.setCategory_img(R.drawable.category); categoryList.add(data); data = new DailyDataMenuGetterSetter(); - data.setCategory_name("Competition Visibility"); + data.setCategory_name(getResources().getString(R.string.daily_data_menu_competition_tracking)); + //data.setCategory_name("Competition Tracking"); data.setCategory_img(R.drawable.category); categoryList.add(data); data = new DailyDataMenuGetterSetter(); - data.setCategory_name("Competition Promo"); + data.setCategory_name(getResources().getString(R.string.daily_data_menu_additional_promotions)); + //data.setCategory_name("Competition Promo"); data.setCategory_img(R.drawable.category); categoryList.add(data); @@ -134,18 +142,17 @@ public class DailyDataMenuActivity extends AppCompatActivity { holder.lay_menu.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - if (dailyData.getCategory_name().equalsIgnoreCase("MSL Availability")) { + if (dailyData.getCategory_name().equalsIgnoreCase(getResources().getString(R.string.daily_data_menu_msl_availability))) { Intent intent = new Intent(DailyDataMenuActivity.this, MSL_AvailabilityActivity.class); intent.putExtra("categoryName", dailyData.getCategory_name()); intent.putExtra("categoryId", categoryId); startActivity(intent); - } else if (dailyData.getCategory_name().equalsIgnoreCase("Stock & Facing")) { + } else if (dailyData.getCategory_name().equalsIgnoreCase(getResources().getString(R.string.daily_data_menu_stock_facing))) { Intent intent = new Intent(DailyDataMenuActivity.this, Stock_FacingActivity.class); intent.putExtra("categoryName", dailyData.getCategory_name()); intent.putExtra("categoryId", categoryId); startActivity(intent); } - } }); } diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_AvailabilityActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_AvailabilityActivity.java index dddbdf4..c07156a 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_AvailabilityActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_AvailabilityActivity.java @@ -71,7 +71,8 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { categoryId = getIntent().getStringExtra("categoryId"); storeId = ""; - txt_mslAvailabilityName.setText(categoryName); + //txt_mslAvailabilityName.setText(categoryName); + txt_mslAvailabilityName.setText(getResources().getString(R.string.title_activity_msl__availability)); prepareList(); 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 4b64158..c6ab317 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 @@ -84,7 +84,8 @@ public class Stock_FacingActivity extends AppCompatActivity { categoryId = getIntent().getStringExtra("categoryId"); storeId = ""; - txt_stockFacingName.setText(categoryName); + //txt_stockFacingName.setText(categoryName); + txt_stockFacingName.setText(getResources().getString(R.string.title_activity_stock_facing)); prepareList(); diff --git a/GSKMTOrange/src/main/res/layout/content_msl__availability.xml b/GSKMTOrange/src/main/res/layout/content_msl__availability.xml index 8e9fda9..9ba8a12 100644 --- a/GSKMTOrange/src/main/res/layout/content_msl__availability.xml +++ b/GSKMTOrange/src/main/res/layout/content_msl__availability.xml @@ -46,7 +46,7 @@ android:gravity="center" android:paddingBottom="5dp" android:paddingTop="5dp" - android:text="SKU" + android:text="@string/msl_availability_sku" android:textAppearance="?android:attr/textAppearanceSmall" android:textColor="#222" /> @@ -63,7 +63,7 @@ android:gravity="center" android:paddingBottom="5dp" android:paddingTop="5dp" - android:text="MBQ" + android:text="@string/msl_availability_mbq" android:textAppearance="?android:attr/textAppearanceSmall" android:textColor="#222" /> @@ -80,7 +80,7 @@ android:gravity="center" android:paddingBottom="5dp" android:paddingTop="5dp" - android:text="Available" + android:text="@string/msl_availability_availability" android:textAppearance="?android:attr/textAppearanceSmall" android:textColor="#222" /> diff --git a/GSKMTOrange/src/main/res/values/strings.xml b/GSKMTOrange/src/main/res/values/strings.xml index 184910e..f48146f 100644 --- a/GSKMTOrange/src/main/res/values/strings.xml +++ b/GSKMTOrange/src/main/res/values/strings.xml @@ -38,8 +38,27 @@ Services Category List - CategoryWise Performance - DailyMainMenuActivity - MSL_AvailabilityActivity + Categorywise Performance + Daily Data Menu + Must Stock Availability + Stock and Facing + + MSL Availability + Stock and Facing + T2P Compliance + Additional Visibility + Promo Compliance + Competition Visibility + Competition Promo + + SKU Name + MBQ + Availability + + Reference Image + Stock + Facing + SOS Target + From 5a8151ecd445ff1acdf8978b2abae9dc8adc727e Mon Sep 17 00:00:00 2001 From: yadavendras Date: Thu, 5 Jan 2017 09:46:53 +0530 Subject: [PATCH 10/12] new download branch --- GSKMTOrange/src/main/AndroidManifest.xml | 52 ++-- .../com/gskmtorange/Database/GSKOrangeDB.java | 223 +++++++++++++++- .../gskmtorange/GeoTag/GeoTagActivity.java | 2 +- .../gskmtorange/GeoTag/GeoTagStoreList.java | 4 +- .../cpm/com/gskmtorange/LoginActivity.java | 1 + .../cpm/com/gskmtorange/MainActivity.java | 11 +- .../dailyentry/StoreListActivity.java | 23 +- .../dailyentry/T2PComplianceActivity.java | 239 ++++++++++++++++++ .../download/DownloadActivity.java | 149 ++++++++++- .../DisplayChecklistMasterGetterSetter.java | 40 +++ .../GapsChecklistGetterSetter.java | 43 ++++ .../MappingDisplayChecklistGetterSetter.java | 39 +++ .../MappingPromotionGetterSetter.java | 66 +++++ .../NonWorkingReasonGetterSetter.java | 57 +++++ .../xmlGetterSetter/T2PGetterSetter.java | 67 +++++ .../xmlGetterSetter/TableBean.java | 36 +++ .../gskmtorange/xmlHandlers/XMLHandlers.java | 142 ++++++++++- .../src/main/res/drawable/cam_active.png | Bin 0 -> 5395 bytes .../src/main/res/drawable/cam_deactive.png | Bin 0 -> 5441 bytes .../src/main/res/drawable/edit_active.png | Bin 0 -> 2884 bytes .../src/main/res/drawable/edit_deactive.png | Bin 0 -> 2867 bytes .../res/layout/activity_t2_pcompliance.xml | 34 +++ .../res/layout/content_t2_pcompliance.xml | 22 ++ .../main/res/layout/gap_checklist_item.xml | 56 ++++ .../main/res/layout/gaps_dialog_layout.xml | 62 +++++ .../src/main/res/layout/t2p_item_layout.xml | 223 ++++++++++++++++ .../main/res/layout/t2p_sku_dialog_layout.xml | 134 ++++++++++ GSKMTOrange/src/main/res/values-tr/string.xml | 15 ++ GSKMTOrange/src/main/res/values/dimens.xml | 1 + GSKMTOrange/src/main/res/values/strings.xml | 14 + 30 files changed, 1703 insertions(+), 52 deletions(-) create mode 100644 GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/T2PComplianceActivity.java create mode 100644 GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/DisplayChecklistMasterGetterSetter.java create mode 100644 GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/GapsChecklistGetterSetter.java create mode 100644 GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/MappingDisplayChecklistGetterSetter.java create mode 100644 GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/MappingPromotionGetterSetter.java create mode 100644 GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/NonWorkingReasonGetterSetter.java create mode 100644 GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/T2PGetterSetter.java create mode 100644 GSKMTOrange/src/main/res/drawable/cam_active.png create mode 100644 GSKMTOrange/src/main/res/drawable/cam_deactive.png create mode 100644 GSKMTOrange/src/main/res/drawable/edit_active.png create mode 100644 GSKMTOrange/src/main/res/drawable/edit_deactive.png create mode 100644 GSKMTOrange/src/main/res/layout/activity_t2_pcompliance.xml create mode 100644 GSKMTOrange/src/main/res/layout/content_t2_pcompliance.xml create mode 100644 GSKMTOrange/src/main/res/layout/gap_checklist_item.xml create mode 100644 GSKMTOrange/src/main/res/layout/gaps_dialog_layout.xml create mode 100644 GSKMTOrange/src/main/res/layout/t2p_item_layout.xml create mode 100644 GSKMTOrange/src/main/res/layout/t2p_sku_dialog_layout.xml diff --git a/GSKMTOrange/src/main/AndroidManifest.xml b/GSKMTOrange/src/main/AndroidManifest.xml index 2e58264..5409273 100644 --- a/GSKMTOrange/src/main/AndroidManifest.xml +++ b/GSKMTOrange/src/main/AndroidManifest.xml @@ -18,7 +18,6 @@ android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme"> - - - - + android:theme="@style/AppTheme.NoActionBar" + android:screenOrientation="portrait"/> + - - - + - - android:name=".gsk_dailyentry.CategoryListActivity" - android:configChanges="screenSize|orientation|keyboardHidden" android:theme="@style/AppTheme.NoActionBar" - android:windowSoftInputMode="adjustPan" /> - - + android:screenOrientation="portrait"/> + android:windowSoftInputMode="adjustPan" + android:screenOrientation="portrait"/> - + android:windowSoftInputMode="adjustPan" + android:screenOrientation="portrait"/> + - + android:windowSoftInputMode="adjustPan" + android:screenOrientation="portrait"/> + - + android:theme="@style/AppTheme.NoActionBar" + android:screenOrientation="portrait"/> - + android:windowSoftInputMode="adjustPan" + android:screenOrientation="portrait"/> + + \ No newline at end of file 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 91a6ba9..62cc6be 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/Database/GSKOrangeDB.java @@ -10,7 +10,13 @@ import android.util.Log; import java.util.ArrayList; import cpm.com.gskmtorange.GetterSetter.StoreBean; +import cpm.com.gskmtorange.xmlGetterSetter.DisplayChecklistMasterGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.GapsChecklistGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.JourneyPlanGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.MappingDisplayChecklistGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.MappingPromotionGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.SkuGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.T2PGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.TableBean; import cpm.com.gskmtorange.xmlGetterSetter.BrandMasterGetterSetter; @@ -22,8 +28,6 @@ import cpm.com.gskmtorange.xmlGetterSetter.MappingStockGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.SkuMasterGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.SubCategoryMasterGetterSetter; - - /** * Created by ashishc on 29-12-2016. */ @@ -58,6 +62,9 @@ public class GSKOrangeDB extends SQLiteOpenHelper { db.execSQL(TableBean.getMappingStock()); db.execSQL(TableBean.getMappingT2p()); + db.execSQL(TableBean.getDisplayChecklistMaster()); + db.execSQL(TableBean.getMappingDisplayChecklist()); + } @Override @@ -120,6 +127,182 @@ public class GSKOrangeDB extends SQLiteOpenHelper { } } + public ArrayList getT2PDefaultData(String store_id){ + + ArrayList t2PList = new ArrayList<>(); + Cursor dbcursor = null; + + try { + + dbcursor = db.rawQuery("Select BM.BRAND As BRAND, BM.BRAND_ID As BRAND_ID, DM.DISPLAY As DISPLAY, DM.DISPLAY_ID As DISPLAY_ID from BRAND_MASTER BM INNER JOIN MAPPING_T2P T ON BM.BRAND_ID = T.BRAND_ID INNER JOIN DISPLAY_MASTER DM ON T.DISPLAY_ID= DM.DISPLAY_ID WHERE T.STORE_ID = '"+ store_id +"'",null); + if(dbcursor != null){ + dbcursor.moveToFirst(); + while(!dbcursor.isAfterLast()){ + + T2PGetterSetter t2p = new T2PGetterSetter(); + + t2p.setBrand_id(dbcursor.getString(dbcursor + .getColumnIndexOrThrow("BRAND_ID"))); + + t2p.setBrand(dbcursor.getString(dbcursor + .getColumnIndexOrThrow("BRAND"))); + + t2p.setDisplay_id(dbcursor.getString(dbcursor + .getColumnIndexOrThrow("DISPLAY_ID"))); + + t2p.setDisplay(dbcursor.getString(dbcursor + .getColumnIndexOrThrow("DISPLAY"))); + + t2p.setImage(""); + + t2p.setRemark(""); + + t2p.isPresent(); + + t2PList.add(t2p); + + dbcursor.moveToNext(); + } + + dbcursor.close(); + return t2PList; + } + } + catch (Exception e){ + + Log.d("Exception get T2P", e.toString()); + return t2PList; + } + + return t2PList; + } + + //get Gaps data + public ArrayList getGapsDefaultData(String display_id){ + + ArrayList checkList = new ArrayList<>(); + Cursor dbcursor = null; + + try { + + dbcursor = db.rawQuery("Select DC.CHECKLIST_ID As CHECKLIST_ID, DC.CHECKLIST As CHECKLIST, C.DISPLAY_ID As DISPLAY_ID from MAPPING_DISPLAY_CHECKLIST C INNER JOIN DISPLAY_CHECKLIST_MASTER DC ON C.CHECKLIST_ID= DC.CHECKLIST_ID WHERE C.DISPLAY_ID = '"+ display_id +"'",null); + if(dbcursor != null){ + dbcursor.moveToFirst(); + while(!dbcursor.isAfterLast()){ + + GapsChecklistGetterSetter check = new GapsChecklistGetterSetter(); + + check.setChecklist_id(dbcursor.getString(dbcursor + .getColumnIndexOrThrow("CHECKLIST_ID"))); + + check.setChecklist(dbcursor.getString(dbcursor + .getColumnIndexOrThrow("CHECKLIST"))); + + check.setDisplay_id(dbcursor.getString(dbcursor + .getColumnIndexOrThrow("DISPLAY_ID"))); + + check.isPresent(); + + checkList.add(check); + + dbcursor.moveToNext(); + } + + dbcursor.close(); + return checkList; + } + } + catch (Exception e){ + + Log.d("Exception get T2P", e.toString()); + return checkList; + } + + return checkList; + } + + //get Brand data for T2P + public ArrayList getBrandT2PData(String store_type_id, String class_id, String key_account_id ){ + + ArrayList brandList = new ArrayList<>(); + Cursor dbcursor = null; + + try { + + dbcursor = db.rawQuery("SELECT DISTINCT BR.BRAND_ID, SCM.SUB_CATEGORY||'-'||BR.BRAND AS BRAND FROM MAPPING_STOCK MS INNER JOIN SKU_MASTER SM ON MS.SKU_ID = SM.SKU_ID INNER JOIN BRAND_MASTER BR ON SM.BRAND_ID=BR.BRAND_ID INNER JOIN SUB_CATEGORY_MASTER SCM ON BR.SUB_CATEGORY_ID = SCM.SUB_CATEGORY_ID WHERE MS.KEYACCOUNT_ID ='"+key_account_id +"' AND STORETYPE_ID ='" + store_type_id + "' AND CLASS_ID = "+ class_id +"'",null); + if(dbcursor != null){ + dbcursor.moveToFirst(); + while(!dbcursor.isAfterLast()){ + + BrandMasterGetterSetter brand = new BrandMasterGetterSetter(); + + brand.setBRAND(dbcursor.getString(dbcursor + .getColumnIndexOrThrow("BRAND"))); + + brand.setBRAND_ID(dbcursor.getString(dbcursor + .getColumnIndexOrThrow("BRAND_ID"))); + + + brandList.add(brand); + + dbcursor.moveToNext(); + } + + dbcursor.close(); + return brandList; + } + } + catch (Exception e){ + + Log.d("Exception get T2P", e.toString()); + return brandList; + } + + return brandList; + } + + //get Sku data for T2P + public ArrayList getSkuT2PData(String store_type_id, String class_id, String key_account_id , String brand_id){ + + ArrayList skuList = new ArrayList<>(); + Cursor dbcursor = null; + + try { + + dbcursor = db.rawQuery("SELECT DISTINCT SM.SKU, SM.SKU_ID, BR.BRAND_ID FROM MAPPING_STOCK MS INNER JOIN SKU_MASTER SM ON MS.SKU_ID = SM.SKU_ID INNER JOIN BRAND_MASTER BR ON SM.BRAND_ID=BR.BRAND_ID INNER JOIN SUB_CATEGORY_MASTER SCM ON BR.SUB_CATEGORY_ID = SCM.SUB_CATEGORY_ID WHERE MS.KEYACCOUNT_ID ='"+key_account_id +"' AND STORETYPE_ID ='" + store_type_id + "' AND CLASS_ID = "+ class_id +"' AND SM.BRAND_ID='"+ brand_id + "'",null); + if(dbcursor != null){ + dbcursor.moveToFirst(); + while(!dbcursor.isAfterLast()){ + + SkuGetterSetter sku = new SkuGetterSetter(); + + sku.setSKU(dbcursor.getString(dbcursor + .getColumnIndexOrThrow("SKU"))); + + sku.setBRAND_ID(dbcursor.getString(dbcursor + .getColumnIndexOrThrow("BRAND_ID"))); + + sku.setSKU_ID(dbcursor.getString(dbcursor + .getColumnIndexOrThrow("SKU_ID"))); + + skuList.add(sku); + + dbcursor.moveToNext(); + } + + dbcursor.close(); + return skuList; + } + } + catch (Exception e){ + + Log.d("Exception get T2P", e.toString()); + return skuList; + } + + return skuList; + } + public ArrayList getStoreData(String date) { @@ -238,6 +421,24 @@ public class GSKOrangeDB extends SQLiteOpenHelper { } } + //insert MAPPING_DISPLAY_CHECKLIST + public void InsertMappingDisplayChecklist(MappingDisplayChecklistGetterSetter data) { + db.delete("MAPPING_DISPLAY_CHECKLIST", null, null); + + ContentValues values = new ContentValues(); + try { + for (int i = 0; i < data.getCHECKLIST_ID().size(); i++) { + + values.put("DISPLAY_ID", data.getDISPLAY_ID().get(i)); + values.put("CHECKLIST_ID", data.getCHECKLIST_ID().get(i)); + + db.insert("MAPPING_DISPLAY_CHECKLIST", null, values); + } + } catch (Exception ex) { + Log.d("Exception ", " in MAPPING_STOCK " + ex.toString()); + } + } + public void InsertSubCategoryMaster(SubCategoryMasterGetterSetter data) { db.delete("SUB_CATEGORY_MASTER", null, null); @@ -297,6 +498,24 @@ public class GSKOrangeDB extends SQLiteOpenHelper { } } + //insert DISPLAY_CHECKLIST_MASTER + public void InsertDisplayChecklistMaster(DisplayChecklistMasterGetterSetter data) { + db.delete("DISPLAY_CHECKLIST_MASTER", null, null); + + ContentValues values = new ContentValues(); + try { + for (int i = 0; i < data.getCHECKLIST_ID().size(); i++) { + + values.put("CHECKLIST_ID", data.getCHECKLIST_ID().get(i)); + values.put("CHECKLIST", data.getCHECKLIST().get(i)); + + db.insert("DISPLAY_CHECKLIST_MASTER", null, values); + } + } catch (Exception ex) { + Log.d("Exception ", " in DISPLAY_CHECKLIST_MASTER " + ex.toString()); + } + } + public void InsertDisplayMaster(DisplayMasterGetterSetter data) { db.delete("DISPLAY_MASTER", null, 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 24c4f40..9811118 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GeoTag/GeoTagActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GeoTag/GeoTagActivity.java @@ -1,4 +1,4 @@ -package cpm.com.gskmtorange.geotag; +package cpm.com.gskmtorange.GeoTag; import android.content.SharedPreferences; import android.location.Location; diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GeoTag/GeoTagStoreList.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GeoTag/GeoTagStoreList.java index b6d7214..f8fe838 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GeoTag/GeoTagStoreList.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/GeoTag/GeoTagStoreList.java @@ -1,4 +1,4 @@ -package cpm.com.gskmtorange.geotag; +package cpm.com.gskmtorange.GeoTag; import android.content.Context; import android.content.SharedPreferences; @@ -23,7 +23,7 @@ import android.widget.Toast; import java.util.ArrayList; import cpm.com.gskmtorange.Database.GSKOrangeDB; -import cpm.com.gskmtorange.gettersetter.StoreBean; +import cpm.com.gskmtorange.GetterSetter.StoreBean; import cpm.com.gskmtorange.R; import cpm.com.gskmtorange.constant.CommonString; diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/LoginActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/LoginActivity.java index 77a7b94..0c21974 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/LoginActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/LoginActivity.java @@ -641,6 +641,7 @@ public class LoginActivity extends AppCompatActivity { return intime; + } private static boolean updateResources(Context context, String language) { diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java index f669952..1181bff 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java @@ -23,15 +23,16 @@ import android.webkit.WebViewClient; import android.widget.ImageView; import android.widget.TextView; - -import cpm.com.gskmtorange.geotag.GeoTagStoreList; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.nio.channels.FileChannel; import java.text.SimpleDateFormat; +import cpm.com.gskmtorange.Database.GSKOrangeDB; +import cpm.com.gskmtorange.GeoTag.GeoTagStoreList; import cpm.com.gskmtorange.constant.CommonString; +import cpm.com.gskmtorange.dailyentry.T2PComplianceActivity; import cpm.com.gskmtorange.gsk_dailyentry.CategoryListActivity; import cpm.com.gskmtorange.dailyentry.StoreListActivity; import cpm.com.gskmtorange.download.DownloadActivity; @@ -170,6 +171,11 @@ public class MainActivity extends AppCompatActivity } else if (id == R.id.nav_services) { + Intent startDownload = new Intent(this,T2PComplianceActivity.class); + startActivity(startDownload); + + overridePendingTransition(R.anim.activity_in, R.anim.activity_out); + } else if (id == R.id.nav_setting) { startActivity(new Intent(MainActivity.this, CategoryListActivity.class)); } else if (id == R.id.nav_export) { @@ -259,6 +265,5 @@ public class MainActivity extends AppCompatActivity super.onPageStarted(view, url, favicon); } - } } 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 da25077..b529723 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/StoreListActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/StoreListActivity.java @@ -24,7 +24,8 @@ import android.widget.Toast; import java.util.ArrayList; import cpm.com.gskmtorange.Database.GSKOrangeDB; -import cpm.com.gskmtorange.gettersetter.StoreBean; + +import cpm.com.gskmtorange.GetterSetter.StoreBean; import cpm.com.gskmtorange.R; import cpm.com.gskmtorange.constant.CommonString; @@ -32,7 +33,7 @@ import cpm.com.gskmtorange.constant.CommonString; * Created by ashishc on 29-12-2016. */ -public class StoreListActivity extends AppCompatActivity { +public class StoreListActivity extends AppCompatActivity { ArrayList storelist = new ArrayList(); @@ -40,7 +41,7 @@ public class StoreListActivity extends AppCompatActivity { ListView list; private SharedPreferences preferences; - String date,visit_status; + String date, visit_status; GSKOrangeDB db; @@ -63,13 +64,13 @@ public class StoreListActivity extends AppCompatActivity { db.open(); - list = (ListView)findViewById(R .id.list_id); + list = (ListView) findViewById(R.id.list_id); storelist = db.getStoreData(date); - if (storelist.size()>0) { + if (storelist.size() > 0) { list.setAdapter(new MyAdaptor()); } @@ -80,16 +81,13 @@ public class StoreListActivity extends AppCompatActivity { int position, long id) { - Toast.makeText(getApplicationContext(),"Click",Toast.LENGTH_LONG).show(); - - + Toast.makeText(getApplicationContext(), "Click", Toast.LENGTH_LONG).show(); } }); } - private class MyAdaptor extends BaseAdapter { @Override @@ -142,9 +140,6 @@ public class StoreListActivity extends AppCompatActivity { holder.storeaddress.setText(storelist.get(position).getCITY()); - - - holder.checkout.setOnClickListener(new View.OnClickListener() { @Override @@ -175,8 +170,6 @@ public class StoreListActivity extends AppCompatActivity { } }); - - return convertView; } @@ -200,7 +193,7 @@ public class StoreListActivity extends AppCompatActivity { // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); - if(id==android.R.id.home){ + if (id == android.R.id.home) { // NavUtils.navigateUpFromSameTask(this); finish(); diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/T2PComplianceActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/T2PComplianceActivity.java new file mode 100644 index 0000000..4c5ee9b --- /dev/null +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/T2PComplianceActivity.java @@ -0,0 +1,239 @@ +package cpm.com.gskmtorange.dailyentry; + +import android.app.Dialog; +import android.graphics.drawable.ColorDrawable; +import android.os.Bundle; +import android.support.design.widget.FloatingActionButton; +import android.support.design.widget.Snackbar; +import android.support.v7.app.AppCompatActivity; +import android.support.v7.widget.LinearLayoutManager; +import android.support.v7.widget.RecyclerView; +import android.support.v7.widget.Toolbar; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.view.Window; +import android.widget.Button; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.ProgressBar; +import android.widget.TextView; +import android.widget.ToggleButton; + +import java.util.ArrayList; + +import cpm.com.gskmtorange.Database.GSKOrangeDB; +import cpm.com.gskmtorange.R; +import cpm.com.gskmtorange.xmlGetterSetter.BrandMasterGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.GapsChecklistGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.SkuMasterGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.T2PGetterSetter; + +public class T2PComplianceActivity extends AppCompatActivity { + + GSKOrangeDB db; + ArrayList t2PGetterSetters; + T2PAdapter t2PAdapter; + RecyclerView rec_t2p; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_t2_pcompliance); + Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); + setSupportActionBar(toolbar); + + db = new GSKOrangeDB(T2PComplianceActivity.this); + db.open(); + + rec_t2p = (RecyclerView) findViewById(R.id.rec_t2p); + + 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(); + } + }); + } + + @Override + protected void onResume() { + super.onResume(); + + t2PGetterSetters = db.getT2PDefaultData("1"); + + if(t2PGetterSetters.size()>0){ + rec_t2p.setLayoutManager(new LinearLayoutManager(getApplicationContext())); + t2PAdapter = new T2PAdapter(t2PGetterSetters); + rec_t2p.setAdapter(t2PAdapter); + + } + } + + public class T2PAdapter extends RecyclerView.Adapter { + + private ArrayList list; + + public T2PAdapter(ArrayList t2PList) { + list = t2PList; + } + + @Override + public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { + View view = LayoutInflater.from(parent.getContext()) + .inflate(R.layout.t2p_item_layout, parent, false); + return new ViewHolder(view); + } + + @Override + public void onBindViewHolder(final ViewHolder holder, int position) { + + final T2PGetterSetter mItem = list.get(position); + holder.tv_brand.setText(mItem.getBrand()); + holder.tv_display.setText(mItem.getDisplay().trim()); + + holder.btn_gaps.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + + ArrayList gapsChecklist = showGapsDialog(mItem.getDisplay_id()); + if(gapsChecklist.size()>0){ + + } + } + }); + + holder.btn_sku.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + showSkuDialog(); + } + }); + + } + + @Override + public int getItemCount() { + return list.size(); + } + + public class ViewHolder extends RecyclerView.ViewHolder { + public final View mView; + public final LinearLayout parentLayout; + public final TextView tv_brand, tv_display; + public final ImageView img_cam, img_remark; + public final Button btn_gaps, btn_sku, btn_ref_img; + + + public ViewHolder(View view) { + super(view); + + mView = view; + + tv_brand = (TextView) mView.findViewById(R.id.tv_brand); + tv_display = (TextView) mView.findViewById(R.id.tv_display); + img_cam = (ImageView) mView.findViewById(R.id.img_cam); + img_remark = (ImageView) mView.findViewById(R.id.img_remark); + btn_gaps = (Button) mView.findViewById(R.id.btn_gaps); + btn_sku = (Button) mView.findViewById(R.id.btn_sku); + btn_ref_img = (Button) mView.findViewById(R.id.btn_ref_image); + parentLayout = (LinearLayout) mView.findViewById(R.id.parent_layout); + + } + + } + } + + public ArrayList showGapsDialog(String display_id){ + ArrayList gapsChecklist = db.getGapsDefaultData(display_id); + + Dialog dialog = new Dialog(T2PComplianceActivity.this); + dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); + dialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT)); + dialog.setContentView(R.layout.gaps_dialog_layout); + //pb = (ProgressBar) dialog.findViewById(R.id.progressBar1); + RecyclerView rec_gap_checklist = (RecyclerView) dialog.findViewById(R.id.rec_gap_checklist); + rec_gap_checklist.setLayoutManager(new LinearLayoutManager(getApplicationContext())); + GapsAdapter gapAdapter = new GapsAdapter(gapsChecklist); + rec_gap_checklist.setAdapter(gapAdapter); + + //dialog.setCancelable(false); + dialog.show(); + + return gapsChecklist; + } + + public void showSkuDialog(){ + + ArrayList brandList = db.getBrandT2PData("1", "1", "1"); + // ArrayList skuMasterGetterSetterArrayList = db.getSkuT2PData("1", "1", "1",) + + Dialog dialog = new Dialog(T2PComplianceActivity.this); + dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); + dialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT)); + dialog.setContentView(R.layout.t2p_sku_dialog_layout); + //pb = (ProgressBar) dialog.findViewById(R.id.progressBar1); + //dialog.setCancelable(false); + dialog.show(); + + } + + public class GapsAdapter extends RecyclerView.Adapter { + + private ArrayList list; + + public GapsAdapter(ArrayList gapsPList) { + list = gapsPList; + } + + @Override + public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { + View view = LayoutInflater.from(parent.getContext()) + .inflate(R.layout.gap_checklist_item, parent, false); + return new ViewHolder(view); + } + + @Override + public void onBindViewHolder(final ViewHolder holder, int position) { + + final GapsChecklistGetterSetter mItem = list.get(position); + holder.tv_checklist.setText(mItem.getChecklist()); + + holder.tb_present.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + + } + }); + + } + + @Override + public int getItemCount() { + return list.size(); + } + + public class ViewHolder extends RecyclerView.ViewHolder { + public final View mView; + public final LinearLayout parentLayout; + public final TextView tv_checklist; + public final ToggleButton tb_present; + + + public ViewHolder(View view) { + super(view); + + mView = view; + + tv_checklist = (TextView) mView.findViewById(R.id.tv_checklist); + tb_present = (ToggleButton) mView.findViewById(R.id.btn_is_present); + parentLayout = (LinearLayout) mView.findViewById(R.id.parent_layout); + + } + + } + } + +} 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 b68481a..94d8263 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/download/DownloadActivity.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/download/DownloadActivity.java @@ -32,10 +32,14 @@ import cpm.com.gskmtorange.R; import cpm.com.gskmtorange.constant.CommonString; import cpm.com.gskmtorange.xmlGetterSetter.BrandMasterGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.CategoryMasterGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.DisplayChecklistMasterGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.DisplayMasterGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.JourneyPlanGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MAPPINGT2PGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.MappingDisplayChecklistGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.MappingPromotionGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MappingStockGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.NonWorkingReasonGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.SkuMasterGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.SubCategoryMasterGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.TableBean; @@ -60,6 +64,10 @@ public class DownloadActivity extends AppCompatActivity { DisplayMasterGetterSetter displayMasterGetterSetter; MappingStockGetterSetter mappingStockGetterSetter; MAPPINGT2PGetterSetter mappingt2PGetterSetter; + DisplayChecklistMasterGetterSetter checklistMasterGetterSetter; + MappingDisplayChecklistGetterSetter mappingChecklistGetterSetter; + NonWorkingReasonGetterSetter nonWorkingReasonGetterSetter; + MappingPromotionGetterSetter mappingPromotionGetterSetter; @Override protected void onCreate(Bundle savedInstanceState) { @@ -393,13 +401,149 @@ public class DownloadActivity extends AppCompatActivity { TableBean.setMappingT2p(t2ptable); } } else { - return "MAPPING_T2P"; + //return "MAPPING_T2P"; } data.value = 100; data.name = "MAPPING_T2P Data Download"; } publishProgress(data); + // DISPLAY_CHECKLIST_MASTER + request = new SoapObject(CommonString.NAMESPACE, CommonString.METHOD_NAME_UNIVERSAL_DOWNLOAD); + request.addProperty("UserName", userId); + request.addProperty("Type", "DISPLAY_CHECKLIST_MASTER"); + 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 = (Object) envelope.getResponse(); + + if (result.toString() != null) { + xpp.setInput(new StringReader(result.toString())); + xpp.next(); + eventType = xpp.getEventType(); + checklistMasterGetterSetter = XMLHandlers.mappingDisplayChecklistMasterXMLHandler(xpp, eventType); + if (checklistMasterGetterSetter.getCHECKLIST_ID().size() > 0) { + String checklist_master_table = checklistMasterGetterSetter.getTable_DISPLAY_CHECKLIST_MASTER(); + if (checklist_master_table != null) { + resultHttp = CommonString.KEY_SUCCESS; + TableBean.setDisplayChecklistMaster(checklist_master_table); + } + } else { + return "DISPLAY_CHECKLIST_MASTER"; + } + data.value = 100; + data.name = "DISPLAY_CHECKLIST_MASTER Data Download"; + } + publishProgress(data); + + // MAPPING_DISPLAY_CHECKLIST + request = new SoapObject(CommonString.NAMESPACE, CommonString.METHOD_NAME_UNIVERSAL_DOWNLOAD); + request.addProperty("UserName", userId); + request.addProperty("Type", "MAPPING_DISPLAY_CHECKLIST"); + 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 = (Object) envelope.getResponse(); + + if (result.toString() != null) { + xpp.setInput(new StringReader(result.toString())); + xpp.next(); + eventType = xpp.getEventType(); + mappingChecklistGetterSetter = XMLHandlers.mappingMappingDisplayChecklistXMLHandler(xpp, eventType); + if (mappingChecklistGetterSetter.getCHECKLIST_ID().size() > 0) { + String mapping_display_checklisttable = mappingChecklistGetterSetter.getTable_MAPPING_DISPLAY_CHECKLIST(); + if (mapping_display_checklisttable != null) { + resultHttp = CommonString.KEY_SUCCESS; + TableBean.setMappingDisplayChecklist(mapping_display_checklisttable); + } + } else { + //return "MAPPING_DISPLAY_CHECKLIST"; + } + data.value = 100; + data.name = "MAPPING_DISPLAY_CHECKLIST Data Download"; + } + publishProgress(data); + + + // NON_WORKING_REASON + request = new SoapObject(CommonString.NAMESPACE, CommonString.METHOD_NAME_UNIVERSAL_DOWNLOAD); + request.addProperty("UserName", userId); + request.addProperty("Type", "NON_WORKING_REASON"); + 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 = (Object) envelope.getResponse(); + + if (result.toString() != null) { + xpp.setInput(new StringReader(result.toString())); + xpp.next(); + eventType = xpp.getEventType(); + nonWorkingReasonGetterSetter = XMLHandlers.nonWorkingReasonXMLHandler(xpp, eventType); + if (nonWorkingReasonGetterSetter.getREASON_ID().size() > 0) { + String reasontable = nonWorkingReasonGetterSetter.getTable_NON_WORKING_REASON(); + if (reasontable != null) { + resultHttp = CommonString.KEY_SUCCESS; + TableBean.setNonWorkingReason(reasontable); + } + } else { + return "NON_WORKING_REASON"; + } + data.value = 100; + data.name = "NON_WORKING_REASON Data Download"; + } + publishProgress(data); + + // MAPPING_PROMOTION + request = new SoapObject(CommonString.NAMESPACE, CommonString.METHOD_NAME_UNIVERSAL_DOWNLOAD); + request.addProperty("UserName", userId); + request.addProperty("Type", "MAPPING_PROMOTION"); + 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 = (Object) envelope.getResponse(); + + if (result.toString() != null) { + xpp.setInput(new StringReader(result.toString())); + xpp.next(); + eventType = xpp.getEventType(); + mappingPromotionGetterSetter = XMLHandlers.mappingPromotionXMLHandler(xpp, eventType); + if (mappingPromotionGetterSetter.getSTORE_ID().size() > 0) { + String mapping_promotion_table = mappingPromotionGetterSetter.getTable_MAPPING_PROMOTION(); + if (mapping_promotion_table != null) { + resultHttp = CommonString.KEY_SUCCESS; + TableBean.setMappingPromotion(mapping_promotion_table); + } + } else { + //return "MAPPING_PROMOTION"; + } + data.value = 100; + data.name = "MAPPING_PROMOTION Data Download"; + } + publishProgress(data); db.open(); db.InsertJCP(jcpgettersetter); @@ -411,7 +555,8 @@ public class DownloadActivity extends AppCompatActivity { db.InsertMAPPING_T2P(mappingt2PGetterSetter); db.InsertMappingStock(mappingStockGetterSetter); - + db.InsertDisplayChecklistMaster(checklistMasterGetterSetter); + db.InsertMappingDisplayChecklist(mappingChecklistGetterSetter); } catch (MalformedURLException e) { /*final AlertMessage message = new AlertMessage( diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/DisplayChecklistMasterGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/DisplayChecklistMasterGetterSetter.java new file mode 100644 index 0000000..8604038 --- /dev/null +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/DisplayChecklistMasterGetterSetter.java @@ -0,0 +1,40 @@ +package cpm.com.gskmtorange.xmlGetterSetter; + +import java.util.ArrayList; + +/** + * Created by yadavendras on 03-01-2017. + */ + +public class DisplayChecklistMasterGetterSetter { + + String table_DISPLAY_CHECKLIST_MASTER; + + public String getTable_DISPLAY_CHECKLIST_MASTER() { + return table_DISPLAY_CHECKLIST_MASTER; + } + + public void setTable_DISPLAY_CHECKLIST_MASTER(String table_DISPLAY_CHECKLIST_MASTER) { + this.table_DISPLAY_CHECKLIST_MASTER = table_DISPLAY_CHECKLIST_MASTER; + } + + public ArrayList getCHECKLIST_ID() { + return CHECKLIST_ID; + } + + public void setCHECKLIST_ID(String CHECKLIST_ID) { + this.CHECKLIST_ID.add(CHECKLIST_ID); + } + + public ArrayList getCHECKLIST() { + return CHECKLIST; + } + + public void setCHECKLIST(String CHECKLIST) { + this.CHECKLIST.add(CHECKLIST); + } + + ArrayList CHECKLIST_ID = new ArrayList<>(); + ArrayList CHECKLIST = new ArrayList<>(); + +} diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/GapsChecklistGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/GapsChecklistGetterSetter.java new file mode 100644 index 0000000..055c66a --- /dev/null +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/GapsChecklistGetterSetter.java @@ -0,0 +1,43 @@ +package cpm.com.gskmtorange.xmlGetterSetter; + +/** + * Created by yadavendras on 04-01-2017. + */ + +public class GapsChecklistGetterSetter { + + String checklist, checklist_id, display_id; + boolean present; + + public String getChecklist() { + return checklist; + } + + public void setChecklist(String checklist) { + this.checklist = checklist; + } + + public String getChecklist_id() { + return checklist_id; + } + + public void setChecklist_id(String checklist_id) { + this.checklist_id = checklist_id; + } + + public boolean isPresent() { + return present; + } + + public void setPresent(boolean present) { + this.present = present; + } + + public String getDisplay_id() { + return display_id; + } + + public void setDisplay_id(String display_id) { + this.display_id = display_id; + } +} diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/MappingDisplayChecklistGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/MappingDisplayChecklistGetterSetter.java new file mode 100644 index 0000000..908d632 --- /dev/null +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/MappingDisplayChecklistGetterSetter.java @@ -0,0 +1,39 @@ +package cpm.com.gskmtorange.xmlGetterSetter; + +import java.util.ArrayList; + +/** + * Created by yadavendras on 03-01-2017. + */ + +public class MappingDisplayChecklistGetterSetter { + + String table_MAPPING_DISPLAY_CHECKLIST; + + ArrayList DISPLAY_ID = new ArrayList<>(); + ArrayList CHECKLIST_ID = new ArrayList<>(); + + public String getTable_MAPPING_DISPLAY_CHECKLIST() { + return table_MAPPING_DISPLAY_CHECKLIST; + } + + public void setTable_MAPPING_DISPLAY_CHECKLIST(String table_MAPPING_DISPLAY_CHECKLIST) { + this.table_MAPPING_DISPLAY_CHECKLIST = table_MAPPING_DISPLAY_CHECKLIST; + } + + public ArrayList getDISPLAY_ID() { + return DISPLAY_ID; + } + + public void setDISPLAY_ID(String DISPLAY_ID) { + this.DISPLAY_ID.add(DISPLAY_ID); + } + + public ArrayList getCHECKLIST_ID() { + return CHECKLIST_ID; + } + + public void setCHECKLIST_ID(String CHECKLIST_ID) { + this.CHECKLIST_ID.add(CHECKLIST_ID); + } +} diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/MappingPromotionGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/MappingPromotionGetterSetter.java new file mode 100644 index 0000000..f9e18ae --- /dev/null +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/MappingPromotionGetterSetter.java @@ -0,0 +1,66 @@ +package cpm.com.gskmtorange.xmlGetterSetter; + +import java.util.ArrayList; + +/** + * Created by yadavendras on 03-01-2017. + */ + +public class MappingPromotionGetterSetter { + + String table_MAPPING_PROMOTION; + + ArrayList STORE_ID = new ArrayList<>(); + ArrayList SKU_ID = new ArrayList<>(); + ArrayList SKU = new ArrayList<>(); + ArrayList PROMO_ID = new ArrayList<>(); + ArrayList PROMO = new ArrayList<>(); + + public String getTable_MAPPING_PROMOTION() { + return table_MAPPING_PROMOTION; + } + + public void setTable_MAPPING_PROMOTION(String table_MAPPING_PROMOTION) { + this.table_MAPPING_PROMOTION = table_MAPPING_PROMOTION; + } + + public ArrayList getSTORE_ID() { + return STORE_ID; + } + + public void setSTORE_ID(String STORE_ID) { + this.STORE_ID.add(STORE_ID); + } + + public ArrayList getSKU_ID() { + return SKU_ID; + } + + public void setSKU_ID(String SKU_ID) { + this.SKU_ID.add(SKU_ID); + } + + public ArrayList getSKU() { + return SKU; + } + + public void setSKU(String SKU) { + this.SKU.add(SKU); + } + + public ArrayList getPROMO_ID() { + return PROMO_ID; + } + + public void setPROMO_ID(String PROMO_ID) { + this.PROMO_ID.add(PROMO_ID); + } + + public ArrayList getPROMO() { + return PROMO; + } + + public void setPROMO(String PROMO) { + this.PROMO.add(PROMO); + } +} diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/NonWorkingReasonGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/NonWorkingReasonGetterSetter.java new file mode 100644 index 0000000..78383dc --- /dev/null +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/NonWorkingReasonGetterSetter.java @@ -0,0 +1,57 @@ +package cpm.com.gskmtorange.xmlGetterSetter; + +import java.util.ArrayList; + +/** + * Created by yadavendras on 03-01-2017. + */ + +public class NonWorkingReasonGetterSetter { + + String table_NON_WORKING_REASON; + + ArrayList REASON_ID = new ArrayList<>(); + ArrayList REASON = new ArrayList<>(); + ArrayList ENTRY_ALLOW = new ArrayList<>(); + ArrayList IMAGE_ALLOW = new ArrayList<>(); + + public String getTable_NON_WORKING_REASON() { + return table_NON_WORKING_REASON; + } + + public void setTable_NON_WORKING_REASON(String table_NON_WORKING_REASON) { + this.table_NON_WORKING_REASON = table_NON_WORKING_REASON; + } + + public ArrayList getREASON_ID() { + return REASON_ID; + } + + public void setREASON_ID(String REASON_ID) { + this.REASON_ID.add(REASON_ID); + } + + public ArrayList getREASON() { + return REASON; + } + + public void setREASON(String REASON) { + this.REASON.add(REASON); + } + + public ArrayList getENTRY_ALLOW() { + return ENTRY_ALLOW; + } + + public void setENTRY_ALLOW(String ENTRY_ALLOW) { + this.ENTRY_ALLOW.add(ENTRY_ALLOW); + } + + public ArrayList getIMAGE_ALLOW() { + return IMAGE_ALLOW; + } + + public void setIMAGE_ALLOW(String IMAGE_ALLOW) { + this.IMAGE_ALLOW.add(IMAGE_ALLOW); + } +} diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/T2PGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/T2PGetterSetter.java new file mode 100644 index 0000000..56d6639 --- /dev/null +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/T2PGetterSetter.java @@ -0,0 +1,67 @@ +package cpm.com.gskmtorange.xmlGetterSetter; + +/** + * Created by yadavendras on 02-01-2017. + */ + +public class T2PGetterSetter { + + String brand_id, display_id, brand, display, image, remark; + boolean isPresent; + + public String getBrand_id() { + return brand_id; + } + + public void setBrand_id(String brand_id) { + this.brand_id = brand_id; + } + + public String getDisplay_id() { + return display_id; + } + + public void setDisplay_id(String display_id) { + this.display_id = display_id; + } + + public String getBrand() { + return brand; + } + + public void setBrand(String brand) { + this.brand = brand; + } + + public String getDisplay() { + return display; + } + + public void setDisplay(String display) { + this.display = display; + } + + public String getImage() { + return image; + } + + public void setImage(String image) { + this.image = image; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public boolean isPresent() { + return isPresent; + } + + public void setPresent(boolean present) { + isPresent = present; + } +} 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 6e347c9..2d6362e 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/TableBean.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/TableBean.java @@ -14,6 +14,10 @@ public class TableBean { public static String DISPLAY_MASTER; public static String MAPPING_STOCK; public static String MAPPING_T2P; + public static String DISPLAY_CHECKLIST_MASTER; + public static String MAPPING_DISPLAY_CHECKLIST; + public static String NON_WORKING_REASON; + public static String MAPPING_PROMOTION; public static String getJourneyPlan() { return JOURNEY_PLAN; @@ -78,4 +82,36 @@ public class TableBean { public static void setMappingT2p(String mappingT2p) { MAPPING_T2P = mappingT2p; } + + public static String getDisplayChecklistMaster() { + return DISPLAY_CHECKLIST_MASTER; + } + + public static void setDisplayChecklistMaster(String displayChecklistMaster) { + DISPLAY_CHECKLIST_MASTER = displayChecklistMaster; + } + + public static String getMappingDisplayChecklist() { + return MAPPING_DISPLAY_CHECKLIST; + } + + public static void setMappingDisplayChecklist(String mappingDisplayChecklist) { + MAPPING_DISPLAY_CHECKLIST = mappingDisplayChecklist; + } + + public static String getNonWorkingReason() { + return NON_WORKING_REASON; + } + + public static void setNonWorkingReason(String nonWorkingReason) { + NON_WORKING_REASON = nonWorkingReason; + } + + public static String getMappingPromotion() { + return MAPPING_PROMOTION; + } + + public static void setMappingPromotion(String mappingPromotion) { + MAPPING_PROMOTION = mappingPromotion; + } } 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 6305d29..ba39c9c 100644 --- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlHandlers/XMLHandlers.java +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlHandlers/XMLHandlers.java @@ -7,12 +7,16 @@ import java.io.IOException; import cpm.com.gskmtorange.xmlGetterSetter.BrandMasterGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.CategoryMasterGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.DisplayChecklistMasterGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.DisplayMasterGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.FailureGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.JourneyPlanGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.LoginGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MAPPINGT2PGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.MappingDisplayChecklistGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.MappingPromotionGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.MappingStockGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.NonWorkingReasonGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.SkuMasterGetterSetter; import cpm.com.gskmtorange.xmlGetterSetter.SubCategoryMasterGetterSetter; @@ -405,7 +409,7 @@ public class XMLHandlers { return stock; } - // MAPPING_STOCK XML HANDLER + // MAPPING_T2P XML HANDLER public static MAPPINGT2PGetterSetter mappingT2pXMLHandler(XmlPullParser xpp, int eventType) { MAPPINGT2PGetterSetter t2p = new MAPPINGT2PGetterSetter(); @@ -437,4 +441,140 @@ public class XMLHandlers { } return t2p; } + + // DISPLAY_CHECKLIST_MASTER XML HANDLER + public static DisplayChecklistMasterGetterSetter mappingDisplayChecklistMasterXMLHandler(XmlPullParser xpp, + int eventType) { + DisplayChecklistMasterGetterSetter checklist = new DisplayChecklistMasterGetterSetter(); + + try { + while (xpp.getEventType() != XmlPullParser.END_DOCUMENT) { + if (xpp.getEventType() == XmlPullParser.START_TAG) { + if (xpp.getName().equals("META_DATA")) { + checklist.setTable_DISPLAY_CHECKLIST_MASTER(xpp.nextText()); + } + if (xpp.getName().equals("CHECKLIST_ID")) { + checklist.setCHECKLIST_ID(xpp.nextText()); + } + if (xpp.getName().equals("CHECKLIST")) { + checklist.setCHECKLIST(xpp.nextText()); + } + + } + xpp.next(); + } + } catch (XmlPullParserException e) { + + e.printStackTrace(); + } catch (IOException e) { + + e.printStackTrace(); + } + return checklist; + } + + // MAPPING_DISPLAY_CHECKLIST XML HANDLER + public static MappingDisplayChecklistGetterSetter mappingMappingDisplayChecklistXMLHandler(XmlPullParser xpp, + int eventType) { + MappingDisplayChecklistGetterSetter checklist = new MappingDisplayChecklistGetterSetter(); + + try { + while (xpp.getEventType() != XmlPullParser.END_DOCUMENT) { + if (xpp.getEventType() == XmlPullParser.START_TAG) { + if (xpp.getName().equals("META_DATA")) { + checklist.setTable_MAPPING_DISPLAY_CHECKLIST(xpp.nextText()); + } + if (xpp.getName().equals("CHECKLIST_ID")) { + checklist.setCHECKLIST_ID(xpp.nextText()); + } + if (xpp.getName().equals("DISPLAY_ID")) { + checklist.setDISPLAY_ID(xpp.nextText()); + } + } + xpp.next(); + } + } catch (XmlPullParserException e) { + + e.printStackTrace(); + } catch (IOException e) { + + e.printStackTrace(); + } + return checklist; + } + + // NON_WORKING_REASON XML HANDLER + public static NonWorkingReasonGetterSetter nonWorkingReasonXMLHandler(XmlPullParser xpp, + int eventType) { + NonWorkingReasonGetterSetter reason = new NonWorkingReasonGetterSetter(); + + try { + while (xpp.getEventType() != XmlPullParser.END_DOCUMENT) { + if (xpp.getEventType() == XmlPullParser.START_TAG) { + if (xpp.getName().equals("META_DATA")) { + reason.setTable_NON_WORKING_REASON(xpp.nextText()); + } + if (xpp.getName().equals("REASON_ID")) { + reason.setREASON_ID(xpp.nextText()); + } + if (xpp.getName().equals("REASON")) { + reason.setREASON(xpp.nextText()); + } + if (xpp.getName().equals("ENTRY_ALLOW")) { + reason.setENTRY_ALLOW(xpp.nextText()); + } + if (xpp.getName().equals("IMAGE_ALLOW")) { + reason.setIMAGE_ALLOW(xpp.nextText()); + } + } + xpp.next(); + } + } catch (XmlPullParserException e) { + + e.printStackTrace(); + } catch (IOException e) { + + e.printStackTrace(); + } + return reason; + } + + // MAPPING_PROMOTION XML HANDLER + public static MappingPromotionGetterSetter mappingPromotionXMLHandler(XmlPullParser xpp, + int eventType) { + MappingPromotionGetterSetter t2p = new MappingPromotionGetterSetter(); + + try { + while (xpp.getEventType() != XmlPullParser.END_DOCUMENT) { + if (xpp.getEventType() == XmlPullParser.START_TAG) { + if (xpp.getName().equals("META_DATA")) { + t2p.setTable_MAPPING_PROMOTION(xpp.nextText()); + } + if (xpp.getName().equals("STORE_ID")) { + t2p.setSTORE_ID(xpp.nextText()); + } + if (xpp.getName().equals("SKU_ID")) { + t2p.setSKU_ID(xpp.nextText()); + } + if (xpp.getName().equals("SKU")) { + t2p.setSKU(xpp.nextText()); + } + if (xpp.getName().equals("PROMO_ID")) { + t2p.setPROMO_ID(xpp.nextText()); + } + if (xpp.getName().equals("PROMO")) { + t2p.setPROMO(xpp.nextText()); + } + } + xpp.next(); + } + } catch (XmlPullParserException e) { + + e.printStackTrace(); + } catch (IOException e) { + + e.printStackTrace(); + } + return t2p; + } } diff --git a/GSKMTOrange/src/main/res/drawable/cam_active.png b/GSKMTOrange/src/main/res/drawable/cam_active.png new file mode 100644 index 0000000000000000000000000000000000000000..c70be4332570117d90ea5ff2fb978d4576a82bd5 GIT binary patch literal 5395 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 literal 0 HcmV?d00001 diff --git a/GSKMTOrange/src/main/res/drawable/cam_deactive.png b/GSKMTOrange/src/main/res/drawable/cam_deactive.png new file mode 100644 index 0000000000000000000000000000000000000000..7b64187af3f05e7d3f1bf2c130d91fc892e9117f GIT binary patch literal 5441 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 HTl{|krfn<< literal 0 HcmV?d00001 diff --git a/GSKMTOrange/src/main/res/drawable/edit_deactive.png b/GSKMTOrange/src/main/res/drawable/edit_deactive.png new file mode 100644 index 0000000000000000000000000000000000000000..36eeb40f1b1afd344136d36a5c7e8e2f3456e5c1 GIT binary patch literal 2867 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 literal 0 HcmV?d00001 diff --git a/GSKMTOrange/src/main/res/layout/activity_t2_pcompliance.xml b/GSKMTOrange/src/main/res/layout/activity_t2_pcompliance.xml new file mode 100644 index 0000000..091fc7b --- /dev/null +++ b/GSKMTOrange/src/main/res/layout/activity_t2_pcompliance.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + diff --git a/GSKMTOrange/src/main/res/layout/content_t2_pcompliance.xml b/GSKMTOrange/src/main/res/layout/content_t2_pcompliance.xml new file mode 100644 index 0000000..26c17ce --- /dev/null +++ b/GSKMTOrange/src/main/res/layout/content_t2_pcompliance.xml @@ -0,0 +1,22 @@ + + + + + + diff --git a/GSKMTOrange/src/main/res/layout/gap_checklist_item.xml b/GSKMTOrange/src/main/res/layout/gap_checklist_item.xml new file mode 100644 index 0000000..7cd357b --- /dev/null +++ b/GSKMTOrange/src/main/res/layout/gap_checklist_item.xml @@ -0,0 +1,56 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/GSKMTOrange/src/main/res/layout/gaps_dialog_layout.xml b/GSKMTOrange/src/main/res/layout/gaps_dialog_layout.xml new file mode 100644 index 0000000..557d6aa --- /dev/null +++ b/GSKMTOrange/src/main/res/layout/gaps_dialog_layout.xml @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + +