что мне нужно сделать, это:
Загрузите файл json.
Позвольте пользователям тянуть диаграмму Ганта и изменять значение.
Я знаю это:
gantt.load()
может загрузить файл json и визуализировать информацию на графике.
но он работает только тогда, когда я использую test.json:
{
"data":[
{"id":"1", "text":"Project #2", "start_date":"01-04-2013", "duration":18,
"progress":0.4, "open": true},
{"id":"2", "text":"Task #1", "start_date":"02-04-2013", "duration":8,
"progress":0.6, "parent":"1"},
{"id":"3", "text":"Task #2", "start_date":"11-04-2013", "duration":8,
"progress":0.6, "parent":"1"}
],
"links":[
{"id":"1", "source":"1", "target":"2", "type":"1"},
{"id":"2", "source":"2", "target":"3", "type":"0"},
{"id":"3", "source":"3", "target":"4", "type":"0"},
{"id":"4", "source":"2", "target":"5", "type":"2"}
]}
Но мой json более сложный, это массив объектов.
и у каждого объекта есть много элементов (например: OrdetNum, date, start_date ....)
Ниже myjson.json:
{
"orderFormNumber": "1608T01CY",
"orderNumber": "1608T01CY",
"tasks": "C01*01",
"OriginalTasks": "C01",
"partUnitId": 1,
"sharedCode": "NEWABST",
"processNum": 1,
"processSequence": 1,
"initStartTime": "2018-11-18T16:50:00",
"estimatedTime": 10.833333015441895,
"initEndTime": "2018-11-19T03:39:59",
"estStartTime": "2018-11-15T14:10:00",
"estEndTime": "2018-11-17T07:19:59",
"detailSchedule": null,
"detailSchedulefromCo": null,
"qcSchedule": "2018-11-22T16:30:00",
"fifoStartTime": "2018-11-15T15:44:45",
"fifoEndTime": "2018-11-17T09:34:44",
"acoStartTime": null,
"acoEndTime": null,
"realStartTime": null,
"realEndTime": null,
"processType": "M",
"machineGroup": "M",
"machineGroupSelection": "M",
"prePart": null,
"fifoSelectedMachine": "M02",
"acoSelectedMachine": null,
"designChangesNumber": "1608T01CY",
"machineingStates": 0 }
Но это только один из многих объектов.
Итак, как я могу использовать gantt.load () для визуализации моего файла json?

Структура вашего объекта, похоже, не соответствует ожидаемой модели данных ганта https://docs.dhtmlx.com/gantt/desktop__loading.html#dataproperties
Я имею в виду не количество настраиваемых свойств, а отсутствие обязательных свойств, которых ожидает гант - я бы, Дата начала, продолжительность (или end_date), текст, родитель (если вы хотите вложенные задачи)
Поэтому, если вы не превратите свои данные во что-то, что может анализировать Гантт, я бы не ожидал, что что-нибудь будет отображаться.
Если вы не можете изменить формат, возвращаемый сервером, вам придется преобразовать данные на стороне клиента,
1) загрузить объект json / data клиенту https://docs.dhtmlx.com/gantt/desktop__server_side.html#customrequestheadersandparameters
2) преобразовать его в объект, понятный Гантту. https://docs.dhtmlx.com/gantt/desktop__supported_data_formats.html#json Важно, чтобы у ваших объектов были свойства id / start_date / end_date / duration / parent. Вы можете иметь любое количество дополнительных свойств - они будут доступны для публичного api.
3) загрузите набор данных результатов в диаграмму Ганта с помощью gantt.parse. Или вы можете изменить формат на бэкэнде и продолжить использование gantt.load