//PUT METHODS public CourseResponseDTO Update(UpdateCourseRequestDTO requestDTO) { //provera da li postoji kurs Course oldCourse = this.FindOneByUuidOrThrow(requestDTO.uuid); SubjectResponseDTO subject; try { subject = this._httpClientService.SendRequest <SubjectResponseDTO>(HttpMethod.Get, "http://localhost:40006/api/subjects/" + requestDTO.subjectUUID, new UserPrincipal(_httpContextAccessor.HttpContext).token).Result; } catch { throw new EntityNotFoundException("Subject with uuid " + requestDTO.subjectUUID + " doesn't exist", GeneralConsts.MICROSERVICE_NAME); } //update u tabeli kurs Course course = new Course() { uuid = requestDTO.uuid, name = requestDTO.name, description = requestDTO.description, active = requestDTO.active, maxStudents = requestDTO.maxStudents, minStudents = requestDTO.minStudents, creationDate = requestDTO.creationDate, subject = new Subject() { uuid = requestDTO.subjectUUID } }; this._queryExecutor.Execute <Course>(DatabaseConsts.USER_SCHEMA, this._sqlCommands.UPDATE_COURSE(course), this._modelMapper.MapToCourseAfterInsert); //insert u tabeli arhiva CreateCourseArchiveRequestDTO archive = new CreateCourseArchiveRequestDTO() { courseUUID = course.uuid, name = course.name, description = course.description, active = course.active, maxStudents = course.maxStudents, minStudents = course.minStudents, creationDate = course.creationDate, subjectUUID = subject.uuid, changeDate = DateTime.Now, moderatorUUID = new UserPrincipal(_httpContextAccessor.HttpContext).uuid }; _ = this._courseArchiveService.CreateCourseArchive(archive); CourseResponseDTO response = this._autoMapper.Map <CourseResponseDTO>(course); response.subject = subject; return(response); }
public ActionResult <CourseResponseDTO> HandleUpdateCourse(UpdateCourseRequestDTO requestDTO) { return(Ok(this._courseService.Update(requestDTO))); }