Возврат ответа Neo4J в формате JSON - PullRequest
0 голосов
/ 14 мая 2019

Я довольно новичок в мире графических баз данных и пытаюсь получить ответ от Neo4J в формате JSON.У меня есть отношения ниже.И мой ожидаемый ответ будет таким:

[
  {
    "id": "3cabc43c-59b6-47aa-b72f-3f1462c7ccfa",
    "name": "DependencyNetwork",
    "tasks": [
      {
        "id": "1e3217da-0df4-4162-80cd-3205b5740cc7",
        "name": "First",
        "department": "department",
        "earliestStart": 2,
        "duration": 5,
        "latestEnd": 4,
        "dependsOn": [
          {
            "id": "666752dd-6a73-44d8-a899-9c4151bbf9b5",
            "name": "Second"
          },
          {
            "id": "666752dd-6a73-44d8-a899-9c4151bbf9b5",
            "name": "Second"
          }
        ]
      },
      {
        "id": "666752dd-6a73-44d8-a899-9c4151bbf9b5",
        "name": "Second",
        "department": "department",
        "earliestStart": 2,
        "duration": 5,
        "latestEnd": 4,
        "dependsOn": [
          {
            "id": "1e3217da-0df4-4162-80cd-3205b5740cc7",
            "name": "First"
          }
        ]
      }
    ]
  }
]

Теперь я реализовал приведенный ниже запрос, который не является тем, что я хотел бы сделать:

MATCH (task:Task)-[r:BELONGS_TO]->(dn:DependencyNetwork)
         WITH task as task, dn as dn
         OPTIONAL  MATCH (task:Task)-[r:PRECEDES]->(dep:Task)
         WITH dn as dn, task as task, dep as dep
         RETURN dn.dId as dId, dn.name as dnName, 
         task.tId as tId, task.name as taskName, task.duration as taskDuration, task.latestEnd as taskLatestEnd,
         task.department as taskDepartment, task.earliestStart as taskEarliestStart,
         dep.tId as depId, dep.name as depName

enter image description here

...