Beispiel #1
0
        public void Handle(CreateActivationRequestCommand command)
        {
            var  employee = _personDao.GetPerson(command.PersonToId);
            var  company  = _personDao.GetCompanyByEmployeePersonId((int)employee.PersonFatherId);
            long fileid   = 0;

            foreach (var pf in employee.PersonFile)
            {
                fileid = pf.FileId;
            }

            _clientNotification             = new HttpClient();
            _clientNotification.BaseAddress = new Uri(CustomConfiguration.WebApiNotification);
            //todo: substituir as mensagens em hard code por arquivos de resources para permitir traducao para outros idiomas
            string title   = String.Format("Ola {0}, boas vindas ao {1}", employee.Name, employee.CustomClubName);
            var    message = new NotificationDTO(1,
                                                 employee.PersonId,
                                                 employee.Name,
                                                 (int)GeneralEnumerators.EnumLanguage.Portuguese,
                                                 command.MessageCodeType.ToString(),
                                                 title,
                                                 employee.CustomClubName,
                                                 employee.CustomHeeelpPersonDomain,
                                                 employee.CustomClubLogo);

            message.AddParameter("LinkDeAtivacao", employee.CustomHeeelpPersonDomain + "/login/firstaccess/" + command.UserIntegrationCode.ToString());

            var resultNotification = _clientNotification.PostAsJsonAsync("api/Communication/SendMessage", message).Result;

            if (!resultNotification.IsSuccessStatusCode)
            {
                LogManager.Info(string.Format("Erro ao enviar msg de ativação para a pessoa  personId: {0}", command.PersonToId));
            }
        }
Beispiel #2
0
        private void UserCreatedSucess(Domain.User user, GeneralEnumerators.EnumEmailAcvtiveType messageCodeType)
        {
            //disparar o evento de usuario criado com sucesso para sincronizacao dos dados de usuario nos demais modulos
            user.AddEvent(new UserCreatedSuccessEvent
            {
                //SourceId = user.Id,
                UserId          = user.UserId,
                IntegrationCode = user.IntegrationCode,
                PersonId        = user.PersonId,
                IsDefaultUser   = user.IsDefaultUser,
                UserStatusId    = user.UserStatusId,
                LanguageId      = user.LanguageId,
                Active          = user.Active,
                Email           = user.Email
            });


            var person   = user.Person;
            var employee = _personDao.GetCompany(user.PersonId);

            if (employee.PersonTypeId == (byte)GeneralEnumerators.EnumPersonType.Natural_Person)
            {
                var company = _personDao.GetCompany((int)employee.PersonFatherId);

                //disparar o comando para criacao do email de ativacao
                CreateActivationRequestCommand command = new CreateActivationRequestCommand();
                command.SourceId            = Guid.NewGuid();
                command.PersonToId          = user.PersonId;
                command.MessageCodeType     = messageCodeType;
                command.UserIntegrationCode = user.IntegrationCode;
                this.bus.Send(command);
            }
        }