public ActionResult Create(vdocumentosflota vdocumentosflota, int?menu) { if (ModelState.IsValid) { bool coincidencia = false; string documentosT = Request["tdocumento"]; string[] documentos1 = documentosT.Split(','); foreach (string item in documentos1) { vdocumentosflota existe = db.vdocumentosflota.FirstOrDefault(x => x.documento == vdocumentosflota.documento && x.id_tipo_documento.ToString() == item); if (existe != null) { coincidencia = true; } break; } if (coincidencia == false) { string docs = Request["tdocumento"]; string[] documentos = docs.Split(','); foreach (string item in documentos) { if (!string.IsNullOrEmpty(item)) { vdocumentosflota.fec_creacion = DateTime.Now; vdocumentosflota.userid_creacion = Convert.ToInt32(Session["user_usuarioid"]); vdocumentosflota.id_tipo_documento = Convert.ToInt32(item); vdocumentosflota.estado = true; vdocumentosflota.estadotipo = true; db.vdocumentosflota.Add(vdocumentosflota); db.SaveChanges(); } } // db.SaveChanges(); TempData["mensaje"] = "Documento creado correctamente"; //return RedirectToAction("Edit", new { id= vdocumentosflota.id, menu}); // ViewBag.tercero_id = new SelectList(terceros, "id", "docyNombre"); ViewBag.tdocumento = new SelectList(db.documento_facturacion, "id", "tipo_nombre"); ViewBag.docFlotas = new SelectList( db.documento_facturacion.Where(x => x.docfac_estado).OrderBy(x => x.docfac_nombre), "docfac_id", "docfac_nombre"); return(RedirectToAction("Create")); } TempData["mensaje_error"] = "El documento ingresado ya existe, por favor valide"; } else { TempData["mensaje_error"] = "Error al guardar el documento, por favor valide"; } var listaDocu = (from td in db.tipo_documentos select new { td.id, nombre = td.tipo_nombre }).ToList(); // ViewBag.tercero_id = new SelectList(terceros, "id", "docyNombre"); ViewBag.tdocumento = new SelectList(listaDocu, "id", "nombre"); ViewBag.docFlotas = new SelectList(db.documento_facturacion.Where(x => x.docfac_estado).OrderBy(x => x.docfac_nombre), "docfac_id", "docfac_nombre"); BuscarFavoritos(menu); return(View(vdocumentosflota)); }
public ActionResult Edit(vdocumentosflotaform vdocumentosflota, int?menu) { if (ModelState.IsValid) { //borro todos los registros que tengan el id que viene seleccionado System.Collections.Generic.List <int> buscarBorrar = db.vdocumentosflota.Where(x => x.iddocumento == vdocumentosflota.iddocumento) .Select(x => x.id).ToList(); foreach (int item in buscarBorrar) { vdocumentosflota dato = db.vdocumentosflota.Find(item); vdocumentosflota documento = db.vdocumentosflota.FirstOrDefault(x => x.id == item); documento.estadotipo = false; db.Entry(documento).State = EntityState.Modified; db.SaveChanges(); } string docs = Request["tdocumento"]; string[] documentos = docs.Split(','); foreach (string item in documentos) { if (!string.IsNullOrEmpty(item)) { vdocumentosflota existe = db.vdocumentosflota.FirstOrDefault(x => x.documento == vdocumentosflota.documento && x.id_tipo_documento.ToString() == item); if (existe != null) { existe.fec_actualizacion = DateTime.Now; existe.user_idactualizacion = Convert.ToInt32(Session["user_usuarioid"]); existe.id_tipo_documento = Convert.ToInt32(item); existe.estado = true; existe.estadotipo = true; db.Entry(existe).State = EntityState.Modified; db.SaveChanges(); } else { vdocumentosflota docFlota = new vdocumentosflota { documento = vdocumentosflota.documento, fec_creacion = DateTime.Now, userid_creacion = Convert.ToInt32(Session["user_usuarioid"]), id_tipo_documento = Convert.ToInt32(item), iddocumento = vdocumentosflota.iddocumento, estado = true, estadotipo = true }; db.vdocumentosflota.Add(docFlota); db.SaveChanges(); } } } ConsultaDatosCreacion(vdocumentosflota); } BuscarFavoritos(menu); System.Collections.Generic.List <vdocumentosflota> asd = db.vdocumentosflota.Where(x => x.iddocumento == vdocumentosflota.iddocumento).ToList(); var listaDocu = (from td in db.tipo_documentos select new { td.id, nombre = td.tipo_nombre }).ToList(); System.Collections.Generic.IEnumerable <int> numerodocumentos = asd.Select(d => d.id_tipo_documento); // ViewBag.tercero_id = new SelectList(terceros, "id", "docyNombre"); ViewBag.tdocumento = new MultiSelectList(listaDocu, "id", "nombre", numerodocumentos); ViewBag.docFlotas = new SelectList(db.documento_facturacion.Where(x => x.docfac_estado).OrderBy(x => x.docfac_nombre), "docfac_id", "docfac_nombre", asd.First().iddocumento); return(View(vdocumentosflota)); }