FirstTron第一波场智能合约系统源码开发及部署教程

Posted HuaDong7733

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了FirstTron第一波场智能合约系统源码开发及部署教程相关的知识,希望对你有一定的参考价值。

功能介绍

1:该系统源码包含了以下4个程序(FirstTron合约代码/前端代码/tronweb插件/后端管理代码)

2:前端主要功能有(用户邀约/新用户参与/奖励提取/好友列表等)

3:后端主要功能有(用户管理/财务管理/站点配置/可视化大数据展示)

提示:该系统源码支持二次开发,前端私人定制,合约功能修改。

安装流程

1:需要将FirstTion.sol合约文件部署至 TRONSCAN上,获取新的合约地址。

2:将Firsttron前端VUE代码种的合约地址替换成刚刚获取的新合约地址。(dist文件夹下面的APP.vue文件内)

3:将修改好的前端代码上传至服务器并做好伪静态配置(需要在imtoken等钱包内打开需要配置SSL证书)

4:后端文件执行xxx.xxx/install按照步骤安装即可。

合约代码

pragma solidity >=0.4.23;

import "./stop.sol";

import "./token_base.sol";

contract DSToken is DSTokenBase(0), DSStop {

    string  public  symbol;
    uint256  public  decimals = 18; // standard token precision. override to customize

    constructor(string symbol_) public {
        symbol = symbol_;
    }

    event Mint(address indexed guy, uint wad);
    event Burn(address indexed guy, uint wad);

    function approve(address guy) public stoppable returns (bool) {
        return super.approve(guy, uint(-1));
    }

    function approve(address guy, uint wad) public stoppable returns (bool) {
        return super.approve(guy, wad);
    }

    function transferFrom(address src, address dst, uint wad)
    public
    stoppable
    returns (bool)
    {
        if (src != msg.sender && _approvals[src][msg.sender] != uint(-1)) {
            require(_approvals[src][msg.sender] >= wad, "ds-token-insufficient-approval");
            _approvals[src][msg.sender] = sub(_approvals[src][msg.sender], wad);
        }

        require(_balances[src] >= wad, "ds-token-insufficient-balance");
        _balances[src] = sub(_balances[src], wad);
        _balances[dst] = add(_balances[dst], wad);

        emit Transfer(src, dst, wad);

        return true;
    }

    function push(address dst, uint wad) public {
        transferFrom(msg.sender, dst, wad);
    }
    function pull(address src, uint wad) public {
        transferFrom(src, msg.sender, wad);
    }
    function move(address src, address dst, uint wad) public {
        transferFrom(src, dst, wad);
    }

    function mint(uint wad) public {
        mint(msg.sender, wad);
    }
    function burn(uint wad) public {
        burn(msg.sender, wad);
    }
    function mint(address guy, uint wad) public auth stoppable {
        _balances[guy] = add(_balances[guy], wad);
        _supply = add(_supply, wad);
        emit Mint(guy, wad);
    }
    function burn(address guy, uint wad) public auth stoppable {
        if (guy != msg.sender && _approvals[guy][msg.sender] != uint(-1)) {
            require(_approvals[guy][msg.sender] >= wad, "ds-token-insufficient-approval");
            _approvals[guy][msg.sender] = sub(_approvals[guy][msg.sender], wad);
        }

        require(_balances[guy] >= wad, "ds-token-insufficient-balance");
        _balances[guy] = sub(_balances[guy], wad);
        _supply = sub(_supply, wad);
        emit Burn(guy, wad);
    }

    // Optional token name
    string   public  name = "";

    function setName(string name_) public auth {
        name = name_;
    }
    // Optional symbol name
    function setSymbol(string symbol_) public auth {
        symbol = symbol_;
    }
}

以上是关于FirstTron第一波场智能合约系统源码开发及部署教程的主要内容,如果未能解决你的问题,请参考以下文章

波场区块链智能合约DAPP交易系统开发需要了解那些?

手把手教你区块链java开发智能合约nft-第五篇(铸造第一个NFT)

精EOS智能合约:system系统合约源码分析

第116篇 部署可代理升级的智能合约

第87篇 多重签名智能合约(0.7.5)

第81篇 以太坊可信支付智能合约