public ActionResult PartialReportByDepartmentAverageMark(string[] dateValue) { ViewBag.Today = DateTime.Now.Month; DateTime[] dateValues = new DateTime[] { DateTime.ParseExact(dateValue[0], "MM/dd/yyyy", CultureInfo.InvariantCulture), DateTime.ParseExact(dateValue[1], "MM/dd/yyyy", CultureInfo.InvariantCulture) }; List <CustomDepartment> DepartmentsWithoutParentAndChildren = new List <CustomDepartment>(); List <Department> DepsWithoutParentAndChildren = unit.Departments.GetDepartmentsWithoutParentAndChildren().ToList(); foreach (var department in DepsWithoutParentAndChildren) { DepartmentsWithoutParentAndChildren.Add( new CustomDepartment { DepartmentId = department.DepartmentId, Name = department.Name, AverageMark = unit .Employees .GetEmployeesAverageMarkByDepartmentIdAndTwoDate(department.DepartmentId, dateValues) } ); } ViewBag.DepartmentsWithoutParentAndChildren = DepartmentsWithoutParentAndChildren; List <Department> DepartmentsWithoutParentWithChildren = unit.Departments.GetDepartmentsWithoutParentWithChildren().ToList(); List <DepartmentsWithChildren> result = new List <DepartmentsWithChildren>(); DepartmentsWithChildren item = null; List <Department> children = null; foreach (Department parent in DepartmentsWithoutParentWithChildren) { item = new DepartmentsWithChildren { Department = parent, Children = new List <CustomDepartment>(), AverageMark = unit .Employees .GetEmployeesAverageMarkByDepartmentIdAndTwoDate(parent.DepartmentId, dateValues) }; children = unit.Departments.GetDepartmentsByParentId(parent.DepartmentId).ToList(); foreach (Department child in children) { item.Children.Add( new CustomDepartment { DepartmentId = child.DepartmentId, Name = child.Name, ParentId = child.ParentId, AverageMark = unit .Employees .GetEmployeesAverageMarkByDepartmentIdAndTwoDate(child.DepartmentId, dateValues) } ); } result.Add(item); } ViewBag.Marks = result; return(PartialView(result)); }
public ActionResult PartialReportByConsolidated(DateTime?dateValue) { ViewBag.Today = DateTime.Now.ToString("yyyy-MM"); List <CustomDepartment> DepartmentsWithoutParentAndChildren = new List <CustomDepartment>(); List <Department> DepsWithoutParentAndChildren = unit.Departments.GetDepartmentsWithoutParentAndChildren().ToList(); foreach (var department in DepsWithoutParentAndChildren) { DepartmentsWithoutParentAndChildren.Add( new CustomDepartment { DepartmentId = department.DepartmentId, Name = department.Name, AverageMark = unit .Employees .GetEmployeesAverageMarkByDepartmentIdAndDate(department.DepartmentId, dateValue), AverageMarkDepartment = unit .Employees .GetDepartmentsAverageMarkByDepartmentIdAndDate(department.DepartmentId, dateValue) } ); } ViewBag.DepartmentsWithoutParentAndChildren = DepartmentsWithoutParentAndChildren; List <Department> DepartmentsWithoutParentWithChildren = unit.Departments.GetDepartmentsWithoutParentWithChildren().ToList(); List <DepartmentsWithChildren> result = new List <DepartmentsWithChildren>(); DepartmentsWithChildren item = null; List <Department> children = null; foreach (Department parent in DepartmentsWithoutParentWithChildren) { item = new DepartmentsWithChildren { Department = parent, Children = new List <CustomDepartment>(), AverageMark = unit .Employees .GetEmployeesAverageMarkByDepartmentIdAndDate(parent.DepartmentId, dateValue), AverageMarkDepartment = unit .Employees .GetDepartmentsAverageMarkByDepartmentIdAndDate(parent.DepartmentId, dateValue) }; children = unit.Departments.GetDepartmentsByParentId(parent.DepartmentId).ToList(); foreach (Department child in children) { item.Children.Add( new CustomDepartment { DepartmentId = child.DepartmentId, Name = child.Name, ParentId = child.ParentId, AverageMark = unit .Employees .GetEmployeesAverageMarkByDepartmentIdAndDate(child.DepartmentId, dateValue), AverageMarkDepartment = unit .Employees .GetDepartmentsAverageMarkByDepartmentIdAndDate(child.DepartmentId, dateValue) } ); } result.Add(item); } return(PartialView(result)); }
public ActionResult ReportByDepartmentAverageMark() { var firstDate = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1); var lastDayOfMonth = firstDate.AddMonths(1).AddDays(-1); DateTime[] dateValues = new DateTime[] { firstDate, lastDayOfMonth, }; List <CustomDepartment> DepartmentsWithoutParentAndChildren = new List <CustomDepartment>(); List <Department> DepsWithoutParentAndChildren = unit.Departments.GetDepartmentsWithoutParentAndChildren().ToList(); foreach (var department in DepsWithoutParentAndChildren) { DepartmentsWithoutParentAndChildren.Add( new CustomDepartment { DepartmentId = department.DepartmentId, Name = department.Name, AverageMark = unit .Employees .GetEmployeesAverageMarkByDepartmentIdAndTwoDate(department.DepartmentId, dateValues) } ); } ViewBag.DepartmentsWithoutParentAndChildren = DepartmentsWithoutParentAndChildren; List <Department> DepartmentsWithoutParentWithChildren = unit.Departments.GetDepartmentsWithoutParentWithChildren().ToList(); List <DepartmentsWithChildren> result = new List <DepartmentsWithChildren>(); DepartmentsWithChildren item = null; List <Department> children = null; foreach (Department parent in DepartmentsWithoutParentWithChildren) { item = new DepartmentsWithChildren { Department = parent, Children = new List <CustomDepartment>(), AverageMark = unit .Employees .GetEmployeesAverageMarkByDepartmentIdAndTwoDate(parent.DepartmentId, dateValues) }; children = unit.Departments.GetDepartmentsByParentId(parent.DepartmentId).ToList(); foreach (Department child in children) { item.Children.Add( new CustomDepartment { DepartmentId = child.DepartmentId, Name = child.Name, ParentId = child.ParentId, AverageMark = unit .Employees .GetEmployeesAverageMarkByDepartmentIdAndTwoDate(child.DepartmentId, dateValues) } ); } result.Add(item); } ViewBag.Marks = result; return(View(result)); }