public JsonResult InsertaSolicitud(CASCO.EN.Abastos.SolicitudMateriales solicitud)
        {
            Models.SolicitudMateriales.Inserta(solicitud);
            JsonResult j = new JsonResult();

            j.Data = solicitud;
            j.JsonRequestBehavior = JsonRequestBehavior.AllowGet;
            return(j);
        }
        public ActionResult Upload()
        {
            string             sruta_upload = "";
            bool               isSaveFile   = false;
            HttpPostedFileBase btfile       = Request.Files[0];
            int    Solicitud_ID             = Convert.ToInt32(Request.Params["Solicitud_ID"].ToString());
            int    SoporteSolicitud_ID      = Convert.ToInt32(Request.Params["SoporteSolicitud_ID"].ToString());
            int    Soporte_ID = Convert.ToInt32(Request.Params["Soporte_ID"].ToString());
            String _Path      = Server.MapPath("~/Uploads/" + Solicitud_ID);
            String _PathFile  = "";

            CASCO.EN.Abastos.SolicitudMaterialesConsulta sc = new CASCO.EN.Abastos.SolicitudMaterialesConsulta();
            sc.id = Solicitud_ID;
            object lsolicitudes = Models.SolicitudMateriales.Consulta(sc);

            CASCO.EN.Abastos.SolicitudMateriales solicitud            = ((List <CASCO.EN.Abastos.SolicitudMateriales>)lsolicitudes)[0];
            CASCO.EN.Abastos.SoporteElectronicoSolicitudMateriales se = new CASCO.EN.Abastos.SoporteElectronicoSolicitudMateriales();
            foreach (CASCO.EN.Abastos.SoporteElectronicoSolicitudMateriales sop in solicitud.soportes)
            {
                if (SoporteSolicitud_ID > 0)
                {
                    if (sop.id == SoporteSolicitud_ID)
                    {
                        se = sop;
                        break;
                    }
                }
                else if (SoporteSolicitud_ID == 0)
                {
                    if (sop.soporte.id == Soporte_ID)
                    {
                        se = sop;
                        break;
                    }
                }
            }

            if (se.id > 0 || se.soporte.id > 0)
            {
                try
                {
                    string fname = btfile.FileName;
                    if (Request.Browser.Browser.ToUpper() == "IE" || Request.Browser.Browser.ToUpper() == "INTERNETEXPLORER")
                    {
                        string[] testfiles = btfile.FileName.Split(new char[] { '\\' });
                        fname = testfiles[testfiles.Length - 1];
                    }

                    if (!Directory.Exists(_Path))
                    {
                        Directory.CreateDirectory(_Path);
                    }

                    fname     = SoporteSolicitud_ID.ToString() + fname.Substring(fname.IndexOf("."), 4);
                    _PathFile = Path.Combine(_Path, fname);
                    btfile.SaveAs(_PathFile);
                    isSaveFile        = true;
                    sruta_upload      = "/" + Solicitud_ID + "/" + fname;
                    se.Ruta_Documento = sruta_upload;
                    if (!Models.SolicitudMateriales.InsertaDocumentoSoporte(Solicitud_ID, se))
                    {
                        sruta_upload = "";
                    }
                }
                catch
                {
                    if (isSaveFile)
                    {
                        System.IO.File.Delete(_PathFile);
                    }
                    sruta_upload = "";
                }
            }

            JsonResult j = new JsonResult();

            j.Data = sruta_upload;
            j.JsonRequestBehavior = JsonRequestBehavior.AllowGet;
            return(j);
        }