From 08cce3334a2dc81d690b518136b0aaea64e48b0b Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期三, 14 六月 2023 09:55:50 +0800
Subject: [PATCH] 2023-06-14

---
 src/tabviews/custom/components/share/normalTable/index.jsx |   50 +++++++++++++++++++++++++++++++++-----------------
 1 files changed, 33 insertions(+), 17 deletions(-)

diff --git a/src/tabviews/custom/components/share/normalTable/index.jsx b/src/tabviews/custom/components/share/normalTable/index.jsx
index 1926c23..83b7612 100644
--- a/src/tabviews/custom/components/share/normalTable/index.jsx
+++ b/src/tabviews/custom/components/share/normalTable/index.jsx
@@ -6,13 +6,13 @@
 
 import asyncComponent from '@/utils/asyncComponent'
 import { getMark } from '@/utils/utils.js'
-import MkIcon from '@/components/mk-icon'
 import MKEmitter from '@/utils/events.js'
 import Encrypts from '@/components/encrypts'
 import './index.scss'
 
 const { Paragraph } = Typography
 const Video = asyncComponent(() => import('@/components/video'))
+const MkIcon = asyncComponent(() => import('@/components/mk-icon'))
 const MkPicture = asyncComponent(() => import('@/components/mkPicture'))
 const CardCellComponent = asyncComponent(() => import('@/tabviews/custom/components/card/cardcellList'))
 const PicRadio = {
@@ -340,7 +340,16 @@
           // eslint-disable-next-line
           content = eval(content)
         } catch (e) {
+          if (window.debugger) {
+            console.info(content)
+            console.warn(e)
+          }
           content = ''
+        }
+
+        if (col.round && typeof(content) === 'number') {
+          content = Math.round(content * col.round) / col.round
+          content = content.toFixed(col.decimal)
         }
       }
 
@@ -348,11 +357,8 @@
 
       if (content !== '') {
         content = `${col.prefix || ''}${content}${col.postfix || ''}`
-
-        if (col.eval === 'false') {
-          content = content.replace(/\n/ig, '<br/>').replace(/\s/ig, '&nbsp;')
-          content = <span dangerouslySetInnerHTML={{__html: content}}></span>
-        }
+        content = content.replace(/\n/ig, '<br/>').replace(/\s/ig, '&nbsp;')
+        content = <span dangerouslySetInnerHTML={{__html: content}}></span>
       }
 
       if (col.marks) {
@@ -378,14 +384,6 @@
         style = {...style, ...col.style}
       }
 
-      resProps.children = (
-        <CardCellComponent data={record} cards={config} elements={col.elements}/>
-      )
-    } else if (col.type === 'action') {
-      style.padding = '0px'
-      if (col.style) {
-        style = {...style, ...col.style}
-      }
       resProps.children = (
         <CardCellComponent data={record} cards={config} elements={col.elements}/>
       )
@@ -480,7 +478,7 @@
               onCell: record => ({
                 record,
                 col: item,
-                config: item.type === 'custom' || item.type === 'action' ? {setting, columns: fields} : null,
+                config: item.type === 'custom' ? {setting, columns: fields} : null,
                 triggerLink: this.triggerLink
               })
             }
@@ -504,6 +502,8 @@
           width: item.Width || 120
         })
       })
+
+      orderfields = null
     }
 
     if (rowspans.length === 0) {
@@ -816,7 +816,9 @@
       pickup: false
     })
 
-    sorter.field = orderfields[sorter.field] || ''
+    if (orderfields) {
+      sorter.field = orderfields[sorter.field] || ''
+    }
 
     this.props.refreshdata(pagination, filters, sorter)
   }
@@ -986,13 +988,26 @@
     }
 
     let height = setting.height || false
+    if (height && height <= 100) {
+      height = height + 'vh'
+    }
     let loading = this.props.loading
     if (setting.mask === 'hidden') {
       loading = false
     }
 
+    let fixed = ''
+    if (setting.colfixed && setting.colfixed.length) {
+      if (setting.colfixed.includes('first')) {
+        fixed = 'mk-fixed-first-col'
+      }
+      if (setting.colfixed.includes('last')) {
+        fixed += ' mk-fixed-last-col'
+      }
+    }
+
     return (
-      <div className={`normal-custom-table ${setting.tableHeader || ''} ${height ? 'fixed-height' : ''} ${setting.mode || ''} table-vertical-${setting.vertical || 'middle'} table-col-${columns.length}`} id={tableId}>
+      <div className={`normal-custom-table ${setting.tableHeader || ''} ${height ? 'fixed-height' : ''} ${setting.mode || ''} table-vertical-${setting.vertical || 'middle'} table-col-${columns.length} ${fixed}`} id={tableId}>
         {(setting.tableType === 'radio' || setting.tableType === 'checkbox') && data && data.length > 0 ?
           <Switch title="鏀惰捣" className="main-pickup" checkedChildren="寮�" unCheckedChildren="鍏�" checked={pickup} onChange={this.pickupChange} /> : null
         }
@@ -1009,6 +1024,7 @@
             return {
               lineMarks: setting.tableMode !== 'fast' ? lineMarks : null,
               data: record,
+              title: setting.tipField ? record[setting.tipField] : '',
               className: index === activeIndex ? ' mk-row-active ' : '',
               onClick: () => {this.changeRow(record, index)},
               onDoubleClick: () => {this.doubleClickLine(record)}

--
Gitblit v1.8.0