diff --git a/demo-contract/contracts/wtfswap/Pool.sol b/demo-contract/contracts/wtfswap/Pool.sol index 16167bc..bd8937b 100644 --- a/demo-contract/contracts/wtfswap/Pool.sol +++ b/demo-contract/contracts/wtfswap/Pool.sol @@ -61,10 +61,9 @@ contract Pool is IPool { function collect( address recipient ) external override returns (uint128 amount0, uint128 amount1) { - // 获取当前用户的 position - Position storage position = positions[msg.sender]; + // 获取当前用户的 position,TODO recipient 应该改为 msg.sender + Position storage position = positions[recipient]; // TODO 把钱退给用户 recipient - // 修改 position 中的信息 position.tokensOwed0 -= amount0; position.tokensOwed1 -= amount1; diff --git a/demo-contract/contracts/wtfswap/SwapRouter.sol b/demo-contract/contracts/wtfswap/SwapRouter.sol index 3476ff5..e19dde1 100644 --- a/demo-contract/contracts/wtfswap/SwapRouter.sol +++ b/demo-contract/contracts/wtfswap/SwapRouter.sol @@ -31,6 +31,7 @@ contract SwapRouter is ISwapRouter { bytes memory data; // 交易的钱统一转给本合约,最后都完成之后在 swapCallback 中打给用户 pool.swap(msg.sender, true, 12, 12, data); + amountOut += 2; index++; } }