64 lines
1.6 KiB
PHP
64 lines
1.6 KiB
PHP
|
<?php
|
||
|
|
||
|
namespace frontend\modules\api\services;
|
||
|
|
||
|
use frontend\modules\api\models\resume\forms\ChangeResumeForm;
|
||
|
use frontend\modules\api\models\resume\forms\SkillsResumeForm;
|
||
|
use frontend\modules\card\models\UserCard;
|
||
|
use yii\web\BadRequestHttpException;
|
||
|
|
||
|
class ResumeService
|
||
|
{
|
||
|
/**
|
||
|
* @param array $params
|
||
|
* @param int $userId
|
||
|
* @return SkillsResumeForm|string[]
|
||
|
* @throws BadRequestHttpException
|
||
|
*/
|
||
|
public function editSkills(array $params, int $userId): array|SkillsResumeForm
|
||
|
{
|
||
|
$model = new SkillsResumeForm();
|
||
|
$model->load($params['UserCard']);
|
||
|
|
||
|
if (!$model->validate()) {
|
||
|
return $model;
|
||
|
}
|
||
|
|
||
|
$card = UserCard::findOne(['id_user' => $userId]);
|
||
|
|
||
|
|
||
|
if (!$card->save()) {
|
||
|
$errors = $card->getErrors();
|
||
|
throw new BadRequestHttpException(array_shift($errors)[0]);
|
||
|
}
|
||
|
|
||
|
return ['status' => 'success'];
|
||
|
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @param array $params
|
||
|
* @param int $userId
|
||
|
* @return array|ChangeResumeForm
|
||
|
* @throws BadRequestHttpException
|
||
|
*/
|
||
|
public function editText(array $params, int $userId): array|ChangeResumeForm
|
||
|
{
|
||
|
$model = new ChangeResumeForm();
|
||
|
$model->load($params);
|
||
|
|
||
|
if (!$model->validate()) {
|
||
|
return $model;
|
||
|
}
|
||
|
|
||
|
$card = UserCard::findOne(['id_user' => $userId]);
|
||
|
$card->vc_text = $model->resume;
|
||
|
|
||
|
if (!$card->save()) {
|
||
|
$errors = $card->getErrors();
|
||
|
throw new BadRequestHttpException(array_shift($errors)[0]);
|
||
|
}
|
||
|
|
||
|
return ['status' => 'success'];
|
||
|
}
|
||
|
}
|