SHARE
TWEET

Untitled

a guest Aug 20th, 2019 63 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package com.example.x_splitter;
  2.  
  3. import android.content.Context;
  4. import android.content.Intent;
  5. import android.os.Bundle;
  6. import android.view.LayoutInflater;
  7. import android.view.View;
  8. import android.view.ViewGroup;
  9. import android.widget.TextView;
  10. import android.widget.Toast;
  11.  
  12. import androidx.annotation.NonNull;
  13. import androidx.annotation.Nullable;
  14. import androidx.fragment.app.Fragment;
  15. import androidx.recyclerview.widget.LinearLayoutManager;
  16. import androidx.recyclerview.widget.RecyclerView;
  17.  
  18. import com.google.firebase.database.DataSnapshot;
  19. import com.google.firebase.database.DatabaseError;
  20. import com.google.firebase.database.FirebaseDatabase;
  21. import com.google.firebase.database.ValueEventListener;
  22.  
  23. import java.util.ArrayList;
  24. import java.util.List;
  25. import java.util.Map;
  26. import java.util.Objects;
  27.  
  28. public class FragmentReport extends Fragment {
  29.  
  30.     View view;
  31.     Context context;
  32.     String user1;
  33.     String user2;
  34.     Double tempAmt;
  35.     Double amountInvested;
  36.     Double amountToGet;
  37.     Double amountToPay;
  38.     Double amountInvested1;
  39.     Double amountToGet1;
  40.     Double amountToPay1;
  41.     String currentEventID;
  42.     String currentGroupName;
  43.     String currentGroupID;
  44.     int i;
  45.     int j;
  46.  
  47.     public FragmentReport(){}
  48.  
  49.     @Nullable
  50.     @Override
  51.     public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
  52.         view = inflater.inflate(R.layout.event_report_fragment, container, false);
  53.  
  54.         currentEventID = AdapterHomeEvent.id;
  55.         currentGroupID = AdapterHomeEvent.grpId;
  56.         currentGroupName = AdapterHomeEvent.grpName;
  57.  
  58.         System.out.println("Mumy:"+ currentEventID);
  59.  
  60.         System.out.println("Mumy:"+ currentGroupID);
  61.  
  62.         System.out.println("Mumy:"+ currentGroupName);
  63.  
  64.         getModelReport();
  65.  
  66.         return view;
  67.     }
  68.  
  69.     public void getModelReport() {
  70.  
  71.         ArrayList<ModelReport> modelReport1 = new ArrayList<>();
  72.  
  73.         ArrayList<String> memberList = new ArrayList<>();
  74.         AddTransaction add = new AddTransaction();
  75.         FirebaseDatabase.getInstance().getReference("Groups")
  76.                 .child(currentGroupID).child(currentGroupName).child("Members")
  77.                 .addValueEventListener(new ValueEventListener() {
  78.                     @Override
  79.                     public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
  80.                         ArrayList<String> members = new ArrayList<>();
  81.                         for (DataSnapshot snapshot4 : dataSnapshot.getChildren()) {
  82.                             members.add(snapshot4.getValue().toString());
  83.                             System.out.println("Mem: " + members);
  84.                         }
  85.                         memberList.addAll(members);
  86.                         System.out.println("memList : " + memberList);
  87.                         double a = memberList.size();
  88.                         System.out.println("three: " + a);
  89.  
  90.                         for ( i = 1; i < a; i++) {
  91.                             String user = memberList.get(i);
  92.                             FirebaseDatabase.getInstance().getReference("TransactionUnequal")
  93.                                     .child(currentGroupID)
  94.                                     .child(currentEventID)
  95.                                     .child(user)
  96.                                     .addValueEventListener(new ValueEventListener() {
  97.                                         @Override
  98.                                         public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
  99.                                             if (dataSnapshot.exists()) {
  100.                                                 Toast.makeText(getActivity(), "Exists", Toast.LENGTH_SHORT).show();
  101.  
  102.                                             }
  103.  
  104.                                             Map<String, Object> amountDetail = (Map<String, Object>) dataSnapshot.getValue();
  105.                                             amountInvested = Double.parseDouble(Objects.requireNonNull(amountDetail).get("amountInvested").toString());
  106.                                             amountToGet = Double.parseDouble(Objects.requireNonNull(amountDetail).get("amountToGet").toString());
  107.                                             amountToPay = Double.parseDouble(Objects.requireNonNull(amountDetail).get("amountToPay").toString());
  108.  
  109.                                             if (amountToPay > 0) {
  110.                                                 tempAmt = amountToPay;
  111.                                                 user1 = user;
  112.                                                 for ( j = 1; j <= i; j++) {
  113.                                                     String subUser = memberList.get(j);
  114.                                                     FirebaseDatabase.getInstance().getReference("TransactionUnequal")
  115.                                                             .child(currentGroupID)
  116.                                                             .child(currentEventID)
  117.                                                             .child(subUser)
  118.                                                             .addValueEventListener(new ValueEventListener() {
  119.                                                                 @Override
  120.                                                                 public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
  121.                                                                     Map<String, Object> amountDetail = (Map<String, Object>) dataSnapshot.getValue();
  122.                                                                     amountInvested1 = Double.parseDouble(Objects.requireNonNull(amountDetail).get("amountInvested").toString());
  123.                                                                     amountToGet1 = Double.parseDouble(Objects.requireNonNull(amountDetail).get("amountToGet").toString());
  124.                                                                     amountToPay1 = Double.parseDouble(Objects.requireNonNull(amountDetail).get("amountToPay").toString());
  125.                                                                     if(user != subUser)
  126.                                                                     {
  127.                                                                         if (amountToGet1>0) {
  128.                                                                             user2 = subUser;
  129.                                                                             modelReport1.add(new ModelReport(user1, tempAmt, user2));
  130.                                                                         }
  131.                                                                     }
  132.  
  133.  
  134.  
  135.                                                                 }
  136.  
  137.                                                                 @Override
  138.                                                                 public void onCancelled(@NonNull DatabaseError databaseError) {
  139.  
  140.                                                                 }
  141.                                                             });
  142.  
  143.                             break;
  144.                                                 }
  145.  
  146.                                                 System.out.println("temp : " + amountToGet);
  147.  
  148.                                                 System.out.println("ModelReport : " + modelReport1.size());
  149.                                                 RecyclerView recyclerView = view.findViewById(R.id.expenses_recycler_view);
  150.                                                 AdapterReport adapter = new AdapterReport(getActivity(), modelReport1);
  151.                                                 recyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
  152.                                                 recyclerView.setAdapter(adapter);
  153.  
  154.                                             }
  155.                                         }
  156.  
  157.                                         @Override
  158.                                         public void onCancelled(@NonNull DatabaseError databaseError) {
  159.  
  160.                                         }
  161.                                     });
  162.                         }
  163.                     }
  164.  
  165.                     @Override
  166.                     public void onCancelled(@NonNull DatabaseError databaseError) {
  167.  
  168.                     }
  169.                 });
  170.     }
  171. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top