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/subtabtable/index.jsx |   25 +++++++++++++++++++------
 1 files changed, 19 insertions(+), 6 deletions(-)

diff --git a/src/tabviews/subtabtable/index.jsx b/src/tabviews/subtabtable/index.jsx
index aef5022..55d904d 100644
--- a/src/tabviews/subtabtable/index.jsx
+++ b/src/tabviews/subtabtable/index.jsx
@@ -58,7 +58,8 @@
     search: '',           // 鎼滅储鏉′欢鏁扮粍锛屼娇鐢ㄦ椂闇�鍒嗗満鏅鐞�
     chartId: '',          // 灞曞紑鍥捐〃ID
     statFields: [],       // 鍚堣瀛楁
-    statFValue: []        // 鍚堣鍊�
+    statFValue: [],       // 鍚堣鍊�
+    absFields: [],        // 缁濆鍊煎瓧娈�
   }
 
   /**
@@ -106,6 +107,7 @@
       let _hideCol = []      // 闅愯棌鍙婂悎骞跺垪涓瓧娈电殑uuid闆�
       let colMap = new Map()
       let statFields = []    // 鍚堣瀛楁淇℃伅
+      let absFields = []     // 缁濆鍊煎瓧娈�
 
       // 鐗堟湰鍏煎
       config = UtilsUpdate.updateSubTable(config)
@@ -138,7 +140,6 @@
           duration: 5
         })
       }
-      
 
       // 鏉冮檺杩囨护
       if (this.props.menuType !== 'HS') {
@@ -187,6 +188,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) { // 绛涢�夐殣钘忓垪
@@ -288,9 +292,10 @@
 
       this.setState({
         loadingview: false,
-        chartId: chartId,
-        config: config,
-        statFields: statFields,
+        chartId,
+        config,
+        absFields,
+        statFields,
         setting: config.setting,
         searchlist: config.search,
         actions: _actions,
@@ -321,7 +326,7 @@
    */
   async loadmaindata () {
     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) { // 涓昏〃鎼滅储鏉′欢
@@ -358,6 +363,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
         }),

--
Gitblit v1.8.0