Exemplo n.º 1
0
        private void ExecuteSaveProject(object obj)
        {
            var customer = _project.Customer;
            var cig      =
                CustomerInvoiceGroupComboBoxItems.First(
                    c => c.CustomerInvoiceGroupID == SelectedCustomerInvoiceGroupItem.CustomerInvoiceGroupID);

            _project.Customer = null;
            //_project.CustomerInvoiceGroup = null;

            _project.CustomerInvoiceGroupID = SelectedCustomerInvoiceGroupItem.CustomerInvoiceGroupID;

            _project.ChangeTracker.OriginalValues.Clear();

            _dataService.SaveProject(_project).Subscribe(
                project =>
            {
                if (_isNew)
                {
                    if (project == null)
                    {
                        MessageBox.Show("BUG, Can't save right now.. please try press F5 and try again");
                        InternalCommands.ProjectAddCompleted.Execute(null);
                    }
                    else
                    {
                        _project.ProjectID = project.ProjectID;
                        _project.Customer  = customer;

                        _project.CustomerInvoiceGroup = cig;
                        _project.AcceptChanges();
                        InternalCommands.ProjectAddCompleted.Execute(_project);
                    }
                }
                else
                {
                    _project.Customer = customer;

                    _project.CustomerInvoiceGroup = CustomerInvoiceGroupComboBoxItems.First(i => i.CustomerInvoiceGroupID == SelectedCustomerInvoiceGroupItem.CustomerInvoiceGroupID);
                    _project.AcceptChanges();
                    InternalCommands.ProjectEditCompleted.Execute(_project);
                }
            }
                );
        }
Exemplo n.º 2
0
        private void ProjectDeleteStart(Project obj)
        {
            var confirmBox = MessageBox.Show(TextResources.ConfirmDeleteProjectLabel,
                                             TextResources.ConfirmDeleteBoxTitle,
                                             MessageBoxButton.OKCancel);

            if (confirmBox == MessageBoxResult.OK)
            {
                obj.MarkAsDeleted();
                obj.Customer = null;
                obj.ChangeTracker.OriginalValues.Clear();
                _dataService.DeleteProject(obj).Subscribe(
                    projectId =>
                {
                    obj.AcceptChanges();
                    InternalCommands.ProjectDeleteCompleted.Execute(obj.ProjectID);
                }
                    );
            }
        }