From 025811a401ecd0239b2997bf96e9b0a0eecbc0e4 Mon Sep 17 00:00:00 2001 From: vee <897831508@qq.com> Date: Sat, 13 Nov 2021 16:38:52 +0800 Subject: [PATCH] =?UTF-8?q?=E9=92=B1=E5=8C=85=E5=B7=A5=E5=85=B7=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- utils/WalletUtil.js | 57 ++++++++++++++++++++++++++++++--------------- 1 file changed, 38 insertions(+), 19 deletions(-) diff --git a/utils/WalletUtil.js b/utils/WalletUtil.js index fc977c4..29d4dc5 100644 --- a/utils/WalletUtil.js +++ b/utils/WalletUtil.js @@ -3,6 +3,7 @@ let fullWallet = { "BTC": [{ balance: 0, name: "BTC", + type:'BTC', coinList: [{ name: "BTC", xname: 'Bitcoin', @@ -13,6 +14,7 @@ let fullWallet = { "ETH": [{ balance: 0, name: "ETH", + type:'ETH', coinList: [{ name: "ETH", xname: 'Ethereum', @@ -31,6 +33,7 @@ let fullWallet = { "TRX": [{ balance: 0, name: "TRX", + type:'TRX', coinList: [{ name: "TRX", xname: 'TRON', @@ -63,10 +66,10 @@ let WalletUtil = { walletInfo.ETH[0].privateKey = eth.privateKey; walletInfo.ETH[0].address = eth.address; let tron = TokenUtil.generateTron(mnemonic); - walletInfo.TRON[0].mnemonic = mnemonic; - walletInfo.TRON[0].password = password; - walletInfo.TRON[0].privateKey = tron.privateKey; - walletInfo.TRON[0].address = tron.address; + walletInfo.TRX[0].mnemonic = mnemonic; + walletInfo.TRX[0].password = password; + walletInfo.TRX[0].privateKey = tron.privateKey; + walletInfo.TRX[0].address = tron.address; let wallet = walletInfo.BTC[0]; uni.setStorageSync('walletInfo', walletInfo); uni.setStorageSync('wallet', wallet); @@ -74,17 +77,19 @@ let WalletUtil = { //修改钱包名称 updateWalletName: function(type, address, name) { let walletInfo = uni.getStorageSync('walletInfo'); - for (var k = 0, length = walletInfo.length; k < length; k++) { - if (walletInfo[k].address === address) { + let walletList = walletInfo[type]; + for (var k = 0, length = walletList.length; k < length; k++) { + if (walletList[k].address === address) { walletInfo[k].name = name break; } } uni.setStorageSync('walletInfo', walletInfo); }, + //助记词新建 mnemonicEstablishWallet: function(type, mnemonic, password) { let walletInfo = uni.getStorageSync('walletInfo'); - + let walletdec; switch (type) { case 'BTC': @@ -97,17 +102,18 @@ let WalletUtil = { walletdec = TokenUtil.generateEth(mnemonic); break; } - let wallet=fullWallet[type][0]; + let wallet = fullWallet[type][0]; wallet.password = password; wallet.privateKey = walletdec.privateKey; wallet.mnemonic = mnemonic; wallet.address = walletdec.address; console.log(wallet) walletInfo[type].push(wallet); - console.log(walletInfo,1111111) + console.log(walletInfo, 1111111) uni.setStorageSync('walletInfo', walletInfo); uni.setStorageSync('wallet', wallet); }, + //私钥新建 privateKeyEstablishWallet: function(type, privateKey, password) { let walletInfo = uni.getStorageSync('walletInfo'); console.log(type) @@ -123,30 +129,43 @@ let WalletUtil = { walletdec = TokenUtil.importTronPrivateKey(privateKey); break; } - let wallet=fullWallet[type][0]; + let wallet = fullWallet[type][0]; wallet.password = password; wallet.privateKey = walletdec.privateKey; wallet.address = walletdec.address; walletInfo.push(wallet); uni.setStorageSync('walletInfo', walletInfo); uni.setStorageSync('wallet', wallet); - } - , + }, + //获取钱包列表 getWalletList: function(type) { let walletInfo = uni.getStorageSync('walletInfo'); - let walletList=[]; - if(type){ - walletList=walletInfo[type] - }else{ - for(let obj in walletInfo){ + let walletList = []; + if (type) { + walletList = walletInfo[type] + } else { + for (let obj in walletInfo) { for (var k = 0, length = walletInfo[obj].length; k < length; k++) { - let address=walletInfo[obj][k].address; - walletInfo[obj][k].ellipsisAddress=address.substring(0, 6)+'...'+address.substring(25, address.length); + let address = walletInfo[obj][k].address; + walletInfo[obj][k].ellipsisAddress = address.substring(0, 6) + '...' + address.substring(25, + address.length); + walletInfo[obj][k].type = obj; walletList.push(walletInfo[obj][k]); } } } return walletList; + }, + selectWallet: function(type, address) { + let walletInfo = uni.getStorageSync('walletInfo'); + let walletList = walletInfo[type]; + for (var k = 0, length = walletList.length; k < length; k++) { + if (walletList[k].address === address) { + uni.setStorageSync('wallet', walletList[k]); + break; + } + + } } } export default WalletUtil