protected void CalculateTotal() { Decimal discount = Decimal.Zero; Discount.IsCashDiscount = true; if (!Decimal.TryParse(txtDiscount.Text, out discount) && txtDiscount.Text.Contains("%")) { Discount.IsCashDiscount = false; txtDiscount.Text = txtDiscount.Text.Replace("%", ""); Decimal.TryParse(txtDiscount.Text, out discount); } Discount.DiscountValue = discount; if (!Discount.IsCashDiscount) { lblTotal.Text = (SaleItemList.Sum(i => i.ProfitPrice) - (SaleItemList.Sum(i => i.ProfitPrice) * Discount.DiscountValue / 100)).ToString("##,##0.00");; txtDiscount.Text += "%"; } else { lblTotal.Text = (SaleItemList.Sum(i => i.ProfitPrice) - Discount.DiscountValue).ToString("##,##0.00"); }; }
/// <summary> /// this method create and return a list of SaleItem /// </summary> /// <returns></returns> private List <Vivina.Erp.DataClasses.SaleItem> CreateSaleItemList() { List <Vivina.Erp.DataClasses.SaleItem> list = new List <Vivina.Erp.DataClasses.SaleItem>(); if (!SaleItemList.Any()) { return(new List <Vivina.Erp.DataClasses.SaleItem>()); } Vivina.Erp.DataClasses.SaleItem saleItem; foreach (SaleItem sItem in SaleItemList) { saleItem = new Vivina.Erp.DataClasses.SaleItem(); saleItem.CompanyId = Company.CompanyId; saleItem.ModifiedDate = DateTime.Now; saleItem.Quantity = sItem.Quantity; saleItem.SerialNumber = sItem.SerialNumber; saleItem.UnitCost = sItem.UnitCost; saleItem.UnitPrice = sItem.Price.Value; //saleItem.UserId = User.Identity.UserId; saleItem.ProductId = sItem.ProductId; if (!saleItem.ProductId.HasValue && sItem.Name.Contains(" ")) { saleItem.SpecialProductName = sItem.Name.Remove(sItem.Name.IndexOf(" ")); } list.Add(saleItem); } return(list); }
protected void BindGrdSaleItem() { grdSaleItens.DataSource = SaleItemList; lblSubtotal.Text = SaleItemList.Sum(item => item.ProfitPrice).ToString("##,##0.00"); CalculateTotal(); grdSaleItens.DataBind(); btnPayment.Visible = SaleItemList.Any(); }
public ActionResult List(int saleID) { IEnumerable <saleitem> SaleItemList; SaleItemList = SaleItemRepository.GetSalesItem(saleID); ViewBag.RecordCount = SaleItemList.Count(); return(View(SaleItemList)); }
protected void AddNewSaleItem() { SaleItem saleItem = new SaleItem(); saleItem.ProductId = null; saleItem.Quantity = ucCurrFieldQuantityData.IntValue; saleItem.Name = selProduct.Name; saleItem.Code = String.Empty; saleItem.Price = ucCurrFieldUnitPrice.CurrencyValue; saleItem.UnitCost = Decimal.Zero; SaleItemList.Add(saleItem); // AddSaleItem(saleItem); }
/// <summary> /// This method add a new Item in the SaleItemList /// </summary> /// <param name="saleItem"></param> private void AddSaleItem(SaleItem saleItem) { SaleItem sItem = SaleItemList.Where(i => i.ProductId == saleItem.ProductId || i.Name == saleItem.Name).FirstOrDefault(); if (sItem != null) { sItem.Quantity += saleItem.Quantity; sItem.UnitCost += saleItem.UnitCost; } else { SaleItemList.Add(saleItem); } }
public override Task <SaleList> GetSales(Empty e, ServerCallContext context) { SaleList s = new SaleList(); SaleItemList SaleItemList = new SaleItemList { Id = -1, SaleId = -1 }; SaleItemList.SaleItemDetails.Add(new SaleItemDetails { Item = new Item { Name = "Fruit", EstimatedCost = 2.5 } }); s.Sales.Add(new Sale { Id = -1, SaleItemList = SaleItemList }); return(Task.FromResult(s)); }
protected void lstBudget_SelectedIndexChanged(object sender, EventArgs e) { SaleItemList = null; txtDiscount.Text = String.Empty; Discount = null; SaleManager budgetManager = new SaleManager(this); Budget budget = budgetManager.GetBudget(Convert.ToInt32(lstBudget.SelectedValue), Company.CompanyId); Page.ViewState["budgetId"] = Convert.ToInt32(lstBudget.SelectedValue); Discount.DiscountValue = budgetManager.CalculateBudgetDiscount(budget); Discount.IsCashDiscount = true; if (budget.AdditionalCost.HasValue) { Discount.DiscountValue -= budget.AdditionalCost.Value; } SaleItem saleItem; foreach (BudgetItem budgetItem in budgetManager.GetBudgetItemByBudget(budget.BudgetId, Company.CompanyId)) { saleItem = new SaleItem(); if (budgetItem.ProductId.HasValue) { saleItem.Name = budgetItem.Product.Name; } else { saleItem.Name = budgetItem.SpecialProductName + " <img src='" + ResolveClientUrl("~/App_Shared/themes/glasscyan/Company/Product_warning.gif") + "' alt='Este produto não se encontra cadastrado!' />"; } saleItem.ProductId = budgetItem.ProductId; saleItem.Quantity = budgetItem.Quantity; saleItem.Code = budgetItem.ProductCode; saleItem.Price = budgetItem.UnitPrice; saleItem.UnitCost = budgetItem.UnitCost; SaleItemList.Add(saleItem); } BindGrdSaleItem(); }
public RegularSaleItem AddSaleItem(eStoreDbContext db, SaleItemList saleitem, int StoreId = 1) { ProductItem pItem = db.ProductItems.Include(c => c.Units).Where(c => c.Barcode == saleitem.BarCode).FirstOrDefault(); if (pItem == null) { } RegularSaleItem rSale = new RegularSaleItem { BarCode = saleitem.BarCode }; Stock stock = db.Stocks.Where(c => c.StoreId == StoreId && c.ProductItemId == rSale.ProductItemId).FirstOrDefault(); stock.SaleQty += rSale.Qty; stock.Quantity -= rSale.Qty; db.Stocks.Update(stock); return(rSale); }
protected void AddExistentSaleItem() { SaleItem saleItem = new SaleItem(); Product product = new ProductManager(this).GetProductByName((int)Company.MatrixId, selProduct.Name); Inventory productInInventory = new InventoryManager(this).GetProductInventory( Company.CompanyId, product.ProductId, Deposit.DepositId); saleItem.ProductId = product.ProductId; saleItem.Name = selProduct.Name; //se o preco na tela for != de null, então ele é convertido e arqmazenado //senão verificamos se o preco do produto já existe em inventário, se este for o caso, armazenamos o preco //senão, setamos 0 para o price saleItem.Price = ucCurrFieldUnitPrice.CurrencyValue.HasValue ? ucCurrFieldUnitPrice.CurrencyValue.Value : (productInInventory != null ? Convert.ToDecimal(productInInventory.UnitPrice) : Decimal.Zero); saleItem.Quantity = ucCurrFieldQuantityData.IntValue; if (productInInventory != null) { saleItem.UnitCost = productInInventory.RealCost; } SaleItemList.Add(saleItem); }
protected void grdSaleItens_RowDeleting(object sender, GridViewDeleteEventArgs e) { SaleItemList.RemoveAt(e.RowIndex); BindGrdSaleItem(); }