Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.
Порівняння попередніх версій Попередня ревізія Наступна ревізія | Попередня ревізія | ||
gooseresistance [2024/10/02 18:05] nightfly |
gooseresistance [2024/11/05 01:22] (поточний) pautina |
||
---|---|---|---|
Рядок 40: | Рядок 40: | ||
{{: | {{: | ||
- | Також за необхідності, для кожного контрагента в рамках кожної окремої стратегії, ми можемо заповнити | + | Тип "розподілу" |
+ | * **Жоден** - завжди 0 | ||
+ | * **Відсоток від суми** - відсоток від суми платежа | ||
+ | * **Відсоток від залишку** - відсоток від залишків суми платежа після обчислень | ||
+ | * **Абсолютне** - абсолютне значення в грошах, | ||
+ | * **Залишки** - те що лишилось після обчислень. Якщо агентів з цим типом розподілу більше ніж 1 залишки це залишки/ | ||
+ | |||
+ | |||
+ | |||
+ | Також за необхідності, | ||
{{: | {{: | ||
+ | Також ми у будь-який момент, | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Та прослідкувати за розподілом коштів в рамках стратегії | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Тут варто зазначити, | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Тобто шлях вирішення того, яку стратегію буде обрано для конкретного користувача був " | ||
+ | У випадку, | ||
+ | |||
+ | {{: | ||
+ | |||
+ | {{: | ||
+ | |||
+ | то і результат тестування виглядав би якось трішки інакше | ||
+ | |||
+ | {{: | ||
+ | |||
+ | У випадку, | ||
+ | |||
+ | Що до порядку обробки " | ||
+ | |||
+ | - Абсолютне значення (від суми платежу віднімається значення) | ||
+ | - Відсоток від суми (від суми платежу віднімається відсоток значення) | ||
+ | - Відсоток від залишку (від залишку після п.1. та п.2. віднімається відсоток значення) | ||
+ | - Залишки (все що залишилось після п.1., п.2. та п.3. поділене на кількість агентів з цим типом) | ||
+ | - Жоден (завжди 0, просто створює присутність агента) | ||
===== Для розробників ===== | ===== Для розробників ===== | ||
- | Можливі параметри: | + | Можливі параметри |
- | * username - логін користувача | + | |
- | * paymentid - платіжний ID користувача | + | |
- | * amount - сума коштів платежу | + | |
- | * stratid - примусово вказаний ID стратегії | + | |
- | * runtime - виклик рантайму ліцензії | + | |
+ | |||
+ | Ясно, що один з двох параметрів username чи paymentid, на ваш розсуд є обов' | ||
Запит: | Запит: | ||
< | < | ||
- | https:// | + | https:// |
</ | </ | ||
Або: | Або: | ||
< | < | ||
- | https:// | + | https:// |
</ | </ | ||
- | Відповідь: | + | Коротко про те що відбувається в результатах та на що варто звертати увагу: |
+ | |||
+ | * **amount** - (float) сума платежу | ||
+ | * **userlogin** - (string) очевидно | ||
+ | * **paymentid** - (string) теж очевидно | ||
+ | * **payopts** - (array) масив з ключами: | ||
+ | * **minamount** - (float) мінімально допустима сума платежу | ||
+ | * **maxamount** - (float) максимально допустима сума платежу | ||
+ | * **isvalid** - (bool) флажок, | ||
+ | * **amount** -(float) власне та ж сума платежу з запиту | ||
+ | * **agents** - (array) масив з вкладеними в нього нутрощами контрагентів з стратегії в форматі id=> | ||
+ | * **user** - (array) масив з нутрощами користувача визначеного за параметрами запиту username чи paymentid якщо він існує | ||
+ | * **runtime** - (array) вже розпакований масив рантайму ліцензії, | ||
+ | |||
+ | // | ||
+ | <code php> | ||
+ | [agents] => Array | ||
+ | ( | ||
+ | [1] => Array | ||
+ | ( | ||
+ | [id] => 1 | ||
+ | [bankacc] => UA111111111111111111111111111 | ||
+ | [bankname] => РогиТаКопита | ||
+ | [bankcode] => 666666 | ||
+ | [edrpo] => 12345678 | ||
+ | [ipn] => | ||
+ | [licensenum] => | ||
+ | [juraddr] => Лісова 42 | ||
+ | [phisaddr] => Леонтовича 13 | ||
+ | [phone] => 1234567 | ||
+ | [contrname] => МПП НашПровайдер | ||
+ | [agnameabbr] => | ||
+ | [agsignatory] => | ||
+ | [agsignatory2] => | ||
+ | [agbasis] => | ||
+ | [agmail] => | ||
+ | [siteurl] => | ||
+ | [splitamount] => 265 | ||
+ | [splittype] => leftovers | ||
+ | [splitvalue] => 0 | ||
+ | [extinfo] => Array | ||
+ | ( | ||
+ | ) | ||
+ | |||
+ | [customdata] => Array | ||
+ | ( | ||
+ | [somekey] => somevalue | ||
+ | [anotherkey] => такі буковки тут теж працюють | ||
+ | ) | ||
+ | |||
+ | ) | ||
+ | ..... | ||
+ | </ | ||
+ | |||
+ | Особливу увагу добре би звернути там на ось ці поля: | ||
+ | * **splitamount** - (float) вже поділена сума для кожного | ||
+ | * **splittype** - (string) тип розподілу (absolute/ | ||
+ | * **splitvalue** - (int) значення розподілу | ||
+ | * **extinfo** - (array) легасі дані з AGENTS_EXTINFO_ON для кожного агенту | ||
+ | * **customdata** - (array) масив користувацьких даних у форматі ключ=> | ||
+ | |||
+ | |||
+ | |||
+ | Повна відповідь | ||
< | < | ||
{ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | } | ||
+ | }</ | ||
+ | |||
+ | Вона ж у вигляді прямого масиву | ||
+ | |||
+ | <code php> | ||
Array | Array | ||
( | ( | ||
[amount] => 350 | [amount] => 350 | ||
[userlogin] => sometestuser | [userlogin] => sometestuser | ||
- | [id] => 4 | + | |
- | [name] => Тестовий «Гусь» | + | [payopts] => Array |
+ | ( | ||
+ | [minamount] => 50 | ||
+ | [maxamount] => 0 | ||
+ | [isvalid] => 1 | ||
+ | [amount] => 350 | ||
+ | ) | ||
+ | |||
+ | | ||
+ | [name] => Базова стратегія | ||
[useassigns] => 1 | [useassigns] => 1 | ||
[primaryagentid] => 1 | [primaryagentid] => 1 | ||
[maxamount] => | [maxamount] => | ||
+ | [tariff] => 0 | ||
[agents] => Array | [agents] => Array | ||
( | ( | ||
Рядок 87: | Рядок 382: | ||
[bankname] => РогиТаКопита | [bankname] => РогиТаКопита | ||
[bankcode] => 666666 | [bankcode] => 666666 | ||
- | [edrpo] => 1111111111 | + | [edrpo] => 12345678 |
[ipn] => | [ipn] => | ||
[licensenum] => | [licensenum] => | ||
Рядок 100: | Рядок 395: | ||
[agmail] => | [agmail] => | ||
[siteurl] => | [siteurl] => | ||
- | [splitamount] => 250 | + | [splitamount] => 265 |
[splittype] => leftovers | [splittype] => leftovers | ||
[splitvalue] => 0 | [splitvalue] => 0 | ||
Рядок 110: | Рядок 405: | ||
( | ( | ||
[somekey] => somevalue | [somekey] => somevalue | ||
- | [anotherkey] => anothervalue | + | [anotherkey] => такі буковки тут теж працюють |
) | ) | ||
Рядок 121: | Рядок 416: | ||
[bankname] => ПриватБанк | [bankname] => ПриватБанк | ||
[bankcode] => 305299 | [bankcode] => 305299 | ||
- | [edrpo] => 55555555 | + | [edrpo] => 87654321 |
[ipn] => | [ipn] => | ||
[licensenum] => | [licensenum] => | ||
Рядок 134: | Рядок 429: | ||
[agmail] => agent@site.com | [agmail] => agent@site.com | ||
[siteurl] => https:// | [siteurl] => https:// | ||
- | [splitamount] => 70 | + | [splitamount] => 50 |
- | [splittype] => percent | + | [splittype] => absolute |
- | [splitvalue] => 20 | + | [splitvalue] => 50 |
[extinfo] => Array | [extinfo] => Array | ||
( | ( | ||
Рядок 147: | Рядок 442: | ||
) | ) | ||
- | [28] => Array | + | [15] => Array |
( | ( | ||
- | [id] => 28 | + | [id] => 15 |
- | [bankacc] => UA555555555555555555555555555 | + | [bankacc] => UA333333333333333333333333333 |
[bankname] => ПриватБанк | [bankname] => ПриватБанк | ||
[bankcode] => 305299 | [bankcode] => 305299 | ||
- | [edrpo] => 55555556 | + | [edrpo] => 333333333 |
[ipn] => | [ipn] => | ||
[licensenum] => | [licensenum] => | ||
Рядок 159: | Рядок 454: | ||
[phisaddr] => | [phisaddr] => | ||
[phone] => | [phone] => | ||
- | [contrname] => ТОВ ВисокаГора | + | [contrname] => ФОП Нереаленко |
[agnameabbr] => | [agnameabbr] => | ||
[agsignatory] => | [agsignatory] => | ||
Рядок 166: | Рядок 461: | ||
[agmail] => | [agmail] => | ||
[siteurl] => | [siteurl] => | ||
- | [splitamount] => 30 | + | [splitamount] => 35 |
- | [splittype] => absolute | + | [splittype] => percent |
- | [splitvalue] => 30 | + | [splitvalue] => 10 |
[extinfo] => Array | [extinfo] => Array | ||
( | ( | ||
Рядок 192: | Рядок 487: | ||
[TariffChange] => | [TariffChange] => | ||
[Credit] => 0 | [Credit] => 0 | ||
- | [Cash] => 0.75 | + | [Cash] => 666.75 |
[ip] => 172.16.0.6 | [ip] => 172.16.0.6 | ||
[mac] => 98: | [mac] => 98: | ||
Рядок 213: | Рядок 508: | ||
( | ( | ||
) | ) | ||
+ | [agentsextinfo] => Array | ||
+ | ( | ||
+ | [7] => Array | ||
+ | ( | ||
+ | [id] => 7 | ||
+ | [agentid] => 3 | ||
+ | [service_type] => Internet | ||
+ | [internal_paysys_name] => CITY24M_CHER | ||
+ | [internal_paysys_id] => | ||
+ | [internal_paysys_srv_id] => | ||
+ | [paysys_token] => | ||
+ | [paysys_secret_key] => | ||
+ | [paysys_password] => | ||
+ | [payment_fee_info] => | ||
+ | [paysys_callback_url] => | ||
+ | ) | ||
+ | [11] => Array | ||
+ | ( | ||
+ | [id] => 11 | ||
+ | [agentid] => 3 | ||
+ | [service_type] => Internet | ||
+ | [internal_paysys_name] => PBANKM_CHER | ||
+ | [internal_paysys_id] => 3 | ||
+ | [internal_paysys_srv_id] => 1 | ||
+ | [paysys_token] => | ||
+ | [paysys_secret_key] => | ||
+ | [paysys_password] => | ||
+ | [payment_fee_info] => subscriber | ||
+ | [paysys_callback_url] => | ||
+ | ) | ||
+ | |||
+ | [6] => Array | ||
+ | ( | ||
+ | [id] => 6 | ||
+ | [agentid] => 5 | ||
+ | [service_type] => Internet | ||
+ | [internal_paysys_name] => EASYPAYM_RYS | ||
+ | [internal_paysys_id] => | ||
+ | [internal_paysys_srv_id] => | ||
+ | [paysys_token] => | ||
+ | [paysys_secret_key] => | ||
+ | [paysys_password] => | ||
+ | [payment_fee_info] => | ||
+ | [paysys_callback_url] => | ||
+ | ) | ||
+ | |||
+ | [5] => Array | ||
+ | ( | ||
+ | [id] => 5 | ||
+ | [agentid] => 5 | ||
+ | [service_type] => Internet | ||
+ | [internal_paysys_name] => CITY24M_RYS | ||
+ | [internal_paysys_id] => | ||
+ | [internal_paysys_srv_id] => | ||
+ | [paysys_token] => | ||
+ | [paysys_secret_key] => | ||
+ | [paysys_password] => | ||
+ | [payment_fee_info] => | ||
+ | [paysys_callback_url] => | ||
+ | ) | ||
+ | |||
+ | [9] => Array | ||
+ | ( | ||
+ | [id] => 9 | ||
+ | [agentid] => 5 | ||
+ | [service_type] => Internet | ||
+ | [internal_paysys_name] => PBANKM_RYS | ||
+ | [internal_paysys_id] => 5 | ||
+ | [internal_paysys_srv_id] => 2 | ||
+ | [paysys_token] => | ||
+ | [paysys_secret_key] => | ||
+ | [paysys_password] => | ||
+ | [payment_fee_info] => subscriber | ||
+ | [paysys_callback_url] => | ||
+ | ) | ||
+ | |||
+ | ) | ||
) | ) | ||
</ | </ |