70 lines
2.4 KiB
PHP
70 lines
2.4 KiB
PHP
<?php
|
|
|
|
use backend\modules\questionnaire\models\Question;
|
|
use backend\modules\questionnaire\models\Questionnaire;
|
|
use common\helpers\AnswerHelper;
|
|
use common\helpers\StatusHelper;
|
|
use yii\helpers\Html;
|
|
use yii\grid\GridView;
|
|
|
|
/* @var $this yii\web\View */
|
|
/* @var $searchModel backend\modules\questionnaire\models\AnswerSearch */
|
|
/* @var $dataProvider yii\data\ActiveDataProvider */
|
|
|
|
$this->title = 'Ответы на вопросы';
|
|
$this->params['breadcrumbs'][] = $this->title;
|
|
?>
|
|
<div class="answer-index">
|
|
|
|
<p>
|
|
<?= Html::a('Создать новый ответ', ['create'], ['class' => 'btn btn-success']) ?>
|
|
</p>
|
|
|
|
<?= $this->render('_search_by_questionnaire', [
|
|
'model' => $searchModel,
|
|
]) ?>
|
|
|
|
<?= GridView::widget([
|
|
'dataProvider' => $dataProvider,
|
|
'filterModel' => $searchModel,
|
|
'columns' => [
|
|
['class' => 'yii\grid\SerialColumn'],
|
|
// [
|
|
// 'filter' => Questionnaire::find()->select(['title', 'id'])->indexBy('id')->column(),
|
|
// 'label' => 'Анкета',
|
|
// 'attribute' => 'questionnaire',
|
|
// 'value' => 'questionnaire.title'
|
|
// ],
|
|
[
|
|
'filter' => Question::find()->select(['question_body', 'id'])->where(['!=', 'question_type_id', '1'])
|
|
->andWhere(['questionnaire_id' => ''])
|
|
->indexBy('id')->column(),
|
|
// 'filter' => function($model){
|
|
// return \yii\helpers\ArrayHelper::getValue(Question::find()->where(['questionnaire_id' => $model->questionnaire_id]), ['id', 'title']) ;
|
|
// },
|
|
'attribute' => 'question_id',
|
|
'value' => 'question.question_body'
|
|
],
|
|
'answer_body',
|
|
[
|
|
'attribute' => 'answer_flag',
|
|
'format' => 'raw',
|
|
'filter' => AnswerHelper::answerFlagsList(),
|
|
'value' => function ($model) {
|
|
return AnswerHelper::answerFlagLabel($model->answer_flag);
|
|
},
|
|
],
|
|
[
|
|
'attribute' => 'status',
|
|
'format' => 'raw',
|
|
'filter' => StatusHelper::statusList(),
|
|
'value' => function($model){
|
|
return StatusHelper::statusLabel($model->status);
|
|
}
|
|
],
|
|
['class' => 'yii\grid\ActionColumn'],
|
|
],
|
|
]); ?>
|
|
</div>
|
|
|