public AddEditIssueFinancialVarianceCodeModel(CommonUtils.Operation operation, int itemId) { CompositionInitializer.SatisfyImports(this); OkButtonCommand = new DelegateCommand<object>(OkButtonHander, CanExecuteOkButtonHandler); CancelButtonCommand = new DelegateCommand<object>(CancelButtonHander, x => true); if (operation == CommonUtils.Operation.Add) { mIssueFinancialVarianceCode = new IssueFinancialVarianceCode(); } else if (operation == CommonUtils.Operation.Update) { var varianceId = itemId; CmsWebServiceClient cmsWebServiceClient = new CmsWebServiceClient(Utils.WcfBinding, Utils.WcfEndPoint); cmsWebServiceClient.GetIssueFinancialVarianceCodeCompleted += (s1, e1) => { mIssueFinancialVarianceCode = e1.Result; if (DataLoaded != null) { mIssueFinancialVarianceCode = e1.Result; DataLoaded(); } }; cmsWebServiceClient.GetIssueFinancialVarianceCodeAsync(varianceId); } }
public IssueFinancialVarianceCode SaveFinancialVarianceCode(IssueFinancialVarianceCode financialVarianceCode) { using (CmsEntities cee = new CmsEntities()) { var original = (from x in cee.IssueFinancialVarianceCodes where x.Id == financialVarianceCode.Id select x).FirstOrDefault(); if (original == null) { cee.IssueFinancialVarianceCodes.Add(financialVarianceCode); } else { cee.Entry(original).CurrentValues.SetValues(financialVarianceCode); } cee.SaveChanges(); } return financialVarianceCode; }
private void LoadData(bool inEditMode) { var getIssueTrendNoticeStatuses = DatabaseLoader.GetIssueTrendNoticeStatuses(); var getIssueMilestoneDelayTypes = DatabaseLoader.GetIssueMilestoneDelayTypes(); var getIssueFinancialVarianceCodes = DatabaseLoader.GetIssueFinancialVarianceCodes(); var getVendorsTask = DatabaseLoader.GetVendors(); var tasks = new List<Task> { getIssueTrendNoticeStatuses, getIssueMilestoneDelayTypes, getIssueFinancialVarianceCodes, getVendorsTask }; Task.Factory.ContinueWhenAll(tasks.ToArray(), x => { CMS.UiFactory.StartNew(() => { Statuses = getIssueTrendNoticeStatuses.Result; RaisePropertyChanged("Statuses"); RaisePropertyChanged("Status"); IssueMilestoneDelayTypes = getIssueMilestoneDelayTypes.Result; IssueMilestoneDelayType no_selection = new IssueMilestoneDelayType { Id = -1, Code = NO_SELECTION }; IssueMilestoneDelayTypes.Insert(0, no_selection); RaisePropertyChanged("IssueMilestoneDelayTypes"); RaisePropertyChanged("SelectedIssueMilestoneDelayType"); IssueFinancialVarianceCodes = getIssueFinancialVarianceCodes.Result; IssueFinancialVarianceCode noCode = new IssueFinancialVarianceCode { Id = -1, Code = NO_SELECTION }; IssueFinancialVarianceCodes.Insert(0, noCode); RaisePropertyChanged("IssueFinancialVarianceCodes"); RaisePropertyChanged("SelectedFinancialVarianceCode"); Vendors = getVendorsTask.Result; if (!inEditMode) { SelectedVendor = (from v in Vendors where v.Name.Equals(NO_SELECTION, StringComparison.CurrentCultureIgnoreCase) select v).FirstOrDefault(); SelectedIssueMilestoneDelayType = (from v in IssueMilestoneDelayTypes where v.Code.Equals(NO_SELECTION, StringComparison.CurrentCultureIgnoreCase) select v).FirstOrDefault(); SelectedFinancialVarianceCode = (from v in IssueFinancialVarianceCodes where v.Code.Equals(NO_SELECTION, StringComparison.CurrentCultureIgnoreCase) select v).FirstOrDefault(); } RaisePropertyChanged("Vendors"); RaisePropertyChanged("SelectedVendor"); if (ViewModelLoaded != null) ViewModelLoaded(); }); }); }