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

Неправильно возвращает reg_date
http://forum.bitel.ru/viewtopic.php?f=18&t=11435
Страница 1 из 1

Автор:  SEA-Jay [ 10 мар 2016, 15:14 ]
Заголовок сообщения:  Неправильно возвращает reg_date

протокол bisys
биллинг 6.2

params=<?xml version="1.0" encoding="UTF-8"?><request><params><act>2</act><agent_date>2016-03-10T13:01:19</agent_date><pay_id>1234567890123456789012345678901457596881</pay_id><pay_date>2016-03-10T13:01:19</pay_date><account>000020</account><pay_amount>1099</pay_amount></params><sign>E
684866E
5CE7A1168BAA264904CF22DE</sign></request>

Запрос (urlencode):
params=%3C%3Fxml+version%3D%221.0%22+encoding%3D%22UTF-8%22%3F%3E%3Crequest%3E%3Cparams%3E%3Cact%3E2%3C%2Fact%3E%3Cagent_date%3E2016-03-10T13%3A01%3A19%3C%2Fagent_date%3E%3Cpay_id%3E1234567890123456789012345678901457596881%3C%2Fpay_id%3E%3Cpay_date%3E2016-03-10T13%3A01%3A19%3C%2Fpay_date%3E%3Caccount%3E000020%3C%2Faccount%3E%3Cpay_amount%3E1099%3C%2Fpay_amount%3E%3C%2Fparams%3E%3Csign
%3EE684
866E5CE7A1168BAA264904CF22DE%3C%2Fsign%3E%3C%2Frequest%3E

Ответ сервера :
<?xml version="1.0" encoding="UTF-8"?><response><params><err_code>0</err_code><err_text>Платеж зачислен на договор</err_text><account>000020</account><reg_id>9</reg_id><reg_date>2016-03-10T16:01:16</reg_date></params><sign>69b26850348535812f18ba3d045b0fe2</sign></response>

Повтор платежа:
Запрос:

params=<?xml version="1.0" encoding="UTF-8"?><request><params><act>2</act><agent_date>2016-03-10T13:01:19</agent_date><pay_id>1234567890123456789012345678901457596881</pay_id><pay_date>2016-03-10T13:01:19</pay_date><account>000020</account><pay_amount>1099</pay_amount></params><sign>E
684866E
5CE7A1168BAA264904CF22DE</sign></request>

Запрос (urlencode):

params=%3C%3Fxml+version%3D%221.0%22+encoding%3D%22UTF-8%22%3F%3E%3Crequest%3E%3Cparams%3E%3Cact%3E2%3C%2Fact%3E%3Cagent_date%3E2016-03-10T13%3A01%3A19%3C%2Fagent_date%3E%3Cpay_id%3E1234567890123456789012345678901457596881%3C%2Fpay_id%3E%3Cpay_date%3E2016-03-10T13%3A01%3A19%3C%2Fpay_date%3E%3Caccount%3E000020%3C%2Faccount%3E%3Cpay_amount%3E1099%3C%2Fpay_amount%3E%3C%2Fparams%3E%3Csign
%3EE684
866E5CE7A1168BAA264904CF22DE%3C%2Fsign%3E%3C%2Frequest%3E

Ответ сервера :

<?xml version="1.0" encoding="UTF-8"?><response><params><err_code>1</err_code><err_text>Платеж уже был проведен</err_text><account>000020</account><reg_id>9</reg_id><reg_date>2016-03-10T16:01:17</reg_date></params><sign>ef94fe1f86f1fcbea54c7feff1431eb8</sign></response>

<reg_date>2016-03-10T16:01:16</reg_date>
<reg_date>2016-03-10T16:01:17</reg_date>

С чем связано?
в биллинге время 16:01:16

Автор:  skn [ 10 мар 2016, 16:12 ]
Заголовок сообщения:  Re: Неправильно возвращает reg_date

проблема связано с округлением в mysql, в старых версиях mysql при сохранение даты, миллисекунды отбрасывались, в новых стали округляться до секунды

16 секунд это время с отброшенными миллисекундами
17 секунд это время из базы округленное


выложили обновление
для новых транзакциях будет правильно отрабатывать
для старых транзакций проблема будет повторяться.

Автор:  SEA-Jay [ 11 мар 2016, 11:46 ]
Заголовок сообщения:  Re: Неправильно возвращает reg_date

Все-так же. разница в секунду получается.
Пример:
Оригинал:

<?xml version="1.0" encoding="UTF-8"?><response><params><err_code>0</err_code><err_text>Платеж зачислен на договор</err_text><account>000020</account><reg_id>10</reg_id><reg_date>2016-03-11T12:59:07</reg_date></params><sign>c6b09de322916253a386c5e32060a102</sign></response>

Повтор:

<?xml version="1.0" encoding="UTF-8"?><response><params><err_code>1</err_code><err_text>Платеж уже был проведен</err_text><account>000020</account><reg_id>10</reg_id><reg_date>2016-03-11T12:59:08</reg_date></params><sign>243a7b549075e8e99746be2788c3368e</sign></response>

reg_date в первом случае:

2016-03-11T12:59:07

во втором:

2016-03-11T12:59:08

Автор:  skn [ 11 мар 2016, 13:18 ]
Заголовок сообщения:  Re: Неправильно возвращает reg_date

сервер точно обновили?

Автор:  SEA-Jay [ 11 мар 2016, 14:47 ]
Заголовок сообщения:  Re: Неправильно возвращает reg_date

Сервер: вер. 6.2.1032 / 10.03.2016 15:09:06
os: FreeBSD; java: OpenJDK Server VM, v.1.8.0_51
ВНИМАНИЕ: Виртуальная машина OpenJDK Server VM не рекомендуется

mps: вер. 6.2.191 / 11.03.2016 00:50:50

Автор:  skn [ 11 мар 2016, 15:37 ]
Заголовок сообщения:  Re: Неправильно возвращает reg_date

еще пофиксили...

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