add cp event && smartroute helper fix

This commit is contained in:
owen05
2021-01-18 22:32:12 +08:00
parent 211b5e0172
commit 059778b27b
13 changed files with 201 additions and 88 deletions

View File

@@ -0,0 +1,46 @@
/*
Copyright 2020 DODO ZOO.
SPDX-License-Identifier: Apache-2.0
*/
pragma solidity 0.6.9;
pragma experimental ABIEncoderV2;
import {IDODOV1} from "../intf/IDODOV1.sol";
contract DODOV1PmmHelper {
struct PairDetail {
uint256 i;
uint256 K;
uint256 B;
uint256 Q;
uint256 B0;
uint256 Q0;
uint256 R;
uint256 lpFeeRate;
uint256 mtFeeRate;
address baseToken;
address quoteToken;
address curPair;
uint256 pairVersion;
}
function getPairDetail(address pool) external view returns (PairDetail[] memory res) {
res = new PairDetail[](1);
PairDetail memory curRes = PairDetail(0,0,0,0,0,0,0,0,0,address(0),address(0),pool,1);
curRes.i = IDODOV1(pool).getOraclePrice();
curRes.K = IDODOV1(pool)._K_();
curRes.B = IDODOV1(pool)._BASE_BALANCE_();
curRes.Q = IDODOV1(pool)._QUOTE_BALANCE_();
(curRes.B0,curRes.Q0) = IDODOV1(pool).getExpectedTarget();
curRes.R = IDODOV1(pool)._R_STATUS_();
curRes.lpFeeRate = IDODOV1(pool)._LP_FEE_RATE_();
curRes.mtFeeRate = IDODOV1(pool)._MT_FEE_RATE_();
curRes.baseToken = IDODOV1(pool)._BASE_TOKEN_();
curRes.quoteToken = IDODOV1(pool)._QUOTE_TOKEN_();
res[0] = curRes;
}
}

View File

@@ -27,6 +27,7 @@ contract DODOV2RouteHelper {
address baseToken;
address quoteToken;
address curPair;
uint256 pairVersion;
}
constructor(address dvmFactory,address dppFactory) public {
@@ -40,7 +41,7 @@ contract DODOV2RouteHelper {
uint256 len = baseToken0DVM.length + baseToken1DVM.length + baseToken0DPP.length + baseToken1DPP.length;
res = new PairDetail[](len);
for(uint8 i = 0; i < len; i++) {
PairDetail memory curRes = PairDetail(0,0,0,0,0,0,0,0,0,address(0),address(0),address(0));
PairDetail memory curRes = PairDetail(0,0,0,0,0,0,0,0,0,address(0),address(0),address(0),2);
address cur;
if(i < baseToken0DVM.length) {
cur = baseToken0DVM[i];