示例#1
0
        public ActionResult Login(FormCollection collection)
        {
            try
            {
                LoginSolicitante login = new LoginSolicitante();
                login.Usuario = collection["Usuario"];
                login.Clave   = collection["Clave"];
                GateWay gateway = new GateWay();
                MensajeRetorno <Tokens> returnVal = returnVal = gateway.PeticionPost <LoginSolicitante, Tokens>(login, "solicitantes/Login");
                if (returnVal.State == "FAIL")
                {
                    ViewBag.Error = returnVal.Message;
                    return(View());
                }
                else
                {
                    Tokens token  = returnVal.Data;
                    var    cookie = new HttpCookie("token");
                    cookie["valor"]  = token.Token;
                    cookie["cedula"] = login.Usuario;
                    cookie.Expires   = DateTime.Now.AddMinutes(30);
                    Response.Cookies.Set(cookie);
                }

                return(RedirectToAction("index", "solicitudes"));
            }
            catch
            {
                return(View("~/Views/Shared/_Error.cshtml"));
            }
        }
示例#2
0
 public ActionResult Create(FormCollection collection)
 {
     try
     {
         Solicitante solicitante = new Solicitante();
         solicitante.Cedula            = collection["Cedula"];
         solicitante.Clave             = collection["Clave"];
         solicitante.CorreoElectronico = collection["CorreoElectronico"];
         solicitante.NombreCompleto    = "";
         GateWay gateway = new GateWay();
         MensajeRetorno <Solicitante> returnVal = gateway.PeticionPost <Solicitante, Solicitante>(solicitante, "solicitantes/crear");
         if (returnVal.State == "FAIL" || returnVal.State == null)
         {
             Danger(string.Format(returnVal.Message), true);
             return(View());
         }
         Success(string.Format("<b>{0}</b> Su Cuenta fue creada exitosamente.",
                               solicitante.Cedula), true);
         return(View("Login"));
     }
     catch
     {
         return(View("~/Views/Shared/_Error.cshtml"));
     }
 }
示例#3
0
 public ActionResult Logout()
 {
     try
     {
         string token = HttpContext.Request.Cookies["token"]["valor"];
         Response.Cookies.Remove("token");
         GateWay gateway = new GateWay();
         gateway.Token = token;
         MensajeRetorno <string> returnVal = gateway.PeticionPost <Object, string>(null, "solicitantes/logout");
         if (returnVal.State == "FAIL" || returnVal.State == null)
         {
             ViewBag.Error = returnVal.Message;
         }
         return(Redirect("Login"));
     }
     catch
     {
         return(View("~/Views/Shared/_Error.cshtml"));
     }
 }
示例#4
0
        public ActionResult Create(FormCollection collection, HttpPostedFileBase archivo, HttpPostedFileBase archivo2)
        {
            try
            {
                List <HttpPostedFileBase> archivos = new List <HttpPostedFileBase>();
                archivos.Add(archivo);
                if (archivo2 != null)
                {
                    archivos.Add(archivo2);
                }
                Solicitudes solicitud = new Solicitudes
                {
                    CorreoElectronico = collection["CorreoElectronico"],
                    Institucion       = collection["Institucion"],
                    CantParticipante  = Convert.ToInt32(collection["CantParticipante"]),
                    Direccion         = collection["Direccion"],
                    Fecha             = DateTime.Today,
                    Telefono          = collection["Telefono"]
                };
                GateWay gateway = new GateWay();
                gateway.Token = Request.Cookies["token"]["valor"];
                var soli = gateway.PeticionGet <Solicitante>(Request.Cookies["token"]["cedula"].ToString(), "solicitantes/get");
                if (soli.State == "FAIL")
                {
                    return(RedirectToAction("Login", "Solicitante"));
                }
                var servi = gateway.PeticionGet <Servicio>(collection["Servicio"], "servicios/get");
                if (servi.State == "FAIL")
                {
                    ViewBag.Error = servi.Message;
                    return(View());
                }
                solicitud.Solicitantes = soli.Data;
                solicitud.Servicios    = servi.Data;

                List <Archivo> rarchivos = new List <Archivo>();
                foreach (HttpPostedFileBase i in archivos)
                {
                    using (FileStream fileStream = new FileStream(i.FileName, FileMode.Create))
                    {
                        BinaryReader b           = new BinaryReader(i.InputStream);
                        byte[]       fileContent = b.ReadBytes((int)i.InputStream.Length);
                        fileStream.Write(fileContent, 0, fileContent.Length);
                        rarchivos.Add(new Archivo
                        {
                            Contenido     = fileContent,
                            NombreArchivo = i.FileName,
                            TipoDeArchivo = i.FileName.Substring(i.FileName.LastIndexOf('.')) == "docx"? "application/msword": "application/pdf",
                            Longitud      = i.ContentLength
                        });
                    }
                }
                solicitud.Archivos = rarchivos;
                var result = gateway.PeticionPost <Solicitudes, Solicitudes>(solicitud, "solicitudes/create");
                if (result.State == "FAIL")
                {
                    ViewBag.Error = result.Message;
                    return(View());
                }
                Success(string.Format("<b>{0}</b> Su solicitud fue enviada exitosamente.",
                                      solicitud.Servicios.NombreServicios), true);
                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View("~/Views/Shared/_Error.cshtml"));
            }
        }