Отримання витрат часу та фінансів по завданнях через API: get_costs


Приклад get_costs запиту

?action=get_costs
Повертає часові та фінансові витрати по вказаних або всіх завданнях

Необов'язкові параметри:
  • id_project — ID проєкту (витрати по завданнях певного проєкту)
  • id_task — ID завдання (витрати по певному завданню)
  • datestart і dateend — діапазон дат для пошуку даних у форматі DD.MM.YYYY (дати рахуються включно)
  • is_timer — тип часових витрат, можливі значення:
    1 — внесено з таймеру
    0 — внесено вручну
  • filter — додатковий параметр пошуку (список операторів для роботи з даними, які використовуються в filter, див. search_tasks)

можливі дані для використання в filter (для методу get_costs):
  • id=TASK_ID — витрати по певному завданню (тип Integer)
  • project=PROJECT_ID — витрати по завданнях певного проєкту (тип Integer)
  • comment — коментар користувача до витрат (тип String)
  • dateadd — дата внесення витрат у форматі 'DD.MM.YYYY' (тип String)

Повертаються наступні дані:
  • id — ID рядкe витрат
  • comment — коментар користувача до витрат
  • time — значення часових витрат
  • money — значення фінансових витрат
  • date — дата внесення витрат
  • is_timer — тип часових витрат
  • true — отримані з таймеру
    false — внесені вручну
    • user_from — користувач, за яким закріплено рядок витрат
    • task — завдання, куди внесені витрати (значення параметрів аналогічні описаним в методі get_task)
    • total — сумарні значення часових та фінансовими витрат по усіх рядках витрат, отриманих у відповіді

Приклад JSON відповіді
При успішному виконанні запиту, відповідь буде містити статус ok і наступні дані:

{
    "status": "ok",
    "data": [
        {
            "id": "COSTS_ID_1",
            "comment": "COSTS_COMMENT",
            "time": "10:00",
            "money": "100.00",
            "date": "YYYY—MM—DD",
            "is_timer": false,
            "user_from": { "id": "USER_ID",
                "email": "USER_EMAIL",
                "name": "USER_NAME"
            },
            "task": {
                "id": "TASK_ID",
                "name": "TASK_NAME",
                "page": "/project/PROJECT_ID/TASK_ID/",
                "status": "active",
                "priority": "0..10",
                "user_from": { "id": "USER_ID",
                    "email": "USER_EMAIL",
                    "name": "USER_NAME"
                },
                "user_to": { "id": "USER_ID",
                    "email": "USER_EMAIL",
                    "name": "USER_NAME"
                },             "project": {                 "id": "PROJECT_ID",                 "name": "PROJECT_NAME",                 "page": "/project/PROJECT_ID/"             }, 
                "date_added": "YYYY—MM—DD HH:II", "date_start": "YYYY—MM—DD",
                "date_end": "YYYY—MM—DD", "time_end": "HH:II",
                "max_time": 20,
                "max_money": 500, "tags": { "TAG_ID": "TAG_NAME_1", "TAG_ID": "TAG_NAME_2", }
            },
   
        },
        {
            "id": "COSTS_ID_2",
            "comment": "COMMENT_COSTS",
... ... ... }
    ],
    "total": {
        "time": "HH:II",
        "money": "10.01"
    }
}