/// <summary> /// Tworzy WorkItem w bazie danych /// </summary> /// <returns></returns> public async Task <WorkItemPublic> CreateWorkItem() { try { HttpWorkItemClient client = new HttpWorkItemClient(); WorkItemPublic updatedWorkItem = await client.CreateWorkItem(WorkItem).ConfigureAwait(false); return(updatedWorkItem); } catch (Exception) { mContext.DialogBuilder.ErrorDialog("Work Item couldn't be updated, due to server error."); return(null); } }
/// <summary> /// pobiera workItemy dla kolekcji /// </summary> private async Task GetWorkItems(WorkItemCollectionPublic collection) { try { HttpWorkItemClient client = new HttpWorkItemClient(); IEnumerable <WorkItemPublic> response = await client.GetAllWorkItems(collection.ID).ConfigureAwait(false); await Application.Current.Dispatcher.BeginInvoke(() => { foreach (WorkItemPublic workItem in response) { collection.WorkItems.Add(workItem); } }); } catch (Exception ex) { mContext.DialogBuilder.ErrorDialog("Could not retrieve work items, due to server error.", ex); } }
/// <summary> /// Pobiera wszystkie workItemy użytkownika /// </summary> private async Task GetWorkItems() { DateTime today = DateTime.Now.AddDays(DayOffset); try { HttpWorkItemClient client = new HttpWorkItemClient(); IEnumerable <WorkItemPublic> response = await client.GetAllWorkItemsFromDay(mContext.UserAccount.ID, today).ConfigureAwait(false); await Application.Current.Dispatcher.BeginInvoke(() => { foreach (WorkItemPublic workItem in response) { TaskBoard.Add(new CtrlWorkItemDisplay(workItem, DayOffset, mContext)); } }); } catch (Exception) { mContext.DialogBuilder.ErrorDialog("Work Items couldn't be retrieved, due to server error."); } }
/// <summary> /// Metoda dodajaca nowe zadanie do obserswowalnej kolekcji zadan /// </summary> private async Task AddWorkItem() { try { HttpWorkItemClient client = new HttpWorkItemClient(); WorkItemPublic workItem = new WorkItemPublic() { Name = "WorkItem", WorkItemCollectionID = WorkItemCollection.ID, WorkItemStart = DateTime.Now.Date.AddHours(12), WorkItemEnd = DateTime.Now.Date.AddHours(13) }; await Application.Current.Dispatcher.BeginInvoke(() => { mContext.WindowManager.OpenWindow(new DlgWorkItemDetails(workItem, mContext)); }); } catch (Exception) { mContext.DialogBuilder.ErrorDialog("Could not create the Work Item, due to server error."); } }