|
COOPENOMICS
v1
Кооперативная Экономика
|
On-chain Заявление на гарантийный возврат — анкер процесса p.mkt.return. Подробнее...
#include <table_marketplace_return_requests.hpp>
Открытые члены | |
| uint64_t | primary_key () const |
| checksum256 | by_hash () const |
| uint64_t | by_orderer () const |
| uint64_t | by_status () const |
| uint64_t | by_original_order () const |
Открытые атрибуты | |
| uint64_t | id |
| checksum256 | hash |
| process_hash для p.mkt.return Подробнее... | |
| eosio::name | coopname |
| eosio::name | orderer |
| пайщик-заказчик (заявитель) Подробнее... | |
| uint64_t | original_order_id |
| внутренний id Order'а Подробнее... | |
| checksum256 | original_order_hash |
| process_hash оригинального p.mkt.supply Подробнее... | |
| checksum256 | original_consume_op_id |
| ссылка на оригинальный o.mkt.consum (для journal трассировки compensating forward; см. d6 A4) Подробнее... | |
| eosio::asset | actual_quantity = asset(0, _unit_piece) |
| возвращаемое количество (asset единицы; по умолчанию = order.actual_quantity, может быть меньше) Подробнее... | |
| eosio::asset | fact_cost = asset(0, _root_govern_symbol) |
| возвращаемая стоимость имущества (actual_quantity * unit_price / 10^precision) Подробнее... | |
| eosio::asset | fee_refund = asset(0, _root_govern_symbol) |
| std::string | reason_text |
| причина обращения (≤ 500 символов) Подробнее... | |
| std::vector< checksum256 > | photos |
| хеши файлов в bucket'е stol-zakazov:images Подробнее... | |
| eosio::name | status = ReturnStatus::PENDING_REVIEW |
| document2 | statement |
| заявление пайщика (его подпись) Подробнее... | |
On-chain Заявление на гарантийный возврат — анкер процесса p.mkt.return.
scope = coopname; primary_key = id; уникальность через byhash индекс на return_request.hash — этот hash используется как process_hash во всех ledger2-операциях процесса (RETURN + RETURN2).
Привязка к КУ не сохраняется — она может измениться от шага к шагу (председатель delivery-КУ может рассмотреть удалённо, а очный осмотр сделать на любом другом КУ; состав доверенных лиц коробки branches тоже может меняться). На каждом действии (aprretrem/rejretrem/accretrn/rejretrn) braname приходит параметром action'а и валидируется через Branch::is_user_authorized(coopname, braname, signer). Контракт хранит только неизменные участники процесса: orderer / offerer (через original Order) и coopname.
Связь с исходным Order'ом — original_order_id + original_order_hash; Order.return_request_id ставится в submretrn для двусторонней связи.
photos — vector<checksum256> хешей файлов в bucket'е stol-zakazov:images (Story 7.1, AR32). Реальные изображения off-chain в file-storage (PR #359); on-chain — только ссылки (hash для дедупликации + URL восстанавливает backend).
statement — заявление пайщика на возврат (его подпись с submretrn). При принятии возврата (accretrn) председатель накладывает на тот же документ вторую подпись (канон двухподписных актов — без регенерации); со-подписанная версия фиксируется аргументом действия в журнале, запись при этом стирается. Отдельных документов решения председателя нет: удалённое рассмотрение и отказы — процедурные действия с текстовой причиной в аргументе действия.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
| eosio::asset Marketplace::return_request::actual_quantity = asset(0, _unit_piece) |
возвращаемое количество (asset единицы; по умолчанию = order.actual_quantity, может быть меньше)
| eosio::name Marketplace::return_request::coopname |
| eosio::asset Marketplace::return_request::fact_cost = asset(0, _root_govern_symbol) |
возвращаемая стоимость имущества (actual_quantity * unit_price / 10^precision)
| eosio::asset Marketplace::return_request::fee_refund = asset(0, _root_govern_symbol) |
Доля членского взноса, приходящаяся на возвращаемое имущество. Считается при подаче заявления пропорционально возвращаемому количеству от взноса, фактически принятого кооперативом на выдаче заказа. При приёме возврата возвращается пайщику вместе со стоимостью имущества — из общего кошелька участка, куда взнос ушёл на выдаче (o.brn.retfee + o.mkt.refund). Возврат при полном количестве возвращает пайщику ровно ту сумму, которую он заплатил за заказ. Ноль — взнос не возвращается.
| checksum256 Marketplace::return_request::hash |
process_hash для p.mkt.return
| uint64_t Marketplace::return_request::id |
| eosio::name Marketplace::return_request::orderer |
пайщик-заказчик (заявитель)
| checksum256 Marketplace::return_request::original_consume_op_id |
ссылка на оригинальный o.mkt.consum (для journal трассировки compensating forward; см. d6 A4)
| checksum256 Marketplace::return_request::original_order_hash |
process_hash оригинального p.mkt.supply
| uint64_t Marketplace::return_request::original_order_id |
внутренний id Order'а
| std::vector<checksum256> Marketplace::return_request::photos |
хеши файлов в bucket'е stol-zakazov:images
| std::string Marketplace::return_request::reason_text |
причина обращения (≤ 500 символов)
| document2 Marketplace::return_request::statement |
заявление пайщика (его подпись)
| eosio::name Marketplace::return_request::status = ReturnStatus::PENDING_REVIEW |