forum.bitel.ru http://forum.bitel.ru/ |
|
Открытие договора в клиенте извне - ? http://forum.bitel.ru/viewtopic.php?f=22&t=6447 |
Страница 1 из 1 |
Автор: | Cromeshnic [ 14 фев 2012, 12:25 ] |
Заголовок сообщения: | Открытие договора в клиенте извне - ? |
Цитата: ДОБАВЛЕНО Возможность инициации извне открытия в клиентском приложении пользователя конкретного договора. Круто, как этим пользоваться? |
Автор: | barguzin2 [ 06 мар 2012, 16:21 ] |
Заголовок сообщения: | Re: Открытие договора в клиенте извне - ? |
+1. тоже интересно! |
Автор: | Phricker [ 06 мар 2012, 16:22 ] |
Заголовок сообщения: | Re: Открытие договора в клиенте извне - ? |
разработчики сами пока еще не знают. плюшку сделали сейчас изучают как оно работает |
Автор: | aiwbend [ 30 май 2016, 13:49 ] |
Заголовок сообщения: | Re: Открытие договора в клиенте извне - ? |
up. |
Автор: | vkulakov [ 30 май 2016, 13:56 ] |
Заголовок сообщения: | Re: Открытие договора в клиенте извне - ? |
Теме уже четыре года, а вы просто так апнули без комментариев. В чём вопрос то? |
Автор: | vkulakov [ 30 май 2016, 14:00 ] |
Заголовок сообщения: | Re: Открытие договора в клиенте извне - ? |
На всякий случай отвечу: если вызвать такой УРЛ http://ч.ч.ч.ч:8080/bgbilling/executer?module=admin&action=Command&command=put&value=openContract:33534&user=user&pswd=password, то в клиенте биллинга откроется указанный договор. Только логин/пароль нужно передавать пользователя, у которого должен быть открыть договор, что, на самом деле, не очень удобно. |
Автор: | vkulakov [ 02 июн 2016, 14:56 ] |
Заголовок сообщения: | Re: Открытие договора в клиенте извне - ? |
Меня начали игнорировать даже тогда, когда я отвечаю на чьё-то сообщение... |
Автор: | barguzin2 [ 02 июн 2016, 15:20 ] |
Заголовок сообщения: | Re: Открытие договора в клиенте извне - ? |
это для CRM было сделано - открыть в биллинге. |
Автор: | Cromeshnic [ 13 мар 2019, 12:17 ] |
Заголовок сообщения: | Re: Открытие договора в клиенте извне - ? |
Захотел воспользоваться фичей в BG 7.0, чтобы открыть договор из внешней системы. Но требуется логин/пароль пользователя от BG. Хранить их во внешней системе непрактично, да и невозможно сейчас выдернуть из базы BG, только заставлять пользователей вбивать их во внешней системе. Решил написать свой вебсервис для внешней системы, чтобы вместо user/password можно было передавать только user или только email пользователя. Столкнулся с проблемой, что я не смогу из вебсервиса положить команду на открытие договора в Map команд, т.к. они прописаны как private static внутри экшена: Код: public class ActionCommand extends ActionBase { private static Map<Integer, String> commandMap = new ConcurrentHashMap(); public void doAction() throws Exception { String command = getParameter("command"); if ("put".equals(command)) { String value = getParameter("value"); if (Utils.notBlankString(command)) { commandMap.put(this.userID, value); } } else if ("get".equals(command)) { String value = (String)commandMap.remove(this.userID); if (value != null) { this.rootNode.setAttribute("value", value); } } } } Вопросы к разработчикам: 1. Когда вы планируете вытащить этот экшен в вебсервисы? 2. Как сейчас и в будущем нам можно получить доступ к карте команд в своих обработчиках? |
Автор: | Cromeshnic [ 13 мар 2019, 14:10 ] |
Заголовок сообщения: | Re: Открытие договора в клиенте извне - ? |
Сделал через порнографию (dynaction): Код: public class ActionCommand extends bitel.billing.server.admin.action.ActionCommand { @Override public void doAction() throws Exception { String command = getParameter("command"); String email = getParameter("email",null); String login = getParameter("login",null); if((email!=null || login!=null) && "put".equals(command)){ UserManager um = new UserManager(this.con); if(login!=null) { User user = um.getUserByLogin(login); if(user==null){ throw new BGException("User "+login+" not found"); }else{ this.userID=user.getId(); this.userId=user.getId(); } }else{ Optional<User> user = um.getUsersMap().values().stream().filter(u -> { return u.getId()>0 && email.toLowerCase().equals(Utils.maskNull(u.getEmail()).toLowerCase()) && u.getStatus()==0; }).findAny(); if(user.isPresent()){ this.userID=user.get().getId(); this.userId=user.get().getId(); }else{ throw new BGException("Active user with email "+email+" not found"); } } } super.doAction(); } } Когда разработчики внезапно переведут на вебсервис, я видимо буду ругаться как тут: https://forum.bitel.ru/viewtopic.php?f=22&t=13250 |
Автор: | Phricker [ 09 авг 2019, 13:21 ] |
Заголовок сообщения: | Re: Открытие договора в клиенте извне - ? |
up. Есть комментарии от уважаемых разработчиков по поводу двух последних сообщений от уважаемого Кромешника? Тоже хочу прикрутить данный функционал к вебсервису. И думаю городить костыли или писать в HD |
Автор: | skn [ 09 авг 2019, 16:04 ] |
Заголовок сообщения: | Re: Открытие договора в клиенте извне - ? |
попробуйте написать в ХД |
Автор: | skn [ 09 авг 2019, 20:20 ] |
Заголовок сообщения: | Re: Открытие договора в клиенте извне - ? |
7.2+ вынесли map в CommandMap.getCommandMap().put( userId, value ); |
Автор: | Phricker [ 10 авг 2019, 00:56 ] |
Заголовок сообщения: | Re: Открытие договора в клиенте извне - ? |
Набросал тестовый веб-сервис чтобы проверить, обновил сервер, а обновлений то нееет P.S. У вас там КТУ внедрили? Премируют по результатам сделанных обращений в HD? |
Автор: | Phricker [ 13 авг 2019, 01:18 ] |
Заголовок сообщения: | Re: Открытие договора в клиенте извне - ? |
skn писал(а): 7.2+ вынесли map в CommandMap.getCommandMap().put( userId, value ); Работает, благодарю. |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |