예제 #1
0
 public IHttpActionResult Registro(SUsuario u)
 {
     try
     {
         u.Rol = "Cliente";
         BLUsuario blusuario = new BLUsuario();
         SUsuario  usuario   = blusuario.addUsuario(u);
         if (usuario != null)
         {
             dynamic res = new ExpandoObject();
             res.Token = TokenGenerator.GenerateTokenJwt(usuario.Email);;
             res.Email = usuario.Email;
             res.Rol   = usuario.Rol;
             return(Ok(res));
         }
         else
         {
             return(Content(HttpStatusCode.Unauthorized, "No se ha podido crear el usuario por algun motivo rarezcamente rarezco"));
         }
     }
     catch (Exception e)
     {
         return(Content(HttpStatusCode.InternalServerError, e.Message));
     }
 }
예제 #2
0
        public IHttpActionResult Authenticate(SUsuario login)
        {
            try
            {
                if (login == null)
                {
                    throw new HttpResponseException(HttpStatusCode.BadRequest);
                }

                BLUsuario blusuario = new BLUsuario();
                SUsuario  usuario   = blusuario.login(login);
                if (usuario != null)
                {
                    dynamic res = new ExpandoObject();
                    res.Token = TokenGenerator.GenerateTokenJwt(login.Email);;
                    res.Email = usuario.Email;
                    res.Rol   = usuario.Rol;
                    res.Id    = usuario.Id;
                    return(Ok(res));
                }
                else
                {
                    return(Content(HttpStatusCode.Unauthorized, "El usuario no existe"));
                }
            }
            catch (Exception e)
            {
                return(Content(HttpStatusCode.InternalServerError, e.Message));
            }
        }
예제 #3
0
        public IHttpActionResult ExternalLogin(ExternalLoginDTO login)
        {
            try
            {
                if (login.Validacion == Direcciones.PassLoginExterno)
                {
                    if (login == null)
                    {
                        throw new HttpResponseException(HttpStatusCode.BadRequest);
                    }

                    BLUsuario blusuario = new BLUsuario();
                    SUsuario  usuario   = blusuario.externalLogin(new SUsuario()
                    {
                        Email = login.Email
                    });
                    if (usuario != null)
                    {
                        dynamic res = new ExpandoObject();
                        res.Token = TokenGenerator.GenerateTokenJwt(login.Email);;
                        res.Email = usuario.Email;
                        res.Rol   = usuario.Rol;
                        res.Id    = usuario.Id;
                        return(Ok(res));
                    }
                    throw new ECompartida("Esto no debería haber llegado a este punto");
                }
                throw new ECompartida("La clave de validación no es correcta");
            }
            catch (Exception e)
            {
                return(Content(HttpStatusCode.InternalServerError, e.Message));
            }
        }
예제 #4
0
 public bool retroceder(SPaquetePuntoControl ppc)
 {
     try
     {
         var _dalPPC = new DALPaquetePuntoControl();
         List <SPaquetePuntoControl> ppcList = _dalPPC.getAllByPaquete(ppc.IdPaquete);
         if (ppcList.Count() > 0)
         {
             int ppcAEliminarId = ppcList.Max(x => x.Id);
             SPaquetePuntoControl ppcAEliminar = ppcList.First(x => x.Id == ppcAEliminarId);
             if (ppcAEliminar != null)
             {
                 var      _dalU    = new DALUsuario();
                 SUsuario empleado = _dalU.getUsuario(ppc.IdEmpleado);
                 if ((empleado.Rol == "Funcionario" && empleado.Id == ppcAEliminar.IdEmpleado) || empleado.Rol == "Encargado" || empleado.Rol == "Admin")
                 {
                     BLEmail.actualizacionEstado(new BLPaquete().getPaquete(ppc.IdPaquete));
                     return(_dalPPC.deletePaquetePuntoControl(ppcAEliminar.Id));
                 }
                 else
                 {
                     throw new ECompartida("El usuario que realizo la peticion no tiene autorizacion para realizar esta operacion");
                 }
             }
             throw new ECompartida("No se encontro ningun paquete con el ID enviado");
         }
         throw new ECompartida("No se puede retroceder mas el paquete");
     }
     catch (Exception)
     {
         throw;
     }
 }
