public async Task Update(int id, StudentManipulationDto student) { var studentEntity = await _repositoryManager.StudentRepository.GetStudentAsync(id, trackChanges : true); _mapper.Map(student, studentEntity); await _repositoryManager.SaveAsync(); }
public async Task <StudentReadDto> Create(int trackActionId, int userId, StudentManipulationDto student) { var studentsEntity = _mapper.Map <Student>(student); var stud = _repositoryManager.StudentRepository.CreateStudent(trackActionId, userId, studentsEntity); await _repositoryManager.SaveAsync(); var entity = _mapper.Map <StudentReadDto>(stud); return(entity); }
public async Task <IActionResult> UpdateStudentForTrack(int studentId, [FromBody] StudentManipulationDto student) { try { await _manager.StudentServices.Update(studentId, student); return(NoContent()); } catch (BadHttpRequestException) { return(BadRequest()); } catch (Exception ex) { return(StatusCode(StatusCodes.Status500InternalServerError, new { Status = "Error", Message = "Internal server error" })); } }
public async Task <IActionResult> RegisterStudent(int trackActionId, StudentManipulationDto student) { var IsExisted = await _manager.UserServices.UserExist(student.Email); if (IsExisted != null) { return(StatusCode(StatusCodes.Status500InternalServerError, new { Status = "Error", Message = "Email existed before try another one" })); } else { try { var user = new AppUser { Name = student.Name, Email = student.Email, CreatedDate = student.CreatedDate, RoleId = 4, Password = _manager.StudentServices.GeneratePassword(student.Ssn, student.Name) }; await _manager.UserServices.RegisterUser(user); var stud = await _manager.StudentServices.Create(trackActionId, user.Id, student); return(Created("Student created successfully", stud)); } catch (BadHttpRequestException) { return(BadRequest()); } catch (Exception ex) { return(StatusCode(StatusCodes.Status500InternalServerError, new { Status = "Error", Message = ex.Message })); } } }