add todo && smartSwap event update

This commit is contained in:
owen05
2020-11-20 11:05:41 +08:00
parent 93c2270076
commit 857e4fc01a
9 changed files with 30 additions and 10 deletions

View File

@@ -50,7 +50,9 @@ contract DPPVault is DPPStorage {
_checkStatus();
}
//TODO: Route queryfunc 以及 withdraw and reset
// todo 这里需要考虑怎么一个tx同时更新k i 和 fee并reset
//TODO: 修改feerate等
function reset() public onlyOwner {
_BASE_TARGET_ = _BASE_TOKEN_.balanceOf(address(this));
_QUOTE_TARGET_ = _QUOTE_TOKEN_.balanceOf(address(this));
@@ -67,6 +69,7 @@ contract DPPVault is DPPStorage {
// ============ Assets Transfer ============
//TODO确定Amount后内部调用
function withdraw(
address to,
uint256 baseAmount,

View File

@@ -31,6 +31,7 @@ contract DVMFunding is DVMVault {
}
// case 3. normal case
if (baseReserve > 0 && quoteReserve > 0) {
//TODO: (Route合约配合实现)
uint256 baseInputRatio = DecimalMath.divFloor(baseInput, baseReserve);
uint256 quoteInputRatio = DecimalMath.divFloor(quoteInput, quoteReserve);
uint256 mintRatio = baseInputRatio > quoteInputRatio ? quoteInputRatio : baseInputRatio;

View File

@@ -61,6 +61,7 @@ contract DVMStorage is InitializableOwnable, ReentrancyGuard {
// ============ Setting Functions ============
//TODO: owner权限问题论证
function setLpFeeRateModel(address newLpFeeRateModel) external onlyOwner {
_LP_FEE_RATE_MODEL_ = IFeeRateModel(newLpFeeRateModel);
}

View File

@@ -49,6 +49,7 @@ contract DVMTrader is DVMVault {
{
uint256 baseInput = getBaseInput();
uint256 mtFee;
//TODO:tx.origin 的潜在风险,直接写to
(receiveQuoteAmount, mtFee) = querySellBase(tx.origin, baseInput);
_transferQuoteOut(to, receiveQuoteAmount);
_transferQuoteOut(_MAINTAINER_, mtFee);

View File

@@ -39,6 +39,7 @@ contract DVMFactory is Ownable {
_DEFAULT_GAS_PRICE_SOURCE_ = defaultGasPriceSource;
}
function createStandardDODOVendingMachine(
address baseToken,
address quoteToken,
@@ -62,6 +63,9 @@ contract DVMFactory is Ownable {
k
);
//TODO: Create2
//TODO: DVM作为Mapping的字段维护自身属性
//TODO: 创建者索引便于my pool查询
_REGISTRY_[baseToken][quoteToken].push(newVendorMachine);
return newVendorMachine;
}

View File

@@ -36,7 +36,8 @@ contract SmartSwap is Ownable {
IERC20 indexed toToken,
address indexed sender,
uint256 fromAmount,
uint256 returnAmount
uint256 returnAmount,
uint256 timeStamp
);
event ExternalRecord(address indexed to, address indexed sender);
@@ -104,7 +105,7 @@ contract SmartSwap is Ownable {
require(returnAmount >= minReturnAmount, "DODO SmartSwap: Return amount is not enough");
toToken.universalTransfer(msg.sender, returnAmount);
emit OrderHistory(fromToken, toToken, msg.sender, fromTokenAmount, returnAmount);
emit OrderHistory(fromToken, toToken, msg.sender, fromTokenAmount, returnAmount, block.timestamp);
}
function externalSwap(
@@ -137,7 +138,7 @@ contract SmartSwap is Ownable {
require(returnAmount >= minReturnAmount, "DODO SmartSwap: Return amount is not enough");
toToken.universalTransfer(msg.sender, returnAmount);
emit OrderHistory(fromToken, toToken, msg.sender, fromTokenAmount, returnAmount);
emit OrderHistory(fromToken, toToken, msg.sender, fromTokenAmount, returnAmount, block.timestamp);
emit ExternalRecord(to, msg.sender);
}
}