예제 #5
0
 public SUsuario login(SUsuario u)
 {
     using (trackingFULLEntities en = new trackingFULLEntities())
     {
         try
         {
             Usuario usuario = en.Usuario.First(x => x.email == u.Email);
             if (usuario != null)
             {
                 if (usuario.password == u.Password) // Deberiamos hashear la pass y aca llamariamos a una funcion que compruebe si esta bien o no, por ahora queda asi
                 {
                     if (usuario.emailValido == true)
                     {
                         return(_conv.modeloAEntidad(usuario));
                     }
                     throw new ECompartida("Debe autenticar su correo antes de poder ingresar, por favor revise su email");
                 }
                 throw new ECompartida("La contrase;a no coincide");
             }
             throw new ECompartida("El usuario no existe");
         }
         catch (Exception)
         {
             throw;
         }
     }
 }
예제 #6
0
 public Usuario entidadAModelo(SUsuario u, Usuario us)
 {
     us.id       = u.Id;
     us.email    = u.Email;
     us.password = u.Password;
     us.rol      = u.Rol;
     us.borrado  = u.Borrado;
     return(us);
 }
예제 #7
0
 public SUsuario updateUsuario(SUsuario a)
 {
     try
     {
         return(_dal.updateUsuario(a));
     }
     catch (Exception)
     {
         throw;
     }
 }
예제 #8
0
 public SUsuario addUsuario(SUsuario u)
 {
     try
     {
         SUsuario usuario = _dal.addUsuario(u);
         //BLEmail.confirmacionDeEmail(usuario.Email, getCodigoConfirmacionEmail(usuario.Id));
         return(usuario);
     }
     catch (Exception)
     {
         throw;
     }
 }
예제 #9
0
        //USUARIO

        public SUsuario modeloAEntidad(Usuario u)
        {
            SUsuario usuario = new SUsuario()
            {
                Id       = u.id,
                Email    = u.email,
                Password = u.password,
                Rol      = u.rol,
                Borrado  = (bool)u.borrado
            };

            return(usuario);
        }
예제 #10
0
    public int check()
    {
        int contador = 0;

        for (int i = 0; i < 100; i++)
        {
            if (STutorial.Substring(i, 1) == SUsuario.Substring(i, 1))
            {
                contador++;
            }
        }
        return(contador);
    }
예제 #11
0
        public Usuario entidadAModelo(SUsuario u)
        {
            Usuario usuario = new Usuario()
            {
                id       = u.Id,
                email    = u.Email,
                password = u.Password,
                rol      = u.Rol,
                borrado  = u.Borrado
            };

            return(usuario);
        }
예제 #12
0
 public SUsuario externalLogin(SUsuario login)
 {
     try
     {
         SUsuario u = _dal.getUsuarioByEmail(login.Email);
         if (u == null)
         {
             u = _dal.addUsuarioExternalLogin(login);
         }
         return(u);
     }
     catch (Exception)
     {
         throw;
     }
 }
예제 #13
0
 public SUsuario updateUsuario(SUsuario a)
 {
     using (trackingFULLEntities en = new trackingFULLEntities())
     {
         try
         {
             Usuario ag = en.Usuario.Find(a.Id);
             ag = _conv.entidadAModelo(a, ag);
             en.SaveChanges();
             return(_conv.modeloAEntidad(ag));
         }
         catch (Exception)
         {
             throw;
         }
     }
 }
예제 #14
0
 public IHttpActionResult retroceder(SPaquete es)
 {
     try
     {
         string    email = TokenInfo.getClaim(Request, "email");
         BLUsuario _blU  = new BLUsuario();
         SUsuario  u     = _blU.getUsuarioByEmail(email);
         BLPaquete bl    = new BLPaquete();
         return(Ok(bl.retroceder(new SPaquetePuntoControl()
         {
             IdPaquete = (int)es.Id, IdEmpleado = u.Id
         })));
     }
     catch (Exception e)
     {
         return(Content(HttpStatusCode.InternalServerError, e.Message));
     }
 }
