add count current answers at user Questionnaire
This commit is contained in:
@ -35,6 +35,9 @@ use \backend\modules\questionnaire\models\Answer;
|
||||
*/
|
||||
class UserQuestionnaire extends ActiveRecord
|
||||
{
|
||||
const STATUS_ACTIVE = 1;
|
||||
const STATUS_DISABLE = 0;
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
@ -148,6 +151,15 @@ class UserQuestionnaire extends ActiveRecord
|
||||
->viaTable('user_response', ['user_questionnaire_uuid' => 'uuid']);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param $questionnaire_id
|
||||
* @return bool|int|string|null
|
||||
*/
|
||||
public function countCorrectAnswers($questionnaire_id): bool|int|string|null
|
||||
{
|
||||
return UserResponse::find()->where(['user_questionnaire_uuid' => $questionnaire_id, 'answer_flag' => 1])->count();
|
||||
}
|
||||
|
||||
/**
|
||||
* @throws InvalidConfigException
|
||||
*/
|
||||
@ -182,7 +194,7 @@ class UserQuestionnaire extends ActiveRecord
|
||||
|
||||
public static function findActiveUserQuestionnaires($user_id): array
|
||||
{
|
||||
return self::find()
|
||||
return self::find()
|
||||
->where(['user_id' => $user_id])
|
||||
->andWhere(['not', ['user_questionnaire.status' => 0]])
|
||||
->all();
|
||||
|
Reference in New Issue
Block a user