public async Task <IActionResult> Update(int id, [FromBody] SaveDepartmentResource departmentResource) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var department = await departmentRepository.GetOne(id); if (department == null) { return(NotFound()); } department = mapper.Map(departmentResource, department); departmentRepository.Update(department); if (await unitOfWork.CompleteAsync() == false) { throw new Exception(message: $"Updating department {id} failed on save"); } department = await departmentRepository.GetOne(department.Id); var result = mapper.Map <Department, ViewDepartmentResource>(department); return(Ok(result)); }
public async Task <IActionResult> Create([FromBody] SaveDepartmentResource departmentResource) { var department = mapper.Map <SaveDepartmentResource, Department>(departmentResource); unitOfWork.Departments.Add(department); await unitOfWork.CompleteAsync(); var result = mapper.Map <Department, DepartmentResource>(department); return(Ok(result)); }
public async Task <IActionResult> AddDept([FromBody] SaveDepartmentResource DepartmentResource) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var DeptToCreate = _mapper.Map <SaveDepartmentResource, Departments>(DepartmentResource); _repo.CreateDept(DeptToCreate); await _unitofwork.CompleteAsync(); return(StatusCode(201)); }
public async Task <IActionResult> UpdateBranch(int id, [FromBody] SaveDepartmentResource DepartmentResource) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } Departments departments = await _repo.Get(id); if (departments == null) { return(NotFound()); } _mapper.Map <SaveDepartmentResource, Departments>(DepartmentResource, departments); await _unitofwork.CompleteAsync(); return(StatusCode(202)); }
public async Task <IActionResult> UpdateAsync(int id, [FromBody] SaveDepartmentResource resource) { if (resource == null) { return(BadRequest("Invalid model")); } var department = _mapper.Map <SaveDepartmentResource, Department>(resource); var result = await _departmentService.UpdateAsync(id, department); if (!result.Success) { return(BadRequest(result.Message)); } var response = _mapper.Map <Department, DepartmentResource>(result.Resource); return(Ok(response)); }
public async Task <ActionResult <DepartmentResource> > CreateDepartment([FromBody] SaveDepartmentResource saveDepartmentResource) { var validator = new SaveDepartmentResourceValidator(); var validationResult = await validator.ValidateAsync(saveDepartmentResource); if (!validationResult.IsValid) { return(BadRequest(validationResult.Errors)); // this needs refining, but for demo it is ok } var departmentToCreate = mapper.Map <SaveDepartmentResource, Department>(saveDepartmentResource); var newDepartment = await departmentService.CreateDepartment(departmentToCreate); var department = await departmentService.GetDepartmentById(newDepartment.Id); var departmentResource = mapper.Map <Department, DepartmentResource>(department); return(Ok(departmentResource)); }
public async Task <ActionResult <DepartmentResource> > CreateDepartment([FromBody] SaveDepartmentResource model) { var validator = new SaveDepartmentResourceValidator(); var validationResult = await validator.ValidateAsync(model); if (!validationResult.IsValid) { return(BadRequest(validationResult.Errors)); } var departmentToCreate = _mapper.Map <SaveDepartmentResource, Department>(model); var newDepartment = await _departmentService.CreateDepartment(departmentToCreate); var department = await _departmentService.GetDepartmentById(newDepartment.Id); var departmentResource = _mapper.Map <Department, DepartmentResource>(department); return(Ok(departmentResource)); }
public async Task <IActionResult> CreateAsync([FromBody] SaveDepartmentResource resource) { if (resource == null) { return(BadRequest("Invalid Model")); } var departmentToAdd = _mapper.Map <SaveDepartmentResource, Department>(resource); var result = await _departmentService.CreateAsync(departmentToAdd); if (!result.Success) { return(BadRequest(result.Message)); } var response = _mapper.Map <Department, DepartmentResource>(result.Resource); return(CreatedAtAction(nameof(CreateAsync), "Department", new { departmentId = response.DepartmentId }, resource)); }
public async Task <IActionResult> Create([FromBody] SaveDepartmentResource departmentResource) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var department = mapper.Map <SaveDepartmentResource, Department>(departmentResource); departmentRepository.Add(department); if (await unitOfWork.CompleteAsync() == false) { throw new Exception(message: $"Create new department failed on save"); } department = await departmentRepository.GetOne(department.Id); var result = mapper.Map <Department, ViewDepartmentResource>(department); return(Ok(result)); }
public async Task <ActionResult <DepartmentResource> > UpdateDepartment(long id, [FromBody] SaveDepartmentResource model) { var validator = new SaveDepartmentResourceValidator(); var validationResult = await validator.ValidateAsync(model); var requestIsInvalid = id == 0 || !validationResult.IsValid; if (requestIsInvalid) { return(BadRequest(validationResult.Errors)); } var depToBeUpdate = await _departmentService.GetDepartmentById(id); if (depToBeUpdate == null) { return(NotFound()); } var department = _mapper.Map <SaveDepartmentResource, Department>(model); await _departmentService.UpdateDepartment(depToBeUpdate, department); var updatedDep = await _departmentService.GetDepartmentById(id); var updatedDepartmentResource = _mapper.Map <Department, DepartmentResource>(updatedDep); return(Ok(updatedDepartmentResource)); }
public async Task <ActionResult <DepartmentResource> > UpdateDepartment(int id, [FromBody] SaveDepartmentResource saveDepartmentResource) { var validator = new SaveDepartmentResourceValidator(); var validationResult = await validator.ValidateAsync(saveDepartmentResource); if (!validationResult.IsValid) { return(BadRequest(validationResult.Errors)); // this needs refining, but for demo it is ok } var departmentToBeUpdated = await departmentService.GetDepartmentById(id); if (departmentToBeUpdated == null) { return(NotFound()); } var department = mapper.Map <SaveDepartmentResource, Department>(saveDepartmentResource); await departmentService.UpdateDepartment(departmentToBeUpdated, department); var updatedDepartment = await departmentService.GetDepartmentById(id); var updatedDepartmentResource = mapper.Map <Department, DepartmentResource>(updatedDepartment); return(Ok(updatedDepartmentResource)); }