Closed mtomasic2 closed 1 year ago
Prilikom testiranja na zasebnim granama za svaku funkcionalnost, u AndroidManifest.xml datoteci važno je promijeniti Activity koji će se prvi pokretati.
<intent-filter>
je potrebno je prebaciti u Activity koji želimo da se prvi pokreće. Bilo bi dobro da se promjene nad AndroidManifest.xml ne commitaju.
Prije:
Poslije
Za početak, za potrebe popisa računa, kreiran je prikaz jednog računa sa osnovnim informacijama, koji će služiti kao neki template pri izradi cijelog popisa.
Testiranje i instanciranje konekcije sa bazom pomoću upisa nekih podaka. Testirano unutar RentManagerActivity-a, kasnije obrisano. Primjer se nalazi ispod.
Implementirano dohvaćanje podataka iz Firebase Firestore baze, pri ćemu je implementiran i prikaz plaćenih i neplaćenih računa za određenog korisnika. Ispod je slika zaslona mojeg pametnog telefona jer iz nekog razloga nedefiniranog razloga Android Studio ne želi pokrenuti Emulator.
Jedna jako zanimljiva obzervacija prilikom implementacije generiranja računa, naime kod najobičnije provjere rezultata query-a pomoću kojeg se dohvaćaju i filtriraju podaci iz baze, točnije najamnine i unutar kojeg želimo da se generira račun ako već ne postoji, ako bi stavili ispis (Log.d) i generiranje računa, jedan te isti račun bi se kreirao dvaput u bazi, a ako bi stavili samo generiranje onda radi normalno.
Riješen je problem u kojem bi više različitih generiranih računa imalo isti identifikator. Prije rješenja tog problema, bilo je mogućeno pronaći jedinstven račun, budući da nije bilo računa sa u isto vrijeme istim identifikatorom, mjesecom i godinu za koju se stanarina mora podmiriti.
Bug otkriven. Ponekad kad se generiraju novi računi, na prvu treba se prebaciti na drugi fragment, koji u našem slučaju služi za prikaz plaćenih računa, kako bi se vidjela promjena u listi računa. Na svu sreću, u bazi je vidljiva promjena.
Za potrebe testiranja, iz baze je uzet email stanara (koji je jedistven), kako bi se dohvatili i prikazali računi stanara.
Potrebno je napraviti prikaz za stanodavca gdje će moći vidjeti sve račune.
Implementirano da stanodavac može vidjeti račune od svojih stanara. (https://github.com/foivz/rampu22-rvrduka-dzebcevic-mtomasic-irosic/commit/42a424b41f7232bddf7baf23fae37ce85c353f9f)
Ovisno o trenutnoj ulozi korisnika (stanar ili stanodavac), prikazivat će se računi. Stanar će moći vidjeti samo svoje račune, dok će vlasnik vidjeti sve račune.
U Navigation Draweru dodana je funkcija koja omogućuje stanodavcu da jednostavno pristupi listi svih računa svojih stanara. Ova poboljšana funkcionalnost i jednostavnost korištenja čine proces bržim i lakšim za stanodavca, umanjujući potrebu za dodatnim koracima i traženjem informacija. (https://github.com/foivz/rampu22-rvrduka-dzebcevic-mtomasic-irosic/commit/bdcd792e3d8a333a64cc0a7200ab311c356a4a58)
Klasa HelperClass je implementirana kako bi se optimizirala funkcionalnost i pojednostavnila upotreba koda u aplikaciji. Funkcija navigateToNextScreen omogućuje brzu i jednostavnu navigaciju kroz aplikaciju na temelju uloge trenutnog korisnika. Uključivanjem ove funkcije, također je uklonjen višak koda. (https://github.com/foivz/rampu22-rvrduka-dzebcevic-mtomasic-irosic/commit/0dce36627d9f5ccead4d22bce2814cd6f35e7267 i https://github.com/foivz/rampu22-rvrduka-dzebcevic-mtomasic-irosic/commit/4589612384ad4cd843642737e9959f15b20905d3)
Implementirana korekcija u kodu, tako da se ispravno prikazuje ime i prezime sudionika razgovora u supportActionBar
-u. Do pojave greške dolazilo je zbog zabune u definiciji, pa su se pri prikazu naziva razgovora sa stanarom u supportActionBar
-u prikazivali naziv "owner", umjesto ime i prezime stanara. Sada je ta greška ispravljena, te se ispravno prikazuje ime i prezime sudionika u razgovoru. (https://github.com/foivz/rampu22-rvrduka-dzebcevic-mtomasic-irosic/commit/46278efa947f25d6cb2dd80e22750d0bcdf3433c).
Sustav će generirati račune stanarine za svakog stanara na temelju određenog datuma, koji će biti početak mjeseca. Računi će imati jedinstveni identifikator te podatke o mjesecu i godini za koje se mora podmiriti stanarina. Također, svaki račun će imati atribut koji će označavati je li račun plaćen ili neplaćen, a koji će se ažurirati nakon obavljene transakcije. Prilikom služenog useljenja, sustav će obavezno generirati prvi račun za stanara. Važno je da svaki stanar dobije po jedan račun za svaki mjesec i da može vidjeti samo svoje račune, a ne račune drugih stanara.
Potrebno je izraditi: