Здравствуйте, у меня есть бизнес-модель, и в одном из моих репозиториев у меня есть этот запрос:
Шаг 1:
@Query("
WITH datetime() AS dt
MATCH (p:Patient) WHERE ID(p) = ({0})
MATCH (d:Drug) WHERE ID(d) IN ({1})
SET d.givenDate = dt
CREATE (p)-[:GETS]->(d) RETURN DISTINCT dt
")
String matchPatient(Long a, Long[] b);
Прежде всего, я хотел бы знать, должен ли тип возврата этого запроса, который возвращает datetime (), быть String или Date.
Шаг 2:
Тогда я вызываю этот matchPatient () в моем контроллере работает следующим образом:
@GetMapping("/drugs/mask")
public void matchPatient(@RequestParam Long a, @RequestParam Long[] b) {
drugsRep.deleteDrugSlotRelationship(b);
drugsRep.matchPatient(a, b);
}
и я передаю параметры (пользователь на самом деле это делает).
После запуска этого URL с его параметрами и я вызываю узлы d в моей базе данных Neo4j я могу видеть в d-узлах datetime () как свойство, но, конечно, пока нет в моем JSON ответе в Postman
Шаг 3:
В моей модели лекарств я создал новое свойство drugToPatientDate, например:
@NodeEntity
public class Drug {
@Id @GeneratedValue
private Long neo4jId;
private Long drugId;
@NotBlank
private String tradingName;
@NotBlank
private String type;
@NotBlank
private Long quantity;
@NotBlank
private String expire;
private Date drugToPatientDate; <-------
@CreatedDate
private Date entryDate;
@LastModifiedDate
private Date lastModified;
@Relationship(type="IN_SLOT", direction = Relationship.OUTGOING)
private Slot slot;
@Relationship(type="CONTAINS", direction = Relationship.OUTGOING)
private List<Contains> substances;
(конечно, также получатели + сеттеры).
** Должен ли я использовать строку или дату для drugToPatientDate?
Теперь мне, вероятно, придется использовать установщик drugToPatientDate для каждого d-узла, который был назван tr хотя мой запрос Cypher с al oop и это в моем контроллере?
Если я не совсем не прав, то так, но я не знаю, как реализовать эту логику c