From 4f146b29dffc8d115e4f173b0191e4a6c0384ff2 Mon Sep 17 00:00:00 2001 From: WeeklyTeen <119607086+WeeklyTeen@users.noreply.github.com> Date: Thu, 1 Dec 2022 22:56:33 +0800 Subject: [PATCH] update --- contracts/FT.sol | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/contracts/FT.sol b/contracts/FT.sol index b1c3ca0..838fcc1 100644 --- a/contracts/FT.sol +++ b/contracts/FT.sol @@ -2,20 +2,28 @@ pragma solidity ^0.8.0; import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; +import "@openzeppelin/contractscurity/Pausable.sol"; -contract FT is ERC20 { +contract FT is ERC20,Pausable { + address private owner; constructor(string memory name, string memory symbol) ERC20(name, symbol) { + owner = msg.sender; } // TODO 实现mint的权限控制,只有owner可以mint function mint(address account, uint256 amount) external { - + require(msg.sender == owner); + _mint(account,amount); } // TODO 用户只能燃烧自己的token function burn(uint256 amount) external { - + require(msg.sender == owner); + _burn(msg.sender,amount); } // TODO 加分项:实现transfer可以暂停的逻辑 + function transferStop(address account,uint256 amount) public whenNotPaused{ + _transfer(msg.sender,account,amount); + } }