private void ucOpenCloseHours_OnEntityChanged(EntityChangedArgs args) { if (args.ChangedType == ChangedEntityType.New) { OpenCloseTimes.Add((StoreWorkingTime)args.Entity); } else if (args.ChangedType == ChangedEntityType.Edit) { OpenCloseTimes.ResetItemById(args.Entity.ID); } if (IsEmptyOrHasRangeToEternal()) { InfoMessage(GetLocalized("WarningNoTimeRangeToEternity")); } }
private void newOpencloseToolStripMenuItem_Click(object sender, EventArgs e) { if (OpenCloseTimes != null) { StoreWorkingTime newtime = OpenCloseTimes.BuildNewEntity(); if (newtime != null) { ucOpenCloseHours.EntityOpenCloseTime = newtime; } else { ErrorMessage(GetLocalized("ErrorCantNewOpenCloseOutOfRange")); return; } } }
private void DeleteFocusedWorkingHours() { if (FocusedEntity != null) { if (FocusedEntity.BeginTime > DateTime.Today) { if (QuestionMessageYes(GetLocalized("QuestionRemoveStoreOpenClose"))) { StoreWorkingTime previousWorkingTime = OpenCloseTimes.FindPrevious(FocusedEntity); StoreWorkingTime nextWorkingTime = OpenCloseTimes.FindNext(FocusedEntity); OpenCloseHoursExtendOption extendAction = OpenCloseHoursExtendOption.Undefined; if (OpenCloseTimes.Count > 1) { // Check whether a hole in schedule is created, prompt user to select which range should be extended to cover the hole using (FormExtendOpenCloseHours formExtendOptions = new FormExtendOpenCloseHours()) { formExtendOptions.SuggestOptions(previousWorkingTime, nextWorkingTime); if (formExtendOptions.ShowDialog(FindForm()) != DialogResult.OK) { return; } extendAction = formExtendOptions.SelectedExtendOption; } } try { StoreWorkingTime focusedWorkingTime = FocusedEntity; ClientEnvironment.StoreService.StoreWorkingTimeService.DeleteByID(focusedWorkingTime.ID); OpenCloseTimes.RemoveEntityById(FocusedEntity.ID); switch (extendAction) { case OpenCloseHoursExtendOption.Previous: previousWorkingTime.EndTime = focusedWorkingTime.EndTime; ClientEnvironment.StoreService.StoreWorkingTimeService.Update(previousWorkingTime); OpenCloseTimes.SetEntity(previousWorkingTime); break; case OpenCloseHoursExtendOption.Next: nextWorkingTime.BeginTime = focusedWorkingTime.BeginTime; ClientEnvironment.StoreService.StoreWorkingTimeService.Update(nextWorkingTime); OpenCloseTimes.SetEntity(nextWorkingTime); break; default: break; } } catch (EntityException ex) { ProcessEntityException(ex); } ShowFocusedEntityDetails(); } } else { ErrorMessage(GetLocalized("CantDeleteOpenClose-EntityInUsed")); } } }