Version 31 (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*.
* Abonamenty oznaczają ogłoszenia abonamentowe, włączanie abonamentu polega na ustawieniu statusu na Online, dat StartDate i EndDate dla Subscription oraz dla ogłoszeń klienta posiadającego ten abonament zgodnie z tym co mamy w OrderItem dla abonamentu
Ogłoszenie i abonament posiadają pola: Status (ProductStatus), StartDate oraz EndDate.
public enum ProductStatus { Online = 1, // aktywne Suspended = 2, // wstrzymane przez uzytkownika New = 3, // w trakcie zamieszczania Deleted = 5, // usuniete przez uzytkownika Censored = 6, // ocenzurowane Expired = 7, // wygasła data ważności ogłoszenia lub abonamentu OverLimit = 8, //ogłoszenie nie mieści się do aktualnego abonamentu, wcześniej klient miał abo na 50 a po przedłużeniu ma na 25 }
Ogłoszenie gazetowe
Każde ogłoszenie może posiadać opcję emisji w gazecie AMT. Na ogłoszenie gazetowe składają się następujące elementy:
- wyróżnienie gazetowe (pakiet)
- treść
- tytuł
- hasła
- dodatki gazetowe z OrderItem
Przy włączaniu / przedłużaniu ogłoszenia należy wziąć pod uwagę opcję gazetową.
Włączamy ogłoszenia i abonamenty
- Ogłoszenia
- Włączamy wszystkie ogłoszenia, których StartDate w OrderItem jest dziś - ustawiamy status Online, Promotion, StartDate oraz EndDate zgodnie z OrderItem
- Abonamenty
- Włączamy wszystkie abonamenty, których StartDate w OrderItem jest dziś - dla Subscription ustawiamy odpowiednio Promotion, 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 OverLimit
Wyłączamy pozostałe ogłoszenia i abonamenty
- Ogłoszenia i abonamenty
- Wyłączamy (ustawiamy status Expired) dla wszystkich ogłoszeń i abonamentów które posiadają status Online oraz EndDate jest mniejsza niż dziś