public IActionResult GetStudentProfile() { try { var studentProfileDto = new StudentProfileDto() { Name = "", Description = "", FacultyId = "", FacultyName = "", Specialization = "", StudyYear = 1, Email = "", Telephone = "", City = "" }; var studentProfile = _studentProfileRepository.Get(User.FindFirst(JwtRegisteredClaimNames.Sid).Value); if (studentProfile != null) { studentProfileDto = Mapper.Map <StudentProfileDto>(studentProfile); } return(Ok(studentProfileDto)); } catch (Exception ex) { _logger.LogCritical($"An exception was thrown: ", ex); return(StatusCode(500, "A problem happend while handeling your request.")); } }
public IActionResult Edit(StudentProfileDto profile) { int id = _userService.UserId; Data.Models.Student user = _userRepository.GetById(id) as Data.Models.Student; _mapper.Map(profile, user); _db.SaveChanges(); return(Ok()); }
public StudentProfileDto CreateStudentProfile(StudentProfile model) { var studentObjDto = new StudentProfileDto(); using (var context = new DataContext(ConnectionString)) { studentProfileRepo = new Repository <StudentProfile>(context); studentProfileRepo.Add(model); studentProfileRepo.CommitAndRefreshChanges(); var mappedObject = Map(model, studentObjDto, typeof(StudentModel), typeof(StudentDto)); studentObjDto = mappedObject as StudentProfileDto; } return(studentObjDto); }
public StudentProfileDto GetStudentProfileById(Guid id) { var dtos = new StudentProfileDto(); using (var context = new DataContext(ConnectionString)) { studentProfileRepo = new Repository <StudentProfile>(context); var objs = studentProfileRepo.Get(id); var mappedObject = Map(objs, dtos, typeof(List <StudentProfile>), typeof(List <StudentProfileDto>)); dtos = mappedObject as StudentProfileDto; } return(dtos); }
public IActionResult CreateUpdateStudentProfile([FromBody] StudentProfileDto studentProfileDto) { try { var profileid = User.FindFirst(JwtRegisteredClaimNames.Sid).Value; // Validation if (studentProfileDto == null) { return(BadRequest()); } // Create the new object var flagCreate = false; var studentProfile = _studentProfileRepository.Get(profileid); if (studentProfile == null) { flagCreate = true; studentProfile = new StudentProfile { UserId = profileid }; } Mapper.Map(studentProfileDto, studentProfile); // Save to DB if (flagCreate) { _studentProfileRepository.Add(studentProfile); } if (!_studentProfileRepository.Save()) { return(StatusCode(500, "A problem happend while handeling your request.")); } var studentProfileDtoToReturn = Mapper.Map <StudentProfileDto>(studentProfile); return(CreatedAtRoute("GetStudentProfile", studentProfileDtoToReturn)); } catch (Exception ex) { _logger.LogCritical($"An exception was thrown: ", ex); return(StatusCode(500, "A problem happend while handeling your request.")); } }
public ActionResult <ApiResponse <int> > SendMail(int id, StudentMailDto emailDto) { var response = new ApiResponse <int>(); try { StudentProfileDto student = _mapper.Map <StudentProfileDto>(_studentRepository.Profile(id)); ReasonDto reasonDto = _mapper.Map <ReasonDto>(_reasonRepository.Find(r => r.Id == emailDto.ReasonId)); if (student != null && reasonDto != null) { StreamReader reader = new StreamReader(Path.GetFullPath("Templates/Email.html")); string body = string.Empty; body = reader.ReadToEnd(); //body = body.Replace("{username}", emailDto.Body); body = body.Replace("{username}", "Enviado por, " + student.User.Name + " " + student.User.LastName + " " + student.User.MotherName); body = body.Replace("{pass}", emailDto.Body); Email email = new Email(); email.To = reasonDto.Target; email.Subject = reasonDto.Title; email.Body = body; email.IsBodyHtml = true; _emailService.SendEmail(email); response.Message = "El correo se ha enviado correctamente"; response.Result = id; } else { response.Success = false; response.Message = "Hubo un error, intenta mas tarde"; } } catch (Exception ex) { response.Result = 0; response.Success = false; response.Message = "Internal server error"; _logger.LogError($"Something went wrong: { ex.ToString() }"); return(StatusCode(500, response)); } return(Ok(response)); }
public IHttpActionResult updateStudentProfile(StudentProfileDto profileDto) { using (ApplicationDbContext db = new ApplicationDbContext()) { string name = User.Identity.Name; var profile = db.studentProfiles.FirstOrDefault(x => x.UserName == name); if (profile == null) { profile = new StudentProfile() { UserName = User.Identity.Name }; db.studentProfiles.Add(profile); } profile.IsActive = profileDto.IsActive.AsBool(); db.SaveChanges(); return(Ok()); } }
public StudentProfileDto UpdateStudentProfile(Guid id, StudentProfile model) { var dto = new StudentProfileDto(); using (var context = new DataContext(ConnectionString)) { studentProfileRepo = new Repository <StudentProfile>(context); var _objToUpdate = studentProfileRepo.Get(id); if (_objToUpdate != null && _objToUpdate.Id != Guid.Empty) { // properties of the object to be updated studentProfileRepo.Modify(model); var mappedObject = Map(model, dto, typeof(StudentModel), typeof(StudentDto)); dto = mappedObject as StudentProfileDto; return(dto); } } return(null); }
public ActionResult <ApiResponse <StudentProfileDto> > UpdateProfileDocuments(int id, StudentProfileDto profileDto) { var response = new ApiResponse <StudentProfileDto>(); StudentUpdateDto updateDto = _mapper.Map <StudentUpdateDto>(profileDto); try { var stu = _studentRepository.Find(st => st.Id == id); updateDto.Activated = stu.Activated; updateDto.Active = stu.Active; if (stu != null) { foreach (DocumentDto item in profileDto.Documents) { var doc = _documentRepository.Find(p => p.Id == item.Id); if (doc == null) { //insert Document document = _documentRepository.Add(_mapper.Map <Document>(item)); //response.Result = _mapper.Map<UserDto>(user); } else { //update _mapper.Map(item, doc); _documentRepository.Update(doc, item.Id); } } var usr = _userRepository.Find(us => us.Id == updateDto.UserId); _mapper.Map(profileDto.User, usr); _userRepository.Update(usr, updateDto.UserId); _mapper.Map(updateDto, stu); _studentRepository.Update(stu, id); response.Message = "Los cambios se guardaron correctamente"; response.Result = _mapper.Map <StudentProfileDto>(_studentRepository.Find(u => u.Id == id)); } else { response.Success = false; response.Message = "El estudiante no existe, favor de verificar"; } } catch (Exception ex) { response.Result = null; response.Success = false; response.Message = "Internal server error"; _logger.LogError($"Something went wrong: { ex.ToString() }"); return(StatusCode(500, response)); } return(Ok(response)); }