public MensajeEducacionalViewModel MostrarMensajeEducacional(int id) { var mensajeEducacional = _db.MensajeEducacional.Find(id); if (mensajeEducacional == null) { return(null); } var mensEducacionalModel = new MensajeEducacionalViewModel { IdMensajeEducacional = mensajeEducacional.IdMensajeEducacional, SemanaEmbarazo = mensajeEducacional.SemanaEmbarazo, EstadoId = mensajeEducacional.EstadoId, UsuarioEditor = mensajeEducacional.UsuarioEditor, Contenido = new List <ContenidoMensajeEducacionalViewModel>() }; foreach (var mensContenidoModel in mensajeEducacional.ContenidoMensajeEducacional.Select(mcd => new ContenidoMensajeEducacionalViewModel { IdContenidoMensajeEducacional = mcd.IdContenidoMensajeEducacional, IdMensajeEducacional = mcd.IdMensajeEducacional, DiaSemana = mcd.DiaSemana, Contenido = mcd.Contenido })) { mensEducacionalModel.Contenido.Add(mensContenidoModel); } return(mensEducacionalModel); }
public JsonResult Edit(MensajeEducacionalViewModel mensajeEducacional) { try { if (ModelState.IsValid) { var result = _mensajeEducacionalManager.GrabarMensaje(mensajeEducacional); if (result < 1) { return (Json( new { Success = 0, ex = new Exception("No se pudo registrar el mensaje.").Message.ToString() })); } RegistrarAccion((byte)AccionSesion.Actualizar, (byte)ObjetoSesion.EditarMensEducacion, result); return(Json(new { Success = 1, IdMensajeEducacional = result, ex = "" })); } } catch (Exception ex) { // If Sucess== 0 then Unable to perform Save/Update Operation and send Exception to View as JSON return(Json(new { Success = 0, ex = ex.Message.ToString() })); } return(Json(new { Success = 0, ex = new Exception("No se pudo registrar el mensaje.").Message.ToString() })); }
public JsonResult Crear(MensajeEducacionalViewModel mensajeEducacional) { try { if (ModelState.IsValid) { mensajeEducacional.UsuarioEditor = ObtenerUsuarioKeyLogeado(); var result = _mensajeEducacionalManager.GrabarMensaje(mensajeEducacional); switch (result) { case 0: return (Json( new { Success = 0, ex = new Exception("No se pudo registrar el mensaje.").Message.ToString() })); case -1: return (Json( new { Success = 0, ex = new Exception("Ya fueron configurados mensajes para la semana.").Message.ToString() })); } RegistrarAccion((byte)AccionSesion.Crear, (byte)ObjetoSesion.CrearMensEducacion, result); return(Json(new { Success = 1, IdMensajeEducacional = result, ex = "" })); } } catch (Exception ex) { // If Sucess== 0 then Unable to perform Save/Update Operation and send Exception to View as JSON return(Json(new { Success = 0, ex = ex.Message.ToString() })); } return(Json(new { Success = 0, ex = new Exception("No se pudo registrar el mensaje").Message.ToString() })); }
public int GrabarMensaje(MensajeEducacionalViewModel mensajeEducacional) { try { var meId = mensajeEducacional.IdMensajeEducacional; MensajeEducacional mesEducacional; if (meId > 0) { mesEducacional = _db.MensajeEducacional.FirstOrDefault(me => me.IdMensajeEducacional == meId); if (mesEducacional == null) { return(0); } _db.Entry(mesEducacional).State = EntityState.Modified; if (mensajeEducacional.Contenido != null && mensajeEducacional.Contenido.Any()) { foreach (var detail in mensajeEducacional.Contenido) { detail.MensajeEducacional = mensajeEducacional; if (detail.IdContenidoMensajeEducacional == 0) { var newCont = new ContenidoMensajeEducacional() { IdMensajeEducacional = meId, DiaSemana = detail.DiaSemana, Contenido = detail.Contenido }; mesEducacional.ContenidoMensajeEducacional.Add(newCont); } else { var contMesEducacional = _db.ContenidoMensajeEducacional.Single(x => x.IdContenidoMensajeEducacional == detail.IdContenidoMensajeEducacional); contMesEducacional.DiaSemana = detail.DiaSemana; contMesEducacional.Contenido = detail.Contenido; _db.Entry(contMesEducacional).State = EntityState.Modified; } } if (mesEducacional.ContenidoMensajeEducacional != null) { foreach (var cme in mesEducacional.ContenidoMensajeEducacional.Where(x => mensajeEducacional.Contenido.All(u => u.IdContenidoMensajeEducacional != x.IdContenidoMensajeEducacional)).ToList()) { _db.ContenidoMensajeEducacional.Remove(cme); } } } else { mesEducacional.ContenidoMensajeEducacional = null; var contenidoToRemove = _db.ContenidoMensajeEducacional.Where(x => x.IdMensajeEducacional == meId); foreach (var mec in contenidoToRemove) { _db.ContenidoMensajeEducacional.Remove(mec); } } _db.SaveChanges(); return(meId); } var mesEnSemana = _db.MensajeEducacional.FirstOrDefault(me => me.SemanaEmbarazo == mensajeEducacional.SemanaEmbarazo); if (mesEnSemana != null) { return(-1); } mesEducacional = new MensajeEducacional() { SemanaEmbarazo = mensajeEducacional.SemanaEmbarazo, UsuarioEditor = mensajeEducacional.UsuarioEditor, EstadoId = 1, FechaCreacion = DateTime.Now }; foreach (var contenido in mensajeEducacional.Contenido.Select(content => new ContenidoMensajeEducacional() { DiaSemana = content.DiaSemana, Contenido = content.Contenido })) { mesEducacional.ContenidoMensajeEducacional.Add(contenido); } _db.MensajeEducacional.Add(mesEducacional); _db.SaveChanges(); return(mesEducacional.IdMensajeEducacional); } catch (Exception e) { return(0); } }