From 43b14af93c44ff89cf9f24a45b0451e04e6b473a Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期一, 23 十月 2023 10:00:50 +0800
Subject: [PATCH] 2023-10-23

---
 src/utils/utils.js |   55 ++++++++++++++++++++++++++++---------------------------
 1 files changed, 28 insertions(+), 27 deletions(-)

diff --git a/src/utils/utils.js b/src/utils/utils.js
index a3f7acc..2062f1d 100644
--- a/src/utils/utils.js
+++ b/src/utils/utils.js
@@ -1,3 +1,4 @@
+import React from 'react'
 import moment from 'moment'
 import md5 from 'md5'
 
@@ -2394,11 +2395,8 @@
  * @description 鑾峰彇鏍囪淇℃伅
  */
 export function getMark (marks, record, style = {}) {
-  let icon = null
-  let innerStyle = null
-  let position = null
-  let signType = ''
   style = JSON.parse(JSON.stringify(style))
+  let res = {style}
 
   marks.some(mark => {
     let originVal = record[mark.field[0]]
@@ -2433,43 +2431,46 @@
     let type = mark.signType[0]
 
     if (type === 'font') {
-      style.color = mark.color
-      innerStyle = {color: mark.color}
-      signType = ' sign-font'
+      res.style.color = mark.color
+      res.innerStyle = {color: mark.color}
+      res.signType = ' sign-font'
     } else if (type === 'background') {
-      style.backgroundColor = mark.color
+      res.style.backgroundColor = mark.color
       if (mark.fontColor) {
-        style.color = mark.fontColor
-        innerStyle = {color: mark.fontColor}
+        res.style.color = mark.fontColor
+        res.innerStyle = {color: mark.fontColor}
       }
     } else if (type === 'underline') {
-      style.textDecoration = 'underline'
-      style.color = mark.color
-      innerStyle = {color: mark.color, textDecoration: 'underline'}
+      res.style.textDecoration = 'underline'
+      res.style.color = mark.color
+      res.innerStyle = {color: mark.color, textDecoration: 'underline'}
     } else if (type === 'line-through') {
-      style.textDecoration = 'line-through'
-      style.color = mark.color
-      innerStyle = {color: mark.color, textDecoration: 'line-through'}
+      res.style.textDecoration = 'line-through'
+      res.style.color = mark.color
+      res.innerStyle = {color: mark.color, textDecoration: 'line-through'}
     } else if (type.indexOf('icon') > -1) {
-      icon = mark.signType[mark.signType.length - 1]
-      innerStyle = {color: mark.color}
+      res.icon = mark.signType[mark.signType.length - 1]
+      res.innerStyle = {color: mark.color}
       if (type === 'iconfront' || mark.signType[1] === 'front') {
-        position = 'front'
+        res.position = 'front'
       } else {
-        position = 'back'
+        res.position = 'back'
       }
+    } else if (type === 'indent') {
+      res.style.color = mark.color
+      res.space = Array(mark.signType[1] + 1).join('&nbsp;')
+    } else if (type === 'pointfront') {
+      res.position = 'front'
+      res.point = <span style={{display: 'inline-block', marginRight: '3px', width: '8px', height: '8px', borderRadius: '14px', background: mark.color, verticalAlign: 'middle'}}></span>
+    } else if (type === 'pointback') {
+      res.position = 'back'
+      res.point = <span style={{display: 'inline-block', marginLeft: '3px', width: '8px', height: '8px', borderRadius: '14px', background: mark.color, verticalAlign: 'middle'}}></span>
     }
 
     return true
   })
 
-  return {
-    style,
-    icon,
-    innerStyle,
-    position,
-    signType
-  }
+  return res
 }
 
 /**

--
Gitblit v1.8.0