Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class FragGastos extends Fragment implements View.OnClickListener, AdapterDinero.OnItemClickListener{
- private static final String TAG = "SDSADSDS";
- private Button btAdd;
- private FirebaseAuth auth = FirebaseAuth.getInstance();
- private GastosService gastosService;
- private ArrayList<Dinero> dineros;
- private RecyclerView recyclerView;
- private AdapterDinero adapter;
- public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
- View view = inflater.inflate(R.layout.frag_gastos_layout, container, false);
- FirebaseUser user = auth.getCurrentUser();
- gastosService = GastosService.getInstance(user.getDisplayName());
- dineros = gastosService.getDineros();
- adapter = new AdapterDinero(getContext());
- adapter.setOnItemClickListener(this);
- recyclerView = view.findViewById(R.id.rv_Gastos);
- adapter.setDineros(dineros);
- recyclerView.setAdapter(adapter);
- recyclerView.setLayoutManager(new LinearLayoutManager(getContext(), RecyclerView.VERTICAL, false));
- btAdd = view.findViewById(R.id.bt_add_gasto);
- btAdd.setOnClickListener(this);
- return view;
- }
- @Override
- public void onClick(View v) {
- Intent intent = new Intent(getActivity(), AddActivity.class);
- startActivity(intent);
- }
- @Override
- public void onItemClick(View view, int position) {
- Intent intent = new Intent(getActivity(), DetalleActivity.class);
- Log.w(TAG, "HA PETADO AQUI");
- intent.putExtra("objDinero", dineros.get(position));
- startActivity(intent);
- }
- }
- public class FragIngresos extends Fragment implements View.OnClickListener {
- private Button btAdd;
- private FirebaseAuth auth;
- private IngresosService ingresosService;
- private ArrayList<Dinero> dineros;
- private RecyclerView recyclerView;
- private AdapterDinero adapter;
- public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
- View view = inflater.inflate(R.layout.frag_ingresos_layout, container, false);
- auth = FirebaseAuth.getInstance();
- FirebaseUser user = auth.getCurrentUser();
- ingresosService = IngresosService.getInstance(user.getDisplayName());
- dineros = ingresosService.getDineros();
- adapter = new AdapterDinero(getContext());
- recyclerView = view.findViewById(R.id.rvIngresos);
- recyclerView.setAdapter(adapter);
- adapter.setDineros(dineros);
- recyclerView.setLayoutManager(new LinearLayoutManager(getContext(), RecyclerView.VERTICAL, false));
- btAdd = view.findViewById(R.id.bt_add_gasto);
- btAdd.setOnClickListener(this);
- return view;
- }
- @Override
- public void onClick(View v) {
- Intent intent = new Intent(getActivity(), AddActivity.class);
- startActivity(intent);
- }
- }
- public class AdapterDinero extends RecyclerView.Adapter<AdapterDinero.DineroViewHolder> {
- public interface OnItemClickListener
- {
- void onItemClick(View view, int position);
- }
- private ArrayList<Dinero> dineros;
- private Context context;
- private OnItemClickListener onItemClickListener;
- public void setOnItemClickListener(OnItemClickListener onItemClickListener)
- {
- this.onItemClickListener = onItemClickListener;
- }
- public AdapterDinero(Context context) {
- this.context = context;
- }
- public void setDineros(ArrayList<Dinero> dineros) {
- this.dineros = dineros;
- notifyDataSetChanged();
- }
- @NonNull
- @Override
- public DineroViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
- View view = LayoutInflater.from(context).inflate(R.layout.item_dinero, viewGroup, false);
- return new DineroViewHolder(view);
- }
- @Override
- public void onBindViewHolder(@NonNull final DineroViewHolder dineroViewHolder, final int i) {
- Dinero dinero = dineros.get(i);
- dineroViewHolder.AsignarDatos(dinero);
- }
- @Override
- public int getItemCount() {
- if(dineros != null){
- return dineros.size();
- }
- else{
- return 0;
- }
- }
- public class DineroViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
- private TextView tvTitulo, tvDinero;
- public DineroViewHolder(@NonNull View itemView) {
- super(itemView);
- tvTitulo = itemView.findViewById(R.id.tv_itemDinero_titulo);
- tvDinero = itemView.findViewById(R.id.tv_itemDinero_Precio);
- itemView.setOnClickListener(this);
- }
- public void AsignarDatos(Dinero dinero){
- String total = String.valueOf(dinero.getTotal())+ "€";
- tvDinero.setText(total);
- tvTitulo.setText(dinero.getNombre());
- }
- @Override
- public void onClick(View v) {
- if ( onItemClickListener != null ){
- onItemClickListener.onItemClick(this.itemView, this.getAdapterPosition() );
- }
- }
- }
- public class GastosService {
- private ArrayList<Dinero> dineros;
- public static GastosService gastosService;
- public static GastosService getInstance(String username){
- if(gastosService == null){
- gastosService = new GastosService(username);
- }
- return gastosService;
- }
- private GastosService(String userName){
- FirebaseRead firebaseOperation = new FirebaseRead();
- firebaseOperation.getGastos(userName, new FirebaseRead.GastosLoaded() {
- @Override
- public void gastosIsLoaded(ArrayList<Dinero> gastos) {
- dineros = gastos;
- }
- });
- }
- public ArrayList<Dinero> getDineros() {
- return dineros;
- }
- public Dinero getDinero(int i){
- return dineros.get(i);
- }
- }
- public class IngresosService {
- private ArrayList<Dinero> dineros;
- public static IngresosService ingresosService;
- public static IngresosService getInstance(String username){
- if(ingresosService == null){
- ingresosService = new IngresosService(username);
- }
- return ingresosService;
- }
- private IngresosService(String userName){
- FirebaseRead firebaseOperation = new FirebaseRead();
- firebaseOperation.getIngresos(userName, new FirebaseRead.IngresosIsLoaded() {
- @Override
- public void ingresosIsLoaded(ArrayList<Dinero> ingresos) {
- dineros = ingresos;
- }
- });
- }
- public ArrayList<Dinero> getDineros() {
- return dineros;
- }
- public Dinero getDinero(int i){
- return dineros.get(i);
- }
- }
- public class FirebaseRead {
- private static final String TAG1 = "Operacion de lectura";
- private FirebaseDatabase database = FirebaseDatabase.getInstance();
- private ArrayList<Dinero> beneficio;
- private ArrayList<Dinero> gastos;
- float total;
- public interface DineroIsLoaded{
- void dineroIsLoaded(ArrayList<Dinero> auxDinero);
- }
- public void getGastos(String user, DineroIsLoaded gLoaded ){
- gastos = new ArrayList<>();
- final DineroIsLoaded gastosLoaded = gLoaded;
- DatabaseReference ref = database.getReference().child("Users").child(user).child("Gastos");
- ref.addValueEventListener(new ValueEventListener() {
- @Override
- public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
- gastos.clear();
- for(DataSnapshot ds : dataSnapshot.getChildren()){
- String nombreAux = ds.child("nombre").getValue().toString();
- String descAux = ds.child("descripcion").getValue().toString();
- String fecha = ds.child("fecha").getValue().toString();
- int precioAux = Integer.parseInt(ds.child("total").getValue().toString());
- Dinero dinero = new Dinero(nombreAux, descAux,precioAux, fecha);
- dinero.setId(ds.getKey());
- gastos.add(dinero);
- }
- gastos = ordenaDinero(gastos);
- gastosLoaded.dineroIsLoaded(gastos);
- }
- @Override
- public void onCancelled(@NonNull DatabaseError databaseError) {
- }
- });
- }
- public void getIngresos(String user, DineroIsLoaded iLoaded){
- beneficio = new ArrayList<>();
- final DineroIsLoaded ingresosIsLoaded = iLoaded;
- DatabaseReference ref = database.getReference().child("Users").child(user).child("Ingresos");
- ref.addValueEventListener(new ValueEventListener() {
- @Override
- public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
- beneficio.clear();
- for(DataSnapshot ds : dataSnapshot.getChildren()){
- String nombreAux = ds.child("nombre").getValue().toString();
- String descAux = ds.child("descripcion").getValue().toString();
- String fecha = ds.child("fecha").getValue().toString();
- int precioAux = Integer.parseInt(ds.child("total").getValue().toString());
- Dinero dinero = new Dinero(nombreAux, descAux,precioAux, fecha);
- dinero.setId(ds.getKey());
- beneficio.add(dinero);
- }
- beneficio = ordenaDinero(beneficio);
- ingresosIsLoaded.dineroIsLoaded(beneficio);
- }
- @Override
- public void onCancelled(@NonNull DatabaseError databaseError) {
- }
- });
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement