COOPENOMICS  v1
Кооперативная Экономика
table_apps_subs.hpp
См. документацию.
1#pragma once
2
3#include <eosio/eosio.hpp>
4#include <eosio/crypto.hpp>
5
6#include "../consts.hpp"
7#include "../core/utils.hpp"
8
9namespace Apps {
10
11using namespace eosio;
12
47struct [[eosio::table, eosio::contract(APPS)]] sub {
48 uint64_t id;
51 checksum256 chain_id;
52 name plan;
53 bool active;
54 time_point_sec start_at;
55 time_point_sec end_at;
56 time_point_sec created_at;
57 time_point_sec updated_at;
58
59 uint64_t primary_key() const { return id; }
60 uint128_t by_cooppkg() const { return ((uint128_t)coopname.value << 64) | package_id.value; }
61 uint64_t by_coop() const { return coopname.value; }
62 uint64_t by_expires() const { return end_at.sec_since_epoch(); }
63};
64
65typedef eosio::multi_index<
66 "subs"_n, sub,
67 eosio::indexed_by<"bycooppkg"_n, eosio::const_mem_fun<sub, uint128_t, &sub::by_cooppkg>>,
68 eosio::indexed_by<"bycoop"_n, eosio::const_mem_fun<sub, uint64_t, &sub::by_coop>>,
69 eosio::indexed_by<"byexpires"_n, eosio::const_mem_fun<sub, uint64_t, &sub::by_expires>>>
71
72} // namespace Apps
contract
Definition: eosio.msig_tests.cpp:977
Definition: apps.hpp:73
eosio::multi_index< "subs"_n, sub, eosio::indexed_by<"bycooppkg"_n, eosio::const_mem_fun< sub, uint128_t, &sub::by_cooppkg > >, eosio::indexed_by<"bycoop"_n, eosio::const_mem_fun< sub, uint64_t, &sub::by_coop > >, eosio::indexed_by<"byexpires"_n, eosio::const_mem_fun< sub, uint64_t, &sub::by_expires > > > subs_index
Definition: table_apps_subs.hpp:70
Definition: eosio.msig.hpp:34
Запись каталога: подписка кооператива на пакет.
Definition: table_apps_subs.hpp:47
bool active
Definition: table_apps_subs.hpp:53
uint64_t primary_key() const
Definition: table_apps_subs.hpp:59
uint64_t id
Definition: table_apps_subs.hpp:48
time_point_sec start_at
Definition: table_apps_subs.hpp:54
uint64_t by_expires() const
Definition: table_apps_subs.hpp:62
time_point_sec end_at
Definition: table_apps_subs.hpp:55
uint128_t by_cooppkg() const
Definition: table_apps_subs.hpp:60
name package_id
Definition: table_apps_subs.hpp:50
uint64_t by_coop() const
Definition: table_apps_subs.hpp:61
time_point_sec created_at
Definition: table_apps_subs.hpp:56
name plan
Definition: table_apps_subs.hpp:52
time_point_sec updated_at
Definition: table_apps_subs.hpp:57
checksum256 chain_id
Definition: table_apps_subs.hpp:51
name coopname
Definition: table_apps_subs.hpp:49