public ActionResult VerifyLeave(RequestVacationViewModel requestVacationViewModel)
        {
            var employee = (AdminProfileViewModel)Session["EmployeeObj"];

            requestVacationViewModel.ApproverID = employee.EmployeeID;
            leaveRequestService.UpdateLeaveRequest(requestVacationViewModel);

            return(RedirectToAction("Verifyleave"));
        }
        public ActionResult SendLeaveRequest()
        {
            RequestVacationViewModel requestVacationViewModel = new RequestVacationViewModel();

            requestVacationViewModel.VacationTypeList = vacationTypeService.GetAllVacationTypeList(vacationTypeService.GetAllVacationType());

            int designationId = designationService.GetDesignationIdByName("Project Manager");

            List <AdminProfileViewModel> list = employeeService.GetEmployeesByDesignationId(designationId);

            requestVacationViewModel.ApproverList = employeeService.ApproverList(list);

            return(View(requestVacationViewModel));
        }
        public void AddLeaveRequest(RequestVacationViewModel requestVacationViewModel)
        {
            RequestVacation requestVacation = null;

            var config = new MapperConfiguration(cfg =>
            {
                cfg.CreateMap <RequestVacationViewModel, RequestVacation>();
                cfg.IgnoreUnmapped();
            });
            IMapper mapper = config.CreateMapper();

            requestVacation = mapper.Map <RequestVacationViewModel, RequestVacation>(requestVacationViewModel);
            RequestVacationRepository.SetNewRequestVacation(requestVacation);
        }
Beispiel #4
0
        public ActionResult RequestVacation()
        {
            ViewData["VacationTypesSelectList"] = _pageListsService.SelectVacationTypes();
            var requestVacationData = new RequestVacationViewModel
            {
                ProfileData =
                    Mapper.Map <ProfileDTO, ProfileViewModel>(_profileDataService.GetUserData(User.Identity.GetUserId())),
                VacationBalanceData =
                    Mapper.Map <VacationBalanceDTO, VacationBalanceViewModel>(
                        _profileDataService.GetUserVacationBalance(User.Identity.GetUserId())),
                RequestCreationData = new RequestCreationViewModel()
            };

            return(View(requestVacationData));
        }
        public RequestVacationViewModel GetLeaveRequestByRequestID(int RequestID)
        {
            RequestVacation requestVacation = RequestVacationRepository.GetLeaveRequestByRequestID(RequestID);

            var config = new MapperConfiguration(cfg =>
            {
                cfg.CreateMap <RequestVacation, RequestVacationViewModel>();
                cfg.IgnoreUnmapped();
            });
            IMapper mapper = config.CreateMapper();

            RequestVacationViewModel requestVacationViewModel = mapper.Map <RequestVacation, RequestVacationViewModel>(requestVacation);

            return(requestVacationViewModel);
        }
        public ActionResult LeaveDetail(int Id)     //show each emp leave details for admin
        {
            RequestVacationViewModel requestVacation = leaveRequestService.GetLeaveRequestByRequestID(Id);
            AdminProfileViewModel    employee        = employeeService.GetEmployeeByID(requestVacation.CreatedBy);

            requestVacation.RequesterName = employee.FirstName + " " + employee.MiddleName + " " + employee.LastName;
            DesignationViewModel designation = designationService.GetDesignationByDesignationID(employee.DesignationID);

            requestVacation.RequesterDesignation = designation.DesignationName;

            VacationTypeViewModel vacationType = vacationTypeService.GetVacationTypeByVacationId(requestVacation.VacationTypeID);

            requestVacation.VacationName = vacationType.VacationName;


            return(View(requestVacation));
        }
        public ActionResult SendLeaveRequest(RequestVacationViewModel vacationRequestViewModel)
        {
            if (ModelState.IsValid)
            {
                vacationRequestViewModel.VacationTypeID = Convert.ToInt32(vacationRequestViewModel.VacationStringID);
                vacationRequestViewModel.CreatedOn      = DateTime.Today;
                var employee = (AdminProfileViewModel)Session["EmployeeObj"];
                vacationRequestViewModel.CreatedBy = employee.EmployeeID;

                vacationRequestViewModel.LeaveStatus = "Pending"; //by default
                leaveRequestService.AddLeaveRequest(vacationRequestViewModel);
                return(RedirectToAction("SendLeaveRequest"));
            }
            else
            {
                ModelState.AddModelError("Request", "Invalid Request please try again");
                return(RedirectToAction("SendLeaveRequest"));
            }
        }