DAORoot

propose

Membuat pengajuan DAO baru.

function propose(
        uint32 answerId,
        TonAction[] tonActions,
        EthAction[] ethActions,
        string description
    ) override public

Parameter:

Nama
Jenis
Deskripsi

answerId

uint32

tonActions

TonAction[]

Daftar tindakan everscale

ethActions

EthAction[]

Daftar tindakan ethereum

description

string

Deskripsi pengajuan

deployProposal

Meluncurkan kontrak Pengajuan (membuat contoh kontrak Platform baru).

function deployProposal(
        uint32 nonce,
        address accountOwner,
        TvmCell proposalData
    ) override public onlyStakingAccount(accountOwner)onProposalDeployed
Nama
Jenis
Deskripsi

nonce

uint32

accountOwner

address

Alamat pemilik akun

proposalData

TvmCell

Informasi tentang pengajuan, termasuk id jawaban, deskripsi, daftar tindakan TON dan EVM

Acara yang dikeluarkan:

  • ProposalCreated

onProposalSucceeded

Metode panggilan kembali setelah pengajuan berhasil.

function onProposalSucceeded(
        uint32 proposalId,
        address proposer,
        TonAction[] tonActions,
        EthAction[] ethActions
    ) override public onlyProposal(proposalId)

Parameter:

Nama
Jenis
Deskripsi

proposalId

uint32

Id pengajuan

proposer

address

Alamat pembuat pengajuan

tonActions

TonAction[]

Daftar tindakan everscale

ethActions

EthAction[]

Daftar tindakan ethereum

Acara yang dikeluarkan:

  • ExecutingTonActions

executeTonAction

Melakukan transfer berdasarkan payload tindakan.

function executeTonAction(TonAction action) private pure inline

Parameter:

Nama
Jenis
Deskripsi

action

TonAction

Tindakan everscale untuk dijalankan

executeEthActions

Berdasarkan daftar tindakan mengisi data yang diperlukan, menambahkan tindakan ke chain tindakan, menuliskan kodenya ke data acara dan meluncurkan acara.

function executeEthActions(address proposer, EthAction[] actions) private view inline

Parameter:

Nama
Jenis
Deskripsi

proposer

address

Alamat pembuat pengajuan

actions

EthAction[]

Tindakan ethereum untuk dijalankan

calcTonActionsValue

Menghitung nilai total tindakan di Everscale.

function calcTonActionsValue(TonAction[] actions) public pure returns (uint128 totalValue)

Parameter:

Nama
Jenis
Deskripsi

actions

TonAction[]

Daftar tindakan untuk dihitung

Nilai hasil:

Nama
Jenis
Deskripsi

totalValue

uint128

Nilai total daftar tindakan

calcEthActionsValue

Menghitung nilai todal tindakan di Ethereum.

function calcEthActionsValue(
        EthAction[] actions
    ) public view returns (uint128 totalValue)

Parameter:

Nama
Jenis
Deskripsi

actions

EthAction[]

Daftar tindakan untuk dihitung

Nilai hasil:

Nama
Jenis
Deskripsi

totalValue

uint128

Nilai total daftar tindakan

_buildProposalInitialData Membangun data awal untuk Pengajuan

fungsi _buildProposalInitialData(uint32 proposalId) private inline pure returns (TvmCell)

Parameter:

Nama
Jenis
Deskripsi

proposalId

uint32

Id pengajuan

Nilai hasil:

Jenis
Deskripsi

TvmCell

Data awal pengajuan dalam format sel

_buildStakingAccountInitialData

Membangun data awal untuk akun Taruhan

function _buildStakingAccountInitialData(address accountOwner) private inline pure returns (TvmCell)

Parameter:

Nama
Jenis
Deskripsi

accountOwner

address

Alamat pemilik akun taruhan

Nilai hasil:

Jenis
Deskripsi

TvmCell

Data awal akun taruhan dalam format sel

_buildInitData

Membangun data awal untuk jenis Platform yang ditentukan.

function _buildInitData(PlatformType platformType, TvmCell initialData) private view returns (TvmCell)

Parameter:

Nama
Jenis
Deskripsi

platformType

PlatformType

Jenis platform

initialData

TvmCell

Data awal pengajuan dalam format sel

Nilai hasil:

Jenis
Deskripsi
Deskripsi

TvmCell

Data awal direpresentasikan dalam format sel

Jenis platform

requestUpgradeProposal

Membuat permintaan untuk meningkatkan pengajuan untuk versi berbeda.

function requestUpgradeProposal(
        uint16 currentVersion,
        address sendGasTo,
        uint32 proposalId
    ) override public onlyProposal(proposalId)

Parameter:

Nama
Jenis
Deskripsi

currentVersion

uint16

Versi pengajuan saat ini

sendGasTo

address

Alamat untuk mengirimkan bensin yang dikeluarkan

proposalId

uint32

Id pengajuan

setStakingRoot

Mengatur alamat root taruhan dari param dan mentransfer sisa bensin ke admin

function setStakingRoot(address newStakingRoot) override public onlyAdmin

Parameter:

Nama
Jenis
Deskripsi

newStakingRoot

address

Alamat root taruhan yang baru

Acara yang dikeluarkan:

  • StakingRootUpdated

transferAdmin

Mentransfer peran admin ke alamat lain.

function transferAdmin(address newAdmin) override public onlyAdmin

Parameter:

Nama
Jenis
Deskripsi

newAdmin

address

Alamat admin baru

Acara yang dikeluarkan:

  • AdminTransferAccepted

Last updated