コード例 #1
0
        public Object Post([FromBody] ProcessMsg.Model.UsuarioBo usuario)
        {
            try
            {
                if (HttpContext.Current.Session["token"] == null)
                {
                    return(Redirect(Request.RequestUri.GetLeftPart(UriPartial.Authority)));
                }
                HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.Created);

                if (usuario.Persona.Nombres == null || usuario.Persona.Apellidos == null || usuario.Persona.Mail == null)
                {
                    response.StatusCode = HttpStatusCode.BadRequest;
                }
                else if (usuario.CodPrf == 0)
                {
                    response.StatusCode = HttpStatusCode.BadRequest;
                }
                else
                {
                    if (ProcessMsg.Seguridad.GetUsuario(usuario.Persona.Mail) != null)
                    {
                        return(Content(HttpStatusCode.Created, false));
                    }

                    if (usuario.Clave == null)
                    {
                        usuario.Clave = ProcessMsg.Utils.Encriptar(Utils.RandomString(8));
                    }
                    var persona = ProcessMsg.Seguridad.AddPersona(usuario.Persona);
                    if (persona == null)
                    {
                        response.StatusCode = HttpStatusCode.Accepted;
                    }
                    else
                    {
                        usuario.Persona = persona;
                        ProcessMsg.Bitacora.AddBitacora("Usuario", null, usuario.Bitacora('I'), 'I', DateTime.Now, int.Parse(HttpContext.Current.Session["token"].ToString()), usuario.Bitacora('?'));
                        var obj = ProcessMsg.Seguridad.AddUsuario(usuario);
                        if (obj == null)
                        {
                            response.StatusCode = HttpStatusCode.Accepted;
                        }
                        return(Content(HttpStatusCode.Created, obj));
                    }
                }

                return(Content(response.StatusCode, (ProcessMsg.Model.VersionBo)null));
            }
            catch (Exception ex)
            {
                throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.ExpectationFailed, ex.Message));
            }
        }
コード例 #2
0
        public Object Put(int id, int idUsuario, [FromBody] ProcessMsg.Model.UsuarioBo usuario)
        {
            try
            {
                if (HttpContext.Current.Session["token"] == null)
                {
                    return(Redirect(Request.RequestUri.GetLeftPart(UriPartial.Authority)));
                }
                HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.Created);

                if (usuario.Persona.Nombres == null || usuario.Persona.Apellidos == null || usuario.Persona.Mail == null)
                {
                    response.StatusCode = HttpStatusCode.BadRequest;
                }
                else if (usuario.CodPrf == 0)
                {
                    response.StatusCode = HttpStatusCode.BadRequest;
                }
                else
                {
                    var userAnt = ProcessMsg.Seguridad.GetUsuario(idUsuario);
                    if (userAnt != null)
                    {
                        var persona = ProcessMsg.Seguridad.UpdPersona(usuario.Persona);
                        if (persona == null)
                        {
                            response.StatusCode = HttpStatusCode.Accepted;
                        }
                        else
                        {
                            usuario.Persona = persona;
                            usuario.Id      = idUsuario;
                            ProcessMsg.Bitacora.AddBitacora("Usuario", userAnt.Bitacora('U'), usuario.Bitacora('U'), 'U', DateTime.Now, int.Parse(HttpContext.Current.Session["token"].ToString()), userAnt.Bitacora('?'));
                            ProcessMsg.Seguridad.UpdUsuario(usuario);

                            var obj = ProcessMsg.Cliente.GetUsuarios(id).SingleOrDefault(x => x.Id == idUsuario);
                            if (obj == null)
                            {
                                response.StatusCode = HttpStatusCode.Accepted;
                            }
                            return(Content(response.StatusCode, obj));
                        }
                    }
                }

                return(Content(response.StatusCode, (ProcessMsg.Model.VersionBo)null));
            }
            catch (Exception ex)
            {
                throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.ExpectationFailed, ex.Message));
            }
        }
コード例 #3
0
        // TODO: Here is where you would validate the username and password.
        private static bool CheckPassword(int idPersona, string mail, string pass, DateTime fecha, ProcessMsg.Model.UsuarioBo user)
        {
            var usr = ProcessMsg.Seguridad.GetUsuario(mail);

            return(user.Persona.Id == idPersona &&
                   user.Persona.Mail.Equals(mail) &&
                   pass.Equals(usr.Clave) &&
                   fecha.Day == DateTime.Now.Day &&
                   fecha.Month == DateTime.Now.Month &&
                   fecha.Year == DateTime.Now.Year);
        }