private bool valid(ParmModificarViewModel model) { var result = true; if (_context.Parms.Count(e => e.ParmId != model.ParmId && e.EmpId == model.ParmEmpId) > 0) { ModelState.AddModelError("ParmId", $"Ya existe otro parámetro con el Id especificado para la empresa {model.ParmEmpId}"); } if (model.Tipo == 0 && string.IsNullOrEmpty(model.ParmValTxt)) { ModelState.AddModelError("ParmValTxt", "Debe especificar un valor para el parámetro"); result = false; } if (model.Tipo == 1 && model.ParmValNum == 0) { ModelState.AddModelError("ParmValNum", "Debe especificar un valor para el parámetro"); result = false; } if (model.Tipo == 2 && string.IsNullOrEmpty(model.ParmBool)) { ModelState.AddModelError("ParmBool", "Debe especificar un valor para el parámetro"); result = false; } return(result); }
public IActionResult Update(string id) { var parm = _context.Parms.Include(e => e.Empresa).FirstOrDefault(e => e.ParmId == id); if (parm == null) { this.ShowSuccess("El parámetro que intenta modificar ya no existe"); return(this.RedirectAjax(Url.Action("Index"))); } var model = new ParmModificarViewModel() { ParmId = parm.ParmId, ParmEmpId = parm.EmpId, ParmUniId = parm.UnId, ParmUniNombre = parm.UnId, ParmDesc = parm.ParmDesc, ParmValTxt = _parameters.MustEncript(parm.ParmId) ? _security.DesEncriptar(parm.ParmValTxt) : parm.ParmValTxt, ParmValNum = parm.ParmValNum, Tipo = parm.Tipo, ParmBool = parm.ParmValTxt, ParmEmpNombre = (parm.Empresa != null) ? parm.Empresa.EmpRazonSocial : "" }; return(PartialView("_UpdatePartial", model)); }
public IActionResult Update(ParmModificarViewModel model) { if (ModelState.IsValid && this.valid(model)) { var parm = _context.Parms.FirstOrDefault(e => e.ParmId == model.ParmId && e.EmpId == model.ParmEmpId); parm.ParmDesc = model.ParmDesc; parm.EmpId = model.ParmEmpId; this.cargarValor(parm, model.Tipo, model.ParmValTxt, model.ParmValNum, model.ParmBool); _context.Parms.Update(parm); _context.SaveChanges(); this.ShowSuccess("El parámetro se ha modificado correctamente"); return(this.RedirectAjax(Url.Action("Index"))); } ViewBag.Empresas = new SelectList(_context.Empresas.Filter(User), "EmpId", "EmpRazonSocial"); return(PartialView("_UpdatePartial", model)); }