ПланФикс API: Работа с файлами: различия между версиями
Seva (обсуждение | вклад) мНет описания правки |
Seva (обсуждение | вклад) Нет описания правки |
||
Строка 11: | Строка 11: | ||
#[[ПланФикс API file.getCountForGroups|file.getCountForGroups / Получение количества файлов для групп]] | #[[ПланФикс API file.getCountForGroups|file.getCountForGroups / Получение количества файлов для групп]] | ||
== file.getListForProject / список файлов == | == file.getListForProject / список файлов == |
Версия от 13:53, 25 августа 2010
Функции для работы с файлами:
- ??file.download / Скачать файл??
- file.get / Получение информации о файле
- file.getListForProject / Список файлов в проекте
- file.getListForTask / Список файлов в задаче
- file.getListForUser / Список файлов загруженных пользователем
- file.getListForClient /Список файлов контрагента
- file.getHistory / Получение истории по файлу
- file.uploadNewVersion / Загрузить новую версию файла
- file.getGroupList / Список доступных групп файлов
- file.getCountForGroups / Получение количества файлов для групп
file.getListForProject / список файлов
Получение списка файлов для проекта.
<?xml version="1.0" encoding="UTF-8"?>
<request method="file.getListForProject">
<account><!-- имя аккаунта --></account>
<sid><!-- ключ сессии, полученный после аутентификации --></sid>
<project>
<id></id>
</project>
<fileGroup></fileGroup>
<pageCurrent></pageCurrent>
<pageSize></pageSize>
<signature></signature>
</request>
Параметр fileGroup - не обязательный.
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<response status="ok">
<files count="x" totalCount="x">
<file>
<id></id>
<name>имя файла</name>
<version>версия</version>
<description>описание</description>
<date>дата загрузки файла</date>
<sourceType>смотри раздел Константы. Типы файлов.</sourceType>
<size>размер в байтах</size>
<task>
<id></id>
<title></title>
</task>
<project>
<id></id>
<title></title>
</project>
<!-- пользователь который загрузил данный файл -->
<user>
<id></id>
<name></name>
</user>
</file>
<file>
<!-- ... -->
</file>
<!-- ... -->
</files>
</response>
Формат такого ответа получают все запросы на список файлов.
file.getListForTask / список файлов для задачи
Получение списка файлов для задачи.
<?xml version="1.0" encoding="UTF-8"?>
<request method="file.getListForTask">
<account><!-- имя аккаунта --></account>
<sid><!-- ключ сессии, полученный после аутентификации --></sid>
<task>
<id></id>
</task>
<fileGroup></fileGroup>
<pageCurrent></pageCurrent>
<pageSize></pageSize>
<signature></signature>
</request>
Ответ: имеет такой же формат как и в функции file.getListForProject
file.getListForUser / список файлов загруженных пользователем
Получение списка файлов которые загрузил пользователь. Данную функцию можно вызывать с правами администратора для любого пользователя, либо получать список собственных файлов.
<?xml version="1.0" encoding="UTF-8"?>
<request method="file.getListForUser">
<account><!-- имя аккаунта --></account>
<sid><!-- ключ сессии, полученный после аутентификации --></sid>
<user>
<id></id>
</user>
<fileGroup></fileGroup>
<pageCurrent></pageCurrent>
<pageSize></pageSize>
<signature></signature>
</request>
Ответ: имеет такой же формат как и в функции file.getListForProject
file.getListForClient /список файлов контрагента
Получение списка файлов для контрагента/клиента.
<?xml version="1.0" encoding="UTF-8"?>
<request method="file.getListForClient">
<account><!-- имя аккаунта --></account>
<sid><!-- ключ сессии, полученный после аутентификации --></sid>
<client>
<id></id>
</client>
<fileGroup></fileGroup>
<pageCurrent></pageCurrent>
<pageSize></pageSize>
<signature></signature>
</request>
Ответ: имеет такой же формат как и в функции file.getListForProject
file.getHistory / получение истории по файлу
Позволяет получить полную историю по изменениям файла.
<?xml version="1.0" encoding="UTF-8"?>
<request method="file.getHistory">
<account><!-- имя аккаунта --></account>
<sid><!-- ключ сессии, полученный после аутентификации --></sid>
<file>
<id></id>
</file>
<signature></signature>
</request>
Ответ: имеет такой же формат как и в функции file.getListForProject
file.uploadNewVersion / загрузить новую версию файла
Функция позволяет загрузить новую версию файла.
<?xml version="1.0" encoding="UTF-8"?>
<request method="file.uploadNewVersion">
<account><!-- имя аккаунта --></account>
<sid><!-- ключ сессии, полученный после аутентификации --></sid>
<file>
<id>идентификатор обновляемого файла</id>
<description>новое описание файла</description>
<name></name>
<!-- тело файла закодированное base64 -->
<body></body>
</file>
<signature></signature>
</request>
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<response status="ok">
<file>
<id></id>
</file>
</response>
file.getGroupList / список доступных групп файлов
Получаем текстовое описание групп файлов которое у нас присутствует.
<?xml version="1.0" encoding="UTF-8"?>
<request method="file.getGroupList">
<account><!-- имя аккаунта --></account>
<sid><!-- ключ сессии, полученный после аутентификации --></sid>
<signature></signature>
</request>
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<response status="ok">
<fileGroups count="x" totalCount="x">
<fileGroup>
<id></id>
<name></name>
</fileGroup>
<fileGroup>
<!-- ... -->
</fileGroup>
<!-- ... -->
</fileGroups>
</response>
file.getCountForGroups / получение количества файлов для групп
Результатом выполнения функции будет список групп и количества файлов в ней
<?xml version="1.0" encoding="UTF-8"?>
<request method="file.getGroupList">
<account><!-- имя аккаунта --></account>
<sid><!-- ключ сессии, полученный после аутентификации --></sid>
<!-- следующие параметры взаимо исключающие -->
<!-- для задачи -->
<task>
<id></id>
</task>
<!-- в рамках проекта -->
<project>
<id></id>
</project>
<!-- для контрагента -->
<client>
<id></id>
</client>
<!-- для указанного опльзователя -->
<user>
<id></id>
</user>
<signature></signature>
</request>
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<response status="ok">
<fileGroups count="x" totalCount="x">
<fileGroup>
<id></id>
<name></name>
<fileCount>количество файлов в группе</fileCount>
</fileGroup>
<fileGroup>
<!-- ... -->
</fileGroup>
<!-- ... -->
</fileGroups>
</response>
Константы
Типы файлов
- FILESYSTEM - обычный файл
- INTERNET - внешний файл, хранящийся на внешнем ресурсе.