public static bool DeleteBudget(int budgetId, int companyId) { bool result = true; using (SaleManager saleManager = new SaleManager(null)) { try { var serviceOrder = new ServicesManager(null).GetServiceOrder(companyId, budgetId); if (serviceOrder != null) saleManager.DetachBudgetFromServiceOrder(serviceOrder.ServiceOrderId); saleManager.Delete(saleManager.GetBudget(budgetId, companyId)); } catch (System.Data.SqlClient.SqlException e) { result = false; } } return result; }
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(); }
protected void lstBudget_SelectedIndexChanged(object sender, EventArgs e) { // //Toda vez que um usuário selecionar um orçamento, eu envio o valor para uma variável JavaScript, //para poder pegar na tela de pagamento dinamicamente, o processo é feito, para no caso de a venda //ser concretizada, o orçamento deverá ser apagado (Executando em sessão, pois não achei o método de //fazer com hidden // //Page.ViewState["bugdetId"] = bugdetId; CreateBasket(); Session["BudgetId"] = Convert.ToInt32(lstBudget.SelectedValue); ProductManager productManager = new ProductManager(this); SaleManager saleManager = new SaleManager(this); Budget budget = saleManager.GetBudget((Int32)Session["BudgetId"], Company.CompanyId); if (budget.Discount.HasValue) { if (budget.DiscountType == (int)DiscountType.Cash) txtDiscount.Text = budget.Discount.Value.ToString("##,##0.00"); else { #warning eliminar variavel temporaria/ criar método, ou executar função novamente Decimal? discount = budget.BudgetItems.Sum(bi => bi.Quantity * bi.UnitPrice) * (budget.Discount.Value / 100); if (discount.HasValue) txtDiscount.Text = discount.Value.ToString("##,##0.00"); } } if (budget.AdditionalCost.HasValue) txtDiscount.Text = (Convert.ToDecimal(txtDiscount.Text) - Convert.ToDecimal(budget.AdditionalCost.Value)).ToString("##,##0.00"); foreach (DataRow row in productManager.GetProductsByBudget((Int32)Session["BudgetId"]).Rows) { string productName; if (!String.IsNullOrEmpty(row["Name"].ToString())) productName = row["Name"].ToString(); else productName = row["SpecialProductName"].ToString(); //string productName = row["Name"].ToString() + row["SpecialProductName"].ToString(); if (String.IsNullOrEmpty(row["ProductId"].ToString())) productName += " <img src='" + ResolveClientUrl("~/App_Shared/themes/glasscyan/Company/Product_warning.gif") + "' alt='Este produto não se encontra cadastrado!' />"; basket.Rows.Add( row["ProductId"], row["Quantity"], productName, /*SerialNumber*/ "", row["ProductCode"], row["unitPrice"], Convert.ToDouble(row["Quantity"]) * Convert.ToDouble(row["unitPrice"]), row["UnitCost"] != DBNull.Value ? Convert.ToDouble(row["UnitCost"]) : 0 ); } BindGrid(); }
protected void Page_Load(object sender, EventArgs e) { StoreHtmlContent = true; CompanyManager cManager; CompanyConfiguration cSettings; SaleManager saleManager; if (!IsPostBack) { if (Request.QueryString["BudgetId"] != null) Page.ViewState["BudgetId"] = Request.QueryString["BudgetId"]; if (Page.ViewState["BudgetId"] != null) { saleManager = new SaleManager(this); budget = saleManager.GetBudget(Convert.ToInt32(Page.ViewState["BudgetId"]), Company.CompanyId); double ipi = 0; double sub = 0; subTotal = budget.BudgetItems.Sum(i => i.UnitPrice * i.Quantity); rptProduct.DataSource = budget.BudgetItems; rptProduct.DataBind(); loadDataOfBudget(); loadDataOfCustomer(); } } }