| 
				   | 
				
| (не показано 26 промежуточных версий 4 участников) | 
| Строка 1: | 
Строка 1: | 
 | Список функций для управления задачами  |  | {{#seo:  | 
 |  | |title=ПланФикс API: Задачи  | 
 |  | |titlemode=append  | 
 |  | |keywords=планфикс, ПланФикс API: Задачи,API  | 
 |  | |description=ПланФикс API: Задачи  | 
 |  | }}  | 
 |  | Список функций для управления задачами:  | 
 |  | #[[ПланФикс API task.add|task.add / Добавление задачи]]  | 
 |  | #[[ПланФикс API task.update|task.update / Обновление задачи]]  | 
 |  | #[[ПланФикс API task.updateCustomData|task.updateCustomData / Обновление пользовательских полей задачи]]  | 
 |  | #[[ПланФикс API task.get|task.get / Получение карточки задачи]]  | 
 |  | #[[ПланФикс API task.getMulti|task.getMulti / Получение множества карточек задач]]  | 
 |  | #[[ПланФикс API task.getList|task.getList / Список задач]]  | 
 |  | #[[ПланФикс API task.accept|task.accept / Принять задачу]]  | 
 |  | #[[ПланФикс API task.reject|task.reject / Отклонить задачу]]  | 
 |  | #[[ПланФикс API task.changeExpectDate|task.changeExpectDate / Изменить дату выполнения задачи]]  | 
 |  | #[[ПланФикс API task.changeStatus|task.changeStatus / Изменить статус задачи]]  | 
 |  | #[[ПланФикс API task.getPossibleStatusToChange|task.getPossibleStatusToChange / Получить список возможных статусов для изменения]]  | 
 |  | #[[ПланФикс API task.changeWorkers|task.changeWorkers / Изменить (добавить/удалить) исполнителей]]  | 
 |  | #[[ПланФикс API task.getFilterList|task.getFilterList/ Получить список доступных фильтров задач]]  | 
 | 
  |  | 
  | 
 | == task.add Добавление задачи==
  |  | 
 | Добавление:
  |  | 
 | <source lang="xml">
  |  | 
 | <?xml version="1.0" encoding="UTF-8"?>
  |  | 
 | <request method="task.add">
  |  | 
 |   <account><!-- имя аккаунта --></account>
  |  | 
 |   <sid><!-- ключ сессии, полученный после аутентификации --></sid>
  |  | 
 |   <task>
  |  | 
 |     <title><!-- Название задачи --></title>
  |  | 
 |     <description><!-- О чем эта задача --></description>
  |  | 
 |     <importance><!-- Срочность  --></importance>
  |  | 
 |     <status><!-- Статус --></status>
  |  | 
 |     <checkResult>{true|false}</checkResult><!-- Является ли задача задачей с обязательной проверкой результата -->
  |  | 
 |     <!-- Создатель задачи -->
  |  | 
 |     <owner>
  |  | 
 |       <id></id>
  |  | 
 |     </owner>
  |  | 
 |     <!-- Над задача -->
  |  | 
 |     <parent>
  |  | 
 |       <id></id>
  |  | 
 |     </parent>
  |  | 
 |     <!-- В рамках какого проекта поставлена задача -->
  |  | 
 |     <project>
  |  | 
 |       <id></id>
  |  | 
 |     </project>
  |  | 
 |     <!-- Контрагент -->
  |  | 
 |     <client>
  |  | 
 |       <id></id>
  |  | 
 |     </client>
  |  | 
 |     <startTime><!-- Время начала (приступить к работе) --></startTime>
  |  | 
 |     <endTime><!-- Время окончания (закончить работу До) --></endTime>
  |  | 
 |     <!-- список исполнителей -->
  |  | 
 |     <Workers>
  |  | 
 |       <!-- список пользователей -->
  |  | 
 |       <Users>
  |  | 
 |         <id><!-- идентификатор логина --></id>
  |  | 
 |         <id></id>
  |  | 
 |         <!-- ... -->
  |  | 
 |       </Users>
  |  | 
 |       <Groups>
  |  | 
 |         <id></id>
  |  | 
 |         <id></id>
  |  | 
 |         <!-- ... -->
  |  | 
 |       </Groups>
  |  | 
 |     </Workers>
  |  | 
 |     <!-- периодичность задачи, необязательный параметр -->
  |  | 
 |     <periodicity>
  |  | 
 |       <!-- ежедневно -->
  |  | 
 |       <daily>
  |  | 
 |         <type>{EVERY|EVERY_WORKING|AFTER_COMPLETE}</type>
  |  | 
 |         <shift></shift>
  |  | 
 |       </daily>
  |  | 
 |       <!-- еженедельно -->
  |  | 
 |       <weekly>
  |  | 
 |         <type>{EVERY|AFTER_COMPLETE}</type>
  |  | 
 |         <shift></shift>
  |  | 
 |         <days><!-- список дней через запятую --></days>
  |  | 
 |       </weekly>
  |  | 
 |       <!-- ежемесячно -->
  |  | 
 |       <monthly>
  |  | 
 |         <type>{AFTER_COMPLETE|DAY_OF_MONTH|BY_CONDITION}</type>
  |  | 
 |         <month></month>
  |  | 
 |         <day></day>
  |  | 
 |         <dayType></dayType>
  |  | 
 |       </monthly>
  |  | 
 |     </periodicity>
  |  | 
 |   </task>
  |  | 
 | </request>
  |  | 
 | </source>
  |  | 
 | Добавляемые даты могут задаваться в двух форматах. Первый формат короткий, указывается только число, год и месяц. Второй формат - полный, дополнительно указывается время начала/завершения, если того требует задача. Периодичность - не обязательный параметр. Внутри тега '''periodicity''' может быть только один из перечисленных элементов: ''daily'', ''weekly'', ''monthly''.
  |  | 
 | 
  |  | 
 | Ответ при удачном выполнении операции:
  |  | 
 | <source lang="xml">
  |  | 
 | <?xml version="1.0" encoding="UTF-8"?>
  |  | 
 | <response status="ok">
  |  | 
 | 	<task>
  |  | 
 | 		<id></id>
  |  | 
 | 	</task>
  |  | 
 | </response>
  |  | 
 | </source>
  |  | 
 | 
  |  | 
 | == task.update Обновление задачи ==
  |  | 
 | Запрос на обновление информации:
  |  | 
 | <source lang="xml">
  |  | 
 | <?xml version="1.0" encoding="UTF-8"?>
  |  | 
 | <request method="task.update">
  |  | 
 |   <account><!-- имя аккаунта --></account>
  |  | 
 |   <sid><!-- ключ сессии, полученный после аутентификации --></sid>
  |  | 
 |   <task>
  |  | 
 |     <id></id>
  |  | 
 |     <title><!-- Название задачи --></title>
  |  | 
 |     <description><!-- О чем эта задача --></description>
  |  | 
 |     <importance><!-- Срочность  --></importance>
  |  | 
 |     <status><!-- Статус --></status>
  |  | 
 |     <checkResult>{true|false}</checkResult><!-- Является ли задача задачей с обязательной проверкой результата -->
  |  | 
 |     <!-- Создатель задачи -->
  |  | 
 |     <owner>
  |  | 
 |       <id></id>
  |  | 
 |     </owner>
  |  | 
 |     <!-- Над задача -->
  |  | 
 |     <parent>
  |  | 
 |       <id></id>
  |  | 
 |     </parent>
  |  | 
 |     <!-- В рамках какого проекта поставлена задача -->
  |  | 
 |     <project>
  |  | 
 |       <id></id>
  |  | 
 |     </project>
  |  | 
 |     <!-- Контрагент -->
  |  | 
 |     <client>
  |  | 
 |       <id></id>
  |  | 
 |     </client>
  |  | 
 |     <startTime><!-- Время начала (приступить к работе) --></startTime>
  |  | 
 |     <endTime><!-- Время окончания (закончить работу До) --></endTime>
  |  | 
 |     <!-- список исполнителей -->
  |  | 
 |     <workers>
  |  | 
 |       <!-- список пользователей -->
  |  | 
 |       <users>
  |  | 
 |         <id><!-- идентификатор логина --></id>
  |  | 
 |         <id></id>
  |  | 
 |         <!-- ... -->
  |  | 
 |       </users>
  |  | 
 |       <groups>
  |  | 
 |         <id></id>
  |  | 
 |         <id></id>
  |  | 
 |         <!-- ... -->
  |  | 
 |       </groups>
  |  | 
 |     </workers>
  |  | 
 |     <!-- периодичность задачи, необязательный параметр -->
  |  | 
 |     <periodicity>
  |  | 
 |       <!-- ежедневно -->
  |  | 
 |       <daily>
  |  | 
 |         <type>{EVERY|EVERY_WORKING|AFTER_COMPLETE}</type>
  |  | 
 |         <shift></shift>
  |  | 
 |       </daily>
  |  | 
 |       <!-- еженедельно -->
  |  | 
 |       <weekly>
  |  | 
 |         <type>{EVERY|AFTER_COMPLETE}</type>
  |  | 
 |         <shift></shift>
  |  | 
 |         <days><!-- список дней через запятую --></days>
  |  | 
 |       </weekly>
  |  | 
 |       <!-- ежемесячно -->
  |  | 
 |       <monthly>
  |  | 
 |         <type>{AFTER_COMPLETE|DAY_OF_MONTH|BY_CONDITION}</type>
  |  | 
 |         <month></month>
  |  | 
 |         <day></day>
  |  | 
 |         <dayType></dayType>
  |  | 
 |       </monthly>
  |  | 
 |     </periodicity>
  |  | 
 |   </task>
  |  | 
 | </request>
  |  | 
 | </source>
  |  | 
 | 
  |  | 
 | Ответ при удачном выполнении запроса:
  |  | 
 | <source lang="xml">
  |  | 
 | <?xml version="1.0" encoding="UTF-8"?>
  |  | 
 | <response status="ok">
  |  | 
 |   <task>
  |  | 
 |     <id></id>
  |  | 
 |   </task>
  |  | 
 | </response>
  |  | 
 | </source>
  |  | 
 | 
  |  | 
 | == task.get Получение карточки задачи ==
  |  | 
 | Запрос на получение:
  |  | 
 | <source lang="xml">
  |  | 
 | <?xml version="1.0" encoding="UTF-8"?>
  |  | 
 | <request method="task.get">
  |  | 
 | 	<account><!-- имя аккаунта --></account>
  |  | 
 | 	<sid><!-- ключ сессии, полученный после аутентификации --></sid>
  |  | 
 | 	<id></id>
  |  | 
 | </request>
  |  | 
 | </source>
  |  | 
 | 
  |  | 
 | 
  |  | 
 | Ответ:
  |  | 
 | <source lang="xml">
  |  | 
 | <?xml version="1.0" encoding="UTF-8"?>
  |  | 
 | <response status="ok">
  |  | 
 | 	<task>
  |  | 
 | 		<id></id>
  |  | 
 | 		<title><!-- Название задачи --></title>
  |  | 
 | 		<description><!-- О чем эта задача --></description>
  |  | 
 | 		<importance><!-- Срочность  --></importance>
  |  | 
 | 		<status><!-- Статус --></status>
  |  | 
 | 		<checkResult>{true|false}</checkResult><!-- Является ли задача задачей с обязательной проверкой результата -->
  |  | 
 | 		<!-- Создатель задачи -->
  |  | 
 | 		<owner>
  |  | 
 | 			<id></id>
  |  | 
 | 			<name></name>
  |  | 
 | 		</owner>
  |  | 
 | 		<!-- Над задача -->
  |  | 
 | 		<parent>
  |  | 
 | 			<id></id>
  |  | 
 | 		</parent>
  |  | 
 | 		<!-- В рамках какого проекта поставлена задача -->
  |  | 
 | 		<project>
  |  | 
 | 			<id></id>
  |  | 
 | 			<title></title>
  |  | 
 | 		</project>
  |  | 
 | 		<!-- Контрагент -->
  |  | 
 | 		<client>
  |  | 
 | 			<id></id>
  |  | 
 | 			<name></name>
  |  | 
 | 		</client>
  |  | 
 | 		<beginDateTime><!-- Время создания задачи --></beginDateTime>
  |  | 
 | 		<startTime><!-- Время начала (приступить к работе) --></startTime>
  |  | 
 | 		<endTime><!-- Время окончания (закончить работу До) --></endTime>
  |  | 
 | 		<!-- Сквозной номер -->
  |  | 
 | 		<general></general>
  |  | 
 | 
  |  | 
 | 		<isOverdued><!-- Задача не выполнена в срок --></isOverdued>
  |  | 
 | 		<isCloseToDeadline><!-- Задача близка к дедлайну --></isCloseToDeadline>
  |  | 
 | 		<isNotAcceptedInTime><!-- Задача не принята вовремя --></isNotAcceptedInTime>
  |  | 
 | 		<!-- Помещена в избранные -->
  |  | 
 | 		<starred>{true|false}</starred>
  |  | 
 | 	</task>
  |  | 
 | </response>
  |  | 
 | </source>
  |  | 
 | 
  |  | 
 | == task.getList Список задач ==
  |  | 
 | Получение списка задач:
  |  | 
 | <source lang="xml">
  |  | 
 | <?xml version="1.0" encoding="UTF-8"?>
  |  | 
 | <request method="task.getList">
  |  | 
 |   <account><!-- имя аккаунта --></account>
  |  | 
 |   <sid><!-- ключ сессии, полученный после аутентификации --></sid>
  |  | 
 |   <!-- список какого пользователя мы хотим посмотреть -->
  |  | 
 |   <login>
  |  | 
 |     <id></id>
  |  | 
 |   </login>
  |  | 
 |   <target>
  |  | 
 |     Входящие/исходящие/Все
  |  | 
 |   </target>
  |  | 
 |   <!-- фильтр по проекту, не обязательное поле -->
  |  | 
 |   <project>
  |  | 
 |     <id></id>
  |  | 
 |   </project>
  |  | 
 |   <sort></sort>
  |  | 
 |   <status><!-- смотри константы --></status>
  |  | 
 |   <pageCurrent></pageCurrent>
  |  | 
 |   <pageSize></pageSize>
  |  | 
 |   <filter></filter>
  |  | 
 | </request>
  |  | 
 | </source>
  |  | 
 | Параметр '''filter''' может принимать следующие значения: '''ACTIVE''' (активные задачи), '''OVERDUE''' (просроченные задачи), '''MY''' (мои задачи). Значение параметра может представлять комбинацию допустимых значений, например:
  |  | 
 | <source lang="xml">
  |  | 
 |   <filter>ACTIVE MY</filter>
  |  | 
 | </source>
  |  | 
 | Значения параметра '''target''':
  |  | 
 | *'''all''' - все
  |  | 
 | *'''in''' - входящие, значение по умолчанию
  |  | 
 | *'''out''' - исходящие
  |  | 
 | Значения параметра '''sort''' смотри в [[#Типы сортировок|Типы сортировок]]
  |  | 
 | 
  |  | 
 | Результатом выполнения функции является следующий ответ:
  |  | 
 | <source lang="xml">
  |  | 
 | <?xml version="1.0" encoding="UTF-8"?>
  |  | 
 | <response status="ok">
  |  | 
 |   <tasks count="размер списка">
  |  | 
 |     <task>
  |  | 
 |       <id></id>
  |  | 
 |       <title><!-- Название задачи --></title>
  |  | 
 |       <description><!-- О чем эта задача --></description>
  |  | 
 |       <importance><!-- Срочность  --></importance>
  |  | 
 |       <status><!-- Статус --></status>
  |  | 
 |       <checkResult>{true|false}</checkResult><!-- Является ли задача задачей с обязательной проверкой результата -->
  |  | 
 |       <!-- Создатель задачи -->
  |  | 
 |       <owner>
  |  | 
 |         <id></id>
  |  | 
 |         <name></name>
  |  | 
 |       </owner>
  |  | 
 |       <!-- Над задача -->
  |  | 
 |       <parent>
  |  | 
 |         <id></id>
  |  | 
 |       </parent>
  |  | 
 |       <!-- В рамках какого проекта поставлена задача -->
  |  | 
 |       <project>
  |  | 
 |         <id></id>
  |  | 
 |         <title></title>
  |  | 
 |       </project>
  |  | 
 |       <!-- Контрагент -->
  |  | 
 |       <client>
  |  | 
 |         <id></id>
  |  | 
 |         <name></name>
  |  | 
 |       </client>
  |  | 
 |       <beginDateTime><!-- Время создания задачи --></beginDateTime>
  |  | 
 |       <startTime><!-- Время начала (приступить к работе) --></startTime>
  |  | 
 |       <endTime><!-- Время окончания (закончить работу До) --></endTime>
  |  | 
 |       <!-- Сквозной номер -->
  |  | 
 |       <general></general>
  |  | 
 | 
  |  | 
 |       <isOverdued><!-- Задача не выполнена в срок --></isOverdued>
  |  | 
 |       <isCloseToDeadline><!-- Задача близка к дедлайну --></isCloseToDeadline>
  |  | 
 |       <isNotAcceptedInTime><!-- Задача не принята вовремя --></isNotAcceptedInTime>
  |  | 
 |       <!-- Помещена в избранные -->
  |  | 
 |       <starred>{true|false}</starred>
  |  | 
 |       <!-- исполнители -->
  |  | 
 |       <workers>
  |  | 
 |         <users>
  |  | 
 |           <user>
  |  | 
 |             <id></id>
  |  | 
 |             <name></name>
  |  | 
 |           </user>
  |  | 
 |           <user>
  |  | 
 |             <id></id>
  |  | 
 |             <name></name>
  |  | 
 |           </user>
  |  | 
 |           <!-- ... -->
  |  | 
 |         </users>
  |  | 
 |         <groups>
  |  | 
 |           <group>
  |  | 
 |             <id></id>
  |  | 
 |             <name></name>
  |  | 
 |           </group>
  |  | 
 |           <group>
  |  | 
 |             <id></id>
  |  | 
 |             <name></name>
  |  | 
 |           </group>
  |  | 
 |           <!-- ... -->
  |  | 
 |         </groups>
  |  | 
 |       </workers>
  |  | 
 |     </task>
  |  | 
 |     <!-- ... -->
  |  | 
 |   </tasks>
  |  | 
 | </response>
  |  | 
 | </source>
  |  | 
 | 
  |  | 
 | == task.accept Принять задачу ==
  |  | 
 | Для дальнейшей работы с задачей, пользователь должен принять задачу. Вызов функции:
  |  | 
 | <source lang="xml">
  |  | 
 | <?xml version="1.0" encoding="UTF-8"?>
  |  | 
 | <request method="task.accept">
  |  | 
 |   <account><!-- имя аккаунта --></account>
  |  | 
 |   <sid><!-- ключ сессии, полученный после аутентификации --></sid>
  |  | 
 |   <task>
  |  | 
 |     <id>идентификатор задачи, которую принимает пользователь</id>
  |  | 
 |   </task>
  |  | 
 | </request>
  |  | 
 | </source>
  |  | 
 | 
  |  | 
 | Результатом корректного выполнения запроса будет:
  |  | 
 | <source lang="xml">
  |  | 
 | <?xml version="1.0" encoding="UTF-8"?>
  |  | 
 | <response status="ok">
  |  | 
 |   <task>
  |  | 
 |     <id></id>
  |  | 
 |   </task>
  |  | 
 | </response>
  |  | 
 | </source>
  |  | 
 | 
  |  | 
 | == task.reject Отклонить задачу ==
  |  | 
 | 
  |  | 
 | == task.changeExpectDate Изменить дату выполнения задачи ==
  |  | 
 | 
  |  | 
 | == task.chengeStatus Изменить статус задачи ==
  |  | 
 | 
  |  | 
 | 
  |  | 
 | == Константы ==
  |  | 
 | === Срочность ===
  |  | 
 | *'''LOW''' - Не срочная
  |  | 
 | *'''AVERAGE''' - Обычная
  |  | 
 | *'''HIGH''' - Срочная
  |  | 
 | === Статус ===
  |  | 
 | *'''DRAFT''' - Черновик
  |  | 
 | *'''ACTIVE''' - Активный но еще не принятый
  |  | 
 | *'''ACCEPTED''' - Принятый
  |  | 
 | *'''COMPLETED''' - Завершенный
  |  | 
 | *'''DELAYED''' - Отложенный
  |  | 
 | *'''REJECTED''' - Отклоненный
  |  | 
 | *'''DONE''' - Выполненный
  |  | 
 | *'''CANCELED''' - Отмененный
  |  | 
 | === Типы сортировок ===
  |  | 
 | *'''NUMBER_ASC''' - сортировка по номеру (возрастание)
  |  | 
 | *'''NUMBER_DESC''' - сортировка по номеру (убывание)
  |  | 
 | *'''IMPORTANCE_ASC''' - сортировка по приоритету (возрастание)
  |  | 
 | *'''IMPORTANCE_DESC''' - сортировка по приоритету (убывание)
  |  | 
 | *'''DEADLINE_ASC''' - сортировка по времени окончания (возрастание)
  |  | 
 | *'''DEADLINE_DESC''' - сортировка по времени окончания (убывание)
  |  | 
 | *'''TASKTITLE_ASC''' - сортировка по названию задачи (возрастание)
  |  | 
 | *'''TASKTITLE_DESC''' - сортировка по названию задачи (убывание)
  |  | 
 | *'''PROJECT_ASC''' - сортировка по названию проекта (возрастание)
  |  | 
 | *'''PROJECT_DESC''' - сортировка по названию проекта (убывание)
  |  | 
 | 
  |  | 
 | == Ошибки ==
  |  | 
 | по ходу реализации раздел дополниться, сей час не понятен полный список возможных ошибок
  |  | 
 | 
  |  | 
  | 
 | == Перейти ==  |  | == Перейти ==  | 
 | [[ПланФикс API]]  |  | [[Список функций]]  |