Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package accountlogin.registrationapp;
- import android.content.Intent;
- import android.os.Bundle;
- import android.support.annotation.NonNull;
- import android.support.annotation.StringDef;
- import android.support.v7.app.AppCompatActivity;
- import android.util.Log;
- import android.view.View;
- import android.widget.AdapterView;
- import android.widget.ArrayAdapter;
- import android.widget.Button;
- import android.widget.EditText;
- import android.widget.Spinner;
- import android.widget.Toast;
- import com.google.firebase.auth.FirebaseAuth;
- import com.google.firebase.auth.FirebaseUser;
- import com.google.firebase.database.DataSnapshot;
- import com.google.firebase.database.DatabaseError;
- import com.google.firebase.database.DatabaseReference;
- import com.google.firebase.database.FirebaseDatabase;
- import com.google.firebase.database.ValueEventListener;
- import com.google.firebase.storage.StreamDownloadTask;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.Iterator;
- import java.util.List;
- import java.util.ListIterator;
- public class AddInventory extends AppCompatActivity {
- static List<String> arrMaxAisles = new ArrayList<>(); //place holder for the Array
- static List<String> arrMaxBays = new ArrayList<>();
- static int MAXAISLES = 0;
- static String DEPTNAMES = "";
- static String[] ARR_DEPTNAMES;
- static String BAY_NUMBERS="";
- static String[] ARR_BAY_NUMBERS;
- EditText product_name, num_stock, product_id, product_desc;
- Spinner dept_spinner, aisle_spinner, bay_spinner, shelf_spinner;
- Button add_product_btn, take_image_btn, upload_image_btn;
- //Firebase Variables
- private FirebaseDatabase mFirebaseDatabase;
- private FirebaseAuth mAuth;
- private FirebaseAuth.AuthStateListener mAuthListener;
- private DatabaseReference myRef;
- private DatabaseReference AisleBayShelfRef;
- private DatabaseReference AisleBayRef;
- private String userID;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_add_inventory);
- final Intent intent = getIntent();
- //Variable initialization
- dept_spinner = (Spinner)findViewById(R.id.dept_spinner);
- aisle_spinner = (Spinner)findViewById(R.id.aisle_spinner);
- bay_spinner = (Spinner)findViewById(R.id.bay_spinner);
- shelf_spinner = (Spinner)findViewById(R.id.shelf_spinner);
- product_name = (EditText)findViewById(R.id.product_name);
- num_stock = (EditText)findViewById(R.id.num_stock);
- product_id = (EditText)findViewById(R.id.product_id);
- product_desc = (EditText)findViewById(R.id.product_desc);
- add_product_btn = (Button)findViewById(R.id.add_product_btn);
- take_image_btn = (Button)findViewById(R.id.take_image_btn);
- upload_image_btn = (Button)findViewById(R.id.upload_image_btn);
- //Firebase initialization
- mAuth = FirebaseAuth.getInstance();
- mFirebaseDatabase = FirebaseDatabase.getInstance();
- myRef = mFirebaseDatabase.getReference();
- final FirebaseUser user = mAuth.getCurrentUser();
- userID = user.getUid();
- mAuthListener = new FirebaseAuth.AuthStateListener() {
- @Override
- public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
- FirebaseUser user = firebaseAuth.getCurrentUser();
- if (user == null) {
- }
- }
- };
- myRef.addListenerForSingleValueEvent(new ValueEventListener() {
- ArrayList<String> DeptNamesList = new ArrayList<String>();
- zAllUserData zInfo = new zAllUserData();
- @Override
- public void onDataChange(DataSnapshot dataSnapshot) {
- zInfo.setNumAisles(dataSnapshot.child(userID).child("aisles").getValue(String.class));
- MAXAISLES = Integer.parseInt(zInfo.getNumAisles());
- Log.i("MAXAISLES ", MAXAISLES + "");
- zInfo.setDeptNames(dataSnapshot.child(userID).child("deptNames").getValue(String.class));
- DEPTNAMES = zInfo.getDeptNames();
- ARR_DEPTNAMES = DEPTNAMES.split("\\s*,\\s*");
- Log.i("MAXDEPTS ", DEPTNAMES);
- String deptHolder = "";
- for (int i = 0; i < ARR_DEPTNAMES.length ; i++) {
- deptHolder = ARR_DEPTNAMES[i].toString();
- DeptNamesList.add(deptHolder);
- }
- ArrayAdapter deptAdp = new ArrayAdapter(AddInventory.this,android.R.layout.simple_spinner_dropdown_item, DeptNamesList);
- dept_spinner.setAdapter(deptAdp);
- }
- @Override
- public void onCancelled(DatabaseError databaseError) {
- }
- });
- AisleBayRef = mFirebaseDatabase.getReference().child(userID).child("BaySetup");
- AisleBayRef.addListenerForSingleValueEvent(new ValueEventListener() {
- ArrayList<String>advAarr = new ArrayList<>();
- ArrayList<String>advBarr = new ArrayList<>();
- ArrayList<String> arrayz = new ArrayList<>();
- String totalNumBays="";
- String totalNumAisles = "";
- @Override
- public void onDataChange(DataSnapshot dataSnapshot) {
- arrMaxAisles = new ArrayList<String>();
- //try array creation here
- for (DataSnapshot childSnapShot : dataSnapshot.getChildren()) {
- String advAisle = (String) childSnapShot.child("aisle").getValue();
- String advBay = (String) childSnapShot.child("bays").getValue();
- Log.i("zCheckCheck: ", advAisle + " " + advBay);
- String advA = "ADVAisle: " + advAisle + "ADVBays: " + advBay;
- arrayz.add(advA);
- arrMaxAisles.add(advAisle);
- arrMaxBays.add(advBay);
- BAY_NUMBERS += advBay;
- }
- Log.i("advBarrSize", " " + BAY_NUMBERS);
- }
- @Override
- public void onCancelled(DatabaseError databaseError) {
- }
- });
- AisleBayShelfRef = mFirebaseDatabase.getReference().child(userID).child("ShelfSetup");
- AisleBayShelfRef.addValueEventListener(new ValueEventListener() {
- ArrayList<String> allAisles = new ArrayList<>();
- ArrayList<String> allBays = new ArrayList<>();
- ArrayList<String> allShelves = new ArrayList<>();
- HashMap<String,String> myHash = new HashMap<String, String>();
- int maxAisles = 0;
- int maxBays = 0;
- @Override
- public void onDataChange(DataSnapshot dataSnapshot) {
- int count = 0;
- ArrayList<String>shelfHold= new ArrayList<String>();
- for (DataSnapshot childSnapShot : dataSnapshot.getChildren()) {
- String aisleNum = (String) childSnapShot.child("aisle_num").getValue();
- String bayNum = (String) childSnapShot.child("bay_num").getValue();
- String shelfNum = (String) childSnapShot.child("num_of_shelves").getValue();
- allAisles.add(aisleNum);
- allBays.add(bayNum);
- allShelves.add(shelfNum);
- String strHold = aisleNum + " " + bayNum + " " + shelfNum;
- myHash.put("Aisle"+count, strHold);
- count++;
- }
- ArrayAdapter arrayAdapter1 = new ArrayAdapter(AddInventory.this,android.R.layout.simple_spinner_dropdown_item, arrMaxAisles);
- aisle_spinner.setAdapter(arrayAdapter1);
- final int currentBayToInt = 0;
- ArrayList<String>AisleDefiner = new ArrayList<String>();
- ArrayList<String>BayDefiner = new ArrayList<String>();
- //Set Bay Spinner according to the specific Aisle Num Spinner Selected
- aisle_spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
- @Override
- public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
- int currentAisleSelected = position;
- currentAisleSelected = aisle_spinner.getSelectedItemPosition();
- int bayHolder = 0;
- ArrayList<String> currentNumBays = new ArrayList<String>();
- for (int i=0; i < arrMaxAisles.size(); i++) {
- if (i == currentAisleSelected) {
- bayHolder = Integer.parseInt(arrMaxBays.get(i));
- }
- }
- for (int j = 0; j < bayHolder; j++) {
- currentNumBays.add(String.valueOf(j));
- }
- ArrayAdapter advBadp = new ArrayAdapter(AddInventory.this,android.R.layout.simple_spinner_dropdown_item, currentNumBays);
- bay_spinner.setAdapter(advBadp);
- }
- @Override
- public void onNothingSelected(AdapterView<?> parent) {
- }
- });
- bay_spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
- ArrayList<String> currentShelfArr = new ArrayList<String>();
- @Override
- public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
- currentShelfArr=new ArrayList<String>();
- int currentBaySelected = position;
- int currentAisleSelected = aisle_spinner.getSelectedItemPosition();
- currentBaySelected = bay_spinner.getSelectedItemPosition();
- int shelfHolder=0;
- String currentShelf = "";
- String zz= "";
- for (int i = 0; i <= currentAisleSelected; i++) {
- for (int j = 0; j <= currentBaySelected ; j++) {
- if (i==currentAisleSelected && j==currentBaySelected){
- currentShelf = allShelves.get(j);
- String k = currentShelf;
- int shelfCounter=0;
- shelfCounter=Integer.parseInt(k);
- }
- Log.i("daCurrentShelf: ", currentShelf);
- }
- }
- int shelfCounter = Integer.parseInt(currentShelf);
- if(Integer.parseInt(currentShelf) == 0){
- currentShelfArr.add(String.valueOf(0));
- }else{
- for (int i = 0; i < shelfCounter; i++) {
- currentShelfArr.add(String.valueOf(i));
- }
- }
- ArrayAdapter shelfAdp = new ArrayAdapter(AddInventory.this,android.R.layout.simple_spinner_dropdown_item, currentShelfArr);
- shelf_spinner.setAdapter(shelfAdp);
- Log.i("daCurrent: ", "aisle" + currentAisleSelected + " bay" + currentBaySelected + "Shelf " + currentShelf);
- }
- @Override
- public void onNothingSelected(AdapterView<?> parent) {
- }
- });
- //String currentBay= arrMaxBays.get(i);
- //currentBayToInt = Integer.parseInt(currentBay);
- //for (int j = 0; j < currentBayToInt; j++) {
- //BayDefiner.add(String.valueOf(j));
- //}
- //Load arrListMaxAisles to the Aisle Spinner
- // ArrayAdapter arrayAdapter1 = new ArrayAdapter(AddInventory.this,android.R.layout.simple_spinner_dropdown_item, AisleDefiner);
- //aisle_spinner.setAdapter(arrayAdapter1);
- Log.i("myHashSize"," " + myHash.size());
- Iterator myVeryOwnIterator = myHash.keySet().iterator();
- while(myVeryOwnIterator.hasNext()) {
- String key=(String)myVeryOwnIterator.next();
- String value=(String)myHash.get(key);
- Log.i("MyHASH","Key: "+key+" Value: "+value);
- }
- }
- @Override
- public void onCancelled(DatabaseError databaseError) {
- }
- });
- take_image_btn.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View view) {
- Intent intent = new Intent(AddInventory.this, EditStoreAndDepartmentActivity.class);
- startActivity(intent);
- }
- });
- add_product_btn.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View view) {
- // String x = getSpinnerValues();
- // String[] xx = x.split("\\s*,\\s*");
- String p_id = product_id.getText().toString();
- String p_name = product_name.getText().toString();
- String stock_amt = num_stock.getText().toString();
- String p_desc = product_desc.getText().toString();
- String currentAisleSpinner = aisle_spinner.getSelectedItem().toString();
- String currentBaySpinner = bay_spinner.getSelectedItem().toString();
- String currentShelfSpinner = shelf_spinner.getSelectedItem().toString();
- String currentDeptSpinner = dept_spinner.getSelectedItem().toString();
- Log.i("ProductInfo: ", p_id + " " + p_name + " " + stock_amt + " " + p_desc);
- Log.i("SubmitDept ", currentDeptSpinner);
- Log.i("SubmitLocation ", currentAisleSpinner + " " + currentBaySpinner + " "+ currentShelfSpinner);
- }
- });
- }
- public String getSpinnerValues(){
- aisle_spinner = (Spinner)findViewById(R.id.aisle_spinner);
- String aisleSpinTxt = aisle_spinner.getSelectedItem().toString();
- //aisle_spin_int = Integer.parseInt(aisleSpinTxt);
- bay_spinner = (Spinner)findViewById(R.id.bay_spinner);
- String baySpinTxt = bay_spinner.getSelectedItem().toString();
- shelf_spinner = (Spinner)findViewById(R.id.shelf_spinner);
- String shelfSpinTxt = shelf_spinner.getSelectedItem().toString();
- return aisleSpinTxt +","+baySpinTxt+","+shelfSpinTxt;
- }
- @Override
- public void onStart() {
- super.onStart();
- mAuth.addAuthStateListener(mAuthListener);
- }
- @Override
- public void onStop() {
- super.onStop();
- if (mAuthListener != null) {
- mAuth.removeAuthStateListener(mAuthListener);
- }
- }
- private void toastMessage(String message) {
- Toast.makeText(this,message, Toast.LENGTH_SHORT).show();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement