diff --git a/GSKMTOrange/src/main/AndroidManifest.xml b/GSKMTOrange/src/main/AndroidManifest.xml
index 8bb92d0..6934a67 100644
--- a/GSKMTOrange/src/main/AndroidManifest.xml
+++ b/GSKMTOrange/src/main/AndroidManifest.xml
@@ -18,6 +18,7 @@
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
+
+
+
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java
index f57039c..0691070 100644
--- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java
+++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/MainActivity.java
@@ -1,11 +1,10 @@
package cpm.com.gskmtorange;
+import android.content.Intent;
import android.content.SharedPreferences;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.preference.PreferenceManager;
-import android.support.design.widget.FloatingActionButton;
-import android.support.design.widget.Snackbar;
import android.view.LayoutInflater;
import android.view.View;
import android.support.design.widget.NavigationView;
@@ -22,6 +21,7 @@ import android.widget.ImageView;
import android.widget.TextView;
import cpm.com.gskmtorange.constant.CommonString;
+import cpm.com.gskmtorange.gsk_dailyentry.CategoryListActivity;
public class MainActivity extends AppCompatActivity
implements NavigationView.OnNavigationItemSelectedListener {
@@ -140,7 +140,7 @@ public class MainActivity extends AppCompatActivity
} else if (id == R.id.nav_services) {
} else if (id == R.id.nav_setting) {
-
+ startActivity(new Intent(MainActivity.this, CategoryListActivity.class));
}
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
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
new file mode 100644
index 0000000..8e7364b
--- /dev/null
+++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/CategoryListActivity.java
@@ -0,0 +1,166 @@
+package cpm.com.gskmtorange.gsk_dailyentry;
+
+import android.content.Context;
+import android.content.Intent;
+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.GridLayoutManager;
+import android.support.v7.widget.RecyclerView;
+import android.support.v7.widget.Toolbar;
+import android.view.LayoutInflater;
+import android.view.Menu;
+import android.view.MenuItem;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.ImageView;
+import android.widget.LinearLayout;
+import android.widget.TextView;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+import cpm.com.gskmtorange.R;
+import cpm.com.gskmtorange.xmlGetterSetter.CategoryGetterSetter;
+
+public class CategoryListActivity extends AppCompatActivity {
+ RecyclerView recyclerView;
+ ArrayList categoryList;
+ CategoryListAdapter adapter;
+ TextView txt_categoryName;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_category_list);
+
+ Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
+ setSupportActionBar(toolbar);
+ getSupportActionBar().setHomeButtonEnabled(true);
+ getSupportActionBar().setDisplayHomeAsUpEnabled(true);
+
+ txt_categoryName = (TextView) findViewById(R.id.txt_categoryName);
+ txt_categoryName.setText("Category List");
+
+ 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();
+
+ 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);
+
+ adapter = new CategoryListAdapter(CategoryListActivity.this, categoryList);
+ recyclerView.setAdapter(adapter);
+ recyclerView.setLayoutManager(new GridLayoutManager(getApplicationContext(), 2));
+ }
+
+ public class CategoryListAdapter extends RecyclerView.Adapter {
+ private LayoutInflater inflator;
+ List list = Collections.emptyList();
+ Context context;
+
+ public CategoryListAdapter(CategoryListActivity context, List list) {
+ inflator = LayoutInflater.from(context);
+ this.list = list;
+ this.context = context;
+ }
+
+ @Override
+ public CategoryListAdapter.MyViewHolder onCreateViewHolder(ViewGroup parent, int i) {
+ View view = inflator.inflate(R.layout.category_menu_row, parent, false);
+ MyViewHolder holder = new MyViewHolder(view);
+ return holder;
+ }
+
+ @Override
+ 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.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());
+ startActivity(intent);
+ }
+ });
+
+
+ }
+
+
+ @Override
+ public int getItemCount() {
+ return list.size();
+ }
+
+ class MyViewHolder extends RecyclerView.ViewHolder {
+ TextView categoryName;
+ ImageView categoryIcon;
+ LinearLayout lay_menu;
+
+ public MyViewHolder(View itemView) {
+ super(itemView);
+ categoryName = (TextView) itemView.findViewById(R.id.categoryName);
+ categoryIcon = (ImageView) itemView.findViewById(R.id.categoryIcon);
+ lay_menu = (LinearLayout) itemView.findViewById(R.id.lay_menu);
+ }
+ }
+ }
+
+ @Override
+ public boolean onCreateOptionsMenu(Menu menu) {
+ // Inflate the menu; this adds items to the action bar if it is present.
+ getMenuInflater().inflate(R.menu.main, menu);
+ return true;
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ // Handle action bar item clicks here. The action bar will
+ // automatically handle clicks on the Home/Up button, so long
+ // as you specify a parent activity in AndroidManifest.xml.
+ int id = item.getItemId();
+
+ if (id == android.R.id.home) {
+ finish();
+ }
+
+ //noinspection SimplifiableIfStatement
+ if (id == R.id.action_settings) {
+ return true;
+ }
+
+ return super.onOptionsItemSelected(item);
+ }
+}
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
new file mode 100644
index 0000000..07eeef2
--- /dev/null
+++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/CategoryWisePerformanceActivity.java
@@ -0,0 +1,208 @@
+package cpm.com.gskmtorange.gsk_dailyentry;
+
+import android.content.Context;
+import android.content.Intent;
+import android.os.Bundle;
+import android.support.design.widget.FloatingActionButton;
+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.MenuItem;
+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;
+
+import cpm.com.gskmtorange.R;
+import cpm.com.gskmtorange.xmlGetterSetter.CategoryWisePerformaceGetterSetter;
+
+public class CategoryWisePerformanceActivity extends AppCompatActivity {
+ TextView txt_categoryName;
+ RecyclerView recyclerView;
+
+ String categoryName = "";
+
+ ArrayList categoryWisePerformanceList;
+ CategoryWisePerformaceAdapter adapter;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_category_wise_performance);
+
+ Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
+ setSupportActionBar(toolbar);
+ getSupportActionBar().setHomeButtonEnabled(true);
+ getSupportActionBar().setDisplayHomeAsUpEnabled(true);
+
+ recyclerView = (RecyclerView) findViewById(R.id.recyclerView);
+ txt_categoryName = (TextView) findViewById(R.id.txt_categoryName);
+
+ categoryName = getIntent().getStringExtra("categoryName");
+
+ txt_categoryName.setText("CategoryWise Performance " + categoryName);
+
+ 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();*/
+ Intent intent = new Intent(CategoryWisePerformanceActivity.this, DailyDataMenuActivity.class);
+ intent.putExtra("categoryName", categoryName);
+ startActivity(intent);
+ }
+ });
+ }
+
+ @Override
+ protected void onResume() {
+ super.onResume();
+
+ categoryWisePerformanceList = new ArrayList<>();
+ CategoryWisePerformaceGetterSetter data = new CategoryWisePerformaceGetterSetter();
+
+ data.setPeriod("Period");
+ data.setSos("SOS");
+ data.setT2p("T2P");
+ data.setPromo("Promo");
+ data.setMsl_availability("MSL Availability");
+ data.setOss("OSS");
+ categoryWisePerformanceList.add(data);
+
+ data = new CategoryWisePerformaceGetterSetter();
+ data.setPeriod("LTM");
+ data.setSos("75");
+ data.setT2p("0");
+ data.setPromo("0");
+ data.setMsl_availability("25");
+ data.setOss("55");
+ categoryWisePerformanceList.add(data);
+
+ data = new CategoryWisePerformaceGetterSetter();
+ data.setPeriod("MTM");
+ data.setSos("75");
+ data.setT2p("0");
+ data.setPromo("0");
+ data.setMsl_availability("25");
+ data.setOss("55");
+ categoryWisePerformanceList.add(data);
+
+ data = new CategoryWisePerformaceGetterSetter();
+ data.setPeriod("RTM");
+ data.setSos("75");
+ data.setT2p("0");
+ data.setPromo("0");
+ data.setMsl_availability("25");
+ data.setOss("55");
+ categoryWisePerformanceList.add(data);
+
+ data = new CategoryWisePerformaceGetterSetter();
+ data.setPeriod("LTM");
+ data.setSos("75");
+ data.setT2p("0");
+ data.setPromo("0");
+ data.setMsl_availability("25");
+ data.setOss("55");
+ categoryWisePerformanceList.add(data);
+
+ data = new CategoryWisePerformaceGetterSetter();
+ data.setPeriod("MTM");
+ data.setSos("75");
+ data.setT2p("0");
+ data.setPromo("0");
+ data.setMsl_availability("25");
+ data.setOss("55");
+ categoryWisePerformanceList.add(data);
+
+ data = new CategoryWisePerformaceGetterSetter();
+ data.setPeriod("RTM");
+ data.setSos("75");
+ data.setT2p("0");
+ data.setPromo("0");
+ data.setMsl_availability("25");
+ data.setOss("55");
+ categoryWisePerformanceList.add(data);
+
+ adapter = new CategoryWisePerformaceAdapter(CategoryWisePerformanceActivity.this, categoryWisePerformanceList);
+ recyclerView.setAdapter(adapter);
+ recyclerView.setLayoutManager(new LinearLayoutManager(getApplicationContext()));
+ }
+
+ public class CategoryWisePerformaceAdapter extends RecyclerView.Adapter {
+ Context context;
+ private LayoutInflater inflator;
+ List list = Collections.emptyList();
+
+ public CategoryWisePerformaceAdapter(Context context, List list) {
+ inflator = LayoutInflater.from(context);
+ this.list = list;
+ this.context = context;
+ }
+
+ @Override
+ public CategoryWisePerformaceAdapter.MyViewHolder onCreateViewHolder(ViewGroup parent, int i) {
+ View view = inflator.inflate(R.layout.item_category_wise_performance, parent, false);
+ CategoryWisePerformaceAdapter.MyViewHolder holder = new CategoryWisePerformaceAdapter.MyViewHolder(view);
+ return holder;
+ }
+
+ @Override
+ public void onBindViewHolder(CategoryWisePerformaceAdapter.MyViewHolder holder, int position) {
+ final CategoryWisePerformaceGetterSetter categoryData = list.get(position);
+
+ holder.txt_period.setText(categoryData.getPeriod());
+ holder.txt_sos.setText(categoryData.getSos());
+ holder.txt_t2p.setText(categoryData.getT2p());
+ holder.txt_promo.setText(categoryData.getPromo());
+ holder.txt_msl_availability.setText(categoryData.getMsl_availability());
+ holder.txt_oss.setText(categoryData.getOss());
+ }
+
+ @Override
+ public int getItemCount() {
+ return list.size();
+ }
+
+ class MyViewHolder extends RecyclerView.ViewHolder {
+ TextView txt_period, txt_sos, txt_t2p, txt_promo, txt_msl_availability, txt_oss;
+ LinearLayout lay_menu;
+
+ public MyViewHolder(View itemView) {
+ super(itemView);
+ lay_menu = (LinearLayout) itemView.findViewById(R.id.lay_menu);
+ txt_period = (TextView) itemView.findViewById(R.id.txt_period);
+ txt_sos = (TextView) itemView.findViewById(R.id.txt_sos);
+ txt_t2p = (TextView) itemView.findViewById(R.id.txt_t2p);
+ txt_promo = (TextView) itemView.findViewById(R.id.txt_promo);
+ txt_msl_availability = (TextView) itemView.findViewById(R.id.txt_msl_availability);
+ txt_oss = (TextView) itemView.findViewById(R.id.txt_oss);
+ }
+ }
+
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ // Handle action bar item clicks here. The action bar will
+ // automatically handle clicks on the Home/Up button, so long
+ // as you specify a parent activity in AndroidManifest.xml.
+ int id = item.getItemId();
+
+ if (id == android.R.id.home) {
+ finish();
+ }
+
+ //noinspection SimplifiableIfStatement
+ if (id == R.id.action_settings) {
+ return true;
+ }
+
+ return super.onOptionsItemSelected(item);
+ }
+}
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
new file mode 100644
index 0000000..8823aa7
--- /dev/null
+++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/DailyDataMenuActivity.java
@@ -0,0 +1,190 @@
+package cpm.com.gskmtorange.gsk_dailyentry;
+
+import android.content.Context;
+import android.content.Intent;
+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.GridLayoutManager;
+import android.support.v7.widget.RecyclerView;
+import android.support.v7.widget.Toolbar;
+import android.view.LayoutInflater;
+import android.view.Menu;
+import android.view.MenuItem;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.ImageView;
+import android.widget.LinearLayout;
+import android.widget.TextView;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+import cpm.com.gskmtorange.R;
+import cpm.com.gskmtorange.xmlGetterSetter.DailyDataMenuGetterSetter;
+
+public class DailyDataMenuActivity extends AppCompatActivity {
+ RecyclerView recyclerView;
+ ArrayList categoryList;
+ DailyDataMenuAdapter adapter;
+ TextView txt_categoryName;
+ String categoryName = "";
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_daily_data_menu);
+
+ Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
+ setSupportActionBar(toolbar);
+ getSupportActionBar().setHomeButtonEnabled(true);
+ getSupportActionBar().setDisplayHomeAsUpEnabled(true);
+
+ recyclerView = (RecyclerView) findViewById(R.id.recyclerView);
+ txt_categoryName = (TextView) findViewById(R.id.txt_categoryName);
+
+ categoryName = getIntent().getStringExtra("categoryName");
+
+ txt_categoryName.setText("Daily Data Menu - " + categoryName);
+
+ 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();
+
+ categoryList = new ArrayList<>();
+
+ DailyDataMenuGetterSetter data = new DailyDataMenuGetterSetter();
+ data.setCategory_name("MSL Availability");
+ data.setCategory_img(R.drawable.category);
+ categoryList.add(data);
+
+ data = new DailyDataMenuGetterSetter();
+ data.setCategory_name("Stock & Facing");
+ data.setCategory_img(R.drawable.category);
+ categoryList.add(data);
+
+ data = new DailyDataMenuGetterSetter();
+ data.setCategory_name("T2P Compliance");
+ data.setCategory_img(R.drawable.category);
+ categoryList.add(data);
+
+ data = new DailyDataMenuGetterSetter();
+ data.setCategory_name("Additional Visibility");
+ data.setCategory_img(R.drawable.category);
+ categoryList.add(data);
+
+ data = new DailyDataMenuGetterSetter();
+ data.setCategory_name("Promo Compliance");
+ data.setCategory_img(R.drawable.category);
+ categoryList.add(data);
+
+ data = new DailyDataMenuGetterSetter();
+ data.setCategory_name("Competition Visibility");
+ data.setCategory_img(R.drawable.category);
+ categoryList.add(data);
+
+ data = new DailyDataMenuGetterSetter();
+ data.setCategory_name("Competition Promo");
+ data.setCategory_img(R.drawable.category);
+ categoryList.add(data);
+
+ adapter = new DailyDataMenuAdapter(DailyDataMenuActivity.this, categoryList);
+ recyclerView.setAdapter(adapter);
+ recyclerView.setLayoutManager(new GridLayoutManager(getApplicationContext(), 2));
+ }
+
+ public class DailyDataMenuAdapter extends RecyclerView.Adapter {
+ private LayoutInflater inflator;
+ List list = Collections.emptyList();
+ Context context;
+
+ public DailyDataMenuAdapter(Context context, List list) {
+ inflator = LayoutInflater.from(context);
+ this.list = list;
+ this.context = context;
+ }
+
+ @Override
+ public DailyDataMenuAdapter.MyViewHolder onCreateViewHolder(ViewGroup parent, int i) {
+ View view = inflator.inflate(R.layout.daily_main_menu_row, parent, false);
+ DailyDataMenuAdapter.MyViewHolder holder = new DailyDataMenuAdapter.MyViewHolder(view);
+ return holder;
+ }
+
+ @Override
+ public void onBindViewHolder(DailyDataMenuAdapter.MyViewHolder holder, int position) {
+ final DailyDataMenuGetterSetter dailyData = list.get(position);
+
+ holder.categoryName.setText(dailyData.getCategory_name());
+ holder.categoryIcon.setImageResource(dailyData.getCategory_img());
+
+ holder.lay_menu.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ if (dailyData.getCategory_name().equalsIgnoreCase("MSL Availability")) {
+ Intent intent = new Intent(DailyDataMenuActivity.this, MSL_AvailabilityActivity.class);
+ intent.putExtra("categoryName", dailyData.getCategory_name());
+ startActivity(intent);
+ }
+
+ }
+ });
+ }
+
+ @Override
+ public int getItemCount() {
+ return list.size();
+ }
+
+ class MyViewHolder extends RecyclerView.ViewHolder {
+ TextView categoryName;
+ ImageView categoryIcon;
+ LinearLayout lay_menu;
+
+ public MyViewHolder(View itemView) {
+ super(itemView);
+ categoryName = (TextView) itemView.findViewById(R.id.categoryName);
+ categoryIcon = (ImageView) itemView.findViewById(R.id.categoryIcon);
+ lay_menu = (LinearLayout) itemView.findViewById(R.id.lay_menu);
+ }
+ }
+ }
+
+ @Override
+ public boolean onCreateOptionsMenu(Menu menu) {
+ // Inflate the menu; this adds items to the action bar if it is present.
+ getMenuInflater().inflate(R.menu.main, menu);
+ return true;
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ // Handle action bar item clicks here. The action bar will
+ // automatically handle clicks on the Home/Up button, so long
+ // as you specify a parent activity in AndroidManifest.xml.
+ int id = item.getItemId();
+
+ if (id == android.R.id.home) {
+ finish();
+ }
+
+ //noinspection SimplifiableIfStatement
+ if (id == R.id.action_settings) {
+ return true;
+ }
+
+ return super.onOptionsItemSelected(item);
+ }
+}
+
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
new file mode 100644
index 0000000..ea40d49
--- /dev/null
+++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/MSL_AvailabilityActivity.java
@@ -0,0 +1,686 @@
+package cpm.com.gskmtorange.gsk_dailyentry;
+
+import android.content.Context;
+import android.graphics.Typeface;
+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.CardView;
+import android.support.v7.widget.Toolbar;
+import android.view.LayoutInflater;
+import android.view.MenuItem;
+import android.view.View;
+import android.view.ViewGroup;
+import android.view.inputmethod.InputMethodManager;
+import android.widget.AbsListView;
+import android.widget.BaseExpandableListAdapter;
+import android.widget.Button;
+import android.widget.EditText;
+import android.widget.ExpandableListView;
+import android.widget.ImageView;
+import android.widget.LinearLayout;
+import android.widget.RelativeLayout;
+import android.widget.TextView;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+
+import cpm.com.gskmtorange.R;
+import cpm.com.gskmtorange.xmlGetterSetter.MSL_AvailabilityGetterSetter;
+
+public class MSL_AvailabilityActivity extends AppCompatActivity {
+ ExpandableListView expandableListView;
+
+ ArrayList headerDataList;
+ ArrayList childDataList;
+ List hashMapListHeaderData;
+ HashMap> hashMapListChildData;
+
+ ExpandableListAdapter adapter;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_msl__availability);
+
+ Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
+ setSupportActionBar(toolbar);
+ getSupportActionBar().setHomeButtonEnabled(true);
+ getSupportActionBar().setDisplayHomeAsUpEnabled(true);
+
+ expandableListView = (ExpandableListView) findViewById(R.id.expandableListView);
+
+ prepareList();
+ adapter = new ExpandableListAdapter(this, hashMapListHeaderData, hashMapListChildData);
+ expandableListView.setAdapter(adapter);
+
+
+ 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();
+ }
+ });
+
+ expandableListView.setOnScrollListener(new AbsListView.OnScrollListener() {
+ @Override
+ public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
+ }
+
+ @Override
+ public void onScrollStateChanged(AbsListView arg0, int arg1) {
+ InputMethodManager inputManager = (InputMethodManager) getApplicationContext()
+ .getSystemService(Context.INPUT_METHOD_SERVICE);
+ if (getCurrentFocus() != null) {
+ inputManager.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
+ getCurrentFocus().clearFocus();
+ }
+
+ expandableListView.invalidateViews();
+ }
+ });
+
+ // Listview Group click listener
+ expandableListView.setOnGroupClickListener(new ExpandableListView.OnGroupClickListener() {
+ @Override
+ public boolean onGroupClick(ExpandableListView parent, View v, int groupPosition, long id) {
+ return false;
+ }
+ });
+
+ // Listview Group expanded listener
+ expandableListView.setOnGroupExpandListener(new ExpandableListView.OnGroupExpandListener() {
+ @Override
+ public void onGroupExpand(int groupPosition) {
+ InputMethodManager inputManager = (InputMethodManager) getApplicationContext()
+ .getSystemService(Context.INPUT_METHOD_SERVICE);
+ if (getWindow().getCurrentFocus() != null) {
+ inputManager.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
+ getCurrentFocus().clearFocus();
+ }
+ }
+ });
+
+ // Listview Group collasped listener
+ expandableListView.setOnGroupCollapseListener(new ExpandableListView.OnGroupCollapseListener() {
+ @Override
+ public void onGroupCollapse(int groupPosition) {
+ InputMethodManager inputManager = (InputMethodManager) getApplicationContext()
+ .getSystemService(Context.INPUT_METHOD_SERVICE);
+ if (getWindow().getCurrentFocus() != null) {
+ inputManager.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
+ getCurrentFocus().clearFocus();
+ }
+ }
+ });
+
+ // Listview on child click listener
+ expandableListView.setOnChildClickListener(new ExpandableListView.OnChildClickListener() {
+ @Override
+ public boolean onChildClick(ExpandableListView parent, View v, int groupPosition,
+ int childPosition, long id) {
+ return false;
+ }
+ });
+
+ }
+
+ private void prepareList() {
+ headerDataList = new ArrayList<>();
+
+
+ MSL_AvailabilityGetterSetter msl = new MSL_AvailabilityGetterSetter();
+ msl.setBrandName("Parodontax header 1");
+ msl.setMbq("6");
+ msl.setAvailable("No");
+ headerDataList.add(msl);
+
+ msl = new MSL_AvailabilityGetterSetter();
+ msl.setBrandName("Parodontax header 2");
+ msl.setMbq("6");
+ msl.setAvailable("No");
+ headerDataList.add(msl);
+
+
+ hashMapListHeaderData = new ArrayList<>();
+ hashMapListChildData = new HashMap<>();
+
+ if (headerDataList.size() > 0) {
+
+ for (int i = 0; i < headerDataList.size(); i++) {
+ hashMapListHeaderData.add(headerDataList.get(i));
+
+ childDataList = new ArrayList<>();
+
+ MSL_AvailabilityGetterSetter msl1 = new MSL_AvailabilityGetterSetter();
+ msl.setBrandName("Parodontax 1");
+ msl.setMbq("6");
+ msl.setAvailable("No");
+ childDataList.add(msl1);
+
+ msl1 = new MSL_AvailabilityGetterSetter();
+ msl.setBrandName("Parodontax 2");
+ msl.setMbq("6");
+ msl.setAvailable("No");
+ childDataList.add(msl1);
+
+ /*msl1 = new MSL_AvailabilityGetterSetter();
+ msl.setBrandName("Parodontax 3");
+ msl.setMbq("6");
+ msl.setAvailable("No");
+ childDataList.add(msl1);
+
+ msl1 = new MSL_AvailabilityGetterSetter();
+ msl.setBrandName("Parodontax 4");
+ msl.setMbq("6");
+ msl.setAvailable("No");
+ childDataList.add(msl1);*/
+
+ hashMapListChildData.put(hashMapListHeaderData.get(i), childDataList);
+ }
+
+ }
+
+ }
+
+ public class ExpandableListAdapter extends BaseExpandableListAdapter {
+ private Context _context;
+ private List _listDataHeader;
+ private HashMap> _listDataChild;
+
+ public ExpandableListAdapter(Context context, List listDataHeader,
+ HashMap> listChildData) {
+ this._context = context;
+ this._listDataHeader = listDataHeader;
+ this._listDataChild = listChildData;
+ }
+
+ @Override
+ public Object getGroup(int groupPosition) {
+ return this._listDataHeader.get(groupPosition);
+ }
+
+ @Override
+ public int getGroupCount() {
+ return this._listDataHeader.size();
+ }
+
+ @Override
+ public long getGroupId(int groupPosition) {
+ return groupPosition;
+ }
+
+ @Override
+ public View getGroupView(final int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) {
+ final MSL_AvailabilityGetterSetter headerTitle = (MSL_AvailabilityGetterSetter) getGroup(groupPosition);
+
+ if (convertView == null) {
+ LayoutInflater infalInflater = (LayoutInflater) this._context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
+ convertView = infalInflater.inflate(R.layout.list_group_opening, null, false);
+ }
+
+ //final int position = convertView.getId();
+ TextView txt_header = (TextView) convertView.findViewById(R.id.txt_Header);
+ ImageView img_camera = (ImageView) convertView.findViewById(R.id.img_camera);
+ RelativeLayout rel_header = (RelativeLayout) convertView.findViewById(R.id.rel_header);
+
+ txt_header.setTypeface(null, Typeface.BOLD);
+ txt_header.setText(headerTitle.getBrandName());
+
+ /*img_camera.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ String date = new Date().toLocaleString().toString();
+ String TempDate = new Date().toLocaleString().toString().replace(' ', '_').replace(',', '_').replace(':', '-');
+
+ _pathforcheck = "Stock" + headerTitle.getBrand_cd() + "_" + store_cd + "_" + visit_date.replace("/", "") + getCurrentTime().replace(":", "") + ".jpg";
+ child_position = groupPosition;
+ path = str + _pathforcheck;
+
+ startCameraActivity(groupPosition);
+ }
+ });
+
+ if (!img1.equalsIgnoreCase("")) {
+ if (groupPosition == child_position) {
+ headerTitle.setImg_cam(img1);
+ img1 = "";
+ }
+ }
+
+ if (headerTitle.getImg_cam().equals("")) {
+ img_camera.setBackgroundResource(R.drawable.cam);
+ } else {
+ img_camera.setBackgroundResource(R.drawable.camtick);
+ }
+
+ if (!checkflag) {
+ if (checkHeaderArray.contains(groupPosition)) {
+ txt_header.setTextColor(getResources().getColor(R.color.red));
+ } else {
+ txt_header.setTextColor(getResources().getColor(R.color.grey_dark));
+ }
+ }*/
+
+ return convertView;
+ }
+
+ @Override
+ public Object getChild(int groupPosition, int childPosititon) {
+ return this._listDataChild.get(this._listDataHeader.get(groupPosition)).get(childPosititon);
+ }
+
+ @Override
+ public int getChildrenCount(int groupPosition) {
+ return this._listDataChild.get(this._listDataHeader.get(groupPosition)).size();
+ }
+
+ @Override
+ public long getChildId(int groupPosition, int childPosition) {
+ return childPosition;
+ }
+
+ @Override
+ public View getChildView(final int groupPosition, final int childPosition, boolean isLastChild,
+ View convertView, ViewGroup parent) {
+ MSL_AvailabilityGetterSetter childData = (MSL_AvailabilityGetterSetter) getChild(groupPosition, childPosition);
+ ViewHolder holder = null;
+
+ if (convertView == null) {
+ LayoutInflater infalInflater = (LayoutInflater) this._context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
+ convertView = infalInflater.inflate(R.layout.list_item_openingstk, null, false);
+
+ holder = new ViewHolder();
+ holder.cardView = (CardView) convertView.findViewById(R.id.card_view);
+ holder.txt_skuName = (TextView) convertView.findViewById(R.id.txt_skuName);
+ holder.ed_stock = (EditText) convertView.findViewById(R.id.ed_stock);
+ holder.ed_faceup = (EditText) convertView.findViewById(R.id.ed_faceup);
+ holder.lin_item = (LinearLayout) convertView.findViewById(R.id.lin_item);
+ convertView.setTag(holder);
+ } else {
+ holder = (ViewHolder) convertView.getTag();
+ }
+
+ holder.txt_skuName.setText(childData.getBrandName());
+
+ /*if (childData.getFocus().equals("1")) {
+ holder.lin_item.setBackgroundColor(getResources().getColor(R.color.green));
+ } else if (childData.getInno().equals("1")) {
+ holder.lin_item.setBackgroundColor(getResources().getColor(R.color.yellow));
+ }
+
+ _listDataChild.get(listDataHeader.get(groupPosition)).get(childPosition).setSku_cd(childData.getSku_cd());
+ holder.txt_skuName.setText(childData.getSku());
+
+ //MFD Visibility
+ if (childData.getMfd().equals("1")) {
+ holder.lin_oldest_MFD.setVisibility(View.VISIBLE);
+ holder.lin_latest_MFD.setVisibility(View.VISIBLE);
+ } else {
+ holder.lin_oldest_MFD.setVisibility(View.GONE);
+ holder.lin_latest_MFD.setVisibility(View.GONE);
+ }
+
+ if (childData.getStock().equals("0")) {
+ holder.ed_faceup.setEnabled(false);
+ holder.btn_old_Date.setEnabled(false);
+ holder.btn_new_Date.setEnabled(false);
+ } else {
+ holder.ed_faceup.setEnabled(true);
+ holder.btn_old_Date.setEnabled(true);
+ holder.btn_new_Date.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+(?!$)", "");
+ _listDataChild.get(listDataHeader.get(groupPosition)).get(childPosition).setStock(stock);
+
+ if (edStock.equals("0")) {
+ _listDataChild.get(listDataHeader.get(groupPosition)).get(childPosition).setFaceup("0");
+ childData.setOldDate("");
+ childData.setNewDate("");
+
+ finalHolder.ed_faceup.setEnabled(false);
+ finalHolder.btn_old_Date.setEnabled(false);
+ finalHolder.btn_new_Date.setEnabled(false);
+ } else {
+ _listDataChild.get(listDataHeader.get(groupPosition)).get(childPosition).setFaceup(childData.getFaceup());
+ finalHolder.ed_faceup.setEnabled(true);
+ finalHolder.btn_old_Date.setEnabled(true);
+ finalHolder.btn_new_Date.setEnabled(true);
+ }
+ } else {
+ _listDataChild.get(listDataHeader.get(groupPosition)).get(childPosition).setStock("");
+ finalHolder.ed_faceup.setEnabled(true);
+ finalHolder.btn_old_Date.setEnabled(true);
+ finalHolder.btn_new_Date.setEnabled(true);
+ }
+ }
+ });
+
+ holder.ed_stock.setText(_listDataChild.get(listDataHeader.get(groupPosition)).get(childPosition).getStock());
+
+ holder.ed_faceup.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())) {
+ _listDataChild.get(listDataHeader.get(groupPosition)).get(childPosition).setFaceup(edFaceup);
+ } else {
+ if (isDialogOpen) {
+ isDialogOpen = !isDialogOpen;
+ AlertDialog.Builder builder = new AlertDialog.Builder(OrderEntryActivity.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 {
+ _listDataChild.get(listDataHeader.get(groupPosition)).get(childPosition).setFaceup("");
+ }
+ } else {
+ if (isDialogOpen) {
+ isDialogOpen = !isDialogOpen;
+ AlertDialog.Builder builder = new AlertDialog.Builder(OrderEntryActivity.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_faceup.setText(_listDataChild.get(listDataHeader.get(groupPosition)).get(childPosition).getFaceup());
+
+
+ holder.btn_new_Date.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ final Calendar c = Calendar.getInstance();
+ mYear = c.get(Calendar.YEAR);
+ mMonth = c.get(Calendar.MONTH);
+ mDay = c.get(Calendar.DAY_OF_MONTH);
+
+ // Launch Date Picker Dialog
+ DatePickerDialog dpd = new DatePickerDialog(OrderEntryActivity.this,
+ new DatePickerDialog.OnDateSetListener() {
+ @Override
+ public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
+ // Display Selected date in textbox
+ try {
+ if (childData.getOldDate().equals("")) {
+ String sDate = (monthOfYear + 1) + "/" + dayOfMonth + "/" + year;
+ SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy");
+
+ Date date1 = sdf.parse(sDate);
+ Date visitDate = sdf.parse(visit_date);
+
+ if (date1.compareTo(visitDate) != 1) {
+ String date = (monthOfYear + 1) + "/" + dayOfMonth + "/" + year;
+ _listDataChild.get(listDataHeader.get(groupPosition)).get(childPosition).setNewDate(date);
+
+ expListView.invalidateViews();
+ } else {
+ AlertDialog.Builder builder = new AlertDialog.Builder(OrderEntryActivity.this);
+ builder.setMessage("Latest Date can not be greater than the current date ")
+ .setCancelable(false)
+ .setPositiveButton("OK", new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ dialog.dismiss();
+ }
+ });
+ AlertDialog alert = builder.create();
+ alert.show();
+ }
+ } else {
+ SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy");
+ Date oldDate = sdf.parse(childData.getOldDate());
+
+ String sDate = (monthOfYear + 1) + "/" + dayOfMonth + "/" + year;
+ Date newDate = sdf.parse(sDate);
+ Date visitDate = sdf.parse(visit_date);
+
+ if (newDate.compareTo(oldDate) == -1) {
+ AlertDialog.Builder builder = new AlertDialog.Builder(OrderEntryActivity.this);
+ builder.setMessage("Latest Date can not be less than the oldest date ")
+ .setCancelable(false)
+ .setPositiveButton("OK", new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ dialog.dismiss();
+ }
+ });
+ AlertDialog alert = builder.create();
+ alert.show();
+ } else {
+ if (newDate.compareTo(visitDate) != 1) {
+ String date = (monthOfYear + 1) + "/" + dayOfMonth + "/" + year;
+ _listDataChild.get(listDataHeader.get(groupPosition)).get(childPosition).setNewDate(date);
+
+ expListView.invalidateViews();
+ } else {
+ AlertDialog.Builder builder = new AlertDialog.Builder(OrderEntryActivity.this);
+ builder.setMessage("Latest Date can not be greater than the current date ")
+ .setCancelable(false)
+ .setPositiveButton("OK", new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ dialog.dismiss();
+ }
+ });
+ AlertDialog alert = builder.create();
+ alert.show();
+ }
+ }
+ }
+ } catch (ParseException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ , mYear, mMonth, mDay);
+ dpd.show();
+ }
+ });
+
+ if (childData.getNewDate().equals("")) {
+ holder.txt_showNewDate.setText("");
+ } else {
+ holder.txt_showNewDate.setText(childData.getNewDate());
+ }
+
+ holder.btn_old_Date.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ final Calendar c = Calendar.getInstance();
+ mYear = c.get(Calendar.YEAR);
+ mMonth = c.get(Calendar.MONTH);
+ mDay = c.get(Calendar.DAY_OF_MONTH);
+
+ // Launch Date Picker Dialog
+ DatePickerDialog dpd = new DatePickerDialog(OrderEntryActivity.this,
+ new DatePickerDialog.OnDateSetListener() {
+ @Override
+ public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
+ // Display Selected date in textbox
+ try {
+ if (!childData.getNewDate().equals("")) {
+
+ SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy");
+ String sDate = (monthOfYear + 1) + "/" + dayOfMonth + "/" + year;
+
+ Date date1 = sdf.parse(sDate);//pick date
+ Date date2 = sdf.parse(childData.getNewDate()); //latest date selected
+ Date visitDate = sdf.parse(visit_date);//current date
+
+ if (date1.compareTo(visitDate) != 1) { //Compare Oldest Date and Current Date
+
+ if (date1.compareTo(date2) != 1) { //Compare Oldest Date and Latest Date
+ String date = (monthOfYear + 1) + "/" + dayOfMonth + "/" + year;
+ _listDataChild.get(listDataHeader.get(groupPosition)).get(childPosition).setOldDate(date);
+
+ expListView.invalidateViews();
+ } else {
+ AlertDialog.Builder builder = new AlertDialog.Builder(OrderEntryActivity.this);
+ builder.setMessage("Oldest Date can not be greater than the latest date ")
+ .setCancelable(false)
+ .setPositiveButton("OK", new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ dialog.dismiss();
+ }
+ });
+ AlertDialog alert = builder.create();
+ alert.show();
+ }
+ } else {
+ AlertDialog.Builder builder = new AlertDialog.Builder(OrderEntryActivity.this);
+ builder.setMessage("Oldest Date can not be greater than the current date ")
+ .setCancelable(false)
+ .setPositiveButton("OK", new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ dialog.dismiss();
+ }
+ });
+ AlertDialog alert = builder.create();
+ alert.show();
+ }
+ } else {
+ AlertDialog.Builder builder = new AlertDialog.Builder(OrderEntryActivity.this);
+ builder.setMessage("First Select the Latest Date ")
+ .setCancelable(false)
+ .setPositiveButton("OK", new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ dialog.dismiss();
+ }
+ });
+ AlertDialog alert = builder.create();
+ alert.show();
+ }
+ } catch (ParseException e) {
+ e.printStackTrace();
+ }
+ }
+ }, mYear, mMonth, mDay);
+ dpd.show();
+ }
+ });
+
+ if (childData.getOldDate().equals("")) {
+ holder.txt_showOldDate.setText("");
+ } else {
+ holder.txt_showOldDate.setText(childData.getOldDate());
+ }
+
+
+ if (!checkflag) {
+ boolean tempflag = false;
+
+ if (holder.ed_stock.getText().toString().equals("")) {
+ holder.ed_stock.setBackgroundColor(getResources().getColor(R.color.grey_background));
+ holder.ed_stock.setHintTextColor(getResources().getColor(R.color.red));
+ holder.ed_stock.setHint("Empty");
+ tempflag = true;
+ }
+
+ if (holder.ed_faceup.getText().toString().equals("")) {
+ holder.ed_faceup.setBackgroundColor(getResources().getColor(R.color.grey_background));
+ holder.ed_faceup.setHintTextColor(getResources().getColor(R.color.red));
+ holder.ed_faceup.setHint("Empty");
+ tempflag = true;
+ }
+
+ if (!holder.ed_stock.getText().toString().equals("0")) {
+ if (holder.txt_showOldDate.getText().toString().equals("")) {
+ holder.txt_showOldDate.setHintTextColor(getResources().getColor(R.color.red));
+ holder.txt_showOldDate.setHint("Select Oldest MFD ");
+ }
+ } else if (holder.ed_stock.getText().toString().equals("0")) {
+ holder.txt_showOldDate.setHint("");
+ }
+
+ if (!holder.ed_stock.getText().toString().equals("0")) {
+ if (holder.txt_showNewDate.getText().toString().equals("")) {
+ holder.txt_showNewDate.setHintTextColor(getResources().getColor(R.color.red));
+ holder.txt_showNewDate.setHint("Select Latest MFD ");
+ }
+ } else if (holder.ed_stock.getText().toString().equals("0")) {
+ holder.txt_showNewDate.setHint("");
+ }
+
+ if (tempflag) {
+ holder.cardView.setCardBackgroundColor(getResources().getColor(R.color.red));
+ } else {
+ holder.cardView.setCardBackgroundColor(getResources().getColor(R.color.white));
+ }
+ }*/
+
+ return convertView;
+ }
+
+ @Override
+ public boolean hasStableIds() {
+ return false;
+ }
+
+ @Override
+ public boolean isChildSelectable(int groupPosition, int childPosition) {
+ return true;
+ }
+ }
+
+ public class ViewHolder {
+ EditText ed_stock, ed_faceup;
+ CardView cardView;
+ TextView txt_skuName, txt_showOldDate, txt_showNewDate;
+ LinearLayout lin_item, lin_latest_MFD, lin_oldest_MFD;
+ Button btn_old_Date, btn_new_Date;
+ //public MutableWatcher mWatcher;
+ //public int mYear, mMonth, mDay, mHour, mMinute;
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ // Handle action bar item clicks here. The action bar will
+ // automatically handle clicks on the Home/Up button, so long
+ // as you specify a parent activity in AndroidManifest.xml.
+ int id = item.getItemId();
+
+ if (id == android.R.id.home) {
+ finish();
+ }
+
+ //noinspection SimplifiableIfStatement
+ if (id == R.id.action_settings) {
+ return true;
+ }
+
+ return super.onOptionsItemSelected(item);
+ }
+}
diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/CategoryGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/CategoryGetterSetter.java
new file mode 100644
index 0000000..1674bc9
--- /dev/null
+++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/CategoryGetterSetter.java
@@ -0,0 +1,27 @@
+package cpm.com.gskmtorange.xmlGetterSetter;
+
+/**
+ * Created by gagang on 22-12-2016.
+ */
+
+public class CategoryGetterSetter {
+
+ String category_name;
+ int category_img = -1;
+
+ public String getCategory_name() {
+ return category_name;
+ }
+
+ public void setCategory_name(String category_name) {
+ this.category_name = category_name;
+ }
+
+ public int getCategory_img() {
+ return category_img;
+ }
+
+ public void setCategory_img(int category_img) {
+ this.category_img = category_img;
+ }
+}
diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/CategoryWisePerformaceGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/CategoryWisePerformaceGetterSetter.java
new file mode 100644
index 0000000..ad875c1
--- /dev/null
+++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/CategoryWisePerformaceGetterSetter.java
@@ -0,0 +1,57 @@
+package cpm.com.gskmtorange.xmlGetterSetter;
+
+/**
+ * Created by gagang on 23-12-2016.
+ */
+
+public class CategoryWisePerformaceGetterSetter {
+ String period, sos, t2p, promo, msl_availability, oss;
+
+ public String getPeriod() {
+ return period;
+ }
+
+ public void setPeriod(String period) {
+ this.period = period;
+ }
+
+ public String getSos() {
+ return sos;
+ }
+
+ public void setSos(String sos) {
+ this.sos = sos;
+ }
+
+ public String getT2p() {
+ return t2p;
+ }
+
+ public void setT2p(String t2p) {
+ this.t2p = t2p;
+ }
+
+ public String getPromo() {
+ return promo;
+ }
+
+ public void setPromo(String promo) {
+ this.promo = promo;
+ }
+
+ public String getMsl_availability() {
+ return msl_availability;
+ }
+
+ public void setMsl_availability(String msl_availability) {
+ this.msl_availability = msl_availability;
+ }
+
+ public String getOss() {
+ return oss;
+ }
+
+ public void setOss(String oss) {
+ this.oss = oss;
+ }
+}
diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/DailyDataMenuGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/DailyDataMenuGetterSetter.java
new file mode 100644
index 0000000..f5f0a43
--- /dev/null
+++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/DailyDataMenuGetterSetter.java
@@ -0,0 +1,27 @@
+package cpm.com.gskmtorange.xmlGetterSetter;
+
+/**
+ * Created by gagang on 22-12-2016.
+ */
+
+public class DailyDataMenuGetterSetter {
+
+ String category_name;
+ int category_img = -1;
+
+ public String getCategory_name() {
+ return category_name;
+ }
+
+ public void setCategory_name(String category_name) {
+ this.category_name = category_name;
+ }
+
+ public int getCategory_img() {
+ return category_img;
+ }
+
+ public void setCategory_img(int 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
new file mode 100644
index 0000000..c4d96f2
--- /dev/null
+++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/MSL_AvailabilityGetterSetter.java
@@ -0,0 +1,33 @@
+package cpm.com.gskmtorange.xmlGetterSetter;
+
+/**
+ * Created by gagang on 23-12-2016.
+ */
+
+public class MSL_AvailabilityGetterSetter {
+ String brandName, mbq, available;
+
+ public String getBrandName() {
+ return brandName;
+ }
+
+ public void setBrandName(String brandName) {
+ this.brandName = brandName;
+ }
+
+ public String getMbq() {
+ return mbq;
+ }
+
+ public void setMbq(String mbq) {
+ this.mbq = mbq;
+ }
+
+ public String getAvailable() {
+ return available;
+ }
+
+ public void setAvailable(String available) {
+ this.available = available;
+ }
+}
diff --git a/GSKMTOrange/src/main/res/drawable/category.png b/GSKMTOrange/src/main/res/drawable/category.png
new file mode 100644
index 0000000..84bd621
Binary files /dev/null and b/GSKMTOrange/src/main/res/drawable/category.png differ
diff --git a/GSKMTOrange/src/main/res/drawable/competition.png b/GSKMTOrange/src/main/res/drawable/competition.png
new file mode 100644
index 0000000..13cc952
Binary files /dev/null and b/GSKMTOrange/src/main/res/drawable/competition.png differ
diff --git a/GSKMTOrange/src/main/res/drawable/primary_bay.png b/GSKMTOrange/src/main/res/drawable/primary_bay.png
new file mode 100644
index 0000000..a33b1da
Binary files /dev/null and b/GSKMTOrange/src/main/res/drawable/primary_bay.png differ
diff --git a/GSKMTOrange/src/main/res/drawable/promotions.png b/GSKMTOrange/src/main/res/drawable/promotions.png
new file mode 100644
index 0000000..1c9a5ca
Binary files /dev/null and b/GSKMTOrange/src/main/res/drawable/promotions.png differ
diff --git a/GSKMTOrange/src/main/res/drawable/save_icon.png b/GSKMTOrange/src/main/res/drawable/save_icon.png
new file mode 100644
index 0000000..b8b3dbb
Binary files /dev/null and b/GSKMTOrange/src/main/res/drawable/save_icon.png differ
diff --git a/GSKMTOrange/src/main/res/drawable/secondary_display.png b/GSKMTOrange/src/main/res/drawable/secondary_display.png
new file mode 100644
index 0000000..b0c025a
Binary files /dev/null and b/GSKMTOrange/src/main/res/drawable/secondary_display.png differ
diff --git a/GSKMTOrange/src/main/res/drawable/touch_points.png b/GSKMTOrange/src/main/res/drawable/touch_points.png
new file mode 100644
index 0000000..a81089c
Binary files /dev/null and b/GSKMTOrange/src/main/res/drawable/touch_points.png differ
diff --git a/GSKMTOrange/src/main/res/layout/activity_category_list.xml b/GSKMTOrange/src/main/res/layout/activity_category_list.xml
new file mode 100644
index 0000000..025e57c
--- /dev/null
+++ b/GSKMTOrange/src/main/res/layout/activity_category_list.xml
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/GSKMTOrange/src/main/res/layout/activity_category_wise_performance.xml b/GSKMTOrange/src/main/res/layout/activity_category_wise_performance.xml
new file mode 100644
index 0000000..2e7daa9
--- /dev/null
+++ b/GSKMTOrange/src/main/res/layout/activity_category_wise_performance.xml
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/GSKMTOrange/src/main/res/layout/activity_daily_data_menu.xml b/GSKMTOrange/src/main/res/layout/activity_daily_data_menu.xml
new file mode 100644
index 0000000..f712000
--- /dev/null
+++ b/GSKMTOrange/src/main/res/layout/activity_daily_data_menu.xml
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/GSKMTOrange/src/main/res/layout/activity_msl__availability.xml b/GSKMTOrange/src/main/res/layout/activity_msl__availability.xml
new file mode 100644
index 0000000..8115d19
--- /dev/null
+++ b/GSKMTOrange/src/main/res/layout/activity_msl__availability.xml
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/GSKMTOrange/src/main/res/layout/category_menu_row.xml b/GSKMTOrange/src/main/res/layout/category_menu_row.xml
new file mode 100644
index 0000000..4abf0d1
--- /dev/null
+++ b/GSKMTOrange/src/main/res/layout/category_menu_row.xml
@@ -0,0 +1,63 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/GSKMTOrange/src/main/res/layout/content_category_list.xml b/GSKMTOrange/src/main/res/layout/content_category_list.xml
new file mode 100644
index 0000000..ec1e039
--- /dev/null
+++ b/GSKMTOrange/src/main/res/layout/content_category_list.xml
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/GSKMTOrange/src/main/res/layout/content_category_wise_performance.xml b/GSKMTOrange/src/main/res/layout/content_category_wise_performance.xml
new file mode 100644
index 0000000..4f7e8dc
--- /dev/null
+++ b/GSKMTOrange/src/main/res/layout/content_category_wise_performance.xml
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/GSKMTOrange/src/main/res/layout/content_daily_main_menu.xml b/GSKMTOrange/src/main/res/layout/content_daily_main_menu.xml
new file mode 100644
index 0000000..788d0c0
--- /dev/null
+++ b/GSKMTOrange/src/main/res/layout/content_daily_main_menu.xml
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/GSKMTOrange/src/main/res/layout/content_msl__availability.xml b/GSKMTOrange/src/main/res/layout/content_msl__availability.xml
new file mode 100644
index 0000000..b703e70
--- /dev/null
+++ b/GSKMTOrange/src/main/res/layout/content_msl__availability.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
diff --git a/GSKMTOrange/src/main/res/layout/daily_main_menu_row.xml b/GSKMTOrange/src/main/res/layout/daily_main_menu_row.xml
new file mode 100644
index 0000000..4abf0d1
--- /dev/null
+++ b/GSKMTOrange/src/main/res/layout/daily_main_menu_row.xml
@@ -0,0 +1,63 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/GSKMTOrange/src/main/res/layout/item_category_wise_performance.xml b/GSKMTOrange/src/main/res/layout/item_category_wise_performance.xml
new file mode 100644
index 0000000..2a448be
--- /dev/null
+++ b/GSKMTOrange/src/main/res/layout/item_category_wise_performance.xml
@@ -0,0 +1,133 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/GSKMTOrange/src/main/res/layout/list_group_opening.xml b/GSKMTOrange/src/main/res/layout/list_group_opening.xml
new file mode 100644
index 0000000..35248e9
--- /dev/null
+++ b/GSKMTOrange/src/main/res/layout/list_group_opening.xml
@@ -0,0 +1,42 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/GSKMTOrange/src/main/res/layout/list_item_openingstk.xml b/GSKMTOrange/src/main/res/layout/list_item_openingstk.xml
new file mode 100644
index 0000000..8309509
--- /dev/null
+++ b/GSKMTOrange/src/main/res/layout/list_item_openingstk.xml
@@ -0,0 +1,463 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/GSKMTOrange/src/main/res/values/strings.xml b/GSKMTOrange/src/main/res/values/strings.xml
index 1e58048..f851073 100644
--- a/GSKMTOrange/src/main/res/values/strings.xml
+++ b/GSKMTOrange/src/main/res/values/strings.xml
@@ -32,4 +32,9 @@
Setting
Services
+ Category List
+ CategoryWise Performance
+ DailyMainMenuActivity
+ MSL_AvailabilityActivity
+