public void GuardarGraficos() { try { HayCambios = false; if (ListaGraficos != null && ListaGraficos.Count > 0) { BdGraficos.GuardarGraficos(ListaGraficos.Where(gg => gg.Nuevo || gg.Modificado)); } if (_listaborrados.Count > 0) { BdGraficos.BorrarGraficos(_listaborrados); _listaborrados.Clear(); } if (_valoracionesborradas.Count > 0) { BdValoracionesGraficos.BorrarValoraciones(_valoracionesborradas); _valoracionesborradas.Clear(); } } catch (Exception ex) { Mensajes.VerError("GraficosViewModel.GuardarGraficos", ex); HayCambios = true; } }
// Ejecución del comando private void Aceptar(object parametro) { if (parametro == null) { return; } Window ventana = (Window)parametro; try { // Si la fecha ya existe, mostramos mensaje if (BdGruposGraficos.ExisteGrupo(FechaActual)) { mensajes.VerMensaje("Ya existe un grupo con la fecha elegida.", "ERROR"); return; } if (NuevoMarcado) { if (String.IsNullOrEmpty(Notas.Trim())) { Notas = FechaActual.ToString("dd-MM-yyyy"); } BdGruposGraficos.NuevoGrupo(FechaActual, Notas); ventana.DialogResult = true; ventana.Close(); } if (RepetirMarcado) //TODO: Sustituir por grupo seleccionado. { ObservableCollection <Grafico> graficos = BdGraficos.getGraficosGrupoPorFecha(GrupoSeleccionado.Validez); ObservableCollection <ValoracionGrafico> valoraciones = new ObservableCollection <ValoracionGrafico>(); if (String.IsNullOrEmpty(Notas.Trim())) { Notas = FechaActual.ToString("dd-MM-yyyy"); } int idgruponuevo = BdGruposGraficos.NuevoGrupo(FechaActual, Notas); int idgraficonuevo = -1; foreach (Grafico grafico in graficos) { grafico.IdGrupo = idgruponuevo; idgraficonuevo = BdGraficos.InsertarGrafico(grafico); valoraciones = BdValoracionesGraficos.getValoraciones(grafico.Id); foreach (ValoracionGrafico valoracion in valoraciones) { valoracion.IdGrafico = idgraficonuevo; BdValoracionesGraficos.InsertarValoracion(valoracion); } } // Cerramos la ventana enviando True. ventana.DialogResult = true; ventana.Close(); } if (WordMarcado) { if (String.IsNullOrEmpty(ArchivoWord)) { mensajes.VerMensaje("No ha seleccionado ningún archivo.", "ERROR"); return; } CrearGrupoDeWord(); // Cerramos la ventana enviando True. ventana.DialogResult = true; ventana.Close(); } } catch (Exception ex) { mensajes.VerError("VentanaNuevoGrupoVM.Aceptar", ex); } }