add user-questionnaire, response, question, answers to api

This commit is contained in:
iIronside
2021-10-28 10:46:59 +03:00
parent 84ec9ef9c7
commit 79c197f673
9 changed files with 1743 additions and 2 deletions

View File

@ -125,4 +125,12 @@ class Answer extends \yii\db\ActiveRecord
->andWhere('status=1')
->count();
}
public static function getActiveAnswers($question_id)
{
return self::find()->where(['question_id' => $question_id])
->andWhere(['status' => '1'])
->AsArray()
->all();
}
}

View File

@ -152,4 +152,12 @@ class Question extends \yii\db\ActiveRecord
return date("i:s", mktime(null, null, $this->time_limit));
}
public static function getActiveQuestions($questionnaire_id)
{
return self::find()->where(['questionnaire_id' => $questionnaire_id])
->andWhere(['status' => '1'])
->AsArray()
->all();
}
}

View File

@ -2,6 +2,7 @@
namespace common\models;
use phpDocumentor\Reflection\Types\This;
use Yii;
use yii\behaviors\TimestampBehavior;
use yii\db\Expression;
@ -86,6 +87,15 @@ class Questionnaire extends \yii\db\ActiveRecord
return $this->hasMany(Question::className(), ['questionnaire_id' => 'id']);
}
/**
* @return \yii\db\ActiveQuery
*/
public function getAnswers()
{
return $this->hasMany(Answer::className(), ['question_id' => 'id'])
->viaTable('question', ['questionnaire_id' => 'id']);
}
/**
* @return \yii\db\ActiveQuery
*/

View File

@ -277,4 +277,11 @@ class UserQuestionnaire extends \yii\db\ActiveRecord
$response->rateResponse();
}
}
public static function findActiveUserQuestionnaires($user_id)
{
return self::find()->where(['user_id' => $user_id])
->andWhere(['status' => '1'])
->all();
}
}