Бонусы для сотрудников
Процент с продажи, который получают продавцы: общее значение и индивидуальные значения по каждому продавцу. Настройки общие для всей семьи компаний и хранятся у головной компании.
| Метод | Адрес | Назначение |
|---|---|---|
| GET | /company/bonus/employee-setting | Настройки бонусов сотрудников |
| PUT | /company/bonus/employee-setting | Сохранить настройки бонусов сотрудников |
Настройки бонусов сотрудников
/company/bonus/employee-settingВесь экран настроек: общий процент с продажи, список продавцов семьи компаний (сотрудники, привязанные к кассе, и продавцы-консультанты) с их собственным процентом (null — действует общий) и число правил «Бонус за товар». Чтение ничего не сохраняет.
Заголовки
| Заголовок | Значение | Описание |
|---|---|---|
Authorization | Bearer {token} | Токен из POST /common/auth/login |
Accept | application/json | Ответ в JSON |
Accept-Language | ru | Язык сообщений и названий: ru, uz, oz |
Ответ · 200
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
is_sale_percent_enabled | boolean | Процент с продажи включён |
sale_percent | integer | Процент с продажи |
sellers | object[] | |
sellers[].user_id | integer | Пользователь |
sellers[].full_name | string | ФИО |
sellers[].position | string | Должность |
sellers[].company_id | integer | Компания |
sellers[].company_name | string | Компания |
sellers[].sale_percent | null | Процент с продажи |
sellers[].is_active | boolean | Активен |
product_rules_count | integer |
{
"is_sale_percent_enabled": false,
"sale_percent": 0,
"sellers": [
{
"user_id": 4,
"full_name": "First name 1 Last name 1",
"position": "Position 1",
"company_id": 1,
"company_name": "Company 1",
"sale_percent": null,
"is_active": true
},
{
"user_id": 5,
"full_name": "First name 2 Last name 2",
"position": "Position 2",
"company_id": 1,
"company_name": "Company 1",
"sale_percent": null,
"is_active": true
}
],
"product_rules_count": 0
}Сохранить настройки бонусов сотрудников
/company/bonus/employee-settingОдним действием сохраняет общий процент с продажи, его переключатель и значения продавцов (проценты 0–100; пустой процент продавца — следовать общему). В sellers допустимы только продавцы семьи компаний. Изменять может только головная компания — филиалу 403. Ответ — весь экран настроек.
Из формы (
multipart/form-data) методPUTотправляется какPOSTс параметром?_method=PUT.
Заголовки
| Заголовок | Значение | Описание |
|---|---|---|
Authorization | Bearer {token} | Токен из POST /common/auth/login |
Accept | application/json | Ответ в JSON |
Accept-Language | ru | Язык сообщений и названий: ru, uz, oz |
Тело запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
is_sale_percent_enabled | boolean | Нет | Процент с продажи включён |
sale_percent | number | Нет | Процент с продажи. До 2 знаков после запятой. Не меньше 0. Не больше 100 |
sellers | object[] | Нет | Макс. 1000 элементов |
sellers[].user_id | integer | Да | Продавец. Без повторов. Допустимые значения: 4, 5 |
sellers[].sale_percent | number | Нет | Значение. До 2 знаков после запятой. Не меньше 0. Не больше 100 |
sellers[].is_active | boolean | Нет | Активен |
{
"is_sale_percent_enabled": 1,
"sale_percent": 1.5,
"sellers": [
{
"user_id": 4,
"sale_percent": 3,
"is_active": 1
},
{
"user_id": 5,
"sale_percent": null,
"is_active": null
}
]
}curl -X PUT "https://api.wasyt.uz/company/bonus/employee-setting" \
-H "Accept: application/json" \
-H "Accept-Language: ru" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{"is_sale_percent_enabled":1,"sale_percent":1.5,"sellers":[{"user_id":4,"sale_percent":3,"is_active":1},{"user_id":5,"sale_percent":null,"is_active":null}]}'Ответ · 200
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
is_sale_percent_enabled | boolean | Процент с продажи включён |
sale_percent | number | Процент с продажи |
sellers | object[] | |
sellers[].user_id | integer | Пользователь |
sellers[].full_name | string | ФИО |
sellers[].position | string | Должность |
sellers[].company_id | integer | Компания |
sellers[].company_name | string | Компания |
sellers[].sale_percent | integer | Процент с продажи |
sellers[].is_active | boolean | Активен |
product_rules_count | integer |
{
"is_sale_percent_enabled": true,
"sale_percent": 1.5,
"sellers": [
{
"user_id": 4,
"full_name": "First name 1 Last name 1",
"position": "Position 1",
"company_id": 1,
"company_name": "Company 1",
"sale_percent": 3,
"is_active": true
},
{
"user_id": 5,
"full_name": "First name 2 Last name 2",
"position": "Position 2",
"company_id": 1,
"company_name": "Company 1",
"sale_percent": null,
"is_active": false
}
],
"product_rules_count": 0
}Пример ошибки · 422
{
"message": "Значение поля Процент с продажи не может быть больше 100.",
"errors": {
"sale_percent": [
"Значение поля Процент с продажи не может быть больше 100."
]
}
}
