示例#1
0
        public async Task <RegistrarUsuarioRespuestaDto> RegistrarUsuario(RegistrarUsuarioPeticionDto peticion)
        {
            var operacion = await _usuarioServicio.RegistrarUsuario(peticion);

            return(operacion.Resultado);
        }
示例#2
0
        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
            }));
        }