Example #1
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            if (String.IsNullOrWhiteSpace(tbName.Text)
                || cmbAccount.SelectedItem == null
                || _SelectedBuilding == null)
            {
                Controller.HandleError("Name and Account is required", "Validation Error");
                return;
            }

            if (_Item == null)
            {
                _Item = new BuildingMaintenanceConfiguration();
                dataContext.BuildingMaintenanceConfigurationSet.Add(_Item);
            }

            _Item.BuildingId = _SelectedBuilding.ID;
            _Item.MaintenanceClassificationType = GetClassificationType();
            _Item.Name = tbName.Text;
            _Item.PastelAccountNumber = (cmbAccount.SelectedItem as StringKeyValue).Id;
            _Item.PastelAccountName = (cmbAccount.SelectedItem as StringKeyValue).Value;

            try
            {
                bool isNew = _Item.id == 0;
                dataContext.SaveChanges();

                if (isNew)
                    _Data.Insert(0, _Item);
                BindDataGrid();
                GotoReadOnly();
            }
            catch (DbUpdateException ex)
            {
                Controller.HandleError("Possible duplicate record detected", "Database Error");
            }
            catch (Exception ex2)
            {
                Controller.HandleError(ex2.Message);
            }
        }
Example #2
0
        public frmMaintenanceDetail(DataContext context, tblRequisition item, BuildingMaintenanceConfiguration config, bool ignoreInvoiceNumber = false)
        {
            DialogResult = DialogResult.Cancel;

            try
            {
                InitializeComponent();

                _MaintenanceDetailControl      = new usrMaintenanceDetail(context, item, config, ignoreInvoiceNumber);
                _MaintenanceDetailControl.Dock = DockStyle.Fill;
                pnlContents.Controls.Add(_MaintenanceDetailControl);

                _MaintenanceDetailControl.SaveResultEvent += _MaintenanceDetailControl_SaveResultEvent;
            }
            catch (MaintenanceException e)
            {
                Controller.HandleError(e.Message);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Example #3
0
        public usrMaintenanceDetail(DataContext context, tblRequisition requisition, BuildingMaintenanceConfiguration config, bool ignoreInvoiceNumber = false)
        {
            this.Cursor = Cursors.WaitCursor;
            try
            {
                _DataContext = context;
                _requisition = requisition;

                if (!ignoreInvoiceNumber)
                {
                    if (string.IsNullOrEmpty(requisition.InvoiceNumber))
                    {
                        throw new MaintenanceException("No Invoice Number found.");
                    }

                    if (!requisition.InvoiceDate.HasValue)
                    {
                        throw new MaintenanceException("No Invoice Date found.");
                    }
                }

                if (requisition.SupplierId == null)
                {
                    throw new MaintenanceException("No Supplier found.");
                }
                else if (requisition.Supplier == null)
                {
                    requisition.Supplier = _DataContext.SupplierSet.Single(a => a.id == requisition.SupplierId);
                }

                _Maintenance = _DataContext.MaintenanceSet.Include(a => a.DetailItems).SingleOrDefault(a => a.RequisitionId == requisition.id);
                if (_Maintenance == null)
                {
                    _Maintenance = new Data.MaintenanceData.Maintenance()
                    {
                        DateLogged = DateTime.Now,
                        BuildingMaintenanceConfiguration = config,
                        Requisition     = requisition,
                        Supplier        = requisition.Supplier,
                        InvoiceNumber   = requisition.InvoiceNumber,
                        InvoiceDate     = requisition.InvoiceDate == null ? requisition.trnDate : requisition.InvoiceDate.Value,
                        TotalAmount     = requisition.amount,
                        WarrentyExpires = requisition.InvoiceDate == null ? requisition.trnDate : requisition.InvoiceDate.Value,
                        DetailItems     = new List <MaintenanceDetailItem>()
                    };
                    _DataContext.MaintenanceSet.Add(_Maintenance);
                    _Documents = new List <SupportingDocument>();
                }
                else
                {
                    _Documents = _DataContext.MaintenanceDocumentSet.Where(a => a.MaintenanceId == _Maintenance.id)
                                 .Select(d => new SupportingDocument()
                    {
                        Id       = d.id,
                        FileName = d.FileName
                    }).ToList();
                }

                SetupControl();
            }
            finally
            {
                this.Cursor = Cursors.Default;
            }
        }