пытаясь привязать API к виду переднего плана в Jhipster - PullRequest
0 голосов
/ 20 января 2020

API возвращает отзыв или данные по идентификатору студента, он даже работает для множественных отзывов, API отлично работает в swagger, но пока я подключал его к внешнему интерфейсу, он принимает нулевое значение и ничего не возвращает.

Я прошел следующие онлайн-уроки

    public List<StudentFeedback> getFeedbacks(Integer studentid) {
            Query query =  entityManager.createNativeQuery("SELECT * FROM student_feedback  WHERE studentid = ?",StudentFeedback.class);
            query.setParameter(1,studentid);
            return query.getResultList();
    }

. Это мой запрос для получения подробной информации. Api:

        @GetMapping("/student-feedbacks/{studentid}")
        public List<StudentFeedback> getFeedbacks(Integer studentid) {
            return studentFeedbackRepository.getFeedbacks(studentid);
        }

Метод служб:

  find(studentid: number): Observable<EntityResponseType> {
    return this.http.get<IStudentFeedback>(`${this.resourceUrl}/${studentid}`, { observe: 'response' });
  }

файл маршрута:

    Injectable({ providedIn: 'root' })
    export class StudentFeedbackResolve implements Resolve<IStudentFeedback> {
      constructor(private service: StudentFeedbackService) {}

      resolve(route: ActivatedRouteSnapshot): Observable<IStudentFeedback> {
        const studentid = route.params['studentid'];
        if (studentid) {
          return this.service.find(studentid).pipe(map((studentFeedback: HttpResponse<StudentFeedback>) => studentFeedback.body));
        }
        return of(new StudentFeedback());
      }
    }

    export const studentFeedbackRoute: Routes = [
      {
        path: '',
        component: StudentFeedbackComponent,
        data: {
          authorities: ['ROLE_ADMIN'],
          pageTitle: 'StudentFeedbacks'
        },
        canActivate: [UserRouteAccessService],
        outlet: 'ListingView'

      },

      {
        path: ':studentid/view',
        component: StudentFeedbackDetailComponent,
        resolve: {
          studentFeedback: StudentFeedbackResolve
        },
        data: {
          authorities: ['ROLE_ADMIN'],
          pageTitle: 'StudentFeedbacks'
        },
        canActivate: [UserRouteAccessService]
      },

файл component.ts

      loadAll() {
        this.studentFeedbackService.query().subscribe((res: HttpResponse<IStudentFeedback[]>) => {
          this.studentFeedbacks = res.body;
        });
      }

      ngOnInit() {
        this.loadAll();
        this.registerChangeInStudentFeedbacks();
      }

      ngOnDestroy() {
        this.eventManager.destroy(this.eventSubscriber);
      }

      trackId(index: number, item: IStudentFeedback) {
        return item.studentid;
      }


      registerChangeInStudentFeedbacks() {
        this.eventSubscriber = this.eventManager.subscribe('studentFeedbackListModification', () => this.loadAll());
      }
    }

html код кнопки:

     <td class="text-right">
                        <div class="btn-group">
                            <button type="submit"
                            (click)="find(studentid)"
                            [routerLink]="['/student-feedback', studentFeedback.studentid, 'view' ]"
                            class="btn btn-info btn-sm">
                        <fa-icon [icon]="'eye'"></fa-icon>
                        <span class="d-none d-md-inline">Feedback</span>
                    </button>

при нажатии, я должен получить все данные от studentid

это сообщение, которое я получаю в консоли, метод принимает нулевое значение, а не идентификатор студента

numberOfFeedback=1, studentid=8}, StudentFeedback{id=11, feedback='sky blue Georgia', name='Facilitator', numberOfFeedback=1, studentid=9}, StudentFeedback{id=12, feedback='e-enable Communications capacitor', name='Awesome', numberOfFeedback=1, studentid=10}, StudentFeedback{id=13, feedback='e-enable Communications capacitor', name='Awesome', numberOfFeedback=1, studentid=11}]
2020-01-20 12:28:04.012 DEBUG 2396 --- [ XNIO-1 task-15] c.m.myapp.aop.logging.LoggingAspect      : Enter: com.mycompany.myapp.web.rest.StudentFeedbackResource.getFeedbacks() with argument[s] = [null]
    2020-01-20 12:28:04.017 DEBUG 2396 --- [ XNIO-1 task-15] c.m.myapp.aop.logging.LoggingAspect      : Enter: com.mycompany.myapp.repository.StudentFeedbackRepositoryImpl.getFeedbacks() with argument[s] = [null]
    Hibernate: SELECT * FROM student_feedback  WHERE studentid = ?
2020-01-20 12:28:05.151 DEBUG 2396 --- [ XNIO-1 task-15] c.m.myapp.aop.logging.LoggingAspect      : Exit: com.mycompany.myapp.repository.StudentFeedbackRepositoryImpl.getFeedbacks() with result = []
    2020-01-20 12:28:05.153 DEBUG 2396 --- [ XNIO-1 task-15] c.m.myapp.aop.logging.LoggingAspect      : Exit: com.mycompany.myapp.web.rest.StudentFeedbackResource.getFeedbacks() with result = []
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...