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
 
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). Удалённое рассмотрение и отказы — процедурные действия с текстовой причиной в аргументе действия.

Методы

◆ 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

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

◆ accepted_at

eosio::binary_extension<time_point_sec> Marketplace::return_request::accepted_at

Момент приёма имущества оператором (accretrn). Выдача обратно до решения совета не допускается, поэтому срока ожидания от него больше не считается (задача 99D-16). binary_extension: у заявок, созданных до паевой модели, значения нет — читать через value_or(time_point_sec(0)).

◆ actual_quantity

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

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

◆ cancel_statement

eosio::binary_extension<document2> Marketplace::return_request::cancel_statement

Заявление оператора участка в совет об отмене сделки (1116) с подписью оператора, принявшего имущество (accretrn). binary_extension: у заявок, принятых до задачи 99D-12, значения нет.

◆ 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

рекламация пайщика — Заявление о гарантийном возврате имущества (1106), его подпись

◆ status

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

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