COOPENOMICS  v1
Кооперативная Экономика
Структура Marketplace::return_request

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) председатель накладывает на тот же документ вторую подпись (канон двухподписных актов — без регенерации); со-подписанная версия фиксируется аргументом действия в журнале, запись при этом стирается. Отдельных документов решения председателя нет: удалённое рассмотрение и отказы — процедурные действия с текстовой причиной в аргументе действия.

Методы

◆ by_hash()

checksum256 Marketplace::return_request::by_hash ( ) const
inline

◆ by_orderer()

uint64_t Marketplace::return_request::by_orderer ( ) const
inline

◆ by_original_order()

uint64_t Marketplace::return_request::by_original_order ( ) const
inline

◆ by_status()

uint64_t Marketplace::return_request::by_status ( ) const
inline

◆ primary_key()

uint64_t Marketplace::return_request::primary_key ( ) const
inline

Данные класса

◆ actual_quantity

eosio::asset Marketplace::return_request::actual_quantity = asset(0, _unit_piece)

возвращаемое количество (asset единицы; по умолчанию = order.actual_quantity, может быть меньше)

◆ coopname

eosio::name Marketplace::return_request::coopname

◆ fact_cost

eosio::asset Marketplace::return_request::fact_cost = asset(0, _root_govern_symbol)

возвращаемая стоимость имущества (actual_quantity * unit_price / 10^precision)

◆ fee_refund

eosio::asset Marketplace::return_request::fee_refund = asset(0, _root_govern_symbol)

Доля членского взноса, приходящаяся на возвращаемое имущество. Считается при подаче заявления пропорционально возвращаемому количеству от взноса, фактически принятого кооперативом на выдаче заказа. При приёме возврата возвращается пайщику вместе со стоимостью имущества — из общего кошелька участка, куда взнос ушёл на выдаче (o.brn.retfee + o.mkt.refund). Возврат при полном количестве возвращает пайщику ровно ту сумму, которую он заплатил за заказ. Ноль — взнос не возвращается.

◆ hash

checksum256 Marketplace::return_request::hash

process_hash для p.mkt.return

◆ id

uint64_t Marketplace::return_request::id

◆ orderer

eosio::name Marketplace::return_request::orderer

пайщик-заказчик (заявитель)

◆ original_consume_op_id

checksum256 Marketplace::return_request::original_consume_op_id

ссылка на оригинальный o.mkt.consum (для journal трассировки compensating forward; см. d6 A4)

◆ original_order_hash

checksum256 Marketplace::return_request::original_order_hash

process_hash оригинального p.mkt.supply

◆ original_order_id

uint64_t Marketplace::return_request::original_order_id

внутренний id Order'а

◆ photos

std::vector<checksum256> Marketplace::return_request::photos

хеши файлов в bucket'е stol-zakazov:images

◆ reason_text

std::string Marketplace::return_request::reason_text

причина обращения (≤ 500 символов)

◆ statement

document2 Marketplace::return_request::statement

заявление пайщика (его подпись)

◆ status

eosio::name Marketplace::return_request::status = ReturnStatus::PENDING_REVIEW

Объявления и описания членов структуры находятся в файле: