|
|
@@ -456,6 +456,9 @@
|
|
|
: "--"
|
|
|
}}</span>
|
|
|
</div>
|
|
|
+ <div v-else-if="scope.column.columnname == 'projectname'">
|
|
|
+ <span>{{highlightDuplicates(scope.column.data[scope.column.columnname],scope.column.data.chars[0].projectname[0])}}</span>
|
|
|
+ </div>
|
|
|
<div v-else-if="scope.column.columnname == 'address'">
|
|
|
<span>{{scope.column.data.address || scope.column.data.province?scope.column.data.province+scope.column.data.city+scope.column.data.county+scope.column.data.address:'--'}}</span>
|
|
|
</div>
|
|
|
@@ -670,6 +673,7 @@ export default {
|
|
|
},
|
|
|
],
|
|
|
},
|
|
|
+ projectnameCheck:[]
|
|
|
};
|
|
|
},
|
|
|
computed: {
|
|
|
@@ -986,6 +990,21 @@ export default {
|
|
|
let res2 = await this.$store.dispatch("optiontypeselect", "projectgrade");
|
|
|
this.projectLead = res2.data;
|
|
|
},
|
|
|
+ highlightDuplicates(text, regex) {
|
|
|
+ const matches = [...text.matchAll(regex)];
|
|
|
+ let highlightedText = text;
|
|
|
+
|
|
|
+ // 反向迭代防止已添加标签影响后续索引位置
|
|
|
+ for (let i = matches.length - 1; i >= 0; i--) {
|
|
|
+ const match = matches[i][0];
|
|
|
+ highlightedText = highlightedText.replace(
|
|
|
+ new RegExp(match),
|
|
|
+ `<span style="color: red;">${match}</span>`
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ return highlightedText;
|
|
|
+ }
|
|
|
},
|
|
|
mounted() {},
|
|
|
created() {
|