Spring Boot REST: направление сортировки игнорируется, но сортировка обычно работает - PullRequest
0 голосов
/ 20 сентября 2018

Я пишу REST API с помощью Spring Boot.Поэтому я получаю сотрудников по имени.Я передаю параметр Pageable для сортировки, проблема в том, что направление игнорируется.Поэтому Spring всегда сортирует asc nerve desc, что является поведением по умолчанию.Я понятия не имею, что я делаю неправильно.

Мне нужно добавить, что сортировка в целом работает, потому что, если я не передам параметр chrValue как sort, я получу такие элементы, как онихранятся в БД.

Запрос:

http://localhost:8080/dimensionAttributeValues/search/findDimensionAttributeValueByDimensionAttributeDimensionAttributeID?dimensionAttributeId=1&page=0&size=1&sort=chrValue&chrValue.dir=desc

Репозиторий:

@RepositoryRestResource(collectionResourceRel = "dimensionAttributeValue", path = "dimensionAttributeValues")
@CrossOrigin(exposedHeaders="Access-Control-Allow-Origin")
public interface DimensionAttributeValueRepository extends PagingAndSortingRepository<DimensionAttributeValue, Long> {
    Page<DimensionAttributeValue> findDimensionAttributeValueByDimensionAttributeDimensionAttributeID(@Param(value = "dimensionAttributeId") long dimensionAttributeId, Pageable pageable);
    Page<DimensionAttributeValue> findDimensionAttributeValueByMasterDataMasterDataIDAndDimensionAttributeDimensionAttributeID(@Param(value = "masterDataId") long masterDataId, @Param(value = "dimensionAttributeId") long dimensionAttributeId, Pageable pageable);
    Page<DimensionAttributeValue> findDimensionAttributeValueByDimensionAttributeDimensionDimensionIDOrDimensionAttributeDimensionAttributeIDOrderByChrValue(@Param(value="dimensionID") long dimensionID, @Param(value = "dimensionAttributeID") long dimensionAttributeID, Pageable pageable);
    Page<DimensionAttributeValue> findAllByDimensionAttributeDimensionAttributeIDAndChrValueStartingWith(@Param(value = "dimensionAttributeId") long dimensionID, @Param(value = "chrValue") String chrValue, Pageable pageable);

}

Объект:

@Entity
@Table(name = "DimensionAttributeValue")
public class DimensionAttributeValue {

    @Id
    @GeneratedValue
    @Column(name = "DimensionAttributeValue_ID")
    private long dimensionAttributeValueID;

    @ManyToOne
    @JoinColumn(name = "DimensionAttribute_ID")
    private DimensionAttribute dimensionAttribute;

    @ManyToOne
    @JoinColumn(name = "MasterData_ID")
    private MasterData masterData;

    @Column (name = "ChrValue")
    private String chrValue;

    @Column (name = "IntValue")
    private Long intValue;

    @Column (name = "DecValue")
    private Double decValue;

    @Column (name = "DatValue")
    private String datValue;

    @Column (name = "BlnValue")
    private Boolean blnValue;

    @ManyToOne
    @JoinColumn (name = "LnkValue")
    private DimensionAttributeValue lnkValue;

    @ManyToOne
    @JoinColumn (name = "LstValue")
    private DimensionAttributeList lstValue;

    @Column (name = "StartDate")
    private Date startDate;

    // [...]
}

Любые идеи?Спасибо!

1 Ответ

0 голосов
/ 20 сентября 2018

Попробуйте этот URL.

http://localhost:8080/dimensionAttributeValues/search/findDimensionAttributeValueByDimensionAttributeDimensionAttributeID?dimensionAttributeId=1&page=0&size=1&sort=chrValue,desc.

Это позволит отсортировать ваши данные в порядке убывания.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...