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

Штрих ONLINE
http://forum.bitel.ru/viewtopic.php?f=28&t=13238
Страница 2 из 2

Автор:  dimOn [ 18 мар 2019, 12:35 ]
Заголовок сообщения:  Re: Штрих ONLINE

именно для мыла есть отдельный метод специально обученный:

ru.bitel.bgbilling.plugins.cashcheck.server.CashCheckUtils

/**
* Возвращает значение email по cid и pid
* Поддерживает и mail-параметр (если несколько мыл, то вернётся первое) и текстовый параметр.
*/
public static String getEmailParam(Connection con, int cid, int pid)
throws BGException
{

Автор:  dimOn [ 18 мар 2019, 12:35 ]
Заголовок сообщения:  Re: Штрих ONLINE

учтите что endCreate не вызывается для auto- и delay- платежей

Автор:  chedmi [ 18 мар 2019, 16:57 ]
Заголовок сообщения:  Re: Штрих ONLINE

dimOn писал(а):
учтите что endCreate не вызывается для auto- и delay- платежей


Получилось вытащить email вот так:
String mail = "" + contractService.contractParameterGet(cid, 33);
Работает в endCreate()
Куда его нужно вставить для автоплатежей ? В addPaymentAuto() ?

Автор:  chedmi [ 18 мар 2019, 16:57 ]
Заголовок сообщения:  Re: Штрих ONLINE

Phricker писал(а):
Код:
ServerContext serverContext = ServerContext.get();
        ContractService contractService = serverContext.getService(ContractService.class, 0);
        contractService.contractParameterGet(contractId, paramId);

Либо через тот же ContractParameterManager как в методе addPayment


Спасибо. Это помогло. Только еще пара импортов понадобилась :)

Автор:  chedmi [ 18 мар 2019, 17:09 ]
Заголовок сообщения:  Re: Штрих ONLINE

dimOn писал(а):
именно для мыла есть отдельный метод специально обученный:

ru.bitel.bgbilling.plugins.cashcheck.server.CashCheckUtils

/**
* Возвращает значение email по cid и pid
* Поддерживает и mail-параметр (если несколько мыл, то вернётся первое) и текстовый параметр.
*/
public static String getEmailParam(Connection con, int cid, int pid)
throws BGException
{


Ваш специальный метод как я понял делает тоже самое ?
Если параметр пустой он возвратит пустую строку ?
check.setCustomerEmail(mail) если mail пустой валит связь с кассой наглухо.
Нужна проверка перед вызовом...
В чем его профит ? И откуда брать con внутри endCreate() ?

Автор:  dimOn [ 18 мар 2019, 18:02 ]
Заголовок сообщения:  Re: Штрих ONLINE

если пустой то возвратит null
его профит описан в явадоке метода: он работает для параметров разных типов и обрабатывает случай когда в mail-параметре несколько е-мейлов, что вернёт в этом случае contractParameterGet я не помню , скорее всего ничего хорошего для отправки в сервер печати.

не знаю что значит валит связь наглухо, наверное ошибка какая-то происходит

Автор:  dimOn [ 18 мар 2019, 18:04 ]
Заголовок сообщения:  Re: Штрих ONLINE

да, для автоплатежей вызывается только addPaymentAuto, всё нужно делать там, т.к. разбивать на два метода бессмысленно - в одном чеке не может быть нескольких платежей биллинга для автоплатежей, потому в отличие от addPayment метод addPaymentAuto не может вызваться многократно для одного чека.

> И откуда брать con внутри endCreate() ?

сохранить предварительно в ините , в точности как и в addPayment

Автор:  Phricker [ 18 мар 2019, 18:04 ]
Заголовок сообщения:  Re: Штрих ONLINE

Код:
check.setCustomerEmail(Utils.maskNull(mail))

Автор:  dimOn [ 18 мар 2019, 20:08 ]
Заголовок сообщения:  Re: Штрих ONLINE

тока вот пустое оно не заполнит)

check.setCustomerEmail(mail != null ? mail : DEFAULT_EMAIL)

Автор:  chedmi [ 19 мар 2019, 10:52 ]
Заголовок сообщения:  Re: Штрих ONLINE

dimOn писал(а):
если пустой то возвратит null
его профит описан в явадоке метода: он работает для параметров разных типов и обрабатывает случай когда в mail-параметре несколько е-мейлов, что вернёт в этом случае contractParameterGet я не помню , скорее всего ничего хорошего для отправки в сервер печати.

не знаю что значит валит связь наглухо, наверное ошибка какая-то происходит


все верно, ошибка режима работы ФД или что-то в этом роде, дословно не записал...

Автор:  dimOn [ 19 мар 2019, 10:59 ]
Заголовок сообщения:  Re: Штрих ONLINE

ну в смысле ККТ просто ругается и не печатает конкретный чек однократно. должно быть так. если от этого всё ломается - это косяк какой-то и такого быть не должно, надо логи разбирать

Автор:  chedmi [ 19 мар 2019, 11:16 ]
Заголовок сообщения:  Re: Штрих ONLINE

dimOn писал(а):
ну в смысле ККТ просто ругается и не печатает конкретный чек однократно. должно быть так. если от этого всё ломается - это косяк какой-то и такого быть не должно, надо логи разбирать


ККТ к счастью не ломается, с ней после этого можно дальше работать из 1С например, ломается кэшчексервер,
до перезапуска он не видит кассу.
если бы знал что это будет интересно, то сохранил бы логи, если опять вывалится (надеюсь что никогда :) ) - отпишусь

Автор:  chedmi [ 19 мар 2019, 11:20 ]
Заголовок сообщения:  Re: Штрих ONLINE

dimOn писал(а):
тока вот пустое оно не заполнит)

check.setCustomerEmail(mail != null ? mail : DEFAULT_EMAIL)


сделал немного по другому - если mail значение не удовлетворяет условию, то check.setCustomerEmail просто не вызывается.
contractParameterGet может возвратить и "" (длина 0) и null (длина 4), но это совсем не проблема.
несколько адресов тоже не проблема.
сейчас работает нормально, будем наблюдать что будет дальше.

Автор:  dimOn [ 19 мар 2019, 11:48 ]
Заголовок сообщения:  Re: Штрих ONLINE

если у вас задан электронный чек (без печати на бумагу как вариант) и не задано setCustomerEmail - будет ошибка. но тут речь про атол только
несколько адресов тоже не сработают совершенно точно на ККТ, не очень понятно как так не проблема, вам в любом случае надо руками разбирать тогда этот вариант

> до перезапуска он не видит кассу

это очень странная ошибка должна быть, было бы неплохо логи посмотреть.

Автор:  marimo [ 19 мар 2019, 12:08 ]
Заголовок сообщения:  Re: Штрих ONLINE

"если у вас задан электронный чек (без печати на бумагу как вариант) и не задано setCustomerEmail - будет ошибка. но тут речь про атол только"

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

Автор:  chedmi [ 19 мар 2019, 16:40 ]
Заголовок сообщения:  Re: Штрих ONLINE

dimOn писал(а):
несколько адресов тоже не сработают совершенно точно на ККТ, не очень понятно как так не проблема, вам в любом случае надо руками разбирать тогда этот вариант

это очень странная ошибка должна быть, было бы неплохо логи посмотреть.


я и разбираю их руками а не проблема потому что разбирать не сложно)
если опять ошибка вывалится - обязательно скину вам лог...

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