Merge pull request #63 from apuc/achievement-in-api
Achievements in Api
This commit is contained in:
commit
6fabd99577
@ -100,7 +100,7 @@ $this->params['breadcrumbs'][] = $this->title;
|
|||||||
<h2>Достижения</h2>
|
<h2>Достижения</h2>
|
||||||
<?php foreach ($achievements as $achievement) : ?>
|
<?php foreach ($achievements as $achievement) : ?>
|
||||||
<a target="_blank"
|
<a target="_blank"
|
||||||
href="<? \yii\helpers\Url::to(['/achievements/achievements/view', 'id' => $achievement['achievement']->id]);?>"
|
href="<?php \yii\helpers\Url::to(['/achievements/achievements/view', 'id' => $achievement['achievement']->id]);?>"
|
||||||
class="btn btn-default btn-sm">
|
class="btn btn-default btn-sm">
|
||||||
<?= Html::tag('img', null,
|
<?= Html::tag('img', null,
|
||||||
['src' => $achievement['achievement']->img, 'height' => '50px', 'width' => '50px']
|
['src' => $achievement['achievement']->img, 'height' => '50px', 'width' => '50px']
|
||||||
|
@ -54,14 +54,77 @@
|
|||||||
Пример запроса:
|
Пример запроса:
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
`https://guild.craft-group.xyz/api/profile?limit=5&offset=5&skills=1`
|
`https://guild.craft-group.xyz/api/profile?limit=5&offset=5&skills=1,2`
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Возвращает <b>массив</b> объектов <b>Профилей</b>. <br>
|
||||||
|
Каждый объект <b>Профиля</b> имеет такой вид:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
```json5
|
||||||
|
{
|
||||||
|
"id": "1",
|
||||||
|
"fio": "f23f",
|
||||||
|
"passport": "f23",
|
||||||
|
"photo": "''",
|
||||||
|
"email": "f",
|
||||||
|
"gender": "1",
|
||||||
|
"dob": "2021-09-17",
|
||||||
|
"status": "2",
|
||||||
|
"created_at": "2021-09-08 16:30:34",
|
||||||
|
"updated_at": "2021-09-09 08:41:02",
|
||||||
|
"resume": "",
|
||||||
|
"salary": "",
|
||||||
|
"position_id": "1",
|
||||||
|
"deleted_at": null,
|
||||||
|
"id_user": "1",
|
||||||
|
"city": "",
|
||||||
|
"link_vk": "",
|
||||||
|
"link_telegram": "",
|
||||||
|
"vc_text": "",
|
||||||
|
"level": "2", //
|
||||||
|
"vc_text_short": "",
|
||||||
|
"years_of_exp": "0",
|
||||||
|
"specification": "",
|
||||||
|
"skillValues": [ //Массив навыков привязанных к этому профилю
|
||||||
|
{
|
||||||
|
"id": "1",
|
||||||
|
"card_id": "1", //card_id из таблицы card_skill
|
||||||
|
"skill_id": "1",//skill_id из таблицы card_skill
|
||||||
|
"skill": {
|
||||||
|
"id": "1", //id из таблицы skill
|
||||||
|
"name": "SQL",
|
||||||
|
"category_id": "1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
//...
|
||||||
|
],
|
||||||
|
"achievements": [ //Массив достижений привязанных к этому профилю
|
||||||
|
{
|
||||||
|
"id": "7",
|
||||||
|
"user_card_id": "1",//user_card_id из таблицы achievement_user_card
|
||||||
|
"achievement_id": "1",//achievement_id из таблицы achievement_user_card
|
||||||
|
"achievement": {
|
||||||
|
"id": "1", //id из таблицы achievement
|
||||||
|
"slug": "newguy",
|
||||||
|
"title": "Новичок",
|
||||||
|
"img": "",
|
||||||
|
"description": "Ты начал у нас работу",
|
||||||
|
"status": "1" // 1 - Активно, 2 - Неактивно
|
||||||
|
}
|
||||||
|
},
|
||||||
|
//...
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
### Одна запись
|
### Одна запись
|
||||||
`https://guild.craft-group.xyz/api/profile/{id}`
|
`https://guild.craft-group.xyz/api/profile/{id}`
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
Для того, чтобы получить данные одной записи необходимо отправить <b>GET</b> запрос
|
Для того, чтобы получить данные одной записи необходимо отправить <b>GET</b> запрос
|
||||||
на URL https://guild.craft-group.xyz/api/profile/{id} , где <b>id</b> это идинтификатор
|
на URL https://guild.craft-group.xyz/api/profile/{id} , где <b>id</b> это идентификатор
|
||||||
профиля.
|
профиля.
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
@ -70,6 +133,12 @@
|
|||||||
|
|
||||||
`https://guild.craft-group.xyz/api/profile/6`
|
`https://guild.craft-group.xyz/api/profile/6`
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Возвращает объект <b>Профиля</b>. <br>
|
||||||
|
Как выглядит можно посмотреть выше.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
|
||||||
### Пригласить на собеседование
|
### Пригласить на собеседование
|
||||||
`https://guild.craft-group.xyz/api/profile/add-to-interview`
|
`https://guild.craft-group.xyz/api/profile/add-to-interview`
|
||||||
|
|
||||||
|
@ -20,6 +20,7 @@ class ProfileSearchForm extends Model
|
|||||||
public $limit = 10;
|
public $limit = 10;
|
||||||
public $offset = 0;
|
public $offset = 0;
|
||||||
public $skills;
|
public $skills;
|
||||||
|
|
||||||
public $position_id;
|
public $position_id;
|
||||||
public $id;
|
public $id;
|
||||||
|
|
||||||
@ -45,6 +46,7 @@ class ProfileSearchForm extends Model
|
|||||||
return UserCard::find()
|
return UserCard::find()
|
||||||
->where(['id' => $this->id])
|
->where(['id' => $this->id])
|
||||||
->with(['skillValues'])
|
->with(['skillValues'])
|
||||||
|
->with(['achievements'])
|
||||||
->asArray()
|
->asArray()
|
||||||
->one();
|
->one();
|
||||||
}
|
}
|
||||||
@ -67,10 +69,12 @@ class ProfileSearchForm extends Model
|
|||||||
$model->joinWith('skillValues');
|
$model->joinWith('skillValues');
|
||||||
}
|
}
|
||||||
|
|
||||||
$model->andFilterWhere(['position_id' => $this->position_id]);
|
$model->joinWith('achievements');
|
||||||
|
|
||||||
$model->andWhere(['status' => [4, 12]]);
|
// $model->andFilterWhere(['position_id' => $this->position_id]);
|
||||||
$model->andWhere(['deleted_at' => null]);
|
//
|
||||||
|
// $model->andWhere(['status' => [4, 12]]);
|
||||||
|
// $model->andWhere(['deleted_at' => null]);
|
||||||
|
|
||||||
$model->groupBy('card_skill.card_id');
|
$model->groupBy('card_skill.card_id');
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user