/// <summary> /// Carga las fechas de la temporada /// </summary> /// <history> /// [vku] 27/Jul/2016 Created /// </history> private async void LoadSeasonDates() { try { List <SeasonDate> lstSeasonDates = await BRSeasons.GetSeasonDates(); _lstSeasonDates = lstSeasonDates.Where(sd => sd.sdss == season.ssID && sd.sdStartD.Year == _year.Year).ToList(); dgrDates.ItemsSource = _lstSeasonDates; _lstOldSeasonDates.Clear(); List <SeasonDate> lstOldSeasonDates = await BRSeasons.GetSeasonDates(); _lstOldSeasonDates = lstOldSeasonDates.Where(sd => sd.sdss == season.ssID && sd.sdStartD.Year == _year.Year).ToList(); _lstSeasonDatesRange = lstSeasonDates.Where(sd => sd.sdStartD.Year == _year.Year).ToList(); LoadSeasonsDatesUnassigned(); } catch (Exception ex) { UIHelper.ShowMessage(ex); } }
/// <summary> /// guarda o actualiza el registro dependiendo del modo en que se abrió /// </summary> /// <param name="sender"></param> /// <param name="e"></param> /// <history> /// [vku] 28/Jul/2016 Created /// </history> private async void btnAccept_Click(object sender, RoutedEventArgs e) { btnAccept.Focus(); if (ValidateAllRangeDates()) { List <SeasonDate> lstSeasonDates = (List <SeasonDate>)dgrDates.ItemsSource; if (ObjectHelper.IsEquals(season, oldSeason) && enumMode != EnumMode.Add && ObjectHelper.IsListEquals(_lstSeasonDates, _lstOldSeasonDates)) { _isClosing = true; Close(); } else { skpStatus.Visibility = Visibility.Visible; txtStatus.Text = "Saving Data..."; string sMsj = ValidateHelper.ValidateForm(this, "Season"); if (sMsj == "") { List <SeasonDate> lstAdd = lstSeasonDates.Where(sd => !_lstOldSeasonDates.Any(sdo => sdo.sdss == sd.sdss)).ToList(); List <SeasonDate> lstDel = _lstOldSeasonDates.Where(sd => !lstSeasonDates.Any(sdo => sdo.sdss == sd.sdss && sdo.sdStartD == sd.sdStartD && sdo.sdEndD == sd.sdEndD)).ToList(); List <SeasonDate> lstChanged = lstSeasonDates.Where(sd => !_lstOldSeasonDates.Any(sdo => sdo.sdss == sd.sdss && sdo.sdStartD == sd.sdStartD && sdo.sdEndD == sd.sdEndD)).ToList(); int nRes = await BRSeasons.SaveSeason(season, (enumMode == EnumMode.Edit), lstAdd, lstDel, lstChanged); skpStatus.Visibility = Visibility.Collapsed; UIHelper.ShowMessageResult("Season", nRes); if (nRes > 0) { _isClosing = true; DialogResult = true; Close(); } } else { UIHelper.ShowMessage(sMsj); } } } else { UIHelper.ShowMessage("Specify 'From' and 'To' for all range dates"); } }
/// <summary> /// Carga las temporadas /// </summary> /// <param name="season">Objeto a seleccionar</param> /// <history> /// [vku] 26/Jul/2016 Created /// </history> protected async void LoadSeasons(Season season = null) { try { status.Visibility = Visibility.Visible; int nIndex = 0; List <Season> lstSeasons = await BRSeasons.GetSeasons(_nStatus, _seasonFilter); dgrSeasons.ItemsSource = lstSeasons; if (lstSeasons.Count > 0 && season != null) { season = lstSeasons.Where(ss => ss.ssID == season.ssID).FirstOrDefault(); nIndex = lstSeasons.IndexOf(season); } GridHelper.SelectRow(dgrSeasons, nIndex); StatusBarReg.Content = lstSeasons.Count + " Seasons."; status.Visibility = Visibility.Collapsed; } catch (Exception ex) { UIHelper.ShowMessage(ex); } }
/// <summary> /// Valida las fechas ingresadas /// </summary> /// <param name="sender"></param> /// <param name="e"></param> /// <history> /// [vku] 28/Jul/2016 Created /// </history> private void dgrDates_CellEditEnding(object sender, DataGridCellEditEndingEventArgs e) { if (e.EditAction == DataGridEditAction.Cancel) { isCancel = true; } else { isCancel = false; changedTextBox = e.EditingElement as TextBox; if (changedTextBox.Text.ToString() != "") { if (ValidateHelper.IsDate(changedTextBox.Text.ToString())) { string ssd = changedTextBox.Text.ToString(); DateTime ssDate = Convert.ToDateTime(ssd); if (ssDate.Year == _year.Year) { ValidateRangeDates(ssDate, e.Column.SortMemberPath.ToString(), e.Row.IsNewItem, Convert.ToInt32(e.Row.GetIndex().ToString())); if (!isCancel) { List <RangeDatesTraslape> lstRangeDates = new List <RangeDatesTraslape>(); RangeDatesTraslape lstRangeTranslape = new RangeDatesTraslape(); if (isEdit) { lstRangeDates = BRSeasons.GetRangeDatesForValidateTraslapeIsEdit(ssDate, season.ssID); lstRangeTranslape = lstRangeDates.Cast <RangeDatesTraslape>().FirstOrDefault(); } else { lstRangeDates = BRSeasons.GetRangeDatesForValidateTraslape(ssDate); lstRangeTranslape = lstRangeDates.Cast <RangeDatesTraslape>().FirstOrDefault(); } if (lstRangeDates.Count > 0) { isCancel = true; UIHelper.ShowMessage("The date is in the range of dates " + "(" + lstRangeTranslape.sdStartD.ToShortDateString() + " to " + lstRangeTranslape.sdEndD.ToShortDateString() + ")" + " of season " + "'" + lstRangeTranslape.ssN + "'" + ". " + "Specify another date."); SeasonDate data = e.Row.DataContext as SeasonDate; if (isEdit) { string strColumn = e.Column.SortMemberPath.ToString(); switch (strColumn) { case "sdStartD": changedTextBox.Text = data.sdStartD.ToShortDateString(); break; case "sdEndD": changedTextBox.Text = data.sdEndD.ToShortDateString(); break; } } else { changedTextBox.Text = string.Empty; } } else { GridHelper.UpdateSourceFromARow(sender as DataGrid); } } } else { isCancel = true; UIHelper.ShowMessage("The date does not belong to the year being edited " + _year.Year, MessageBoxImage.Exclamation, "IM.Administrator"); changedTextBox.Text = string.Empty; } } else { isCancel = true; UIHelper.ShowMessage("Invalid Date", MessageBoxImage.Error, "IM.Administrator"); changedTextBox.Text = string.Empty; } } else { if (e.Column.SortMemberPath == "sdEndD") { UIHelper.ShowMessage("Specify a Date", MessageBoxImage.Error, "IM.Administrator"); e.Cancel = true; } else { isCancel = true; } } } }