示例#1
0
        public void Handle(AddSelfRegistrationCommand command)
        {
            var repository        = this._contextFactorySelfRegistration();
            SelfRegistration self = new SelfRegistration();

            self.Email               = command.Email;
            self.Name                = command.Name;
            self.EnrollmentIP        = command.EnrollmentIP;
            self.InviteCode          = command.InviteCode;
            self.PersonIntegrationId = command.PersonIntegrationId;
            self.CreationDateUTC     = DateTime.UtcNow;

            repository.Save(self);
            //todo: criar um meio pra enviar email pra pessoas que não fazem parte do heeelp
            //todo: enviar email para pessoa que ainda não faz parte do heeelp
        }
示例#2
0
        public void Handle(AddUserInvitedCommand command)
        {
            try
            {
                if (command.InviteCode != null)
                {
                    var person = _personDao.GetPersonInviteCode(command.InviteCode);

                    if (person != null)
                    {
                        if (person.InviteAvailable < 1)
                        {
                            //sem convites disponiveis
                            var c = new AddSelfRegistrationCommand();
                            c.Name         = command.Name;
                            c.Email        = command.Email;
                            c.EnrollmentIP = command.EnrollmentIP;
                            c.InviteCode   = command.InviteCode;
                            this.bus.Send(c);
                        }
                        else
                        {
                            //convite disponivel
                            //cadastra a pessoa
                            var c = new AddPersonEmployeeCommand();
                            c.IntegrationCode = Guid.NewGuid();
                            c.Name            = command.Name;
                            //c.PhoneNumber = employee.SmartPhoneNumber;
                            c.CreatedBy                 = 1;
                            c.Email                     = command.Email;
                            c.SecundaryEmail            = command.Email;
                            c.EnrollmentIP              = command.EnrollmentIP;
                            c.PersonIntegrationFatherId = person.IntegrationCode;
                            c.UserProfileId             = GeneralEnumerators.EnumUserProfile.SemAcesso;
                            c.PersonOriginType          = GeneralEnumerators.EnumPersonOriginType.PainelAdministrativoGestor;
                            this.bus.Send(c);

                            _personDao.UpdateInviteAvailable(person.PersonId);
                        }
                    }
                    else
                    {
                        //codigo nao encontrado
                        var c = new AddSelfRegistrationCommand();
                        c.Name         = command.Name;
                        c.Email        = command.Email;
                        c.EnrollmentIP = command.EnrollmentIP;
                        this.bus.Send(c);
                    }
                }
                else
                {
                    //codigo nao encontrado
                    var c = new AddSelfRegistrationCommand();
                    c.Name         = command.Name;
                    c.Email        = command.Email;
                    c.EnrollmentIP = command.EnrollmentIP;
                    this.bus.Send(c);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }