BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 27 апр 2024, 19:28

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 16 ] 
Автор Сообщение
 Заголовок сообщения: Инициализация интерфейса дилера
СообщениеДобавлено: 06 май 2009, 17:02 
Не в сети
Клиент

Зарегистрирован: 02 окт 2008, 17:52
Сообщения: 530
Карма: 27
часть конфига модуля карт
Цитата:
###
### Удаленные платежи
###
#(режим поиска - по номеру договора)
findmode.1.class=FindKernel
findmode.1.mode=contract
findmode.1.title=Номер договора
dealer.allow.contract.1.regexp=\d+
#(режим поиска - по адресу)
findmode.2.class=FindKernel
findmode.2.mode=address
findmode.2.title=Адрес
findmode.2.pid=38
#(режим поиска - по ФИО)
findmode.3.class=FindKernel
findmode.3.mode=text_param
findmode.3.title=IP-адрес
findmode.3.pid=45


запрос
Код:
https://ip:8443/bgbilling/idealer?mid=11&action=Init&find_modes=


ответ
Код:

<data status="ok">
<find_modes/>
</data>


запрос
Код:
https://ip:8443/bgbilling/idealer?mid=11&action=Init&find_modes=&address_list=


ответ
Код:
<data status="ok">
<find_modes/>

<address_list>
+
<cities>
<item id="0" title="----------"/>
<item id="1" title="г. Город"/>
</cities>
+
<streets>
<item id="0" title="----------"/>
<item id="31" title="б-р. Луначарского"/>
<item id="81" title="Березовая"/>
<item id="8" title="Восточная"/>
</streets>
</address_list>
</data>


Проблема в том что не выводтся режимы поиска и соответственно не работает поиск по номеру договора, в чем может быть дело?

ps
надеюсь номер договора не является cid из базы


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 06 май 2009, 17:46 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Может быть режимы поиска у дилера в менеджере дилеров не стоят, или http сессия таже, что до того как изменили типы поиска?

cid мы обычно называем кодом договора.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 07 май 2009, 12:47 
Не в сети
Клиент

Зарегистрирован: 02 окт 2008, 17:52
Сообщения: 530
Карма: 27
режимы поиска установил
после этого появились режимы
Код:

<data status="ok">

<find_modes>

<mode class="FindKernel" id="1" name="kernel_contract" title="Номер договора">
<param name="contract_title"/>
</mode>

<mode class="FindKernel" id="2" name="kernel_address" title="Адрес">
<param name="address_street"/>
<param name="address_house"/>
<param name="address_frac"/>
<param name="address_flat"/>
<param name="address_room"/>
</mode>

<mode class="FindKernel" id="3" name="kernel_text_param" title="IP-адрес">
<param name="param"/>
</mode>
</find_modes>
</data>



запрос
Код:
https://ip:8443/bgbilling/idealer?mid=11&action=ContractFind&contract_title_1=65171



все равно ошибка номер 8
Код:
<data error_code="8" status="error">Договор не найден</data>


выборка из базы
Код:
select id,date1,title from contract where title='65171'


ответ
Код:
"id","date1","title"
39,"2009-01-11","65171"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 07 май 2009, 13:18 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
А версия какая?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 07 май 2009, 13:28 
Не в сети
Клиент

Зарегистрирован: 02 окт 2008, 17:52
Сообщения: 530
Карма: 27
Код:
   card вер. 4.5 сборка 90 от 14.04.2009 12:47:18


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 08 май 2009, 11:11 
Не в сети
Клиент

Зарегистрирован: 02 окт 2008, 17:52
Сообщения: 530
Карма: 27
если напрямую (по ссылке через браузер) провести платеж по cid, то он проходит

запрос
Код:
https://ip:8443/bgbilling/idealer?mid=11&&action=PaymentAdd&cid=39&summ=10&trans=08052009-1103&comment=test


ответ
Код:
<data status="ok">

<payments>
<payment cid="39" comment="Оплата по дог. 65171 через Дилер ()" contract="65171" contract_comment="Иванов Иван Иванович" date="08.05.2009 11.06.22" id="2" status="1" summ="10.00" trans="08052009-1106"/>
</payments>
<contract balance="14.00" comment="Иванов Иван Иванович" firm_id="" id="39" title="65171"/>
</data>


но так как web-интерфейс дилера сначал делает поиск, то платеж провести через него не получается


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 12 май 2009, 09:58 
Не в сети
Клиент

Зарегистрирован: 02 окт 2008, 17:52
Сообщения: 530
Карма: 27
up


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 13 май 2009, 14:15 
Не в сети
Аватара пользователя

Зарегистрирован: 19 мар 2009, 16:15
Сообщения: 210
Откуда: Уфа
Карма: 27
Может быть Вы установили фильтры поиска (Модули-Карточки-Менеджер дилеров), которые не удовлетворяют искомому договору? Если фильтры поиска установлены, то ищет только по ним, если не установлены - ищет все договора.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 13 май 2009, 22:07 
Не в сети
Клиент

Зарегистрирован: 02 окт 2008, 17:52
Сообщения: 530
Карма: 27
фильтры у меня пустые - дело оказалось в другом

Код:
dealer.allow.contract.1.regexp=\d+


этот параметр подразумевает что договор представляет из себя набор целых чисел, от одного и более - у меня договор 5 чисел (телефон)

в любом случае после удаления этого параметра их конфига, все заработало
всем спасибо


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 14 май 2009, 12:42 
Не в сети
Аватара пользователя

Зарегистрирован: 19 мар 2009, 16:15
Сообщения: 210
Откуда: Уфа
Карма: 27
jack7 писал(а):
Код:
dealer.allow.contract.1.regexp=\d+


Так это ж как раз и относится к фильтрам?

У Вас регесп был не совсем корректный. Там система поиска так работает, что регексп должен быть сгруппирован скобочками, т.е. правильно было бы
Код:
dealer.allow.contract.1.regexp=(\d+)


и через символ "|" можно указывать иные договора. Т.е. правильно делать регексп вида
Код:
dealer.allow.contract.1.regexp=(выражение1)|(выражение2)| ... |(выражениеN)


Поэтому у Вас и не находил договора. Попробуйте вариант со скобочками.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 14 май 2009, 13:41 
Не в сети
Клиент

Зарегистрирован: 02 окт 2008, 17:52
Сообщения: 530
Карма: 27
конфиг
Код:
#(режим поиска - по номеру договора)
findmode.1.class=FindKernel
findmode.1.mode=contract
findmode.1.title=Номер договора
dealer.allow.contract.1.regexp=(\d+)


ответ
Цитата:
<data error_code="8" status="error">Договор не найден</data>


также пробовал
(\w+)
(\S+)

результат отрицательный

после комментирования строки с dealer.allow.contract.1.regexp,
поиск проходит удачно


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 14 май 2009, 15:23 
Не в сети
Аватара пользователя

Зарегистрирован: 19 мар 2009, 16:15
Сообщения: 210
Откуда: Уфа
Карма: 27
Очень странно, кстати, потому что эта строчка относится именно к фильтрам. Т.е. фактически был определен фильтр с таким regexp, и его надо явно выбирать в настройках самого дилера, если есть желание его использовать. Я так понимаю, у Вас версия биллинга 4.5?
В 4.6 дилерский интерфейс и сама система поиска была переработана, там точно все ищется корректно. В 4.5 же само API поиска было иное, возможно с этим связано.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 26 июн 2009, 17:16 
Не в сети

Зарегистрирован: 26 июн 2009, 16:52
Сообщения: 1
Карма: 0
Добрый день!

Дано: Клиентская машина Windows 2003 server, IE, Mozilla

Периодически наблюдаются подобные проблемы.


jack7 писал(а):
Код:
https://ip:8443/bgbilling/idealer?mid=11&action=Init&find_modes=


ответ
Код:

<data status="ok">
<find_modes/>
</data>


запрос
Код:
https://ip:8443/bgbilling/idealer?mid=11&action=Init&find_modes=&address_list=


ответ
Код:
<data status="ok">
<find_modes/>

<address_list>
+
<cities>
<item id="0" title="----------"/>
<item id="1" title="г. Город"/>
</cities>
+
<streets>
<item id="0" title="----------"/>
<item id="31" title="б-р. Луначарского"/>
<item id="81" title="Березовая"/>
<item id="8" title="Восточная"/>
</streets>
</address_list>
</data>


Проблема в том что не выводтся режимы поиска и соответственно не работает поиск по номеру договора, в чем может быть дело?

ps
надеюсь номер договора не является cid из базы


А при поиске выходит ошибка

Код:
   <?xml version="1.0" encoding="windows-1251" ?>
  <data error_code="8" status="error">Договор не найден</data>


При том на каких то машинах все проходит на О.К., на каких то вообще не работает, на каких то работает через раз, при том мазилла работает стабильнее осла.
Тоже самое в web-кабинете дилера: во вкладке поиска платежа поле ввода договора то отображается, то нет.
Как это вылечить ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 01 июл 2009, 12:57 
Не в сети
Разработчик

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
Цитата:
При том на каких то машинах все проходит на О.К., на каких то вообще не работает, на каких то работает через раз, при том мазилла работает стабильнее осла.
Тоже самое в web-кабинете дилера: во вкладке поиска платежа поле ввода договора то отображается, то нет.
Как это вылечить ?

Нужно сначала как-то воспроизвести. Если бы вы нашли машину, где ошибка более-менее регулярно всплывает и дали нам доступ, было бы проще..


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 27 авг 2009, 18:53 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 06 авг 2009, 13:34
Сообщения: 72
Откуда: Уфа
Карма: 0
restart писал(а):
jack7 писал(а):
Код:
dealer.allow.contract.1.regexp=\d+


Так это ж как раз и относится к фильтрам?

У Вас регесп был не совсем корректный. Там система поиска так работает, что регексп должен быть сгруппирован скобочками, т.е. правильно было бы
Код:
dealer.allow.contract.1.regexp=(\d+)


и через символ "|" можно указывать иные договора. Т.е. правильно делать регексп вида
Код:
dealer.allow.contract.1.regexp=(выражение1)|(выражение2)| ... |(выражениеN)


Поэтому у Вас и не находил договора. Попробуйте вариант со скобочками.


у меня это выглядило так:
dealer.allow.contract.1.regexp=\d\d\d\d/\d\d
не находил исправил:
dealer.allow.contract.1.regexp=(\d\d\d\d/\d\d)
все равно не находит, закомментил и сразу же нашел.. BGB 4.6

_________________
Это текст


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 28 авг 2009, 10:46 
Не в сети
Разработчик

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
http://www.bgbilling.ru/v4.6/doc/ch06s10s01.html
Цитата:
При установки regexp фильтра используется MySQL REGEXP.

http://dev.mysql.com/doc/refman/5.0/en/regexp.html
\d -> [0-9]


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 16 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


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

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
POWERED_BY
Русская поддержка phpBB
[ Time : 0.588s | 50 Queries | GZIP : On ]