public ActionResult Assign(int?Id) { var model = new TimekeepingListViewModel(); var timekeepingList = timekeepingListRepository.GetvwTimekeepingListById(Id.Value); AutoMapper.Mapper.Map(timekeepingList, model); var user = userRepository.GetUserById(WebSecurity.CurrentUserId); var holiday = holidayRepository.GetAllHolidays().AsEnumerable().ToList(); var staff = StaffsRepository.GetvwAllStaffs().Where(x => x.BranchDepartmentId == timekeepingList.DepartmentId); ViewBag.staffList = staff; ViewBag.DayHoliday = holiday; DateTime aDateTime = new DateTime(timekeepingList.Year.Value, timekeepingList.Month.Value, 1); // Cộng thêm 1 tháng và trừ đi một ngày. DateTime retDateTime = aDateTime.AddMonths(1).AddDays(-1); ViewBag.aDateTime = aDateTime; ViewBag.retDateTime = retDateTime; var DayOff = categoryRepository.GetCategoryByCode("DayOffDefault").AsEnumerable().ToList(); ViewBag.DayOff = DayOff; var ShiftsList = shiftsRepository.GetAllShifts().Where(x => x.CategoryShifts == timekeepingList.CategoryShifts).AsEnumerable(); ViewBag.ShiftsList = ShiftsList; return(View(model)); }
public ActionResult Edit(int?Id) { var TimekeepingList = TimekeepingListRepository.GetvwTimekeepingListById(Id.Value); if (TimekeepingList != null && TimekeepingList.IsDeleted != true) { var model = new TimekeepingListViewModel(); AutoMapper.Mapper.Map(TimekeepingList, model); //if (model.CreatedUserId != Helpers.Common.CurrentUser.Id && Helpers.Common.CurrentUser.UserTypeId != 1) //{ // TempData["FailedMessage"] = "NotOwner"; // return RedirectToAction("Index"); //} return(View(model)); } if (Request.UrlReferrer != null) { return(Redirect(Request.UrlReferrer.AbsoluteUri)); } return(RedirectToAction("Index")); }
public ViewResult List(int?Id, int?page) { var model = new WorkSchedulesViewModel(); model.TimekeepingListId = Id; var timekeepingList = timekeepingListRepository.GetvwTimekeepingListById(Id.Value); var staff = Erp.BackOffice.Helpers.Common.GetStaffByCurrentUser(); DateTime aDateTime = new DateTime(timekeepingList.Year.Value, timekeepingList.Month.Value, 1); // Cộng thêm 1 tháng và trừ đi một ngày. DateTime retDateTime = aDateTime.AddMonths(1).AddDays(-1); ViewBag.aDateTime = aDateTime; ViewBag.retDateTime = retDateTime; var listTinmeKeeping = workSchedulesRepository.GetvwAllWorkSchedules().Where(x => x.TimekeepingListId.Value == Id).ToList(); var pager = new Pager(listTinmeKeeping.Count(), page, 20); model.pageIndexViewModel = new IndexViewModel <WorkSchedulesViewModel> { Items = listTinmeKeeping.OrderBy(m => m.Code).Skip((pager.CurrentPage - 1) * pager.PageSize).Take(pager.PageSize) .Select(i => new WorkSchedulesViewModel { BranchDepartmentId = i.BranchDepartmentId, Code = i.Code, CodeShifts = i.CodeShifts, Color = i.Color, Day = i.Day, DayOff = i.DayOff, DayOffCode = i.DayOffCode, DayOffName = i.DayOffName, EndTime = i.EndTime, EndTimeIn = i.EndTimeIn, Id = i.Id, //HoursIn = i.HoursIn, //HoursOut = i.HoursOut, Month = i.Month, Name = i.Name, NameShifts = i.NameShifts, //Sale_BranchId = i.Sale_BranchId, //ShiftsId = i.ShiftsId, StaffId = i.StaffId, StartTime = i.StartTime, StartTimeOut = i.StartTimeOut, Symbol = i.Symbol, Timekeeping = i.Timekeeping, Total_minute_work = i.Total_minute_work, Total_minute_work_early = i.Total_minute_work_early, Total_minute_work_late = i.Total_minute_work_late, Total_minute_work_overtime = i.Total_minute_work_overtime, //UserEnrollNumber = i.UserEnrollNumber, Year = i.Year, TimekeepingListId = i.TimekeepingListId }).OrderBy(x => x.ShiftsId).ToList(), Pager = pager }; //lấy danh sách các ngày nghỉ trong tuần, theo quy định từng công ty. var DayOff = categoryRepository.GetCategoryByCode("DayOffDefault").Where(x => x.Value == "True").AsEnumerable().ToList(); ViewBag.DayOff = DayOff; //lấy danh sách các ngày nghỉ lễ trong năm var holiday = holidayRepository.GetAllHolidays().AsEnumerable().ToList(); ViewBag.DayHoliday = holiday; if (model.pageIndexViewModel.Items != null) { //lấy danh sách nhân viên chấm công của tháng đó, chi nhánh đó model.StaffList = model.pageIndexViewModel.Items .GroupBy(x => new { x.StaffId }, (key, group) => new WorkSchedulesViewModel { StaffId = key.StaffId, Code = group.FirstOrDefault().Code, Name = group.FirstOrDefault().Name, Id = group.FirstOrDefault().Id, TimekeepingListId = group.FirstOrDefault().TimekeepingListId, Year = group.FirstOrDefault().Year, Month = group.FirstOrDefault().Month }).ToList(); //lấy danh sách ngày công của nhân viên trong bảng chấm công nhóm theo id nhân viên và ngày công. model.DayWorkList = model.pageIndexViewModel.Items.GroupBy(x => new { x.StaffId, x.Day }, (key, group) => new WorkSchedulesViewModel { StaffId = key.StaffId, Day = key.Day, Id = group.FirstOrDefault().Id }).OrderBy(x => x.Day).ToList(); } return(View(model)); }