JanuaryDecember / Team-Project-PB

0 stars 0 forks source link

Dodanie historii spłat obligacji #26

Closed kasiagrygo closed 5 months ago

kasiagrygo commented 6 months ago

Zadaniem jest dodanie do każdej obligacji listy spłat z kwotą i datą spłaty.

Ewad20 commented 5 months ago

Dodano trzy stany do komponentu za pomocą hooka useState. Pierwszy, showRepaymentsModal, reprezentuje stan określający, czy modal związany z spłatami jest widoczny (początkowo ustawiona na wartość false). Drugi stan, selectedObligationRepayments, to tablica przechowująca wybrane spłaty zobowiązań. Początkowo jest to pusta tablica. Trzeci stan, selectedObligationDetails, przechowuje szczegóły wybranego zobowiązania. Na początku jest to pusty obiekt.

image

Funkcja fetchRepayments pobiera spłaty i szczegóły zobowiązania dla określonego identyfikatora. Jeśli pobranie się powiedzie, ustawia odpowiednie stany i otwiera modal. W przypadku niepowodzenia, wyświetla alert. Funkcja handleCloseRepaymentsModal odpowiada natomiast za zamknięcie modala.

image

Zaimplementowano modal, który wyświetla szczegóły zobowiązania oraz jego spłaty. Jest wyświetlany lub ukrywany w zależności od stanu showRepaymentsModal. Szczegóły zobowiązania i spłaty są pobierane przy użyciu funkcji fetchRepayments i przechowywane w odpowiednich stanach. W sekcji modal-body znajdują się szczegóły zobowiązania, takie jak nazwa, kwota, kategoria, opis, data rozpoczęcia i termin płatności. Dodatkowo wyświetlane są spłaty zobowiązania w formie listy.

image

Akcja GetRepayments została zaimplementowana jako metoda HTTP GET, która przyjmuje parametr obligationId. W tej akcji zwracana jest lista spłat zobowiązania o określonym identyfikatorze. Dane te są pobierane z bazy danych. Następnie lista spłat jest przekazywana jako odpowiedź HTTP.

image

Poniższa akcja kontrolera obsługuje żądania GET i wymaga, aby użytkownik był uwierzytelniony. Następnie pobiera szczegóły zobowiązania o określonym identyfikatorze. Jeśli użytkownik nie jest zalogowany lub zobowiązanie nie istnieje, zwracane są odpowiednie komunikaty błędu. W przeciwnym razie zwracane są szczegóły zobowiązania w formie obiektu DTO.

image

Wygląd na stronie:

image