Посетите проект на GitHub | Посетите проект Gitee.
В условиях ограниченных затрат общие результаты голосования имеют хорошую справочную ценность для прогнозирования будущих тенденций событий. В то же время технология блокчейн используется для того, чтобы избежать возможности вмешательства разработчиков в данные, обеспечить безопасность и надёжность данных голосования, а также повысить доверие к платформе.
Из-за международных сетевых ограничений невозможно напрямую использовать Infura для доступа к Dapp Ethereum, поэтому полный опыт платформы использует решение установки браузера MetaMask.
//Полный код см. в src/Solidity
contract Ballot{
struct Event{
uint ID;//ID события
address Sponsor;//Инициатор
string Content;//Содержание события
string[] Option;//Варианты события
address Reporter;//Отчётчик
uint StartDate;//Дата начала
uint Deadline;//Крайний срок
address [] Voters;//Участники голосования
uint PrizePool;//Призовой фонд
bool Report;//Статус отчёта по умолчанию false
uint Result;//Результат события, соответствующий индексу варианта по умолчанию 99
}
struct Player{
address Uesr;//Адрес пользователя
uint Balance;//Баланс пользователя
uint[] Created;//Созданные ID
uint[] Selected;//Выбранные ID
uint[] Report;//Требуемые отчёты ID
mapping(uint=>Option) OptionInfo;//Информация о каждом выбранном варианте события
}
struct Option{
bool Voted;//Состояние голосования за событие
uint Time; //Время голосования
uint Option;//Вариант события
uint Finance;//Сумма события
bool Reward;//Статус вознаграждения
}
struct Finance{
mapping(uint=>uint) Finance;//Соответствие суммы и варианта
}
struct Log{
uint Time;
uint ID;
string action;
int Change;
uint Balance;
}
Event[] Events;//Все события
mapping(uint=>Finance) EventFinance;//Соответствие событий и сумм
address[] ExistPlayers;//Все пользователи
mapping(address=>Player) Players;//Информация о пользователях
mapping(address=>Log[]) PlayerLogs;
}
Примечание: в VueCli 2.x публичные файлы размещаются в папке static, а в версиях VueCli 3.x их следует помещать в папку public, иначе Axios не сможет найти файлы. Проект использует VueCli 3.x.
npm install
npm run serve
npm run build
См. Справочник по конфигурации.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )