// *** Start programmer edit section *** (BusinessServer CustomMembers) // *** End programmer edit section *** (BusinessServer CustomMembers) // *** Start programmer edit section *** (OnUpdateExceptionDay CustomAttributes) /// <summary> /// /// </summary> /// <param name="UpdatedObject"></param> /// <returns></returns> // *** End programmer edit section *** (OnUpdateExceptionDay CustomAttributes) public virtual ICSSoft.STORMNET.DataObject[] OnUpdateExceptionDay(IIS.BusinessCalendar.ExceptionDay UpdatedObject) { // *** Start programmer edit section *** (OnUpdateExceptionDay) if (UpdatedObject.GetStatus() == ObjectStatus.Deleted) { DataServiceProvider.DataService.LoadObject(ExceptionDay.Views.ExceptionDayE, UpdatedObject, false, false); if (UpdatedObject.WorkTimeDefinition != null) { TSSaveHelper.DeleteTimeSpans(UpdatedObject); WorkTimeDefinition tempWts = UpdatedObject.WorkTimeDefinition; UpdatedObject.WorkTimeDefinition = null; DataServiceProvider.DataService.UpdateObject(UpdatedObject); UpdatedObject.SetStatus(ObjectStatus.Deleted); return(new DataObject[2] { tempWts, UpdatedObject }); } else { UpdatedObject.SetStatus(ObjectStatus.Deleted); } } return(new ICSSoft.STORMNET.DataObject[0]); // *** End programmer edit section *** (OnUpdateExceptionDay) }
/// <summary> /// Метод обновляет временные промежутки в базе данных для дня-исключения /// </summary> /// <param name="UpdatedObject">Изменяемый день-исключение</param> public static void UpdateTimeSpans(IIS.BusinessCalendar.ExceptionDay UpdatedObject) { switch (UpdatedObject.GetStatus()) { case ObjectStatus.Created: { using (var ds = (SQLDataService)DataServiceProvider.DataService) { UpdatedObject.WorkTimeDefinition = new WorkTimeDefinition(); ds.UpdateObject(UpdatedObject); } fillWorkTimeDefinition(UpdatedObject.WorkTimeDefinition, UpdatedObject.WorkTimeSpans); } break; case ObjectStatus.Deleted: { deleteExsTimeSpans(UpdatedObject.WorkTimeDefinition); } break; default: { deleteExsTimeSpans(UpdatedObject.WorkTimeDefinition); if (UpdatedObject.WorkTimeSpans.Count > 0) { fillWorkTimeDefinition(UpdatedObject.WorkTimeDefinition, UpdatedObject.WorkTimeSpans); } } break; } }