Ballot and BallotsBox
Last updated
Last updated
BallotsBox is a public library used by the system to track and record the voting process and the voting results on specific motions.
The main members of the ballots box include the ballots and ballots box objects, as well as the ballot mapping which adopts the structure of "user number -> ballot" and the ballots box mapping which adopts the structure of "Attitude Number -> ballots box".
Attribute List of Ballot
acct
User number of voters.
attitude
Voting attitude. 1- Support, 2-Against, 3-Abstain.
head
The number of users delegated.
weight
The voting weight value delegated.
sigDate
voting date.
blocknumber
The block number of voting.
sigHash
Signature hash value (for the CID index number of the scanned copy of the written ballot uploaded to the IPFS network).
principals
The array of delegate user numbers of the voter.
Case is a query mapping formed by filtering and summarizing the ballot mapping by voting attitudes, where No. 0 case is a aggregated mapping of all voting attitudes.
sumOfHead
The aggregated number of delegate users.
sumOfWeight
The aggregated number of voting weights.
voters
The array of user numbers of the voters.
principals
The array of delegate user numbers of the voter.
Box
The query API well describes the function and usage of the ballots box in the whole system, as shown in the table below.
isVoted
Query whether the user with a specific number has voted on a specific numbered motion.
isVotedFor
Query whether the vote of a user with a specific number on a specific numbered motion is a specific attitude
getCaseOfAttitude
Get voting case of specific attitudes. No. 0 is a aggregated data of all votes.
getBallot
Get ballot objects of specific users.