FullLessonsReport

План занятий

Сводная информация о планируемых и реально проведённых занятиях по договору.

Входные параметры
agreementId
ID договора со студентом, для которого нужно сгенерировать отчёт.
Целочисленное, обязательный параметр
Результат:
Сгруппированный по периодам оплаты список занятий, включая все переносы и отмены, в соответствии с фактически отведёнными занятиями. Первый массив - группировки занятий, с указантем планируемого/фактического кол-ва занятий и их длительности.
Вложенный в группировку массив - список занятий, где поле type указывает на тип события/занятия. А именно:
  1. Занятие запланировано по расписанию
  2. Занятие отменено на основании коллекции выходных
  3. Занятие отменено индивидуально для группы, без переноса на другую дату
  4. Занятие отменено индивидуально для группы с переносом на дату secondaryDate
  5. На текущую дату lessonDate перенесено занятие с даты secondaryDate
  6. Занятие было проведено по расписанию
  7. Занятие было проведено вне расписания
  8. Занятие было перенесено с дня secondaryDate и проведено по расписанию дня secondaryDate, в день lessonDate
Пример результата (json):
[
    {
        "periodStartDate": "2017-01-01",
        "planCount": 1,
        "realCount": 1,
        "planDuration": 60,
        "realDuration": 60,
        "realSumm": 101.875,
        "planSumm": 101.875,
        "items": [
            {
                "type": 4,
                "secondaryDate": "2017-01-15",
                "lessonDate": "2017-01-02",
                "timeStart": "13:00:00",
                "timeEnd": "14:00:00",
                "breakTime": "0",
                "duration": 60,
                "comment": "",
                "cost": 101.875
            },
            {
                "type": 8,
                "secondaryDate": "2017-01-02",
                "lessonDate": "2017-01-15",
                "timeStart": "13:00:00",
                "timeEnd": "14:00:00",
                "breakTime": "0",
                "duration": 60,
                "comment": false,
                "id": "1",
                "cost": 101.875,
                "lessonData": {
                    "silId": "1",
                    "param1": "69",
                    "param2": "71",
                    "param3": "75",
                    "param4": "67",
                    "param5": "100",
                    "totalAverage": "70",
                    "absent": "0",
                    "isFake": "0"
                }
            }
        ]
    }
]

Обратите внимание!

Поле secondaryDate пожет может иметь разные смысловые значения, в зависимости от значения type.

Метод поддерживает вызов из автономных приложений.