fix login api

This commit is contained in:
andrey 2021-08-03 15:52:25 +03:00
parent f422a70fc3
commit c522278222
5 changed files with 13 additions and 6 deletions

View File

@ -68,7 +68,6 @@ class Reports extends \yii\db\ActiveRecord
public function afterFind()
{
parent::afterFind();
$this->_task = [];
if ($this->task) {

View File

@ -20,6 +20,7 @@ use yii\web\UnauthorizedHttpException;
* @property integer $status
* @property integer $created_at
* @property integer $updated_at
* @property $access_token_expired_at
* @property string $password write-only password
*/
class User extends ActiveRecord implements IdentityInterface
@ -83,6 +84,12 @@ class User extends ActiveRecord implements IdentityInterface
}
}
public function getTokenExpiredAt()
{
return $this->access_token_expired_at;
}
/**
* Finds user by username
*
@ -124,7 +131,7 @@ class User extends ActiveRecord implements IdentityInterface
return false;
}
$timestamp = (int) substr($token, strrpos($token, '_') + 1);
$timestamp = (int)substr($token, strrpos($token, '_') + 1);
$expire = Yii::$app->params['user.passwordResetTokenExpire'];
return $timestamp + $expire >= time();
}

View File

@ -63,7 +63,7 @@ class UserController extends ActiveController
$model = new LoginForm();
if ($model->load(Yii::$app->getRequest()->getBodyParams(), '') && $model->login()) {
return [
'access_token' => $model->login(),
'access_token' => $model->login(), 'access_token_expired_at' => $model->getUser()->getTokenExpiredAt()
];
} else {
throw new BadRequestHttpException(json_encode($model->errors));

View File

@ -59,7 +59,7 @@ class LoginForm extends Model
return false;
}
protected function getUser()
public function getUser()
{
if ($this->_user === null) {
$this->_user = User::findByUsername($this->username);

View File

@ -38,7 +38,8 @@ class ReportSearchForm extends Model
public function byParams()
{
$queryBuilder = Reports::find()
->andWhere(['between', 'created_at', $this->fromDate, $this->toDate, $this->user_id])
->with('task')
->andWhere(['between', 'reports.created_at', $this->fromDate, $this->toDate, $this->user_id])
->limit($this->limit)
->offset($this->offset);
@ -47,7 +48,7 @@ class ReportSearchForm extends Model
$queryBuilder->andWhere(['user_card_id' => $userCardId]);
}
$data = $queryBuilder->all();
$data = $queryBuilder->asArray()->all();
return $data;
}