Example #1
0
        public ActionResult AllocateToEmployees(int id)
        {
            var leaveType = _repository.FindById(id);
            var employees = _userManager.GetUsersInRoleAsync("Employee").Result;

            foreach (var emp in employees)
            {
                LeaveAllocationModel model = new LeaveAllocationModel
                {
                    leaveTypeId  = leaveType.Id,
                    EmployeeId   = emp.Id,
                    NumberOfDays = leaveType.NumberOfDays,
                    Year         = DateTime.Now.Year
                };
                var model2 = model;
                var leaveAllocationCreate = _mapper.Map <LeaveAllocation>(model2);
                _repo.Create(leaveAllocationCreate);
            }

            return(RedirectToAction(nameof(Index)));
        }
        public ActionResult SetLeave(int id)
        {
            var leavetype = _leaverepo.FindById(id);
            var employees = _userManager.GetUsersInRoleAsync("Employee").Result;

            foreach (var emp in employees)
            {
                if (_leaveallocationrepo.CheckAllocation(id, emp.Id))
                {
                    continue;
                }
                var allocation = new LeaveAllocationModel
                {
                    DateCreated  = DateTime.Now,
                    EmployeeId   = emp.Id,
                    LeaveTypeId  = id,
                    NumberOfDays = leavetype.DefaultDays,
                    Period       = DateTime.Now.Year
                };
                var leaveallocation = _mapper.Map <LeaveAllocation>(allocation);
                _leaveallocationrepo.Create(leaveallocation);
            }
            return(RedirectToAction(nameof(Index)));
        }