Advertisement
Guest User

Untitled

a guest
Jun 16th, 2019
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.75 KB | None | 0 0
  1. public class FragGastos extends Fragment implements View.OnClickListener, AdapterDinero.OnItemClickListener{
  2.  
  3. private static final String TAG = "SDSADSDS";
  4. private Button btAdd;
  5. private FirebaseAuth auth = FirebaseAuth.getInstance();
  6. private GastosService gastosService;
  7. private ArrayList<Dinero> dineros;
  8. private RecyclerView recyclerView;
  9. private AdapterDinero adapter;
  10.  
  11. public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
  12. View view = inflater.inflate(R.layout.frag_gastos_layout, container, false);
  13. FirebaseUser user = auth.getCurrentUser();
  14. gastosService = GastosService.getInstance(user.getDisplayName());
  15. dineros = gastosService.getDineros();
  16. adapter = new AdapterDinero(getContext());
  17. adapter.setOnItemClickListener(this);
  18. recyclerView = view.findViewById(R.id.rv_Gastos);
  19. adapter.setDineros(dineros);
  20. recyclerView.setAdapter(adapter);
  21. recyclerView.setLayoutManager(new LinearLayoutManager(getContext(), RecyclerView.VERTICAL, false));
  22. btAdd = view.findViewById(R.id.bt_add_gasto);
  23. btAdd.setOnClickListener(this);
  24. return view;
  25. }
  26.  
  27. @Override
  28. public void onClick(View v) {
  29. Intent intent = new Intent(getActivity(), AddActivity.class);
  30. startActivity(intent);
  31. }
  32.  
  33.  
  34. @Override
  35. public void onItemClick(View view, int position) {
  36. Intent intent = new Intent(getActivity(), DetalleActivity.class);
  37. Log.w(TAG, "HA PETADO AQUI");
  38. intent.putExtra("objDinero", dineros.get(position));
  39. startActivity(intent);
  40. }
  41. }
  42.  
  43.  
  44.  
  45. public class FragIngresos extends Fragment implements View.OnClickListener {
  46.  
  47. private Button btAdd;
  48. private FirebaseAuth auth;
  49. private IngresosService ingresosService;
  50. private ArrayList<Dinero> dineros;
  51. private RecyclerView recyclerView;
  52. private AdapterDinero adapter;
  53.  
  54. public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
  55. View view = inflater.inflate(R.layout.frag_ingresos_layout, container, false);
  56. auth = FirebaseAuth.getInstance();
  57. FirebaseUser user = auth.getCurrentUser();
  58. ingresosService = IngresosService.getInstance(user.getDisplayName());
  59. dineros = ingresosService.getDineros();
  60. adapter = new AdapterDinero(getContext());
  61. recyclerView = view.findViewById(R.id.rvIngresos);
  62. recyclerView.setAdapter(adapter);
  63. adapter.setDineros(dineros);
  64. recyclerView.setLayoutManager(new LinearLayoutManager(getContext(), RecyclerView.VERTICAL, false));
  65. btAdd = view.findViewById(R.id.bt_add_gasto);
  66. btAdd.setOnClickListener(this);
  67. return view;
  68. }
  69.  
  70. @Override
  71. public void onClick(View v) {
  72. Intent intent = new Intent(getActivity(), AddActivity.class);
  73. startActivity(intent);
  74. }
  75. }
  76.  
  77. public class AdapterDinero extends RecyclerView.Adapter<AdapterDinero.DineroViewHolder> {
  78.  
  79. public interface OnItemClickListener
  80. {
  81. void onItemClick(View view, int position);
  82. }
  83.  
  84. private ArrayList<Dinero> dineros;
  85. private Context context;
  86. private OnItemClickListener onItemClickListener;
  87.  
  88. public void setOnItemClickListener(OnItemClickListener onItemClickListener)
  89. {
  90. this.onItemClickListener = onItemClickListener;
  91. }
  92.  
  93.  
  94. public AdapterDinero(Context context) {
  95. this.context = context;
  96. }
  97. public void setDineros(ArrayList<Dinero> dineros) {
  98. this.dineros = dineros;
  99. notifyDataSetChanged();
  100. }
  101.  
  102. @NonNull
  103. @Override
  104. public DineroViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
  105. View view = LayoutInflater.from(context).inflate(R.layout.item_dinero, viewGroup, false);
  106. return new DineroViewHolder(view);
  107. }
  108.  
  109. @Override
  110. public void onBindViewHolder(@NonNull final DineroViewHolder dineroViewHolder, final int i) {
  111. Dinero dinero = dineros.get(i);
  112. dineroViewHolder.AsignarDatos(dinero);
  113. }
  114.  
  115. @Override
  116. public int getItemCount() {
  117. if(dineros != null){
  118. return dineros.size();
  119. }
  120. else{
  121. return 0;
  122. }
  123. }
  124.  
  125. public class DineroViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
  126. private TextView tvTitulo, tvDinero;
  127. public DineroViewHolder(@NonNull View itemView) {
  128. super(itemView);
  129. tvTitulo = itemView.findViewById(R.id.tv_itemDinero_titulo);
  130. tvDinero = itemView.findViewById(R.id.tv_itemDinero_Precio);
  131. itemView.setOnClickListener(this);
  132. }
  133.  
  134. public void AsignarDatos(Dinero dinero){
  135. String total = String.valueOf(dinero.getTotal())+ "€";
  136. tvDinero.setText(total);
  137. tvTitulo.setText(dinero.getNombre());
  138. }
  139.  
  140.  
  141. @Override
  142. public void onClick(View v) {
  143. if ( onItemClickListener != null ){
  144. onItemClickListener.onItemClick(this.itemView, this.getAdapterPosition() );
  145. }
  146. }
  147. }
  148.  
  149. public class GastosService {
  150.  
  151. private ArrayList<Dinero> dineros;
  152. public static GastosService gastosService;
  153.  
  154. public static GastosService getInstance(String username){
  155. if(gastosService == null){
  156. gastosService = new GastosService(username);
  157. }
  158. return gastosService;
  159. }
  160.  
  161. private GastosService(String userName){
  162. FirebaseRead firebaseOperation = new FirebaseRead();
  163. firebaseOperation.getGastos(userName, new FirebaseRead.GastosLoaded() {
  164. @Override
  165. public void gastosIsLoaded(ArrayList<Dinero> gastos) {
  166. dineros = gastos;
  167. }
  168. });
  169. }
  170.  
  171. public ArrayList<Dinero> getDineros() {
  172. return dineros;
  173. }
  174.  
  175. public Dinero getDinero(int i){
  176. return dineros.get(i);
  177. }
  178. }
  179.  
  180.  
  181. public class IngresosService {
  182.  
  183. private ArrayList<Dinero> dineros;
  184. public static IngresosService ingresosService;
  185.  
  186. public static IngresosService getInstance(String username){
  187. if(ingresosService == null){
  188. ingresosService = new IngresosService(username);
  189. }
  190. return ingresosService;
  191. }
  192.  
  193. private IngresosService(String userName){
  194. FirebaseRead firebaseOperation = new FirebaseRead();
  195. firebaseOperation.getIngresos(userName, new FirebaseRead.IngresosIsLoaded() {
  196. @Override
  197. public void ingresosIsLoaded(ArrayList<Dinero> ingresos) {
  198. dineros = ingresos;
  199. }
  200. });
  201. }
  202.  
  203. public ArrayList<Dinero> getDineros() {
  204. return dineros;
  205. }
  206.  
  207. public Dinero getDinero(int i){
  208. return dineros.get(i);
  209. }
  210. }
  211.  
  212. public class FirebaseRead {
  213. private static final String TAG1 = "Operacion de lectura";
  214. private FirebaseDatabase database = FirebaseDatabase.getInstance();
  215. private ArrayList<Dinero> beneficio;
  216. private ArrayList<Dinero> gastos;
  217. float total;
  218.  
  219. public interface DineroIsLoaded{
  220. void dineroIsLoaded(ArrayList<Dinero> auxDinero);
  221. }
  222.  
  223. public void getGastos(String user, DineroIsLoaded gLoaded ){
  224. gastos = new ArrayList<>();
  225. final DineroIsLoaded gastosLoaded = gLoaded;
  226. DatabaseReference ref = database.getReference().child("Users").child(user).child("Gastos");
  227.  
  228. ref.addValueEventListener(new ValueEventListener() {
  229. @Override
  230.  
  231. public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
  232. gastos.clear();
  233. for(DataSnapshot ds : dataSnapshot.getChildren()){
  234. String nombreAux = ds.child("nombre").getValue().toString();
  235. String descAux = ds.child("descripcion").getValue().toString();
  236. String fecha = ds.child("fecha").getValue().toString();
  237. int precioAux = Integer.parseInt(ds.child("total").getValue().toString());
  238. Dinero dinero = new Dinero(nombreAux, descAux,precioAux, fecha);
  239. dinero.setId(ds.getKey());
  240. gastos.add(dinero);
  241. }
  242. gastos = ordenaDinero(gastos);
  243. gastosLoaded.dineroIsLoaded(gastos);
  244. }
  245.  
  246. @Override
  247. public void onCancelled(@NonNull DatabaseError databaseError) {
  248.  
  249. }
  250. });
  251. }
  252.  
  253. public void getIngresos(String user, DineroIsLoaded iLoaded){
  254. beneficio = new ArrayList<>();
  255. final DineroIsLoaded ingresosIsLoaded = iLoaded;
  256. DatabaseReference ref = database.getReference().child("Users").child(user).child("Ingresos");
  257.  
  258. ref.addValueEventListener(new ValueEventListener() {
  259. @Override
  260. public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
  261. beneficio.clear();
  262. for(DataSnapshot ds : dataSnapshot.getChildren()){
  263. String nombreAux = ds.child("nombre").getValue().toString();
  264. String descAux = ds.child("descripcion").getValue().toString();
  265. String fecha = ds.child("fecha").getValue().toString();
  266. int precioAux = Integer.parseInt(ds.child("total").getValue().toString());
  267. Dinero dinero = new Dinero(nombreAux, descAux,precioAux, fecha);
  268. dinero.setId(ds.getKey());
  269. beneficio.add(dinero);
  270. }
  271. beneficio = ordenaDinero(beneficio);
  272. ingresosIsLoaded.dineroIsLoaded(beneficio);
  273. }
  274.  
  275. @Override
  276. public void onCancelled(@NonNull DatabaseError databaseError) {
  277.  
  278. }
  279. });
  280. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement