コード例 #1
0
        public ActionResult Edit(FichaIngreso formulario, List <DetalleEstudios> estudios, List <DetalleExperiencias> experiencias, List <DetalleCargasFamiliares> cargasFamiliares, Usuario usuario)
        {
            string FileName = string.Empty;

            try
            {
                estudios         = estudios ?? new List <DetalleEstudios>();
                experiencias     = experiencias ?? new List <DetalleExperiencias>();
                cargasFamiliares = cargasFamiliares ?? new List <DetalleCargasFamiliares>();

                estudios         = estudios ?? new List <DetalleEstudios>();
                experiencias     = experiencias ?? new List <DetalleExperiencias>();
                cargasFamiliares = cargasFamiliares ?? new List <DetalleCargasFamiliares>();

                var fichaIngreso = HttpContext.Request.Params.Get("formulario");
                formulario = JsonConvert.DeserializeObject <FichaIngresoOverload>(fichaIngreso, settingsJsonDeserilize).formulario;

                var datosUsuario = HttpContext.Request.Params.Get("usuario");
                usuario = JsonConvert.DeserializeObject <UsuarioOverload>(datosUsuario).usuario;

                var dataEstudios = HttpContext.Request.Params.Get("estudios");
                estudios = JsonConvert.DeserializeObject <EstudiosOverload>(dataEstudios).estudios;

                var dataExperiencias = HttpContext.Request.Params.Get("experiencias");
                experiencias = JsonConvert.DeserializeObject <ExperienciaOverload>(dataExperiencias, settingsJsonDeserilize).experiencias;

                var dataCargasFamiliares = HttpContext.Request.Params.Get("cargasFamiliares");
                cargasFamiliares = JsonConvert.DeserializeObject <CargasFamiliaresOverload>(dataCargasFamiliares, settingsJsonDeserilize).cargasFamiliares;

                //Usuario
                usuario.IdUsuario = formulario.UsuarioID;

                //Obtener archivos
                HttpFileCollectionBase files = Request.Files;

                for (int i = 0; i < files.Count; i++)
                {
                    HttpPostedFileBase file = files[i];
                    string             path = string.Empty;

                    // Checking for Internet Explorer
                    if (Request.Browser.Browser.ToUpper() == "IE" || Request.Browser.Browser.ToUpper() == "INTERNETEXPLORER")
                    {
                        string[] testfiles = file.FileName.Split(new char[] { '\\' });
                        path = testfiles[testfiles.Length - 1];
                    }
                    else
                    {
                        path     = file.FileName;
                        FileName = file.FileName;
                    }

                    string tipoArchivo = file.ContentType;

                    using (var reader = new BinaryReader(file.InputStream))
                    {
                        formulario.Foto = reader.ReadBytes(file.ContentLength);
                    }
                }

                usuario.Direccion = formulario.DireccionCallePrincipal + " ; " + formulario.DireccionCalleSecundaria + " ; " + formulario.DireccionConjuntoResidencial + " N. " + formulario.DireccionNumeroCasa;

                var actualizacionDatosUsuario = UsuarioDAL.ActualizarDatosUsuarioFichaIngreso(usuario);

                if (actualizacionDatosUsuario.Estado)
                {
                    Resultado = FichaIngresoDAL.ActualizarFichaIngreso(formulario, cargasFamiliares, estudios, experiencias);
                }
                else
                {
                    return(Json(new { Resultado = new RespuestaTransaccion {
                                          Estado = false, Respuesta = actualizacionDatosUsuario.Respuesta
                                      } }, JsonRequestBehavior.AllowGet));
                }

                return(Json(new { Resultado = Resultado }, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                Log.Error(ex, "Excepción al editar ficha de ingreso.");
                return(Json(new { Resultado = new RespuestaTransaccion {
                                      Estado = false, Respuesta = ex.Message
                                  } }, JsonRequestBehavior.AllowGet));
            }
        }