// public ActionResult Edit(icb_plan_financiero icb_plan_financiero, HttpPostedFileBase imagen, int? menu) public ActionResult Edit(ModeloPlanFinanciero modeloPlanFinanciero, HttpPostedFileBase imagen, int?menu) { string bodegasSeleccionadas = Request["bodccs_cod"]; float psi3 = float.Parse(Request["tasa_interes"]); ViewBag.bodccs_cod = db.bodega_concesionario.OrderBy(x => x.bodccs_nombre).ToList(); if (ModelState.IsValid) { if (string.IsNullOrEmpty(bodegasSeleccionadas)) { TempData["mensaje_error"] = "Debe asignar minimo una bodega!"; ViewBag.bodegasSeleccionadas = bodegasSeleccionadas; BuscarFavoritos(menu); //return View(icb_plan_financiero); return(View(modeloPlanFinanciero)); } if (!string.IsNullOrEmpty(bodegasSeleccionadas)) { planfinancierobodega planToBodega = new planfinancierobodega(); string[] bodegasId = bodegasSeleccionadas.Split(','); foreach (string substring in bodegasId) { int xbod = Convert.ToInt32(substring); int xplan = Convert.ToInt32(modeloPlanFinanciero.plan_id); planfinancierobodega existeRegistro = db.planfinancierobodega.FirstOrDefault(x => x.idbodega == xbod && x.idplanfinanciero == xplan); if (existeRegistro != null) { existeRegistro.porcentaje = Convert.ToDouble(modeloPlanFinanciero.plan_porcentaje_comision, CultureInfo.InvariantCulture); existeRegistro.fechadesde = Convert.ToDateTime(Request["txtFechaInicio"]); existeRegistro.fechahasta = Convert.ToDateTime(Request["txtFechaFin"]); db.Entry(existeRegistro).State = EntityState.Modified; db.SaveChanges(); } else { planToBodega.idbodega = Convert.ToInt32(substring); planToBodega.idplanfinanciero = modeloPlanFinanciero.plan_id; planToBodega.porcentaje = Convert.ToDouble(modeloPlanFinanciero.plan_porcentaje_comision, CultureInfo.InvariantCulture); planToBodega.fechadesde = Convert.ToDateTime(Request["txtFechaInicio"]); planToBodega.fechahasta = Convert.ToDateTime(Request["txtFechaFin"]); planToBodega.estado = true; db.planfinancierobodega.Add(planToBodega); db.SaveChanges(); } } } icb_plan_financiero cabeceraPlan = db.icb_plan_financiero.FirstOrDefault(x => x.plan_id == modeloPlanFinanciero.plan_id); if (cabeceraPlan != null) { cabeceraPlan.plan_fecha_actualizacion = DateTime.Now; cabeceraPlan.plan_usuario_actualizacion = Convert.ToInt32(Session["user_usuarioid"]); cabeceraPlan.plan_porcentaje_comision = Convert.ToDouble(modeloPlanFinanciero.plan_porcentaje_comision, CultureInfo.InvariantCulture); cabeceraPlan.tasa_interes = Convert.ToDouble(modeloPlanFinanciero.tasa_interes, CultureInfo.InvariantCulture); if (imagen != null) { cabeceraPlan.plan_imagen = cabeceraPlan.plan_id + "_" + imagen.FileName; string path = Server.MapPath("~/Content/img/" + cabeceraPlan.plan_id + "_" + imagen.FileName); imagen.SaveAs(path); } db.Entry(cabeceraPlan).State = EntityState.Modified; db.SaveChanges(); } //db.Entry(icb_plan_financiero).State = EntityState.Modified; // db.SaveChanges(); ViewBag.bodccs_cod = db.bodega_concesionario.OrderBy(x => x.bodccs_nombre).ToList(); var buscarBodegas = from bodegas in db.planfinancierobodega where bodegas.idplanfinanciero == cabeceraPlan.plan_id select new { bodegas.idbodega }; string bodegasString = ""; bool primera = true; foreach (var item in buscarBodegas) { if (primera) { bodegasString += item.idbodega; primera = !primera; } else { bodegasString += "," + item.idbodega; } } ViewBag.bodegasSeleccionadas = bodegasString; TempData["mensaje"] = "Registro editado Correctamente"; } else { TempData["mensaje_error"] = "Error al editar el registro, por favor valide"; } // ConsultaDatosCreacion(icb_plan_financiero); var fianancieras = (from fin in db.icb_unidad_financiera //modelopdf.vm_list_icb_terceros select new { fin.financiera_id, nombre = fin.financiera_nombre }).ToList(); ViewBag.idfinanciera = new SelectList(fianancieras, "financiera_id", "nombre", modeloPlanFinanciero.idfinanciera); BuscarFavoritos(menu); return(View(modeloPlanFinanciero)); //ConsultaDatosCreacion(modeloPlanFinanciero); // BuscarFavoritos(menu); // return View(modeloPlanFinanciero); }
// GET: plan_financiero/Edit/5 public ActionResult Edit(int?id, int?menu) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } //icb_plan_financiero icb_plan_financiero = db.icb_plan_financiero.Find(id); //if (icb_plan_financiero == null) //{ // return HttpNotFound(); //} int xid = id ?? 0; ConsultaDatosCreacion(xid); icb_plan_financiero planx = db.icb_plan_financiero.Find(id); var financiera = (from plan in db.icb_plan_financiero join fina in db.icb_unidad_financiera on plan.idfinanciera equals fina.financiera_id where plan.plan_id == id select new { fina.financiera_nombre }).FirstOrDefault(); var buscarMuchos = (from planbod in db.planfinancierobodega join fin in db.icb_unidad_financiera on planbod.idplanfinanciero equals fin.financiera_id join bod in db.bodega_concesionario on planbod.idbodega equals bod.id where planbod.idplanfinanciero == id select new { planbod.idplanfinanciero, fin.financiera_nombre, planbod.idbodega, bod.bodccs_cod, bod.bodccs_nombre, planbod.porcentaje, planbod.fechadesde, planbod.fechahasta, planbod.estado, planbod.razoninactividad }).ToList(); List <Listaplanfinancierobodega> bodegasall = buscarMuchos.Select(c => new Listaplanfinancierobodega { id = c.idbodega, idbodega = c.idbodega, nomBodega = "(" + c.bodccs_cod + ") " + c.bodccs_nombre, idplanfinanciero = c.idplanfinanciero, nomFinaciera = financiera.financiera_nombre, porcentaje = Convert.ToDouble(c.porcentaje, CultureInfo .InvariantCulture), //esto se utiliza para que al guardar el dato en la BD me quede con la "," del decimal //c.porcentaje, fechadesde = c.fechadesde != null ? c.fechadesde.ToString("yyyy/MM/dd", new CultureInfo("en-US")) : "", fechahasta = c.fechahasta != null ? c.fechahasta.ToString("yyyy/MM/dd", new CultureInfo("en-US")) : "", estado = c.estado, Desestado = c.estado ? "Activo" : "Inactivo", razoninactividad = c.razoninactividad }).ToList(); string pfa = planx.plan_fecha_actualizacion != null ? planx.plan_fecha_actualizacion.Value.ToString("yyyy/MM/dd", new CultureInfo("en-US")) : ""; double ppc = planx.plan_porcentaje_comision != null ? planx.plan_porcentaje_comision.Value : 0; int pua = planx.plan_usuario_actualizacion != null ? planx.plan_usuario_actualizacion.Value : 0; ModeloPlanFinanciero mpf = new ModeloPlanFinanciero { plan_id = planx.plan_id, plan_descripcion = planx.plan_descripcion, plan_usuela = planx.plan_usuela.ToString(), plan_estado = planx.plan_estado, // == true ? "Activo":"Inactivo"; plan_nombre = planx.plan_nombre, plan_imagen = planx.plan_imagen, plan_comision = planx.plan_comision, plan_porcentaje_comision = ppc, tasa_interes = planx.tasa_interes, // mpf.plan_usuario_actualizacion = pua; // mpf.plan_fecha_actualizacion = Convert.ToDateTime(pfa); plan_razon_inactivo = planx.plan_razon_inactivo, idfinanciera = planx.idfinanciera, Listaplanfinancierobodega = bodegasall }; //ConsultaDatosCreacion(icb_plan_financiero); // ConsultaDatosCreacion(mpf); ViewBag.bodccs_cod = db.bodega_concesionario.OrderBy(x => x.bodccs_nombre).ToList(); var buscarBodegas = from bodegas in db.planfinancierobodega where bodegas.idplanfinanciero == planx.plan_id select new { bodegas.idbodega }; string bodegasString = ""; bool primera = true; foreach (var item in buscarBodegas) { if (primera) { bodegasString += item.idbodega; primera = !primera; } else { bodegasString += "," + item.idbodega; } } ViewBag.bodegasSeleccionadas = bodegasString; var fianancieras = (from fin in db.icb_unidad_financiera //modelopdf.vm_list_icb_terceros select new { fin.financiera_id, nombre = fin.financiera_nombre }).ToList(); ViewBag.idfinanciera = new SelectList(fianancieras, "financiera_id", "nombre", mpf.idfinanciera); BuscarFavoritos(menu); //return View(icb_plan_financiero); ViewBag.plan = id; return(View(mpf)); }