Обещанный платеж

Форум технической поддержки продуктов компании Сетевые Решения
wed
Сообщения: 72
Зарегистрирован: 06 фев 2008, 15:20

Re: Обещанный платеж

Сообщение wed » 21 фев 2012, 08:34

Да.
В целом свои плюсы конечно есть, Если абонент месяц не пользовался, то он не звонит и не спрашивает я же не пользовался, почему вы с меня списали.
Но и минусов хватает.

Andrei
Сообщения: 810
Зарегистрирован: 08 ноя 2006, 12:26
Контактная информация:

Re: Обещанный платеж

Сообщение Andrei » 14 авг 2013, 08:45

А как-то можно посмотреть список обещанных платежей, которые вводили абоненты?
Из консольки-то это делается, например за сегодня:

Код: Выделить всё

mysql> select acc.login, p.amount, p.prom_date, p.prom_till from promise_payments as p, agreements as agr, accounts as acc where p.agrm_id=agr.agrm_id and agr.uid=acc.uid and date(p.prom_date)=date(now());
+----------+--------+---------------------+---------------------+
| login    | amount | prom_date           | prom_till           |
+----------+--------+---------------------+---------------------+
| Lisota   |     50 | 2013-08-14 00:10:02 | 2013-08-17 00:10:02 |
| Provalov |     50 | 2013-08-14 00:03:12 | 2013-08-17 00:03:12 |
+----------+--------+---------------------+---------------------+
2 rows in set (0.02 sec)

А вот из вэб-интерфейса менеджер это никак не может посмотреть?
Делать внешним отчетом?

saaremaa
Сообщения: 65
Зарегистрирован: 08 окт 2012, 14:14

Re: Обещанный платеж

Сообщение saaremaa » 14 авг 2013, 08:47

К сожалению да. Мы тоже мучаемся. Особенно если надо посмотреть историю Обещанных платежей - этого функционала нет.

ArhAngel
Сообщения: 98
Зарегистрирован: 09 фев 2012, 04:07

Re: Обещанный платеж

Сообщение ArhAngel » 15 авг 2013, 03:50

Andrei писал(а):А как-то можно посмотреть список обещанных платежей, которые вводили абоненты?
Из консольки-то это делается, например за сегодня:

Код: Выделить всё

mysql> select acc.login, p.amount, p.prom_date, p.prom_till from promise_payments as p, agreements as agr, accounts as acc where p.agrm_id=agr.agrm_id and agr.uid=acc.uid and date(p.prom_date)=date(now());
+----------+--------+---------------------+---------------------+
| login    | amount | prom_date           | prom_till           |
+----------+--------+---------------------+---------------------+
| Lisota   |     50 | 2013-08-14 00:10:02 | 2013-08-17 00:10:02 |
| Provalov |     50 | 2013-08-14 00:03:12 | 2013-08-17 00:03:12 |
+----------+--------+---------------------+---------------------+
2 rows in set (0.02 sec)

А вот из вэб-интерфейса менеджер это никак не может посмотреть?
Делать внешним отчетом?


+100500
реквестирую о добавлении фичи для просмотра менеджерами взятых клиентами ОП

Andrei
Сообщения: 810
Зарегистрирован: 08 ноя 2006, 12:26
Контактная информация:

Re: Обещанный платеж

Сообщение Andrei » 15 авг 2013, 13:16

