- Модуль: imopenlines
- Путь к файлу: ~/bitrix/modules/imopenlines/lib/integrations/report/eventhandler.php
- Класс: BitrixImOpenLinesIntegrationsReportEventHandler
- Вызов: EventHandler::buildStaffCutStatistics
static function buildStaffCutStatistics()
{
$widget = new Widget();
$widget->setGId(Util::generateUserUniqueId());
$widget->setWidgetClass(BaseWidget::getClassName());
$widget->setViewKey(GroupedDataGrid::VIEW_KEY);
$widget->setCategoryKey('open_lines');
$widget->setBoardId('open_lines_report_base_board');
$widget->getWidgetHandler(true)->updateFormElementValue('label', Loc::getMessage('REPORT_STAFF_CUT_WIDGET_TITLE_NEW'));
$widget->addConfigurations($widget->getWidgetHandler(true)->getConfigurations());
$contentment = new Report();
$contentment->setGId(Util::generateUserUniqueId());
$contentment->setReportClassName(Treatment::getClassName());
$contentment->setWidget($widget);
$contentment->getReportHandler(true)->updateFormElementValue('label', Loc::getMessage('REPORT_CONTENTMENT_TITLE'));
$contentment->getReportHandler(true)->updateFormElementValue('groupingBy', Treatment::GROUP_BY_RESPONSIBLE);
$contentment->getReportHandler(true)->updateFormElementValue('calculate', Treatment::WHAT_WILL_CALCULATE_CONTENTMENT);
$contentment->addConfigurations($contentment->getReportHandler(true)->getConfigurations());
$widget->addReports($contentment);
$allTreatmentCount = new Report();
$allTreatmentCount->setGId(Util::generateUserUniqueId());
$allTreatmentCount->setReportClassName(Treatment::getClassName());
$allTreatmentCount->setWidget($widget);
$allTreatmentCount->getReportHandler(true)->updateFormElementValue('label', Loc::getMessage('REPORT_ALL_TREATMENT_COUNT_TITLE'));
$allTreatmentCount->getReportHandler(true)->updateFormElementValue('groupingBy', Treatment::GROUP_BY_RESPONSIBLE);
$allTreatmentCount->getReportHandler(true)->updateFormElementValue('calculate', Treatment::WHAT_WILL_CALCULATE_ALL);
$allTreatmentCount->addConfigurations($allTreatmentCount->getReportHandler(true)->getConfigurations());
$widget->addReports($allTreatmentCount);
$firstTreatmentCount = new Report();
$firstTreatmentCount->setGId(Util::generateUserUniqueId());
$firstTreatmentCount->setReportClassName(Treatment::getClassName());
$firstTreatmentCount->setWidget($widget);
$firstTreatmentCount->getReportHandler(true)->updateFormElementValue('label', Loc::getMessage('REPORT_FIRST_TREATMENT_COUNT_NUMBER_BLOCK_TITLE_NEW'));
$firstTreatmentCount->getReportHandler(true)->updateFormElementValue('groupingBy', Treatment::GROUP_BY_RESPONSIBLE);
$firstTreatmentCount->getReportHandler(true)->updateFormElementValue('calculate', Treatment::WHAT_WILL_CALCULATE_FIRST);
$firstTreatmentCount->addConfigurations($firstTreatmentCount->getReportHandler(true)->getConfigurations());
$widget->addReports($firstTreatmentCount);
$secondTreatmentCount = new Report();
$secondTreatmentCount->setGId(Util::generateUserUniqueId());
$secondTreatmentCount->setReportClassName(Treatment::getClassName());
$secondTreatmentCount->setWidget($widget);
$secondTreatmentCount->getReportHandler(true)->updateFormElementValue('label', Loc::getMessage('REPORT_DUPLICATE_TREATMENT_COUNT_NUMBER_BLOCK_TITLE_NEW'));
$secondTreatmentCount->getReportHandler(true)->updateFormElementValue('groupingBy', Treatment::GROUP_BY_RESPONSIBLE);
$secondTreatmentCount->getReportHandler(true)->updateFormElementValue('calculate', Treatment::WHAT_WILL_CALCULATE_DUPLICATE);
$secondTreatmentCount->addConfigurations($secondTreatmentCount->getReportHandler(true)->getConfigurations());
$widget->addReports($secondTreatmentCount);
$appointedTreatmentCount = new Report();
$appointedTreatmentCount->setGId(Util::generateUserUniqueId());
$appointedTreatmentCount->setReportClassName(Treatment::getClassName());
$appointedTreatmentCount->setWidget($widget);
$appointedTreatmentCount->getReportHandler(true)->updateFormElementValue('label', Loc::getMessage('REPORT_APPOINTED_TREATMENT_COUNT_NUMBER_BLOCK_TITLE'));
$appointedTreatmentCount->getReportHandler(true)->updateFormElementValue('groupingBy', Treatment::GROUP_BY_RESPONSIBLE);
$appointedTreatmentCount->getReportHandler(true)->updateFormElementValue('calculate', Treatment::WHAT_WILL_CALCULATE_ALL_APPOINTED);
$appointedTreatmentCount->addConfigurations($appointedTreatmentCount->getReportHandler(true)->getConfigurations());
$widget->addReports($appointedTreatmentCount);
$answeredTreatmentCount = new Report();
$answeredTreatmentCount->setGId(Util::generateUserUniqueId());
$answeredTreatmentCount->setReportClassName(Treatment::getClassName());
$answeredTreatmentCount->setWidget($widget);
$answeredTreatmentCount->getReportHandler(true)->updateFormElementValue('label', Loc::getMessage('REPORT_ANSWERED_TREATMENT_COUNT_NUMBER_BLOCK_TITLE'));
$answeredTreatmentCount->getReportHandler(true)->updateFormElementValue('groupingBy', Treatment::GROUP_BY_RESPONSIBLE);
$answeredTreatmentCount->getReportHandler(true)->updateFormElementValue('calculate', Treatment::WHAT_WILL_CALCULATE_ANSWERED);
$answeredTreatmentCount->addConfigurations($answeredTreatmentCount->getReportHandler(true)->getConfigurations());
$widget->addReports($answeredTreatmentCount);
$skippedTreatmentCount = new Report();
$skippedTreatmentCount->setGId(Util::generateUserUniqueId());
$skippedTreatmentCount->setReportClassName(Treatment::getClassName());
$skippedTreatmentCount->setWidget($widget);
$skippedTreatmentCount->getReportHandler(true)->updateFormElementValue('label', Loc::getMessage('REPORT_SKIPPED_TREATMENT_COUNT_NUMBER_BLOCK_TITLE'));
$skippedTreatmentCount->getReportHandler(true)->updateFormElementValue('groupingBy', Treatment::GROUP_BY_RESPONSIBLE);
$skippedTreatmentCount->getReportHandler(true)->updateFormElementValue('calculate', Treatment::WHAT_WILL_CALCULATE_SKIPPED);
$skippedTreatmentCount->addConfigurations($skippedTreatmentCount->getReportHandler(true)->getConfigurations());
$widget->addReports($skippedTreatmentCount);
$averageAnswerTime = new Report();
$averageAnswerTime->setGId(Util::generateUserUniqueId());
$averageAnswerTime->setReportClassName(Dialog::getClassName());
$averageAnswerTime->setWidget($widget);
$averageAnswerTime->getReportHandler(true)->updateFormElementValue('label', Loc::getMessage('REPORT_AVERAGE_TIME_TO_ANSWER_TITLE'));
$averageAnswerTime->getReportHandler(true)->updateFormElementValue('groupingBy', Dialog::GROUP_BY_RESPONSIBLE);
$averageAnswerTime->getReportHandler(true)->updateFormElementValue('calculate', Dialog::WHAT_WILL_CALCULATE_AVERAGE_TIME_TO_ANSWER);
$averageAnswerTime->addConfigurations($averageAnswerTime->getReportHandler(true)->getConfigurations());
$widget->addReports($averageAnswerTime);
return $widget;
}