예제 #1
0
        public ActionResult Index()
        {
            try
            {
                OCCUSER          user = (OCCUSER)Session["User"];
                AdminDashboardVM aVm  = new AdminDashboardVM();

                var visaList = db.DEPOSIT.Where(x => x.ISDELETE == false).OrderByDescending(x => x.ID).ToList();
                aVm.TotalVisaPayment           = visaList.Count;
                aVm.TotalVisaPaymentCollection = (decimal)visaList.Sum(x => x.AMOUNT);
                visaList = visaList.Take(5).ToList();


                var requisitionList = db.CARDCHEREUISITION.Where(x => x.ISDELETE != true).OrderByDescending(x => x.ID).ToList();
                aVm.TotalReqisitionRequest = requisitionList.Count;
                requisitionList            = requisitionList.Take(5).ToList();


                var cardchtanList = db.CARDCHTRAN.Where(x => x.ISDELETE != true).OrderByDescending(x => x.ID).ToList();
                aVm.TotalCardPayment         = cardchtanList.Sum(x => x.AMOUNT);
                aVm.TotalChequePaymentNumber = cardchtanList.Count;
                cardchtanList = cardchtanList.Take(5).ToList();


                WebRef.OBLAPP oblApp = new WebRef.OBLAPP();
                DataTable     dt     = oblApp.GetByUserID(user.EMPLOYEEID);
                foreach (DataRow dataRow in dt.Rows)
                {
                    aVm.EmployeeInfoVm.BranchName  = (string)dataRow[21];
                    aVm.EmployeeInfoVm.Email       = (string)dataRow[9];
                    aVm.EmployeeInfoVm.EmployeeId  = (string)dataRow[2];
                    aVm.EmployeeInfoVm.JobTitle    = (string)dataRow[7];
                    aVm.EmployeeInfoVm.Name        = (string)dataRow[3];
                    aVm.EmployeeInfoVm.PreDeptName = (string)dataRow[17];
                }


                aVm.Deposits     = visaList;
                aVm.Requisitions = requisitionList;
                aVm.ChequeTrans  = cardchtanList;

                return(View(aVm));
            }
            catch (Exception exception)
            {
                return(RedirectToAction("Error", "Home", new { Area = "" }));
            }
        }
예제 #2
0
        public ActionResult Admin()
        {
            ChartVM barChartVM = new ChartVM();
            ICollection <Department> departments = _departmentService.GetAll().ToList();

            foreach (var department in departments)
            {
                int count = department.Courses.Sum(x => x.Sections.Sum(y => y.Students.Distinct().Count()));
                if (count != 0)
                {
                    barChartVM.Labels.Add(department.Name);
                    barChartVM.Data.Add(count);
                }
            }

            ChartVM pieChartVM = new ChartVM();

            pieChartVM.Labels.Add(UserType.Admin.ToString());
            pieChartVM.Labels.Add(UserType.Student.ToString());
            ICollection <User> users = _service.GetAll().ToList();

            pieChartVM.Data.Add(users.Count(x => x.Type == UserType.Admin));
            pieChartVM.Data.Add(users.Count(x => x.Type == UserType.Student));

            AdminDashboardVM model = new AdminDashboardVM()
            {
                DepartmentCount   = _departmentService.GetAll().Count(),
                CourseCount       = _courseService.GetAll().Count(),
                StudentCount      = _studentService.GetAll().Count(),
                RegistrationCount = _registrationService.GetAll().Select(x => x.StudentId).Distinct().Count(),
                BarChartVM        = barChartVM,
                PieChartVM        = pieChartVM
            };

            return(View(model));
        }