From bc4ab85914b1f09f5c8fc5bdd15b9dd0c89611c1 Mon Sep 17 00:00:00 2001 From: Gagan290 Date: Thu, 29 Dec 2016 14:43:28 +0530 Subject: [PATCH] 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 --- GSKMTOrange/src/main/AndroidManifest.xml | 6 + .../gsk_dailyentry/DailyDataMenuActivity.java | 5 + .../MSL_AvailabilityActivity.java | 7 +- .../gsk_dailyentry/Stock_FacingActivity.java | 356 ++++++++++++++++++ .../Stock_FacingGetterSetter.java | 33 ++ .../main/res/layout/activity_stock_facing.xml | 32 ++ .../res/layout/content_msl__availability.xml | 60 +++ .../main/res/layout/content_stock_facing.xml | 98 +++++ .../layout/item_msl_availability_child.xml | 12 +- .../res/layout/item_stock_facing_child.xml | 117 ++++++ .../res/layout/item_stock_facing_header.xml | 78 ++++ 11 files changed, 796 insertions(+), 8 deletions(-) create mode 100644 GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/Stock_FacingActivity.java create mode 100644 GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/Stock_FacingGetterSetter.java create mode 100644 GSKMTOrange/src/main/res/layout/activity_stock_facing.xml create mode 100644 GSKMTOrange/src/main/res/layout/content_stock_facing.xml create mode 100644 GSKMTOrange/src/main/res/layout/item_stock_facing_child.xml create mode 100644 GSKMTOrange/src/main/res/layout/item_stock_facing_header.xml diff --git a/GSKMTOrange/src/main/AndroidManifest.xml b/GSKMTOrange/src/main/AndroidManifest.xml index 337a712..278247a 100644 --- a/GSKMTOrange/src/main/AndroidManifest.xml +++ b/GSKMTOrange/src/main/AndroidManifest.xml @@ -76,5 +76,11 @@ android:windowSoftInputMode="adjustPan" /> + + \ No newline at end of file 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 8823aa7..798ae71 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 @@ -17,6 +17,7 @@ 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; @@ -136,6 +137,10 @@ public class DailyDataMenuActivity extends AppCompatActivity { Intent intent = new Intent(DailyDataMenuActivity.this, MSL_AvailabilityActivity.class); intent.putExtra("categoryName", dailyData.getCategory_name()); 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); } } 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 71eb16a..18a3bcb 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 @@ -42,6 +42,8 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { ExpandableListAdapter adapter; + String title; + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -55,10 +57,11 @@ public class MSL_AvailabilityActivity extends AppCompatActivity { expandableListView = (ExpandableListView) findViewById(R.id.expandableListView); txt_mslAvailabilityName = (TextView) findViewById(R.id.txt_mslAvailabilityName); + title = getIntent().getStringExtra("categoryName"); + txt_mslAvailabilityName.setText(title); + prepareList(); - - FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); fab.setOnClickListener(new View.OnClickListener() { @Override 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 new file mode 100644 index 0000000..b93d0ea --- /dev/null +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/gsk_dailyentry/Stock_FacingActivity.java @@ -0,0 +1,356 @@ +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.EditText; +import android.widget.ExpandableListView; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.RelativeLayout; +import android.widget.TextView; +import android.widget.ToggleButton; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; + +import cpm.com.gskmtorange.R; +import cpm.com.gskmtorange.xmlGetterSetter.MSL_AvailabilityGetterSetter; +import cpm.com.gskmtorange.xmlGetterSetter.Stock_FacingGetterSetter; + +public class Stock_FacingActivity extends AppCompatActivity { + ExpandableListView expandableListView; + TextView txt_stockFacingName; + + ArrayList headerDataList; + ArrayList childDataList; + List hashMapListHeaderData; + HashMap> hashMapListChildData; + + ExpandableListAdapter adapter; + + String title; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_stock_facing); + + Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); + setSupportActionBar(toolbar); + getSupportActionBar().setHomeButtonEnabled(true); + getSupportActionBar().setDisplayHomeAsUpEnabled(true); + + expandableListView = (ExpandableListView) findViewById(R.id.expandableListView); + txt_stockFacingName = (TextView) findViewById(R.id.txt_stockFacingName); + + title = getIntent().getStringExtra("categoryName"); + txt_stockFacingName.setText(title); + + prepareList(); + + 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<>(); + + 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<>(); + + if (headerDataList.size() > 0) { + + for (int i = 0; i < headerDataList.size(); i++) { + hashMapListHeaderData.add(headerDataList.get(i)); + + childDataList = new ArrayList<>(); + + 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); + expandableListView.setAdapter(adapter); + } + + 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) { + Stock_FacingGetterSetter headerTitle = (Stock_FacingGetterSetter) getGroup(groupPosition); + + if (convertView == null) { + LayoutInflater infalInflater = (LayoutInflater) this._context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); + convertView = infalInflater.inflate(R.layout.item_stock_facing_header, null, false); + } + + TextView txt_stockFaceupHeader = (TextView) convertView.findViewById(R.id.txt_stockFaceupHeader); + LinearLayout lin_stockFaceupHeader = (LinearLayout) convertView.findViewById(R.id.lin_stockFaceupHeader); + ImageView img_camera = (ImageView) convertView.findViewById(R.id.img_camera); + + txt_stockFaceupHeader.setTypeface(null, Typeface.BOLD); + txt_stockFaceupHeader.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) { + Stock_FacingGetterSetter childData = (Stock_FacingGetterSetter) getChild(groupPosition, childPosition); + ViewHolder holder = null; + + if (convertView == null) { + LayoutInflater infalInflater = (LayoutInflater) this._context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); + convertView = infalInflater.inflate(R.layout.item_stock_facing_child, null, false); + + holder = new ViewHolder(); + holder.cardView = (CardView) convertView.findViewById(R.id.card_view); + holder.lin_category = (LinearLayout) convertView.findViewById(R.id.lin_category); + + holder.txt_skuName = (TextView) convertView.findViewById(R.id.txt_skuName); + holder.ed_stock = (EditText) convertView.findViewById(R.id.ed_stock); + holder.ed_facing = (EditText) convertView.findViewById(R.id.ed_facing); + convertView.setTag(holder); + } else { + holder = (ViewHolder) convertView.getTag(); + } + + holder.txt_skuName.setText(childData.getBrandName()); + holder.ed_stock.setText(childData.getMbq()); + + 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_facing; + CardView cardView; + TextView txt_skuName; + LinearLayout lin_category; + } + + @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/Stock_FacingGetterSetter.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/Stock_FacingGetterSetter.java new file mode 100644 index 0000000..bb2b594 --- /dev/null +++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/xmlGetterSetter/Stock_FacingGetterSetter.java @@ -0,0 +1,33 @@ +package cpm.com.gskmtorange.xmlGetterSetter; + +/** + * Created by gagang on 23-12-2016. + */ + +public class Stock_FacingGetterSetter { + 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/layout/activity_stock_facing.xml b/GSKMTOrange/src/main/res/layout/activity_stock_facing.xml new file mode 100644 index 0000000..82b3ec7 --- /dev/null +++ b/GSKMTOrange/src/main/res/layout/activity_stock_facing.xml @@ -0,0 +1,32 @@ + + + + + + + + + + + + + diff --git a/GSKMTOrange/src/main/res/layout/content_msl__availability.xml b/GSKMTOrange/src/main/res/layout/content_msl__availability.xml index fe71d4b..8e9fda9 100644 --- a/GSKMTOrange/src/main/res/layout/content_msl__availability.xml +++ b/GSKMTOrange/src/main/res/layout/content_msl__availability.xml @@ -26,6 +26,66 @@ 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 bb82a6e..4c2a186 100644 --- a/GSKMTOrange/src/main/res/layout/item_msl_availability_child.xml +++ b/GSKMTOrange/src/main/res/layout/item_msl_availability_child.xml @@ -32,7 +32,7 @@ android:layout_weight="2.5" android:orientation="vertical"> - + android:textColor="#222" />--> - + android:textColor="#222" />--> - + android:textColor="#222" />--> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/GSKMTOrange/src/main/res/layout/item_stock_facing_header.xml b/GSKMTOrange/src/main/res/layout/item_stock_facing_header.xml new file mode 100644 index 0000000..fd33a8a --- /dev/null +++ b/GSKMTOrange/src/main/res/layout/item_stock_facing_header.xml @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file