public AddEditReceivedInvoicesModal(Model.ReceivedInvoice invoiceToUpdate)
		{
			this.InitializeComponent();

            _invoiceToUpdate = invoiceToUpdate;
            _isUpdateInvoice = invoiceToUpdate != null;
            dtpPurchaseDate.SelectedDate = dtpInvoiceDate.SelectedDate = DateTime.Now;
            dtpInvoiceDate.SelectedDate = null;
            FillProviderComboBox();

            if (_isUpdateInvoice)
            {
                PrepareWindowForUpdates();
            }
        }
        private void btnAddUpdateInvoice_Click(object sender, System.Windows.RoutedEventArgs e)
        {
            int providerId;
            decimal totalAmount;
            string folio = txtFolio.Text.Trim();
            string totalAmountText = txtTotalAmount.Text.Trim();

            if (AreValidFields(folio, totalAmountText, out providerId, out totalAmount) == false)
            {
                return;
            }

            if (_isUpdateInvoice)
            {
                _invoiceToUpdate.ProviderId = providerId;
                _invoiceToUpdate.InvoiceDate = dtpInvoiceDate.SelectedDate;
                _invoiceToUpdate.PurchaseDate = dtpPurchaseDate.SelectedDate.Value;
                _invoiceToUpdate.Folio = folio;
                _invoiceToUpdate.PaidMethod = cbPaidMethod.SelectedValue.ToString();
                _invoiceToUpdate.TotalAmount = totalAmount;
                _invoiceToUpdate.IsPaid = chkIsPaid.IsChecked.Value;
                
                UpdateInvoice(_invoiceToUpdate);
            }
            else
            {
                Model.ReceivedInvoice invoiceToAdd = new Model.ReceivedInvoice()
                {
                    ProviderId = providerId,
                    InvoiceDate = dtpInvoiceDate.SelectedDate,
                    PurchaseDate = dtpPurchaseDate.SelectedDate.Value,
                    Folio = folio,
                    PaidMethod = cbPaidMethod.SelectedValue.ToString(),
                    TotalAmount = Convert.ToDecimal(totalAmount),
                    IsDeleted = false,
                    IsPaid = chkIsPaid.IsChecked.Value                    
                };

                AddInvoice(invoiceToAdd);
            }
        }