Добавлять поля поисков к таблице Jhipster

Я создал мое приложение используя jHipster. В подмостках, я смог добавить пагинацию и распорядок, но также мне хотелось бы добавлять поле поисков к колонне, чему-то как это http://ng-table.com/: Вы знаете, есть ли какой-то признак этих подмостков, которые позволяют делать это, или какая-то другая форма?

Мой HTML этот:

ID Name
{{entity.id}} {{entity.name}}

Спасибо

0
задан 19.03.2019, 13:48
2 ответа

Ты можешь использовать признак 'pureFilter' углового, используя tambiГ©n ввод текста для фильтра, serГ - во что-то как это:

<input type="text" [(ngModel)]="filter" class="form-control">

<table> 
......
<tr *ngFor="let entity of (entities | pureFilter:filter:'name')>
.......

В 'pureFilter' ты должен помещать 'pureFilter: [Имя фильтра]: [Признак организации на котором просачиваться]'

0
ответ дан 02.12.2019, 05:27

Ты можешь делать их следующими:

В компоненте, ты можешь делать их следующими:

loadAll(idUser) {
this.userService
  .getAllVoterParent({
    page: this.page - 1,
    size: this.itemsPerPage,
    sort: this.sort(),
    idCandidate: idUser,
    q: this.search !== undefined ? this.search : ''
  })
  .subscribe((res: HttpResponse<User[]>) => this.onSuccess(res.body, res.headers), (res: HttpResponse<any>) => this.onError(res.body));


 }

, где q - критерий поисков.

В услуге:

getAllVoterParent(req?: any): Observable<HttpResponse<IUser[]>> {
const options = createRequestOption(req);
options.set('idCandidate', req.idCandidate);
options.set('q', req.q);
return this.http.get<IUser[]>(`${this.resourceUrl}/get-all-voters`, { params: options, observe: 'response' });


 }

уже в controller:

  @GetMapping(value = "/users/get-all-voters", params = {"idCandidate"})
@PreAuthorize("hasRole(\"" + AuthoritiesConstants.ADMIN + "\") or hasRole(\"" + AuthoritiesConstants.CANDIDATO + "\")")
public ResponseEntity<List<UserDTO>> getAllVotersByCandidate(@RequestParam MultiValueMap<String, String> queryParams,
                                                             UriComponentsBuilder uriBuilder,
                                                             Pageable pageable,
                                                             @RequestParam(value = "idCandidate") Long idCandidate,
                                                             @RequestParam(value = "q", defaultValue = "") String q) {

    log.debug("REST request to get all voters by candidate: {}", idCandidate);
    final Page<UserDTO> page = userService.getAllVoterByParent(idCandidate, q, pageable);
    HttpHeaders headers = PaginationUtil.generatePaginationHttpHeaders(uriBuilder.queryParams(queryParams), page);
    return new ResponseEntity<>(page.getContent(), headers, HttpStatus.OK);

в конце концов в Хранилище:

@Query(value = "SELECT v FROM User c" +
    " INNER JOIN User l ON  c.id = l.parent" +
    " INNER JOIN User v ON l.id = v.parent WHERE c.id = :idCandidate " +
    " AND (LOWER(v.firstName) LIKE  concat('%',:q,'%') OR LOWER(v.lastName) LIKE concat('%',:q,'%')" +
    " OR v.numDocument LIKE  concat('%',:q,'%'))")
Page<User> getAllVotersByCandidate(@Param("idCandidate") Long idCandidate, @Param("q") String q, Pageable pageable);

@Query - пример, там ты можешь помещать консультацию, которая приспосабливается к твоей необходимости

0
ответ дан 02.12.2019, 05:27