Перейти к содержимому
Калькуляторы

Lanbilling списание АП

кто нибудь решил проблему 12 часов, когда, если услуга включена после 12 часов, этот день идет нахаляву абоненту?

 

пробовал комбинированно - ежедневно равными долями

динамически - ежедневно равными долям

фиксировано - ежедневно равными долям

 

все равно , если после 12-00 устанавливать услугу, в этот день деньги не списываются...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Услуга включается только через УЗ - блокировки - там при включении время включения ставится 00:00

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Услуга включается только через УЗ - блокировки - там при включении время включения ставится 00:00

 

а если клиент управляет услугой из лк?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Услуга включается только через УЗ - блокировки - там при включении время включения ставится 00:00

Не совсем так. В интерфейсе админки в двух местах (Объекты - УЗ и Объекты - Пользователи - нажать +) есть менюшки управления блокировками, которые как раз используют только текущее время при изменении состояния и изменять это поведение разработчики не намерены.

Поэтому выход: либо выпиливать эти менюшки из интерфейса либо бить по рукам операторов, которые ими пользуются.

 

а если клиент управляет услугой из лк?

Пытался допилить в ЛК мастер управления пакетами ТВ, с первого захода не осилил. Но там можно взять за образец мастер смены тарифного плана и в коде вычислять нужную дату и время ставить 00:00.

 

Ну и крайний вариант - запрашивать доработку у разработчиков.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

все равно , если после 12-00 устанавливать услугу, в этот день деньги не списываются...

это так критично?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Это просто явный баг.

Например абонентка по дням, пользовательская блокировка. Каждый день с 13 до 21 включать интернет и использовать его бесплатно - списания-то нет. Или какую-нибудь услугу.

В свое время я делал проверку по БД биллинга, если находил разблокировку не с 0:00 - то исправлял, ядро биллинга это обнаруживало и делало перерасчет.

Потом операторы научились использовать правильные кнопки и необходимость в таком костыле отпала.

 

С доработками ЛК беда, писал на форуме у них, писал тут на форуме - реакции нет.

А проблема - абонент не может сменить тариф если он заблокирован по балансу. Никто случаем не разбирался? подозреваю что надо всего лишь условие проверки чуть исправить...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Это просто явный баг.

Например абонентка по дням, пользовательская блокировка. Каждый день с 13 до 21 включать интернет и использовать его бесплатно - списания-то нет. Или какую-нибудь услугу.

Баг, это если бы работало не как задумано, а тут все работает так как задумано.

В этом случае скорее всего недоработка чем баг. Таки да, критично.

 

Тут два варианта: или отказаться от пользовательской блокировки, или брать плату за нее.

Есть третий, типо оплатить "дополнительный функционал" разрабам, чтобы оплата снималась за полные сутки или почасово,

вне зависимости от блокировок.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А проблема - абонент не может сменить тариф если он заблокирован по балансу. Никто случаем не разбирался? подозреваю что надо всего лишь условие проверки чуть исправить...

Посмотрел код ЛК. Оказалось все очень просто. Ищем файл client2/client/components/tariff/changing/Tariff_Changing_Helper.php и приводим в нём функцию к такому виду:

 

   public function validateVgid() {
       /*
       if ($this->vgroup()->vgroup->blocked) {
           throw new Exception('Account is blocked');
       }
       */
       foreach ($this->tarrasp() as $item) {
           if ($this->byUser($item)) {
               throw new Exception('Please remove allready scheduled tariff change');
           }
       }
   }

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

mrlexus Огромное Вам спасибо!

Brainiac Да, неверно выразился. Не баг, а просто недоработка. Но странно что она есть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Еще лучше вынести это в параметр конфига. Приводим функцию к такому виду:

 

   public function validateVgid() {

       if (!yii::app()->params['vgroup_schedule_blocked']) {
           if ($this->vgroup()->vgroup->blocked) {
               throw new Exception('Account is blocked');
           }
       }

       foreach ($this->tarrasp() as $item) {
           if ($this->byUser($item)) {
               throw new Exception('Please remove allready scheduled tariff change');
           }
       }
   }

 

И в конфиг ЛК добавить такие строчки:

 

//Разрешить смену тарифного плана при блокировке УЗ
'vgroup_schedule_blocked' => false,

 

ЗЫ Просто ради интереса, сколько денег попросили бы разработчики за такую доработку?

Изменено пользователем mrlexus

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не знаю.

На их форуме я, и еще один человек отписывались с просьбой решить эту проблему.

Обоих пригласили в коммерческий отдел.

Помня сколько мне залепили лет 5 назад за простенький отчет, который я потом сам сделал, думаю, что что-то в районе 7-15 тыр...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В свое время я делал проверку по БД биллинга, если находил разблокировку не с 0:00 - то исправлял, ядро биллинга это обнаруживало и делало перерасчет.

 

попробовал изменить время в таблице usbox_services

перерасчет автоматом не произошел, по крайнем мере через час после изменений.

отдельно запускать перерасчет? или ждать следующего дня?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Гм. Сложно сказать - давно было подробностей не помню. Так-то не час ждал, а буквально несколько минут.

А если вернуть обратно как было и через веб интерфейс сменить?

Можно просто сделать отчет - и по рукам бить тех кто неправильно выставил... Заодно научатся как надо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Гм. Сложно сказать - давно было подробностей не помню. Так-то не час ждал, а буквально несколько минут.

А если вернуть обратно как было и через веб интерфейс сменить?

Можно просто сделать отчет - и по рукам бить тех кто неправильно выставил... Заодно научатся как надо.

 

да можно даже не менять, в веб зайти в разовую услугу, и потом просто кнопка сохранить. после этого пересчитывает, но уже услуга изменена администратором или менеджером, потом person_id в Null нужно выставлять, что бы отображалось, что услуга назначена самим абонентом.

скрипт то я написал для изменения времени, но вот толку от этого нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Какие поля в таблице меняете?

 

created, timefrom, activated время выставляю в 00:00:00

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Какие поля в таблице меняете?

 

created, timefrom, activated время выставляю в 00:00:00

 

Воспроизвел у себя такую же ситуацию. После изменения времени напрямую в БД в указанных полях на 00:00:00 перерасчет прошел практически мгновенно.

Вероятно, время перерасчета зависит от параметров блокировки и типа списания в тарифном плане. У меня блокировка - Активная, списание - Комбинированно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Коллеги, не сильно по теме, но просьба - можете подсказать как запретить вход диапазону логинов (с 0900000 по 1000000)? как я догадываюсь надо указать в CAccessControlFilter.php дополнительные проверки, но что-то не понимаю как.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

в файле SiteController.php чуть модифицировал -

if ( isset($_POST['LoginForm']) and ($_POST['LoginForm']['login']<1600000)) 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.