|
COOPENOMICS
v1
Кооперативная Экономика
|
Функции | |
| static void | recalculate_levels (eosio::name coopname) |
| Миграция контракта capital — восстановление инварианта сумм голосования у проекта, поставленного на голосование до исправления расчёта. Подробнее... | |
| void | capital::setconfig (name coopname, Capital::config config) |
| Устанавливает или обновляет конфигурацию контракта для кооператива. Подробнее... | |
| void | capital::approvedebt (eosio::name coopname, eosio::name username, checksum256 debt_hash, document2 approved_statement) |
| Одобряет долг в проекте Одобряет долг в проекте и создает повестку в совете: Подробнее... | |
| void | capital::createdebt (name coopname, name username, checksum256 project_hash, checksum256 debt_hash, asset amount, time_point_sec repaid_at, document2 statement) |
| Создает долг в проекте Создает долг в проекте с проверкой доступности средств и отправляет на одобрение: Подробнее... | |
| void | capital::debtauthcnfr (eosio::name coopname, checksum256 debt_hash, document2 decision) |
| Авторизует долг в проекте советом Авторизует долг в проекте советом и создает исходящий платеж: Подробнее... | |
| void | capital::debtpaycnfrm (name coopname, checksum256 debt_hash) |
| Подтверждает оплату выданной ссуды. Подтверждает оплату выданной ссуды и переводит долг в статус PAID: Подробнее... | |
| void | capital::debtpaydcln (name coopname, checksum256 debt_hash, std::string reason) |
| Отклоняет оплату долга Отклоняет оплату долга и удаляет его из базы данных: Подробнее... | |
| void | capital::declinedebt (name coopname, eosio::name username, checksum256 debt_hash, std::string reason) |
| Отклоняет долг в проекте Отклоняет долг в проекте и восстанавливает доступные средства: Подробнее... | |
| void | capital::settledebt (name coopname, name username, eosio::asset amount, document2 statement) |
| Погашает долг участника Погашает долг участника в системе кооператива: Подробнее... | |
| void | capital::fundprog (eosio::name coopname, asset amount, std::string memo) |
| Финансирует программу благороста Финансирует программу благороста из внешних источников: Подробнее... | |
| void | capital::refreshprog (name coopname, name username) |
| Обновляет CRPS пайщика в программе благороста Обновляет CRPS (систему вознаграждений программы) пайщика: Подробнее... | |
| void | capital::approvewthd3 (name coopname, name approver, checksum256 withdraw_hash, document2 approved_return_statement) |
| Одобряет заявку на возврат из программы благороста Одобряет заявку на возврат из программы благороста и отправляет в совет: Подробнее... | |
| void | capital::capauthwthd3 (eosio::name coopname, checksum256 withdraw_hash, document2 authorization) |
| Авторизует возврат из программы благороста советом Авторизует возврат из программы благороста советом и выполняет операции с балансами: Подробнее... | |
| void | capital::capdeclwthd3 (name coopname, checksum256 withdraw_hash, std::string reason) |
| Отклоняет возврат из программы благороста советом Отклоняет возврат из программы благороста советом и возвращает средства: Подробнее... | |
| void | capital::createwthd3 (name coopname, name username, checksum256 withdraw_hash, asset amount, document2 return_statement) |
| Создает заявку на возврат из программы благороста Создает заявку на возврат средств из программы благороста: Подробнее... | |
| void | capital::approveexpns (name coopname, name approver, checksum256 expense_hash, document2 approved_statement) |
| Одобряет расход в проекте Одобряет расход в проекте и отправляет в совет: Подробнее... | |
| void | capital::capauthexpns (eosio::name coopname, checksum256 expense_hash, document2 authorization) |
| Авторизует расход в проекте советом Авторизует расход в проекте советом и создает исходящий платеж: Подробнее... | |
| void | capital::capdeclexpns (eosio::name coopname, checksum256 expense_hash) |
| Отклоняет расход в проекте советом Отклоняет расход в проекте советом и возвращает средства в пул: Подробнее... | |
| void | capital::createexpnse (eosio::name coopname, checksum256 expense_hash, checksum256 project_hash, name creator, asset amount, std::string description, document2 statement) |
| Создает расход в проекте Создает расход в проекте с резервированием средств: Подробнее... | |
| void | capital::exppaycnfrm (eosio::name coopname, checksum256 expense_hash) |
| Подтверждает оплату расхода Подтверждает оплату расхода и завершает процесс: Подробнее... | |
| void | capital::expandexpnss (name coopname, checksum256 project_hash, asset additional_expenses) |
| Расширяет пул расходов проекта Увеличивает целевой размер пула расходов для активного проекта: Подробнее... | |
| void | capital::createpgexp (name coopname, checksum256 expense_hash, name creator, std::vector< ExpenseDomain::item > items, std::string description, document2 statement) |
| Инициировать программный расход через шасси expense. Резервирует amount в program_expense_pool, создаёт запись progexpense, шлёт inline action expense::createexp с callback={capital, onpgexpdone}. Шасси обслуживает весь flow (auth/pay/report/close|decline) и шлёт callback. Подробнее... | |
| void | capital::onpgexpdone (name coopname, checksum256 expense_hash, uint8_t status, eosio::asset total_actual, std::vector< char > data) |
| Callback от шасси expense на финализацию program-расхода. Шасси шлёт его inline (authority — _expense@active, require_auth(_expense)) после терминального перехода flow (CLOSED либо DECLINED). Подробнее... | |
| void | capital::topupprogexp (name coopname, eosio::asset amount) |
| Пополняет пул программных расходов из общего инвестиционного пула программы. Подробнее... | |
| void | capital::approvecmmt (eosio::name coopname, eosio::name master, checksum256 commit_hash) |
| Одобряет коммит в проект Одобряет коммит от мастера проекта и обрабатывает все связанные операции: Подробнее... | |
| void | capital::createcmmt (eosio::name coopname, eosio::name username, checksum256 project_hash, checksum256 commit_hash, uint64_t creator_hours, std::string description, std::string meta) |
| Создает коммит в проект Создает коммит с затраченным временем создателя и отправляет на одобрение: Подробнее... | |
| void | capital::declinecmmt (eosio::name coopname, eosio::name master, checksum256 commit_hash, std::string reason) |
| Отклоняет коммит в проект Отклоняет коммит от мастера проекта и удаляет его из базы данных: Подробнее... | |
| void | capital::rfrshsegment (name coopname, checksum256 project_hash, name username) |
| Обновляет сегмент участника через CRPS систему Обновляет сегмент участника проекта через систему CRPS: Подробнее... | |
| void | capital::regshare (name coopname, checksum256 project_hash, name username, eosio::asset user_shares) |
| Добавляет участника в проект через CRPS систему Добавляет участника в проект через систему CRPS с автоматическими проверками: Подробнее... | |
| void | capital::allocate (eosio::name coopname, checksum256 project_hash, eosio::asset amount) |
| Аллоцирует программные инвестиции в проект Аллоцирует средства из глобального пула программных инвестиций в проект: Подробнее... | |
| void | capital::diallocate (eosio::name coopname, checksum256 project_hash, eosio::asset amount) |
| Возвращает аллоцированные программные средства из проекта в глобальный пул программы Подробнее... | |
| void | capital::createpinv (name coopname, name username, checksum256 invest_hash, asset amount, document2 statement) |
Создаёт и сразу принимает программную инвестицию В одной транзакции проверяет заявление, списывает сумму с доступного остатка главного кошелька, зачисляет её на кошелёк программы благороста (заблокировано), увеличивает пул доступных программных инвестиций и накопительный показатель инвестора contributed_as_investor у контрибьютора. Отдельное одобрение совета (ранее apprvpinv) и отклонение (declpinv) не используются. Подробнее... | |
| void | capital::createinvest (name coopname, name username, checksum256 project_hash, checksum256 invest_hash, asset amount, document2 statement) |
| Создает инвестицию в проект Создает инвестицию в проект и проводит все связанные операции: Подробнее... | |
| void | capital::editcontrib (eosio::name coopname, eosio::name username, eosio::asset rate_per_hour, uint64_t hours_per_day) |
| Редактирование параметров участника Обновляет поля hours_per_day и about для существующего участника Подробнее... | |
| void | capital::dclineappndx (eosio::name coopname, eosio::name username, checksum256 appendix_hash, std::string reason) |
| Отклоняет приложение к договору УХД Отклоняет приложение к договору УХД и удаляет его из базы: Подробнее... | |
| void | capital::getclearance (eosio::name coopname, eosio::name username, checksum256 project_hash, checksum256 appendix_hash, document2 document) |
| Подписывает приложение к договору УХД для участия в проекте Создает приложение к договору УХД для участия пайщика в проекте: Подробнее... | |
| void | capital::importcontrib (eosio::name coopname, eosio::name username, checksum256 contributor_hash, eosio::asset contribution_amount, std::string memo) |
| Импорт внешнего участника с автоматическим созданием записи и внесением взносов Создает запись участника в системе благороста для внешних участников кооператива: Подробнее... | |
| void | capital::lvlnotify (eosio::name coopname, eosio::name username, uint32_t prev_level, uint32_t new_level) |
| Отправляет уведомление о переходе участника на новый уровень Inline action для уведомления системы о достижении участником нового уровня: Подробнее... | |
| void | capital::refreshcontr (eosio::name coopname, eosio::name username) |
| Обновляет энергию участника с учетом естественного снижения Применяет decay к энергии участника на основе прошедшего времени: Подробнее... | |
| void | capital::approvereg (eosio::name coopname, eosio::name username, checksum256 contributor_hash, document2 contract) |
| Принимает принятый председателем договор УХД и активирует участника по нему Активирует пайщика в системе кооператива после одобрения договора УХД: Подробнее... | |
| void | capital::declinereg (eosio::name coopname, eosio::name username, checksum256 contributor_hash, std::string reason) |
| Отклоняет председателем договор УХД и удаляет участника из базы Отклоняет регистрацию участника и удаляет его из системы кооператива: Подробнее... | |
| void | capital::regcontrib (eosio::name coopname, eosio::name username, checksum256 contributor_hash, eosio::asset rate_per_hour, uint64_t hours_per_day, bool is_external_contract, document2 storage_agreement, std::optional< document2 > contract, std::optional< document2 > blagorost_agreement, std::optional< document2 > generator_agreement) |
| Регистрация пайщика в контракте и получение договора УХД от него Создает нового пайщика в системе кооператива с указанными параметрами: Подробнее... | |
| void | capital::addauthor (name coopname, checksum256 project_hash, name author) |
| Добавляет автора проекта Добавляет нового автора к проекту с авторскими долями: Подробнее... | |
| void | capital::closeproject (name coopname, checksum256 project_hash) |
| Закрывает проект от приёма инвестиций Переводит проект в статус закрытого для приема инвестиций: Подробнее... | |
| void | capital::cmpltvoting (name coopname, checksum256 project_hash) |
| Завершает голосование Завершает процесс голосования и переводит проект в завершенный статус: Подробнее... | |
| void | capital::createproj (eosio::name coopname, checksum256 project_hash, checksum256 parent_hash, std::string title, std::string description, std::string invite, std::string meta, std::string data) |
| Создаёт проект Выполняет проверки и создает новый проект в системе кооператива: Подробнее... | |
| void | capital::delproject (name coopname, checksum256 project_hash) |
| Удаляет проект Удаляет проект из системы кооператива: Подробнее... | |
| void | capital::editproj (eosio::name coopname, checksum256 project_hash, std::string title, std::string description, std::string invite, std::string meta, std::string data) |
| Редактирует проект Выполняет проверки и редактирует существующий проект в системе кооператива: Подробнее... | |
| void | capital::finalizeproj (name coopname, checksum256 project_hash) |
| Финализирует проект после завершения всех конвертаций Финализирует проект и передаёт все неиспользованные инвестиции в глобальный фонд: Подробнее... | |
| void | capital::returntopool (name coopname, checksum256 project_hash, asset amount) |
| Возвращает неиспользованные инвестиции в глобальный пул программы Трекинговое действие для возврата неиспользованной дельты инвестиций: Подробнее... | |
| void | capital::openproject (name coopname, checksum256 project_hash) |
| Открывает проект на приём инвестиций Переводит проект в статус открытого для приема инвестиций: Подробнее... | |
| void | capital::setmaster (name coopname, checksum256 project_hash, name master) |
| Устанавливает мастера проекта Назначает мастера для управления проектом: Подробнее... | |
| void | capital::setplan (name coopname, name master, checksum256 project_hash, uint64_t plan_creators_hours, asset plan_expenses, asset plan_hour_cost) |
| Устанавливает плановые показатели проекта Рассчитывает плановые пулы (себестоимости, премии, инвестиции, расходы) на основании входных параметров: Подробнее... | |
| void | capital::startproject (name coopname, checksum256 project_hash) |
| Запускает проект на приём коммитов Переводит проект в активный статус для приема коммитов: Подробнее... | |
| void | capital::startvoting (name coopname, checksum256 project_hash) |
| Завершает проект и начинает голосование Переводит проект в статус голосования и инициализирует процесс: Подробнее... | |
| void | capital::stopproject (name coopname, checksum256 project_hash) |
| Останавливает проект Переводит проект из активного статуса обратно в статус ожидания: Подробнее... | |
| void | capital::act1pgprp (eosio::name coopname, eosio::name username, checksum256 property_hash, document2 act) |
| Подписывает акт 1 по программному имущественному взносу Подписывает первый акт по программному имущественному взносу участником: Подробнее... | |
| void | capital::act2pgprp (eosio::name coopname, eosio::name username, checksum256 property_hash, document2 act) |
| Подписывает акт 2 по программному имущественному взносу и зачисляет в программу благороста Подписывает второй акт председателем и зачисляет имущество в программу благороста: Подробнее... | |
| void | capital::approvepgprp (eosio::name coopname, eosio::name username, checksum256 property_hash, document2 approved_statement) |
| Принимает предложение по программному имущественному взносу председателем Принимает предложение по программному имущественному взносу и отправляет на рассмотрение совета: Подробнее... | |
| void | capital::authpgprp (eosio::name coopname, checksum256 property_hash, document2 decision) |
| Авторизует предложение по программному имущественному взносу советом Авторизует предложение по программному имущественному взносу советом: Подробнее... | |
| void | capital::createpgprp (eosio::name coopname, eosio::name username, checksum256 property_hash, eosio::asset property_amount, std::string property_description, document2 statement) |
| Создает предложение по программному имущественному взносу Создает предложение по программному имущественному взносу и отправляет на одобрение: Подробнее... | |
| void | capital::declinepgprp (eosio::name coopname, eosio::name username, checksum256 property_hash, std::string reason) |
| Отклоняет предложение по программному имущественному взносу Отклоняет предложение по программному имущественному взносу и удаляет его из базы: Подробнее... | |
| void | capital::approvepjprp (eosio::name coopname, eosio::name username, checksum256 property_hash, document2 empty_document) |
| Принимает предложение по имущественному взносу в проект Принимает предложение по имущественному взносу и обрабатывает связанные операции: Подробнее... | |
| void | capital::createpjprp (eosio::name coopname, eosio::name username, checksum256 project_hash, checksum256 property_hash, eosio::asset property_amount, std::string property_description) |
| Создает предложение по имущественному взносу в проект Создает предложение по имущественному взносу в проект и отправляет на одобрение: Подробнее... | |
| void | capital::declinepjprp (eosio::name coopname, eosio::name username, checksum256 property_hash, std::string reason) |
| Отклоняет предложение по имущественному взносу в проект Отклоняет предложение по имущественному взносу и удаляет его из базы: Подробнее... | |
| void | capital::purgesegment (eosio::name coopname, eosio::name username, checksum256 project_hash) |
| Очистка сегмента чистого инвестора Подробнее... | |
| void | capital::approverslt (eosio::name coopname, eosio::name username, checksum256 result_hash, document2 approved_statement) |
| Одобряет результат участника председателем Одобряет результат участника и отправляет в совет: Подробнее... | |
| void | capital::authrslt (eosio::name coopname, checksum256 result_hash, document2 decision) |
| Авторизует результат участника советом Авторизует результат участника советом: Подробнее... | |
| void | capital::convertsegm (eosio::name coopname, eosio::name username, checksum256 project_hash, checksum256 result_hash, asset wallet_amount, asset capital_amount, document2 convert_statement) |
Конвертация сегмента — финальная фаза процесса внесения РИД (p.cap.rid). Подробнее... | |
| void | capital::declrslt (eosio::name coopname, checksum256 result_hash, std::string reason) |
| Отклоняет результат участника советом Отклоняет результат участника советом и возвращает статус сегмента: Подробнее... | |
| void | capital::pushrslt (name coopname, name username, checksum256 project_hash, checksum256 result_hash, eosio::asset contribution_amount, eosio::asset debt_amount, document2 statement, std::vector< checksum256 > debt_hashes) |
| Вносит результат участника в проект Вносит результат участника в завершенный проект с обработкой долгов и обновлением долей: Подробнее... | |
| void | capital::signact1 (eosio::name coopname, eosio::name username, checksum256 result_hash, document2 act) |
| Подписывает акт 1 по результату участника Подписывает первый акт по результату участника: Подробнее... | |
| void | capital::signact2 (eosio::name coopname, eosio::name chairman, checksum256 result_hash, document2 act) |
Подписывает акт 2 по результату участника Подписывает второй акт председателем и фиксирует приём РИД в паевой фонд (фаза процесса p.cap.rid, после которой пайщик может вызвать convertsegm): Подробнее... | |
| void | capital::calcvotes (name coopname, name username, checksum256 project_hash) |
| Завершение голосования для конкретного участника по методу Водянова Рассчитывает полные итоговые суммы участника включая: Подробнее... | |
| void | capital::submitvote (name coopname, name voter, checksum256 project_hash, std::vector< Capital::vote_input > votes) |
| Подает голос по методу Водянова Участник распределяет общую голосующую сумму между остальными участниками: Подробнее... | |
| void capital::act1pgprp | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| checksum256 | property_hash, | ||
| document2 | act | ||
| ) |
Подписывает акт 1 по программному имущественному взносу Подписывает первый акт по программному имущественному взносу участником:
| coopname | Наименование кооператива |
| username | Наименование пользователя-участника |
| property_hash | Хеш программного имущественного взноса |
| act | Документ акта 1 |
coopname | void capital::act2pgprp | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| checksum256 | property_hash, | ||
| document2 | act | ||
| ) |
Подписывает акт 2 по программному имущественному взносу и зачисляет в программу благороста Подписывает второй акт председателем и зачисляет имущество в программу благороста:
| coopname | Наименование кооператива |
| username | Наименование пользователя-председателя |
| property_hash | Хеш программного имущественного взноса |
| act | Документ акта 2 |
coopname | void capital::addauthor | ( | name | coopname, |
| checksum256 | project_hash, | ||
| name | author | ||
| ) |
Добавляет автора проекта Добавляет нового автора к проекту с авторскими долями:
| coopname | Наименование кооператива |
| project_hash | Хеш проекта |
| author | Наименование пользователя-автора |
coopname | void capital::allocate | ( | eosio::name | coopname, |
| checksum256 | project_hash, | ||
| eosio::asset | amount | ||
| ) |
Аллоцирует программные инвестиции в проект Аллоцирует средства из глобального пула программных инвестиций в проект:
| coopname | Наименование кооператива |
| project_hash | Хеш проекта для аллокации |
| amount | Сумма для аллокации |
coopname | void capital::approvecmmt | ( | eosio::name | coopname, |
| eosio::name | master, | ||
| checksum256 | commit_hash | ||
| ) |
Одобряет коммит в проект Одобряет коммит от мастера проекта и обрабатывает все связанные операции:
| coopname | Наименование кооператива |
| username | Наименование пользователя, одобрившего коммит |
| master | Мастер проекта, одобряющий коммит |
| commit_hash | Хеш коммита для одобрения |
coopname | void capital::approvedebt | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| checksum256 | debt_hash, | ||
| document2 | approved_statement | ||
| ) |
Одобряет долг в проекте Одобряет долг в проекте и создает повестку в совете:
| coopname | Наименование кооператива |
| username | Наименование пользователя, одобрившего долг |
| debt_hash | Хеш долга для одобрения |
| approved_statement | Одобренное заявление о долге |
| void capital::approveexpns | ( | name | coopname, |
| name | approver, | ||
| checksum256 | expense_hash, | ||
| document2 | approved_statement | ||
| ) |
Одобряет расход в проекте Одобряет расход в проекте и отправляет в совет:
| coopname | Наименование кооператива |
| approver | Наименование пользователя-одобряющего |
| expense_hash | Хеш расхода для одобрения |
| approved_statement | Одобренное заявление о расходе |
coopname | void capital::approvepgprp | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| checksum256 | property_hash, | ||
| document2 | approved_statement | ||
| ) |
Принимает предложение по программному имущественному взносу председателем Принимает предложение по программному имущественному взносу и отправляет на рассмотрение совета:
| coopname | Наименование кооператива |
| username | Наименование пользователя, одобрившего программный имущественный взнос |
| property_hash | Хеш программного имущественного взноса для принятия |
| approved_statement | Одобренное заявление председателя |
| void capital::approvepjprp | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| checksum256 | property_hash, | ||
| document2 | empty_document | ||
| ) |
Принимает предложение по имущественному взносу в проект Принимает предложение по имущественному взносу и обрабатывает связанные операции:
| coopname | Наименование кооператива |
| username | Наименование пользователя, одобрившего имущественный взнос |
| property_hash | Хеш имущественного взноса для принятия |
| empty_document | Пустой документ (не используется) |
| void capital::approvereg | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| checksum256 | contributor_hash, | ||
| document2 | contract | ||
| ) |
Принимает принятый председателем договор УХД и активирует участника по нему Активирует пайщика в системе кооператива после одобрения договора УХД:
| coopname | Имя кооператива |
| username | Наименование пользователя, одобрившего регистрацию |
| contributor_hash | Хэш контрибьютора |
| contract | Договор УХД |
| void capital::approverslt | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| checksum256 | result_hash, | ||
| document2 | approved_statement | ||
| ) |
Одобряет результат участника председателем Одобряет результат участника и отправляет в совет:
| coopname | Наименование кооператива |
| username | Наименование пользователя, одобрившего результат |
| result_hash | Хеш результата для одобрения |
| approved_statement | Одобренное заявление о результате |
| void capital::approvewthd3 | ( | name | coopname, |
| name | approver, | ||
| checksum256 | withdraw_hash, | ||
| document2 | approved_return_statement | ||
| ) |
Одобряет заявку на возврат из программы благороста Одобряет заявку на возврат из программы благороста и отправляет в совет:
| coopname | Наименование кооператива |
| approver | Наименование пользователя-одобряющего |
| withdraw_hash | Хеш заявки на возврат для одобрения |
| approved_return_statement | Одобренное заявление о возврате |
coopname | void capital::authpgprp | ( | eosio::name | coopname, |
| checksum256 | property_hash, | ||
| document2 | decision | ||
| ) |
Авторизует предложение по программному имущественному взносу советом Авторизует предложение по программному имущественному взносу советом:
| coopname | Наименование кооператива |
| property_hash | Хеш программного имущественного взноса для авторизации |
| decision | Документ решения совета |
_soviet | void capital::authrslt | ( | eosio::name | coopname, |
| checksum256 | result_hash, | ||
| document2 | decision | ||
| ) |
Авторизует результат участника советом Авторизует результат участника советом:
| coopname | Наименование кооператива |
| result_hash | Хеш результата для авторизации |
| decision | Документ решения совета |
_soviet | void capital::calcvotes | ( | name | coopname, |
| name | username, | ||
| checksum256 | project_hash | ||
| ) |
Завершение голосования для конкретного участника по методу Водянова Рассчитывает полные итоговые суммы участника включая:
| coopname | Наименование кооператива |
| username | Наименование пользователя-участника голосования |
| project_hash | Хеш проекта для которого завершается голосование |
coopname | void capital::capauthexpns | ( | eosio::name | coopname, |
| checksum256 | expense_hash, | ||
| document2 | authorization | ||
| ) |
Авторизует расход в проекте советом Авторизует расход в проекте советом и создает исходящий платеж:
| coopname | Наименование кооператива |
| expense_hash | Хеш расхода для авторизации |
| authorization | Документ авторизации совета |
_soviet | void capital::capauthwthd3 | ( | eosio::name | coopname, |
| checksum256 | withdraw_hash, | ||
| document2 | authorization | ||
| ) |
Авторизует возврат из программы благороста советом Авторизует возврат из программы благороста советом и выполняет операции с балансами:
| coopname | Наименование кооператива |
| withdraw_hash | Хеш заявки на возврат для авторизации |
| authorization | Документ авторизации совета |
_soviet | void capital::capdeclexpns | ( | eosio::name | coopname, |
| checksum256 | expense_hash | ||
| ) |
Отклоняет расход в проекте советом Отклоняет расход в проекте советом и возвращает средства в пул:
| coopname | Наименование кооператива |
| expense_hash | Хеш расхода для отклонения |
_soviet | void capital::capdeclwthd3 | ( | name | coopname, |
| checksum256 | withdraw_hash, | ||
| std::string | reason | ||
| ) |
Отклоняет возврат из программы благороста советом Отклоняет возврат из программы благороста советом и возвращает средства:
| coopname | Наименование кооператива |
| withdraw_hash | Хеш заявки на возврат для отклонения |
| reason | Причина отклонения возврата |
_soviet | void capital::closeproject | ( | name | coopname, |
| checksum256 | project_hash | ||
| ) |
Закрывает проект от приёма инвестиций Переводит проект в статус закрытого для приема инвестиций:
| coopname | Наименование кооператива |
| project_hash | Хеш проекта для закрытия |
coopname | void capital::cmpltvoting | ( | name | coopname, |
| checksum256 | project_hash | ||
| ) |
Завершает голосование Завершает процесс голосования и переводит проект в завершенный статус:
| coopname | Наименование кооператива |
| project_hash | Хеш проекта для завершения голосования |
coopname | void capital::convertsegm | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| checksum256 | project_hash, | ||
| checksum256 | result_hash, | ||
| asset | wallet_amount, | ||
| asset | capital_amount, | ||
| document2 | convert_statement | ||
| ) |
Конвертация сегмента — финальная фаза процесса внесения РИД (p.cap.rid).
Внесение РИД состоит из трёх ончейн-фаз, объединённых одним result_hash:
pushrslt — заявление + закрытие долга (статус STATEMENT/ACT1).signact2 — председатель подписывает акт-2: ACCEPT_RID (Dr 04 / Cr 08), REPAY (если был долг). Сегмент → CONTRIBUTED, результат → ACT2.convertsegm (этот action) — пайщик распределяет накопленный available_for_program между ЦК (SHARE_FUND_PAY) и ЦПП «Благорост» (BLAGOROST_FUND), кошельковое движение уже без бухпроводок (Dr/Cr закрыто в ACCEPT_RID). После конвертации сегмент удаляется, результат удаляется.Семантика проверок:
CONTRIBUTED, актуален (rfrshsegment);ACT2 (анкер процесса).| coopname | Наименование кооператива |
| username | Наименование пользователя-участника |
| project_hash | Хеш проекта |
| result_hash | Хеш результата (анкер процесса p.cap.rid) |
| wallet_amount | Сумма для конвертации в кошелек |
| capital_amount | Сумма для конвертации в капитал |
| convert_statement | Заявление о конвертации |
coopname | void capital::createcmmt | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| checksum256 | project_hash, | ||
| checksum256 | commit_hash, | ||
| uint64_t | creator_hours, | ||
| std::string | description, | ||
| std::string | meta | ||
| ) |
Создает коммит в проект Создает коммит с затраченным временем создателя и отправляет на одобрение:
| coopname | Наименование кооператива |
| username | Наименование пользователя-создателя |
| project_hash | Хеш проекта |
| commit_hash | Хеш коммита |
| creator_hours | Количество часов создателя |
| description | Описание коммита |
| meta | Метаданные коммита |
coopname | void capital::createdebt | ( | name | coopname, |
| name | username, | ||
| checksum256 | project_hash, | ||
| checksum256 | debt_hash, | ||
| asset | amount, | ||
| time_point_sec | repaid_at, | ||
| document2 | statement | ||
| ) |
Создает долг в проекте Создает долг в проекте с проверкой доступности средств и отправляет на одобрение:
| coopname | Наименование кооператива |
| username | Наименование пользователя-заемщика |
| project_hash | Хеш проекта |
| debt_hash | Хеш долга |
| amount | Сумма долга |
| repaid_at | Дата погашения долга |
| statement | Заявление о долге |
coopname | void capital::createexpnse | ( | eosio::name | coopname, |
| checksum256 | expense_hash, | ||
| checksum256 | project_hash, | ||
| name | creator, | ||
| asset | amount, | ||
| std::string | description, | ||
| document2 | statement | ||
| ) |
Создает расход в проекте Создает расход в проекте с резервированием средств:
| coopname | Наименование кооператива |
| expense_hash | Хеш расхода |
| project_hash | Хеш проекта |
| creator | Наименование пользователя-создателя расхода |
| amount | Сумма расхода |
| description | Описание расхода |
| statement | Заявление о расходе |
coopname | void capital::createinvest | ( | name | coopname, |
| name | username, | ||
| checksum256 | project_hash, | ||
| checksum256 | invest_hash, | ||
| asset | amount, | ||
| document2 | statement | ||
| ) |
Создает инвестицию в проект Создает инвестицию в проект и проводит все связанные операции:
| coopname | Наименование кооператива |
| username | Наименование пользователя-инвестора |
| project_hash | Хеш проекта для инвестиции |
| invest_hash | Хеш инвестиции |
| amount | Сумма инвестиции |
| statement | Заявление об инвестиции |
coopname | void capital::createpgexp | ( | name | coopname, |
| checksum256 | expense_hash, | ||
| name | creator, | ||
| std::vector< ExpenseDomain::item > | items, | ||
| std::string | description, | ||
| document2 | statement | ||
| ) |
Инициировать программный расход через шасси expense. Резервирует amount в program_expense_pool, создаёт запись progexpense, шлёт inline action expense::createexp с callback={capital, onpgexpdone}. Шасси обслуживает весь flow (auth/pay/report/close|decline) и шлёт callback.
Инициировать программный расход через шасси expense.
items[] — позиции СЗ (см. ExpenseDomain::item); механика оплаты per-item (item.mechanics: ADVANCE — аванс, DIRECT — прямая оплата).
capital — только инициатор. Резервирует средства в program_expense_pool, создаёт скелет записи progexpense (status=CREATED, как маркер pending), затем шлёт inline action expense::createexp(...) с callback handler {capital, onpgexpdone}. Шасси expense обслуживает весь дальнейший flow (авторизация совета, выдача аванса, отчёт, закрытие либо отклонение) и на терминальном переходе шлёт inline onpgexpdone.
| coopname | Кооператив |
| expense_hash | Хеш расхода (= proposal_hash в шасси) |
| creator | Инициатор расхода |
| items | Позиции СЗ (см. ExpenseDomain::item); механика оплаты per-item |
| description | Описание для отчётности |
| statement | Документ-заявление (ProgramExpenseStatement) |
coopname. | void capital::createpgprp | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| checksum256 | property_hash, | ||
| eosio::asset | property_amount, | ||
| std::string | property_description, | ||
| document2 | statement | ||
| ) |
Создает предложение по программному имущественному взносу Создает предложение по программному имущественному взносу и отправляет на одобрение:
| coopname | Наименование кооператива |
| username | Наименование пользователя-участника |
| property_hash | Хеш программного имущественного взноса |
| property_amount | Стоимость имущества |
| property_description | Описание имущества |
| statement | Заявление об имущественном взносе |
coopname | void capital::createpinv | ( | name | coopname, |
| name | username, | ||
| checksum256 | invest_hash, | ||
| asset | amount, | ||
| document2 | statement | ||
| ) |
Создаёт и сразу принимает программную инвестицию В одной транзакции проверяет заявление, списывает сумму с доступного остатка главного кошелька, зачисляет её на кошелёк программы благороста (заблокировано), увеличивает пул доступных программных инвестиций и накопительный показатель инвестора contributed_as_investor у контрибьютора. Отдельное одобрение совета (ранее apprvpinv) и отклонение (declpinv) не используются.
| coopname | Наименование кооператива |
| username | Наименование пользователя-инвестора |
| invest_hash | Хеш программной инвестиции |
| amount | Сумма инвестиции |
| statement | Заявление об инвестиции |
coopname | void capital::createpjprp | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| checksum256 | project_hash, | ||
| checksum256 | property_hash, | ||
| eosio::asset | property_amount, | ||
| std::string | property_description | ||
| ) |
Создает предложение по имущественному взносу в проект Создает предложение по имущественному взносу в проект и отправляет на одобрение:
| coopname | Наименование кооператива |
| username | Наименование пользователя-участника |
| project_hash | Хеш проекта |
| property_hash | Хеш имущественного взноса |
| property_amount | Стоимость имущества |
| property_description | Описание имущества |
coopname | void capital::createproj | ( | eosio::name | coopname, |
| checksum256 | project_hash, | ||
| checksum256 | parent_hash, | ||
| std::string | title, | ||
| std::string | description, | ||
| std::string | invite, | ||
| std::string | meta, | ||
| std::string | data | ||
| ) |
Создаёт проект Выполняет проверки и создает новый проект в системе кооператива:
| coopname | Имя кооператива (scope таблицы) |
| project_hash | Уникальный хэш проекта |
| parent_hash | Хэш родителя или пустой хэш, если проект корневой |
| title | Название проекта |
| description | Описание проекта |
| invite | Приглашение к проекту |
| meta | Дополнительные метаданные проекта |
| data | Данные/шаблон проекта |
coopname | void capital::createwthd3 | ( | name | coopname, |
| name | username, | ||
| checksum256 | withdraw_hash, | ||
| asset | amount, | ||
| document2 | return_statement | ||
| ) |
Создает заявку на возврат из программы благороста Создает заявку на возврат средств из программы благороста:
| coopname | Наименование кооператива |
| username | Наименование пользователя-участника |
| withdraw_hash | Хеш заявки на возврат |
| amount | Сумма возврата |
| return_statement | Заявление о возврате |
coopname | void capital::dclineappndx | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| checksum256 | appendix_hash, | ||
| std::string | reason | ||
| ) |
Отклоняет приложение к договору УХД Отклоняет приложение к договору УХД и удаляет его из базы:
| coopname | Наименование кооператива |
| username | Наименование пользователя, отклонившего приложение |
| appendix_hash | Хеш приложения к договору |
| reason | Причина отклонения приложения |
| void capital::debtauthcnfr | ( | eosio::name | coopname, |
| checksum256 | debt_hash, | ||
| document2 | decision | ||
| ) |
Авторизует долг в проекте советом Авторизует долг в проекте советом и создает исходящий платеж:
| coopname | Наименование кооператива |
| debt_hash | Хеш долга для авторизации |
| decision | Документ решения совета |
_soviet | void capital::debtpaycnfrm | ( | name | coopname, |
| checksum256 | debt_hash | ||
| ) |
Подтверждает оплату выданной ссуды. Подтверждает оплату выданной ссуды и переводит долг в статус PAID:
| coopname | Наименование кооператива |
| debt_hash | Хеш-идентификатор ссуды для подтверждения оплаты |
_gateway | void capital::debtpaydcln | ( | name | coopname, |
| checksum256 | debt_hash, | ||
| std::string | reason | ||
| ) |
Отклоняет оплату долга Отклоняет оплату долга и удаляет его из базы данных:
| coopname | Наименование кооператива |
| debt_hash | Хеш долга для отклонения оплаты |
| reason | Причина отклонения оплаты долга |
_gateway | void capital::declinecmmt | ( | eosio::name | coopname, |
| eosio::name | master, | ||
| checksum256 | commit_hash, | ||
| std::string | reason | ||
| ) |
Отклоняет коммит в проект Отклоняет коммит от мастера проекта и удаляет его из базы данных:
| coopname | Наименование кооператива |
| master | Мастер проекта, отклоняющий коммит |
| commit_hash | Хеш коммита для отклонения |
| reason | Причина отклонения коммита |
coopname | void capital::declinedebt | ( | name | coopname, |
| eosio::name | username, | ||
| checksum256 | debt_hash, | ||
| std::string | reason | ||
| ) |
Отклоняет долг в проекте Отклоняет долг в проекте и восстанавливает доступные средства:
| coopname | Наименование кооператива |
| username | Наименование пользователя, отклонившего долг |
| debt_hash | Хеш долга для отклонения |
| reason | Причина отклонения долга |
| void capital::declinepgprp | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| checksum256 | property_hash, | ||
| std::string | reason | ||
| ) |
Отклоняет предложение по программному имущественному взносу Отклоняет предложение по программному имущественному взносу и удаляет его из базы:
| coopname | Наименование кооператива |
| username | Наименование пользователя, отклонившего программный имущественный взнос |
| property_hash | Хеш программного имущественного взноса для отклонения |
| reason | Причина отклонения предложения |
| void capital::declinepjprp | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| checksum256 | property_hash, | ||
| std::string | reason | ||
| ) |
Отклоняет предложение по имущественному взносу в проект Отклоняет предложение по имущественному взносу и удаляет его из базы:
| coopname | Наименование кооператива |
| username | Наименование пользователя, отклонившего имущественный взнос |
| property_hash | Хеш имущественного взноса для отклонения |
| reason | Причина отклонения предложения |
| void capital::declinereg | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| checksum256 | contributor_hash, | ||
| std::string | reason | ||
| ) |
Отклоняет председателем договор УХД и удаляет участника из базы Отклоняет регистрацию участника и удаляет его из системы кооператива:
| coopname | Имя кооператива |
| username | Наименование пользователя, отклонившего регистрацию |
| contributor_hash | Хэш контрибьютора |
| reason | Причина отклонения |
| void capital::declrslt | ( | eosio::name | coopname, |
| checksum256 | result_hash, | ||
| std::string | reason | ||
| ) |
Отклоняет результат участника советом Отклоняет результат участника советом и возвращает статус сегмента:
| coopname | Наименование кооператива |
| result_hash | Хеш результата для отклонения |
| reason | Причина отклонения |
_soviet | void capital::delproject | ( | name | coopname, |
| checksum256 | project_hash | ||
| ) |
Удаляет проект Удаляет проект из системы кооператива:
| coopname | Наименование кооператива |
| project_hash | Хеш проекта для удаления |
coopname | void capital::diallocate | ( | eosio::name | coopname, |
| checksum256 | project_hash, | ||
| eosio::asset | amount | ||
| ) |
Возвращает аллоцированные программные средства из проекта в глобальный пул программы
Обратная операция к capital::allocate. Кооператив может передумать и забрать из проекта ранее аллоцированные средства — целиком или частично, не дожидаясь завершения проекта.
Что делает:
Историческая справка: до этой версии action требовал статус pending и возвращал средства только при use_invest_percent > 100. Такое значение недостижимо — обе функции расчёта коэффициента жёстко ограничивают его сотней (coefficient_percent > 100.0 ? 100.0 : coefficient_percent). Действие проходило проверки и молча не возвращало ничего.
| coopname | Наименование кооператива |
| project_hash | Хеш проекта для деаллокации |
| amount | Сумма для возврата в глобальный пул программы |
coopname | void capital::editcontrib | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| eosio::asset | rate_per_hour, | ||
| uint64_t | hours_per_day | ||
| ) |
Редактирование параметров участника Обновляет поля hours_per_day и about для существующего участника
| coopname | Наименование кооператива |
| username | Наименование пользователя-участника |
| hours_per_day | Количество часов в день |
| about | Информация о себе |
coopname | void capital::editproj | ( | eosio::name | coopname, |
| checksum256 | project_hash, | ||
| std::string | title, | ||
| std::string | description, | ||
| std::string | invite, | ||
| std::string | meta, | ||
| std::string | data | ||
| ) |
Редактирует проект Выполняет проверки и редактирует существующий проект в системе кооператива:
| coopname | Имя кооператива (scope таблицы) |
| project_hash | Уникальный хэш проекта для редактирования |
| title | Новое название проекта |
| description | Новое описание проекта |
| invite | Новое приглашение к проекту |
| meta | Новые метаданные проекта |
| data | Новые данные/шаблон проекта |
coopname | void capital::expandexpnss | ( | name | coopname, |
| checksum256 | project_hash, | ||
| asset | additional_expenses | ||
| ) |
Расширяет пул расходов проекта Увеличивает целевой размер пула расходов для активного проекта:
| coopname | Наименование кооператива |
| project_hash | Хеш проекта |
| additional_expenses | Дополнительные расходы для добавления |
coopname | void capital::exppaycnfrm | ( | eosio::name | coopname, |
| checksum256 | expense_hash | ||
| ) |
Подтверждает оплату расхода Подтверждает оплату расхода и завершает процесс:
| coopname | Наименование кооператива |
| expense_hash | Хеш расхода для подтверждения оплаты |
_gateway | void capital::finalizeproj | ( | name | coopname, |
| checksum256 | project_hash | ||
| ) |
Финализирует проект после завершения всех конвертаций Финализирует проект и передаёт все неиспользованные инвестиции в глобальный фонд:
Неиспользованные инвестиции включают:
| coopname | Наименование кооператива |
| project_hash | Хеш проекта для финализации |
coopname | void capital::fundprog | ( | eosio::name | coopname, |
| asset | amount, | ||
| std::string | memo | ||
| ) |
Финансирует программу благороста Финансирует программу благороста из внешних источников:
| coopname | Наименование кооператива |
| amount | Сумма финансирования |
| memo | Мемо для транзакции |
_soviet или _gateway | void capital::getclearance | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| checksum256 | project_hash, | ||
| checksum256 | appendix_hash, | ||
| document2 | document | ||
| ) |
Подписывает приложение к договору УХД для участия в проекте Создает приложение к договору УХД для участия пайщика в проекте:
| coopname | Наименование кооператива |
| username | Наименование пользователя-пайщика |
| project_hash | Хеш проекта для участия |
| appendix_hash | Хеш приложения к договору |
| document | Документ приложения к договору |
coopname | void capital::importcontrib | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| checksum256 | contributor_hash, | ||
| eosio::asset | contribution_amount, | ||
| std::string | memo | ||
| ) |
Импорт внешнего участника с автоматическим созданием записи и внесением взносов Создает запись участника в системе благороста для внешних участников кооператива:
| coopname | Наименование кооператива |
| username | Наименование импортируемого участника |
| contributor_hash | Уникальный хеш для идентификации участника |
| contribution_amount | Сумма первоначальных взносов в программу благороста |
| memo | Мемо для импортированных участников |
coopname | void capital::lvlnotify | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| uint32_t | prev_level, | ||
| uint32_t | new_level | ||
| ) |
Отправляет уведомление о переходе участника на новый уровень Inline action для уведомления системы о достижении участником нового уровня:
| coopname | Имя кооператива |
| username | Имя участника, достигшего нового уровня |
| prev_level | Предыдущий уровень участника |
| new_level | Новый уровень участника |
_capital (вызывается inline action) | void capital::onpgexpdone | ( | name | coopname, |
| checksum256 | expense_hash, | ||
| uint8_t | status, | ||
| eosio::asset | total_actual, | ||
| std::vector< char > | data | ||
| ) |
Callback от шасси expense на финализацию program-расхода. Шасси шлёт его inline (authority — _expense@active, require_auth(_expense)) после терминального перехода flow (CLOSED либо DECLINED).
Callback от шасси expense на финализацию program-расхода.
status == CLOSED → consume(total_actual) + release(остаток резерва); при total_actual > reserved (перерасход) превышение списывается напрямую из program_expense_pool. status == DECLINED → release(reserved); decline возможен только до оплат.
Шасси expense шлёт его inline (authority — _expense@active) когда закончило flow (closeexp или declexp). capital не делает ledger2-проводок — они уже сделаны шасси на payexp/reportexp/returnexp/overspendexp. capital только обновляет program_expense_pool и удаляет запись из progexpenses.
status == ExpenseDomain::ProposalStatus::CLOSED (4): total_actual <= reserved → consume(total_actual) + release(остаток); total_actual > reserved (был overspendexp) → consume(reserved) + прямое списание превышения из program_expense_pool. status == ExpenseDomain::ProposalStatus::DECLINED (5): release(reserved); decline возможен только до оплат (total_actual == 0).
| coopname | Кооператив |
| expense_hash | Хеш расхода (ключ в progexpenses) |
| status | ExpenseDomain::ProposalStatus |
| total_actual | Фактически потраченная сумма |
| data | Произвольный payload от инициатора (не используется на MVP) |
_expense — inline-callback шасси. | void capital::openproject | ( | name | coopname, |
| checksum256 | project_hash | ||
| ) |
Открывает проект на приём инвестиций Переводит проект в статус открытого для приема инвестиций:
| coopname | Наименование кооператива |
| project_hash | Хеш проекта для открытия |
coopname | void capital::purgesegment | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| checksum256 | project_hash | ||
| ) |
Очистка сегмента чистого инвестора
Метод для очистки сегмента чистого инвестора после завершения проекта.
Логика работы:
ВАЖНО: Этот метод НЕ выполняет операции с балансами. Средства инвестора уже находятся в _capital_program (благорост) с момента инвестирования. Метод только удаляет запись о сегменте из таблицы.
| coopname | Наименование кооператива |
| username | Наименование пользователя-участника |
| project_hash | Хеш проекта |
coopname | void capital::pushrslt | ( | name | coopname, |
| name | username, | ||
| checksum256 | project_hash, | ||
| checksum256 | result_hash, | ||
| eosio::asset | contribution_amount, | ||
| eosio::asset | debt_amount, | ||
| document2 | statement, | ||
| std::vector< checksum256 > | debt_hashes = {} |
||
| ) |
Вносит результат участника в проект Вносит результат участника в завершенный проект с обработкой долгов и обновлением долей:
| coopname | Наименование кооператива |
| username | Наименование пользователя-участника |
| project_hash | Хеш проекта |
| result_hash | Хеш результата |
| contribution_amount | Сумма взноса в результат (БЕЗ инвестиционной части для инвесторов) |
| debt_amount | Сумма долга для погашения |
| statement | Заявление о результате |
| debt_hashes | Вектор хэшей долгов для погашения (опционально) |
coopname
|
static |
Миграция контракта capital — восстановление инварианта сумм голосования у проекта, поставленного на голосование до исправления расчёта.
Контекст: calculate_voting_amounts считал equal_voting_amount независимым делением пула на число голосующих и добавлял к нему весь остаток от деления. При остатке >= 2 сумма active_voting_amount + equal_voting_amount выходила больше total_voting_pool, и submitvote отбивал любой голос проверкой «(Общая сумма голосов + Равная не голосующая сумма) должны равняться сумме на распределении». Расчёт исправлен, но у проекта, уже стоящего на голосовании, суммы записаны в таблицу, а пересчитать их нечем: пересчёт живёт в startvoting, который требует статус active, а обратного перехода из voting в active в контракте нет.
Действие: у проекта kBrokenVotingProjectId в кооперативе kBrokenVotingCoopname привести equal_voting_amount к остатку пула после активной части — ровно то, что теперь считает calculate_voting_amounts. Остальные поля сумм верны и не трогаются.
Идемпотентно: повторный вызов после успешного прогона — no-op (пишем только при расхождении). На окружениях, где такого проекта нет, — no-op. Вызывается автоматически при деплое (playbooks/contracts/deploy-contract.yml).
Прежняя миграция (total_debt_amount в capital::projects) проведена на всех окружениях и удалена: действие миграции несёт только незакрытый переход, иначе оно копит уже отработавший код.
_capital Пересчёт уровней по исправленной шкале.
Прежнее начисление считалось один раз от требования стартового уровня, а накопленная энергия делилась на сотню линейно — коэффициент роста при перескоке не применялся вовсе. Из-за этого один крупный вклад поднимал на кратно большее число уровней: при базе 10 000 ₽ и коэффициенте 1.5 взнос в миллион давал сотню уровней вместо десяти.
Пересчёт прогоняет накопленные вклады участника через исправленную шкалу с нуля: сумма расходуется последовательно, требование каждого пройденного уровня списывается по своей — уже большей — величине. Идемпотентно: повторный прогон приводит к тому же значению и не пишет, если оно уже верное.
| void capital::refreshcontr | ( | eosio::name | coopname, |
| eosio::name | username | ||
| ) |
Обновляет энергию участника с учетом естественного снижения Применяет decay к энергии участника на основе прошедшего времени:
| coopname | Имя кооператива |
| username | Имя участника для обновления |
coopname | void capital::refreshprog | ( | name | coopname, |
| name | username | ||
| ) |
Обновляет CRPS пайщика в программе благороста Обновляет CRPS (систему вознаграждений программы) пайщика:
| coopname | Наименование кооператива |
| username | Наименование пользователя-пайщика |
coopname | void capital::regcontrib | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| checksum256 | contributor_hash, | ||
| eosio::asset | rate_per_hour, | ||
| uint64_t | hours_per_day, | ||
| bool | is_external_contract, | ||
| document2 | storage_agreement, | ||
| std::optional< document2 > | contract, | ||
| std::optional< document2 > | blagorost_agreement, | ||
| std::optional< document2 > | generator_agreement | ||
| ) |
Регистрация пайщика в контракте и получение договора УХД от него Создает нового пайщика в системе кооператива с указанными параметрами:
| coopname | Наименование кооператива |
| username | Наименование пользователя-пайщика |
| contributor_hash | Хеш пайщика для идентификации |
| rate_per_hour | Почасовая ставка пайщика |
| is_external_contract | Флаг внешнего договора |
| contract | Договор УХД пайщика |
| storage_agreement | Договор хранения Имущества |
| blagorost_agreement | Соглашение о присоединении к целевой потребительской программе "Благорост" (опционально) |
coopname | void capital::regshare | ( | name | coopname, |
| checksum256 | project_hash, | ||
| name | username, | ||
| eosio::asset | user_shares | ||
| ) |
Добавляет участника в проект через CRPS систему Добавляет участника в проект через систему CRPS с автоматическими проверками:
| coopname | Наименование кооператива |
| project_hash | Хеш проекта |
| username | Наименование пользователя-участника |
| user_shares | Баланс пользователя в целевой потребительской программе |
coopname (active) | void capital::returntopool | ( | name | coopname, |
| checksum256 | project_hash, | ||
| asset | amount | ||
| ) |
Возвращает неиспользованные инвестиции в глобальный пул программы Трекинговое действие для возврата неиспользованной дельты инвестиций:
| coopname | Наименование кооператива |
| project_hash | Хеш проекта, из которого возвращаются средства |
| amount | Сумма неиспользованных инвестиций для возврата |
_capital (inline action) | void capital::rfrshsegment | ( | name | coopname, |
| checksum256 | project_hash, | ||
| name | username | ||
| ) |
Обновляет сегмент участника через CRPS систему Обновляет сегмент участника проекта через систему CRPS:
| coopname | Наименование кооператива |
| project_hash | Хеш проекта |
| username | Наименование пользователя-участника |
coopname | void capital::setconfig | ( | name | coopname, |
| Capital::config | config | ||
| ) |
Устанавливает или обновляет конфигурацию контракта для кооператива.
Устанавливает конфигурацию кооператива Обновляет глобальное состояние контракта для указанного кооператива:
| coopname | Имя кооператива |
| config | Новая конфигурация кооператива |
coopname | void capital::setmaster | ( | name | coopname, |
| checksum256 | project_hash, | ||
| name | master | ||
| ) |
Устанавливает мастера проекта Назначает мастера для управления проектом:
| coopname | Наименование кооператива |
| project_hash | Хеш проекта |
| master | Наименование пользователя-мастера |
coopname | void capital::setplan | ( | name | coopname, |
| name | master, | ||
| checksum256 | project_hash, | ||
| uint64_t | plan_creators_hours, | ||
| asset | plan_expenses, | ||
| asset | plan_hour_cost | ||
| ) |
Устанавливает плановые показатели проекта Рассчитывает плановые пулы (себестоимости, премии, инвестиции, расходы) на основании входных параметров:
| coopname | Имя кооператива (scope таблицы) |
| master | Наименование мастера проекта |
| project_hash | Хэш проекта, для которого устанавливается план |
| plan_creators_hours | Планируемое время создателей в часах (> 0) |
| plan_expenses | Планируемый целевой размер пула расходов (asset) |
| plan_hour_cost | Планируемая стоимость часа создателя (asset) |
coopname | void capital::settledebt | ( | name | coopname, |
| name | username, | ||
| eosio::asset | amount, | ||
| document2 | statement | ||
| ) |
Погашает долг участника Погашает долг участника в системе кооператива:
| coopname | Наименование кооператива |
| username | Наименование пользователя-должника |
| amount | Сумма погашения долга |
| statement | Заявление о погашении долга |
coopname | void capital::signact1 | ( | eosio::name | coopname, |
| eosio::name | username, | ||
| checksum256 | result_hash, | ||
| document2 | act | ||
| ) |
Подписывает акт 1 по результату участника Подписывает первый акт по результату участника:
| coopname | Наименование кооператива |
| username | Наименование пользователя-участника |
| result_hash | Хеш результата |
| act | Документ акта 1 |
coopname | void capital::signact2 | ( | eosio::name | coopname, |
| eosio::name | chairman, | ||
| checksum256 | result_hash, | ||
| document2 | act | ||
| ) |
Подписывает акт 2 по результату участника Подписывает второй акт председателем и фиксирует приём РИД в паевой фонд (фаза процесса p.cap.rid, после которой пайщик может вызвать convertsegm):
| coopname | Наименование кооператива |
| username | Наименование пользователя-председателя |
| result_hash | Хеш результата |
| act | Документ акта 2 |
coopname | void capital::startproject | ( | name | coopname, |
| checksum256 | project_hash | ||
| ) |
Запускает проект на приём коммитов Переводит проект в активный статус для приема коммитов:
| coopname | Наименование кооператива |
| project_hash | Хеш проекта для запуска |
coopname | void capital::startvoting | ( | name | coopname, |
| checksum256 | project_hash | ||
| ) |
Завершает проект и начинает голосование Переводит проект в статус голосования и инициализирует процесс:
| coopname | Наименование кооператива |
| project_hash | Хеш проекта для начала голосования |
coopname | void capital::stopproject | ( | name | coopname, |
| checksum256 | project_hash | ||
| ) |
Останавливает проект Переводит проект из активного статуса обратно в статус ожидания:
| coopname | Наименование кооператива |
| project_hash | Хеш проекта для остановки |
coopname | void capital::submitvote | ( | name | coopname, |
| name | voter, | ||
| checksum256 | project_hash, | ||
| std::vector< Capital::vote_input > | votes | ||
| ) |
Подает голос по методу Водянова Участник распределяет общую голосующую сумму между остальными участниками:
| coopname | Наименование кооператива |
| voter | Наименование пользователя-голосующего |
| project_hash | Хеш проекта для голосования |
| votes | Вектор голосов для распределения |
coopname | void capital::topupprogexp | ( | name | coopname, |
| eosio::asset | amount | ||
| ) |
Пополняет пул программных расходов из общего инвестиционного пула программы.
Программные расходы — это целевые списания «Благорост», не аллоцированные ни в один проект (хозяйственные расходы программы, оплата инфраструктуры программы и т.п.). Прежде чем создавать запрос на программный расход, председатель пополняет дедикейтнутый пул program_expense_pool из общего global_available_invest_pool. Помимо счётчиков state наполняется КООПЕРАТИВНЫЙ ledger2-кошелёк PROGRAM_EXPENSE_POOL (w.cap.pgexp) — именно из него шасси expense оплачивает СЗ; личные L3-кошельки пайщиков (w.cap.blago) при расходах не изменяются.
| coopname | Кооператив (scope state) |
| amount | Сумма пополнения (символ строго совпадает с программой) |
coopname (председатель).