private async void GuardarAsistencia() { try { if (AgendaDetalle != null) { var Lista = new List <AGENDA_ACT_LIB_DETALLE>(); #region Valida Anteriores Programadas aal = new cAgendaActividadLibertad().Obtener((int)aal.ID_AGENDA_ACTIVIDAD_LIBERTAD); var lista = aal.AGENDA_ACT_LIB_DETALLE.Where(w => w.ID_DETALLE < AgendaDetalle.ID_DETALLE && w.ASISTENCIA == 0); if (lista != null) { if (lista.Count() > 0) { if (await ConfirmarEliminar("Validación", "Tienes fechas anteriores sin asistencia, ¿Deseas ponerles falta?") == 1) { foreach (var l in lista) { Lista.Add(new AGENDA_ACT_LIB_DETALLE() { ID_AGENDA_ACTIVIDAD_LIBERTAD = l.ID_AGENDA_ACTIVIDAD_LIBERTAD, ID_DETALLE = l.ID_DETALLE, FECHA = l.FECHA, HORA_INICIO = l.HORA_INICIO, HORA_FIN = l.HORA_FIN, ASISTENCIA = 2, OBSERVACION = l.OBSERVACION }); } } } } #endregion var det = new AGENDA_ACT_LIB_DETALLE(); det.ID_AGENDA_ACTIVIDAD_LIBERTAD = AgendaDetalle.ID_AGENDA_ACTIVIDAD_LIBERTAD; det.ID_DETALLE = AgendaDetalle.ID_DETALLE; det.FECHA = AgendaDetalle.FECHA; det.HORA_INICIO = AgendaDetalle.HORA_INICIO; det.HORA_FIN = AgendaDetalle.HORA_FIN; if (ChkAsistencia) { det.ASISTENCIA = 1;//Asistencia } else if (!ChkAsistencia && string.IsNullOrEmpty(Observacion)) { det.ASISTENCIA = 2; //Falta } else { det.ASISTENCIA = 3; //Falta Justificada } det.OBSERVACION = Observacion; if (new cAgendaActividadLibertadDetalle().Actualizar(det, Lista)) { ChkAsistencia = false; Observacion = string.Empty; AgregarHora = false; CargarCalendario(); } } } catch (Exception ex) { StaticSourcesViewModel.ShowMessageError("Algo pasó...", "Ocurrió un error", ex); } }
private async void AbrirAgenda(object obj) { try { var gh = (GRUPO_HORARIO)obj; if (gh != null) { AgregarHora = true; if (gh.HORA_INICIO != null) { FechaTitulo = string.Format("{0:dd/MM/yyyy}", gh.HORA_INICIO.Value); } else { FechaTitulo = string.Empty; } AgendaDetalle = aal.AGENDA_ACT_LIB_DETALLE.FirstOrDefault(w => w.FECHA.Value.Date == gh.HORA_INICIO.Value.Date); } //ListArea = ListArea ?? await StaticSourcesViewModel.CargarDatosAsync<ObservableCollection<AREA>>(() => new ObservableCollection<AREA>(new cArea().GetData().Where(w => w.ID_TIPO_AREA != 5))); //ListEstatusGrupo = ListEstatusGrupo ?? await StaticSourcesViewModel.CargarDatosAsync<ObservableCollection<GRUPO_HORARIO_ESTATUS>>(() => new ObservableCollection<GRUPO_HORARIO_ESTATUS>(new cGrupoHorarioEstatus().GetData())); //SelectedArea = null; //SelectedEstatusGrupo = 1; //EditFechaInicio = null; //EditFechaFin = null; //SelectedFecha = null; //await TaskEx.Delay(1); //EntityUpdate = null; //AgregarFecha = Visibility.Collapsed; //PopUpsViewModels.ShowPopUp(this, PopUpsViewModels.TipoPopUp.EDITAR_FECHA); //if (obj == null) // return; //// se valida de que tipo es el objeto //if (obj is GRUPO_HORARIO) //{ // EntityUpdate = (GRUPO_HORARIO)obj; // SelectedArea = EntityUpdate.ID_AREA; // SelectedEstatusGrupo = EntityUpdate.ESTATUS; // EditFechaInicio = EntityUpdate.HORA_INICIO; // EditFechaFin = EntityUpdate.HORA_TERMINO; // SelectedFecha = EntityUpdate.HORA_INICIO.Value.Date; //} //else // SelectedFecha = (DateTime)obj; //await TaskEx.Delay(1); //if (ListInternosDia == null) // await TaskEx.Delay(1); //DatagridHorario.ItemsSource = ListInternosDia.Where(w => w.ListHorario.Any()); } catch (Exception ex) { StaticSourcesViewModel.ShowMessageError("Algo pasó...", "Ocurrió un error al abrir agenda", ex); } }