From abdeb11c3caf2712eb6919fdc7fd228d4020ff2c Mon Sep 17 00:00:00 2001 From: Dustin Brickwood Date: Thu, 24 May 2018 14:18:51 -0400 Subject: [PATCH] UI, API changes --- core/genesis.go | 9 ++++++-- .../nav/accountHeaders/accountDetailHeader.js | 6 ++++- .../nav/blockHeaders/blockCoinbaseHeader.js | 2 +- .../components/table/accounts/accountRows.js | 7 +++--- .../table/accounts/accountsTable.js | 2 +- .../table/accounts/detailAccountsRow.js | 11 ++++----- .../table/accounts/detailAccountsTable.js | 2 +- .../table/blocks/blocksMinedTable.js | 4 ++-- shyftBlockExplorerUI/src/containers/App.js | 13 +++++------ shyftDb/shyft_database_util.go | 23 +++++++++++-------- 10 files changed, 44 insertions(+), 35 deletions(-) diff --git a/core/genesis.go b/core/genesis.go index b53a48235d..b81b6f5d3f 100644 --- a/core/genesis.go +++ b/core/genesis.go @@ -161,6 +161,11 @@ func WriteShyftGen(sqldb *sql.DB, gen *Genesis, block *types.Block) { number := block.Header().Number.String() gasUsed := block.Header().GasUsed gasLimit := block.Header().GasLimit + gasPrice := 0 + txFee := 0 + txStatus := "" + isContract := false + data:= "" addr := k.String() txCountAccount := v.Nonce +1 i, err := strconv.ParseInt(block.Time().String(), 10, 64) @@ -179,8 +184,8 @@ func WriteShyftGen(sqldb *sql.DB, gen *Genesis, block *types.Block) { } var retNonce string - sqlGenTxStatement := `INSERT INTO txs(txhash, from_addr, to_addr, blockhash, blockNumber, amount, gas, gasLimit, nonce,age) VALUES(($1), ($2), ($3), ($4), ($5), ($6), ($7), ($8), ($9), ($10)) RETURNING nonce` - insertError := sqldb.QueryRow(sqlGenTxStatement, txHash, GENESIS, addr, block.Header().Hash().Hex(), number, v.Balance.String(), gasUsed, gasLimit, txCountAccount, age).Scan(&retNonce) + sqlGenTxStatement := `INSERT INTO txs(txhash, from_addr, to_addr, blockhash, blockNumber, amount,gasPrice, gas, gasLimit,txFee,nonce,txstatus, iscontract,age, data) VALUES(($1), ($2), ($3), ($4), ($5), ($6), ($7), ($8), ($9), ($10), ($11), ($12), ($13), ($14), ($15)) RETURNING nonce` + insertError := sqldb.QueryRow(sqlGenTxStatement, txHash, GENESIS, addr, block.Header().Hash().Hex(), number, v.Balance.String(), gasPrice, gasUsed, gasLimit, txFee,txCountAccount,txStatus, isContract, age, data).Scan(&retNonce) if insertError != nil { panic(insertError) } diff --git a/shyftBlockExplorerUI/src/components/nav/accountHeaders/accountDetailHeader.js b/shyftBlockExplorerUI/src/components/nav/accountHeaders/accountDetailHeader.js index 097c84d2ea..3f6de31bad 100644 --- a/shyftBlockExplorerUI/src/components/nav/accountHeaders/accountDetailHeader.js +++ b/shyftBlockExplorerUI/src/components/nav/accountHeaders/accountDetailHeader.js @@ -2,11 +2,15 @@ import React from 'react'; import classes from '../nav.css'; const accountsDetailHeader = (props) => { + const total = props.data + .map(num => Number(num.Amount) / 10000000000000000000) + .reduce((acc, cur) => acc + cur ,0); return (
Account# {props.addr} + Total Value: {total}
) -} +}; export default accountsDetailHeader; \ No newline at end of file diff --git a/shyftBlockExplorerUI/src/components/nav/blockHeaders/blockCoinbaseHeader.js b/shyftBlockExplorerUI/src/components/nav/blockHeaders/blockCoinbaseHeader.js index a368883b9c..7c629ba580 100644 --- a/shyftBlockExplorerUI/src/components/nav/blockHeaders/blockCoinbaseHeader.js +++ b/shyftBlockExplorerUI/src/components/nav/blockHeaders/blockCoinbaseHeader.js @@ -4,7 +4,7 @@ import classes from '../nav.css'; const blocksCoinbaseHeader = (props) => { return (
- Coinbase: {props.data.Coinbase} + Coinbase: {props.coinbase}
) }; diff --git a/shyftBlockExplorerUI/src/components/table/accounts/accountRows.js b/shyftBlockExplorerUI/src/components/table/accounts/accountRows.js index da0b7aa3c9..ecb160a04b 100644 --- a/shyftBlockExplorerUI/src/components/table/accounts/accountRows.js +++ b/shyftBlockExplorerUI/src/components/table/accounts/accountRows.js @@ -24,11 +24,12 @@ class AccountTable extends Component { let startNum = 1; const sorted = [...this.state.data]; - sorted.sort((a, b) => a.Balance > b.Balance); + sorted.sort((a, b) => Number(a.Balance) > Number(b.Balance)); + console.log(sorted); const table = sorted.reverse().map((data, i) => { - const conversion = data.Balance / 10000000000000000000; + const conversion = Number(data.Balance) / 10000000000000000000; const total = sorted - .map(num => num.Balance / 10000000000000000000) + .map(num => Number(num.Balance) / 10000000000000000000) .reduce((acc, cur) => acc + cur ,0); const percentage = ( (conversion / total) *100); return { ) -} +}; export default AccountsTable; diff --git a/shyftBlockExplorerUI/src/components/table/accounts/detailAccountsRow.js b/shyftBlockExplorerUI/src/components/table/accounts/detailAccountsRow.js index 45f8c3bf21..98ccdf8d27 100644 --- a/shyftBlockExplorerUI/src/components/table/accounts/detailAccountsRow.js +++ b/shyftBlockExplorerUI/src/components/table/accounts/detailAccountsRow.js @@ -10,11 +10,8 @@ class AccountTransactionTable extends Component { return }else { table = this.props.data.map((data, i) => { - console.log(this.props.data) - // const total = this.props.data - // .map(num => num.Balance / 10000000000000000000) - // .reduce((acc, cur) => acc + cur ,0); - const conversion = data.Cost / 10000000000000000000; + const costConversion = data.Cost / 10000000000000000000; + const amountConversion = data.Amount / 10000000000000000000; return diff --git a/shyftBlockExplorerUI/src/components/table/accounts/detailAccountsTable.js b/shyftBlockExplorerUI/src/components/table/accounts/detailAccountsTable.js index ddeabc50fd..3164b7c164 100644 --- a/shyftBlockExplorerUI/src/components/table/accounts/detailAccountsTable.js +++ b/shyftBlockExplorerUI/src/components/table/accounts/detailAccountsTable.js @@ -32,6 +32,6 @@ const DetailAccountsTable = (props) => { ) -} +}; export default DetailAccountsTable; diff --git a/shyftBlockExplorerUI/src/components/table/blocks/blocksMinedTable.js b/shyftBlockExplorerUI/src/components/table/blocks/blocksMinedTable.js index 16101a9ed2..503dc9322c 100644 --- a/shyftBlockExplorerUI/src/components/table/blocks/blocksMinedTable.js +++ b/shyftBlockExplorerUI/src/components/table/blocks/blocksMinedTable.js @@ -13,7 +13,7 @@ const MinedBlockTable = (props) => { {props.Age} {props.TxCount} {props.UncleCount} - props.getBlocksMined(props.Coinbase)}>{props.Coinbase} + {props.Coinbase} {props.GasUsed} {props.GasLimit} TBD @@ -21,6 +21,6 @@ const MinedBlockTable = (props) => { ) -} +}; export default MinedBlockTable; diff --git a/shyftBlockExplorerUI/src/containers/App.js b/shyftBlockExplorerUI/src/containers/App.js index d73dd3c393..043f430d14 100644 --- a/shyftBlockExplorerUI/src/containers/App.js +++ b/shyftBlockExplorerUI/src/containers/App.js @@ -73,7 +73,7 @@ class App extends Component { getBlockTransactions = async(blockNumber) => { try { const response = await axios.get(`http://localhost:8080/api/get_all_transactions_from_block/${blockNumber}`) - await this.setState({ blockTransactions: response.data }) + await this.setState({ blockTransactions: response.data, reqBlockNum: blockNumber }) } catch(error) { console.log(error) @@ -81,11 +81,9 @@ class App extends Component { }; getBlocksMined = async(coinbase) => { - console.log("THIS RAN") try { const response = await axios.get(`http://localhost:8080/api/get_blocks_mined/${coinbase}`) - console.log(response.data); - await this.setState({ blocksMined: response.data }) + await this.setState({ blocksMined: response.data, reqCoinbase: coinbase }) } catch(error) { console.log(error) @@ -151,7 +149,7 @@ class App extends Component {
+ blockNumber={this.state.reqBlockNum}/>
+ coinbase={this.state.reqCoinbase}/>
+ addr={this.state.reqAccount} + data={this.state.accountDetailData}/>