예제 #15
0
 public SUsuario addUsuario(SUsuario u)
 {
     using (trackingFULLEntities en = new trackingFULLEntities())
     {
         try
         {
             Usuario usuario = _conv.entidadAModelo(u);
             usuario.codigoConfirmacion = Randoms.RandomString(100);
             usuario.emailValido        = true;
             en.Usuario.Add(usuario);
             en.SaveChanges();
             return(_conv.modeloAEntidad(usuario));
         }
         catch (Exception)
         {
             throw;
         }
     }
 }
예제 #16
0
 public IHttpActionResult entregaCliente(int IdPaquete, string codigo)
 {
     try
     {
         string               email = TokenInfo.getClaim(Request, "email");
         BLUsuario            _blU  = new BLUsuario();
         SUsuario             u     = _blU.getUsuarioByEmail(email);
         BLPaquete            bl    = new BLPaquete();
         SPaquetePuntoControl ppc   = new SPaquetePuntoControl()
         {
             IdEmpleado = u.Id,
             IdPaquete  = IdPaquete
         };
         return(Ok(bl.entregaCliente(ppc, codigo)));
     }
     catch (Exception e)
     {
         return(Content(HttpStatusCode.InternalServerError, e.Message));
     }
 }
예제 #17
0
 public SUsuario addUsuarioExternalLogin(SUsuario u)
 {
     using (trackingFULLEntities en = new trackingFULLEntities())
     {
         try
         {
             Usuario usuario = new Usuario();
             usuario.email              = u.Email;
             usuario.rol                = "Cliente";
             usuario.password           = null;
             usuario.codigoConfirmacion = "none";
             usuario.emailValido        = true;
             usuario.borrado            = false;
             en.Usuario.Add(usuario);
             en.SaveChanges();
             return(_conv.modeloAEntidad(usuario));
         }
         catch (Exception)
         {
             throw;
         }
     }
 }
예제 #18
0
 public frmUsuarios()
 {
     InitializeComponent();
     sUsuario = new SUsuario();
     sPerfil  = new SPerfil();
 }
예제 #19
0
 public frmLogin()
 {
     InitializeComponent();
     sUsuario = new SUsuario();
 }
