Browse Source

更新台账信息去重相同设备id的数据

zhangyu 5 years ago
parent
commit
b28fa60abc
1 changed files with 12 additions and 4 deletions
  1. 12 4
      src/utils/hasontableUtils.js

+ 12 - 4
src/utils/hasontableUtils.js

@@ -8,6 +8,14 @@ const handsonUtils = {
      * @return array     经过排序后或者经过搜索后的数组
      */
     getParam: function(changeData, source, hot, trimmedArr) {
+        function arrayUnique(arr, name){ //去重
+            var hash = {};
+            return arr.reduce(function(item, next) {
+                hash[next[name]] ? '' : hash[next[name]] = true && item.push(next);
+                return item;
+            }, []);
+        }
+        let newData = arrayUnique(changeData, 0)
         let param = "";
         //被筛选过后的数组
         // let trimmedArr = this.trimmedRows();
@@ -16,21 +24,21 @@ const handsonUtils = {
         if (trimmedArr.length && isSort) {
             //排序后的数组
             let sortArr = hot.getPlugin("columnSorting").rowsMapper.__arrayMap;
-            param = changeData.map(item => {
+            param = newData.map(item => {
                 return hot.getSourceDataAtRow(trimmedArr[sortArr[item[0]]]);
             });
         } else if (isSort) {
             //排序后的数组
             let sortArr = hot.getPlugin("columnSorting").rowsMapper.__arrayMap;
-            param = changeData.map(item => {
+            param = newData.map(item => {
                 return hot.getSourceDataAtRow(sortArr[item[0]]);
             });
         } else if (trimmedArr.length) {
-            param = changeData.map(item => {
+            param = newData.map(item => {
                 return hot.getSourceDataAtRow(trimmedArr[item[0]]);
             });
         } else {
-            param = changeData.map(item => {
+            param = newData.map(item => {
                 return hot.getSourceDataAtRow(item[0]);
             });
         }