예제 #1
0
        public async Task <IActionResult> Create(UserLeaveRequestAddDto model)
        {
            if (!ModelState.IsValid)
            {
                var entities = _userLeaveTypeService.GetAllAsync().Result;
                var user     = _userManager.GetUserAsync(HttpContext.User).Result;

                var map = _mapper.Map <List <UserLeaveTypeDto> >(entities);
                ViewBag.LeaveTypes = map.Select(x => new SelectListItem()
                {
                    Text = x.Name, Value = x.Id.ToString()
                }).ToList();

                model.RequestUserId = user.Id;
                return(View(model));
            }

            var entity = _mapper.Map <UserLeaveRequest>(model);

            entity.RequestDate = DateTime.Now;;
            var type = _userLeaveTypeService.GetById(entity.UserLeaveTypeId);

            entity.EndDate = entity.StartDate.AddDays(type.DefaultDays);
            entity.Status  = UserLeaveReqeustEnum.Waiting;
            await _myService.InsertAsync(entity);

            await _unitOfWork.SaveChangesAsync();

            TempData["Success"] = "Başarılı Bir Şekilde Eklendi";

            return(RedirectToAction("Index"));
        }
예제 #2
0
        public IActionResult Create()
        {
            var entities = _userLeaveTypeService.GetAllAsync().Result;
            var user     = _userManager.GetUserAsync(HttpContext.User).Result;

            var map = _mapper.Map <List <UserLeaveTypeDto> >(entities);

            ViewBag.LeaveTypes = map.Select(x => new SelectListItem()
            {
                Text = x.Name, Value = x.Id.ToString()
            }).ToList();

            var model = new UserLeaveRequestAddDto {
                RequestUserId = user.Id
            };

            return(View(model));
        }