예제 #1
0
 public Usuaria MapDtoToUsuaria(UsuariaDto dto)
 {
     Usuaria usuaria = new Usuaria();
     if (dto.Id > 0)
     {
         usuaria = this.sessionFactory.GetEntity<Usuaria>(dto.Id);
     }
   
     usuaria.Apellido = dto.Apellido;
     usuaria.ConocePorConocido = dto.ConocePorConocido;
     usuaria.ConocePorInsititucionSalud = dto.ConocePorInsititucionSalud;
     usuaria.ConocePorInsititucionSaludObs = dto.ConocePorInsititucionSaludObs;
     usuaria.ConocePorMedios = dto.ConocePorMedios;
     usuaria.ConocePorOrganizacion = dto.ConocePorOrganizacion;
     usuaria.ConocePorOtro = dto.ConocePorOtro;
     usuaria.ConocePorReferente = dto.ConocePorReferente;
     usuaria.ConocePorUS = dto.ConocePorUS;
     usuaria.ConocePorUsuarioConsejeria = dto.ConocePorUsuarioConsejeria;
     usuaria.Direccion = dto.Direccion;
     usuaria.Edad = dto.Edad;
     usuaria.FechaNacimiento = dto.FechaNacimiento;
     usuaria.NacionalidadId = dto.NacionalidadId;
     usuaria.NivelInstruccion = dto.NivelInstruccion;
     usuaria.NivelInstruccionEstado = dto.NivelInstruccionEstado;
     usuaria.Nombre = dto.Nombre;
     usuaria.ParejaConViviente = dto.ParejaConViviente;
     usuaria.ParejaNoConViviente = dto.ParejaNoConViviente;
     usuaria.SinPareja = dto.SinPareja;
     usuaria.Telefono = dto.Telefono;
     usuaria.UsuarioCentroSalud = dto.UsuarioCentroSalud;
     return usuaria;
 }
예제 #2
0
        public IActionResult Authenticar([FromBody] UsuariaDto usuariaDto)
        {
            var user = _usuariaService.Autenticar(usuariaDto.Email, usuariaDto.Senha);

            if (user == null)
            {
                return(BadRequest(new { message = "Nome de usuário ou senha incorreta" }));
            }

            var tokenHandler    = new JwtSecurityTokenHandler();
            var key             = Encoding.ASCII.GetBytes(_appSettings.Secret);
            var tokenDescriptor = new SecurityTokenDescriptor
            {
                Subject = new ClaimsIdentity(new Claim[]
                {
                    new Claim(ClaimTypes.Name, user.Id.ToString())
                }),
                Expires            = DateTime.UtcNow.AddDays(7),
                SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(key), SecurityAlgorithms.HmacSha256Signature)
            };
            var token       = tokenHandler.CreateToken(tokenDescriptor);
            var tokenString = tokenHandler.WriteToken(token);

            return(Ok(new
            {
                Id = user.Id,
                Nome = user.Nome,
                Email = user.Email,
                Token = tokenString
            }));
        }
예제 #3
0
        public void Post([FromBody] UsuariaDto value)
        {
            //UsuariaDto ussuaria = new UsuariaDto();
            //ussuaria.Apellido = "cardenas";
            //ussuaria.Direccion = "la pasppp";
            //ussuaria.Edad = 22;
            //ussuaria.FechaNacimiento = System.DateTime.Now;
            //ussuaria.Nombre = "pedra";
            //ussuaria.Telefono = "333333";

            //this.sessionFactory.SaveOrUpdateEntity(ussuaria);
        }
예제 #4
0
        public void Post([FromBody] UsuariaDto value)
        {
            UsuariaDto ussuaria = new UsuariaDto();

            ussuaria.Apellido        = "cardenas";
            ussuaria.Direccion       = "la pasppp";
            ussuaria.Edad            = 22;
            ussuaria.FechaNacimiento = System.DateTime.Now;
            ussuaria.Nombre          = "pedra";
            ussuaria.Telefono        = "333333";

            this.session.Save(ussuaria);
        }