예제 #20
0
        public IHttpActionResult Authenticate(SAEData d)
        {
            try
            {
                SUsuario    usuario        = d.usuario;
                SEATrayecto trayecto       = d.trayecto;
                STrayecto   ActualTrayecto = null;

                SAEPaquete p = d.paquete;

                BLCliente bl        = new BLCliente();
                BLUsuario blusuario = new BLUsuario();
                SUsuario  oUsuario  = blusuario.login(usuario);
                BLPaquete blPaquete = new BLPaquete();

                if (usuario == null)
                {
                    return(Content(HttpStatusCode.Unauthorized, "El usuario no existe"));
                }
                else if (oUsuario.Rol != "Admin" && oUsuario.Rol != "Funcionario" && oUsuario.Rol != "Encargado")
                {
                    return(Content(HttpStatusCode.Unauthorized, "El usuario no esta autorisado para usar elte servicio"));
                }

                if (p.adelanta != null)
                {
                    if (p.Id == null)
                    {
                        return(Content(HttpStatusCode.Unauthorized, "Error en paquete, se intento adelantar pero no se recibio el identificador"));
                    }
                    else
                    {
                        return(Ok(blPaquete.avanzar(new SPaquetePuntoControl()
                        {
                            IdPaquete = (int)p.Id, IdEmpleado = oUsuario.Id
                        })));
                    }
                }
                if (p.atrasa != null)
                {
                    if (p.Id == null)
                    {
                        return(Content(HttpStatusCode.Unauthorized, "Error en paquete, se intento retroceder pero no se recibio el identificador"));
                    }
                    else
                    {
                        return(Ok(blPaquete.retroceder(new SPaquetePuntoControl()
                        {
                            IdPaquete = (int)p.Id, IdEmpleado = oUsuario.Id
                        })));
                    }
                }
                if (p.entrega != null)
                {
                    if (p.Id == null)
                    {
                        return(Content(HttpStatusCode.Unauthorized, "Error en paquete, se intento entregar pero no se recibio el identificador"));
                    }
                    else if (p.code == null)
                    {
                        return(Content(HttpStatusCode.Unauthorized, "Error en paquete, se intento entregar pero no se recibio el codigo"));
                    }
                    else
                    {
                        return(Ok(blPaquete.entregaCliente(new SPaquetePuntoControl()
                        {
                            IdEmpleado = oUsuario.Id,
                            IdPaquete = (int)p.Id
                        }, p.code)));
                    }
                }


                STrayecto t = trayecto;
                if ((p.IdDestinatario == p.IdRemitente && p.IdRemitente != null) ||
                    (p.Remitente != null && p.Destinatario != null && p.Destinatario.NumeroDocumento == p.Remitente.NumeroDocumento))
                {
                    return(Content(HttpStatusCode.NotFound, "Error en el paquete, el destinatario no puede ser el remitente"));
                }
                string sMsg = p.validacion();
                if (sMsg != "")
                {
                    return(Content(HttpStatusCode.NotFound, sMsg));
                }
                else
                {
                    SCliente cActualDestinatario = null;
                    SCliente cActualRemitente    = null;
                    if (p.IdDestinatario != null)
                    {
                        cActualDestinatario = bl.getCliente((int)p.IdDestinatario);
                    }
                    else
                    {
                        bl.validacion(p.Destinatario);
                    }
                    if (p.IdRemitente != null)
                    {
                        cActualRemitente = bl.getCliente((int)p.IdRemitente);
                    }
                    else
                    {
                        bl.validacion(p.Remitente);
                    }


                    if (cActualDestinatario == null && p.Destinatario == null)
                    {
                        return(Content(HttpStatusCode.NotFound, "Error en el paquete, el destinatario no existe en el sistema"));
                    }
                    if (cActualRemitente == null && p.Remitente == null)
                    {
                        return(Content(HttpStatusCode.NotFound, "Error en el paquete, el remitente no existe en el sistema"));
                    }

                    if (p.IdTrayecto != null && p.IdTrayecto != t.Id)
                    {
                        return(Content(HttpStatusCode.NotFound, "Error en el paquete, no pertenece al trayecto enviado"));
                    }
                    else if (trayecto == null && d.IdTrayecto == null)
                    {
                        return(Content(HttpStatusCode.NotFound, "Error en el trayecto, faltan los datos"));
                    }
                    else if (d.IdTrayecto != null)
                    {
                        BLTrayecto blTrayecto = new BLTrayecto();
                        ActualTrayecto = blTrayecto.getTrayecto((int)d.IdTrayecto);
                        if (ActualTrayecto == null)
                        {
                            return(Content(HttpStatusCode.NotFound, "El trayecto no existe."));
                        }
                    }
                    else if (trayecto != null)
                    {
                        BLTrayecto blTrayecto = new BLTrayecto();

                        string sMsgTrayecto = trayecto.validasionCrearAgencias();
                        if (sMsgTrayecto != "")
                        {
                            return(Content(HttpStatusCode.NotFound, sMsgTrayecto));
                        }
                        else if (trayecto.Id == null)
                        {
                            ActualTrayecto = blTrayecto.addTrayecto(creaAgencias(trayecto));
                        }
                        else
                        {
                            if (blTrayecto.paquetesTransito(trayecto) != 0)
                            {
                                return(Content(HttpStatusCode.NotFound, "Hay paquetes en transito"));
                            }
                            else
                            {
                                ActualTrayecto = blTrayecto.updateTrayecto(creaAgencias(trayecto));
                            }
                        }
                    }

                    if (p.IdTrayecto == null)
                    {
                        p.IdTrayecto = ActualTrayecto.Id;
                    }
                    if (p.Destinatario != null && cActualDestinatario != null)
                    {
                        cActualDestinatario = bl.updateCliente(p.Destinatario);
                    }
                    else if (p.Destinatario != null && cActualDestinatario == null)
                    {
                        p.Destinatario.Id   = 0;
                        cActualDestinatario = bl.addCliente(p.Destinatario);
                    }
                    if (p.Remitente != null && cActualRemitente != null)
                    {
                        cActualRemitente = bl.updateCliente(p.Remitente);
                    }
                    else if (p.Remitente != null && cActualRemitente == null)
                    {
                        p.Remitente.Id   = 0;
                        cActualRemitente = bl.addCliente(p.Remitente);
                    }
                    p.IdDestinatario = cActualDestinatario.Id;
                    p.IdRemitente    = cActualRemitente.Id;
                    SPaquete np = null;
                    if (p.Id == null)
                    {
                        np = blPaquete.addPaquete(p);
                    }
                    else
                    {
                        np = blPaquete.updatePaquete(p);
                    }
                    return(Ok(new SAERespuesta()
                    {
                        usuario = usuario,
                        trayecto = t,
                        paquete = np
                    }));
                }
            }
            catch (Exception e)
            {
                return(Content(HttpStatusCode.InternalServerError, e.Message));
            }
        }
