public Mensaje deleteCronograma([FromBody] UtilsJson.ACronograma cronograma) { Mensaje mensaje = null; try { if (cronograma != null) { if (!string.IsNullOrWhiteSpace(cronograma.token_string)) { if (AutenticacionToken.validateToken(cronograma.token_string) == 1) { Institucion institucion = _repositorio.Get <Institucion>(cronograma.institucionId); Cronograma cronogramaDB = _repositorio.Get <Cronograma>(cronograma.id); if (institucion != null && cronogramaDB != null) { if (AutenticacionToken.validateUserToken(cronograma.token_string, institucion.logueo.correo_electronico)) { _repositorio.Delete <Conferencista>(cronogramaDB.id); mensaje = new Mensaje(EnumTipoMensaje.Notificacion, "Notificación", "Cronograma fue eliminada exitosamente."); } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se encontro el evento solicitada o esta asociada a otra institucion."); } } else { mensaje = new Mensaje(EnumTipoMensaje.Expiracion, "Error", "La sesion actual ha expirado. Inicie sesion"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se puede eliminar un objeto nulo"); } } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { var sb = new System.Text.StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", sb.ToString()); SystemLog log = new SystemLog(); log.ErrorLog(sb.ToString()); throw new Exception(sb.ToString()); } return(mensaje); }
public Mensaje editCronograma([FromBody] UtilsJson.ACronograma cronograma) { Mensaje mensaje = null; try { if (cronograma != null) { if (!string.IsNullOrWhiteSpace(cronograma.token_string)) { if (AutenticacionToken.validateToken(cronograma.token_string) == 1) { Institucion institucion = _repositorio.Get <Institucion>(cronograma.institucionId); Cronograma cronogramaDB = _repositorio.Get <Cronograma>(cronograma.id); if (institucion != null && cronogramaDB != null) { if (AutenticacionToken.validateUserToken(cronograma.token_string, institucion.logueo.correo_electronico)) { string nombre = cronograma.nombre; string tema = cronograma.tema; string descripcion = cronograma.descripcion; string color = cronograma.color; long id_sala = cronograma.salaMesaId; bool estado = cronograma.estado; long id_evento = cronograma.eventoId; if (!string.IsNullOrWhiteSpace(cronograma.hora_inicio) && !string.IsNullOrWhiteSpace(cronograma.hora_fin)) { DateTime hora_inicio = Convert.ToDateTime(cronograma.hora_inicio); DateTime hora_fin = Convert.ToDateTime(cronograma.hora_fin); Publicacion publicacion = _repositorio.Get <Publicacion>(id_evento); SalaMesa salaMesa = _repositorio.Get <SalaMesa>(id_sala); if (DateTime.Compare(hora_inicio, hora_fin) < 0) { if (publicacion != null && salaMesa != null) { cronogramaDB.evento = publicacion; cronogramaDB.sala = salaMesa; cronogramaDB.nombre = nombre; cronogramaDB.tema = tema; cronogramaDB.descripcion = descripcion; cronogramaDB.hora_inicio = hora_inicio; cronogramaDB.hora_fin = hora_fin; cronogramaDB.estado = estado; cronogramaDB.fecha_ult_modificacion = DateTime.Now; _repositorio.SaveOrUpdate <Cronograma>(cronogramaDB); mensaje = new Mensaje(EnumTipoMensaje.Notificacion, "Notificación", "Cronograma editado exitosamente."); } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "El evento o la sala solicitada no existe. verifique"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "La hora de inicio es posterior a la hora de finalizacion. verifique"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "La hora de inicio es posterior a la hora de finalizacion. verifique"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se encontro la sala solicitada o esta asociada a otra institucion."); } } else { mensaje = new Mensaje(EnumTipoMensaje.Expiracion, "Error", "La sesion actual ha expirado. Inicie sesion"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se puede insertar un objeto nulo"); } } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { var sb = new System.Text.StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", sb.ToString()); SystemLog log = new SystemLog(); log.ErrorLog(sb.ToString()); throw new Exception(sb.ToString()); } return(mensaje); }