public IssueFinancialControlViewModel(Issue issue, IssueFinancialControl view) { mView = view; mIssue = issue; CompositionInitializer.SatisfyImports(this); mTimer.Interval = TimeSpan.FromMilliseconds(500); mTimer.Tick += RefreshFinancualTableTable; CmsWebServiceClient cmsWebServiceClient = new CmsWebServiceClient(Utils.WcfBinding, Utils.WcfEndPoint); IssueFinancials = new List<IssueFinancialTableViewModel>(); AddButtonCommand = new DelegateCommand<object>(AddButtonHandler, CanExecuteAddButtonHandler); DeleteButtonCommand = new DelegateCommand<object>(DeleteButtonHandler, CanExecuteDeleteButtonHandler); ShowHideBudgetCommand = new DelegateCommand<object>(ShowHideBudgetHandler, x=> true); ShowHideBaselineCommand = new DelegateCommand<object>(ShowHideBaselineHandler, x => true); IsBusy = true; cmsWebServiceClient.GetIssueFinancialVarianceCodesCompleted += (s1, e1) => { IssueFinancialVarianceCodes = e1.Result; RaisePropertyChanged("IssueFinancialVarianceCodes"); cmsWebServiceClient.GetIssueFinancialsCompleted += (s, e) => { mIssue.IssueFinancials = e.Result; DatabaseLoader.GetIssueSettings().ContinueWith(getAccrualCutOfDateTask => { CMS.UiFactory.StartNew(() => { mIssueSetting = getAccrualCutOfDateTask.Result; foreach (var issueFinancial in mIssue.IssueFinancials) { var financialTableItem = new IssueFinancialTableViewModel(issueFinancial, IssueFinancialVarianceCodes, view, CanUserModifyFinancialData(), mIssueSetting); mIssueFinancials.Add(financialTableItem); } mIssueFinancials = mIssueFinancials.OrderBy(x => x.Date).ToList(); RaisePropertyChanged("IssueFinancials"); mDictionary = Utils.BuildDictionaryForCollection(mIssue.IssueFinancials.Select(x => x.Id).ToList()); mIssue.ModifiedObjects.FinancialsModified = true; RaisePropertyChanged("TotalForecast"); ShowHideBaselineOnLoad(); IsBusy = false; }); }); }; cmsWebServiceClient.GetIssueFinancialsAsync(mIssue.Id); }; cmsWebServiceClient.GetIssueFinancialVarianceCodesAsync(); }
public static Task<List<IssueFinancialVarianceCode>> GetIssueFinancialVarianceCodes() { var task = new TaskCompletionSource<List<IssueFinancialVarianceCode>>(); var cee = new CmsWebServiceClient(Utils.WcfBinding, Utils.WcfEndPoint); cee.GetIssueFinancialVarianceCodesCompleted += (s, e) => task.SetResult(e.Result); cee.GetIssueFinancialVarianceCodesAsync(); return task.Task; }
private void LoadFinancialVarianceCodess(NodeView currentNodeView) { CmsWebServiceClient cmsWebServiceClient = new CmsWebServiceClient(Utils.WcfBinding, Utils.WcfEndPoint); cmsWebServiceClient.GetIssueFinancialVarianceCodesCompleted += (s1, e1) => { foreach (var varianceCode in e1.Result) { NodeView child = new NodeView(currentNodeView) { Id = varianceCode.Id, Name = varianceCode.Code, Description = varianceCode.Description, IsActive = varianceCode.IsActive, Icon = "/CmsEquipmentDatabase;component/Images/Configuration.png", Type = NodeType.FinancialVarianceCode, SortField = varianceCode.Ordinal.HasValue ? varianceCode.Ordinal.ToString() : string.Empty, HasChildren = false }; currentNodeView.Children.Add(child); } Utils.HideSpinner(currentNodeView); currentNodeView.Sort(true); }; cmsWebServiceClient.GetIssueFinancialVarianceCodesAsync(); }