public async Task <RegistrarUsuarioRespuestaDto> RegistrarUsuario(RegistrarUsuarioPeticionDto peticion) { var operacion = await _usuarioServicio.RegistrarUsuario(peticion); return(operacion.Resultado); }
public async Task <OperacionDto <RegistrarUsuarioRespuestaDto> > RegistrarUsuario(RegistrarUsuarioPeticionDto peticion) { var validaModelo = ValidacionUtilitario.ValidarModelo <RegistrarUsuarioPeticionDto>(peticion); if (!validaModelo.Completado) { return(new OperacionDto <RegistrarUsuarioRespuestaDto>(CodigosOperacionDto.CamposRequeridos, validaModelo.Mensajes)); } //var password = RandomChars.RandomString(10); var password = peticion.Password; var passwordSalt = RijndaelUtilitario.EncryptRijndaelToBase64(password); var username = "******" + DateTime.UtcNow.Year.ToString() + RandomChars.RandomFecha(5, DateTime.UtcNow.Millisecond.ToString()); var entidad = await _usuarioRepositorio.BuscarPorUserName(username); while (entidad != null) { username = "******" + DateTime.UtcNow.Year.ToString() + RandomChars.RandomFecha(5, DateTime.UtcNow.Millisecond.ToString()); if (!entidad.Username.Equals(username)) { break; } } var usuario = new Usuario() { Username = username, Password = Md5Utilitario.Cifrar(password, passwordSalt), PasswordSalt = passwordSalt }; var valorUsuario = await _usuarioRepositorio.Registro(usuario); if (valorUsuario <= 0) { return(new OperacionDto <RegistrarUsuarioRespuestaDto>(new RegistrarUsuarioRespuestaDto() { Mensaje = "Error al crear Usuario", Suceso = false })); } var persona = new Persona() { Nombre = peticion.Nombre, APaterno = peticion.APaterno, AMaterno = peticion.AMaterno, Telefono = peticion.Telefono, Correo = peticion.Correo, FechaNacimiento = peticion.FechaNacimiento, IdUsuario = usuario.IdUsuario, Direccion = peticion.Direccion }; var valorPersona = await _personaRepositorio.Registro(persona); if (valorPersona <= 0) { return(new OperacionDto <RegistrarUsuarioRespuestaDto>(new RegistrarUsuarioRespuestaDto() { Mensaje = "Error al crear Usuario", Suceso = false })); } return(new OperacionDto <RegistrarUsuarioRespuestaDto>(new RegistrarUsuarioRespuestaDto() { Mensaje = "Usuario creado correctamente", Suceso = true })); }