|
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 |
| eosio::binary_extension< time_point_sec > | accepted_at |
| eosio::binary_extension< document2 > | cancel_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 — рекламация пайщика: Заявление о гарантийном возврате имущества (1106) с его подписью (submretrn). cancel_statement — Заявление оператора участка в совет об отмене сделки (1116) с подписью оператора, принявшего имущество (accretrn); оно же — документ повестки совета. Пайщик ничего не вносит: по решению совета сделка отменяется и взносы восстанавливаются обратными операциями (задача 99D-12). Удалённое рассмотрение и отказы — процедурные действия с текстовой причиной в аргументе действия.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
| eosio::binary_extension<time_point_sec> Marketplace::return_request::accepted_at |
Момент приёма имущества оператором (accretrn). Выдача обратно до решения совета не допускается, поэтому срока ожидания от него больше не считается (задача 99D-16). binary_extension: у заявок, созданных до паевой модели, значения нет — читать через value_or(time_point_sec(0)).
| eosio::asset Marketplace::return_request::actual_quantity = asset(0, _unit_piece) |
возвращаемое количество (asset единицы; по умолчанию = order.actual_quantity, может быть меньше)
| eosio::binary_extension<document2> Marketplace::return_request::cancel_statement |
Заявление оператора участка в совет об отмене сделки (1116) с подписью оператора, принявшего имущество (accretrn). binary_extension: у заявок, принятых до задачи 99D-12, значения нет.
| 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 |
рекламация пайщика — Заявление о гарантийном возврате имущества (1106), его подпись
| eosio::name Marketplace::return_request::status = ReturnStatus::PENDING_REVIEW |