В стандартной поставке ЛБ в каталоге /usr/local/billing/phpclient/admin/users_reports есть отчет о платежах report2.php + report2_main.php . Думал переделать его для вывода в админку обещанных платежей, но там используется API-шная функция getPayments, которая (судя по доке на API) работает только для реальных платежей, а не для обещанных :(
В доке на API нет упоминаний про работу с обещанными платежами :(

mrlexus
Сообщения: 66
Зарегистрирован: 24 фев 2011, 18:07

Re: Обещанный платеж

Сообщение mrlexus » 15 авг 2013, 15:41

В доке на API нет упоминаний про работу с обещанными платежами :(

В доке нет упоминания многих функций, но есть api3.wsdl, где есть все, что надо:

Код: Выделить всё

 <element name="getPromisePayments">
   <complexType>
    <sequence>
     <element name="flt" type="lbapi:soapFilter" minOccurs="1" maxOccurs="1"/>
    </sequence>
   </complexType>
  </element>


flt - это объект фильтра, в доке он описан.

Andrei
Сообщения: 810
Зарегистрирован: 08 ноя 2006, 12:26
Контактная информация:

Re: Обещанный платеж

Сообщение Andrei » 15 авг 2013, 20:18

mrlexus писал(а):есть api3.wsdl, где есть все, что надо:

Как это использовать я не понимаю. Есть примеры?

Andrei
Сообщения: 810
Зарегистрирован: 08 ноя 2006, 12:26
Контактная информация:

Re: Обещанный платеж

Сообщение Andrei » 26 авг 2013, 22:11

После перехода на 2.0 сборку 006 даже в журнале событий стало не видно какой абонент провел обещанный платеж. Раньше хоть это можно было посмотреть через вэб-интерфейс... :(
Вложения
Журнал событий.png

Andrei
Сообщения: 810
Зарегистрирован: 08 ноя 2006, 12:26
Контактная информация:

Re: Обещанный платеж

Сообщение Andrei » 28 авг 2013, 12:11

mrlexus писал(а): есть api3.wsdl, где есть все, что надо:

Код: Выделить всё

 <element name="getPromisePayments">
   <complexType>
    <sequence>
     <element name="flt" type="lbapi:soapFilter" minOccurs="1" maxOccurs="1"/>
    </sequence>
   </complexType>
  </element>


flt - это объект фильтра, в доке он описан.

Вот никак не пойму формат, в котором надо сформировать этот фильтр.
В доке есть пример:

Код: Выделить всё

Пример использования функции в коде (PHP библиотека)
// Входные параметры 
// Вызываемая функция 
// Фильтр записей: 
// agrmid - идентификатор договора 
// userid - идентификатор пользователя 
// receipt - номер платежного поручения 
// mgrid - идентификатор менеджера 
// dtfrom - дата платежа больше или равна заданной 
// dtto -  окончание периода
 
// Подготовка фильтра и контрольная сумма если используется кэш 
$filter = array( ... ); 
$md5 = $lanbilling->controlSum($filter); 
if( false != ($result = $lanbilling->get('getPayments', array('flt' => $filter, 'md5' => $md5))) ) 

    if(!is_array($result)) { 
        $result = array($result); 
    } 
     
    print_r($result); 
}

Но самого главного и не показано и не рассказано - $filter = array( ... ) - тут-то что? строка? в каком формате? или массив? По доке вроде как строка:

Код: Выделить всё

 
 <complexType name="soapFilter">
   <sequence>
...
<element name="dtfrom" type="xsd:string" minOccurs="0" maxOccurs="1" default=""/>
<element name="dtto" type="xsd:string" minOccurs="0" maxOccurs="1" default=""/>  </sequence>

но в каком формате?
Пробовал вот так сформировать строку:

Код: Выделить всё

$_filter='( [dtfrom] => '.$_POST['day'].'-'.$_POST['month'].'-'.$_POST['year'].' 00:00:00';
$_filter=$_filter.' [dtto] => '.$_POST['t_day'].'-'.$_POST['t_month'].'-'.$_POST['t_year'].' 00:00:00 )';

$md5 = $lanbilling->controlSum($_flt);
$result = $lanbilling->get("getPromisePayments", array("flt" =>$_filter,  "md5" => $md5));

или вот так:

Код: Выделить всё

$dtfrom=$_POST['day'].'.'.$_POST['month'].'.'.$_POST['year'];
$dtto=$_POST['t_day'].'.'.$_POST['t_month'].'.'.$_POST['t_year'];
$_filter = array(
    "dtfrom"  => $dtfrom,
    "dtto"    => $dtto
    );


Фильтр просто игнорируется. :( Что не так?
Последний раз редактировалось Andrei 28 авг 2013, 12:31, всего редактировалось 1 раз.

Andrei
Сообщения: 810
Зарегистрирован: 08 ноя 2006, 12:26
Контактная информация:

Re: Обещанный платеж

Сообщение Andrei » 28 авг 2013, 12:23

Код: Выделить всё

$dtfrom=$_POST['day'].'.'.$_POST['month'].'.'.$_POST['year'].' 00:00:00';
$dtto=$_POST['t_day'].'.'.$_POST['t_month'].'.'.$_POST['t_year'].' 00:00:00';

$_filter = array(
    "dtfrom"  => $dtfrom,
    "dtto"    => $dtto
    );
print_r ($_filter);

выдает
Array ( [dtfrom] => 26.08.2013 00:00:00 [dtto] => 29.08.2013 00:00:00 )
Но все равно фильтр не работает :(


Вернуться в «LANBilling: форум поддержки продукта»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 17 гостей