diff --git a/.idea/caches/build_file_checksums.ser b/.idea/caches/build_file_checksums.ser
index d98839b..b38f10a 100644
Binary files a/.idea/caches/build_file_checksums.ser and b/.idea/caches/build_file_checksums.ser differ
diff --git a/GSKMTOrange/build.gradle b/GSKMTOrange/build.gradle
index 270a232..2e5168b 100644
--- a/GSKMTOrange/build.gradle
+++ b/GSKMTOrange/build.gradle
@@ -21,27 +21,27 @@ android {
targetSdkVersion 26
//For Egypt
- /* versionCode 29
- versionName "4.1"*/
+ versionCode 29
+ versionName "4.1"
//For UAE
- /* versionCode 24
- versionName "3.6"*/
-
-
- //For Turkey
/* versionCode 25
versionName "3.7"*/
+
+ //For Turkey
+ /* versionCode 25
+ versionName "3.7"*/
//For KSA
- versionCode 27
- versionName "3.9"
+ /* versionCode 27
+ versionName "3.9"*/
//For SA
- /*versionCode 26
- versionName "3.7"*/
- /* versionCode 22
- versionName "3.4"*/
+ /* versionCode 27
+ versionName "3.8"*/
+
+// versionCode 22
+// versionName "3.4"
multiDexEnabled true
@@ -62,6 +62,8 @@ dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation files('libs/ksoap2-android-assembly-3.6.2-jar-with-dependencies.jar')
implementation 'com.android.support:support-v4:28.0.0'
+ implementation 'android.arch.navigation:navigation-fragment:1.0.0'
+ implementation 'android.arch.navigation:navigation-ui:1.0.0'
androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
diff --git a/GSKMTOrange/src/main/AndroidManifest.xml b/GSKMTOrange/src/main/AndroidManifest.xml
index d274fc3..3397efd 100644
--- a/GSKMTOrange/src/main/AndroidManifest.xml
+++ b/GSKMTOrange/src/main/AndroidManifest.xml
@@ -24,11 +24,15 @@
android:largeHeap="true"
android:supportsRtl="true"
android:theme="@style/AppTheme">
+
+ android:screenOrientation="portrait"
+ android:theme="@style/AppTheme.NoActionBar" />
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_AvailabilityStockFacingGetterSetter data = hashMapListChildData.get(hashMapListHeaderData.get(i)).get(j);
+
+ 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());
+ values.put("MBQ", data.getMbq());
+ values.put("TOGGLE_VALUE", data.getToggleValue());
+ if (data.getFacing().equals("")) {
+ values.put("FACING", "0");
+ } else {
+ values.put("FACING", data.getFacing());
+ }
+ values.put("STOCK", data.getStock());
+ values.put("COMPANY_ID", data.getCompany_id());
+ values.put("MUST_HAVE", data.getMust_have());
+
+ db.insert(CommonString.TABLE_INSERT_MSL_AVAILABILITY_STOCK_FACING, null, values);
+ }
+ }
+ db.setTransactionSuccessful();
+ db.endTransaction();
+ } catch (Exception ex) {
+ Log.d("Exception ", " in Insert MSL_Availability_StockFacing " + ex.toString());
+ }
+ }
+
+ public void updateMSL_Availability_StockFacingWelance(
+ 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_AvailabilityStockFacingGetterSetter data = hashMapListChildData.get(hashMapListHeaderData.get(i)).get(j);
+
+ values.put("TOGGLE_VALUE", data.getToggleValue());
+ values.put("STOCK", data.getStock());
+
+ if (data.getFacing().equals("")) {
+ values.put("FACING", "0");
+ } else {
+ values.put("FACING", data.getFacing());
+ }
+
+ db.update(CommonString.TABLE_INSERT_MSL_AVAILABILITY_STOCK_FACING, values,
+ "Brand_Id ='" + hashMapListHeaderData.get(i).getBrand_id() + "' AND SKU_ID ='" + data.getSku_id() +
+ "' AND Category_Id='" + categoryId + "' AND Store_Id='" + storeId + "'", null);
+ }
+ }
+ db.setTransactionSuccessful();
+ db.endTransaction();
+ } catch (Exception ex) {
+ Log.d("Exception ", " in Insert MSL_Availability_StockFacing " + ex.toString());
+ }
+ }
+
+ @SuppressLint("LongLogTag")
+ public boolean checkMsl_Availability_StockFacingDataWelance(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_Stock_Facing_Data " +
+ "where category_id='" + category_id + "' and Store_Id='" + store_id + "'", null);
+
+ if (dbcursor != null) {
+ if (dbcursor.moveToFirst()) {
+ do {
+ MSL_AvailabilityStockFacingGetterSetter sb = new MSL_AvailabilityStockFacingGetterSetter();
+
+ sb.setSku_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("SKU_ID")));
+ list.add(sb);
+ } while (dbcursor.moveToNext());
+ }
+ dbcursor.close();
+
+ return list.size() > 0;
+ }
+ } catch (Exception e) {
+ Log.d("Exception ", "when fetching Records!!!!!!!!!!!!!!!!!!!!!" + e.toString());
+ return false;
+ }
+
+ Log.d("MSL_Availability_StockFacing ", "midday---------------------->Stop<-----------");
+ return false;
+ }
+
+ public ArrayList getPlanogramAddShelfHeaderAfterSaveDataWelance(
+ String store_id, String category_id) {
+
+ ArrayList list = new ArrayList<>();
+ Cursor dbcursor = null;
+
+ try {
+ dbcursor = db.rawQuery("Select * from Stock_Facing_Planogram_Header_Data " +
+ "where Store_id='" + store_id + "' and category_id='" + category_id + "'", null);
+
+ if (dbcursor != null) {
+ dbcursor.moveToFirst();
+ while (!dbcursor.isAfterLast()) {
+ StockFacing_PlanogramTrackerDataGetterSetter cd = new StockFacing_PlanogramTrackerDataGetterSetter();
+
+ cd.setKey_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("KEY_ID")));
+ cd.setCategory_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("category_id")));
+ cd.setSp_addShelf_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("Shelf_id")));
+ cd.setSp_addShelf(dbcursor.getString(dbcursor.getColumnIndexOrThrow("Shelf")));
+ cd.setSp_shelfPosition(dbcursor.getString(dbcursor.getColumnIndexOrThrow("Shelf_Position")));
+
+ list.add(cd);
+
+ dbcursor.moveToNext();
+ }
+ dbcursor.close();
+ return list;
+ }
+ } catch (Exception e) {
+
+ Log.d("Exception ", "get Planogram Shelf Header After Save !" + e.toString());
+
+ }
+ return list;
+ }
+
+ public ArrayList getStockAndFacingPlanogramAfterSKUDataWelance(
+ String key_id) {
+
+ ArrayList list = new ArrayList<>();
+ Cursor dbcursor = null;
+
+ try {
+
+ dbcursor = db.rawQuery("Select * from Stock_Facing_Planogram_Child_Data " +
+ "where common_id='" + key_id + "'", null);
+
+ if (dbcursor != null) {
+
+ dbcursor.moveToFirst();
+ while (!dbcursor.isAfterLast()) {
+ StockFacing_PlanogramTrackerDataGetterSetter cd = new StockFacing_PlanogramTrackerDataGetterSetter();
+
+ cd.setSp_addShelf_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("Shelf_id")));
+ cd.setSp_addShelf(dbcursor.getString(dbcursor.getColumnIndexOrThrow("Shelf")));
+ cd.setSp_shelfPosition(dbcursor.getString(dbcursor.getColumnIndexOrThrow("Shelf_Position")));
+ cd.setSku_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("sku_id")));
+ cd.setSku(dbcursor.getString(dbcursor.getColumnIndexOrThrow("sku")));
+ cd.setCheckbox_sku(dbcursor.getString(dbcursor.getColumnIndexOrThrow("checkbox_sku")));
+
+ list.add(cd);
+ dbcursor.moveToNext();
+ }
+ dbcursor.close();
+ return list;
+ }
+ } catch (Exception e) {
+ Log.d("Exception ", "get MSL_AvailabilityHeader!" + e.toString());
+ return list;
+ }
+ return list;
+ }
+
+
+ public ArrayList getMSL_Availability_StockFacingSKU_AfterSaveDataWelance(
+ String category_id, String brand_id, String store_id) {
+
+ ArrayList list = new ArrayList<>();
+ Cursor dbcursor = null;
+
+ try {
+ dbcursor = db.rawQuery("Select * from Msl_Availability_Stock_Facing_Data " +
+ "where category_id='" + category_id + "' and Brand_Id='" + brand_id + "' AND Store_Id='" + store_id + "'", null);
+
+ if (dbcursor != null) {
+ dbcursor.moveToFirst();
+ while (!dbcursor.isAfterLast()) {
+ MSL_AvailabilityStockFacingGetterSetter cd = new MSL_AvailabilityStockFacingGetterSetter();
+
+ 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")));
+ cd.setFacing(dbcursor.getString(dbcursor.getColumnIndexOrThrow("FACING")));
+ cd.setStock(dbcursor.getString(dbcursor.getColumnIndexOrThrow("STOCK")));
+ cd.setCompany_id(dbcursor.getString(dbcursor.getColumnIndexOrThrow("COMPANY_ID")));
+ cd.setMust_have(dbcursor.getString(dbcursor.getColumnIndexOrThrow("MUST_HAVE")));
+
+ 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;
+ }
+
}
diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/LoginActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/LoginActivity.java
index ef2cb8e..85f0e14 100644
--- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/LoginActivity.java
+++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/LoginActivity.java
@@ -193,7 +193,9 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient.
//populateAutoComplete();
mPasswordView = (EditText) findViewById(R.id.password);
- /* museridView.setText("egypt.1");
+ /* museridView.setText("test.egypt");
+ mPasswordView.setText("cpm123");*/
+ /* museridView.setText("egypt.1");
mPasswordView.setText("cpm123");*/
/* museridView.setText("DSR_Alex_61");
mPasswordView.setText("cpm123");*/
@@ -205,19 +207,22 @@ public class LoginActivity extends AppCompatActivity implements GoogleApiClient.
mPasswordView.setText("cpm123");*/
//UAE
- /*museridView.setText("nazeer.k");
- mPasswordView.setText("cpm@123");*/
+ /* museridView.setText("testuae");
+ mPasswordView.setText("cpm123");*/
//KSA
/* museridView.setText("mohamed.o");
mPasswordView.setText("cpm@123");*/
- /* museridView.setText("testksa");
+ /* museridView.setText("testksa");123
mPasswordView.setText("cpm123");*/
//turkey
/* museridView.setText("testmer");
mPasswordView.setText("cpm123");*/
+ /* museridView.setText("testksa");
+ mPasswordView.setText("cpm123");*/
+
mPasswordView.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView textView, int id, KeyEvent keyEvent) {
diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/FirstFragment.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/FirstFragment.java
new file mode 100644
index 0000000..dad3858
--- /dev/null
+++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/FirstFragment.java
@@ -0,0 +1,37 @@
+package cpm.com.gskmtorange.dailyentry;
+
+import android.os.Bundle;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+
+import android.support.annotation.NonNull;
+import android.support.v4.app.Fragment;
+
+import androidx.navigation.fragment.NavHostFragment;
+
+import cpm.com.gskmtorange.R;
+
+public class FirstFragment extends Fragment {
+
+ @Override
+ public View onCreateView(
+ LayoutInflater inflater, ViewGroup container,
+ Bundle savedInstanceState
+ ) {
+ // Inflate the layout for this fragment
+ return inflater.inflate(R.layout.fragment_first, container, false);
+ }
+
+ public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
+ super.onViewCreated(view, savedInstanceState);
+
+ view.findViewById(R.id.button_first).setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ NavHostFragment.findNavController(FirstFragment.this)
+ .navigate(R.id.action_FirstFragment_to_SecondFragment);
+ }
+ });
+ }
+}
\ No newline at end of file
diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/NewStockDataActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/NewStockDataActivity.java
new file mode 100644
index 0000000..bdc3f50
--- /dev/null
+++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/NewStockDataActivity.java
@@ -0,0 +1,1649 @@
+package cpm.com.gskmtorange.dailyentry;
+
+import android.annotation.SuppressLint;
+import android.app.AlertDialog;
+import android.app.Dialog;
+import android.content.Context;
+import android.content.DialogInterface;
+import android.content.Intent;
+import android.content.SharedPreferences;
+import android.content.pm.ActivityInfo;
+import android.content.res.Configuration;
+import android.content.res.Resources;
+import android.graphics.Bitmap;
+import android.graphics.BitmapFactory;
+import android.graphics.Typeface;
+import android.os.Bundle;
+import android.os.Environment;
+import android.preference.PreferenceManager;
+import android.support.design.widget.FloatingActionButton;
+import android.support.design.widget.Snackbar;
+import android.support.v7.app.AppCompatActivity;
+import android.support.v7.widget.CardView;
+import android.support.v7.widget.Toolbar;
+import android.text.InputFilter;
+import android.text.Spanned;
+import android.util.Log;
+import android.view.LayoutInflater;
+import android.view.Menu;
+import android.view.MenuItem;
+import android.view.View;
+import android.view.ViewGroup;
+import android.view.Window;
+import android.view.WindowManager;
+import android.view.inputmethod.InputMethodManager;
+import android.webkit.WebView;
+import android.webkit.WebViewClient;
+import android.widget.AbsListView;
+import android.widget.BaseExpandableListAdapter;
+import android.widget.CompoundButton;
+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.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.text.DecimalFormat;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Locale;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+import cpm.com.gskmtorange.Database.GSKOrangeDB;
+import cpm.com.gskmtorange.R;
+import cpm.com.gskmtorange.constant.CommonFunctions;
+import cpm.com.gskmtorange.constant.CommonString;
+import cpm.com.gskmtorange.interfaces.DialogCallbackListener;
+import cpm.com.gskmtorange.xmlGetterSetter.MAPPING_PLANOGRAM_DataGetterSetter;
+import cpm.com.gskmtorange.xmlGetterSetter.MSL_AvailabilityStockFacingGetterSetter;
+import cpm.com.gskmtorange.xmlGetterSetter.StockFacing_PlanogramTrackerDataGetterSetter;
+
+public class NewStockDataActivity extends AppCompatActivity implements DialogCallbackListener{
+
+ ExpandableListView expandableListView;
+ TextView txt_mslAvailabilityName;
+
+ ArrayList headerDataList;
+ ArrayList childDataList;
+ List hashMapListHeaderData;
+ HashMap> hashMapListChildData;
+
+ List checkHeaderArray = new ArrayList<>();
+ boolean checkflag = true;
+
+ ExpandableListAdapter adapter;
+ ImageView camera1, camera2, camera3, camera4;
+ LinearLayout lin_camera1, lin_camera2, lin_camera3, lin_camera4;
+
+ GSKOrangeDB db;
+
+ String categoryName, categoryId, storeId, Error_Message = "";
+ String store_id, visit_date, username, intime, date, keyAccount_id, class_id, storeType_id, camera_allow, country_id, store_flag_str;
+ boolean isDialogOpen = true;
+ private SharedPreferences preferences;
+ int scrollPosition = 0;
+
+ String str_planogram = "", _pathforcheck = "";
+
+ ArrayList planogramShelfHeaderDataList = new ArrayList<>();
+ ArrayList planogramSkuChildDataList;
+ HashMap> planogramHashMapListChildData = new HashMap<>();
+ boolean editFlag = false;
+
+ //temp
+ public static final String FILE_PATH = Environment.getExternalStorageDirectory() + "/";
+ //ImageView bmImage;
+ RelativeLayout view;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ try {
+ setContentView(R.layout.activity_new_stock_data);
+
+ Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
+
+ expandableListView = (ExpandableListView) findViewById(R.id.expandableListView);
+ txt_mslAvailabilityName = (TextView) findViewById(R.id.txt_mslAvailabilityName);
+
+ camera1 = (ImageView) findViewById(R.id.img_camera1);
+ camera2 = (ImageView) findViewById(R.id.img_camera2);
+ camera3 = (ImageView) findViewById(R.id.img_camera3);
+ camera4 = (ImageView) findViewById(R.id.img_camera4);
+
+ lin_camera1 = (LinearLayout) findViewById(R.id.lin_camera1);
+ lin_camera2 = (LinearLayout) findViewById(R.id.lin_camera2);
+ lin_camera3 = (LinearLayout) findViewById(R.id.lin_camera3);
+ lin_camera4 = (LinearLayout) findViewById(R.id.lin_camera4);
+
+ db = new GSKOrangeDB(this);
+ db.open();
+
+
+ //preference data
+ preferences = PreferenceManager.getDefaultSharedPreferences(this);
+ CommonFunctions.updateLangResources(getApplicationContext(), preferences.getString(CommonString.KEY_LANGUAGE, ""));
+ store_id = preferences.getString(CommonString.KEY_STORE_ID, null);
+ visit_date = preferences.getString(CommonString.KEY_DATE, null);
+ date = preferences.getString(CommonString.KEY_DATE, null);
+ username = preferences.getString(CommonString.KEY_USERNAME, null);
+ intime = preferences.getString(CommonString.KEY_STORE_IN_TIME, "");
+ keyAccount_id = preferences.getString(CommonString.KEY_KEYACCOUNT_ID, "");
+ class_id = preferences.getString(CommonString.KEY_CLASS_ID, "");
+ storeType_id = preferences.getString(CommonString.KEY_STORETYPE_ID, "");
+ camera_allow = preferences.getString(CommonString.KEY_CAMERA_ALLOW, "");
+ country_id = preferences.getString(CommonString.KEY_COUNTRY_ID, "");
+ store_flag_str = preferences.getString(CommonString.KEY_STORE_FLAG, null);
+
+ //Intent data
+ categoryName = getIntent().getStringExtra("categoryName");
+ categoryId = getIntent().getStringExtra("categoryId");
+
+ //txt_mslAvailabilityName.setText(getResources().getString(R.string.title_activity_msl__availability));
+ toolbar.setTitle(getResources().getString(R.string.title_activity_msl__availability));
+ setSupportActionBar(toolbar);
+
+ getSupportActionBar().setDisplayHomeAsUpEnabled(true);
+
+ str_planogram = CommonString.FILE_PATH_PLANOGRAM;
+
+ prepareList();
+
+ //Camera
+ prepareDefaultList();
+
+ cameraMethod();
+
+ final FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
+ fab.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(final View view) {
+
+ expandableListView.clearFocus();
+ adapter.notifyDataSetChanged();
+
+ if (validateData(hashMapListHeaderData, hashMapListChildData)) {
+
+ db.open();
+
+ if (db.checkMsl_Availability_StockFacingDataWelance(store_id, categoryId)) {
+ db.updateMSL_Availability_StockFacingWelance(store_id, categoryId, hashMapListHeaderData, hashMapListChildData);
+ Snackbar.make(view, getResources().getString(R.string.update_message), Snackbar.LENGTH_LONG).setAction("Action", null).show();
+ } else {
+ db.InsertMSL_Availability_StockFacingWelance(store_id, categoryId, hashMapListHeaderData, hashMapListChildData);
+ Snackbar.make(view, getResources().getString(R.string.save_message), Snackbar.LENGTH_LONG).setAction("Action", null).show();
+ }
+ finish();
+ overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out);
+
+ /*AlertDialog.Builder builder = new AlertDialog.Builder(NewStockDataActivity.this);
+ builder.setMessage(getResources().getString(R.string.check_save_message))
+ .setCancelable(false)
+ .setPositiveButton(getResources().getString(R.string.yes), new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ db.open();
+
+ if (db.checkMsl_Availability_StockFacingData(store_id, categoryId)) {
+ db.updateMSL_Availability_StockFacing(store_id, categoryId, hashMapListHeaderData, hashMapListChildData);
+ Snackbar.make(view, getResources().getString(R.string.update_message), Snackbar.LENGTH_LONG).setAction("Action", null).show();
+ } else {
+ db.InsertMSL_Availability_StockFacing(store_id, categoryId, hashMapListHeaderData, hashMapListChildData);
+ Snackbar.make(view, getResources().getString(R.string.save_message), Snackbar.LENGTH_LONG).setAction("Action", null).show();
+ }
+ finish();
+ overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out);
+ }
+ })
+ .setNegativeButton(getResources().getString(R.string.no), new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ dialog.cancel();
+ }
+ });
+ AlertDialog alert = builder.create();
+ alert.show();*/
+ } else {
+ for (int i = 0; i < adapter.getGroupCount(); i++)
+ expandableListView.expandGroup(i);
+
+ /*AlertDialog.Builder builder = new AlertDialog.Builder(NewStockDataActivity.this);
+ builder.setMessage(Error_Message)
+ .setCancelable(false)
+ .setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ //expandableListView.smoothScrollToPosition(scrollPosition);
+
+ dialog.dismiss();
+ }
+ });
+ AlertDialog alert = builder.create();
+ alert.show();*/
+ }
+
+ }
+ });
+
+ expandableListView.setOnScrollListener(new AbsListView.OnScrollListener() {
+ @Override
+ public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
+
+ expandableListView.invalidate();
+
+ int lastItem = firstVisibleItem + visibleItemCount;
+
+ if (firstVisibleItem == 0) {
+ fab.show();//.setVisibility(View.VISIBLE);
+ } else if (lastItem == totalItemCount) {
+ fab.hide();//setVisibility(View.INVISIBLE);
+ } else {
+ fab.show();//setVisibility(View.VISIBLE);
+ }
+ }
+
+ @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;
+ }
+ });
+ } catch (Resources.NotFoundException e) {
+ e.printStackTrace();
+ }
+
+
+ /* view = (RelativeLayout)findViewById(R.id.content_msl__availability);
+ //bmImage = (ImageView)findViewById(R.id.image);
+
+ view.setDrawingCacheEnabled(true);
+ // this is the important code :)
+ // Without it the view will have a dimension of 0,0 and the bitmap will be null
+
+ view.measure(View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED),
+ View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED));
+
+ view.layout(0, 0, view.getMeasuredWidth(), view.getMeasuredHeight());
+
+ view.buildDrawingCache(true);
+ final Bitmap b = Bitmap.createBitmap(view.getDrawingCache());
+ view.setDrawingCacheEnabled(false); // clear drawing cache
+
+ //bmImage.setImageBitmap(b);
+
+ try{
+
+
+ File yourFile = new File(FILE_PATH+"imgForTxt.png");
+ yourFile.createNewFile(); // if file already exists will do nothing
+ final FileOutputStream stream = new FileOutputStream(yourFile, false); //create your FileOutputStream here
+
+ new Thread(new Runnable() {
+ public void run(){
+ b.compress(Bitmap.CompressFormat.PNG, 85, stream);
+ b.recycle();
+ try {
+ stream.close();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+ }).start();
+
+ }
+ catch (FileNotFoundException e) {
+ e.printStackTrace();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }*/
+ }
+
+ @Override
+ public boolean onCreateOptionsMenu(Menu menu) {
+ getMenuInflater().inflate(R.menu.planogram, menu);
+ return true;
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ int id = item.getItemId();
+
+ if (id == android.R.id.home) {
+
+ if (editFlag) {
+ CommonFunctions.showAlertDialog(NewStockDataActivity.this, getResources().getString(R.string.data_will_be_lost));
+ } else {
+ finish();
+ overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out);
+ }
+
+
+ /* AlertDialog.Builder builder = new AlertDialog.Builder(NewStockDataActivity.this);
+ builder.setTitle(getResources().getString(R.string.dialog_title));
+ builder.setMessage(getResources().getString(R.string.data_will_be_lost)).setCancelable(false)
+ .setPositiveButton(getResources().getString(R.string.yes), new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+
+ //adapter.notifyDataSetChanged();
+
+ if (!validateData(hashMapListHeaderData, hashMapListChildData)) {
+ if (!camera_allow.equals("1")) {
+ db.deletePlanogramListStoreAndCategorywise(store_id, categoryId,
+ planogramShelfHeaderDataList, planogramHashMapListChildData);
+ }
+ }
+ finish();
+ overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out);
+ }
+ })
+ .setNegativeButton(getResources().getString(R.string.no), new DialogInterface.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog, int which) {
+
+ }
+ });
+ AlertDialog alert = builder.create();
+ alert.show();*/
+ //finish();
+ } else if (id == R.id.action_planogram) {//Planogram Dialog
+ expandableListView.clearFocus();
+
+ //final Dialog dialog = new Dialog(Stock_FacingActivity.this, android.R.style.Theme_Black_NoTitleBar_Fullscreen);
+ final Dialog dialog = new Dialog(NewStockDataActivity.this);
+ dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
+ //dialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
+ dialog.setContentView(R.layout.planogram_dialog_layout);
+ dialog.getWindow().setLayout(WindowManager.LayoutParams.MATCH_PARENT, WindowManager.LayoutParams.MATCH_PARENT);
+ dialog.setCancelable(false);
+
+ ArrayList mappingPlanogramList;
+
+ //Header
+ if (country_id.equals("7") || country_id.equals("5")) {
+ mappingPlanogramList = db.getMappingPlanogramData(categoryId, null, null, store_id, CommonString.TABLE_MAPPING_PLANOGRAM_STORE_WISE);
+ } else if (store_flag_str.equalsIgnoreCase(CommonString.FROM_DEVIATION)) {
+ mappingPlanogramList = db.getMappingPlanogramData(categoryId, storeType_id, class_id, null, CommonString.TABLE_MAPPING_PLANOGRAM_ADHOC);
+ } else {
+ mappingPlanogramList = db.getMappingPlanogramData(categoryId, storeType_id, class_id, null, CommonString.TABLE_MAPPING_PLANOGRAM);
+ }
+
+
+ //ImageView img_planogram = (ImageView) dialog.findViewById(R.id.img_planogram);
+ WebView webView = (WebView) dialog.findViewById(R.id.webview);
+ webView.setWebViewClient(new NewStockDataActivity.MyWebViewClient());
+
+ webView.getSettings().setAllowFileAccess(true);
+ webView.getSettings().setJavaScriptEnabled(true);
+ webView.getSettings().setBuiltInZoomControls(true);
+
+ String planogram_image = "";
+ if (mappingPlanogramList.size() > 0) {
+ planogram_image = mappingPlanogramList.get(0).getPLANOGRAM_IMAGE();
+ }
+ if (!planogram_image.equals("")) {
+ if (new File(str_planogram + planogram_image).exists()) {
+ Bitmap bmp = BitmapFactory.decodeFile(str_planogram + planogram_image);
+ // img_planogram.setRotation(90);
+ //img_planogram.setImageBitmap(bmp);
+ setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
+
+ String imagePath = "file://" + CommonString.FILE_PATH_PLANOGRAM + "/" + planogram_image;
+ String html = "
";
+ webView.loadDataWithBaseURL("", html, "text/html", "utf-8", "");
+
+ dialog.show();
+ } /*else {
+ //webView.loadUrl(String.valueOf(R.drawable.sad_cloud));
+
+ //img_planogram.setBackgroundResource(R.drawable.sad_cloud);
+ }*/
+ }
+
+
+ ImageView cancel = (ImageView) dialog.findViewById(R.id.img_cancel);
+ cancel.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
+ dialog.dismiss();
+ }
+ });
+
+ //dialog.show();
+ return true;
+ }
+
+ return super.onOptionsItemSelected(item);
+ }
+
+ @Override
+ public void onSelect(boolean flag) {
+ if (flag) {
+ //adapter.notifyDataSetChanged();
+ if (!validateData(hashMapListHeaderData, hashMapListChildData)) {
+
+ if (!camera_allow.equals("1")) {
+ db.deletePlanogramListStoreAndCategorywise(store_id, categoryId,
+ planogramShelfHeaderDataList, planogramHashMapListChildData);
+ }
+ }
+ finish();
+ overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out);
+ }
+ }
+
+ @Override
+ public void onSave(boolean flag) {
+
+ }
+
+ private class MyWebViewClient extends WebViewClient {
+
+ @Override
+ public boolean shouldOverrideUrlLoading(WebView view, String url) {
+ view.loadUrl(url);
+ return true;
+ }
+
+ @Override
+ public void onPageFinished(WebView view, String url) {
+ super.onPageFinished(view, url);
+ view.clearCache(true);
+ }
+
+ @Override
+ public void onPageStarted(WebView view, String url, Bitmap favicon) {
+ super.onPageStarted(view, url, favicon);
+ }
+ }
+
+ private void cameraMethod() {
+ /*cameraData = new Store_wise_camera_DataGetterSetter();
+
+ if (db.isStorewiseCameraSave(store_id, categoryId)) {
+ cameraData = db.getStore_wise_camera(store_id, categoryId);
+ } else {
+ cameraData.setStore_id(store_id);
+ cameraData.setCategory_id(categoryId);
+ cameraData.setCamera1("");
+ cameraData.setCamera2("");
+ cameraData.setCamera3("");
+ cameraData.setCamera4("");
+ cameraData.setCheckSaveStatus("0");
+ }
+
+
+ if (camera_allow.equals("1")) {
+
+ findViewById(R.id.view_camera2).setVisibility(View.VISIBLE);
+ findViewById(R.id.view_camera3).setVisibility(View.VISIBLE);
+
+ if (cameraData.getCamera1().equals("")) {
+ camera1.setBackgroundResource(R.mipmap.camera_orange);
+ } else {
+ camera1.setBackgroundResource(R.mipmap.camera_green);
+ }
+
+ if (cameraData.getCamera2().equals("")) {
+ camera2.setBackgroundResource(R.mipmap.camera_orange);
+ } else {
+ camera2.setBackgroundResource(R.mipmap.camera_green);
+ }
+
+ if (cameraData.getCamera3().equals("")) {
+ camera3.setBackgroundResource(R.mipmap.camera_orange);
+ } else {
+ camera3.setBackgroundResource(R.mipmap.camera_green);
+ }
+
+ if (cameraData.getCamera4().equals("")) {
+ camera4.setBackgroundResource(R.mipmap.camera_orange);
+ } else {
+ camera4.setBackgroundResource(R.mipmap.camera_green);
+ }
+
+
+ lin_camera1.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ _pathforcheck = "Stock_Camera1_" + store_id + "_" + categoryId
+ + "_" + visit_date.replace("/", "") + "_" + CommonFunctions.getCurrentTimeWithLanguage(getApplicationContext()).replace(":", "") + ".jpg";
+ path = str_planogram+ _pathforcheck;
+
+ startCameraActivity(3);
+ }
+ });
+
+ lin_camera2.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ _pathforcheck = "Stock_Camera2_" + store_id + "_" + categoryId
+ + "_" + visit_date.replace("/", "") + "_" + CommonFunctions.getCurrentTimeWithLanguage(getApplicationContext()).replace(":", "") + ".jpg";
+ path = str_planogram+ _pathforcheck;
+
+ startCameraActivity(4);
+ }
+ });
+
+ lin_camera3.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ _pathforcheck = "Stock_Camera3_" + store_id + "_" + categoryId
+ + "_" + visit_date.replace("/", "") + "_" + CommonFunctions.getCurrentTimeWithLanguage(getApplicationContext()).replace(":", "") + ".jpg";
+ path = str_planogram+ _pathforcheck;
+
+ startCameraActivity(5);
+ }
+ });
+
+ lin_camera4.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ _pathforcheck = "Stock_Camera4_" + store_id + "_" + categoryId
+ + "_" + visit_date.replace("/", "") + "_" + CommonFunctions.getCurrentTimeWithLanguage(getApplicationContext()).replace(":", "") + ".jpg";
+ path = str_planogram+ _pathforcheck;
+
+ startCameraActivity(6);
+ }
+ });
+
+ } else {*/
+
+ if (!camera_allow.equals("1")) {
+ findViewById(R.id.lin_camera).setVisibility(View.GONE);
+ /* findViewById(R.id.lin_camera).setVisibility(View.VISIBLE);
+
+ findViewById(R.id.view_camera2).setVisibility(View.GONE);
+ findViewById(R.id.view_camera3).setVisibility(View.GONE);
+
+ lin_camera2.setVisibility(View.GONE);
+ lin_camera3.setVisibility(View.GONE);
+ lin_camera4.setVisibility(View.GONE);
+
+ if (db.isPlanogramAddShelfSaveData(store_id, categoryId)) {
+ camera1.setBackgroundResource(R.mipmap.new_no_camera_done_edit);
+ } else {
+ camera1.setBackgroundResource(R.mipmap.new_no_camera);
+ }
+
+ lin_camera1.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ Intent intent = new Intent(NewStockDataActivity.this,
+ StockFacing_PlanogramTrackerActivity.class);
+
+ intent.putExtra("storeId", store_id);
+ intent.putExtra("keyAccount_id", keyAccount_id);
+ intent.putExtra("class_id", class_id);
+ intent.putExtra("storeType_id", storeType_id);
+ intent.putExtra("categoryId", categoryId);
+ intent.putExtra("categoryName", categoryName);
+
+ startActivityForResult(intent, 100);
+ }
+
+ });*/
+ } else {
+ findViewById(R.id.lin_camera).setVisibility(View.GONE);
+ }
+ }
+
+ //Planogram List for check and delete on backPress
+ private void prepareDefaultList() {
+ // Planogram After save shelf header data
+ planogramShelfHeaderDataList = db.getPlanogramAddShelfHeaderAfterSaveDataWelance(store_id, categoryId);
+
+ if (planogramShelfHeaderDataList.size() > 0) {
+
+ for (int i = 0; i < planogramShelfHeaderDataList.size(); i++) {
+ planogramSkuChildDataList = db.getStockAndFacingPlanogramAfterSKUDataWelance(planogramShelfHeaderDataList.get(i).getKey_id());
+
+ //After save sku child data
+ if (planogramSkuChildDataList.size() > 0) {
+ planogramHashMapListChildData.put(planogramShelfHeaderDataList.get(i), planogramSkuChildDataList);
+ }
+ }
+ }
+ }
+
+ @Override
+ protected void onResume() {
+ super.onResume();
+ CommonFunctions.updateLangResources(getApplicationContext(), preferences.getString(CommonString.KEY_LANGUAGE, ""));
+ }
+
+ private void prepareList() {
+ try {
+ hashMapListHeaderData = new ArrayList<>();
+ hashMapListChildData = new HashMap<>();
+
+ //Header
+ if (country_id.equals("7")) {
+ headerDataList = db.getMSL_Availability_StockFacingHeaderData(categoryId, null, null, null, store_id, CommonString.TABLE_MAPPING_STOCK_STOREWISE, CommonString.TABLE_MAPPING_SOS_TARGET);
+ } else if (store_flag_str.equalsIgnoreCase(CommonString.FROM_DEVIATION)) {
+ headerDataList = db.getMSL_Availability_StockFacingHeaderData(categoryId, keyAccount_id, storeType_id, class_id, store_id, CommonString.TABLE_MAPPING_STOCK_ADHOC, CommonString.TABLE_MAPPING_SOS_TARGET_ADHOC);
+ } else {
+ headerDataList = db.getMSL_Availability_StockFacingHeaderData(categoryId, keyAccount_id, storeType_id, class_id, store_id, CommonString.TABLE_MAPPING_STOCK, CommonString.TABLE_MAPPING_SOS_TARGET);
+ }
+
+
+ if (headerDataList.size() > 0) {
+ for (int i = 0; i < headerDataList.size(); i++) {
+ hashMapListHeaderData.add(headerDataList.get(i));
+
+ //childDataList = new ArrayList<>();
+ childDataList = db.getMSL_Availability_StockFacingSKU_AfterSaveDataWelance(categoryId, headerDataList.get(i).getBrand_id(), store_id);
+ if (!(childDataList.size() > 0)) {
+ if (country_id.equals("7")) {
+ childDataList = db.getMSL_Availability_StockFacingSKUData(categoryId, headerDataList.get(i).getBrand_id(), null, null, null, store_id, CommonString.TABLE_MAPPING_STOCK_STOREWISE);
+ } else if (store_flag_str.equalsIgnoreCase(CommonString.FROM_DEVIATION)) {
+ childDataList = db.getMSL_Availability_StockFacingSKUData(categoryId, headerDataList.get(i).getBrand_id(), keyAccount_id, storeType_id, class_id, store_id, CommonString.TABLE_MAPPING_STOCK_ADHOC);
+ } else {
+ childDataList = db.getMSL_Availability_StockFacingSKUData(categoryId, headerDataList.get(i).getBrand_id(), keyAccount_id, storeType_id, class_id, store_id, CommonString.TABLE_MAPPING_STOCK);
+ }
+ }
+
+ hashMapListChildData.put(hashMapListHeaderData.get(i), childDataList);
+ }
+ }
+
+ adapter = new NewStockDataActivity.ExpandableListAdapter(this, hashMapListHeaderData, hashMapListChildData);
+ expandableListView.setAdapter(adapter);
+
+ //expand all
+ for (int i = 0; i < adapter.getGroupCount(); i++)
+ expandableListView.expandGroup(i);
+
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ boolean validateData(List listDataHeader,
+ HashMap> listDataChild) {
+ boolean flag = true, child_flag = true, all_flag = true;
+
+ checkHeaderArray.clear();
+ int childCount = 0;
+
+ //temp list data for empty only
+ List listDataHeaderTemp = new ArrayList<>();
+
+ HashMap> listDataChildTemp = new HashMap<>();
+
+
+ for (int i = 0; i < listDataHeader.size(); i++) {
+ flag = true;
+
+ List listTemp = new ArrayList<>();
+
+ for (int j = 0; j < listDataChild.get(listDataHeader.get(i)).size(); j++) {
+
+ child_flag = true;
+
+ MSL_AvailabilityStockFacingGetterSetter data = listDataChild.get(listDataHeader.get(i)).get(j);
+
+ String stock = data.getStock();
+ String faceup = data.getFacing();
+
+ //Company_id
+ if (listDataChild.get(listDataHeader.get(i)).get(j).getCompany_id().equals("1")) {
+ if (data.getMust_have().equals("1")) {
+ /*if (!camera_allow.equalsIgnoreCase("1")) {
+ if (!(planogramShelfHeaderDataList.size() > 0)) {
+ flag = false;
+ Error_Message = getResources().getString(R.string.stock_planogram_data_noCamera_data);
+ break;
+ }
+ }*/
+
+ if (faceup.equals("")) {
+ if (!checkHeaderArray.contains(i)) {
+ checkHeaderArray.add(i);
+ }
+ //expandableListView.smoothScrollToPosition(i);
+ scrollPosition = i + j + childCount;
+
+ all_flag = false;
+ flag = false;
+ child_flag = false;
+ Error_Message = getResources().getString(R.string.faceup_value);
+ //break;
+ } else {
+ if (data.getToggleValue().equals("0")) {
+
+ if (stock.equals("")) {
+ if (!checkHeaderArray.contains(i)) {
+ checkHeaderArray.add(i);
+ }
+ //expandableListView.smoothScrollToPosition(i);
+ scrollPosition = i + j + childCount;
+
+ all_flag = false;
+ flag = false;
+ child_flag = false;
+ Error_Message = getResources().getString(R.string.stock_value);
+ //break;
+ }
+ } else {
+ //for Egypt
+ if (country_id.equals("6")) {
+ if (stock.equals("")) {
+ if (!checkHeaderArray.contains(i)) {
+ checkHeaderArray.add(i);
+ }
+ //expandableListView.smoothScrollToPosition(i);
+ scrollPosition = i + j + childCount;
+
+ all_flag = false;
+ flag = false;
+ child_flag = false;
+ Error_Message = getResources().getString(R.string.stock_value);
+ // break;
+ }
+ }
+ }
+ }
+ }
+ } else {
+ if (faceup.equals("")) {
+ if (!checkHeaderArray.contains(i)) {
+ checkHeaderArray.add(i);
+ }
+ //expandableListView.smoothScrollToPosition(i);
+ scrollPosition = i + j + childCount;
+
+ all_flag = false;
+ flag = false;
+ child_flag = false;
+ Error_Message = getResources().getString(R.string.faceup_value);
+ // break;
+ }
+ }
+ if (!child_flag)
+ listTemp.add(data);
+
+ }
+
+ if (flag == false) {
+ //checkflag = false;
+ listDataHeaderTemp.add(listDataHeader.get(i));
+ listDataChildTemp.put(listDataHeader.get(i), listTemp);
+
+ //break;
+ } else {
+ childCount = childCount + listDataChild.get(listDataHeader.get(i)).size();
+ //checkflag = true;
+ }
+ }
+
+ if (!all_flag) {
+ adapter = new NewStockDataActivity.ExpandableListAdapter(this, listDataHeaderTemp, listDataChildTemp);
+ expandableListView.setAdapter(adapter);
+ checkflag = false;
+ } else {
+ checkflag = true;
+ }
+
+ return all_flag;
+ }
+
+
+ @Override
+ public void onBackPressed() {
+ //super.onBackPressed();
+
+ /*AlertDialog.Builder builder = new AlertDialog.Builder(NewStockDataActivity.this);
+ builder.setTitle(getResources().getString(R.string.dialog_title));
+ builder.setMessage(getResources().getString(R.string.data_will_be_lost)).setCancelable(false)
+ .setPositiveButton(getResources().getString(R.string.yes), new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+
+ //adapter.notifyDataSetChanged();
+ if (!validateData(hashMapListHeaderData, hashMapListChildData)) {
+
+ if (!camera_allow.equals("1")) {
+ db.deletePlanogramListStoreAndCategorywise(store_id, categoryId,
+ planogramShelfHeaderDataList, planogramHashMapListChildData);
+ }
+ }
+ finish();
+ overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out);
+ }
+ })
+ .setNegativeButton(getResources().getString(R.string.no), new DialogInterface.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog, int which) {
+
+ }
+ });
+ AlertDialog alert = builder.create();
+ alert.show();*/
+ if (editFlag) {
+ CommonFunctions.showAlertDialog(NewStockDataActivity.this, getResources().getString(R.string.data_will_be_lost));
+ } else {
+ finish();
+ overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out);
+ }
+
+
+ /* if(flag){
+ //adapter.notifyDataSetChanged();
+ if (!validateData(hashMapListHeaderData, hashMapListChildData)) {
+
+ if (!camera_allow.equals("1")) {
+ db.deletePlanogramListStoreAndCategorywise(store_id, categoryId,
+ planogramShelfHeaderDataList, planogramHashMapListChildData);
+ }
+ }
+ finish();
+ overridePendingTransition(R.anim.activity_back_in, R.anim.activity_back_out);
+ }*/
+
+
+ }
+
+ 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) {
+ MSL_AvailabilityStockFacingGetterSetter headerTitle = (MSL_AvailabilityStockFacingGetterSetter) getGroup(groupPosition);
+
+ if (convertView == null) {
+ LayoutInflater infalInflater = (LayoutInflater) this._context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
+ convertView = infalInflater.inflate(R.layout.item_msl_availability_stock_facing_header, null, false);
+ }
+
+ TextView txt_categoryHeader = (TextView) convertView.findViewById(R.id.txt_categoryHeader);
+ RelativeLayout rel_header = (RelativeLayout) convertView.findViewById(R.id.rel_categoryHeader);
+ ImageView img_camera = (ImageView) convertView.findViewById(R.id.img_camera);
+ CardView card_view = (CardView) convertView.findViewById(R.id.card_view);
+
+ txt_categoryHeader.setTypeface(null, Typeface.BOLD);
+
+ if (headerTitle.getCompany_id().equals("1")) {
+ txt_categoryHeader.setTextColor(getResources().getColor(R.color.colorPrimaryDark));
+ } else {
+ txt_categoryHeader.setTextColor(getResources().getColor(R.color.black));
+ }
+ txt_categoryHeader.setText(headerTitle.getSub_category() + "-" + headerTitle.getBrand());
+
+
+ if (!checkflag) {
+ if (checkHeaderArray.contains(groupPosition)) {
+ card_view.setCardBackgroundColor(getResources().getColor(android.R.color.holo_red_dark));
+ } else {
+ card_view.setCardBackgroundColor(getResources().getColor(R.color.grey_background));
+ }
+ }
+
+ //empty check color change
+ /*if (headerTitle.getCompany_id().equals("1")) {
+ if (!checkflag) {
+ if (checkHeaderArray.contains(groupPosition)) {
+ //card_view.setCardBackgroundColor(getResources().getColor(android.R.color.holo_red_dark));
+ txt_categoryHeader.setTextColor(getResources().getColor(android.R.color.holo_red_dark));
+ } else {
+ txt_categoryHeader.setTextColor(getResources().getColor(R.color.colorPrimaryDark));
+ }
+ }
+ } else {
+ if (!checkflag) {
+ if (checkHeaderArray.contains(groupPosition)) {
+ txt_categoryHeader.setTextColor(getResources().getColor(android.R.color.holo_red_dark));
+ } else {
+ txt_categoryHeader.setTextColor(getResources().getColor(R.color.black));
+ }
+ }
+ }*/
+
+ 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) {
+
+ final MSL_AvailabilityStockFacingGetterSetter childData =
+ (MSL_AvailabilityStockFacingGetterSetter) getChild(groupPosition, childPosition);
+ NewStockDataActivity.ViewHolder holder = null;
+
+ if (convertView == null) {
+ LayoutInflater infalInflater = (LayoutInflater) this._context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
+ convertView = infalInflater.inflate(R.layout.item_msl_availability_stock_facing_child, null, false);
+
+ holder = new NewStockDataActivity.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.txt_mbq = (TextView) convertView.findViewById(R.id.txt_mbq);
+ holder.toggle_available = (ToggleButton) convertView.findViewById(R.id.toggle_available);
+
+ holder.facing = (EditText) convertView.findViewById(R.id.ed_facing);
+ holder.facing.setFilters(new InputFilter[]{new NewStockDataActivity.DecimalDigitsInputFilter(3, 1)});
+ holder.stock = (EditText) convertView.findViewById(R.id.ed_stock);
+
+ holder.stock_view = convertView.findViewById(R.id.stock_view);
+ convertView.setTag(holder);
+ } else {
+ holder = (NewStockDataActivity.ViewHolder) convertView.getTag();
+ }
+
+ holder.txt_skuName.setText(childData.getSku());
+ holder.txt_mbq.setText(childData.getMbq());
+
+ if (childData.getCompany_id().equals("1") && childData.getMust_have().equals("1")) {
+ holder.lin_category.setBackgroundColor(getResources().getColor(R.color.colorOrange));
+
+ holder.txt_mbq.setVisibility(View.VISIBLE);
+ holder.toggle_available.setVisibility(View.VISIBLE);
+ holder.facing.setVisibility(View.VISIBLE);
+
+ if (country_id.equals("6")) {
+ holder.stock.setVisibility(View.VISIBLE);
+ holder.stock_view.setVisibility(View.VISIBLE);
+ } else {
+ if (childData.getToggleValue().equals("1")) {
+ holder.stock.setVisibility(View.GONE);
+ holder.stock_view.setVisibility(View.GONE);
+ } else {
+ holder.stock.setVisibility(View.VISIBLE);
+ holder.stock_view.setVisibility(View.VISIBLE);
+ }
+ }
+
+
+ } else {
+
+ holder.lin_category.setBackgroundColor(getResources().getColor(R.color.white));
+ holder.txt_mbq.setVisibility(View.GONE);
+ holder.toggle_available.setVisibility(View.GONE);
+ holder.facing.setVisibility(View.VISIBLE);
+ holder.stock.setVisibility(View.GONE);
+ holder.stock_view.setVisibility(View.GONE);
+ }
+
+ if (childData.getCompany_id().equals("1")) {
+
+ if (childData.getMust_have().equals("1")) {
+ holder.txt_skuName.setTextColor(getResources().getColor(R.color.colorPrimary));
+ } else {
+ holder.txt_skuName.setTextColor(getResources().getColor(R.color.blue));
+ }
+
+ } else {
+ holder.txt_skuName.setTextColor(getResources().getColor(R.color.black));
+ }
+
+
+ /* if (childData.getCompany_id().equals("1") && childData.getMust_have().equals("1")) {
+ holder.lin_category.setBackgroundColor(getResources().getColor(R.color.colorOrange));
+ } else {
+ holder.lin_category.setBackgroundColor(getResources().getColor(R.color.white));
+ *//*holder.txt_mbq.setVisibility(View.GONE);
+ holder.toggle_available.setVisibility(View.GONE);
+ holder.facing.setVisibility(View.VISIBLE);
+ holder.stock.setVisibility(View.GONE);*//*
+ }*/
+
+
+ final NewStockDataActivity.ViewHolder finalHolder = holder;
+ holder.toggle_available.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
+ @Override
+ public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
+ if (buttonView.isPressed()) {
+
+ editFlag = true;
+
+ if (isChecked) {
+ childData.setToggleValue("1");
+ //for Egypt
+ if (country_id.equals("6")) {
+ finalHolder.stock.setVisibility(View.VISIBLE);
+ } else {
+ finalHolder.stock.setVisibility(View.GONE);
+ }
+
+ /*childData.setStock("");
+ childData.setFacing("");*/
+ } else {
+ /* childData.setStock("");
+ childData.setFacing("");*/
+ childData.setToggleValue("0");
+ finalHolder.stock.setVisibility(View.VISIBLE);
+
+ //If MBQ Value is 0
+ if (Integer.parseInt(childData.getMbq()) == 0) {
+ childData.setStock("0");
+ childData.setFacing("0");
+ } else {
+ //for Egypt
+ if (country_id.equals("6")) {
+ childData.setStock("");
+ childData.setFacing("");
+ }
+ }
+
+ /* else {
+ if (finalHolder.facing.getText().toString() != null && !finalHolder.facing.getText().toString().equals("")) {
+ if (Integer.parseInt(finalHolder.facing.getText().toString()) >= 0
+ && Integer.parseInt(finalHolder.facing.getText().toString()) >= Integer.parseInt(childData.getMbq())) {
+ childData.setFacing("");
+ finalHolder.facing.setText("");
+ }
+ }
+ }*/
+ }
+
+ expandableListView.clearFocus();
+ expandableListView.invalidateViews();
+ }
+ }
+ });
+
+ if (childData.getToggleValue().equals("1")) {
+ holder.toggle_available.setChecked(true);
+ if (country_id.equals("6") && childData.getCompany_id().equals("1") && childData.getMust_have().equals("1")) {
+ finalHolder.stock.setVisibility(View.VISIBLE);
+ } else {
+ finalHolder.stock.setVisibility(View.GONE);
+ childData.setStock("");
+ }
+
+
+ } else {
+ holder.toggle_available.setChecked(false);
+ finalHolder.stock.setVisibility(View.VISIBLE);
+ }
+
+
+ holder.stock.setOnFocusChangeListener(new View.OnFocusChangeListener() {
+ @Override
+ public void onFocusChange(View v, boolean hasFocus) {
+ final EditText caption = (EditText) v;
+ String edStock = caption.getText().toString().replaceFirst("^0+(?!$)", "");
+
+ /*if (!childData.getFacing().equals("") && Integer.parseInt(stock) >= 0 && Integer.parseInt(childData.getFacing()) < Integer.parseInt(stock)) {
+
+ }*/
+ editFlag = true;
+ if (!edStock.equals("")) {
+ String stock = edStock;
+
+ //for Egypt
+ if (country_id.equals("6") && childData.getToggleValue().equals("1")) {
+ if (!childData.getFacing().equals("")) {
+ if (Integer.parseInt(stock) >= 0 && Double.parseDouble(childData.getFacing()) <= Integer.parseInt(stock)) {
+
+ childData.setStock(stock);
+ } else {
+ AlertDialog.Builder builder = new AlertDialog.Builder(NewStockDataActivity.this);
+ builder.setMessage(getString(R.string.check_faceup))
+ .setCancelable(false)
+ .setPositiveButton(getString(R.string.ok), new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ finalHolder.stock.setText("");
+ dialog.dismiss();
+
+ }
+ });
+ AlertDialog alert = builder.create();
+ alert.show();
+ }
+ } else {
+ childData.setStock(stock);
+ }
+ } else {
+ int mbq = Integer.parseInt(childData.getMbq());
+ if (mbq != 0) {
+ if (Integer.parseInt(stock) >= 0 && Integer.parseInt(stock) < mbq) {
+
+ if (!childData.getFacing().equals("")) {
+ if (Integer.parseInt(stock) >= 0 && Double.parseDouble(childData.getFacing()) <= Integer.parseInt(stock)) {
+
+ childData.setStock(stock);
+ } else {
+ AlertDialog.Builder builder = new AlertDialog.Builder(NewStockDataActivity.this);
+ builder.setMessage(getString(R.string.check_faceup))
+ .setCancelable(false)
+ .setPositiveButton(getString(R.string.ok), new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ finalHolder.stock.setText("");
+ dialog.dismiss();
+
+ }
+ });
+ AlertDialog alert = builder.create();
+ alert.show();
+ }
+ } else {
+ childData.setStock(stock);
+ }
+ } else {
+ if (isDialogOpen) {
+ isDialogOpen = !isDialogOpen;
+ AlertDialog.Builder builder = new AlertDialog.Builder(NewStockDataActivity.this);
+ builder.setMessage(getString(R.string.check_stock))
+ .setCancelable(false)
+ .setPositiveButton(getString(R.string.ok), new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ finalHolder.stock.setText("");
+ dialog.dismiss();
+ isDialogOpen = !isDialogOpen;
+ }
+ });
+ AlertDialog alert = builder.create();
+ alert.show();
+ }
+ }
+ } else {
+ if (Integer.parseInt(stock) > 0) {
+ if (isDialogOpen) {
+ isDialogOpen = !isDialogOpen;
+ AlertDialog.Builder builder = new AlertDialog.Builder(NewStockDataActivity.this);
+ builder.setMessage(getString(R.string.check_stock))
+ .setCancelable(false)
+ .setPositiveButton(getString(R.string.ok), new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ finalHolder.stock.setText("");
+ dialog.dismiss();
+ isDialogOpen = !isDialogOpen;
+ }
+ });
+ AlertDialog alert = builder.create();
+ alert.show();
+ }
+ }
+ }
+ }
+ } else {
+ childData.setStock("");
+ }
+ }
+ });
+ holder.stock.setText(childData.getStock());
+
+
+ final NewStockDataActivity.ViewHolder finalHolder1 = holder;
+ final NewStockDataActivity.ViewHolder finalHolder2 = holder;
+ holder.facing.setOnFocusChangeListener(new View.OnFocusChangeListener() {
+ @Override
+ public void onFocusChange(View v, boolean hasFocus) {
+ final EditText caption = (EditText) v;
+ String edFaceup = caption.getText().toString().replaceFirst("^0+(?!$)", "");
+
+ editFlag = true;
+
+ if (edFaceup != null && !edFaceup.equals("") && !edFaceup.equals(".")) {
+ //int num = Integer.parseInt(edFaceup);
+ double faceup = Double.parseDouble(edFaceup);
+ int num = (int) faceup;
+ //int faceint = (int)(faceup - Math.floor( faceup ));
+ int faceint = (int) ((faceup % 1.0) * 10);
+ if (faceint != 0) {
+ if ((faceup % 1.0) * 10 != 5) {
+ faceint = 5;
+ edFaceup = String.valueOf(num + faceint / 10.0);
+ finalHolder2.facing.setText(edFaceup);
+
+ }
+ }
+
+
+ /*Double faceup = Double.parseDouble(edFaceup);
+ DecimalFormat twoDForm = new DecimalFormat(".#");
+ faceup= Double.valueOf(twoDForm.format(faceup));*/
+ }
+
+
+ boolean isFill = false;
+
+ //Toggle is no selected
+ if (childData.getToggleValue().equals("0")) {
+
+ //if stock is emplty
+ /*if (childData.getStock().equals("")) {
+ AlertDialog.Builder builder = new AlertDialog.Builder(NewStockDataActivity.this);
+ builder.setMessage(getString(R.string.msl_availability_new_stock_value))
+ .setCancelable(false)
+ .setPositiveButton(getString(R.string.ok), new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ dialog.dismiss();
+ }
+ });
+ AlertDialog alert = builder.create();
+ alert.show();
+ } else {*/
+ if (edFaceup != null && !edFaceup.equals("") && !edFaceup.equals(".")) {
+ int mbq = Integer.parseInt(childData.getMbq());
+ if (mbq != 0) {
+ if (Double.parseDouble(edFaceup) >= 0 && Double.parseDouble(edFaceup) < mbq) {
+ if (!childData.getStock().equals("")) {
+
+ //if (edFaceup != null && !edFaceup.equals("")) {
+
+ String faceup = edFaceup.replaceFirst("^0+(?!$)", "");
+
+ if (Double.parseDouble(faceup) <= Integer.parseInt(childData.getStock())) {
+
+ isFill = true;
+
+ /* if (!edFaceup.equals("")) {
+ childData.setFacing(faceup);
+ } else {
+ childData.setFacing("");
+ }*/
+ } else {
+ AlertDialog.Builder builder = new AlertDialog.Builder(NewStockDataActivity.this);
+ builder.setMessage(getString(R.string.check_faceup))
+ .setCancelable(false)
+ .setPositiveButton(getString(R.string.ok), new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ finalHolder1.facing.setText("");
+ dialog.dismiss();
+ finalHolder2.facing.setText("");
+ }
+ });
+ AlertDialog alert = builder.create();
+ alert.show();
+ }
+ // }
+ } else {
+ isFill = true;
+ }
+ } else {
+ if (isDialogOpen) {
+ isDialogOpen = !isDialogOpen;
+ AlertDialog.Builder builder = new AlertDialog.Builder(NewStockDataActivity.this);
+ builder.setMessage(getString(R.string.check_faceing))
+ .setCancelable(false)
+ .setPositiveButton(getString(R.string.ok), new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ finalHolder.facing.setText("");
+ dialog.dismiss();
+ isDialogOpen = !isDialogOpen;
+ }
+ });
+ AlertDialog alert = builder.create();
+ alert.show();
+ }
+ }
+ } else {
+ if (Double.parseDouble(edFaceup) > 0) {
+ if (isDialogOpen) {
+ isDialogOpen = !isDialogOpen;
+ AlertDialog.Builder builder = new AlertDialog.Builder(NewStockDataActivity.this);
+ builder.setMessage(getString(R.string.check_faceing))
+ .setCancelable(false)
+ .setPositiveButton(getString(R.string.ok), new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ finalHolder.facing.setText("");
+ dialog.dismiss();
+ isDialogOpen = !isDialogOpen;
+ }
+ });
+ AlertDialog alert = builder.create();
+ alert.show();
+ }
+ }
+ }
+
+ }
+ //}
+ } else {
+
+ if (country_id.equals("6")) {
+ if (!childData.getStock().equals("")) {
+
+ //if (edFaceup != null && !edFaceup.equals("")) {
+
+ String faceup = edFaceup.replaceFirst("^0+(?!$)", "");
+
+ if (edFaceup != null && !edFaceup.equals("") && !edFaceup.equals(".")) {
+ if (Double.parseDouble(faceup) <= Integer.parseInt(childData.getStock())) {
+
+ isFill = true;
+
+ /* if (!edFaceup.equals("")) {
+ childData.setFacing(faceup);
+ } else {
+ childData.setFacing("");
+ }*/
+ } else {
+ AlertDialog.Builder builder = new AlertDialog.Builder(NewStockDataActivity.this);
+ builder.setMessage(getString(R.string.check_faceup))
+ .setCancelable(false)
+ .setPositiveButton(getString(R.string.ok), new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ finalHolder1.facing.setText("");
+ dialog.dismiss();
+ finalHolder2.facing.setText("");
+ }
+ });
+ AlertDialog alert = builder.create();
+ alert.show();
+ }
+ } else {
+ isFill = true;
+ }
+ // }
+ } else {
+ isFill = true;
+ }
+ } else {
+ isFill = true;
+ }
+
+ }
+ /* //If toggle is yes then facing cannot be 0
+ if (childData.getCompany_id().equals("1") && childData.getMust_have().equals("1")
+ && !edFaceup.equals("") && edFaceup.equals("0")) {
+
+ AlertDialog.Builder builder = new AlertDialog.Builder(NewStockDataActivity.this);
+ builder.setMessage(getString(R.string.check_faceup_not_zero))
+ .setCancelable(false)
+ .setPositiveButton(getString(R.string.ok), new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ finalHolder1.facing.setText("");
+ dialog.dismiss();
+
+ }
+ });
+ AlertDialog alert = builder.create();
+ alert.show();
+ } else {
+ isFill = true;
+
+ }*/
+
+
+ if (isFill) {
+ if (!edFaceup.equals("") && !edFaceup.equals(".")) {
+ String faceup = "";
+ if (edFaceup.equals("0") || edFaceup.equals(".0")) {
+ faceup = "0";
+ } else {
+ faceup = edFaceup.replaceFirst("^0+(?!$)", "");
+ //faceup = new DecimalFormat("##.#").format(Double.parseDouble(faceup));
+ }
+
+ // String str2 = PerfectDecimal(faceup, 3, 1);
+ childData.setFacing(faceup);
+ } else {
+ childData.setFacing("");
+ }
+ }
+
+ }
+ });
+
+ holder.facing.setText(childData.getFacing());
+
+ //empty check color change
+ if (!checkflag) {
+ boolean tempflag = false;
+
+ if (childData.getCompany_id().equals("1")) {
+
+ if (childData.getToggleValue().equals("0")) {
+ if (holder.stock.getText().toString().equals("")) {
+ holder.stock.setBackgroundColor(getResources().getColor(R.color.white));
+ holder.stock.setHintTextColor(getResources().getColor(android.R.color.holo_red_dark));
+ holder.stock.setHint(getString(R.string.empty));
+ tempflag = true;
+ }
+
+ if (holder.facing.getText().toString().equals("")) {
+ holder.facing.setBackgroundColor(getResources().getColor(R.color.white));
+ holder.facing.setHintTextColor(getResources().getColor(android.R.color.holo_red_dark));
+ holder.facing.setHint(getString(R.string.empty));
+ tempflag = true;
+ }
+ } else {
+ if (childData.getMust_have().equals("1")) {
+ if (holder.facing.getText().toString().equals("")) {
+ holder.facing.setBackgroundColor(getResources().getColor(R.color.white));
+ holder.facing.setHintTextColor(getResources().getColor(android.R.color.holo_red_dark));
+ holder.facing.setHint(getString(R.string.empty));
+
+/* if (childData.getCompany_id().equals("1") && !childData.getMust_have().equals("0")) {
+ }else{
+ holder.facing.setHint("");
+ }*/
+ tempflag = true;
+ }
+
+ //for Egypt
+ if (country_id.equals("6")) {
+ if (holder.stock.getText().toString().equals("")) {
+ holder.stock.setBackgroundColor(getResources().getColor(R.color.white));
+ holder.stock.setHintTextColor(getResources().getColor(android.R.color.holo_red_dark));
+ holder.stock.setHint(getString(R.string.empty));
+ tempflag = true;
+ }
+ }
+
+ } else {
+ holder.facing.setHint("");
+ }
+ }
+
+
+ if (tempflag) {
+ //holder.cardView.setCardBackgroundColor(getResources().getColor(android.R.color.holo_red_dark));
+ holder.lin_category.setBackgroundColor(getResources().getColor(android.R.color.holo_red_dark));
+ } else {
+ //holder.cardView.setCardBackgroundColor(getResources().getColor(R.color.white));
+ if (childData.getCompany_id().equals("1") && childData.getMust_have().equals("1")) {
+ holder.lin_category.setBackgroundColor(getResources().getColor(R.color.colorOrange));
+ } else {
+ holder.lin_category.setBackgroundColor(getResources().getColor(R.color.white));
+ }
+ }
+ } else {
+ if (holder.facing.getText().toString().equals("")) {
+ holder.facing.setBackgroundColor(getResources().getColor(R.color.white));
+ holder.facing.setHintTextColor(getResources().getColor(android.R.color.holo_red_dark));
+ holder.facing.setHint(getString(R.string.empty));
+ tempflag = true;
+ }
+
+
+ if (tempflag) {
+ //holder.cardView.setCardBackgroundColor(getResources().getColor(android.R.color.holo_red_dark));
+ holder.lin_category.setBackgroundColor(getResources().getColor(android.R.color.holo_red_dark));
+ } else {
+ //holder.cardView.setCardBackgroundColor(getResources().getColor(R.color.white));
+ if (childData.getCompany_id().equals("1") && childData.getMust_have().equals("1")) {
+ holder.lin_category.setBackgroundColor(getResources().getColor(R.color.colorOrange));
+ } else {
+ holder.lin_category.setBackgroundColor(getResources().getColor(R.color.white));
+ }
+ }
+ }
+ }
+
+ return convertView;
+ }
+
+ @Override
+ public boolean hasStableIds() {
+ return false;
+ }
+
+ @Override
+ public boolean isChildSelectable(int groupPosition, int childPosition) {
+ return true;
+ }
+ }
+
+ public class ViewHolder {
+ CardView cardView;
+ TextView txt_skuName, txt_mbq;
+ ToggleButton toggle_available;
+ LinearLayout lin_category;
+ EditText facing, stock;
+ View stock_view;
+ }
+
+
+ @SuppressLint("LongLogTag")
+ @Override
+ protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+ Log.e("MSL_AVailability_StockFacing", "resultCode: " + resultCode);
+
+ switch (requestCode) {
+ case 100:
+ //Planogram List for check and delete on backPress
+ prepareDefaultList();
+ if (db.isPlanogramAddShelfSaveData(store_id, categoryId)) {
+ camera1.setBackgroundResource(R.mipmap.new_no_camera_done_edit);
+ } else {
+ camera1.setBackgroundResource(R.mipmap.new_no_camera);
+ }
+
+ break;
+ }
+ super.onActivityResult(requestCode, resultCode, data);
+ }
+
+ public String PerfectDecimal(String str, int MAX_BEFORE_POINT, int MAX_DECIMAL) {
+ if (str.charAt(0) == '.') str = "0" + str;
+ int max = str.length();
+
+ String rFinal = "";
+ boolean after = false;
+ int i = 0, up = 0, decimal = 0;
+ char t;
+ while (i < max) {
+ t = str.charAt(i);
+ if (t != '.' && after == false) {
+ up++;
+ if (up > MAX_BEFORE_POINT) return rFinal;
+ } else if (t == '.') {
+ after = true;
+ } else {
+ decimal++;
+ if (decimal > MAX_DECIMAL)
+ return rFinal;
+ }
+ rFinal = rFinal + t;
+ i++;
+ }
+ return rFinal;
+ }
+
+ public class DecimalDigitsInputFilter implements InputFilter {
+
+ Pattern mPattern;
+
+ public DecimalDigitsInputFilter(int digitsBeforeZero, int digitsAfterZero) {
+ mPattern = Pattern.compile("[0-9]{0," + (digitsBeforeZero - 1) + "}+((\\.[0-9]{0," + (digitsAfterZero - 1) + "})?)||(\\.)?");
+ }
+
+ @Override
+ public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) {
+
+ Matcher matcher = mPattern.matcher(dest);
+ if (!matcher.matches())
+ return "";
+ return null;
+ }
+
+ }
+}
diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/SecondFragment.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/SecondFragment.java
new file mode 100644
index 0000000..2475eb9
--- /dev/null
+++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/dailyentry/SecondFragment.java
@@ -0,0 +1,37 @@
+package cpm.com.gskmtorange.dailyentry;
+
+import android.os.Bundle;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+
+import android.support.annotation.NonNull;
+import android.support.v4.app.Fragment;
+
+import androidx.navigation.fragment.NavHostFragment;
+
+import cpm.com.gskmtorange.R;
+
+public class SecondFragment extends Fragment {
+
+ @Override
+ public View onCreateView(
+ LayoutInflater inflater, ViewGroup container,
+ Bundle savedInstanceState
+ ) {
+ // Inflate the layout for this fragment
+ return inflater.inflate(R.layout.fragment_second, container, false);
+ }
+
+ public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
+ super.onViewCreated(view, savedInstanceState);
+
+ view.findViewById(R.id.button_second).setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ NavHostFragment.findNavController(SecondFragment.this)
+ .navigate(R.id.action_SecondFragment_to_FirstFragment);
+ }
+ });
+ }
+}
\ No newline at end of file
diff --git a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/UploadActivity.java b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/UploadActivity.java
index ba054ef..7eacba3 100644
--- a/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/UploadActivity.java
+++ b/GSKMTOrange/src/main/java/cpm/com/gskmtorange/upload/UploadActivity.java
@@ -613,6 +613,59 @@ public class UploadActivity extends AppCompatActivity {
data.value = 15;
data.name = getString(R.string.availability_data_uploading);
publishProgress(data);
+
+ //usk additional store
+ //Coaching visit data
+ db.open();
+ coachingVisitData = db.getCoachingVisitData(coverageList.get(i).getStoreId());
+
+ if (coachingVisitData.size() > 0) {
+
+ String onXml_coaching_data = "", coaching_xml = "";
+ for (int j = 0; j < coachingVisitData.size(); j++) {
+
+ String exist;
+
+ if (coachingVisitData.get(j).isExists()) {
+ exist = "1";
+ } else {
+ exist = "0";
+ }
+
+ coaching_xml = "[COACHING_VISIT_DATA]"
+ + "[MID]" + mid + "[/MID]"
+ + "[USER_ID]" + userId + "[/USER_ID]"
+ + "[EMP_ID]" + coachingVisitData.get(j).getEmp_id() + "[/EMP_ID]"
+ + "[IMAGE]" + coachingVisitData.get(j).getImg_path() + "[/IMAGE]"
+ + "[IS_EXIST]" + exist + "[/IS_EXIST]"
+ + "[/COACHING_VISIT_DATA]";
+ onXml_coaching_data = onXml_coaching_data + coaching_xml;
+ }
+
+ final String sos_xml = "[DATA]" + onXml_coaching_data + "[/DATA]";
+
+ request = new SoapObject(CommonString.NAMESPACE, CommonString.METHOD_UPLOAD_STOCK_XML_DATA);
+ request.addProperty("XMLDATA", sos_xml);
+ request.addProperty("KEYS", "COACHING_VISIT_DATA");
+ request.addProperty("USERNAME", userId);
+ request.addProperty("MID", mid);
+
+ envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
+ envelope.dotNet = true;
+ envelope.setOutputSoapObject(request);
+
+ androidHttpTransport = new HttpTransportSE(CommonString.URL);
+ androidHttpTransport.call(CommonString.SOAP_ACTION + CommonString.METHOD_UPLOAD_STOCK_XML_DATA, envelope);
+
+ result = envelope.getResponse();
+
+ data.value = 64;
+ data.name = getString(R.string.coaching_visit);
+ publishProgress(data);
+ }
+
+
+ //end usk
} else if (coverageList.get(i).getFlag_from().equals(CommonString.FROM_PHARMA)) {
//Pharmacy store data
@@ -2185,6 +2238,7 @@ public class UploadActivity extends AppCompatActivity {
}
});
} catch (Exception e) {
+
e.printStackTrace();
}
}
diff --git a/GSKMTOrange/src/main/res/layout/activity_new_stock_data.xml b/GSKMTOrange/src/main/res/layout/activity_new_stock_data.xml
new file mode 100644
index 0000000..b1f2c07
--- /dev/null
+++ b/GSKMTOrange/src/main/res/layout/activity_new_stock_data.xml
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/GSKMTOrange/src/main/res/layout/content_new_stock_data.xml b/GSKMTOrange/src/main/res/layout/content_new_stock_data.xml
new file mode 100644
index 0000000..bac48fd
--- /dev/null
+++ b/GSKMTOrange/src/main/res/layout/content_new_stock_data.xml
@@ -0,0 +1,220 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/GSKMTOrange/src/main/res/layout/fragment_first.xml b/GSKMTOrange/src/main/res/layout/fragment_first.xml
new file mode 100644
index 0000000..ac2e515
--- /dev/null
+++ b/GSKMTOrange/src/main/res/layout/fragment_first.xml
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/GSKMTOrange/src/main/res/layout/fragment_second.xml b/GSKMTOrange/src/main/res/layout/fragment_second.xml
new file mode 100644
index 0000000..c18d8e3
--- /dev/null
+++ b/GSKMTOrange/src/main/res/layout/fragment_second.xml
@@ -0,0 +1,27 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/GSKMTOrange/src/main/res/navigation/nav_graph.xml b/GSKMTOrange/src/main/res/navigation/nav_graph.xml
new file mode 100644
index 0000000..3de147f
--- /dev/null
+++ b/GSKMTOrange/src/main/res/navigation/nav_graph.xml
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/GSKMTOrange/src/main/res/values/strings.xml b/GSKMTOrange/src/main/res/values/strings.xml
index 1b73dc0..355f5c5 100644
--- a/GSKMTOrange/src/main/res/values/strings.xml
+++ b/GSKMTOrange/src/main/res/values/strings.xml
@@ -414,11 +414,20 @@
Counterfeit Indicators
Additional Stores - Adhoc
-
+
Promo Type
Competitor Name
Comment
Competition Promotion
+ NewStockDataActivity
+
+ First Fragment
+ Second Fragment
+ Next
+ Previous
+
+ Hello first fragment
+ Hello second fragment. Arg: %1$s