Користувальницькькі налаштування

Налаштування сайту


crimeandpunishment

Розбіжності

Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.

Посилання на цей список змін

Порівняння попередніх версій Попередня ревізія
Попередня ревізія
Остання ревізія По сторонах наступні версії
crimeandpunishment [2015/05/31 01:43]
crimeandpunishment [2023/06/15 20:02]
bobr
Рядок 1: Рядок 1:
 +====== Злочин та кара ======
 +{{ :raskolnikovsaxe.jpg?300|}}
 +Починаючи з Ubilling 0.6.7 реалізовано нову механіку <del>вбивства старушенцій</del> нарахування штрафів, за перебування абонентом у неактивному (читаємо - неоплаченому) стані впродовж певного інтервалу, який зазначається в кількості днів. Штраф нараховується одноразово, при досягненні абонентом зазначеного порогу.  
  
 +====== Як конфігурується? ======
 +Вся обробка здійснюється щоденним викликом відповідного action з [[remoteapi|Remote API]] - crimeandpunishment.  В кроні краще розмістити її вже після нарахування абонплати та інших дій, що зачіпають баланс абонента. Наприклад ось так:
 +
 +<code bash>
 +2 2 * * *       /bin/ubapi "crimeandpunishment"
 +</code>
 +
 +Поведінка цього механізму повністю регулюється за допомогою таких опцій [[alteriniconf|alter.ini]] в ось такому вигляді для прикладу:\\
 +
 +<code ini>
 +CAP_ENABLED=1
 +CAP_DAYLIMIT=30
 +CAP_PENALTY_PERCENT=0
 +CAP_PENALTY=20
 +CAP_PAYID=1
 +CAP_IGNOREFROZEN=1
 +</code>
 +
 +====== Що взагалі відбувається? ======
 +Призначено це все для опису бізнес логіки такого вигляду: 
 +  * Абонент //Родіон Романович// забув оплатити інтернет і раптово стан його рахунку став меншим за кредитний ліміт.
 +  * Він не є замороженим - ігнорування цього факту відбувається за допомогою **CAP_IGNOREFROZEN**.
 +  * Для нього заводиться відповідний запис у БД і лічильник днів неактивності виставляється в 1 (один).
 +  * Якщо лічильник неактивності вже існує - до нього додається ще один день, на шляху до невідворотного кінця.
 +  * Якщо лічильник неактивності Раскольнікова стає рівним кількості в 30 днів - **CAP_DAYLIMIT** - відбувається зняття суми 20 грошей **CAP_PENALTY** з рахунку, під виглядом платежу типу "готівка" **CAP_PAYID**
 +  * Лічильник продовжує тікати... ну так... про всяк випадок.
 +  * Якщо абонент розкаявся і вніс на рахунок суму, достатню для погашення боргу (або Баланс почав дорівнювати кредитному ліміту) - лічильник неактивності виставляється в 0 (нуль) і продовжує очікувати подальшого розвитку подій <del>у засідці</del>
 +  * Про всі ці цікаві події можна дізнатися за допомогою відповідного модуля "Чорної магії":
 +{{:dostoevsky.png?|}}
crimeandpunishment.txt · Востаннє змінено: 2023/06/15 21:42 повз bobr