예제 #21
0
    void FixedUpdate()
    {
        if (!waiting || !stop)
        {
            if (Starting && !stop)
            {
                timer.text = (contStart -= Time.fixedDeltaTime).ToString().Substring(0, 1);
                if (contStart <= 0f)
                {
                    GO.gameObject.SetActive(true);
                    timer.gameObject.SetActive(false);
                    ST.gameObject.SetActive(false);
                }
                if (contStart <= -1.5f)
                {
                    GO.gameObject.SetActive(false);
                    Starting = false;
                }
            }
            else
            {
                if (SUsuario.Length == 100)
                {
                    stop = true;
                    tryagain.gameObject.SetActive(true);
                    points.gameObject.SetActive(true);
                    points.text = check() + "/100";
                }
                if (Input.anyKeyDown)
                {
                    contLetras += 1;
                    for (int i = 0; i < SUsuario.Length; i++)
                    {
                        if (SUsuario.Substring(i, 1) == " " && contLetras <= 5)
                        {
                            SUsuario = SUsuario.Substring(0, i) + Input.inputString + SUsuario.Substring(i + 1, SUsuario.Length - i - 1);
                            Debug.Log(SUsuario);
                            break;
                        }
                    }
                }
                if (cont != 104)
                {
                    L1.rectTransform.localPosition += new Vector3(0f, -1f * speed, 0f);
                    L2.rectTransform.localPosition += new Vector3(0f, -1f * speed, 0f);
                    L3.rectTransform.localPosition += new Vector3(0f, -1f * speed, 0f);
                    L4.rectTransform.localPosition += new Vector3(0f, -1f * speed, 0f);
                    L5.rectTransform.localPosition += new Vector3(0f, -1f * speed, 0f);
                }


                for (int i = contTest - 4; i <= cont; i++)
                {
                    if (i == contTest - 4)
                    {
                        if (STutorial.Substring(i, 1) == SUsuario.Substring(i, 1))
                        {
                            L5.color = new Color(0f, 1f, 0f);
                        }
                        else if (SUsuario.Substring(i, 1) == " ")
                        {
                            L5.color = new Color(1f, 1f, 1f);
                        }
                        else
                        {
                            L5.color = new Color(1f, 0f, 0f);
                        }
                    }
                    if (i == contTest - 3)
                    {
                        if (STutorial.Substring(i, 1) == SUsuario.Substring(i, 1))
                        {
                            L4.color = new Color(0f, 1f, 0f);
                        }
                        else if (SUsuario.Substring(i, 1) == " ")
                        {
                            L4.color = new Color(1f, 1f, 1f);
                        }
                        else
                        {
                            L4.color = new Color(1f, 0f, 0f);
                        }
                    }
                    if (i == contTest - 2)
                    {
                        if (STutorial.Substring(i, 1) == SUsuario.Substring(i, 1))
                        {
                            L3.color = new Color(0f, 1f, 0f);
                        }
                        else if (SUsuario.Substring(i, 1) == " ")
                        {
                            L3.color = new Color(1f, 1f, 1f);
                        }
                        else
                        {
                            L3.color = new Color(1f, 0f, 0f);
                        }
                    }
                    if (i == contTest - 1)
                    {
                        if (STutorial.Substring(i, 1) == SUsuario.Substring(i, 1))
                        {
                            L2.color = new Color(0f, 1f, 0f);
                        }
                        else if (SUsuario.Substring(i, 1) == " ")
                        {
                            L2.color = new Color(1f, 1f, 1f);
                        }
                        else
                        {
                            L2.color = new Color(1f, 0f, 0f);
                        }
                    }
                    if (i == contTest)
                    {
                        if (STutorial.Substring(i, 1) == SUsuario.Substring(i, 1))
                        {
                            L1.color = new Color(0f, 1f, 0f);
                        }
                        else if (SUsuario.Substring(i, 1) == " ")
                        {
                            L1.color = new Color(1f, 1f, 1f);
                        }
                        else
                        {
                            L1.color = new Color(1f, 0f, 0f);
                        }
                    }
                }

                if (L1.rectTransform.localPosition.y <= -780f && cont != 104)
                {
                    L1.rectTransform.localPosition = new Vector2(-80f, 290f);
                    L2.rectTransform.localPosition = new Vector2(-80f, 160f);
                    L3.rectTransform.localPosition = new Vector2(-80f, 30f);
                    L4.rectTransform.localPosition = new Vector2(-80f, -100f);
                    L5.rectTransform.localPosition = new Vector2(-80f, -230f);

                    for (int i = cont - 4; i <= cont; i++)
                    {
                        if (i == cont - 4)
                        {
                            TL5.text = (STutorial.Substring(cont - 4, 1)).ToUpper();
                        }
                        if (i == cont - 3)
                        {
                            TL4.text = (STutorial.Substring(cont - 3, 1)).ToUpper();
                        }
                        if (i == cont - 2)
                        {
                            TL3.text = (STutorial.Substring(cont - 2, 1)).ToUpper();
                        }
                        if (i == cont - 1)
                        {
                            TL2.text = (STutorial.Substring(cont - 1, 1)).ToUpper();
                        }
                        if (i == cont)
                        {
                            TL1.text = (STutorial.Substring(cont, 1)).ToUpper();
                        }
                    }
                    cont     += 5;
                    speed    += 0.2f;
                    contTest += 5;
                    for (int i = 0; i < SUsuario.Length; i++)
                    {
                        if (SUsuario.Substring(i, 1) == " ")
                        {
                            SUsuario = SUsuario.Substring(0, i) + "X" + SUsuario.Substring(i + 1, SUsuario.Length - i - 1);
                            Debug.Log(SUsuario);
                            Debug.Log(SUsuario.Length);
                        }
                    }
                    SUsuario  += "     ";
                    contLetras = 0;
                }
                animator.SetBool("DBaixo", false);
                animator.SetBool("DDir", false);
                animator.SetBool("DEsq", false);
                animator.SetBool("SocoEsq", false);
                animator.SetBool("SocoDir", false);
                animator.SetBool("InimigoBaixo", false);
                animator.SetBool("InimigoCima", false);
                if (Input.GetKeyDown("w"))
                {
                    animator.SetBool("Dcima", true);
                    animator.SetBool("DBaixo", false);
                }
                if (Input.GetKeyDown("s"))
                {
                    animator.SetBool("DBaixo", true);
                    animator.SetBool("Dcima", false);
                    dodge2.Play();
                }
                if (Input.GetKeyDown("q"))
                {
                    animator.SetBool("DEsq", true);
                    animator.SetBool("DDir", false);
                    dodge1.Play();
                }
                if (Input.GetKeyDown("e"))
                {
                    animator.SetBool("DDir", true);
                    animator.SetBool("DEsq", false);
                    dodge1.Play();
                }
                if (Input.GetKeyDown("j"))
                {
                    animator.SetBool("SocoEsq", true);
                    AL.Play();
                }
                if (Input.GetKeyDown("l"))
                {
                    AR.Play();
                    animator.SetBool("SocoDir", true);
                }
            }
        }
        else
        {
            contStart = 10f;
        }
    }
예제 #22
0
 public SUsuario login(SUsuario u)
 {
     return(_dal.login(u));
 }