Ejemplo n.º 1
0
        [HttpDelete("projects/{projectID}", Name = "DeleteProjectById")] //TODO need a way to verify user via auth (do later)
        public async Task <ActionResult> DeleteProjectById(string projectID)
        {
            ProjectModel projectModel = await _projectService.DeleteProjectById(projectID);

            ProjectGetDto projectGetDto = _mapper.Map <ProjectGetDto>(projectModel);

            return(Ok(projectGetDto));
        }
Ejemplo n.º 2
0
        public async Task <ActionResult <ProjectGetDto> > UpdateProjectById(string projectID, ProjectPostDto projectPostDto)
        {
            ProjectModel updatedProjectModel = await _projectService.UpdateProjectByProjectIdAsync(projectID, projectPostDto);

            ProjectGetDto projectGetDto = _mapper.Map <ProjectGetDto>(updatedProjectModel);

            return(CreatedAtAction("GetSingleProjectById", new { projectID = projectGetDto.ProjectId }, projectGetDto));
        }
Ejemplo n.º 3
0
        public async Task <ActionResult <ProjectGetDto> > CreateProject(ProjectPostDto projectPostDto)
        {
            if (ModelState.IsValid)
            {
                ProjectModel projectModel = _mapper.Map <ProjectModel>(projectPostDto);
                await _projectService.AddProject(projectModel);

                ProjectGetDto projectGetDto = _mapper.Map <ProjectGetDto>(projectModel);
                return(CreatedAtAction("GetSingleProjectById", new { ProjectID = projectGetDto.ProjectId }, projectGetDto));
            }

            IEnumerable <string> errorList = ModelState.SelectMany(m => m.Value.Errors.Select(e => e.ErrorMessage));

            return(Ok(errorList));
        }