Задача [API34]: API для работы с комментариями

Формулировка проблемы: для реализации нового модуля «Документы» в мобильном клиенте требуется реализовать API для работы с комментариями.

Решение: необходимо реализовать три новых метода API, позволяющих:

Метод, позволяющий добавлять/изменять комментарии

URL метода: rest/api/docflow/doc/comments/save. Типа запроса: POST.

Метод принимает следующие строковые параметры:

В случае успешного выполнения метода сервер вернет описание добавленного, либо измененного комментария.

Альтернативные потоки событий:

Метод, позволяющий удалять комментарии

URL метода: rest/api/docflow/doc/comments/remove. Типа запроса: GET.

Метод принимает следующие строковые параметры:

В случае успешного выполнения метода сервер вернет сообщение «Комментарий удален».

Альтернативные потоки событий:

Метод, позволяющий возвращать список комментариев

Метод возвращает комментарии к документу, отсортированные в обратном порядке по дате добавления.

URL метода: rest/api/docflow/doc/comments/list. Типа запроса: GET.

Метод принимает следующие строковые параметры:

Альтернативные потоки событий:

Метод возвращает json со следующими полями:

Пример возвращаемых массивов

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

{
    "list": [
        {
            "commentID": "c1c55f4c-2b86-485b-bcc1-a6e9e1489d78",
            "comment": "бла бла бла\n",
            "author": {
                "userID": "ecb06f77-7ad7-4f54-9479-18fe932be337",
                "name": "Абдрешен Л.С."
            },
            "created": "1421120565000",
            "created_label": "7 минут назад",
            "type": "0",
            "is_editable": "true",
            "is_deletable": "true",
            "comment_icon_type": "comment_icon"
        },
        {
            "commentID": "92c22233-f535-4ada-9e55-83e22b473f6e",
            "comment": "Документ зарегистрирован за номером {№ Вн.документа}-23-Dec.-14.\n",
            "author": {
                "userID": "ee71a4c6-888a-4f04-86de-44ab394f5749",
                "name": "Слепаков И.И."
            },
            "created": "1419328932000",
            "created_label": "23 декабря 2014 16:02",
            "type": "1",
            "is_editable": "false",
            "is_deletable": "false",
            "comment_icon_type": "comment_icon_green"
        }
    ],
    "count": "2"
}
[
    {
        "commentID": "c1c55f4c-2b86-485b-bcc1-a6e9e1489d78",
        "comment": "бла бла бла\n",
        "author": {
            "userID": "ecb06f77-7ad7-4f54-9479-18fe932be337",
            "name": "Абдрешен Л.С."
        },
        "created": "1421120565000",
        "created_label": "1 минут назад",
        "type": "0",
        "is_editable": "true",
        "is_deletable": "true",
        "comment_icon_type": "comment_icon"
    },
    {
        "commentID": "92c22233-f535-4ada-9e55-83e22b473f6e",
        "comment": "Документ зарегистрирован за номером {№ Вн.документа}-23-Dec.-14.\n",
        "author": {
            "userID": "ee71a4c6-888a-4f04-86de-44ab394f5749",
            "name": "Слепаков И.И."
        },
        "created": "1419328932000",
        "created_label": "23 декабря 2014 16:02",
        "type": "1",
        "is_editable": "false",
        "is_deletable": "false",
        "comment_icon_type": "comment_icon_green"
    }
]