예제 #5
0
        /// <summary>
        /// Consulta un usuario de Discogs con su colección completa de LPs.
        /// </summary>
        /// <param name="username">Nombre de usuario</param>
        /// <returns></returns>
        public UsuariaDto GetUsuaria(string username)
        {
            UsuariaDto usuaria = new UsuariaDto();

            try
            {
                JObject userJson = null;
                try
                {
                    userJson = JObject.Parse(GetUserJson(username));
                }
                catch (Exception)
                {
                    //
                    throw;
                }

                string mensaje = (string)userJson["message"];

                if (mensaje != null && mensaje.Equals("User does not exist or may have been deleted."))
                {
                    throw new Exception($"El usuario {username} no existe en Discogs");
                }

                userJson = JObject.Parse(GetUserJson(username));

                usuaria.Username  = (string)userJson["username"];
                usuaria.Nombre    = (string)userJson["name"];
                usuaria.Localidad = (string)userJson["location"];
                usuaria.NumeroLps = 0;
                try
                {
                    usuaria.NumeroLps = int.Parse((string)userJson["num_collection"]);
                }
                catch (Exception) {}
                usuaria.AvatarUrl = (string)userJson["avatar_url"];
            }
            catch (Exception)
            {
                throw;
            }

            return(usuaria);
        }
예제 #6
0
        public async Task <ActionResult <UsuariaDto> > PostLogin(UsuariaDto usuariaBody)
        {
            UsuariaDto usuariaDto = new UsuariaDto();

            try
            {
                usuariaDto = Discogs.GetUsuaria(usuariaBody.Username);

                // Consulta si la usuaria existe en base de datos.
                Usuaria usuaria = UsuariaExists(usuariaBody.Username);

                // Si la usuaria existe y no está habilitada, aborta la operación
                if (usuaria != null && !usuaria.EsHabilitada)
                {
                    // TODO Informar que no está habilitada

                    return(BadRequest("La usuaria con la que intenta acceder no tiene el acceso permitido"));
                }

                try
                {
                    // Si la usuaria no existe, la crea
                    if (usuaria == null)
                    {
                        usuaria = new Usuaria
                        {
                            DiscogsUsername = usuariaBody.Username,
                            EsHabilitada    = true
                        };

                        _context.Usuaria.Add(usuaria);
                        await _context.SaveChangesAsync();
                    }
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (UsuariaExists(usuariaBody.Username) == null)
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }

                try
                {
                    // Acto seguido, haya creado una nueva usuaria o haya entrado con una existente, vincula un nuevo acceso.
                    Acceso acceso = new Acceso
                    {
                        Usuaria = usuaria,
                        Fecha   = DateTime.Now
                    };

                    _context.Acceso.Add(acceso);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    throw;
                }
            }
            catch (Exception e)
            {
                throw e;
            }


            return(usuariaDto);
        }
