diff --git a/main.js b/main.js index f088aeb..9a510b8 100644 --- a/main.js +++ b/main.js @@ -14,6 +14,7 @@ import util from 'ethereumjs-util' import store from './store' import walletUtil from './utils/WalletUtil.js' +import dataUtil from './utils/DataUtil.js' Vue.prototype.$store = store Vue.prototype.tronweb = tronweb Vue.prototype.bip32 = bip32 @@ -23,6 +24,8 @@ Vue.prototype.bitcoin = bitcoin Vue.prototype.ethers = ethers Vue.prototype.$axios = axios Vue.prototype.$walletUtil = walletUtil +Vue.prototype.$dataUtil = dataUtil + // 自定义底部导航栏 import tabBar from 'components/tabBar/tabBar.vue' Vue.component('tab-bar', tabBar) diff --git a/pages/menu/wallet/index.vue b/pages/menu/wallet/index.vue index 2499c5e..b7a3367 100644 --- a/pages/menu/wallet/index.vue +++ b/pages/menu/wallet/index.vue @@ -91,6 +91,10 @@ onLoad() { this.setStorage(); + // this.$dataUtil.transactionData('TRX','send','TBREsCfBdPyD612xZnwvGPux7osbXvtzLh', + // 'TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t',1,30,function(data){ + // console.log(data) + // }) // this.getWalletBalance(); var a=uni.getStorageSync('wallet') diff --git a/utils/DataUtil.js b/utils/DataUtil.js new file mode 100644 index 0000000..80588ef --- /dev/null +++ b/utils/DataUtil.js @@ -0,0 +1,222 @@ +import index from './index.js' +let DataUtil = { + transactionData: function(type, dataType, address, contract, pageNum, pageSize, success) { + + switch (type) { + case 'BTC': + success([]); + break; + case 'ETH': + this.ethTransactionData(contract, dataType, address, pageNum, pageSize, success); + break; + case 'TRX': + this.trxTransactionData(contract, dataType, address, pageNum, pageSize, success); + + break; + } + }, + ethTransactionData: function(contract, dataType, address, pageNum, pageSize, success) { + let dataList = []; + if (!contract) { + uni.request({ + url: 'http://scan.weirui0755.com/eth/api/eth/address/normal/' + address + '/' + + pageNum + + '/' + pageSize, //请求接口 + header: { + 'content-type': 'application/x-www-form-urlencoded', //自定义请求头信息 + }, + success: (res) => { + console.log(res, 1234654) + if (res.data.code === 1) { + var data = res.data.data; + for (let i = 0; i < data.length; i++) { + + if (!data[i].toAlias) { + + if ((data[i].from != address && dataType == 'send') || (data[i] + .to != address && dataType == 'receive')) { + continue; + } + var transactionData = { + value: data[i].value, + from: data[i].from, + to: data[i].to, + fee: data[i].fee, + txid: data[i].txid, + confirmations: data[i].confirmations, + block_no: data[i].block_no, + time: index.formatyymmddhhmmss33(data[i].time * 1000) + + } + if (data[i].from === address) { + transactionData.address = data[i].to; + transactionData.type = 'out'; + } else { + transactionData.address = data[i].from; + transactionData.type = 'in'; + } + dataList.push(transactionData) + } + } + + success(dataList) + } + + + } + }); + } else { + uni.request({ + url: 'http://scan.weirui0755.com/eth/api/eth/address/tokentrans/' + address + '/' + + contract + '/' + pageNum + + '/' + pageSize, //请求接口 + header: { + 'content-type': 'application/x-www-form-urlencoded', //自定义请求头信息 + }, + success: (res) => { + console.log(res, 1234654) + if (res.data.code === 1) { + var data = res.data.data; + for (let i = 0; i < data.length; i++) { + + if (!data[i].toAlias) { + + if ((data[i].from != address && dataType == 'send') || (data[i] + .to != address && dataType == 'receive')) { + continue; + } + var transactionData = { + value: data[i].value / Math.pow(10, data[i].tokenDecimals), + from: data[i].from, + to: data[i].to, + txid: data[i].txid, + fee: data[i].fee, + confirmations: data[i].conformations, + block_no: data[i].block_no, + time: index.formatyymmddhhmmss33(data[i].time * 1000) + + } + if (data[i].from === address) { + transactionData.address = data[i].to; + transactionData.type = 'out'; + } else { + transactionData.address = data[i].from; + transactionData.type = 'in'; + } + dataList.push(transactionData) + } + } + + success(dataList) + } + + + } + }); + } + + + } + + , + trxTransactionData: function(contract, dataType, address, pageNum, pageSize, success) { + let dataList = []; + if (!contract) { + uni.request({ + url: 'http://scan.weirui0755.com/trx/api/trx/address/normal/' + address + '/' + + pageNum + + '/' + pageSize, //请求接口 + header: { + 'content-type': 'application/x-www-form-urlencoded', //自定义请求头信息 + }, + success: (res) => { + console.log(res, 1234654) + if (res.data.code === 1) { + var data = res.data.data; + for (let i = 0; i < data.length; i++) { + + + if ((data[i].from != address && dataType == 'send') || (data[i] + .to != address && dataType == 'receive')) { + continue; + } + var transactionData = { + value: data[i].value, + from: data[i].from, + to: data[i].to, + fee: data[i].fee, + txid: data[i].txid, + confirmations: data[i].confirmations, + block_no: data[i].block_no, + time: index.formatyymmddhhmmss33(data[i].time * 1000) + + } + if (data[i].from === address) { + transactionData.address = data[i].to; + transactionData.type = 'out'; + } else { + transactionData.address = data[i].from; + transactionData.type = 'in'; + } + dataList.push(transactionData) + } + + success(dataList) + } + + + } + }); + } else { + uni.request({ + url: 'http://scan.weirui0755.com/trx/api/trx/address/tokentrans/' + address + '/' + + contract + '/' + pageNum + + '/' + pageSize, //请求接口 + header: { + 'content-type': 'application/x-www-form-urlencoded', //自定义请求头信息 + }, + success: (res) => { + console.log(res, 1234654) + if (res.data.code === 1) { + var data = res.data.data; + for (let i = 0; i < data.length; i++) { + + if (!data[i].toAlias) { + + if ((data[i].from != address && dataType == 'send') || (data[i] + .to != address && dataType == 'receive')) { + continue; + } + var transactionData = { + value: data[i].value / Math.pow(10, data[i].tokenDecimals), + from: data[i].from, + to: data[i].to, + txid: data[i].txid, + fee: data[i].fee, + confirmations: data[i].conformations, + block_no: data[i].block_no, + time: index.formatyymmddhhmmss33(data[i].time * 1000) + + } + if (data[i].from === address) { + transactionData.address = data[i].to; + transactionData.type = 'out'; + } else { + transactionData.address = data[i].from; + transactionData.type = 'in'; + } + dataList.push(transactionData) + } + } + + success(dataList) + } + + + } + }); + } + } + +} +export default DataUtil diff --git a/utils/SystemConfiguration.js b/utils/SystemConfiguration.js new file mode 100644 index 0000000..9da15f2 --- /dev/null +++ b/utils/SystemConfiguration.js @@ -0,0 +1,11 @@ +let isTest = true; + +const constant = isTest ? { + btcDataUrl:'' +}:{ + +} + +export default { + constant +} diff --git a/utils/api.js b/utils/api.js index f1f02b2..c5ae049 100644 --- a/utils/api.js +++ b/utils/api.js @@ -1,29 +1,34 @@ import Vue from 'vue'; import qs from 'qs' const api = { - //---------------------------------account--------------------------------- - siteInfo: () => Vue.prototype.$axios.get('/api/home/siteInfo'), - // address: (params) => Vue.prototype.$axios.post('/api/eth/address',params), - appVersion: (params) => Vue.prototype.$axios.get('/api/home/versionUpgrade?'+qs.stringify(params)), - address: (params) => Vue.prototype.$axios.get('/eth/api/eth/address/normal/'+params.address+'/'+params.pageNum+'/'+params.pageSize), - // appVersion: (params) => Vue.prototype.$axios.get('/api/home/versionUpgrade?'+qs.stringify(params)) -// addressbtc: (params) => Vue.prototype.$axios.get('/btc/api/address/btc/?'+qs.stringify(params)), -addressbtc: (params) => Vue.prototype.$axios.get('/btc/api/address/btc/'+params.address+'/'+params.pageNum+'/'+params.pageSize), - addresstrx: (params) => Vue.prototype.$axios.get('/trx/api/trx/address/normal/'+params.address+'/'+params.pageNum+'/'+params.pageSize), - - // 拿btc余额 - getBtcBalance: () => Vue.prototype.$axios.get('/btc/api/address/balancetrend/btc/1AgypUbAc4joKjsiVd66mtemwXgFKXWa1R'), - getOtherCoin: (params) => Vue.prototype.$axios.get('/api/contract/getContractInfoList/ETH'), - - addressOther: (params) => Vue.prototype.$axios.get('/eth/api/eth/address/tokentrans/'+params.address2+'/'+params.address+'/'+params.pageNum+'/'+params.pageSize), - - - // 质押地址 - // getPledgeAddress: (params) => Vue.prototype.$axios.get('/api/identity/getPledgeAddress/'+params), + //---------------------------------account--------------------------------- + siteInfo: () => Vue.prototype.$axios.get('/api/home/siteInfo'), + // address: (params) => Vue.prototype.$axios.post('/api/eth/address',params), + appVersion: (params) => Vue.prototype.$axios.get('/api/home/versionUpgrade?' + qs.stringify(params)), + address: (params) => Vue.prototype.$axios.get('/eth/api/eth/address/normal/' + params.address + '/' + params + .pageNum + '/' + params.pageSize), + // appVersion: (params) => Vue.prototype.$axios.get('/api/home/versionUpgrade?'+qs.stringify(params)) + // addressbtc: (params) => Vue.prototype.$axios.get('/btc/api/address/btc/?'+qs.stringify(params)), + addressbtc: (params) => Vue.prototype.$axios.get('/btc/api/address/btc/' + params.address + '/' + params + .pageNum + '/' + params.pageSize), + addresstrx: (params) => Vue.prototype.$axios.get('/trx/api/trx/address/normal/' + params.address + '/' + params + .pageNum + '/' + params.pageSize), - //--------------------------------- free --------------------------------- - - } + // 拿btc余额 + getBtcBalance: () => Vue.prototype.$axios.get( + '/btc/api/address/balancetrend/btc/1AgypUbAc4joKjsiVd66mtemwXgFKXWa1R'), + getOtherCoin: (params) => Vue.prototype.$axios.get('/api/contract/getContractInfoList/ETH'), + + addressOther: (params) => Vue.prototype.$axios.get('/eth/api/eth/address/tokentrans/' + params.address2 + '/' + + params.address + '/' + params.pageNum + '/' + params.pageSize), + + + // 质押地址 + // getPledgeAddress: (params) => Vue.prototype.$axios.get('/api/identity/getPledgeAddress/'+params), + + //--------------------------------- free --------------------------------- + +} export default api