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

Неверно определяется текущий пользователь.
http://forum.bitel.ru/viewtopic.php?f=22&t=2717
Страница 1 из 1

Автор:  lda [ 11 авг 2009, 11:31 ]
Заголовок сообщения:  Неверно определяется текущий пользователь.

Перешел на биллинг вер. 4.6.
Переписал скрипты.

При создании договора вызывается функция SetStatusForNewContract(cid,con).

Код:
//Определение ID пользователя для синхронных событий
public Integer getCurrentUserId()
{
   Subject subject = Subject.getSubject( AccessController.getContext() );
   if( subject != null )
   {
      for( UserPrincipal userPrincipal : subject.getPrincipals( UserPrincipal.class ) )
      {
         return userPrincipal.getUser().getID();
      }
   }

   return 0;
}

//Приостановка договора при создании
public SetStatusForNewContract(cid,con)
{
   contract = new ContractManager(con).getContractByID(cid);
   contract_status_manager = new ContractStatusManager(con);
   contract_status = new ContractStatus();
   contract_status.setContractId(cid);
   contract_status.setDate1( TimeUtils.convertSqlDateToCalendar(contract.getDateFrom()));
   contract_status.setStatus(KernelConst.CONTRACT_STATUS_SUSPENDED);
   contract_status.setComment( "Автоматически при создании" );
   contract_status_manager.changeStatus(contract_status,getCurrentUserId());
};



Вчера было заключено 15 договоров, в 3 из них функция getCurrentUserId() вернула не того пользователя.
Т.е. договор заключал один пользователь, а в "Истории изменения статусов" стоит другой.

Прошу помочь.

сервер вер. 4.6 сборка 524

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

Выложили обновление ядра - должно помочь.

Автор:  lda [ 11 авг 2009, 13:11 ]
Заголовок сообщения: 

Ок. Спасибо. Попробую.

Автор:  vdd [ 12 авг 2009, 18:30 ]
Заголовок сообщения: 

А при обработке смены статуса процитированный getCurrentUserId() сработает?
Что бы в созданую задачу CRM проставить id, того, кто менял статус?

Автор:  stark [ 12 авг 2009, 20:08 ]
Заголовок сообщения: 

vdd писал(а):
А при обработке смены статуса процитированный getCurrentUserId() сработает?
Что бы в созданую задачу CRM проставить id, того, кто менял статус?


должен

Автор:  vdd [ 19 авг 2009, 13:38 ]
Заголовок сообщения: 

stark писал(а):
vdd писал(а):
А при обработке смены статуса процитированный getCurrentUserId() сработает?
Что бы в созданую задачу CRM проставить id, того, кто менял статус?


должен


Внесли изменения в скрипт обработки события "Статус договора изменен" - статус меняли вручную, а getCurrentUserId вернула 0.
Единственное - обновление ядра от 11 августа - не делали.

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