soapClientAbit->load_with_caching( 'NeedBlockAndUpdate', $data ); if (isset($result->return, $result->return->Update, $result->return->Block)) { $block = (int)$result->return->Block == 1; $update = (int)$result->return->Update == 1; return [$update, $block]; } } return [false, true]; } public static function getProcessedNeedBlockAndUpdate(BachelorApplication $app): array { if (isset($app->user, $app->user->userRef)) { $date = $app->getCheckDate(); $consentDate = $app->getCheckConsentDate(); $built_entrant = $app->buildEntrantArray(); if (isset($date, $app->type, $app->type->campaign) && !empty($consentDate)) { [$update, $block] = NeedBlockAndUpdateProcessor::getNeedBlockAndUpdate([ 'AbiturientCode' => $app->user->userRef->reference_id, 'Date' => $date, 'IdPK' => $app->type->campaign->referenceType->reference_id, 'Entrant' => $built_entrant, 'ConsentDate' => $consentDate, ]); if (!$update) { $update = UserReferenceTypeManager::IsUserRefDataVersionOutdated($app->user); } return [$update, $block]; } } return [false, false]; } public static function GetMessageAboutRequiredDeclineForUpdate(BachelorApplication $application): string { $base = Yii::$app->configurationManager->getText('need_update_app_from_one_s', $application->type); $date = $application->getCheckDate(); $consentDate = $application->getCheckConsentDate(); $is_versions_mismatch = UserReferenceTypeManager::IsUserRefDataVersionOutdated($application->user); if ($is_versions_mismatch) { $base = Yii::$app->configurationManager->getText('need_update_questionary_from_one_s', $application->type); } if ($date) { $base = Yii::t( 'sandbox/moderate/all', 'Тело сообщения с датой актуальности заявления для устаревшего заявления; на стр. проверки анкеты поступающего: `{messageAboutRequiredDeclineForUpdate}
Дата заявления в Личном кабинете поступающего: {date}`', [ 'messageAboutRequiredDeclineForUpdate' => $base, 'date' => $date, ] ); } if ($consentDate && $consentDate != NeedBlockAndUpdateProcessor::EMPTY_DATE) { $base = Yii::t( 'sandbox/moderate/all', 'Тело сообщения с датой актуальности согласия для устаревшего заявления; на стр. проверки анкеты поступающего: `{messageAboutRequiredDeclineForUpdate}
Дата подачи согласия в Личном кабинете поступающего: {consentDate}`', [ 'messageAboutRequiredDeclineForUpdate' => $base, 'consentDate' => $consentDate, ] ); } return $base; } public static function GetMessageAboutBlockedBy1C(BachelorApplication $application): string { return Yii::t( 'sandbox/moderate/all', 'Текст сообщения о невозможности принять заявление так как в Информационной системе вуза есть не проведённые сущности: `Заявление заблокировано. Для разблокировки необходимо провести или пометить на удаление документы заявлений и согласий на зачисление поступающего.`' ); } }