Ejemplo n.º 1
0
        public IActionResult Insert([FromBody] ProjectToInsertViewModel projectToInsert)
        {
            try
            {
                if (projectToInsert == null)
                {
                    return(BadRequest(new ApiResponse(ApiResponseState.Failed, "Project is null")));
                }

                var project = Mapper.Map <ProjectToInsertViewModel, Project>(projectToInsert);
                project.Status          = true;
                project.CreatedBy       = LoggedUser.UserId;
                project.CreatedDate     = DateTime.Now;
                project.LastUpdatedBy   = LoggedUser.UserId;
                project.LastUpdatedDate = DateTime.Now;

                var isValidEntity = __projectApp.IsValid(project);

                if (isValidEntity.Status == false)
                {
                    return(BadRequest(new ApiResponse(ApiResponseState.Failed, "Validation failed, please see details", isValidEntity.ValidationMessages)));
                }

                var projectIdInserted = __projectApp.Add(project);

                return(CreatedAtRoute("GetProjectById", new { controller = "Projects", id = projectIdInserted }, null));
            }
            catch (Exception ex)
            {
                return(HandleError(ex));
            }
        }