最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

阿凡達(dá)泰山眾籌(Avata)開(kāi)發(fā)功能版,阿凡達(dá)泰山眾籌(Avata)系統(tǒng)開(kāi)發(fā)技術(shù)分析及源碼

2023-03-01 10:58 作者:bili_16249894763  | 我要投稿

  New retail is a new retail model in which enterprises,relying on the Internet,upgrade and transform the production,circulation and sales process of goods by using advanced technology such as big data and artificial intelligence,and then reshape the business structure and ecosystem,and deeply integrate online services,offline experience and modern logistics.


  function removeLiquidityETHWithPermit(//WithPermit,移除時(shí),其中一個(gè)返回eth


  address token,


  uint liquidity,


  uint amountTokenMin,


  uint amountETHMin,


  address to,


  uint deadline,


  bool approveMax,uint8 v,bytes32 r,bytes32 s


  )external virtual override returns(uint amountToken,uint amountETH){


  /*


  獲取到pair,調(diào)用pair的permit(內(nèi)部實(shí)際就是授權(quán)給路由),


  */


  address pair=UniswapV2Library.pairFor(factory,token,WETH);


  uint value=approveMax?uint(-1):liquidity;模式及功能I35方案7O98開(kāi)發(fā)O7I8


  IUniswapV2Pair(pair).permit(msg.sender,address(this),value,deadline,v,r,s);


  //最終還是調(diào)用上面的removeLiquidityETH方法!


  (amountToken,amountETH)=removeLiquidityETH(token,liquidity,amountTokenMin,amountETHMin,to,deadline);


  }


  //****REMOVE LIQUIDITY(supporting fee-on-transfer tokens)****


  //移除流動(dòng)性(需要先授權(quán)),支持轉(zhuǎn)賬會(huì)扣手續(xù)費(fèi)的代幣s


  function removeLiquidityETHSupportingFeeOnTransferTokens(


  address token,


  uint liquidity,


  uint amountTokenMin,


  uint amountETHMin,


  address to,


  uint deadline


  )public virtual override ensure(deadline)returns(uint amountETH){


  //實(shí)際還是調(diào)用removeLiquidity,傳入的是weth,


  (,amountETH)=removeLiquidity(


  token,


  WETH,


  liquidity,


  amountTokenMin,//實(shí)際就是這兩個(gè)值,填很小,就可以成功


  amountETHMin,//實(shí)際就是這兩個(gè)值,填很小,就可以成功


  address(this),


  deadline


  );詳情及分析:MrsFu123


  //removeLiquidity返回的第一個(gè)參數(shù)是代幣數(shù)量,由于代幣轉(zhuǎn)賬會(huì)扣手續(xù)費(fèi),所以,實(shí)際到達(dá)路由的代幣數(shù)量并沒(méi)有這么多!直接取余額轉(zhuǎn)出


  TransferHelper.safeTransfer(token,to,IERC20(token).balanceOf(address(this)));//如果轉(zhuǎn)賬扣兩次手續(xù)費(fèi)..這里相當(dāng)于扣兩次,pair->router,router->to


  //將weth轉(zhuǎn)換eth,再轉(zhuǎn)給to,


  IWETH(WETH).withdraw(amountETH);


  TransferHelper.safeTransferETH(to,amountETH);


  }


  //同上,先驗(yàn)簽授權(quán),再調(diào)用上面的removeLiquidityETHSupportingFeeOnTransferTokens


  function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(


  address token,


  uint liquidity,


  uint amountTokenMin,


  uint amountETHMin,


  address to,


  uint deadline,


  bool approveMax,uint8 v,bytes32 r,bytes32 s


  )external virtual override returns(uint amountETH){


  address pair=UniswapV2Library.pairFor(factory,token,WETH);


  uint value=approveMax?uint(-1):liquidity;


  IUniswapV2Pair(pair).permit(msg.sender,address(this),value,deadline,v,r,s);


  amountETH=removeLiquidityETHSupportingFeeOnTransferTokens(


  token,liquidity,amountTokenMin,amountETHMin,to,deadline


  );


  }


阿凡達(dá)泰山眾籌(Avata)開(kāi)發(fā)功能版,阿凡達(dá)泰山眾籌(Avata)系統(tǒng)開(kāi)發(fā)技術(shù)分析及源碼的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
柳州市| 简阳市| 娱乐| 莱阳市| 来凤县| 松滋市| 丰镇市| 通州区| 霍城县| 墨脱县| 三台县| 江孜县| 宁陕县| 天柱县| 巫山县| 新野县| 梁平县| 阳信县| 洪雅县| 阳谷县| 噶尔县| 远安县| 日土县| 新乐市| 海丰县| 南宁市| 定西市| 游戏| 郴州市| 自贡市| 海安县| 沭阳县| 泾川县| 九江县| 同江市| 佛冈县| 武穴市| 莲花县| 金华市| 河东区| 嫩江县|