Hej,
mam strukturę bazy danych:
employee_tab
employee_id | int
name | varchar
lastname | varchar
charge_tab
charge_id | int
period_from | date
period_to | date
employee_id | int -> foreign key
charge_line_tab
charge_line_id | int
charge_id \ int -> foreign key
name | varchar
amount | numeric
payment_tab (wplaty)
payment_id | int
employee_id | int -> foreign key
amount | double
date | date
Chcialbym widok na charge_line_tab który dodatkowo na podstawie wpłat z payment_tab określi czy dana pozyca rozliczenia jest już opłacona i jeśli tak to kiedy została opłacona i która płatonśc "zaspokoiła" ;) tą linię opłat.
Przykład:
mamy chare_line_tab który składa się z linii
- czynsz - 500 zl
- prąd - 100 zl
- telefon - 200 zł
i teraz tak, jeśli ktoś wpłaci:
- 500 zł to automatyczie linia czynsz określona jest jako zapłacona (czynsz jest piewrwszy na liście)
- 600 zł to pokrywa czynsz i prąd
- 800 zł to pokrywa wszystko
- 700 zł to pokrywa czynsz, prąd i 100 zł na telefon (telefon ma flage że jest częściowo opłacony)
- 1000 zł - wszystko pokryte i 200 zł czeka na kolejne rozliczenie
W przypadku tej wpłaty 700 zł telefon będzie pokryty docelowo z 2 wpłat (bo 700 nie pokryło telefonu w całości).
W pierwszej kolejności są pokrywane są linie z najstarszych rozliczeń.
Dzięki za wskazówki, takie zaawansowane widoki przewyższają moje umiejętności a wydaje mi się, że można to swobodnie zrobić po stronie DB a nie aplikacji.
MP