public async Task <ActionResult> GetLeaveReportDetails(int year)
        {
            if (null != Session[Constants.SESSION_OBJ_USER])
            {
                var data = (UserAccount)Session[Constants.SESSION_OBJ_USER];
                LeaveReportModel datares = await user.GetLeaveReportDetails(data.RefEmployeeId, year);

                // model.Announcements = (Models.Announcement)datares.Announcements;
                return(Json(new { result = datares }));
            }
            return(View("Login"));
        }
예제 #2
0
        public LeaveReportModel GetLeaveReportDetails(int employeeId, int year)
        {
            try
            {
                var leaveReport = new LeaveReportModel();
                using (var ctx = new LeaveManagementSystemEntities1())
                {
                    var years = ctx.EmployeeLeaveTransactions.Where(i => i.RefEmployeeId == employeeId && i.FromDate.Year == year && i.ToDate.Year == year).ToList();
                    foreach (var item in years)
                    {
                        for (DateTime date = item.FromDate; date <= item.ToDate; date = date.AddDays(1))
                        {
                            if (date.DayOfWeek != DayOfWeek.Saturday && date.DayOfWeek != DayOfWeek.Sunday)
                            {
                                switch (date.Month)
                                {
                                case 1:

                                    leaveReport.Jan++;
                                    break;

                                case 2:
                                    leaveReport.Feb++;
                                    break;

                                case 3:
                                    leaveReport.Mar++;
                                    break;

                                case 4:
                                    leaveReport.Apr++;
                                    break;

                                case 5:
                                    leaveReport.May++;
                                    break;

                                case 6:
                                    leaveReport.Jun++;
                                    break;

                                case 7:
                                    leaveReport.Jul++;
                                    break;

                                case 8:
                                    leaveReport.Aug++;
                                    break;

                                case 9:
                                    leaveReport.Sep++;
                                    break;

                                case 10:
                                    leaveReport.Oct++;
                                    break;

                                case 11:
                                    leaveReport.Nov++;
                                    break;

                                case 12:
                                    leaveReport.Dec++;
                                    break;
                                }
                            }
                        }
                    }

                    //var Year = new SqlParameter("@Year", 2016);
                    //var data= ctx.Database.SqlQuery<LeaveReportModel>("dbo.GetLeaveReportProcedure @Year", Year).ToList();
                    return(leaveReport);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }