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 }
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; } }