forum.bitel.ru
http://forum.bitel.ru/

Свой Web-интерфейс. (через http-query)
http://forum.bitel.ru/viewtopic.php?f=19&t=1976
Страница 1 из 1

Автор:  Smersh1985 [ 03 мар 2009, 23:47 ]
Заголовок сообщения:  Свой Web-интерфейс. (через http-query)

Приветствую!

Пишу небольшой Web-интерфейс добавления платежей в 2 клика для BGBilling. Общается он с биллингом по http, собственно как и Java-клиент.

Реализовал авторизацию, поиск договора, добавление платежа и удаление платежа. Ничего сложного.

Однако встал на вопросе, как получить список всех платежей за Nый период. Запрос к модулю Отчетов возвращает список в виде Binary, с которым работать совсем неприятно. Есть ли способ получить список платежей в формате XML в модуле Отчетов или может в модуле Contract?

Интересует только вариант через http, обращение непосредственно к SQL оставлю на худой конец.

Автор:  lda [ 04 мар 2009, 12:24 ]
Заголовок сообщения: 

Можно сделать SQL запрос через http :)

Автор:  Smersh1985 [ 04 мар 2009, 13:15 ]
Заголовок сообщения: 

Вариант конечно прикольный, но пользователи, авторизующиеся через Web-интерфейс не будут иметь прав на исполнение SQL. =)

Если таки дойдет до SQL, то это будет обращение к базе напрямую, так оно побезопаснее =)

Автор:  dimOn [ 04 мар 2009, 13:35 ]
Заголовок сообщения: 

Вам всех платежей или платежей конкретного договора? Если всех платежей, то я такого не припомню. Просто в клиенте нет места, где нужен был такой функционал. Вы же включаете в клиенте debug и глядите, что запрашивается при запросе платежей в нужном месте по функционалу?

Автор:  Smersh1985 [ 04 мар 2009, 13:57 ]
Заголовок сообщения: 

Ну да, я в клиенте смотрю какой он запрос строит и использую его же.

Получить список платежей по одному договору не проблема, а получение списка платежей за период по всем договорам - такое в клиенте возможно только в модуле Отчетов, но он ничего кроме binary отдавать не хочет, хотя там и присутствует параметр ContentType, но он походу ни на что не влияет.

Ну что ж... Насколько я понимаю, задача через http не выполняется - буду делать через SQL.

Автор:  stark [ 05 мар 2009, 11:42 ]
Заголовок сообщения: 

В версии 4.6 будут еще табличные отчеты - они возращают csv. Но это не поможет . Да. у нас нет места, где выводятся все платежи, обращаться придется в базу

Автор:  Администратор [ 05 мар 2009, 14:25 ]
Заголовок сообщения: 

А может вам лучше через Web интерфейс дилера работать? Модуля карточек? Там занесение платежей есть.. Только расходов всяких нет, зато поиск договора по куче типов есть )

Автор:  Smersh1985 [ 17 мар 2009, 04:27 ]
Заголовок сообщения: 

Да нет....
Сейчас уже система имеет вид вполне гармоничного веб-интерфейса, через который можно быстро добавить платеж, просмотреть список только что добавленных платежей, посмотреть список когда-либо добавленных данным пользователем платежей(через SQL). Платежи можно в любое время отменить.
После перерыва сейчас буду делать возможность просмотра информации о договоре. И еще нужно сделать быстрое создание нового договора, т.е. заполнить несколько полей, а интерфейс сам придумает осмысленный логин с паролем и присвоит номер договора.
Так что получается админка с только нужными функциями, с доступом к которым нужно провести минимально возможное количество телодвижений.

Автор:  Феанор [ 20 апр 2009, 16:26 ]
Заголовок сообщения: 

Smersh1985 писал(а):
Так что получается админка с только нужными функциями, с доступом к которым нужно провести минимально возможное количество телодвижений.

Уважаемый, а может вы поделитесь таким интерфейсом? Ну или скриншоты выложите, а то очень интересно. Самому все равно придется писать что-то похожее для кассира (не потому что глупая блондинка, а чтобы без лишних телодвижений и максимально быстро).

Автор:  RimiX [ 22 май 2009, 09:38 ]
Заголовок сообщения:  HTTP запрос на проведение платежа

Вайршарк натравил на интерфейс по которому работает ява клиент. Вытащил кой чего и составил такое:
http://айпиадрес:8080/bgbilling/executer?user=юзер&pswd=пароль&id=new&module=contract&summa=3&pt=10&action=UpdateContractPayment&comment=http&date=24.04.2009&cid=184196
Платеж проводится. В ответ приходит XML вида
<?xml version="1.0" encoding="utf-8" ?>
<data status="ok">
<payment id="324790" />
</data>

Что это за айиди если в базе В базе платеж проходит под id="324791"?

Автор:  skn [ 22 май 2009, 15:20 ]
Заголовок сообщения: 

Уверены?

Код:
SELECT * FROM contract_payment WHERE cid=184196 AND dt='2009-04-24'

Автор:  RimiX [ 22 май 2009, 15:43 ]
Заголовок сообщения: 

skn писал(а):
Уверены?

Код:
SELECT * FROM contract_payment WHERE cid=184196 AND dt='2009-04-24'


Код:
http://172.18.0.2:8080/bgbilling/executer?user=###&pswd=###&id=new&module=contract&summa=0.04&pt=17&action=UpdateContractPayment&comment=http&date=22.05.2009&cid=184196

<data id="325775" status="ok"/>

325776   2009-05-22   184196   17   57   0,04   http


Автор:  skn [ 22 май 2009, 15:55 ]
Заголовок сообщения: 

попробуйте прочекать базу (myisamchk) у вас похоже проблема с ней

Автор:  RimiX [ 22 май 2009, 16:12 ]
Заголовок сообщения: 

skn писал(а):
попробуйте прочекать базу (myisamchk) у вас похоже проблема с ней

Т.е. ответьте мне
в вывод хттп запроса id однозначно должен указывать id проведённого платежа в базе? Это не глюк биллинга?

Автор:  stark [ 22 май 2009, 16:35 ]
Заголовок сообщения: 

RimiX писал(а):
skn писал(а):
попробуйте прочекать базу (myisamchk) у вас похоже проблема с ней

Т.е. ответьте мне
в вывод хттп запроса id однозначно должен указывать id проведённого платежа в базе? Это не глюк биллинга?

однозначно ..это может быть либо глюком библотеки mysql.jar либо самого сервера mysql.
какоя у вас версия сервера BGBilling ? какая версия сервера mysql ?

Автор:  RimiX [ 22 май 2009, 17:01 ]
Заголовок сообщения: 

stark писал(а):
RimiX писал(а):
skn писал(а):
попробуйте прочекать базу (myisamchk) у вас похоже проблема с ней

Т.е. ответьте мне
в вывод хттп запроса id однозначно должен указывать id проведённого платежа в базе? Это не глюк биллинга?

однозначно ..это может быть либо глюком библотеки mysql.jar либо самого сервера mysql.
какоя у вас версия сервера BGBilling ? какая версия сервера mysql ?


BGBilling 4.5 404 (23.03)
MySQL 5.0.51a

Автор:  skn [ 22 май 2009, 17:06 ]
Заголовок сообщения: 

RimiX писал(а):
Т.е. ответьте мне
в вывод хттп запроса id однозначно должен указывать id проведённого платежа в базе? Это не глюк биллинга?


да, проверил на тестовой БД ИД совпадают, то что у вас не сопадает бывает при повреждение индексов в БД

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/