Version 3 (modified by marek, 14 years ago) |
---|
Taski
Ogólny opis idei
Założenie jest takie, że codziennie chodzi program odpowiedzialny za włączanie / wyłączanie ogłoszeń i abonamentów. Ogłoszenie i abonament posiadają pola StartDate? oraz EndDate?.
Włączamy ogłoszenia i abonamenty*
- Ogłoszenia Włączamy wszystkie ogłoszenia, których StartDate? w OrderItem? jest dziś - ustawiamy status Online, wyróżnienie, StartDate? oraz EndDate? zgodnie z OrderItem?
- Abonamenty Włączamy wszystkie abonamenty, których StartDate? w OrderItem? jest dziś - dla Subscription ustawiamy odpowiednio StartDate?, EndDate?, dla ogłoszeń klienta posiadającego ten abonament ustawiamy status Online, wyróżnienia, StartDate? oraz EndDate? zgodnie z Subscription, jeśli mamy więcej ogłoszeń Online niż ustalono w abonamencie - włączamy tylko tą ilość (posortowane po dacie ostatniej aktualizacji malejąco), która jest określona w abonamencie, reszta powinna otrzymać status (jaki status ???)
* Abonamenty oznaczają ogłoszenia abonamentowe, włączanie abonamentu polega na ustawieniu dat StartDate? i EndDate? zgodnie z tym co mamy w OrderItem? dla abonamentu
Wyłączamy wszystko, co wygasło w dniu poprzednim
Czyli pytamy najpierw o wszystkie ogłoszenia abonamentowe, których status jest Online oraz data w polu EndDate? jest z dnia poprzedniego. Ustawiamy wówczas ich status na Offline. Z abonamentem nie robimy nic, ponieważ on już nie jest aktualny...
Następnie to samo dla pozostałych ogłoszeń - czyli nieabonamentowych - pytamy o ogłoszenia ze statusem Online i datą w polu EndDate? z dnia poprzedniego. Ustawiamy wówczas ich status na Offline.
Włączamy ogłoszenia nieabonamentowe
Pytamy o wszystkie ogłoszenia których wartość w polu StartDate? jest datą dzisiejszą. Ustawiamy im status na Online.
Włączamy ogłoszenia abonamentowe
Pytamy o wszystkie abonamenty których StartDate? jest jest datą dzisiejszą oraz dla wszystkich ogłoszeń danego klienta ustawiamy StartDate? i EndDate? jak w abonamencie oraz status na Online.
OrderItems?
Dla wszystkich szczegółów zamówienia, których StartDate? jest dziś aktywujemy dany produkt.