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

[6.0] Изменение логики актиона (CRM)
http://forum.bitel.ru/viewtopic.php?f=19&t=9028
Страница 1 из 1

Автор:  Phricker [ 07 мар 2014, 12:28 ]
Заголовок сообщения:  [6.0] Изменение логики актиона

По примеру из вики набросал код запрещающий выставлять логинам модуля DialUp пароли равные алиасу
Код:
package ru.ellcom.bgbilling.scripts.dialup;

import java.sql.SQLException;
import bitel.billing.server.dialup.action.ActionUpdateLoginInfo;
import ru.bitel.bgbilling.common.BGException;
import ru.bitel.bgbilling.common.BGMessageException;

public class UpdateLoginInfo
   extends ActionUpdateLoginInfo
{
   @Override
    public void doAction()
       throws SQLException, BGException
   {
      String pswd = getParameter("login_pswd", "");
      String alias = getParameter("alias", "");
      //String login =
      if(pswd.equals(alias))
      {
         throw new BGMessageException( "Пароль не может быть равен алиасу логина" );
      }
      if(pswd.contains(alias))
      {
         throw new BGMessageException( "Пароль не может содержать алиас логина" );
      }
      
      // иначе вызываем родительский метод
      super.doAction();
   }
}


Строчка из дебага клиента
Код:
http://10.0.6.152:8080/bgbilling/executer?module=dialup&alias=test_router&object_id=0&login_pswd=753159&access=0&BGBillingSecret=cBrzUCExhbzXLnWY95pFdYSm&cid=2&lid=0&session=1&action=UpdateLoginInfo&date2=&mid=4&comment=&date1=07.03.2014&


Вопрос в следующем:
1) Дебаг клиента не показывает логин. Только ID логина.
Я бы хотел еще сделать проверку на то, чтобы пароль не содержал логин.
Как получить логин? В дебаге видно, что логин еще не был создан, так что получить его через LoginManager не представляется возможным.

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

Автор:  stark [ 12 мар 2014, 13:44 ]
Заголовок сообщения:  Re: [6.0] Изменение логики актиона

Phricker писал(а):
Вопрос в следующем:
1) Дебаг клиента не показывает логин. Только ID логина.
Я бы хотел еще сделать проверку на то, чтобы пароль не содержал логин.
Как получить логин? В дебаге видно, что логин еще не был создан, так что получить его через LoginManager не представляется возможным.


А почему нельзя ваши проверки сделать после Action-а? Тогда если произойдет исключение, то по идее произойдет откат транзакции.

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