![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 66 Pomógł: 11 Dołączył: 25.07.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam do rozgryzienia jeden problem związny z płatnościami oraz rozliczeniami. Występuje dwóch aktorów, Klient i Opiekun. Z każdym z nich jest podpisywana umowa, z klientem roczna, z opiekunem różnie (albo na rok, albo na konkretne zlecenie). Zlecenie jest powiązane z umową klienta i opiekuna. Na podstawie zlecenia rozliczany jest klient (faktura co 2 tyg, lub raz na koniec miesiąca lub z końcem zlecenia), opiekun rozliczany jest za cały miesiąc.
To jeszcze jest do ogarnięcia. W każdej dowolnej sytuacji, zarówno klient jak i opiekun, może być dodatkowo obciążony jakimś kosztem, lub może mieć upust/zwrot. Także w między czasie może dojść do zmiany wysokości dziennego obciążenienia (klient), lub dziennego wynagrodzenia (opiekuna). Dodatkowym obiciążeniem może być np.: rozwiązanie umowy czy to Klientem czy Opiekunem. Problem polega na tym, że nie bardzo mogę uporać się z samą koncepcją bazy. Aktualnie mam to rozwiązane jako tabele Contract_Contractor (umowa klint), Contract_Guardian (umowa opiekun), Service (zlecenie) Service_Day (dodatkowe koszty naliczane klientowi/opikunowi na podstawie zlecenia) Service_Day jest miejscem gdzie przechowuje dodatkowe zmiany typu (doliczenie wartości, upust, etc) per dzień lub zakres dni. Dzięki temu mogę regulować wartości w finalnym rozliczeniu i dodatkowo wyświetlam to na kalendarzu rozliczeń. Chwilowo nie mogę rozwiązać problemu ze zmianą stawki zleceń w trakcie jej trwania oraz dodatkowym doliczanie wartości z tytułu rozwiązania umowy, które defakto nie są bezpośrednio związane ze zleceniem. Macie może pomysł, jak taki problem rozwiązać - lub przeorganizować dane w bazie danych? Na myśl, przychodzi mi dodatowa tabela (kótra miała by informację, że opłata została doliczona do danego rozliczenia). Z góry dziękuję za jakieś sugestie. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 285 Pomógł: 37 Dołączył: 18.12.2007 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Nie do końca rozumiem Twoje problemy, ale na szybko wydaje mi się, ze u mnie jakoś tak by to wyglądało
Składniki: id|nazwa 1 Wynagrodznie normalne 2 Potrącenie bo klient wstał lewą nogą Kontrahent 1 Iksiński Historia składników id|_kontrahenta|id_skladnika|data_od|wartość 1 1 01-01-2012 20 1 1 01-05-2012 21 1 2 01-05-2012 -10 1 2 03-05-2012 0 Wykonane rozliczenia: id_kontrahenta|do_dnia 1 01-03-2012 1 01-05-2012 Oczywiście dodatkowo klucze podstawowe jednokolumnowe, indeksy unique i różne dodatkowe informacje o rachunkach jak data wystawienia, kwota itd, itp. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 31.07.2025 - 10:28 |