public IssueKpiControlViewModel(Issue issue, IssueKpiControl view) { mView = view; mIssue = issue; CompositionInitializer.SatisfyImports(this); mTimer.Interval = TimeSpan.FromMilliseconds(500); mTimer.Tick += RefreshKpiTable; CmsWebServiceClient cmsWebServiceClient = new CmsWebServiceClient(Utils.WcfBinding, Utils.WcfEndPoint); IssueKpis = new List<IssueKpiTableViewModel>(); AddButtonCommand = new DelegateCommand<object>(AddButtonHandler, CanExecuteAddButtonHandler); RemoveButtonCommand = new DelegateCommand<object>(RemoveButtonHandler, CanExecuteRemoveButtonHandler); ShowHideBaselineCommand = new DelegateCommand<object>(ShowHideBaselineHandler, x => true); IsBusy = true; cmsWebServiceClient.GetIssueKpiVarianceCodesCompleted += (s1, e1) => { IssueKpiVarianceCodes = e1.Result; RaisePropertyChanged("IssueKpiVarianceCodes"); cmsWebServiceClient.GetIssueKpisCompleted += (s, e) => { mIssue.IssueKpis = e.Result; DatabaseLoader.GetIssueSettings().ContinueWith(getIssueFinancialSettingsTask => { CMS.UiFactory.StartNew(() => { mIssueSetting = getIssueFinancialSettingsTask.Result; foreach (var issueKpi in mIssue.IssueKpis) { var financialTableItem = new IssueKpiTableViewModel(issueKpi, IssueKpiVarianceCodes, view, CanUserModifyActuals(), mIssueSetting); mIssueKpis.Add(financialTableItem); } mIssueKpis = mIssueKpis.OrderBy(x => x.Date).ToList(); RaisePropertyChanged("IssueKpis"); //mDictionary = Utils.BuildDictionaryForCollection(mIssue.IssueFinancials.Select(x => x.Id).ToList()); mIssue.ModifiedObjects.KpisModified = true; if (view.ViewModelLoaded != null) { view.ViewModelLoaded(); } IsBusy = false; }); }); }; cmsWebServiceClient.GetIssueKpisAsync(mIssue.Id); }; cmsWebServiceClient.GetIssueKpiVarianceCodesAsync(); }
public IEnumerable <int> GetIssueSetting() { if (string.IsNullOrWhiteSpace(IssueSetting)) { return new int[] { } } ; return(IssueSetting.Split(',').Select(t => int.Parse(t))); }
public IssueKpiTableViewModel(IssueKpi kpi, List<IssueKpiVarianceCode> issueKpiVarianceCodes, IssueKpiControl view, bool canUserModifyActuals, IssueSetting issueSetting) { mView = view; mKpi = kpi; mCanUserModifyActuals = canUserModifyActuals; IssueKpiVarianceCodes = issueKpiVarianceCodes; mIssueSetting = issueSetting; ValueGenerationVarianceCommand = new DelegateCommand<object>(ValueGenerationVarianceButtonHandler, CanExecuteOkButtonHandler); KpiVarianceCommand = new DelegateCommand<object>(KpiVarienceButtonHandler, CanExecuteOkButtonHandler); }
public IssueFinancialTableViewModel(IssueFinancial financial, List<IssueFinancialVarianceCode> issueFinancialVarianceCodes, IssueFinancialControl view, bool userCanModify, IssueSetting issueSetting) { mView = view; mFinancial = financial; mUserCanModify = userCanModify; IssueFinancialVarianceCodes = issueFinancialVarianceCodes; mIssueSetting = issueSetting; ActualVsBaselineVarianceCommand = new DelegateCommand<object>(ActualvsBaselineButtonHandler, CanExecuteOkButtonHandler); ActualVsForecastVarianceCommand = new DelegateCommand<object>(ActualvsForecastButtonHandler, CanExecuteOkButtonHandler); OpenPurchaseOrderCommand = new DelegateCommand<object>(OpenPurchaseOrderCommandHandler, CanExecuteOpenPurchaseOrderCommandHandler); }
public EditFinancialSettingsModel() { CompositionInitializer.SatisfyImports(this); DatabaseLoader.GetIssueSettings().ContinueWith(getIssueFinancialSettingsTask => { CMS.UiFactory.StartNew(() => { mIssueSetting = getIssueFinancialSettingsTask.Result; View.DataContext = this; //RaisePropertyChanged("CutOfDate"); //RaisePropertyChanged("AppliesToPreviousMonth"); //RaisePropertyChanged("Description"); }); }); OkButtonCommand = new DelegateCommand<object>(OkButtonHander, CanExecuteOkButtonHandler); CancelButtonCommand = new DelegateCommand<object>(CancelButtonHander, x => true); DatePickerCommand = new DelegateCommand<object>(DatePickerCommandHandler, x => true); ImportStartDatePickerCommand = new DelegateCommand<object>(ImportStartDatePickerCommandHandler, x => true); ImportStopDatePickerCommand = new DelegateCommand<object>(ImportStopDatePickerCommandHandler, x => true); }
public void SaveIssueSetting(IssueSetting issueSetting) { using (var cee = new CmsEntities()) { var existingSettings = (from x in cee.IssueSettings where x.Id == issueSetting.Id select x).FirstOrDefault(); if (existingSettings != null) { existingSettings.AccrualCutOfDate = issueSetting.AccrualCutOfDate; existingSettings.AccrualAppliesToPreviousMonth = issueSetting.AccrualAppliesToPreviousMonth; existingSettings.ForecastCutOfDay = issueSetting.ForecastCutOfDay; existingSettings.VarianceThreshold = issueSetting.VarianceThreshold; existingSettings.ImportStartDate = issueSetting.ImportStartDate; existingSettings.ImportStopDate = issueSetting.ImportStopDate; existingSettings.KpiCutOffDay = issueSetting.KpiCutOffDay; existingSettings.MilestoneVarianceThreshold = issueSetting.MilestoneVarianceThreshold; cee.SaveChanges(); } } }