public IActionResult getFailedTransactions() { HighChartModel chart = new HighChartModel(); chart.chart.type = "pie"; chart.title.text = ""; chart.colors = new List <string>() { "#77cc15", "#FB1926", "#FFE033", "#FF7A05" }; chart.yAxis.Add(new YAxis() { title = new Title() { text = "Approved or Accredited" } }); chart.xAxis.Add(new XAxis() { title = new Title() { text = "Failed" } }); var transactionList = db.PaymentTransaction.ToList(); var failedTransactions = transactionList.Where(x => x.StatusDetail != "approved" && x.StatusDetail != "accredited").Count(); var successTransactions = transactionList.Where(x => x.StatusDetail == "approved" || x.StatusDetail == "accredited").Count(); var onHoldTransactions = transactionList.Where(x => x.StatusDetail == "onhold").Count(); // var fraudTransactions = transactionList.Where(x => x.StatusDetail == "fraud").Count(); chart.series.Add(new Series() { name = "Transactions", data = new List <Data>() { new Data() { name = "Approved", y = successTransactions }, new Data() { name = "Failed", y = failedTransactions }, new Data() { name = "On Hold", y = onHoldTransactions }, //new Data() { name = "Fraud", y = fraudTransactions } }, colorByPoint = true }); return(Ok(chart)); }
public IActionResult getUserActivity() { HighChartModel chart = new HighChartModel(); chart.chart.type = "line"; chart.title.text = ""; chart.colors = new List <string>() { "#77cc15" }; chart.yAxis.Add(new YAxis() { title = new Title() { text = "Number Of Users" } }); chart.xAxis.Add(new XAxis() { title = new Title() { text = "Pages" } }); var dataList = db.UserLogs.Include(x => x.Page).ToList(); var xray = dataList.GroupBy(x => x.Page.Name).Select(g => new { Name = g.Key, Users = g.Count() }).Take(5).ToList(); var sortedXray = xray.OrderByDescending(x => x.Users).ToList(); var tempList = new List <Data>(); foreach (var item in sortedXray) { var temp = new Data(); temp.name = item.Name; temp.y = Convert.ToDecimal(item.Users); tempList.Add(temp); } chart.series.Add(new Series() { name = "User Activity", data = tempList }); return(Ok(chart)); }
public IActionResult MostSearchedProducts() { HighChartModel chart = new HighChartModel(); chart.chart.type = "bar"; chart.title.text = ""; chart.colors = new List <string>() { "#77cc15" }; chart.yAxis.Add(new YAxis() { title = new Title() { text = "Number Of Users" } }); chart.xAxis.Add(new XAxis() { title = new Title() { text = "Products" } }); var result = db.SearchTerm.Where(x => x.Name != null && x.IsActive == true && x.ProductCount != 0) .OrderByDescending(x => x.UserCount).Take(5).ToList(); var tempList = new List <Data>(); var productList = db.Products.Where(x => x.IsActive == true && x.Name != null).ToList(); foreach (var item in result) { var temp = new Data(); var product = productList.Where(x => x.Name.Contains(item.Name)).FirstOrDefault(); if (product != null) { temp.name = product.Name; temp.y = Convert.ToDecimal(item.UserCount); tempList.Add(temp); } } chart.series.Add(new Series() { name = "Most Searched Products", data = tempList }); return(Ok(chart)); }
public IActionResult getTopCustomers() { HighChartModel chart = new HighChartModel(); chart.chart.type = "line"; chart.title.text = ""; chart.colors = new List <string>() { "#77cc15", "#FB1926" }; chart.yAxis.Add(new YAxis() { title = new Title() { text = "Purchases" } }); chart.xAxis.Add(new XAxis() { title = new Title() { text = "Customers" } }); var result = db.CheckoutItems.Include(x => x.User).Where(x => x.User.FirstName != null).ToList(); var xtt = result; var xray = result.GroupBy(x => x.User.FirstName).Select(g => new { Name = g.Key, Quantity = g.Sum(x => x.Quantity) }).OrderByDescending(x => x.Quantity).Take(5).ToList(); var tempList = new List <Data>(); foreach (var item in xray) { var temp = new Data(); temp.name = item.Name; temp.y = Convert.ToDecimal(item.Quantity); tempList.Add(temp); } chart.series.Add(new Series() { name = "Customers With Most Purchases", data = tempList }); return(Ok(chart)); }
public IActionResult getBestSellers() { HighChartModel chart = new HighChartModel(); chart.chart.type = "column"; chart.title.text = ""; chart.colors = new List <string>() { "#77cc15" }; chart.yAxis.Add(new YAxis() { title = new Title() { text = "Quantity" } }); chart.xAxis.Add(new XAxis() { title = new Title() { text = "Products" } }); var result = db.CheckoutItems.Include(x => x.ProductVariantDetail.Product).ToList(); var xray = result.GroupBy(x => x.ProductVariantDetail.Product.Name).Select(g => new { Name = g.Key, Quantity = g.Sum(x => x.Quantity) }).OrderByDescending(x => x.Quantity).Take(5).ToList(); var tempList = new List <Data>(); foreach (var item in xray) { var temp = new Data(); temp.name = item.Name; temp.y = Convert.ToDecimal(item.Quantity); tempList.Add(temp); } chart.series.Add(new Series() { name = "Best Selling Products", data = tempList }); return(Ok(chart)); }
public IActionResult getSalesAndRefund() { HighChartModel chart = new HighChartModel(); chart.chart.type = "pie"; chart.title.text = ""; chart.colors = new List <string>() { "#77cc15", "#FB1926" }; chart.yAxis.Add(new YAxis() { title = new Title() { text = "Sales" } }); chart.xAxis.Add(new XAxis() { title = new Title() { text = "Refund" } }); var totalSales = db.CheckoutItems.Sum(x => x.Quantity); var totalRefunds = db.Return.Sum(x => x.Quantity); var realSales = totalSales - totalRefunds; chart.series.Add(new Series() { name = "Sales And Refunds", data = new List <Data>() { new Data() { name = "Sales", y = realSales }, new Data() { name = "Refunds", y = totalRefunds }, }, colorByPoint = true }); return(Ok(chart)); }
public IActionResult MostSearchedKeywords() { HighChartModel chart = new HighChartModel(); chart.chart.type = "bar"; chart.title.text = ""; chart.colors = new List <string>() { "#77cc15" }; chart.yAxis.Add(new YAxis() { title = new Title() { text = "Number Of Users" } }); chart.xAxis.Add(new XAxis() { title = new Title() { text = "Search Keywords" } }); var result = db.SearchTerm.Where(x => x.Name != null && x.IsActive == true).OrderByDescending(x => x.UserCount).Take(5).ToList(); var tempList = new List <Data>(); foreach (var item in result) { var temp = new Data(); temp.name = item.Name.ToString(); temp.y = Convert.ToDecimal(item.UserCount); tempList.Add(temp); } chart.series.Add(new Series() { name = "Most Searched Keywords", data = tempList }); return(Ok(chart)); }
public IActionResult numOfUsersToday() { HighChartModel chart = new HighChartModel(); chart.chart.type = "line"; chart.title.text = ""; chart.colors = new List <string>() { "#77cc15" }; chart.yAxis.Add(new YAxis() { title = new Title() { text = "Number Of Users" } }); chart.xAxis.Add(new XAxis()); var data = db.UserLogs.ToList(); var numOfHours = DateTime.Now.AddHours(-1).Hour; List <Data> tempList = new List <Data>(); for (int i = numOfHours; i > 0; i--) { var temp = new Data(); temp.name = DateTime.Now.AddHours(-i).Hour.ToString(); temp.y = data.Where(x => x.LogInDate >= DateTime.Now.AddHours(-i)).Count(); tempList.Add(temp); } chart.series.Add(new Series() { name = "Hours", data = tempList }); return(Ok(chart)); }
public IActionResult lowStock6Products(int VendorId) { HighChartModel chart = new HighChartModel(); chart.chart.type = "column"; chart.title.text = ""; chart.chart.height = 290; chart.colors = new List <string>() { "#50a6f8", "#6fc040", "#f5d427", "#f3901d", "#8085E9", "#e45e33" }; //chart.colors = new List<string>() { "#77cc15" }; chart.yAxis.Add(new YAxis() { title = new Title() { text = "Stock" } }); chart.xAxis.Add(new XAxis()); var data = db.ProductVariantDetails.Where(x => x.IsActive == true && x.Product.VendorId == VendorId && x.Product.IsActive == true).OrderBy(x => x.InStock).Take(6).Include(x => x.Product).ToList(); var list = new List <Data>(); foreach (var d in data) { var model = new Data(); model.name = d.Product.Name; model.y = d.InStock; list.Add(model); } chart.series.Add(new Series() { name = "Low Stock 6 Products", data = list, colorByPoint = true, }); return(Ok(chart)); }
public IActionResult numOfUsers() { HighChartModel chart = new HighChartModel(); chart.chart.type = "line"; chart.title.text = ""; chart.colors = new List <string>() { "#77cc15" }; chart.yAxis.Add(new YAxis() { title = new Title() { text = "Number Of Users" } }); chart.xAxis.Add(new XAxis()); var data = db.UserLogs.ToList(); var userList = data.Where(x => x.LogInDate >= DateTime.Now.AddHours(-1)).Count(); chart.series.Add(new Series() { name = "Users", data = new List <Data>() { new Data() { name = "Last one Hour", y = userList }, } }); return(Ok(chart)); }
public IActionResult getNewCustomers(int year) { HighChartModel chart = new HighChartModel(); chart.chart.type = "line"; chart.title.text = ""; chart.colors = new List <string>() { "#77cc15" }; chart.yAxis.Add(new YAxis() { title = new Title() { text = "Amount" } }); chart.xAxis.Add(new XAxis()); var userList = db.Users.Where(x => x.DateTime.Value.Year == year && x.RoleId == 1).ToList(); var JanUsers = userList.Where(x => x.DateTime.Value.Month == 01).Count(); var FebUsers = userList.Where(x => x.DateTime.Value.Month == 02).Count(); var MarUsers = userList.Where(x => x.DateTime.Value.Month == 03).Count(); var AprUsers = userList.Where(x => x.DateTime.Value.Month == 04).Count(); var MayUsers = userList.Where(x => x.DateTime.Value.Month == 05).Count(); var JunUsers = userList.Where(x => x.DateTime.Value.Month == 06).Count(); var JulUsers = userList.Where(x => x.DateTime.Value.Month == 07).Count(); var AugUsers = userList.Where(x => x.DateTime.Value.Month == 08).Count(); var SepUsers = userList.Where(x => x.DateTime.Value.Month == 09).Count(); var OctUsers = userList.Where(x => x.DateTime.Value.Month == 10).Count(); var NovUsers = userList.Where(x => x.DateTime.Value.Month == 11).Count(); var DecUsers = userList.Where(x => x.DateTime.Value.Month == 12).Count(); chart.series.Add(new Series() { name = "New Customers", data = new List <Data>() { new Data() { name = "Jan", y = JanUsers }, new Data() { name = "Feb", y = FebUsers }, new Data() { name = "Mar", y = MarUsers }, new Data() { name = "Apr", y = AprUsers }, new Data() { name = "May", y = MayUsers }, new Data() { name = "Jun", y = JunUsers }, new Data() { name = "Jul", y = JulUsers }, new Data() { name = "Aug", y = AugUsers }, new Data() { name = "Sep", y = SepUsers }, new Data() { name = "Oct", y = OctUsers }, new Data() { name = "Nov", y = NovUsers }, new Data() { name = "Dec", y = DecUsers } } }); return(Ok(chart)); }
public IActionResult GetSales(int Year, int Period) { HighChartModel chart = new HighChartModel(); chart.chart.type = "line"; chart.title.text = ""; chart.colors = new List <string>() { "#77cc15" }; chart.yAxis.Add(new YAxis() { title = new Title() { text = "Amount" } }); chart.xAxis.Add(new XAxis()); var sale = db.PaymentTransaction.Where(x => x.intent == "sale" && x.paymentID != null && x.CheckoutId != null && x.CheckoutId != 0 && x.Date.Value.Year == Year); var refund = db.PaymentTransaction.Where(x => x.intent == "refund" && x.ReturnId != null && x.Date.Value.Year == Year); //Sale var JanSale = Convert.ToDecimal(sale.Where(x => x.Date.Value.Month == 01).Sum(x => x.TransactionAmount)); var FebSale = Convert.ToDecimal(sale.Where(x => x.Date.Value.Month == 02).Sum(x => x.TransactionAmount)); var MarSale = Convert.ToDecimal(sale.Where(x => x.Date.Value.Month == 03).Sum(x => x.TransactionAmount)); var AprSale = Convert.ToDecimal(sale.Where(x => x.Date.Value.Month == 04).Sum(x => x.TransactionAmount)); var MaySale = Convert.ToDecimal(sale.Where(x => x.Date.Value.Month == 05).Sum(x => x.TransactionAmount)); var JunSale = Convert.ToDecimal(sale.Where(x => x.Date.Value.Month == 06).Sum(x => x.TransactionAmount)); var JulSale = Convert.ToDecimal(sale.Where(x => x.Date.Value.Month == 07).Sum(x => x.TransactionAmount)); var AugSale = Convert.ToDecimal(sale.Where(x => x.Date.Value.Month == 08).Sum(x => x.TransactionAmount)); var SepSale = Convert.ToDecimal(sale.Where(x => x.Date.Value.Month == 09).Sum(x => x.TransactionAmount)); var OctSale = Convert.ToDecimal(sale.Where(x => x.Date.Value.Month == 10).Sum(x => x.TransactionAmount)); var NovSale = Convert.ToDecimal(sale.Where(x => x.Date.Value.Month == 11).Sum(x => x.TransactionAmount)); var DecSale = Convert.ToDecimal(sale.Where(x => x.Date.Value.Month == 12).Sum(x => x.TransactionAmount)); //Refund var JanRefund = Convert.ToDecimal(refund.Where(x => x.Date.Value.Month == 01).Sum(x => x.TransactionAmount)); var FebRefund = Convert.ToDecimal(refund.Where(x => x.Date.Value.Month == 02).Sum(x => x.TransactionAmount)); var MarRefund = Convert.ToDecimal(refund.Where(x => x.Date.Value.Month == 03).Sum(x => x.TransactionAmount)); var AprRefund = Convert.ToDecimal(refund.Where(x => x.Date.Value.Month == 04).Sum(x => x.TransactionAmount)); var MayRefund = Convert.ToDecimal(refund.Where(x => x.Date.Value.Month == 05).Sum(x => x.TransactionAmount)); var JunRefund = Convert.ToDecimal(refund.Where(x => x.Date.Value.Month == 06).Sum(x => x.TransactionAmount)); var JulRefund = Convert.ToDecimal(refund.Where(x => x.Date.Value.Month == 07).Sum(x => x.TransactionAmount)); var AugRefund = Convert.ToDecimal(refund.Where(x => x.Date.Value.Month == 08).Sum(x => x.TransactionAmount)); var SepRefund = Convert.ToDecimal(refund.Where(x => x.Date.Value.Month == 09).Sum(x => x.TransactionAmount)); var OctRefund = Convert.ToDecimal(refund.Where(x => x.Date.Value.Month == 10).Sum(x => x.TransactionAmount)); var NovRefund = Convert.ToDecimal(refund.Where(x => x.Date.Value.Month == 11).Sum(x => x.TransactionAmount)); var DecRefund = Convert.ToDecimal(refund.Where(x => x.Date.Value.Month == 12).Sum(x => x.TransactionAmount)); if (Period == 0)//yearly { chart.series.Add(new Series() { name = "Sales", data = new List <Data>() { new Data() { name = "Jan", y = JanSale - JanRefund }, new Data() { name = "Feb", y = FebSale - FebRefund }, new Data() { name = "Mar", y = MarSale - MarRefund }, new Data() { name = "Apr", y = AprSale - AprRefund }, new Data() { name = "May", y = MaySale - MayRefund }, new Data() { name = "Jun", y = JunSale - JunRefund }, new Data() { name = "Jul", y = JulSale - JulRefund }, new Data() { name = "Aug", y = AugSale - AugRefund }, new Data() { name = "Sep", y = SepSale - SepRefund }, new Data() { name = "Oct", y = OctSale - OctRefund }, new Data() { name = "Nov", y = NovSale - NovRefund }, new Data() { name = "Dec", y = DecSale - DecRefund } } }); } else { if (Period == 1) { var sale1 = db.PaymentTransaction.Where(x => x.intent == "sale" && x.paymentID != null && x.CheckoutId != null && x.CheckoutId != 0 && x.Date == DateTime.Now.Date).Sum(x => x.TransactionAmount); var refund1 = db.PaymentTransaction.Where(x => x.intent == "refund" && x.ReturnId != null && x.Date == DateTime.Now.Date).Sum(x => x.TransactionAmount); var today = Convert.ToDecimal(sale1 - refund1); // var data1 = db.Checkouts.Where(x => x.IsActive == true && x.IsPaid == true && x.Date.Date == DateTime.Now.Date).ToList(); // var today = data1.Sum(x => x.TransactionAmount); chart.series.Add(new Series() { name = "Sales", data = new List <Data>() { new Data() { name = "Today", y = today }, } }); } else if (Period == 2) { var sale1 = db.PaymentTransaction.Where(x => x.intent == "sale" && x.paymentID != null && x.CheckoutId != null && x.CheckoutId != 0 && x.Date == DateTime.Now.Date).ToList(); var refund1 = db.PaymentTransaction.Where(x => x.intent == "refund" && x.ReturnId != null && x.Date == DateTime.Now.Date).ToList(); var saleamount = sale1.Where(x => x.Date >= DateTime.Now.AddHours(-1)).Sum(x => x.TransactionAmount); var refundamount = refund1.Where(x => x.Date >= DateTime.Now.AddHours(-1)).Sum(x => x.TransactionAmount); var today = Convert.ToDecimal(saleamount - refundamount); //var data1 = db.Checkouts.Where(x => x.IsActive == true && x.IsPaid == true && x.Date.Date == DateTime.Now.Date).ToList(); //var today = data1.Where(x => x.Date >= DateTime.Now.AddHours(-1)).Sum(x => x.TransactionAmount); chart.series.Add(new Series() { name = "Sales", data = new List <Data>() { new Data() { name = "Last one Hour", y = today }, } }); } } return(Ok(chart)); }
public IActionResult GetSales(int Year, int Period, int VendorId) { HighChartModel chart = new HighChartModel(); chart.chart.type = "line"; chart.title.text = ""; chart.chart.height = 290; // chart.chart.width = 100 ; chart.colors = new List <string>() { "#77cc15" }; chart.yAxis.Add(new YAxis() { title = new Title() { text = "Amount" } }); chart.xAxis.Add(new XAxis()); var data = db.VendorTransaction.Where(x => x.IsActive == true && x.TransactionDate.Year == Year && x.IsPaidByPistis == false && x.VendorId == VendorId).ToList(); var JanSale = data.Where(x => x.TransactionDate.Month == 01).Sum(x => x.AmountPaid); var FebSale = data.Where(x => x.TransactionDate.Month == 02).Sum(x => x.AmountPaid); var MarSale = data.Where(x => x.TransactionDate.Month == 03).Sum(x => x.AmountPaid); var AprSale = data.Where(x => x.TransactionDate.Month == 04).Sum(x => x.AmountPaid); var MaySale = data.Where(x => x.TransactionDate.Month == 05).Sum(x => x.AmountPaid); var JunSale = data.Where(x => x.TransactionDate.Month == 06).Sum(x => x.AmountPaid); var JulSale = data.Where(x => x.TransactionDate.Month == 07).Sum(x => x.AmountPaid); var AugSale = data.Where(x => x.TransactionDate.Month == 08).Sum(x => x.AmountPaid); var SepSale = data.Where(x => x.TransactionDate.Month == 09).Sum(x => x.AmountPaid); var OctSale = data.Where(x => x.TransactionDate.Month == 10).Sum(x => x.AmountPaid); var NovSale = data.Where(x => x.TransactionDate.Month == 11).Sum(x => x.AmountPaid); var DecSale = data.Where(x => x.TransactionDate.Month == 12).Sum(x => x.AmountPaid); if (Period == 0)//yearly { chart.series.Add(new Series() { name = "Sales", data = new List <Data>() { new Data() { name = "Jan", y = JanSale }, new Data() { name = "Feb", y = FebSale }, new Data() { name = "Mar", y = MarSale }, new Data() { name = "Apr", y = AprSale }, new Data() { name = "May", y = MaySale }, new Data() { name = "Jun", y = JunSale }, new Data() { name = "Jul", y = JulSale }, new Data() { name = "Aug", y = AugSale }, new Data() { name = "Sep", y = SepSale }, new Data() { name = "Oct", y = OctSale }, new Data() { name = "Nov", y = NovSale }, new Data() { name = "Dec", y = DecSale } } }); } else { if (Period == 1) { var data1 = db.VendorTransaction.Where(x => x.IsActive == true && x.TransactionDate.Date == DateTime.Now.Date && x.IsPaidByPistis == false && x.VendorId == VendorId).ToList(); var today = data1.Sum(x => x.AmountPaid); chart.series.Add(new Series() { name = "Sales", data = new List <Data>() { new Data() { name = "Today", y = today }, } }); } else if (Period == 2) { var data1 = db.VendorTransaction.Where(x => x.IsActive == true && x.TransactionDate.Date == DateTime.Now.Date && x.IsPaidByPistis == false && x.VendorId == VendorId).ToList(); var today = data1.Where(x => x.TransactionDate >= DateTime.Now.AddHours(-1)).Sum(x => x.AmountPaid); chart.series.Add(new Series() { name = "Sales", data = new List <Data>() { new Data() { name = "Last one Hour", y = today }, } }); } } return(Ok(chart)); }
public ActionResult GetHourStatistics(HourStatisticsType hourStatisticsType, int?year, Area?area) { if (CurrentUser.UserRole == UserRole.Rackaz) { area = CurrentUser.Area; } if (!year.HasValue) { year = DateTime.Now.Year; } var startTime = new DateTime(year.Value, 10, 1); var endTime = new DateTime(year.Value + 1, 10, 1); var result = _reportService.GetHourStatistics(area, startTime, endTime, hourStatisticsType); //TODO: dont show if no data exists: //if (result.Data == null) //{ // return Error(result); //} if (result.Success) { var series = new List <double>(); for (var i = 1; i <= 12; i++) { var hours = 0.0; var month = (i + 8) % 12 + 1; if (result.Data.HourStatistics.ContainsKey(month)) { hours = result.Data.HourStatistics[month]; } series.Add(Math.Round(hours, 2)); } series = RemoveLastsZeros(series); var chartModel = new HighChartModel { chart = new Chart { type = "line" }, title = new Title { text = (area.HasValue ? string.Format(" סטטיסטיקת שעות חניכה באיזור {0}", area.Value.ToDescription()) : " סטטיסטיקת שעות חניכה"), x = -20 }, xAxis = new Xaxis { categories = new List <string> { "אוקטובר", "נובמבר", "דצמבר", "ינואר", "פברואר", "מרץ", "אפריל", "מאי", "יוני", "יולי", "אוגוסט", "ספטמבר" }, title = new Title1 { text = string.Format("אוקטובר {0} - ספטמבר {1}", year, year + 1) //text = "אוקטובר שנה נבחרת עד ספטמבר שנה לאחר מכן" } }, yAxis = new Yaxis { title = new Title1 { text = "סכום שעות החניכה" }, plotLines = new List <Plotline> { new Plotline { color = "red", dashStyle = "Solid", // TODO : Change to real values from or value = hourStatisticsType == HourStatisticsType.Sum ? 100000 : 12, width = 3 } } }, series = new List <Series> { new Series { data = series, name = (hourStatisticsType == 0? string.Format("סכום שעות חניכה"): "ממוצע שעות חניכה"), } }, legend = new Legend { layout = "vertical", align = "right", verticalAlign = "middle", borderWidth = 0 }, tooltip = new Tooltip1() { headerFormat = "<span style='font-size:10px'>{point.key}</span><table>", pointFormat = "<tr><td style='color:{series.color};padding:0'>{series.name}: </td><td style='padding:0'><b>{point.y}</b></td></tr>", footerFormat = "</table>", shared = true, useHTML = true }, exporting = new Exporting { enabled = true } }; return(Json(chartModel)); } return(Error(result)); //return null; }
public ActionResult GetAvrGradeStatistics(Area?area) { if (CurrentUser.UserRole == UserRole.Rackaz) { area = CurrentUser.Area; } var result = _reportService.GetAvrGradeStatistics(area); if (result.Success) { var series = new List <double>(); foreach (var ts in result.Data.AvrGradeStatistics) { var avrGrade = 0.0; avrGrade = ts.Value; series.Add(Math.Round(avrGrade, 2)); } series = RemoveLastsZeros(series); var yearAndSemesterList = new List <string>(); foreach (var ts in result.Data.AvrGradeStatistics) { var i = ts.Key; yearAndSemesterList.Add(i); } var chartModel = new HighChartModel { chart = new Chart { type = "line" }, title = new Title { text = (area.HasValue ? string.Format(" ממוצע חניכים במהלך הסמסטרים באיזור {0}", area.Value.ToDescription()) : " ממוצע חניכים במהלך הסמסטרים"), //text = "דוח ממוצע חניכים במהלך הסמסטרים", x = -20 }, xAxis = new Xaxis { categories = yearAndSemesterList, title = new Title1 { text = "שנה_סמסטר" } }, yAxis = new Yaxis { title = new Title1 { text = "ממוצע ציונים" }, plotLines = new List <Plotline> { new Plotline { color = "#808080", value = 0, width = 1 } } }, series = new List <Series> { new Series { data = series, name = "ממוצע ציונים" } }, legend = new Legend { layout = "vertical", align = "right", verticalAlign = "middle", borderWidth = 0 }, tooltip = new Tooltip1() { headerFormat = "<span style='font-size:10px'>{point.key}</span><table>", pointFormat = "<tr><td style='color:{series.color};padding:0'>{series.name}: </td><td style='padding:0'><b>{point.y}</b></td></tr>", footerFormat = "</table>", shared = true, useHTML = true }, exporting = new Exporting { enabled = true } }; return(Json(chartModel)); } return(Error(result)); //return null; }
public ActionResult GetInvestedHoursStatistics(Area?area) { if (CurrentUser.UserRole == UserRole.Rackaz) { area = CurrentUser.Area; } var result = _reportService.GetInvestedHoursStatistics(area); if (result.Success) { var series = new List <double>(); //function that findes the most pazam trainee!!! var maxYearT = _reportService.GetMaxPazam(); var max = maxYearT.Data; for (var i = max; i >= 0; i--) { var investedHours = 0.0; if (result.Data.InvestedHoursStatistics.ContainsKey(i)) { investedHours = result.Data.InvestedHoursStatistics[i]; } series.Add(Math.Round(investedHours, 2)); } series = RemoveLastsZeros(series); //int[] pazamList = new int[max]; var pazamList = new List <string>(); for (var i = 0; i <= max; i++) { //pazamList[i] = i.ToString(); var relevantYear = DateTime.Now.Year - max + i; pazamList.Add(relevantYear.ToString()); } var chartModel = new HighChartModel { chart = new Chart { type = "line" }, title = new Title { text = (area.HasValue ? string.Format(" סטטיסטיקת שעות חניכה כתלות בותק באיזור {0}", area.Value.ToDescription()) : " סטטיסטיקת שעות חניכה כתלות בותק"), //text = "דוח סטטיסטיקה שעות חניכה כתלות בותק", x = -20 }, xAxis = new Xaxis { categories = pazamList, // new List<string> title = new Title1 { text = "שנת הצטרפות החניך" } }, yAxis = new Yaxis { title = new Title1 { text = "סכום שעות החניכה" }, plotLines = new List <Plotline> { new Plotline { color = "#808080", value = 0, width = 1 } } }, series = new List <Series> { new Series { data = series, name = "סכום שעות חניכה" } }, legend = new Legend { layout = "vertical", align = "right", verticalAlign = "middle", borderWidth = 0 }, tooltip = new Tooltip1() { headerFormat = "<span style='font-size:10px'>{point.key}</span><table>", pointFormat = "<tr><td style='color:{series.color};padding:0'>{series.name}: </td><td style='padding:0'><b>{point.y}</b></td></tr>", footerFormat = "</table>", shared = true, useHTML = true }, exporting = new Exporting { enabled = true } }; return(Json(chartModel)); } return(Error(result)); //return null; }