4#include "../core/ram_payer.hpp"
6#include <eosio/eosio.hpp>
10#include "../consts.hpp"
82 return std::find(participants.begin(), participants.end(), username) != participants.end();
86typedef eosio::multi_index<
88 eosio::indexed_by<
"byhash"_n, eosio::const_mem_fun<coodecision, eosio::checksum256, &coodecision::by_hash>>>
118typedef eosio::multi_index<
120 eosio::indexed_by<
"bydecision"_n, eosio::const_mem_fun<coodecquest, uint64_t, &coodecquest::by_decision>>>
126 auto idx = decisions.get_index<
"byhash"_n>();
127 auto itr = idx.find(hash);
128 eosio::check(itr != idx.end(),
"Решение собрания не найдено");
135 auto by_dec = questions.get_index<
"bydecision"_n>();
136 auto itr = by_dec.lower_bound(decision_id);
137 while (itr != by_dec.end() && itr->decision_id == decision_id) {
138 itr = by_dec.erase(itr);
static constexpr eosio::name _branch
Definition: consts.hpp:181
contract
Definition: eosio.msig_tests.cpp:977
Definition: eosio.msig.hpp:34
Definition: table_branch_decisions.hpp:50
eosio::name coopname
Имя кооператива
Definition: table_branch_decisions.hpp:53
eosio::checksum256 by_hash() const
Definition: table_branch_decisions.hpp:79
bool is_participant(const eosio::name &username) const
Definition: table_branch_decisions.hpp:81
eosio::time_point_sec open_at
Начало голосования
Definition: table_branch_decisions.hpp:66
eosio::name initiator
Организатор собрания
Definition: table_branch_decisions.hpp:55
eosio::name status
opened | voting | approved | onapproval
Definition: table_branch_decisions.hpp:57
document2 protocol
Протокол решения (утверждает председатель)
Definition: table_branch_decisions.hpp:60
document2 liability
Договор о полной индивидуальной материальной ответственности председателя КУ (подписан председателем ...
Definition: table_branch_decisions.hpp:62
eosio::time_point_sec created_at
Дата создания
Definition: table_branch_decisions.hpp:74
document2 authority
Доверенность председателю КУ (подписана председателем участка, ждёт встречной подписи председателя со...
Definition: table_branch_decisions.hpp:63
eosio::name braname
Заранее сгенерированный аккаунт будущего КУ (createbranch)
Definition: table_branch_decisions.hpp:70
eosio::time_point_sec close_at
Плановое закрытие голосования
Definition: table_branch_decisions.hpp:67
uint64_t id
Идентификатор решения
Definition: table_branch_decisions.hpp:51
eosio::name type
Тип решения: "free" | "createbranch".
Definition: table_branch_decisions.hpp:54
std::vector< eosio::name > participants
Присоединившиеся участники собрания
Definition: table_branch_decisions.hpp:73
std::string address
Адрес привязки КУ (createbranch)
Definition: table_branch_decisions.hpp:71
document2 proposal
Подписанное предложение/повестка инициатора
Definition: table_branch_decisions.hpp:59
document2 petition
Заявление председателя в совет (для createbranch)
Definition: table_branch_decisions.hpp:61
uint64_t signed_ballots
Число поданных бюллетеней
Definition: table_branch_decisions.hpp:68
eosio::checksum256 hash
Якорь процесса (внешний идентификатор)
Definition: table_branch_decisions.hpp:52
eosio::name chairman
Председатель собрания — выбирается организатором из участников при открытии голосования (для createbr...
Definition: table_branch_decisions.hpp:56
document2 authorization
Решение совета (callback)
Definition: table_branch_decisions.hpp:64
uint64_t primary_key() const
Definition: table_branch_decisions.hpp:78
Definition: table_branch_decisions.hpp:96
std::vector< eosio::name > voters_for
Проголосовавшие за
Definition: table_branch_decisions.hpp:110
uint64_t by_decision() const
Definition: table_branch_decisions.hpp:115
std::string context
Контекст вопроса
Definition: table_branch_decisions.hpp:104
uint64_t counter_votes_against
Счётчик голосов против
Definition: table_branch_decisions.hpp:107
eosio::name coopname
Имя кооператива
Definition: table_branch_decisions.hpp:100
uint64_t counter_votes_for
Счётчик голосов за
Definition: table_branch_decisions.hpp:106
std::string decision
Проект решения по вопросу
Definition: table_branch_decisions.hpp:103
std::vector< eosio::name > voters_against
Проголосовавшие против
Definition: table_branch_decisions.hpp:111
uint64_t primary_key() const
Definition: table_branch_decisions.hpp:114
std::string title
Текст вопроса
Definition: table_branch_decisions.hpp:102
uint64_t id
Идентификатор вопроса
Definition: table_branch_decisions.hpp:97
uint64_t counter_votes_abstained
Счётчик воздержавшихся
Definition: table_branch_decisions.hpp:108
uint64_t number
Номер вопроса в повестке
Definition: table_branch_decisions.hpp:99
std::vector< eosio::name > voters_abstained
Воздержавшиеся
Definition: table_branch_decisions.hpp:112
uint64_t decision_id
Идентификатор решения
Definition: table_branch_decisions.hpp:98
Definition: table_registrator_orgs.hpp:17
Точка повестки дня собрания (вход действия createdec).
Definition: table_branch_decisions.hpp:33
std::string title
Текст вопроса
Definition: table_branch_decisions.hpp:34
std::string decision
Проект решения по вопросу
Definition: table_branch_decisions.hpp:35
std::string context
Контекст вопроса (может быть пустым)
Definition: table_branch_decisions.hpp:36
Голос участника по одному вопросу повестки (вход действия votedec).
Definition: table_branch_decisions.hpp:40
eosio::name vote
Голос: "for"_n | "against"_n | "abstained"_n.
Definition: table_branch_decisions.hpp:42
uint64_t question_id
Идентификатор вопроса
Definition: table_branch_decisions.hpp:41
Definition: document_core.hpp:27
eosio::multi_index< "decisions"_n, coodecision, eosio::indexed_by<"byhash"_n, eosio::const_mem_fun< coodecision, eosio::checksum256, &coodecision::by_hash > > > decision_index
Definition: table_branch_decisions.hpp:89
void erase_coodecquests(eosio::name coopname, uint64_t decision_id)
Удалить все вопросы повестки данного решения (при erase решения).
Definition: table_branch_decisions.hpp:133
static constexpr uint64_t MIN_DECISION_QUORUM
Минимальный кворум учредительного собрания (число подписанных бюллетеней).
Definition: table_branch_decisions.hpp:25
coodecision get_decision_or_fail(eosio::name coopname, eosio::checksum256 hash)
Получить решение по якорю или упасть.
Definition: table_branch_decisions.hpp:124
static constexpr uint32_t DECISION_VOTING_WINDOW_SECONDS
Definition: table_branch_decisions.hpp:30
RAM_PAYER_CLASS(coodecision, cooperative)
eosio::multi_index< "decisionq"_n, coodecquest, eosio::indexed_by<"bydecision"_n, eosio::const_mem_fun< coodecquest, uint64_t, &coodecquest::by_decision > > > coodecquest_index
Definition: table_branch_decisions.hpp:121