public void DrawReport() { Tuple<string, double> workLife; Tuple<string, double> jobsec; Tuple<string, double> training; Tuple<string, double> workload; Tuple<string, double> careerpath; Tuple<string, double> promocrit; Tuple<string, double> promo; Tuple<string, double> auton; Tuple<string, double> salary; Tuple<string, double> goodSuper; Tuple<string, double> flex; Tuple<string, double> rewPerf; Tuple<string, double> mission; Tuple<string, double> health; Tuple<string, double> rewrecog; Tuple<string, double> workspace; Tuple<string, double> poorperfs; int totalExplorers = JobExplorerManager.JobExplorers.Count(); int totalSurveys = PersonalSurveyManager.PersonalSurveys.Count(); workLife = new Tuple<string, double>("Work Life Balance", PersonalSurveyManager.PersonalSurveys.Sum(x => x.worklife_self) / totalSurveys); jobsec = new Tuple<string, double>("Job Security", PersonalSurveyManager.PersonalSurveys.Sum(x => x.jobsec_self) / totalSurveys); training = new Tuple<string, double>("Training and Development", PersonalSurveyManager.PersonalSurveys.Sum(x => x.td_self) / totalSurveys); careerpath = new Tuple<string, double>("Clear Career Path", PersonalSurveyManager.PersonalSurveys.Sum(x => x.careerpath_self) / totalSurveys); promocrit = new Tuple<string, double>("Clear Promotion Criteria", PersonalSurveyManager.PersonalSurveys.Sum(x => x.promocrit_self) / totalSurveys); workload = new Tuple<string, double>("Manageable Workload", PersonalSurveyManager.PersonalSurveys.Sum(x => x.workload_self) / totalSurveys); promo = new Tuple<string, double>("Promotion Opportunities", PersonalSurveyManager.PersonalSurveys.Sum(x => x.promo_self) / totalSurveys); auton = new Tuple<string, double>("Autonomy", PersonalSurveyManager.PersonalSurveys.Sum(x => x.auton_self) / totalSurveys); salary = new Tuple<string, double>("High Salary", PersonalSurveyManager.PersonalSurveys.Sum(x => x.salary_self) / totalSurveys); goodSuper = new Tuple<string, double>("Good Supervisors", PersonalSurveyManager.PersonalSurveys.Sum(x => x.goodsup_self) / totalSurveys); flex = new Tuple<string, double>("Flexible Schedules", PersonalSurveyManager.PersonalSurveys.Sum(x => x.flex_self) / totalSurveys); rewPerf = new Tuple<string, double>("Performance Rewards", PersonalSurveyManager.PersonalSurveys.Sum(x => x.rewperf_self) / totalSurveys); mission = new Tuple<string, double>("A Clear Mission", PersonalSurveyManager.PersonalSurveys.Sum(x => x.mission_self) / totalSurveys); health = new Tuple<string, double>("Good Health Benefits", PersonalSurveyManager.PersonalSurveys.Sum(x => x.health_self) / totalSurveys); rewrecog = new Tuple<string, double>("Rewards and Recognition", PersonalSurveyManager.PersonalSurveys.Sum(x => x.rewrecog_self) / totalSurveys); workspace = new Tuple<string, double>("Private Work Space", PersonalSurveyManager.PersonalSurveys.Sum(x => x.workspace_self) / totalSurveys); poorperfs = new Tuple<string, double>("Deals with Poor Performance", PersonalSurveyManager.PersonalSurveys.Sum(x => x.poorperfs_self) / totalSurveys); List<Tuple<string, double>> critList = new List<Tuple<string, double>>(); critList.Add(workLife); critList.Add(jobsec); critList.Add(training); critList.Add(workload); critList.Add(careerpath); critList.Add(promocrit); critList.Add(promo); critList.Add(auton); critList.Add(salary); critList.Add(goodSuper); critList.Add(flex); critList.Add(rewPerf); critList.Add(mission); critList.Add(health); critList.Add(rewrecog); critList.Add(workspace); critList.Add(poorperfs); using (IChart excel = new ExcelModel("Top 10 Employee Work Values")) { int idx = 1; foreach (Tuple<string, double> pair in critList.OrderBy(x => x.Item2).Take(10)) { excel.SetCellValue(idx, 1, pair.Item1); excel.SetCellValue(idx, 2, pair.Item2); idx++; } Graph newG = excel.BarChart(50, 50, 1000, 300); newG.SetSource(1, 1, idx-1, 2); excel.Close(); } }
public void DrawReport() { int surveyCnt = _plist.Count; int jobsec = 0; int wrklife = 0; int wrkload = 0; int careerpth = 0; int td = 0; int promo = 0; int goodsup = 0; int auton = 0; int promocrit = 0; int salary = 0; int flex = 0; int rewperf = 0; int mission = 0; int health = 0; int rewrecog = 0; int wrkspc = 0; int poorperfs = 0; foreach (PersonalSurvey survey in _plist) { jobsec += survey.jobsec_self; wrklife += survey.worklife_self; wrkload += survey.workload_self; careerpth += survey.careerpath_self; td += survey.td_self; promo += survey.promo_self; goodsup += survey.goodsup_self; auton += survey.auton_self; promocrit += survey.promo_self; salary += survey.salary_self; flex += survey.flex_self; rewperf += survey.rewperf_self; mission += survey.mission_self; health += survey.health_self; rewrecog += survey.rewrecog_self; wrkspc += survey.workspace_self; poorperfs += survey.poorperfs_self; } jobsec /= surveyCnt; wrklife /= surveyCnt; wrkload /= surveyCnt; careerpth /= surveyCnt; td /= surveyCnt; promo /= surveyCnt; goodsup /= surveyCnt; auton /= surveyCnt; promocrit /= surveyCnt; salary /= surveyCnt; flex /= surveyCnt; rewperf /= surveyCnt; mission /= surveyCnt; health /= surveyCnt; rewrecog /= surveyCnt; wrkspc /= surveyCnt; poorperfs /= surveyCnt; using (IChart excel = new ExcelModel("Employers Mismatch vs " + _employer.employerName)) { int row = 1; int col = 1; int diff = 0; int total = 0; excel.SetCellValue(row + 1, col, "Employee"); excel.SetCellValue(row + 2, col++, _employer.employerName); diff = Math.Abs(jobsec - _employer.jobsec); excel.SetCellValue(row, col, "Job security"); excel.SetCellValue(row + 3, col, "Job security"); excel.SetCellValue(row + 4, col, diff); excel.SetCellValue(row + 1, col, jobsec); excel.SetCellValue(row + 2, col++, _employer.jobsec); total += diff; diff = Math.Abs(wrklife - _employer.worklife); excel.SetCellValue(row, col, "Work-life balance"); excel.SetCellValue(row + 3, col, "Work-life balance"); excel.SetCellValue(row + 4, col, diff); excel.SetCellValue(row + 1, col, wrklife); excel.SetCellValue(row + 2, col++, _employer.worklife); total += diff; diff = Math.Abs(wrkload - _employer.workload); excel.SetCellValue(row, col, "A manageable workload"); excel.SetCellValue(row + 3, col, "A manageable workload"); excel.SetCellValue(row + 4, col, diff); excel.SetCellValue(row + 1, col, wrkload); excel.SetCellValue(row + 2, col++, _employer.workload); total += diff; diff = Math.Abs(careerpth - _employer.careerpath); excel.SetCellValue(row, col, "A clear career path"); excel.SetCellValue(row + 3, col, "A clear career path"); excel.SetCellValue(row + 4, col, diff); excel.SetCellValue(row + 1, col, careerpth); excel.SetCellValue(row + 2, col++, _employer.careerpath); total += diff; diff = Math.Abs(td - _employer.td); excel.SetCellValue(row, col, "Providing training and development"); excel.SetCellValue(row + 3, col, "Providing training and development"); excel.SetCellValue(row + 4, col, diff); excel.SetCellValue(row + 1, col, td); excel.SetCellValue(row + 2, col++, _employer.td); total += diff; diff = Math.Abs(promo - _employer.promo); excel.SetCellValue(row, col, "Opportunities for promotion"); excel.SetCellValue(row + 3, col, "Opportunities for promotion"); excel.SetCellValue(row + 4, col, diff); excel.SetCellValue(row + 1, col, promo); excel.SetCellValue(row + 2, col++, _employer.promo); total += diff; diff = Math.Abs(goodsup - _employer.goodsup); excel.SetCellValue(row, col, "Good supervisors"); excel.SetCellValue(row + 3, col, "Good supervisors"); excel.SetCellValue(row + 4, col, diff); excel.SetCellValue(row + 1, col, goodsup); excel.SetCellValue(row + 2, col++, _employer.goodsup); total += diff; diff = Math.Abs(auton - _employer.auton); excel.SetCellValue(row, col, "Autonomy"); excel.SetCellValue(row + 3, col, "Autonomy"); excel.SetCellValue(row + 4, col, diff); excel.SetCellValue(row + 1, col, auton); excel.SetCellValue(row + 2, col++, _employer.auton); total += diff; diff = Math.Abs(promocrit - _employer.promocrit); excel.SetCellValue(row, col, "Clear promotion criteria"); excel.SetCellValue(row + 3, col, "Clear promotion criteria"); excel.SetCellValue(row + 4, col, diff); excel.SetCellValue(row + 1, col, promocrit); excel.SetCellValue(row + 2, col++, _employer.promocrit); total += diff; diff = Math.Abs(salary - _employer.salary); excel.SetCellValue(row, col, "High salary"); excel.SetCellValue(row + 3, col, "High salary"); excel.SetCellValue(row + 4, col, diff); excel.SetCellValue(row + 1, col, salary); excel.SetCellValue(row + 2, col++, _employer.salary); total += diff; diff = Math.Abs(flex - _employer.flex); excel.SetCellValue(row, col, "Flexibility"); excel.SetCellValue(row + 3, col, "Flexibility"); excel.SetCellValue(row + 4, col, diff); excel.SetCellValue(row + 1, col, flex); excel.SetCellValue(row + 2, col++, _employer.flex); total += diff; diff = Math.Abs(rewperf - _employer.rewperf); excel.SetCellValue(row, col, "Rewards performance"); excel.SetCellValue(row + 3, col, "Rewards performance"); excel.SetCellValue(row + 4, col, diff); excel.SetCellValue(row + 1, col, rewperf); excel.SetCellValue(row + 2, col++, _employer.rewperf); total += diff; diff = Math.Abs(mission - _employer.mission); excel.SetCellValue(row, col, "A clear mission"); excel.SetCellValue(row + 3, col, "A clear mission"); excel.SetCellValue(row + 4, col, diff); excel.SetCellValue(row + 1, col, mission); excel.SetCellValue(row + 2, col++, _employer.mission); total += diff; diff = Math.Abs(health - _employer.health); excel.SetCellValue(row, col, "Good health benefits"); excel.SetCellValue(row + 3, col, "Good health benefits"); excel.SetCellValue(row + 4, col, diff); excel.SetCellValue(row + 1, col, health); excel.SetCellValue(row + 2, col++, _employer.health); total += diff; diff = Math.Abs(rewrecog - _employer.rewrecog); excel.SetCellValue(row, col, "Provides rewards and recognition"); excel.SetCellValue(row + 3, col, "Provides rewards and recognition"); excel.SetCellValue(row + 4, col, diff); excel.SetCellValue(row + 1, col, rewrecog); excel.SetCellValue(row + 2, col++, _employer.rewrecog); total += diff; diff = Math.Abs(wrkspc - _employer.workspace); excel.SetCellValue(row, col, "Private office or work space"); excel.SetCellValue(row + 3, col, "Private office or work space"); excel.SetCellValue(row + 4, col, diff); excel.SetCellValue(row + 1, col, wrkspc); excel.SetCellValue(row + 2, col++, _employer.workspace); total += diff; diff = Math.Abs(poorperfs - _employer.poorperfs); excel.SetCellValue(row, col, "takes actions against poor performers"); excel.SetCellValue(row + 3, col, "takes actions against poor performers"); excel.SetCellValue(row + 4, col, diff); excel.SetCellValue(row + 1, col, poorperfs); excel.SetCellValue(row + 2, col++, _employer.poorperfs); excel.SetCellValue(row + 3, col, "Total Mismatch"); excel.SetCellValue(row + 4, col, total); Graph colChart = excel.BarChart(50, 50, 500, 750); colChart.SetSource(1, 1, 3, 18); colChart.SetTitle("Employer Mismatch vs " + _employer.employerName); Graph mismatch = excel.ColumnChart(600, 50, 750, 500); mismatch.SetSource(4, 2, 5, 19); mismatch.SetTitle("Total Mismatch vs " + _employer.employerName); excel.Close(); } }