예제 #7
0
        public ConsejeriaDatosDto GetCompleta(int id)
        {
            ConsejeriaDatosDto       consejeriaDatosDto       = new ConsejeriaDatosDto();
            ConsejeriaDto            consejeriaDto            = new ConsejeriaDto();
            GestaActualDto           gestaActualDto           = new GestaActualDto();
            UsuariaDto               usuariaDto               = new UsuariaDto();
            AntecedenteDto           antecedenteDto           = new AntecedenteDto();
            EstudioComplementarioDto estudioComplementarioDto = new EstudioComplementarioDto();
            EntrevistaPostAbortoDto  entrevistaPostAbortoDto  = new EntrevistaPostAbortoDto();

            #region comentado
            // //http://www.andrewwhitaker.com/blog/2014/06/19/queryover-series-part-4-transforming/
            // //TODO: ver aca de mejorar esto, o meter las referencias en consejeria a los demas o ver de que forma.

            // //var result = sessionFactory.CreateSQLQuery(@"
            // //    select ConsejeriaDto.*, gestaActualDto.*
            // //    from Consejerias ConsejeriaDto
            // //    Left join GestasActuales gestaActualDto on ConsejeriaDto.Id = gestaActualDto.Consejeria_id
            // //    Left join Antecedentes antecedente on ConsejeriaDto.Id = antecedente.Consejeria_id
            // //    Left join EstudiosComplementarios estudioComplementario on ConsejeriaDto.Id = estudioComplementario.Consejeria_id
            // //    Left join EntrevistasPostAbortos entrevistaPostAborto on ConsejeriaDto.Id = entrevistaPostAborto.Consejeria_id")
            // //    //.SetResultTransformer(NHibernate.Transform.Transformers)
            // //    .UniqueResult();



            // var consejeria = sessionFactory.GetEntity<ConsejeriaEntidad>(id);
            // //var consejeria = criteria.UniqueResult<ConsejeriaEntidad>();
            // this.consejeriaDtoMapper.MapConsejeriaToDto(consejeriaDto, consejeria);
            // consejeriaDatosDto.ConsejeriaDto = consejeriaDto;

            // //List<ICriterion> expressions = new List<ICriterion>();
            // //expressions.Add(Restrictions.Eq("Consejeria.Id", consejeria.Id));

            // //var result = sessionFactory.GetResultCriteria<GestaActual>(expressions);

            // //var criteria = sessionFactory.CreateCriteria<GestaActual>();
            // //criteria.Add(Restrictions.Eq("Consejeria.Id", consejeria.Id));
            // //var gestaActual = criteria.UniqueResult<GestaActual>();

            // if (consejeria.GestaActual != null)
            // {
            //     this.consejeriaDtoMapper.MapGestaActualToDto(gestaActualDto, consejeria.GestaActual);
            // }
            // consejeriaDatosDto.GestaActualDto = gestaActualDto;

            // if (consejeria.Usuaria != null)
            // {
            //     this.consejeriaDtoMapper.MapUsuariaToDto(usuariaDto, consejeria.Usuaria);
            //     usuariaDto.ConsejeriaId = consejeria.Id;
            // }
            // consejeriaDatosDto.UsuariaDto = usuariaDto;

            // //expressions.Clear();

            // //criteria = sessionFactory.CreateCriteria<Antecedente>();
            // //criteria.Add(Restrictions.Eq("Consejeria.Id", consejeria.Id));

            // //expressions.Add(Restrictions.Eq("Consejeria.Id", consejeria.Id));
            // //var result2 = sessionFactory.GetResultCriteria<Antecedente>(expressions);

            ////var antecedente = result2.FirstOrDefault();//criteria.UniqueResult<Antecedente>();

            // if (consejeria.Antecedente != null)
            // {
            //     this.consejeriaDtoMapper.MapAntecedenteToDto(antecedenteDto, consejeria.Antecedente);
            // }
            // consejeriaDatosDto.AntecedenteDto = antecedenteDto;


            // //var result3 = sessionFactory.GetResultCriteria<EstudioComplementario>(expressions);
            // //criteria.Add(Restrictions.Eq("Consejeria.Id", consejeria.Id));
            // //var estudioComplementario = result3.FirstOrDefault(); //criteria.UniqueResult<EstudioComplementario>();
            // if (consejeria.EstudioComplementario != null)
            // {
            //     this.consejeriaDtoMapper.MapEstudioComplementarioDto(estudioComplementarioDto, consejeria.EstudioComplementario);
            // }
            // consejeriaDatosDto.EstudioComplementarioDto = estudioComplementarioDto;

            // //criteria = sessionFactory.CreateCriteria<EntrevistaPostAborto>();
            // //criteria.Add(Restrictions.Eq("Consejeria.Id", consejeria.Id));
            // //var result4 = sessionFactory.GetResultCriteria<EntrevistaPostAborto>(expressions);
            // //var entrevistaPostAborto = result4.FirstOrDefault();//criteria.UniqueResult<EntrevistaPostAborto>();

            // if (consejeria.EntrevistaPostAborto != null)
            // {
            //     this.consejeriaDtoMapper.MapEntrevistaPostAbortoDto(entrevistaPostAbortoDto, consejeria.EntrevistaPostAborto);
            // }
            // consejeriaDatosDto.EntrevistaPostAbortoDto = entrevistaPostAbortoDto;

            // return consejeriaDatosDto;
            #endregion
            var criteria = sessionFactory.CreateCriteria <ConsejeriaEntidad>();
            criteria.Add(Restrictions.Eq("Id", id));
            var consejeria = criteria.UniqueResult <ConsejeriaEntidad>();
            this.consejeriaDtoMapper.MapConsejeriaToDto(consejeriaDto, consejeria);

            consejeriaDatosDto.ConsejeriaDto = consejeriaDto;

            criteria = sessionFactory.CreateCriteria <GestaActual>();
            criteria.Add(Restrictions.Eq("Consejeria.Id", consejeria.Id));
            var gestaActual = criteria.UniqueResult <GestaActual>();

            if (gestaActual != null)
            {
                this.consejeriaDtoMapper.MapGestaActualToDto(gestaActualDto, gestaActual);
            }
            consejeriaDatosDto.GestaActualDto = gestaActualDto;

            if (consejeria.Usuaria != null)
            {
                this.consejeriaDtoMapper.MapUsuariaToDto(usuariaDto, consejeria.Usuaria);
                usuariaDto.ConsejeriaId = consejeria.Id;
            }
            consejeriaDatosDto.UsuariaDto = usuariaDto;

            criteria = sessionFactory.CreateCriteria <Antecedente>();
            criteria.Add(Restrictions.Eq("Consejeria.Id", consejeria.Id));
            var antecedente = criteria.UniqueResult <Antecedente>();

            if (antecedente != null)
            {
                this.consejeriaDtoMapper.MapAntecedenteToDto(antecedenteDto, antecedente);
            }
            consejeriaDatosDto.AntecedenteDto = antecedenteDto;


            criteria = sessionFactory.CreateCriteria <EstudioComplementario>();
            criteria.Add(Restrictions.Eq("Consejeria.Id", consejeria.Id));
            var estudioComplementario = criteria.UniqueResult <EstudioComplementario>();
            if (estudioComplementario != null)
            {
                this.consejeriaDtoMapper.MapEstudioComplementarioDto(estudioComplementarioDto, estudioComplementario);
            }
            consejeriaDatosDto.EstudioComplementarioDto = estudioComplementarioDto;

            criteria = sessionFactory.CreateCriteria <EntrevistaPostAborto>();
            criteria.Add(Restrictions.Eq("Consejeria.Id", consejeria.Id));
            var entrevistaPostAborto = criteria.UniqueResult <EntrevistaPostAborto>();

            if (entrevistaPostAborto != null)
            {
                this.consejeriaDtoMapper.MapEntrevistaPostAbortoDto(entrevistaPostAbortoDto, entrevistaPostAborto);
            }
            consejeriaDatosDto.EntrevistaPostAbortoDto = entrevistaPostAbortoDto;

            return(consejeriaDatosDto);
        }
예제 #8
0
 public ActionResult <UsuariaDto> AtualizarUsuaria([FromRoute] int usuariaId, [FromBody] UsuariaDto usuaria)
 {
     return(_usuariaService.AtualizarUsuaria(usuariaId, usuaria));
 }
예제 #9
0
 public ActionResult <UsuariaDto> CriarUsuaria([FromBody] UsuariaDto usuaria)
 {
     return(_usuariaService.CriarUsuaria(usuaria));
 }
예제 #10
0
 public void Put(int id, [FromBody] UsuariaDto value)
 {
 }