public async Task <IActionResult> Create([Bind("Idomv,Idsus,Idoup,Apiestado,Apitransaccion,Usucre,Feccre,Usumod,Fecmod")] OpeMovimientos opeMovimientos) { if (ModelState.IsValid) { try { //Buscamos si el Movimiento existe en estado ELIMINADO var opeMovExistente = await _context.OpeMovimientos .SingleOrDefaultAsync(m => m.Idsus == opeMovimientos.Idsus && m.Idoup == opeMovimientos.Idoup); if (opeMovExistente == null) { opeMovimientos.Usucre = this.GetLogin(); _context.Add(opeMovimientos); } else { opeMovExistente.Usumod = this.GetLogin(); opeMovExistente.Apitransaccion = "HABILITAR"; _context.Update(opeMovExistente); } await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } catch (Exception exp) { if (exp.InnerException is NpgsqlException) { ViewBag.ErrorDb = exp.InnerException.Message; } else { ModelState.AddModelError("", exp.Message); } var Upms1 = _context.OpeUpms .Where(oup => oup.Idcde == GetDepartamentoId() && oup.Idopy == GetProyectoId()) .Select(s => new { IdUpm = s.Idoup, NombreUpm = $"{s.Codigo} - {s.Nombre}" }) .ToList(); ViewData["Idoup"] = new SelectList(Upms1, "IdUpm", "NombreUpm"); ViewData["Idsus"] = new SelectList(_context.SegUsuarios, SegUsuarios.Fields.Idsus.ToString(), SegUsuarios.Fields.Login.ToString()); return(View()); } } var Upms2 = _context.OpeUpms .Where(oup => oup.Idcde == GetDepartamentoId() && oup.Idopy == GetProyectoId()) .Select(s => new { IdUpm = s.Idoup, NombreUpm = $"{s.Codigo} - {s.Nombre}" }) .ToList(); ViewData["Idoup"] = new SelectList(Upms2, "IdUpm", "NombreUpm"); ViewData["Idsus"] = new SelectList(_context.SegUsuarios, SegUsuarios.Fields.Idsus.ToString(), SegUsuarios.Fields.Login.ToString(), opeMovimientos.Idsus); return(View(opeMovimientos)); }
public async Task <IActionResult> Edit(long id, [Bind("Idomv,Idsus,Idoup,Apiestado,Apitransaccion,Usucre,Feccre,Usumod,Fecmod")] OpeMovimientos opeMovimientos) { if (id != opeMovimientos.Idomv) { return(NotFound()); } if (ModelState.IsValid) { try { opeMovimientos.Usumod = this.GetLogin(); opeMovimientos.Apitransaccion = "MODIFICAR"; _context.Update(opeMovimientos); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!OpeMovimientosExists(opeMovimientos.Idomv)) { return(NotFound()); } throw; } catch (Exception exp) { if (exp.InnerException is NpgsqlException) { ViewBag.ErrorDb = exp.InnerException.Message; } else { ModelState.AddModelError("", exp.Message); } var Upms1 = _context.OpeUpms .Where(oup => oup.Idcde == GetDepartamentoId() && oup.Idopy == GetProyectoId()) .Select(s => new { IdUpm = s.Idoup, NombreUpm = $"{s.Codigo} - {s.Nombre}" }) .ToList(); ViewData["Idoup"] = new SelectList(Upms1, "IdUpm", "NombreUpm"); ViewData["Idsus"] = new SelectList(_context.SegUsuarios, SegUsuarios.Fields.Idsus.ToString(), SegUsuarios.Fields.Login.ToString()); return(View(opeMovimientos)); } return(RedirectToAction(nameof(Index))); } var Upms2 = _context.OpeUpms .Where(oup => oup.Idcde == GetDepartamentoId() && oup.Idopy == GetProyectoId()) .Select(s => new { IdUpm = s.Idoup, NombreUpm = $"{s.Codigo} - {s.Nombre}" }) .ToList(); ViewData["Idoup"] = new SelectList(Upms2, "IdUpm", "NombreUpm"); ViewData["Idsus"] = new SelectList(_context.SegUsuarios, SegUsuarios.Fields.Idsus.ToString(), SegUsuarios.Fields.Login.ToString(), opeMovimientos.Idsus); return(View(opeMovimientos)); }