From 251d38fbae6c39af380cb5794424a5d24e3ba2e4 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期一, 21 十二月 2020 09:47:53 +0800 Subject: [PATCH] 2020-12-21 --- src/tabviews/subtable/index.jsx | 35 +++++++++++++++++++++++++++++------ 1 files changed, 29 insertions(+), 6 deletions(-) diff --git a/src/tabviews/subtable/index.jsx b/src/tabviews/subtable/index.jsx index ee5be01..df9cbc2 100644 --- a/src/tabviews/subtable/index.jsx +++ b/src/tabviews/subtable/index.jsx @@ -60,7 +60,8 @@ pickup: false, // 瀛愯〃鏁版嵁闅愯棌鏄剧ず鍒囨崲 chartId: '', // 灞曞紑鍥捐〃ID statFields: [], // 鍚堣瀛楁 - statFValue: [] // 鍚堣鍊� + statFValue: [], // 鍚堣鍊� + absFields: [], // 缁濆鍊煎瓧娈� } /** @@ -132,6 +133,7 @@ let _hideCol = [] // 闅愯棌鍙婂悎骞跺垪涓瓧娈电殑uuid闆� let colMap = new Map() let statFields = [] // 鍚堣瀛楁淇℃伅 + let absFields = [] // 缁濆鍊煎瓧娈� // 鐗堟湰鍏煎 config = UtilsUpdate.updateSubTable(config) @@ -208,6 +210,9 @@ col.nameField && _arrField.push(col.nameField) // 閾炬帴鍚嶅瓧娈� if (col.Hide !== 'true' && col.type === 'number' && col.sum === 'true') { statFields.push(col) + } + if (col.format === 'abs') { + absFields.push(col.field) } } if (col.type === 'colspan' && col.sublist) { // 绛涢�夐殣钘忓垪 @@ -332,9 +337,10 @@ this.setState({ loadingview: false, - chartId: chartId, - config: config, - statFields: statFields, + chartId, + config, + absFields, + statFields, setting: config.setting, searchlist: config.search, actions: _actions, @@ -367,7 +373,7 @@ */ async loadmaindata (bid, type) { const { mainSearch } = this.props - const { setting, arr_field, search, orderBy, pageIndex, pageSize } = this.state + const { setting, arr_field, search, orderBy, pageIndex, pageSize, absFields } = this.state let _BID = this.props.BID let searches = fromJS(search).toJS() @@ -419,6 +425,14 @@ if (result.status) { this.setState({ data: result.data.map((item, index) => { + if (absFields.length) { + absFields.forEach(field => { + if (!item[field]) return + if (isNaN(Math.abs(item[field]))) return + + item[field] = Math.abs(item[field]) + }) + } item.key = index return item }), @@ -444,7 +458,7 @@ */ async loadmainLinedata (id) { const { mainSearch, BID } = this.props - const { setting, arr_field, search, orderBy, pageIndex, pageSize } = this.state + const { setting, arr_field, search, orderBy, pageIndex, pageSize, absFields } = this.state let searches = fromJS(search).toJS() if (mainSearch && mainSearch.length > 0) { // 涓昏〃鎼滅储鏉′欢 @@ -468,6 +482,15 @@ if (result.data && result.data[0]) { let _data = result.data[0] + if (absFields.length) { + absFields.forEach(field => { + if (!_data[field]) return + if (isNaN(Math.abs(_data[field]))) return + + _data[field] = Math.abs(_data[field]) + }) + } + try { data = data.map(item => { if (item[setting.primaryKey] === _data[setting.primaryKey]) { -- Gitblit v1.8.0