public async Task <ActionResult <ProjectItemResource> > CreateProjectItem(SaveProjectItemResource saveProjectItemResource)
        {
            //GET Current user
            var userId = User.Identity.Name;

            // Validation
            var validation       = new SaveProjectItemResourceValidator();
            var validationResult = await validation.ValidateAsync(saveProjectItemResource);

            if (!validationResult.IsValid)
            {
                return(BadRequest(validationResult.Errors));
            }

            // mappage de SaveProjectItemResource vers ProjectItem
            var projectItem = _mapperService.Map <SaveProjectItemResource, ProjectItem>(saveProjectItemResource);

            // Creation newProjectItem
            var newProjectItem = await _serviceProjectItem.CreateProjectItem(projectItem);

            // mappage de ProjectItem vers ProjectItemResource
            var projectItemResource = _mapperService.Map <ProjectItem, ProjectItemResource>(newProjectItem);

            return(Ok(projectItemResource));
        }
        public async Task <ActionResult <ProjectItemResource> > UpdateProjectItem(Guid id, SaveProjectItemResource saveProjectItemResource)
        {
            /// validation
            var validation       = new SaveProjectItemResourceValidator();
            var validationResult = await validation.ValidateAsync(saveProjectItemResource);

            if (!validationResult.IsValid)
            {
                return(BadRequest(validationResult.Errors));
            }

            // si la ProjectItem existe depuis le id
            var projectItemUpdate = await _serviceProjectItem.GetProjectItemById(id);

            if (projectItemUpdate == null)
            {
                return(BadRequest("Project n'existe pas "));
            }

            var projectItem = _mapperService.Map <SaveProjectItemResource, ProjectItem>(saveProjectItemResource);

            await _serviceProjectItem.UpdateProjectItem(projectItemUpdate, projectItem);

            var projectItemUpdateNew = await _serviceProjectItem.GetProjectItemById(id);

            var projectItemResourceUpdate = _mapperService.Map <ProjectItem, SaveProjectItemResource>(projectItemUpdateNew);

            return(Ok(projectItemResourceUpdate));
        }