public void Calculate_SalesInvoice(ref sales_invoice SalesInvoice) { Invoice Invoice = new Invoice(); Invoice.Contact = SalesInvoice.contact; Invoice.Date = SalesInvoice.trans_date; Invoice.GrandTotal = SalesInvoice.GrandTotal; foreach (sales_invoice_detail _Detail in SalesInvoice.sales_invoice_detail) { Detail Detail = new Detail(); Detail.Item = _Detail.item; Detail.Quantity = _Detail.quantity; Detail.Price = _Detail.unit_price; Detail.PriceVAT = _Detail.UnitPrice_Vat; Detail.SubTotal = _Detail.SubTotal; Detail.SubTotalVAT = _Detail.SubTotal_Vat; Invoice.Details.Add(Detail); } foreach (var Promo in SalesPromotionLIST) { BuyThis_GetThat(Promo, Invoice, SalesInvoice); BuyTag_GetThat(Promo, Invoice, SalesInvoice); } }
private void btnWithholding_Click(object sender, RoutedEventArgs e) { List <payment_schedual> PaymentSchedualList = payment_schedualViewSource.View.OfType <payment_schedual>().Where(x => x.IsSelected == true).ToList(); if (PaymentSchedualList.Count > 0) { sales_invoice sales_invoice = PaymentSchedualList.FirstOrDefault().sales_invoice; if (sales_invoice.payment_withholding_details.Count() == 0) { cntrl.VATWithholding VATWithholding = new cntrl.VATWithholding(); VATWithholding.invoiceList = new List <object>(); VATWithholding.invoiceList.Add(sales_invoice); VATWithholding.PaymentDB = PaymentDB; VATWithholding.payment_schedual = PaymentSchedualList.FirstOrDefault(); VATWithholding.percentage = sales_invoice.vatwithholdingpercentage; crud_modal.Visibility = System.Windows.Visibility.Visible; crud_modal.Children.Add(VATWithholding); } else { toolbar.msgWarning("Linked With Vat Holding..."); } } }
private void sales_invoice_detailDataGrid_InitializingNewItem(object sender, InitializingNewItemEventArgs e) { sales_invoice_detail sales_invoice_detail = (sales_invoice_detail)e.NewItem; sales_invoice sales_invoice = (sales_invoice)sales_invoiceDataGrid.SelectedItem; sales_invoice_detail.sales_invoice = sales_invoice; }
private void calculate_vat(object sender, EventArgs e) { sales_invoice sales_invoice = (sales_invoice)sales_invoiceDataGrid.SelectedItem; if (sales_invoice != null) { sales_invoice.RaisePropertyChanged("GrandTotal"); List <sales_invoice_detail> sales_invoice_detail = sales_invoice.sales_invoice_detail.ToList(); if (sales_invoice_detail.Count > 0) { var listvat = sales_invoice_detail .Join(SalesInvoiceDB.app_vat_group_details, ad => ad.id_vat_group, cfx => cfx.id_vat_group , (ad, cfx) => new { name = cfx.app_vat.name, value = ad.unit_price * cfx.app_vat.coefficient, id_vat = cfx.app_vat.id_vat, ad }) .GroupBy(a => new { a.name, a.id_vat, a.ad }) .Select(g => new { id_vat = g.Key.id_vat, name = g.Key.name, value = g.Sum(a => a.value * a.ad.quantity) }).ToList(); dgvVAT.ItemsSource = listvat.GroupBy(x => x.id_vat).Select(g => new { id_vat = g.Max(y => y.id_vat), name = g.Max(y => y.name), value = g.Sum(a => a.value) }).ToList(); } } }
private void toolBar_btnCancel_Click(object sender) { SalesInvoiceDB.CancelAllChanges(); sales_invoice sales_invoice = (sales_invoice)sales_invoiceDataGrid.SelectedItem; sales_invoice.State = EntityState.Unchanged; }
private void New_Sale_Payment() { ///Creating new SALES INVOICE for upcomming sale. ///TransDate = 0 because in Point of Sale we are assuming sale will always be done today. sales_invoice sales_invoice = SalesInvoiceDB.New(0, false); SalesInvoiceDB.sales_invoice.Add(sales_invoice); Dispatcher.BeginInvoke((Action)(() => { sales_invoiceViewSource = ((CollectionViewSource)(FindResource("sales_invoiceViewSource"))); sales_invoiceViewSource.Source = SalesInvoiceDB.sales_invoice.Local; sales_invoiceViewSource.View.MoveCurrentTo(sales_invoice); })); PaymentDB = new PaymentDB(); ///Creating new PAYMENT for upcomming sale. payment payment = PaymentDB.New(true); payment.id_currencyfx = sales_invoice.id_currencyfx; PaymentDB.payments.Add(payment); Dispatcher.BeginInvoke((Action)(() => { paymentViewSource = ((CollectionViewSource)(FindResource("paymentViewSource"))); paymentViewSource.Source = PaymentDB.payments.Local; paymentViewSource.View.MoveCurrentTo(payment); tabContact.Focus(); sbxContact.Text = ""; })); }
public accounting_journal Start(AccountingJournalDB AccountingJournalDB, sales_invoice sales_invoice) { if (sales_invoice != null && sales_invoice.accounting_journal == null && sales_invoice.status == entity.Status.Documents_General.Approved) { accounting_cycle accounting_cycledb = AccountingJournalDB.accounting_cycle .Where(i => i.start_date <= sales_invoice.trans_date || i.end_date >= sales_invoice.trans_date && i.id_company == Properties.Settings.Default.company_ID) .FirstOrDefault(); if (accounting_cycledb == null) { AccountingCycle AccCycle = new AccountingCycle(); int id_cycle = AccCycle.Generate_Cycle(sales_invoice.trans_date).id_cycle; accounting_cycledb = AccountingJournalDB.accounting_cycle.Where(x => x.id_cycle == id_cycle).FirstOrDefault(); } //Check which Contract Detail has 0 Days == Cash return(calc(AccountingJournalDB, sales_invoice, accounting_cycledb)); } return(null); }
private void lblCheckCredit(object sender, RoutedEventArgs e) { if (sales_invoiceViewSource != null) { sales_invoice sales_invoice = sales_invoiceViewSource.View.CurrentItem as sales_invoice; Class.CreditLimit Limit = new Class.CreditLimit(); Limit.Check_CreditAvailability(sales_invoice); } }
private void BuyThis_GetThat(sales_promotion Promo, Invoice Invoice, sales_invoice SalesInvoice) { if (Promo.types == sales_promotion.Type.BuyThis_GetThat) { if (Invoice.Details.Where(x => x.Item.id_item == Promo.reference && x.Quantity >= Promo.quantity_step).Count() > 0) { foreach (Detail _Detail in Invoice.Details.Where(x => x.Item.id_item == Promo.reference)) { if (Promo.quantity_step > 0) { Promo _Promo = new Promo(); _Promo.Type = sales_promotion.Type.BuyThis_GetThat; _Promo.Shared = true; _Detail.Promos.Add(_Promo); List <sales_invoice_detail> sid = SalesInvoice.sales_invoice_detail.Where(x => x.id_item == Promo.reference_bonus && x.IsPromo).ToList(); //Prevent double clicking button and adding extra bonus to sale. find better way to implement. Short term code. foreach (sales_invoice_detail _Detail_ in sid) { SalesInvoice.sales_invoice_detail.Remove(_Detail_); } sales_invoice_detail sales_invoice_detail = new sales_invoice_detail(); //Needed to calculate the discounts and unit prices further on. sales_invoice_detail.State = System.Data.Entity.EntityState.Added; using (db db = new db()) { item item = db.items.Where(x => x.id_item == Promo.reference_bonus).FirstOrDefault(); if (item != null) { sales_invoice_detail.id_vat_group = item.id_vat_group; sales_invoice_detail.id_item = item.id_item; sales_invoice_detail.item_description = item.name; //sales_invoice_detail.item = item; } item_price item_price = item.item_price.Where(x => x.item_price_list.is_default == true).FirstOrDefault(); if (item_price != null) { sales_invoice_detail.unit_price = item_price.value; sales_invoice_detail.discount = item_price.value; } } sales_invoice_detail.IsPromo = true; sales_invoice_detail.quantity = Math.Floor(_Detail.Quantity / Promo.quantity_step); SalesInvoice.sales_invoice_detail.Add(sales_invoice_detail); } } } } }
private void salesinvoice_PreviewMouseUp(object sender, MouseButtonEventArgs e) { Hyperlink Hyperlink = (Hyperlink)sender; sales_invoice sales_invoice = (sales_invoice)Hyperlink.Tag; if (sales_invoice != null) { entity.Brillo.Document.Start.Automatic(sales_invoice, sales_invoice.app_document_range); } }
private void btnTotalClean_Click(object sender) { sales_invoice sales_invoice = sales_invoiceViewSource.View.CurrentItem as sales_invoice; if (sales_invoice != null) { decimal TrailingDecimals = sales_invoice.GrandTotal - Math.Floor(sales_invoice.GrandTotal); sales_invoice.DiscountWithoutPercentage += TrailingDecimals; } }
private void btnNew_Click(object sender) { Settings SalesSettings = new Settings(); sales_invoice sales_invoice = SalesInvoiceDB.New(SalesSettings.TransDate_Offset, false); cbxCurrency.get_DefaultCurrencyActiveRate(); SalesInvoiceDB.sales_invoice.Add(sales_invoice); sales_invoiceViewSource.View.MoveCurrentToLast(); }
private void sales_invocieDatagrid_LoadingRowDetails(object sender, DataGridRowDetailsEventArgs e) { if (_entity.sales_invoice_detail.Count() > 0) { sales_invoice _sales_invoice = ((System.Windows.Controls.DataGrid)sender).SelectedItem as sales_invoice; int id_purchase_invoice = _sales_invoice.id_sales_invoice; System.Windows.Controls.DataGrid RowDataGrid = e.DetailsElement as System.Windows.Controls.DataGrid; var salesInvoice = _sales_invoice.sales_invoice_detail; RowDataGrid.ItemsSource = salesInvoice; } }
private void sbxContact_Select(object sender, RoutedEventArgs e) { if (sbxContact.ContactID > 0) { contact contact = SalesInvoiceDB.contacts.Where(x => x.id_contact == sbxContact.ContactID).FirstOrDefault(); sales_invoice sales_invoice = (sales_invoice)sales_invoiceViewSource.View.CurrentItem as sales_invoice; payment payment = (payment)paymentViewSource.View.CurrentItem as payment; sales_invoice.id_contact = contact.id_contact; sales_invoice.contact = contact; payment.id_contact = contact.id_contact; } }
private void btnAccountsRecievable_PreviewMouseUp(object sender, MouseButtonEventArgs e) { sales_invoice sales_invoice = sales_invoiceViewSource.View.CurrentItem as sales_invoice; List <payment_schedual> payment_schedualList = SalesInvoiceDB.payment_schedual .Where(x => x.id_payment_detail == null && x.id_company == CurrentSession.Id_Company && x.id_contact == sales_invoice.id_contact && (x.id_sales_invoice > 0 || x.id_sales_order > 0) && x.id_note == null && (x.debit - (x.child.Count() > 0 ? x.child.Sum(y => y.credit) : 0)) > 0) .OrderBy(x => x.expire_date).ToList(); payment_schedualDataGrid.ItemsSource = payment_schedualList.GroupBy(x => x.id_currencyfx).Select(x => new { CustName = x.Max(s => s.contact.name), AccountReceivableBalance = x.Sum(y => y.AccountReceivableBalance), Currency = x.Max(z => z.app_currencyfx.app_currency.name) }); crud_modalDuePaymnet.Visibility = System.Windows.Visibility.Visible; }
private void toolBar_btnPrint_Click(object sender, MouseButtonEventArgs e) { sales_invoice sales_invoice = sales_invoiceDataGrid.SelectedItem as sales_invoice; if (sales_invoice != null) { entity.Brillo.Document.Start.Manual(sales_invoice, sales_invoice.app_document_range); } else { toolBar.msgWarning("Please select"); } }
public void SalesOrder_Click(object sender) { sales_invoice _sales_invoice = (sales_invoice)sales_invoiceViewSource.View.CurrentItem; sbxContact.Text = pnlSalesOrder.selected_sales_order.FirstOrDefault().contact.name; foreach (sales_order sales_order in pnlSalesOrder.selected_sales_order) { _sales_invoice.State = EntityState.Modified; _sales_invoice.contact = sales_order.contact; cbxContactRelation.ItemsSource = SalesInvoiceDB.contacts.Where(x => x.parent.id_contact == sales_order.contact.id_contact).ToList(); _sales_invoice.id_contact = sales_order.contact.id_contact; _sales_invoice.id_condition = sales_order.id_condition; _sales_invoice.id_contract = sales_order.id_contract; _sales_invoice.id_currencyfx = sales_order.id_currencyfx; _sales_invoice.app_currencyfx = sales_order.app_currencyfx; _sales_invoice.id_sales_order = sales_order.id_sales_order; foreach (sales_order_detail _sales_order_detail in sales_order.sales_order_detail) { sales_invoice_detail sales_invoice_detail = new sales_invoice_detail(); //There is an issue that the detail does not know of the currency previously selected. Maybe this can help. sales_invoice_detail.CurrencyFX_ID = sales_order.app_currencyfx.id_currencyfx; sales_invoice_detail.id_sales_order_detail = _sales_order_detail.id_sales_order_detail; sales_invoice_detail.sales_order_detail = _sales_order_detail; sales_invoice_detail.Contact = _sales_invoice.contact; sales_invoice_detail.sales_invoice = _sales_invoice; sales_invoice_detail.item = _sales_order_detail.item; sales_invoice_detail.id_item = _sales_order_detail.id_item; sales_invoice_detail.quantity = _sales_order_detail.quantity - SalesInvoiceDB.sales_invoice_detail .Where(x => x.id_sales_order_detail == _sales_order_detail.id_sales_order_detail) .GroupBy(x => x.id_sales_order_detail) .Select(x => x.Sum(y => y.quantity)) .FirstOrDefault(); sales_invoice_detail.unit_price = _sales_order_detail.unit_price; _sales_invoice.sales_invoice_detail.Add(sales_invoice_detail); } SalesInvoiceDB.Entry(_sales_invoice).Entity.State = EntityState.Added; crud_modal.Children.Clear(); crud_modal.Visibility = Visibility.Collapsed; sales_invoiceViewSource.View.Refresh(); sales_invoicesales_invoice_detailViewSource.View.Refresh(); } _sales_invoice.RaisePropertyChanged("GrandTotal"); }
private void toolBar_btnEdit_Click(object sender) { if (sales_invoiceDataGrid.SelectedItem != null) { sales_invoice sales_invoice_old = (sales_invoice)sales_invoiceDataGrid.SelectedItem; sales_invoice_old.IsSelected = true; sales_invoice_old.State = EntityState.Modified; SalesInvoiceDB.Entry(sales_invoice_old).State = EntityState.Modified; } else { toolBar.msgWarning("Please Select an Item"); } }
private void GetExpenses_PreviewMouseUp(object sender, MouseButtonEventArgs e) { if (impexDataGrid.SelectedItem != null) { if (id_incotermComboBox.SelectedItem != null && pnlSalesInvoice.selected_sales_invoice.FirstOrDefault() != null) { impex impex = impexDataGrid.SelectedItem as impex; sales_invoice sales_invoice = pnlSalesInvoice.selected_sales_invoice.FirstOrDefault() as sales_invoice; impex_incoterm impex_incoterm = id_incotermComboBox.SelectedItem as impex_incoterm; List <impex_incoterm_detail> impex_incoterm_detail = null; if (impex.impex_type == entity.impex._impex_type.Import) { //Only fetch buyer expence impex_incoterm_detail = ImpexDB.impex_incoterm_detail.Where(i => i.id_incoterm == impex_incoterm.id_incoterm && i.buyer == true).ToList(); } if (impex.impex_type == entity.impex._impex_type.Export) { //Only fetch seller expence impex_incoterm_detail = ImpexDB.impex_incoterm_detail.Where(i => i.id_incoterm == impex_incoterm.id_incoterm && i.seller == true).ToList(); } foreach (entity.Class.Impex_Products product in Impex_ProductsLIST) { foreach (var item in impex_incoterm_detail) { impex_expense impex_expense = new impex_expense(); if (ImpexDB.impex_incoterm_condition.Where(x => x.id_incoterm_condition == item.id_incoterm_condition).FirstOrDefault() != null) { impex_expense.impex_incoterm_condition = ImpexDB.impex_incoterm_condition.Where(x => x.id_incoterm_condition == item.id_incoterm_condition).FirstOrDefault(); } impex_expense.id_incoterm_condition = item.id_incoterm_condition; impex_expense.id_currencyfx = sales_invoice.id_currencyfx; impex_expense.id_purchase_invoice = null; impex_expense.id_item = (int)product.id_item; impex.impex_expense.Add(impex_expense); } } impeximpex_expenseViewSource.View.Refresh(); productDataGrid.SelectedIndex = 0; } else { MessageBox.Show("Please select Incoterm, Type and Invoice to get expenses.", "Get Expences", MessageBoxButton.OK, MessageBoxImage.Information); } } }
private void dgvPaymentDetail_InitializingNewItem(object sender, InitializingNewItemEventArgs e) { sales_invoice sales_invoice = sales_invoiceViewSource.View.CurrentItem as sales_invoice; payment payment = paymentViewSource.View.CurrentItem as payment; payment_detail payment_detail = e.NewItem as payment_detail; payment_detail.State = EntityState.Added; payment_detail.IsSelected = true; payment_detail.id_currencyfx = sales_invoice.id_currencyfx; payment_detail.id_currency = sales_invoice.app_currencyfx.id_currency; payment_detail.id_payment = payment.id_payment; payment_detail.payment = payment; }
private void lblGrandTotalsales_DataContextChanged(object sender, EventArgs e) { if (sales_invoiceViewSource != null && paymentViewSource != null) { if (sales_invoiceViewSource.View != null && paymentViewSource.View != null) { if (sales_invoiceViewSource.View.CurrentItem != null && paymentViewSource.View.CurrentItem != null) { sales_invoice sales_invoice = sales_invoiceViewSource.View.CurrentItem as sales_invoice; payment payment = paymentViewSource.View.CurrentItem as payment; payment.GrandTotal = sales_invoice.GrandTotal; } } } }
private void sales_invoiceDataGrid_SelectionChanged(object sender, SelectionChangedEventArgs e) { sales_invoice sales_invoice = sales_invoiceDataGrid.SelectedItem as sales_invoice; CollectionViewSource sales_invoicesales_invoice_detailsales_packinglist_relationViewSource = FindResource("sales_invoicesales_invoice_detailsales_packinglist_relationViewSource") as CollectionViewSource; if (sales_invoicesales_invoice_detailsales_packinglist_relationViewSource != null) { sales_invoicesales_invoice_detailsales_packinglist_relationViewSource.Source = SalesInvoiceDB.sales_packing_relation.Where(x => x.sales_invoice_detail.id_sales_invoice == sales_invoice.id_sales_invoice).ToList(); } else { sales_invoicesales_invoice_detailsales_packinglist_relationViewSource.Source = null; } calculate_vat(sender, e); }
//Fill Methods public void Fill_BySales(sales_invoice sales_invoice) { this.Type = entity.DebeHaber.TransactionTypes.Sales; this.TransDate = sales_invoice.trans_date; this.CompanyName = sales_invoice.contact.name; this.PaymentCondition = sales_invoice.app_contract != null ? (sales_invoice.app_contract.app_contract_detail != null ? sales_invoice.app_contract.app_contract_detail.Max(x => x.interval) : 0) : 0; this.Gov_Code = sales_invoice.contact.gov_code; this.Comment = sales_invoice.comment; this.CurrencyName = sales_invoice.app_currencyfx != null ? sales_invoice.app_currencyfx.app_currency != null ? sales_invoice.app_currencyfx.app_currency.name : "" : ""; this.DocNumber = sales_invoice.number; this.DocCode = sales_invoice.app_document_range != null ? sales_invoice.app_document_range.code : ""; this.DocExpiry = (sales_invoice.app_document_range != null ? (DateTime)sales_invoice.app_document_range.expire_date : DateTime.Now); }
private void cbxCurrency_LostFocus(object sender, RoutedEventArgs e) { sales_invoice sales_invoice = sales_invoiceViewSource.View.CurrentItem as sales_invoice; if (sales_invoice != null) { if (sales_invoice.id_currencyfx > 0) { if (SalesInvoiceDB.app_currencyfx.Where(x => x.id_currencyfx == sales_invoice.id_currencyfx).FirstOrDefault() != null) { sales_invoice.app_currencyfx = SalesInvoiceDB.app_currencyfx.Where(x => x.id_currencyfx == sales_invoice.id_currencyfx).FirstOrDefault(); } } } calculate_vat(sender, e); }
public void Link_Click(object sender) { sales_invoice _sales_invoice = (sales_invoice)sales_invoiceViewSource.View.CurrentItem; foreach (sales_packing item in pnlPacking.selected_sales_packing) { sales_packing sales_packing = SalesInvoiceDB.sales_packing.Where(x => x.id_sales_packing == item.id_sales_packing).FirstOrDefault(); foreach (sales_packing_detail _sales_packing_detail in sales_packing.sales_packing_detail) { if (_sales_invoice.sales_invoice_detail.Where(x => x.id_item == _sales_packing_detail.id_item).Count() == 0) { sales_invoice_detail sales_invoice_detail = new sales_invoice_detail(); sales_invoice_detail.sales_invoice = _sales_invoice; sales_invoice_detail.Contact = SalesInvoiceDB.contacts.Where(x => x.id_contact == sbxContact.ContactID).FirstOrDefault();// sbxContact.Contact; sales_invoice_detail.item = _sales_packing_detail.item; sales_invoice_detail.id_item = _sales_packing_detail.id_item; sales_invoice_detail.quantity = _sales_packing_detail.quantity; // sales_invoice_detail.unit_price = 0; sales_packing_relation sales_packing_relation = new sales_packing_relation(); sales_packing_relation.id_sales_packing_detail = _sales_packing_detail.id_sales_packing_detail; sales_packing_relation.sales_packing_detail = _sales_packing_detail; sales_invoice_detail.sales_packing_relation.Add(sales_packing_relation); _sales_invoice.sales_invoice_detail.Add(sales_invoice_detail); } } CollectionViewSource sales_invoicesales_invoice_detailViewSource = FindResource("sales_invoicesales_invoice_detailViewSource") as CollectionViewSource; sales_invoicesales_invoice_detailViewSource.View.Refresh(); sales_invoicesales_invoice_detailViewSource.View.MoveCurrentToFirst(); } CollectionViewSource sales_invoicesales_invoice_detailsales_packinglist_relationViewSource = FindResource("sales_invoicesales_invoice_detailsales_packinglist_relationViewSource") as CollectionViewSource; if (sales_invoicesales_invoice_detailsales_packinglist_relationViewSource != null) { sales_invoicesales_invoice_detailsales_packinglist_relationViewSource.Source = SalesInvoiceDB.sales_packing_relation.Local.Where(x => x.sales_invoice_detail.id_sales_invoice == _sales_invoice.id_sales_invoice).ToList(); } else { sales_invoicesales_invoice_detailsales_packinglist_relationViewSource.Source = null; } crud_modal.Children.Clear(); crud_modal.Visibility = Visibility.Collapsed; _sales_invoice.RaisePropertyChanged("GrandTotal"); }
private void toolBar_btnSearch_Click(object sender, string query) { if (!string.IsNullOrEmpty(query) && sales_invoiceViewSource != null) { try { sales_invoiceViewSource.View.Filter = i => { sales_invoice sales_invoice = i as sales_invoice; if (sales_invoice != null) { //Protect the code against null values. string number = sales_invoice.number != null ? sales_invoice.number : ""; string customer = sales_invoice.contact != null ? sales_invoice.contact.name : ""; string gov_code = sales_invoice.contact != null ? sales_invoice.contact.gov_code : ""; if ( customer.ToLower().Contains(query.ToLower()) || number.Contains(query) || gov_code.ToLower().Contains(query.ToLower())) { return(true); } else { return(false); } } else { return(false); } }; } catch //(Exception ex) { //throw ex; } } else { sales_invoiceViewSource.View.Filter = null; } }
private void btnPromotion_Click(object sender, EventArgs e) { sales_invoice sales_invoice = sales_invoiceViewSource.View.CurrentItem as sales_invoice; List <sales_invoice_detail> promoList = sales_invoice.sales_invoice_detail.Where(x => x.IsPromo).ToList(); if (promoList.Count() > 0) { SalesInvoiceDB.sales_invoice_detail.RemoveRange(promoList); } StartPromo.Calculate_SalesInvoice(ref sales_invoice); CollectionViewSource sales_invoicesales_invoice_detailViewSource = (CollectionViewSource)this.FindResource("sales_invoicesales_invoice_detailViewSource"); sales_invoicesales_invoice_detailViewSource.View.Refresh(); }
private void btnDelete_Click(object sender) { try { if (MessageBox.Show("Are you sure want to Delete?", "Cognitivo", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes) { sales_invoice sales_invoice = (sales_invoice)sales_invoiceDataGrid.SelectedItem; sales_invoice.is_head = false; sales_invoice.State = EntityState.Deleted; sales_invoice.IsSelected = true; } } catch (Exception ex) { toolBar.msgError(ex); } }
private void btnSave_Click(object sender, EventArgs e) { sales_invoice sales_invoice = (sales_invoice)sales_invoiceViewSource.View.CurrentItem as sales_invoice; payment payment = paymentViewSource.View.CurrentItem as payment; /// VALIDATIONS... /// /// Validates if Contact is not assigned, then it will take user to the Contact Tab. if (sales_invoice.contact == null) { tabContact.Focus(); return; } /// Validates if Sales Detail has 0 rows, then take you to Sales Tab. if (sales_invoice.sales_invoice_detail.Count == 0) { tabSales.Focus(); return; } /// Validate Payment <= Sales.GrandTotal //if (payment.GrandTotal >= payment.GrandTotal_Detail) //{ if (payment.GrandTotalDetail < sales_invoice.GrandTotal) { tabPayment.Focus(); return; } /// If all validation is met, then we can start Sales Process. if (sales_invoice.contact != null && sales_invoice.sales_invoice_detail.Count > 0) { ///Approve Sales Invoice. ///Note> Approve includes Save Logic. No need to seperately Save. ///Plus we are passing True as default because in Point of Sale, we will always discount Stock. SalesInvoiceDB.Approve(true); payment_schedual payment_schedual = SalesInvoiceDB.payment_schedual.Where(x => x.id_sales_invoice == sales_invoice.id_sales_invoice && x.debit > 0).FirstOrDefault(); PaymentDB.Approve(payment_schedual.id_payment_schedual, (bool)chkreceipt.IsChecked); //Start New Sale New_Sale_Payment(); } }
private void Clear_MouseDown(object sender, EventArgs e) { if (sales_invoiceViewSource != null && paymentViewSource != null) { if (sales_invoiceViewSource.View != null && paymentViewSource.View != null) { if (sales_invoiceViewSource.View.CurrentItem != null && paymentViewSource.View.CurrentItem != null) { sales_invoice sales_invoice = sales_invoiceViewSource.View.CurrentItem as sales_invoice; if (sales_invoice.GrandTotal > 0) { decimal TrailingDecimals = sales_invoice.GrandTotal - Math.Floor(sales_invoice.GrandTotal); sales_invoice.DiscountWithoutPercentage += TrailingDecimals; } } } } }