From 51c35581b8e21eeb77af37a6313e566e7db4d904 Mon Sep 17 00:00:00 2001 From: Yongfeng LI Date: Thu, 28 Dec 2017 19:53:59 +0800 Subject: [PATCH] show balance list page --- src/features/balances/components/List.jsx | 4 +--- src/features/balances/reducers.js | 17 ++++++++++++++--- src/features/balances/routes.js | 4 +--- src/features/shared/components/BaseList/BaseList.jsx | 2 +- src/utility/buildInOutDisplay.js | 6 +++++- 5 files changed, 22 insertions(+), 11 deletions(-) diff --git a/src/features/balances/components/List.jsx b/src/features/balances/components/List.jsx index 7cb1ae3..3e16a43 100644 --- a/src/features/balances/components/List.jsx +++ b/src/features/balances/components/List.jsx @@ -6,11 +6,9 @@ const type = 'balance' const newStateToProps = (state, ownProps) => { const props = { ...BaseList.mapStateToProps(type, ListItem)(state, ownProps), - skipCreate: true, - defaultFilter: "is_local='yes'" + skipCreate: true } - props.searchState.sumBy = ownProps.location.query.sumBy || '' return props } diff --git a/src/features/balances/reducers.js b/src/features/balances/reducers.js index fb8a32a..3743bf8 100644 --- a/src/features/balances/reducers.js +++ b/src/features/balances/reducers.js @@ -7,10 +7,21 @@ const idFunc = (item, index) => index const itemsReducer = (state = {}, action) => { if (action.type == 'APPEND_BALANCE_PAGE') { const newState = {} - action.param.items.forEach((item, index) => { - item.id = `balance-${index}` - newState[index] = item + let count = 0 + action.param.data.forEach((item) => { + const accountId = item.id + const accountAlias = item.alias; + (item.balances || []).map(balance => { + const id = `balance-${count++}` + newState[id] = { + id, + accountAlias, + accountId: accountId, + ...balance + } + }) }) + return newState } return state diff --git a/src/features/balances/routes.js b/src/features/balances/routes.js index bfc16d8..ff9e288 100644 --- a/src/features/balances/routes.js +++ b/src/features/balances/routes.js @@ -1,6 +1,4 @@ import { List } from './components' import { makeRoutes } from 'features/shared' -export default (store) => makeRoutes(store, 'balance', List, null, null, null, { - defaultFilter: "is_local='yes'" -}) +export default (store) => makeRoutes(store, 'balance', List, null, null, null) diff --git a/src/features/shared/components/BaseList/BaseList.jsx b/src/features/shared/components/BaseList/BaseList.jsx index d6dae1f..414402a 100644 --- a/src/features/shared/components/BaseList/BaseList.jsx +++ b/src/features/shared/components/BaseList/BaseList.jsx @@ -71,7 +71,7 @@ class ItemList extends React.Component { } } -export const mapStateToProps = (type, itemComponent, additionalProps = {}) => (state, ownProps) => { +export const mapStateToProps = (type, itemComponent, additionalProps = {}) => (state) => { let items = state[type].items let target = [] for (let key in items) { diff --git a/src/utility/buildInOutDisplay.js b/src/utility/buildInOutDisplay.js index 93f8c9e..43eb39f 100644 --- a/src/utility/buildInOutDisplay.js +++ b/src/utility/buildInOutDisplay.js @@ -100,5 +100,9 @@ export function buildUnspentDisplay(output) { } export function buildBalanceDisplay(balance) { - return buildDisplay({amount: balance.amount, ...balance.sumBy}, balanceFields) + return buildDisplay({ + amount: balance.amount, + assetId: balance.assetId, + accountAlias: balance.accountAlias + }, balanceFields) } -- 2.11.0