예제 #1
0
 public ActionResult Create(TipoDatoAtributo tipodatoatributo)
 {
     if (tipodatoatributo.codigo != null)
     {
         tipodatoatributo.codigo = tipodatoatributo.codigo.Replace("  ", " ").Trim();
         if (0 < db.TipoDatoAtributo.Where(c => c.codigo == tipodatoatributo.codigo).Count())
             ModelState.AddModelError("codigo", "El código debe ser único");
     }
     if (tipodatoatributo.descripcion != null)
     {
         tipodatoatributo.descripcion = tipodatoatributo.descripcion.Replace("  ", " ").Trim();
         if (0 < db.TipoDatoAtributo.Where(c => c.descripcion == tipodatoatributo.descripcion).Count())
             ModelState.AddModelError("descripcion", "La descripción debe ser única");
     }
     if (tipodatoatributo.idoperador > 0 && tipodatoatributo.idoperador != TipoDatoOperador.DIFERENTE && (tipodatoatributo.idtipodato == TipoDato.TEXTO || tipodatoatributo.idtipodato == TipoDato.ALFANUMERICO) && (tipodatoatributo.valorcadena == null || tipodatoatributo.valorcadena.Trim() == ""))
         ModelState.AddModelError("valorcadena", "Ingrese un valor de referencia");
     if (tipodatoatributo.idoperador > 0 && (tipodatoatributo.idtipodato == TipoDato.FECHA || tipodatoatributo.idtipodato == TipoDato.MONTO || tipodatoatributo.idtipodato == TipoDato.NUMERO) && (tipodatoatributo.idreferencia == null || tipodatoatributo.idreferencia == 0))
         ModelState.AddModelError("idreferencia", "Seleccione un valor de referencia");
     if (ModelState.IsValid)
     {
         if (tipodatoatributo.idreferencia == TipoDatoReferencia.CERO || tipodatoatributo.idreferencia == TipoDatoReferencia.UNO)
             tipodatoatributo.valorentero = db.TipoDatoReferencia.Find(tipodatoatributo.idtipodato, tipodatoatributo.idreferencia).valorentero;
         if (tipodatoatributo.idoperador > 0)
             tipodatoatributo.etiqueta = (db.TipoDatoOperador.Find(tipodatoatributo.idtipodato, tipodatoatributo.idoperador).descripcion + " " + ((tipodatoatributo.idtipodato == TipoDato.TEXTO || tipodatoatributo.idtipodato == TipoDato.ALFANUMERICO) ? ((tipodatoatributo.valorcadena == null || tipodatoatributo.valorcadena.Trim() == "") ? "[vacío]" : tipodatoatributo.valorcadena) : db.TipoDatoReferencia.Find(tipodatoatributo.idtipodato, tipodatoatributo.idreferencia).descripcion));
         db.TipoDatoAtributo.Add(tipodatoatributo);
         db.SaveChanges();
         TempData["alerta"] = "Atributo de tipo de dato registrado con éxito";
         return RedirectToAction("Create");
     }
     ViewBag.idtipodato = new SelectList(db.TipoDato, "idtipodato", "descripcion", tipodatoatributo.idtipodato);
     ViewBag.idoperador = new SelectList(db.TipoDatoOperador.Where(c => c.idtipodato == tipodatoatributo.idtipodato), "idoperador", "descripcion", tipodatoatributo.idoperador);
     ViewBag.idreferencia = new SelectList(db.TipoDatoReferencia.Where(c => c.idtipodato == tipodatoatributo.idtipodato), "idreferencia", "descripcion", tipodatoatributo.idreferencia);
     ViewBag.ltipodatoatributo = db.TipoDatoAtributo.OrderBy(c => c.idtipodato).ThenBy(c => c.codigo).ToList();
     return View(tipodatoatributo);
 }
예제 #2
0
 public ActionResult Create()
 {
     ViewBag.idtipodato = new SelectList(db.TipoDato, "idtipodato", "descripcion");
     ViewBag.idoperador = new SelectList(db.TipoDatoOperador.Where(c => c.idtipodato == 0), "idoperador", "descripcion");
     ViewBag.idreferencia = new SelectList(db.TipoDatoReferencia.Where(c => c.idtipodato == 0), "idreferencia", "descripcion");
     ViewBag.ltipodatoatributo = db.TipoDatoAtributo.OrderBy(c => c.idtipodato).ThenBy(c => c.codigo).ToList();
     TipoDatoAtributo tipodatoatributo = new TipoDatoAtributo() { idtipodato = 0 };
     return View(tipodatoatributo);
 }