public async Task <ActionResult <EmployeeDepartmentDto> > AddEmployeeDepartment([FromBody] EmployeeDepartmentForCreationDto employeeDepartmentForCreation) { var validationResults = new EmployeeDepartmentForCreationDtoValidator().Validate(employeeDepartmentForCreation); validationResults.AddToModelState(ModelState, null); if (!ModelState.IsValid) { return(BadRequest(new ValidationProblemDetails(ModelState))); //return ValidationProblem(); } var EmployeeDepartment = _mapper.Map <EmployeeDepartment>(employeeDepartmentForCreation); await _EmployeeDepartmentRepository.AddEmployeeDepartment(EmployeeDepartment); var saveSuccessful = await _EmployeeDepartmentRepository.SaveAsync(); if (saveSuccessful) { var EmployeeDepartmentFromRepo = await _EmployeeDepartmentRepository.GetEmployeeDepartmentAsync(EmployeeDepartment.Id); var EmployeeDepartmentDto = _mapper.Map <EmployeeDepartmentDto>(EmployeeDepartmentFromRepo); var response = new Response <EmployeeDepartmentDto>(EmployeeDepartmentDto); return(CreatedAtRoute("GetEmployeeDepartment", new { EmployeeDepartment.Id }, response)); } return(StatusCode(500)); }
public async Task <IActionResult> Create([FromForm] EmployeeDepartmentViewModel employeeDepartmentVM) { if (ModelState.IsValid) { var newEmployeeDepartment = await _employeeDeparment.AddEmployeeDepartment(employeeDepartmentVM.EmployeeDepartment); TempData["message"] = "Your data has been submitted successfully."; TempData["toasterType"] = ToasterType.success; //return RedirectToAction(nameof(Index)); return(RedirectToAction(nameof(Edit), new { id = newEmployeeDepartment.Id, returnUrl = employeeDepartmentVM.ReturnUrl })); } TempData["message"] = "A problem has been ocurred while submitting your data."; TempData["toasterType"] = ToasterType.info; return(View("Edit", EmployeeDepartmentViewModelFactory.Create(employeeDepartmentVM.EmployeeDepartment, employeeDepartmentVM.ReturnUrl))); }