private void CalculateAndAssign() { var lblGross = (Label)grvInvoice.FooterRow.FindControl("lblGross"); var lblSTax = (TextBox)grvInvoice.FooterRow.FindControl("lblSTax"); //var lblTotal = (Label)grvInvoice.FooterRow.FindControl("lblTotal"); var lblGTotal = (TextBox)grvInvoice.FooterRow.FindControl("lblGTotal"); CreditorInvoiceCharge charge = GetCharge(); if (charge != null) { try { lblGross.Text = charge.Gross.ToString("0.00"); } catch { lblGross.Text = "0"; } try { lblSTax.Text = (charge.STax + charge.STaxCess + charge.STaxACess).ToString("0.00"); } catch { lblSTax.Text = "0"; } //try { lblTotal.Text = charge.Total.ToString("0.00"); } //catch { lblTotal.Text = "0"; } try { lblGTotal.Text = charge.GTotal.ToString("0.00"); } catch { lblGTotal.Text = "0"; } } }
protected void grvInvoice_RowCommand(object sender, GridViewCommandEventArgs e) { List <CreditorInvoiceCharge> charges = null; if (ViewState["Charges"] != null) { charges = (List <CreditorInvoiceCharge>)ViewState["Charges"]; } else { charges = new List <CreditorInvoiceCharge>(); } if (e.CommandName == "Add") { if (grvInvoice.FooterRow != null) { CreditorInvoiceCharge charge = new CreditorInvoiceCharge(); //CreditorInvoiceCharge charge = GetCharge(); var id = 1; if (charges.Count > 0) { id = charges.Max(f => f.CreditorInvoiceChargeId); } charge.CreditorInvoiceChargeId = id; var CessAmt = 0.0; var txtUnit = (TextBox)grvInvoice.FooterRow.FindControl("txtUnit"); var txtRate = (TextBox)grvInvoice.FooterRow.FindControl("txtRate"); var txtSTax = (TextBox)grvInvoice.FooterRow.FindControl("lblStax"); var txtConvRate = (TextBox)grvInvoice.FooterRow.FindControl("txtConvRate"); var ddlChargeID = (DropDownList)grvInvoice.FooterRow.FindControl("ddlCharges"); var sTax = string.IsNullOrEmpty(txtSTax.Text)?0.0: Convert.ToDouble(txtSTax.Text); var unit = string.IsNullOrEmpty(txtUnit.Text) ? 0.0 : Convert.ToDouble(txtUnit.Text); var rate = string.IsNullOrEmpty(txtRate.Text) ? 0.0 : Convert.ToDouble(txtRate.Text); var convRate = string.IsNullOrEmpty(txtConvRate.Text) ? 0.0 : Convert.ToDouble(txtConvRate.Text); int ChargeID = ddlChargeID.SelectedValue.ToInt(); var total = 0.0; var gross = 0.0; var gtotal = 0.0; try { total = unit * rate; } catch { total = 0; } try { gross = total * convRate; } catch { gross = 0; } var stx = 0.0; try { stx = sTax; } catch { stx = 0.0; } try { gtotal = gross + stx; // + CessAmt + ACessAmt; } catch { gross = 0; } var ddlCharges = (DropDownList)grvInvoice.FooterRow.FindControl("ddlCharges"); var ddlCurrency = (DropDownList)grvInvoice.FooterRow.FindControl("ddlCurrency"); var ddlSize = (DropDownList)grvInvoice.FooterRow.FindControl("ddlSize"); var ddlUnitType = (DropDownList)grvInvoice.FooterRow.FindControl("ddlUnitType"); charge.ChargeId = Convert.ToInt32(ddlCharges.SelectedValue); charge.CurrencyId = Convert.ToInt32(ddlCurrency.SelectedValue); charge.Currency = ddlCurrency.SelectedItem.Text; charge.ChargeName = ddlCharges.SelectedItem.Text; charge.ConvRate = convRate; charge.Unit = unit; charge.UnitType = ddlUnitType.SelectedItem.Text; charge.UnitTypeID = ddlUnitType.SelectedValue.ToInt(); charge.CntrSize = ddlSize.SelectedValue; charge.Total = total; charge.Gross = gross; //charge.STaxPercentage = sTax; charge.STax = sTax; //charge.STaxCess = CessAmt; //charge.STaxACess = ACessAmt; charge.GTotal = gtotal; charge.Rate = rate; charges.Add(charge); var sum = charges.Sum(m => m.GTotal); hdnInvoiceAmount.Value = sum.ToString(); if (chkRoff.Checked == true) { txtRoff.Text = Math.Round((Math.Round(sum) - sum), 2).ToString(); lblInvoiceAmount.Text = String.Format("{0:0.00}", sum + Math.Round((Math.Round(sum) - sum), 2)); } else { txtRoff.Text = "0"; lblInvoiceAmount.Text = String.Format("{0:0.00}", sum, 2); } } } else if (e.CommandName == "Remove") { try { var t = charges.FindAll(f => f.CreditorInvoiceChargeId.ToString().Equals(e.CommandArgument)).FirstOrDefault(); if (t != null) { charges.Remove(t); var sum = charges.Sum(m => m.GTotal); hdnInvoiceAmount.Value = sum.ToString(); if (chkRoff.Checked == true) { txtRoff.Text = Math.Round((Math.Round(sum) - sum), 2).ToString(); lblInvoiceAmount.Text = String.Format("{0:0.00}", sum + Math.Round((Math.Round(sum) - sum), 2)); } else { txtRoff.Text = "0"; lblInvoiceAmount.Text = sum.ToString(); } } } catch { } } if (charges.Count == 0) { SetEmptyGrid(); } else { ViewState["Charges"] = charges; grvInvoice.DataSource = charges; grvInvoice.DataBind(); PopulateUnitType(); } }
private CreditorInvoiceCharge GetCharge() { var CessAmt = 0.0; var ACessAmt = 0.0; DataSet ds = new DataSet(); var txtUnit = (TextBox)grvInvoice.FooterRow.FindControl("txtUnit"); var txtRate = (TextBox)grvInvoice.FooterRow.FindControl("txtRate"); var txtSTax = (TextBox)grvInvoice.FooterRow.FindControl("lblStax"); var txtConvRate = (TextBox)grvInvoice.FooterRow.FindControl("txtConvRate"); var ddlChargeID = (DropDownList)grvInvoice.FooterRow.FindControl("ddlCharges"); //var sTax = string.IsNullOrEmpty(txtSTax.Text)?0.0: Convert.ToDouble(txtSTax.Text); var unit = string.IsNullOrEmpty(txtUnit.Text) ? 0.0 : Convert.ToDouble(txtUnit.Text); var rate = string.IsNullOrEmpty(txtRate.Text) ? 0.0 : Convert.ToDouble(txtRate.Text); var convRate = string.IsNullOrEmpty(txtConvRate.Text) ? 0.0 : Convert.ToDouble(txtConvRate.Text); int ChargeID = ddlChargeID.SelectedValue.ToInt(); var total = 0.0; var gross = 0.0; var gtotal = 0.0; try { total = unit * rate; } catch { total = 0; } try { gross = total * convRate; } catch { gross = 0; } var stx = 0.0; try { //stx = (gross * sTax) / 100; //CessAmt = ViewState["CessPer"].ToDouble() * (sTax * gross / 100) / 100; //ACessAmt = ViewState["ACessPer"].ToDouble() * (sTax * gross / 100) / 100; //stx = sTax; ds = new EstimateBLL().GetServiceTax(lblJobDate.Text.ToDateTime(), (unit * rate * convRate).ToDecimal(), ChargeID); if (ds.Tables[1].Rows[0]["ServiceTax"].ToInt() == 1) { txtSTax.Text = (ds.Tables[0].Rows[0]["stax"].ToDecimal() + ds.Tables[0].Rows[0]["CessAmt"].ToDecimal() + ds.Tables[0].Rows[0]["AddCess"].ToDecimal()).ToString("#######0.00"); stx = Convert.ToDouble(txtSTax.Text); } else { txtSTax.Text = "0"; stx = 0; } } catch { } try { gtotal = gross + stx; // + CessAmt + ACessAmt; } catch { gross = 0; } var ddlCharges = (DropDownList)grvInvoice.FooterRow.FindControl("ddlCharges"); var ddlCurrency = (DropDownList)grvInvoice.FooterRow.FindControl("ddlCurrency"); var ddlSize = (DropDownList)grvInvoice.FooterRow.FindControl("ddlSize"); var ddlUnitType = (DropDownList)grvInvoice.FooterRow.FindControl("ddlUnitType"); CreditorInvoiceCharge charge = new CreditorInvoiceCharge(); charge.ChargeId = Convert.ToInt32(ddlCharges.SelectedValue); charge.CurrencyId = Convert.ToInt32(ddlCurrency.SelectedValue); charge.Currency = ddlCurrency.SelectedItem.Text; charge.ChargeName = ddlCharges.SelectedItem.Text; charge.ConvRate = convRate; charge.Unit = unit; charge.UnitType = ddlUnitType.SelectedItem.Text; charge.UnitTypeID = ddlUnitType.SelectedValue.ToInt(); charge.CntrSize = ddlSize.SelectedValue; charge.Total = total; charge.Gross = gross; //charge.STaxPercentage = sTax; charge.STax = stx; charge.STaxCess = CessAmt; charge.STaxACess = ACessAmt; charge.GTotal = gtotal; charge.Rate = rate; return(charge); }