COOPENOMICS  v1
Кооперативная Экономика
registrator.hpp
См. документацию.
1#include <eosio/asset.hpp>
2#include <eosio/contract.hpp>
3#include <eosio/crypto.hpp>
4#include <eosio/eosio.hpp>
5#include <eosio/multi_index.hpp>
6#include <eosio/system.hpp>
7#include <eosio/time.hpp>
8
9#include "../lib/index.hpp"
10
53class [[eosio::contract(REGISTRATOR)]] registrator : public coop_contract
54{
55
56public:
57 registrator(eosio::name receiver, eosio::name code,
58 eosio::datastream<const char *> ds)
59 : coop_contract(receiver, code, ds) {}
60
61 [[eosio::action]] void init();
62 [[eosio::action]] void migrate();
64 [[eosio::action]] void cleanup();
65
66 [[eosio::action]] void updateaccnt(eosio::name username, eosio::name account_to_change, std::string meta);
67 [[eosio::action]] void updatecoop(eosio::name coopname, eosio::name username, eosio::asset initial, eosio::asset minimum, eosio::asset org_initial, eosio::asset org_minimum, std::string announce, std::string description);
68
69 [[eosio::action]] void reguser(eosio::name coopname, eosio::name braname, eosio::name username, eosio::name type, document2 statement, checksum256 registration_hash);
70
71 [[eosio::action]] void regcoop(eosio::name coopname, eosio::name username, org_data params, document2 document);
72 [[eosio::action]] void delcoop(eosio::name registrator, eosio::name coopname);
73 [[eosio::action]] void stcoopstatus(eosio::name coopname, eosio::name username, eosio::name status);
74
85 [[eosio::action]] void setoperator(eosio::name coopname, eosio::name operator_name);
86
92 [[eosio::action]] void deloperator(eosio::name coopname);
93
94 [[eosio::action]] void verificate(eosio::name username, eosio::name procedure);
95
101 [[eosio::action]] void verifyacc(eosio::name coopname, eosio::name braname, eosio::name verificator, eosio::name username, eosio::name procedure);
102
108 [[eosio::action]] void unverifyacc(eosio::name coopname, eosio::name chairman, eosio::name username, eosio::name procedure);
109
110 [[eosio::action]] void newaccount(
111 eosio::name coopname, eosio::name referer,
112 eosio::name username, eosio::public_key public_key, std::string meta);
113
114 [[eosio::action]] void adduser(
115 eosio::name coopname, eosio::name referer,
116 eosio::name username, eosio::name type , eosio::time_point_sec created_at,
117 eosio::asset initial, eosio::asset minimum, bool spread_initial, std::string meta,
118 checksum256 registration_hash);
119
120 [[eosio::action]] void changekey(eosio::name coopname, eosio::name changer, eosio::name username, eosio::public_key public_key);
121
122 [[eosio::action]] void confirmreg(eosio::name coopname, checksum256 registration_hash, document2 authorization);
123
124 // Выход пайщика из кооператива (возврат паевого взноса) — src/exit/*.cpp
125 [[eosio::action]] void exitcoop(eosio::name coopname, eosio::name username, checksum256 exit_hash, document2 statement);
126 [[eosio::action]] void confirmexit(eosio::name coopname, checksum256 exit_hash, document2 authorization);
127 [[eosio::action]] void completexit(eosio::name coopname, checksum256 exit_hash);
128 [[eosio::action]] void declinexit(eosio::name coopname, checksum256 exit_hash, std::string reason);
129 [[eosio::action]] void confirmpay(name coopname, checksum256 registration_hash);
130 [[eosio::action]] void declinepay(name coopname, checksum256 registration_hash, std::string reason);
131 [[eosio::action]] void declinereg(name coopname, checksum256 registration_hash, std::string reason);
132 [[eosio::action]] void refundpay(name coopname, checksum256 registration_hash);
133 [[eosio::action]] void declinerfnd(name coopname, checksum256 registration_hash, std::string reason);
134
135
136 [[eosio::action]] void createbranch(eosio::name coopname, eosio::name braname);
137
138 [[eosio::action]] void enabranches(eosio::name coopname);
139 [[eosio::action]] void disbranches(eosio::name coopname);
140
141 // Уменьшение счетчика активных пайщиков при блокировке
142 [[eosio::action]] void decparticpnt(eosio::name coopname, eosio::name username);
143
144};
Базовый класс контрактов платформы.
Definition: coop_contract.hpp:33
Класс registrator служит воротами в блокчейн-систему для новых участников, позволяя регистрировать ак...
Definition: registrator.hpp:54
registrator(eosio::name receiver, eosio::name code, eosio::datastream< const char * > ds)
Definition: registrator.hpp:57
#define REGISTRATOR
Definition: consts.hpp:151
action(permission_level{ _gateway, "active"_n}, _gateway, "adduser"_n, std::make_tuple(coopname, deposit->username, to_spread, to_circulation, eosio::current_time_point(), true)).send()
Definition: document_core.hpp:27
Definition: document_core.hpp:10
Definition: org_data.hpp:10