Почему у меня возникает ошибка при использовании соединения в @query? - PullRequest
0 голосов
/ 24 декабря 2018

Я пытаюсь создать запрос, содержащий соединение внутри, но у меня появляется ошибка

public class Bordereau implements Serializable {
@Id
@GeneratedValue
private Long idBourdereau;
@Temporal(TemporalType.TIMESTAMP)
private Date date_ajout;
@Temporal(TemporalType.TIMESTAMP)
private Date date_pick_up;
private String gouvernerat_dest;
private String delegation_dest;
private String address_dest;
private String concernant_dest;
private int codepostal_dest;
private String numtel_dest;
private String numtel_dest2;
@OneToOne
@JoinColumn(name="idutilisateur")
private Utilisateur fournisseur;
private String gouvernerat_client;
private String address_client;
private int codepostal_client;
private String numtel_client;

private Long num_commande;
private Long prix_commande;
private int nombre_colis;
private String libelle_commande;
private String format_colis;
@Temporal(TemporalType.TIMESTAMP)
private Date liverer_avant;

private String pick_up;}



public class Bordereau implements Serializable {
@Id
@GeneratedValue
private Long idBourdereau;
@Temporal(TemporalType.TIMESTAMP)
private Date date_ajout;
@Temporal(TemporalType.TIMESTAMP)
private Date date_pick_up;
private String gouvernerat_dest;
private String delegation_dest;
private String address_dest;
private String concernant_dest;
private int codepostal_dest;
private String numtel_dest;
private String numtel_dest2;
@OneToOne
@JoinColumn(name="idutilisateur")
private Utilisateur fournisseur;
private String gouvernerat_client;
private String address_client;
private int codepostal_client;
private String numtel_client;

private Long num_commande;
private Long prix_commande;
private int nombre_colis;
private String libelle_commande;
private String format_colis;
@Temporal(TemporalType.TIMESTAMP)
private Date liverer_avant;

private String pick_up;

}

@Query("Select c from Bordereau c " + "join c.fournisseur user where user.idutilisateur = :idutilisateur" ) public List<Bordereau> getTodayParID(@Param("idutilisateur")long idutilisateur);

@RequestMapping(value = "/bordereaux/today/id={id}", method = RequestMethod.GET)
private List<Bordereau> getToday(@PathVariable Long id) {
    Date today = new Date();
    Utilisateur user = utilisateur.getOne(id);
    if(user != null) {
        switch  (user.getRole().getDescription()){
            case "Fournisseur":return bourdereau.getTodayParID(/*today, today,*/user.getIdutilisateur());
            //case "User":return bourdereau.getTodayParMagasin(today, today,user.getMagasin().getIdMagasin());
            case "Admin":return bourdereau.getTodayAll(today, today);
        }

    }
    return new ArrayList<>();
}

поэтому, когда я вызываю метод getToday, я получаю этот тип ошибки введите описание изображения здесь

Может кто-нибудь помочь мне, я пытаюсь получить все границы конкретного пользователяв конкретную дату.я пробовал много вещей, но ничего не получалось, даже с нативным запросом я получаю те же результаты

...