protected void gvDetails_RowCommand(object sender, GridViewCommandEventArgs e) { if (e.CommandName.Equals("AddNew")) { TextBox txtOdometer = (TextBox)gvDetails.FooterRow.FindControl("txtFtrOdometer"); if (_fuel.Count > 0) { var lastitem = _fuel.Last(); if (Convert.ToDouble(txtOdometer.Text) < lastitem.Value) { lblresult.Text = "Please Enter the Odometer reading greater than the first value."; txtOdometer.Text = ""; lblresult.ForeColor = Color.Red; return; } } TextBox txtGallons = (TextBox)gvDetails.FooterRow.FindControl("txtFtrGallons"); TextBox txtPricePerGallon = (TextBox)gvDetails.FooterRow.FindControl("txtFtrPricePerGallon"); //TextBox txtCost = (TextBox)gvDetails.FooterRow.FindControl("txtFtrCost"); var txtCost = Convert.ToDouble((txtGallons.Text))*Convert.ToDouble((txtPricePerGallon.Text)); TextBox txtFillDate = (TextBox)gvDetails.FooterRow.FindControl("txtFtrFillDate"); //TextBox txtAvgMilesPerGallon = (TextBox)gvDetails.FooterRow.FindControl("txtFtrAvgMilesPerGallon"); var txtAvgMilesPerGallon = 0.0; var count = _fuel.Count; if (_fuel.Count == 0) { txtAvgMilesPerGallon = 0.0; } else { var lastfuelitem = _fuel.Last(); txtAvgMilesPerGallon = (Convert.ToDouble(txtOdometer.Text) - (lastfuelitem.Value)) / Convert.ToDouble(txtGallons.Text); } Fuel userFuel = new Fuel(); userFuel.UserId = _userObj.UserId; userFuel.Odometer = Convert.ToDouble(txtOdometer.Text); userFuel.Gallons = Convert.ToDouble(txtGallons.Text); userFuel.PricePerGallon = Convert.ToDouble(txtPricePerGallon.Text); userFuel.TotalCost = Convert.ToDouble(txtCost); userFuel.FillDate = Convert.ToDateTime(txtFillDate.Text); userFuel.AvgMilesPerGallon = Convert.ToDouble(txtAvgMilesPerGallon); FuelBLL fuelBLL = new FuelBLL(); fuelBLL.InsertUserFuel(userFuel); lblresult.ForeColor = Color.Green; lblresult.Text = " Details inserted successfully"; BindUserFuelDetails(); LoadUserFuelChart(); } }
private void loadUserFuels() { FuelBLL fuelBll = new FuelBLL(); List<Fuel> fuelList = fuelBll.GetUserFuels(_userObj.UserId); if (fuelList != null) { foreach (var fuel in fuelList) { _fuel.Add(fuel.FuelId, fuel.Odometer); } } }
private void LoadUserFuelChart() { FuelBLL fuelBll = new FuelBLL(); if (_userObj != null) { hcFrutas.Series.Clear(); List<Fuel> fuelList = fuelBll.GetUserFuels(_userObj.UserId); if (fuelList != null) { //Defining Axis ArrayList Dates = new ArrayList(); ArrayList Gallons = new ArrayList(); foreach (var userFuel in fuelList) { Dates.Add(userFuel.FillDate.ToString("MMM")); Gallons.Add(userFuel.AvgMilesPerGallon); } //Title configuration hcFrutas.Title = new Title("Miles Per Gallon"); hcFrutas.SubTitle = new SubTitle("Fuel Data"); //Defining Axis hcFrutas.YAxis.Add(new YAxisItem { title = new Title("Gallons"), min = 0, max = 100, tickInterval=10, allowDecimals = true }); hcFrutas.XAxis.Add(new XAxisItem { title = new Highchart.Core.Title("Fill Date"), categories = new object[]{ "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"} }); //data var series = new Collection<Serie>(); // series.Add(new Serie { name = DateTime.Now.ToShortDateString(), data = new object[] { 20 } }); //data //var series = new Collection<Serie>(); foreach (var userFuel in fuelList) { ArrayList avgMilesPerGallon = new ArrayList(); for (int i = 1; i <= 12; i++) { if (i == userFuel.FillDate.Month) { avgMilesPerGallon.Add(userFuel.AvgMilesPerGallon); } else { avgMilesPerGallon.Add(0.0); } } series.Add(new Serie { name = userFuel.FillDate.ToShortDateString(), data = avgMilesPerGallon.ToArray() }); } //configuring Visual hcFrutas.PlotOptions = new Highchart.Core.PlotOptions.PlotOptionsColumn { borderColor = "#dedede", borderRadius = 4 }; //bind hcFrutas.DataSource = series; hcFrutas.DataBind(); } } }
private void BindUserFuelDetails() { FuelBLL fuelBll = new FuelBLL(); if (_userObj != null) { List<Fuel> fuelList = fuelBll.GetUserFuels(_userObj.UserId); bool isHideFirstRow = false; if (fuelList != null) { gvDetails.DataSource = fuelList; gvDetails.DataBind(); } else { isHideFirstRow = true; List<Fuel> fuels = new List<Fuel>(); fuels.Add(new Fuel()); gvDetails.DataSource = fuels; gvDetails.DataBind(); gvDetails.ShowFooter = true; } if (isHideFirstRow) { //Hide the first row if it's empty gvDetails.Rows[0].Visible = false; } } }
protected void gvDetails_RowUpdating(object sender, GridViewUpdateEventArgs e) { int fuelId = Convert.ToInt32(gvDetails.DataKeys[e.RowIndex].Value.ToString()); TextBox txtOdometer = (TextBox)gvDetails.Rows[e.RowIndex].FindControl("txtOdometer"); TextBox txtGallons = (TextBox)gvDetails.Rows[e.RowIndex].FindControl("txtGallons"); TextBox txtPricePerGallon = (TextBox)gvDetails.Rows[e.RowIndex].FindControl("txtPricePerGallon"); TextBox txtCost = (TextBox)gvDetails.Rows[e.RowIndex].FindControl("txtCost"); TextBox txtFillDate = (TextBox)gvDetails.Rows[e.RowIndex].FindControl("txtFillDate"); TextBox txtAvgMilesPerGallon = (TextBox)gvDetails.Rows[e.RowIndex].FindControl("txtAvgMilesPerGallon"); Fuel userFuel = new Fuel(); userFuel.FuelId = fuelId; userFuel.UserId = _userObj.UserId; userFuel.Odometer = Convert.ToDouble(txtOdometer.Text); userFuel.Gallons = Convert.ToDouble(txtGallons.Text); userFuel.PricePerGallon = Convert.ToDouble(txtPricePerGallon.Text); userFuel.TotalCost = Convert.ToDouble(txtCost.Text); userFuel.FillDate = Convert.ToDateTime(txtFillDate.Text); userFuel.AvgMilesPerGallon = Convert.ToDouble(txtAvgMilesPerGallon.Text); FuelBLL fuelBLL = new FuelBLL(); fuelBLL.UpdateUserFuel(userFuel); lblresult.ForeColor = Color.Green; lblresult.Text = " Details Updated successfully"; gvDetails.EditIndex = -1; BindUserFuelDetails(); LoadUserFuelChart(); }
protected void gvDetails_RowDeleting(object sender, GridViewDeleteEventArgs e) { int fuelId = Convert.ToInt32(gvDetails.DataKeys[e.RowIndex].Values["FuelId"].ToString()); FuelBLL fuelBll = new FuelBLL(); fuelBll.DeleteUserFuel(fuelId); lblresult.ForeColor = Color.Red; lblresult.Text = " details deleted successfully"; BindUserFuelDetails(); LoadUserFuelChart(); }