public async Task <IActionResult> CreateProject([FromBody][Required] ProjectCreate projectCreate) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } Project project = projectCreate.NewProject(); if (!User.IsInRole("Admin")) { Student student = await _studentService.GetByIdAsync(Int32.Parse(User.Identity.Name)); if (!student.GroupAdmin) { return(BadRequest("You are not group admin.")); } project.Proposed = true; project.Approved = false; student.Group.ProposedProject = project; await _studentService.UpdateAsync(student); return(Ok()); } try { await _projectService.CreateAsync(project); return(Ok()); } catch (Exception ex) { return(BadRequest(ex.Message)); } }