From 80b41ff3018d9acdc2f48ce63ada3c0ca4a37b57 Mon Sep 17 00:00:00 2001
From: guanqb <18720758508@163.com>
Date: Tue, 20 Feb 2024 11:47:45 +0800
Subject: [PATCH] 手机号隐藏显示:1.E呼即办2.报事报修3.走访日志4.文章评论4.消防检查记录5.代办事务6.办结事务

---
 src/views/article/articleComment.vue |   26 ++++++++++++++++++++++++++
 1 files changed, 26 insertions(+), 0 deletions(-)

diff --git a/src/views/article/articleComment.vue b/src/views/article/articleComment.vue
index 6c857fc..d42b9f9 100644
--- a/src/views/article/articleComment.vue
+++ b/src/views/article/articleComment.vue
@@ -11,6 +11,12 @@
                     @click="handleDelete">批量删除
                 </el-button>
             </template>
+
+            <template slot-scope="{row, size}" slot="phone">
+                <el-button :size="size" type="text" @click="showStringDispose(row, 'phoneflag')"
+                    v-text="textDispose(row, 'phoneflag', 'phone')">
+                </el-button>
+            </template>
         </avue-crud>
     </basicContainer>
 </template>
@@ -71,6 +77,7 @@
                         searchSpan: 4,
                         search: true,
                         searchLabelWidth: 46,
+                        slot: true
                     },
                     {
                         width: 110,
@@ -110,8 +117,26 @@
             })
             return ids.join(",")
         },
+
+        textDispose () {
+            return (row, flag, type) => {
+                if (row[flag] || row[type] == null) {
+                    return row[type]
+                } else {
+                    if (type == 'principalIdCard') {
+                        return row[type].replace(/^(.{6})(?:\d+)(.{4})$/, "$1******$2")
+                    } else {
+                        return row[type].replace(/^(.{3})(?:\d+)(.{4})$/, "$1****$2")
+                    }
+                }
+            }
+        }
     },
     methods: {
+        showStringDispose (row, type) {
+            row[type] = !row[type]
+        },
+
         selectionChange (list) {
             this.selectionList = list
         },
@@ -185,6 +210,7 @@
                 this.page.total = data.total
                 this.dataList = data.records
                 this.dataList.forEach(item => {
+                    this.$set(item, 'phoneflag', false)
                     if (item.avatar) {
                         // var urls = []
                         // var names = item.avatar.split(",")

--
Gitblit v1.9.3