Example #1
0
 public function transformations()
 {
     return [['kategoriyaPedRabotnikaAsEnum' => 'kategoriya_ped_rabotnika', EnumTransformer::className(), ['enum' => KategoriyaPedRabotnika::className()]], ['formattedTelefon' => 'telefon', TelefonTransformer::className()], ['pasportKemVydanKodFormatted' => 'pasport_kem_vydan_kod', PasportKemVydanKodTransformer::className()], ['snilsFormatted' => 'snils', SnilsTransformer::className()], ['dataRozhdeniyaAsDate' => 'data_rozhdeniya', DateTransformer::className()], ['pasportKogdaVydanAsDate' => 'pasport_kogda_vydan', DateTransformer::className()]];
 }
Example #2
0
        ?>
</td>
        <td><?php 
        echo $item['organizaciya'];
        ?>
</td>
        <td><?php 
        echo $item['dolzhnost'];
        ?>
</td>
        <td><?php 
        echo $item['god_rozhdeniya'];
        ?>
</td>
        <td><?php 
        echo KategoriyaPedRabotnika::namesMap()[$item['imeushayasya_kategoriya']] . ', ' . date('d.m.Y', strtotime($item['attestaciya_data_prisvoeniya']));
        ?>
</td>
        <td><?php 
        echo $item['ped_stazh'];
        ?>
/<?php 
        echo $item['rabota_stazh_v_dolzhnosti'];
        ?>
/<?php 
        echo $item['stazh_v_dolzhnosti'];
        ?>
</td>
        <td><?php 
        echo $item['obrazovanie'];
        ?>
Example #3
0
    .zayavlenie_row a{
        font-size: 1.1em;
    }

    .fajly_tb{
        margin-left: 2em;margin-bottom:1em;
    }

    .ball_row{
        padding: 0.5em;
    }

');
echo Html::a('Регистрация', '/attestaciya/registraciya/', ['class' => 'btn btn-primary']);
$kategorii = \app\enums\KategoriyaPedRabotnika::namesMap();
echo Html::tag('h3', 'Список заявлений');
//echo '<ul class="">';
?>

<?php 
foreach ($list as $k => $v) {
    ?>
    <div class="zayavlenie_row">
        <?php 
    echo Html::a('Заявление на "' . $kategorii[$v->na_kategoriyu] . '" (начало аттестации ' . $v->vremyaProvedeniyaAttestaciiRel->nachalo . ')' . ($v->status == \app\enums\StatusZayavleniyaNaAttestaciyu::OTKLONENO ? '(заявление отклонено)' : ''), \yii\helpers\Url::to(['/attestaciya/registraciya/', 'zid' => $v->id]));
    ?>
    </div>
    <?php 
    if ($otsenki[$v->id]['rabotnik_count'] == $otsenki[$v->id]['podpisannie_otsenki_count']) {
        ?>
Example #4
0
 public function actionItogovyjByKomissiya()
 {
     $komissiya = $_GET['komissiya'];
     $period = $_GET['period'];
     $posts = DolzhnostAttestacionnojKomissii::find()->where(['attestacionnaya_komissiya' => $komissiya])->distinct('dolzhnost')->select('dolzhnost')->all();
     $data = [];
     foreach ($posts as $post) {
         $query = \Yii::$app->db->createCommand('select *
                          from attestaciya_itogovij_otchet(:vp,:d)
                          order by  case when otraslevoe_soglashenie is null then 0 else 1 end desc,
                           na_kategoriyu DESC,
                           imeushayasya_kategoriya DESC,
                           attestaciya_data_prisvoeniya DESC,
                           fio')->bindValue(':vp', $period)->bindValue(':d', $post->dolzhnost)->queryAll();
         $data = array_merge($data, $query);
     }
     //var_dump($data);die();
     $groups = ['otraslevoe_soglashenie' => []];
     foreach ($data as $item) {
         if ($item['na_kategoriyu'] == KategoriyaPedRabotnika::VYSSHAYA_KATEGORIYA and $item['otraslevoe_soglashenie']) {
             $groups['otraslevoe_soglashenie'][] = $item;
         } else {
             $groups[$item['na_kategoriyu']][] = $item;
         }
     }
     $data = $groups;
     $excel = new PHPExcel();
     $excel->createSheet();
     $WorkSheet = $excel->getSheet(0);
     $WorkSheet->setTitle('Итоговый отчет');
     $WorkSheet->setCellValue('A1', 'Итоговый отчет');
     $WorkSheet->mergeCells('A1:M1');
     /*Объединяем ячейки*/
     $WorkSheet->setCellValue('A3', '№');
     $WorkSheet->setCellValue('B3', 'ФИО');
     $WorkSheet->setCellValue('C3', 'ОУ');
     $WorkSheet->setCellValue('D3', 'Должность');
     $WorkSheet->setCellValue('E3', 'Дата рождения');
     $WorkSheet->setCellValue('F3', 'Имеющаяся кв. кат.');
     $WorkSheet->setCellValue('G3', 'Стаж пед./вучр./в долж.');
     $WorkSheet->setCellValue('H3', 'Образование');
     $WorkSheet->setCellValue('I3', 'Повышение квалификации');
     $WorkSheet->setCellValue('J3', 'Рез-ты кв. экз');
     $WorkSheet->setCellValue('K3', 'Портфолио');
     $WorkSheet->setCellValue('L3', 'СПД');
     $WorkSheet->setCellValue('M3', 'Экспертное заключение');
     //$WorkSheet->getColumnDimension('K')->setWidth(30); /*ширина столбца (от руки)*/
     $WorkSheet->getStyle('A3:M3')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
     $WorkSheet->getStyle('A3:M3')->getFill()->setFillType(\PHPExcel_Style_Fill::FILL_SOLID);
     $WorkSheet->getStyle('A3:M3')->getFill()->getStartColor()->setRGB('bfbfbf');
     $excel->setActiveSheetIndex(0);
     foreach (range('A', 'M') as $columnId) {
         $excel->getActiveSheet()->getColumnDimension($columnId)->setAutoSize(true);
     }
     $number = 1;
     $current_kategoriya = '';
     $row_number = 4;
     foreach ($data as $key => $items) {
         if ($current_kategoriya != $key and $items) {
             $kategoriya = '';
             if ($key == 'otraslevoe_soglashenie') {
                 $kategoriya = 'Высшая категория (по отраслевому соглашению)';
             } else {
                 $kategoriya = \app\globals\ApiGlobals::first_letter_up(KategoriyaPedRabotnika::namesMap()[$key]);
             }
             $WorkSheet->setCellValue('A' . $row_number, $kategoriya);
             $WorkSheet->mergeCells('A' . $row_number . ':M' . $row_number);
             $WorkSheet->getStyle('A' . $row_number . ':M' . $row_number)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
             $current_kategoriya = $key;
             $number = 1;
             $row_number++;
         }
         foreach ($items as $item) {
             $WorkSheet->setCellValue('A' . $row_number, $number);
             $WorkSheet->setCellValue('B' . $row_number, $item['fio']);
             $WorkSheet->setCellValue('C' . $row_number, $item['organizaciya']);
             $WorkSheet->setCellValue('D' . $row_number, $item['dolzhnost']);
             $WorkSheet->setCellValue('E' . $row_number, date('d.m.Y', strtotime($item['data_rozhdeniya'])));
             $WorkSheet->setCellValue('F' . $row_number, KategoriyaPedRabotnika::namesMap()[$item['imeushayasya_kategoriya']] . ($item['attestaciya_data_okonchaniya_dejstviya'] != '1970-01-01' ? ', ' . date('d.m.Y', strtotime($item['attestaciya_data_okonchaniya_dejstviya'])) : ''));
             $WorkSheet->setCellValue('G' . $row_number, $item['ped_stazh'] . '/' . $item['rabota_stazh_v_dolzhnosti'] . '/' . $item['stazh_v_dolzhnosti']);
             $WorkSheet->setCellValue('H' . $row_number, $item['obrazovanie']);
             $WorkSheet->setCellValue('I' . $row_number, $item['kursy']);
             $var_isp = '';
             if ($item['na_kategoriyu'] == KategoriyaPedRabotnika::PERVAYA_KATEGORIYA) {
                 $var_isp = 'Не предусмотрена';
             } else {
                 if ($item['otraslevoe_soglashenie']) {
                     $var_isp = $item['otraslevoe_soglashenie'];
                 } else {
                     $var_isp = number_format($item['variativnoe_ispytanie_3'], 2);
                 }
             }
             $WorkSheet->setCellValue('J' . $row_number, $var_isp);
             $WorkSheet->setCellValue('K' . $row_number, number_format($item['portfolio'], 2));
             $WorkSheet->setCellValue('L' . $row_number, ($item['na_kategoriyu'] == KategoriyaPedRabotnika::PERVAYA_KATEGORIYA or $item['otraslevoe_soglashenie']) ? 'Не предусмотрена' : number_format($item['spd'], 2));
             $WorkSheet->setCellValue('M' . $row_number, $item['count_below'] == 0 ? 'Рекомендовано' : 'Не рекомендовано');
             $number++;
             $row_number++;
         }
     }
     header("Expires: Mon,1 Apr 1974 05:00:00 GMT");
     header("Last-Modified: " . gmdate("D,d M YH:i:s") . " GMT");
     header("Cache-Control: no-cache,must-revalidate");
     header("Pragma: no-cache");
     header("Content-type: application/vnd.ms-excel");
     header("Content-Disposition: attachment; filename=report.xls");
     $objWriter = new PHPExcel_Writer_Excel5($excel);
     /*Выводим содержимое файла*/
     $objWriter->save('php://output');
     die;
 }
Example #5
0
?>
            <?php 
echo $form->field($filterModel, 'dolzhnost')->widget(Select2::className(), ['data' => Dolzhnost::find()->formattedAll(EntityQuery::DROP_DOWN, 'nazvanie'), 'options' => ['placeholder' => 'Выберите должность', 'multiple' => true]]);
?>
        </div>
        <div class="col-md-3">
            <?php 
echo $form->field($filterModel, 'varIspytanie2')->widget(Select2::className(), ['data' => \app\entities\AttestacionnoeVariativnoeIspytanie_2::find()->formattedAll(EntityQuery::DROP_DOWN, 'nazvanie'), 'options' => ['multiple' => true]]);
?>
            <?php 
echo $form->field($filterModel, 'varIspytanie3')->widget(Select2::className(), ['data' => \app\entities\AttestacionnoeVariativnoeIspytanie_2::find()->formattedAll(EntityQuery::DROP_DOWN, 'nazvanie'), 'options' => ['multiple' => true]]);
?>
        </div>
        <div class="col-md-3">
            <?php 
echo $form->field($filterModel, 'kategoriya')->widget(Select2::className(), ['data' => \app\enums\KategoriyaPedRabotnika::namesOnlyPositive(), 'options' => ['multiple' => true]]);
?>
            <?php 
echo $form->field($filterModel, 'fio');
?>
        </div>
        <div class="col-md-3">
            <br>
            <?php 
echo $form->field($filterModel, 'podtverzhdenieRegistracii')->checkbox(['label' => 'Подтвержден']);
?>
            <?php 
echo $form->field($filterModel, 'zayavlenieId', ['options' => ['style' => 'margin-top:2em']]);
?>
        </div>
    </div>
Example #6
0
  <div class="panel-body">';
echo '<div class="col-md-3 no-left-padding">';
echo $form->field($registraciya, 'attestacionnyListKategoriya')->dropDownList(KategoriyaPedRabotnika::namesMap(), ['placeholder' => 'Выберите категорию', 'onChange' => 'onChangeCurrentCategoriya()', 'id' => 'attestacionnyListKategoriya']);
echo '</div>';
echo '<div id="preiod_dejstviya" class="col-md-3">';
echo $form->field($registraciya, 'attestacionnyListPeriodDejstviya', ['options' => ['class' => 'drp-container form-group', 'placeholder' => 'Выберите Период действия аттестации']])->widget(DateRangePicker::classname(), ['value' => date('d.m.Y') . ' - ' . date('d.m.Y'), 'useWithAddon' => true, 'language' => 'ru', 'hideInput' => true, 'pluginOptions' => ['format' => 'DD.MM.YYYY', 'separator' => ' - ', 'opens' => 'right']]);
echo '</div>';
echo '<div id="copiya_lista" class="col-md-3 no-right-padding">';
echo $form->field($registraciya, 'attestacionnyListPeriodFajl')->widget(\app\widgets\Files2Widget::className(), [])->label('Копия');
echo '</div>';
echo '<div id="data_okonchaniya_attestacii" class="col-md-3 no-right-padding">';
echo $form->field($registraciya, 'attestaciyaDataOkonchaniyaDejstviya')->widget(\kartik\widgets\DatePicker::className(), ['pluginOptions' => ['format' => 'dd.mm.yyyy']]);
echo '</div>';
echo '</div>
</div>';
echo $form->field($registraciya, 'kategoriya')->dropDownList(KategoriyaPedRabotnika::namesOnlyPositive(), ['placeholder' => 'Выберите категорию', 'onchange' => 'onChangeKategoriya(\'' . Html::getInputId($registraciya, 'kategoriya') . '\')', 'id' => 'registraciya-kategoriya']);
//echo '<div id="varIspytanie2Div">';
//echo $form->field($registraciya,'varIspytanie2')->dropDownList(
//    \app\entities\AttestacionnoeVariativnoeIspytanie_2::find()
//        ->formattedAll(EntityQuery::DROP_DOWN,'nazvanie')
//);
//echo '</div>';
//echo count($registraciya->otraslevoeSoglashenie);
echo '<div id="varIspytanie3Div" class="' . ((count($registraciya->otraslevoeSoglashenie) > 0 and $registraciya->kategoriya == KategoriyaPedRabotnika::VYSSHAYA_KATEGORIYA) ? 'hidden' : '') . '">';
echo $form->field($registraciya, 'varIspytanie3')->dropDownList(\app\entities\AttestacionnoeVariativnoeIspytanie_3::find()->formattedAll(EntityQuery::DROP_DOWN, 'nazvanie'), ['disabled' => count($registraciya->otraslevoeSoglashenie) > 0 ? 'disabled' : false]);
echo '</div>';
?>


<div id="panel-otraslevoe-soglashenie" class="panel panel-default">
    <div class="panel-heading">
Example #7
0
    <div class="col-md-5 form-horizontal">
        <div class="fields-group-heading">
            <h3>Работа</h3>
        </div>

        <?php 
echo $form->field($model, 'pedStazh')->widget(TouchSpin::className());
?>

        <?php 
echo $form->field($model, 'stazhVDolzhnosti')->widget(TouchSpin::className());
?>

        <?php 
echo $form->field($model, 'kategoriya')->widget(Select2::className(), ['data' => KategoriyaPedRabotnika::namesMap()]);
?>

        <?php 
echo SwitchingFields::widget(['commonOptions' => ['form' => $form, 'model' => $model, 'options' => ['template' => "{label}\n<div class=\"col-md-8\">\n{input}\n{hint}\n{error}\n{switch}\n</div>", 'options' => ['class' => 'form-group']]], 'field1Options' => ['attribute' => 'dolzhnostId', 'switchIntroText' => 'Не нашли в списке?', 'switchLinkText' => 'Нажмите здесь чтобы ввести должность вручную.', 'widgetClass' => Select2::className(), 'widgetConfig' => ['data' => Dolzhnost::find()->commonOnly()->formattedAll(EntityQuery::DROP_DOWN, 'nazvanie')], 'widgetConfigDisabled' => ['disabled' => true]], 'field2Options' => ['attribute' => 'dolzhnostNazvanie', 'switchIntroText' => 'Возможно ваша должность есть в списке.', 'switchLinkText' => 'Нажмите здесь чтобы найти её в списке.']]);
?>

    </div>

    <div class="col-md-5 form-horizontal">
        <div class="fields-group-heading">
            <h3>Образование</h3>
        </div>

        <?php 
echo SwitchingFields::widget(['commonOptions' => ['form' => $form, 'model' => $model, 'options' => ['template' => "{label}\n<div class=\"col-md-8\">\n{input}\n{hint}\n{error}\n{switch}\n</div>", 'options' => ['class' => 'form-group']]], 'field1Options' => ['attribute' => 'obrOrgId', 'switchIntroText' => 'Не нашли в списке?', 'switchLinkText' => 'Нажмите здесь чтобы ввести организацию вручную.', 'widgetClass' => Select2::className(), 'widgetConfig' => ['data' => Organizaciya::findVysshegoProfessionalnogoObrazovaniya()->commonOnly()->formattedAll(EntityQuery::DROP_DOWN, 'nazvanie')], 'widgetConfigDisabled' => ['disabled' => true]], 'field2Options' => ['attribute' => 'obrOrgNazvanie', 'switchIntroText' => 'Возможно ваша организация есть в списке.', 'switchLinkText' => 'Нажмите здесь чтобы найти её в списке.']]);
Example #8
0
 public function rules()
 {
     return [['fizLico', 'exist', 'targetAttribute' => 'id', 'targetClass' => FizLico::className()], ['fizLico', 'required'], ['kurs', 'exist', 'targetAttribute' => 'id', 'targetClass' => Kurs::className()], ['kurs', 'required'], ['pedStazh', StazhValidator::className()], ['pedStazh', 'required'], ['stazhVDolzhnosti', StazhValidator::className()], ['stazhVDolzhnosti', 'required'], ['kategoriya', EnumValidator::className(), 'enumClass' => KategoriyaPedRabotnika::className()], ['kategoriya', 'required'], ['dolzhnostId', 'integer'], ['dolzhnostId', RequiredWhenTargetIsEmpty::className(), 'targetModel' => $this, 'targetAttribute' => 'dolzhnostNazvanie'], ['dolzhnostNazvanie', SqueezeLineFilter::className()], ['dolzhnostNazvanie', NazvanieValidator::className()], ['dolzhnostNazvanie', RequiredWhenTargetIsEmpty::className(), 'targetModel' => $this, 'targetAttribute' => 'dolzhnostId'], ['dolzhnostNazvanie', 'default'], ['obrOrgId', 'integer'], ['obrOrgId', RequiredWhenTargetIsEmpty::className(), 'targetModel' => $this, 'targetAttribute' => 'obrOrgNazvanie'], ['obrOrgNazvanie', SqueezeLineFilter::className()], ['obrOrgNazvanie', NazvanieValidator::className()], ['obrOrgNazvanie', RequiredWhenTargetIsEmpty::className(), 'targetModel' => $this, 'targetAttribute' => 'obrOrgId'], ['obrOrgNazvanie', 'default'], ['obrKvalifikaciyaId', 'integer'], ['obrKvalifikaciyaId', RequiredWhenTargetIsEmpty::className(), 'targetModel' => $this, 'targetAttribute' => 'obrKvalifikaciyaNazvanie'], ['obrKvalifikaciyaNazvanie', SqueezeLineFilter::className()], ['obrKvalifikaciyaNazvanie', NazvanieValidator::className()], ['obrKvalifikaciyaNazvanie', RequiredWhenTargetIsEmpty::className(), 'targetModel' => $this, 'targetAttribute' => 'obrKvalifikaciyaId'], ['obrKvalifikaciyaNazvanie', 'default'], ['obrDocTip', EnumValidator::className(), 'enumClass' => TipDokumentaObObrazovanii::className()], ['obrDocTip', 'required'], ['obrDocSeriya', SqueezeLineFilter::className()], ['obrDocSeriya', NomerDokumentaValidator::className()], ['obrDocSeriya', RequiredWhenTargetIsEmpty::className(), 'targetModel' => $this, 'targetAttribute' => 'obrDocNomer'], ['obrDocSeriya', 'default'], ['obrDocNomer', SqueezeLineFilter::className()], ['obrDocNomer', NomerDokumentaValidator::className()], ['obrDocNomer', RequiredWhenTargetIsEmpty::className(), 'targetModel' => $this, 'targetAttribute' => 'obrDocSeriya'], ['obrDocNomer', 'default'], ['obrDocData', 'date'], ['obrDocData', 'required'], ['pasportNomer', PasportNomerValidator::className(), 'sqlAttribute' => 'pasportNomerSql'], ['pasportNomer', 'required'], ['pasportKemVydanKod', PasportKodPodrazdeleniyaValidator::className()], ['pasportKemVydanKod', 'required'], ['pasportKemVydan', SqueezeLineFilter::className()], ['pasportKemVydan', NazvanieValidator::className()], ['pasportKemVydan', 'required'], ['pasportKogdaVydan', 'date'], ['pasportKogdaVydan', 'required'], ['propiska', SqueezeLineFilter::className()], ['propiska', NazvanieValidator::className()], ['propiska', 'required'], ['dataRozhdeniya', 'date'], ['dataRozhdeniya', 'required'], ['snils', SnilsValidator::className()], ['snils', 'required'], ['inn', InnValidator::className()], ['inn', 'required']];
 }
Example #9
0
            <?php 
if ($zayavlenie->attestaciya_kategoriya != \app\enums\KategoriyaPedRabotnika::BEZ_KATEGORII) {
    ?>
                <b>Копия действующего аттестационного листа</b><br>
                <?php 
    echo Html::a($zayavlenie->attestaciyaFajlRel->vneshnee_imya_fajla, $zayavlenie->attestaciyaFajlRel->getUri(), ['target' => '_blank']);
    ?>
            <?php 
}
?>
        </div>
    </div>
</div>

<?php 
echo '<p><b>Категория, на которую будет производиться аттестация</b> ' . \app\enums\KategoriyaPedRabotnika::namesMap()[$zayavlenie->na_kategoriyu];
if ($zayavlenie->var_ispytanie_2) {
    echo '<p><b>Второе вариативное испытание</b> ' . mb_strtolower($zayavlenie->attestacionnoeVariativnoeIspytanie2Rel->nazvanie) . '</p>';
}
if ($zayavlenie->var_ispytanie_3) {
    echo '<p><b>Третье вариативное испытание</b> ' . mb_strtolower($zayavlenie->attestacionnoeVariativnoeIspytanie3Rel->nazvanie) . '</p>';
}
?>

<?php 
if ($zayavlenie->svedeniya_o_sebe) {
    ?>
        <div class="panel panel-default">
            <div class="panel-heading"><b>Сведения о себе</b></div>
            <div class="panel-body">
                <b>Текст</b><br>
Example #10
0
</td>
        <td><?php 
        echo $item['organizaciya'];
        ?>
</td>
        <td><?php 
        echo $item['dolzhnost'];
        ?>
</td>
        <td><?php 
        echo date('d.m.Y', strtotime($item['data_rozhdeniya']));
        ?>
</td>
        <td>
            <?php 
        echo KategoriyaPedRabotnika::namesMap()[$item['imeushayasya_kategoriya']] . ($item['attestaciya_data_okonchaniya_dejstviya'] != '1970-01-01' ? ', ' . date('d.m.Y', strtotime($item['attestaciya_data_okonchaniya_dejstviya'])) : '');
        ?>
        </td>
        <td><?php 
        echo $item['ped_stazh'];
        ?>
/<?php 
        echo $item['rabota_stazh_v_dolzhnosti'];
        ?>
/<?php 
        echo $item['stazh_v_dolzhnosti'];
        ?>
</td>
        <td><?php 
        echo $item['obrazovanie'];
        ?>