Skip to content

Бонусы для сотрудников ​

Процент с продажи, который получают продавцы: общее значение и индивидуальные значения по каждому продавцу. Настройки общие для всей семьи компаний и хранятся у головной компании.

МетодАдресНазначение
GET/company/bonus/employee-settingНастройки бонусов сотрудников
PUT/company/bonus/employee-settingСохранить настройки бонусов сотрудников

Настройки бонусов сотрудников ​

GET/company/bonus/employee-setting

Весь экран настроек: общий процент с продажи, список продавцов семьи компаний (сотрудники, привязанные к кассе, и продавцы-консультанты) с их собственным процентом (null — действует общий) и число правил «Бонус за товар». Чтение ничего не сохраняет.

Заголовки ​

ЗаголовокЗначениеОписание
AuthorizationBearer {token}Токен из POST /common/auth/login
Acceptapplication/jsonОтвет в JSON
Accept-LanguageruЯзык сообщений и названий: ru, uz, oz

Ответ · 200 ​

Поля ответа
ПолеТипОписание
is_sale_percent_enabledbooleanПроцент с продажи включён
sale_percentintegerПроцент с продажи
sellersobject[]
sellers[].user_idintegerПользователь
sellers[].full_namestringФИО
sellers[].positionstringДолжность
sellers[].company_idintegerКомпания
sellers[].company_namestringКомпания
sellers[].sale_percentnullПроцент с продажи
sellers[].is_activebooleanАктивен
product_rules_countinteger
json
{
    "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
}

Сохранить настройки бонусов сотрудников ​

PUT/company/bonus/employee-setting

Одним действием сохраняет общий процент с продажи, его переключатель и значения продавцов (проценты 0–100; пустой процент продавца — следовать общему). В sellers допустимы только продавцы семьи компаний. Изменять может только головная компания — филиалу 403. Ответ — весь экран настроек.

Из формы (multipart/form-data) метод PUT отправляется как POST с параметром ?_method=PUT.

Заголовки ​

ЗаголовокЗначениеОписание
AuthorizationBearer {token}Токен из POST /common/auth/login
Acceptapplication/jsonОтвет в JSON
Accept-LanguageruЯзык сообщений и названий: ru, uz, oz

Тело запроса ​

ПолеТипОбязательноОписание
is_sale_percent_enabledbooleanНетПроцент с продажи включён
sale_percentnumberНетПроцент с продажи. До 2 знаков после запятой. Не меньше 0. Не больше 100
sellersobject[]НетМакс. 1000 элементов
sellers[].user_idintegerДаПродавец. Без повторов. Допустимые значения: 4, 5
sellers[].sale_percentnumberНетЗначение. До 2 знаков после запятой. Не меньше 0. Не больше 100
sellers[].is_activebooleanНетАктивен
json
{
    "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
        }
    ]
}
bash
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_enabledbooleanПроцент с продажи включён
sale_percentnumberПроцент с продажи
sellersobject[]
sellers[].user_idintegerПользователь
sellers[].full_namestringФИО
sellers[].positionstringДолжность
sellers[].company_idintegerКомпания
sellers[].company_namestringКомпания
sellers[].sale_percentintegerПроцент с продажи
sellers[].is_activebooleanАктивен
product_rules_countinteger
json
{
    "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 ​

json
{
    "message": "Значение поля Процент с продажи не может быть больше 100.",
    "errors": {
        "sale_percent": [
            "Значение поля Процент с продажи не может быть больше 100."
        ]
    }
}