Название: Честные услуги Отправлено: Efendy от 14 Апреля 2019, 17:05:13 Сделал модуль "честные услуги". Как работает:
в момент блокировки учетной записи запоминается сколько времени сталось до завершения услуги. В момент переключения в разблокированное состояние время завершения устанавливается текущее время + остаток на момент блокировки. Мне кажется, эта фича станет основной по решению проблемы ухода в минус вместо всяких заморозок и т.д. Я даже назвал "честным" такой модуль, потому что с стороны клиента не должно возникать никаких претензий. Объясню на примерах: 1) У абона 10 грн на счету, завершается тариф и подключается новый, стоимостью 100 грн. На счету -90 грн. Учетка блокируется. Модуль "честных услуг" запоминает, что до конца действия тарифа (допустим) 30 дней. Через 5 дней абон пополняет счет и длительность услуги устанавливается +30 дней от момента пополнения Допустим дальше: 2) через 3 дня со счета абона списали 50 грн за вызов мастера. Счет в минусе - клиент блокируется. Модуль "честных услуг" запоминает, что до конца действия тарифа 27 дней (3 из 30 он отработал). Клиент пополняет счет через 10 дней и получает + 27 дней Допустим дальше: 3) Наступил новый месяц. Счет снова в минусе. Модуль "честных услуг" запоминает, что до конца действия тарифа 30 дней. Клиент 1 день тупит и берет кредит на 2 дня. Через 2 дня кредит анулируется, учетка блокируется и модуль запоминает 28 дней. Абон уезжает в Польшу на несколько месяцев, счет в минусе. Все это время услуга не завершалась. Приезжает, пополняет счет и пользуется 28 дней Модуль готов, сейчас его тестирую Название: Re: Честные услуги Отправлено: skreep от 15 Апреля 2019, 13:18:10 Доброго дня!!!
Як даний модуль буде взаємодіяти з тарифами де активовано "короткі послуги", абонплата за добу? Название: Re: Честные услуги Отправлено: Efendy от 15 Апреля 2019, 17:51:51 На всякий случай повторю: фича "честных услуг" может активироваться для конкретной услуги. С короткими услугами не должна конфликтовать т.к все, что она делает - меняет длительность уже подключенной услуги. Короткие услуги ориентируются на баланс и если он меньше стоимости услуги, подключает услугу на другой период и другую стоимость. Дальше модуль кротких услуг никак не влияет на уже подключенный тариф. А вот "честные услуги" влияют, а именно на длительность
Название: Re: Честные услуги Отправлено: tima от 28 Мая 2020, 17:33:23 День добрый! После установки модуля честных услуг, при попытке ручного изменения поля «Заблокирован» получаю ошибку:
Код: The target table v_fair_services of the UPDATE is not updatable Название: Re: Честные услуги Отправлено: Efendy от 28 Мая 2020, 21:24:22 какая версия mysql у тебя?
Название: Re: Честные услуги Отправлено: tima от 28 Мая 2020, 21:52:36 Код: mysql Ver 14.14 Distrib 5.7.30, for FreeBSD12.1 (amd64) using EditLine wrapper Название: Re: Честные услуги Отправлено: Efendy от 29 Мая 2020, 12:06:40 Да, огорчает mysql. В новых версиях не умеет делать то, что умел в старых. Придется переписать апдейт VIEW на апдейт с JOIN. Выполни:
Код: DROP TRIGGER IF EXISTS `tr_fair_service`; Название: Re: Честные услуги Отправлено: tima от 29 Мая 2020, 16:19:11 Спасибо! Помогло )
Пока проверяю работу модуля, нашел особенность - при подключении честной услуги заблокированному абоненту (не зависимо от состояния баланса) – не отображается в списке подключенных услуг, но при этом снимает деньги с баланса, отображая это в «Истории». |