public IActionResult CreateProjectForEmployee(Guid employeeId, [FromBody] ProjectsForCreationDto project) { if (project == null) { return(BadRequest()); } if (!_pgRepository.GetEmployee(employeeId)) { return(NotFound()); } var projectEntity = Mapper.Map <Project>(project); _pgRepository.AddProjectForEmployee(employeeId, projectEntity); if (!_pgRepository.Save()) { throw new Exception($"Deleting tittle {employeeId} failed on save."); } var projectToReturn = Mapper.Map <ProjectsDto>(projectEntity); return(CreatedAtRoute("GetProjectForEmployee", new { employeeId = employeeId, id = projectToReturn.Id }, projectToReturn)); }
public IActionResult CreateEmployeeColletion([FromBody] IEnumerable <EmployeeForCreationDto> employeeCollection) { if (employeeCollection == null) { return(BadRequest()); } var employeeEntities = Mapper.Map <IEnumerable <Employee> >(employeeCollection); foreach (var employee in employeeEntities) { _pgRepository.AddEmployee(employee); } if (!_pgRepository.Save()) { throw new Exception("Creating an employee failed on save."); } var employeeCollectionToReturn = Mapper.Map <EmployeeDto>(employeeEntities); var idsAsString = string.Join(",", employeeCollectionToReturn.Select(a => a.Id)); return(CreatedAtRoute("GetEmployeeCollection", new { ids = idsAsString }, employeeCollectionToReturn)); //return Ok(); }
public IActionResult CreateEmployee([FromBody] EmployeeForCreationDto employee) { if (employee == null) { return(BadRequest()); } var employeeEntity = Mapper.Map <Employee>(employee); _pgRepository.AddEmployee(employeeEntity); if (!_pgRepository.Save()) { throw new Exception("Creating an employee failed on save."); } var employeeToReturn = Mapper.Map <EmployeeDto>(employeeEntity); return(CreatedAtRoute("GetEmployee", new { id = employeeToReturn.Id }, employeeToReturn)); }