MapSurfer — rest — reports

GET /jreports

Структура запроса:


GET /jreports?token=mbs90lon2a8

token: ключ доступа

editable: дополнительный параметр, возвращает список отчетов, которые являются редактируемыми

Ответ:

Статус: 200 — успешное выполнение

Формат: json


[{
    "id": 705,
    "order": 1,
    "name": "Название отчета",
    "parameters": [{
        "id": 764,
        "description": "Дата с",
        "type": "date",
        "name": "in_date_from",
        "prompt": true
    }],
    "dataStoreId": null
}]



// id отчета, целое число
// порядоковый номер в списке, целое число
// название отчета, строка
// список параметров, массив
// id параметра, целое число
// описание параметра, строка
// тип, строка
// название, строка


// id хранилища, целое число

Статус: 500 — ошибка на сервере

Формат: text/plain

Содержит описание ошибки

GET /jreports/{reportId}

Структура запроса:


GET /jreports/705?token=mbs90lon2a8

reportId: id отчета

token: ключ доступа

Ответ:

Статус: 200 — успешное выполнение

Формат: json


{
    "id": 705,
    "order": 1,
    "name": "Название отчета",
    "parameters": [{
        "id": 764,
        "description": "Дата с",
        "type": "date",
        "name": "in_date_from",
        "prompt": true,
        "sourceQuery": null,
        "lib": false,
        "order": 1
    }],
    "dataStoreId": null
}



// id отчета, целое число
// порядоковый номер в списке, целое число
// название отчета, строка
// список параметров, массив
// id параметра, целое число
// описание параметра, строка
// тип, строка
// название, строка



// порядоковый номер в списке, целое число

// id хранилища, целое число

Статус: 500 — ошибка на сервере

Формат: text/plain

Содержит описание ошибки

POST /jreports/load

Структура запроса:


POST /jreports/load?token=mbs90lon2a8

token: ключ доступа

Пример запроса:

Формат: xml


<?xml .....


// xml отчета, созданного через ПО

Ответ:

Статус: 200 — успешное выполнение

Формат: json


{
    "status": "ok",
    "data": ["p198coiisr1o0c1a.jrxml"]
}



// статус ответа
// uuid загруженного файла

Статус: 403 — нет доступа к загрузке отчета

Формат: text/plain

Содержит описание ошибки

Статус: 500 — ошибка на сервере

Формат: text/plain

Содержит описание ошибки

GET /jreports/add/{uuid}

Структура запроса:


GET /jreports/add/p198coiisr1o0c1a15vmu1knv5iv3.jrxml?token=mbs90lon2a8

uuid: uuid файла отчета

token: ключ доступа

Ответ:

Статус: 200 — успешное выполнение

Формат: json


[{
    "name":"in_integer",
    "type":"int"
}]



// название, строка
// тип, строка

Статус: 403 — нет доступа к загрузке отчета

Формат: text/plain

Содержит описание ошибки

Статус: 404 — отчет не загружен

Формат: text/plain

Содержит описание ошибки

Статус: 500 — ошибка на сервере

Формат: text/plain

Содержит описание ошибки

POST /jreports

Структура запроса:


POST /jreports?token=mbs90lon2a8

token: ключ доступа

Пример запроса:

Формат: json


{
	"params": [{
		"description": "Параметр",
		"type": "text",
		"name": "new_parameter"
	}],
	"xmlFile": "p18oa94t92ptv19f.jrxml",
	"name": "Название отчета"
}



// объект параметров, массив
// описание параметра(русское название), строка
// тип, строка
// название в xml, строка

// uuid, строка
// название отчета, строка

Ответ:

Статус: 200 — успешное выполнение

Формат: json


{
    "dataStoreId": 21,
    "id": 1068,
    "name": "Название отчета",
    "order": 50,
    "parameters": [{
        "id": 1147,
        "description": "Параметр",
        "type": "text",
        "name": "new_parameter",
        "prompt": true
    }]
}



// id хранилища, целое число
// id отчета, целое число
// название отчета, строка
// порядковый номер в списке, целое число
// информация о параметрах, массив
// id параметра, целое число
// описание, строка
// тип, строка
// название, строка

Статус: 403 — нет доступа к загрузке отчета

Формат: text/plain

Содержит описание ошибки

Статус: 404 — отчет не загружен

Формат: text/plain

Содержит описание ошибки

Статус: 500 — ошибка на сервере

Формат: text/plain

Содержит описание ошибки

PUT /jreports/{reportId}

Структура запроса:


PUT /jreports/604?token=mbs90lon2a8

reportId: id отчета

token: ключ доступа

Пример запроса:

Формат: json


{
	"name": "Название отчета",
	"parameters": [{
		"id": 604,
		"description": "Начиная с",
		"type": "date",
		"name": "in_date_from",
		"prompt": true
	}]
}



// название отчета, строка
// массив параметров
// id параметров, целое число
// описание параметра (русское название), строка
// тип, строка
// название в xml, строка

Ответ:

Статус: 200 — успешное выполнение

Формат: json


{
	"status": "ok",
}



// статус ответа

Статус: 403 — нет доступа к загрузке отчета

Формат: text/plain

Содержит описание ошибки

Статус: 404 — отчет не загружен

Формат: text/plain

Содержит описание ошибки

Статус: 500 — ошибка на сервере

Формат: text/plain

Содержит описание ошибки

DELETE /jreports/{id}

Структура запроса:


DELETE /jreports/25?token=mbs90lon2a8

id: id удаляемого отчета

token: ключ доступа

Ответ:

Статус: 200 — успешное выполнение

Формат: json


{
    "delete":true
}

Статус: 500 — ошибка на сервере

Формат: text/plain

Содержит описание ошибки