{"remainingRequest":"D:\\jenkins\\workspace\\artfess-module\\node_modules\\thread-loader\\dist\\cjs.js!D:\\jenkins\\workspace\\artfess-module\\node_modules\\babel-loader\\lib\\index.js!D:\\jenkins\\workspace\\artfess-module\\src\\api\\mock-util.js","dependencies":[{"path":"D:\\jenkins\\workspace\\artfess-module\\src\\api\\mock-util.js","mtime":1675232038481},{"path":"D:\\jenkins\\workspace\\artfess-module\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\artfess-module\\node_modules\\thread-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\artfess-module\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000}],"contextDependencies":[],"result":["import \"core-js/modules/es6.string.iterator\";\nimport \"core-js/modules/es6.set\";\nimport \"core-js/modules/es6.array.sort\";\nimport \"core-js/modules/es6.object.keys\";\nimport \"core-js/modules/web.dom.iterable\";\nimport _toConsumableArray from \"D:/jenkins/workspace/artfess-module/node_modules/@babel/runtime/helpers/esm/toConsumableArray\";\nvar mockUtil = {\n // 通用分页查询方法\n query: function query(data, param) {\n var _this = this;\n\n data = data || [];\n param = param || {};\n\n var tmpAry = _toConsumableArray(data);\n\n if (param.querys && param.querys.length > 0) {\n var group = param.querys.groupByKey(\"group\"); // 每一个分组所对应的查询结果集(二维数组)\n\n var ary4group = [];\n Object.keys(group).forEach(function (g) {\n var tmp = _toConsumableArray(data);\n\n var qs = group[g]; // 同一组查询条件只取第一个条件中的relation作为当前组的组合关系\n\n var relation = qs[0][\"relation\"]; // AND类型的组合,每一个查询条件在上一次过滤的结果集中再次过滤\n\n if (relation == 'AND') {\n qs.forEach(function (q) {\n tmp = _this._query4operation(q, tmp);\n });\n ary4group.push(tmp);\n } // OR类型的组合,每一个查询条件得到单独的过滤结果集,最后将结果集合并去重\n else if (relation == 'OR') {\n var ary4query = [];\n qs.forEach(function (q) {\n var r = _this._query4operation(q, tmp); // 合并\n\n\n ary4query = ary4query.concat(r);\n }); // 去重\n\n ary4query.unique();\n ary4group.push(ary4query);\n } else {\n throw \"\\u5F53\\u524D\\u4F20\\u5165\\u7684relation\\u662F\".concat(relation, \"\\uFF0C\\u53EA\\u80FD\\u662F'AND'\\u6216'OR'\");\n }\n }); // 取多个分组的查询结果集的交集\n\n tmpAry = this._mixArray(ary4group);\n } // 排序\n\n\n if (param.sorter) {\n param.sorter.forEach(function (sort) {\n var directDic = ['ASC', 'DESC'];\n\n if (directDic.indexOf(sort.direction) == -1) {\n throw \"\\u4E0D\\u652F\\u6301\\u6392\\u5E8F\\u65B9\\u5411\".concat(sort.direction, \"\\uFF0C\\u4EC5\\u652F\\u6301\").concat(directDic);\n }\n\n var isASC = sort.direction == 'ASC';\n tmpAry.sort(function (pre, after) {\n return pre[sort.property] > after[sort.property] ? isASC ? 1 : -1 : isASC ? -1 : 1;\n });\n });\n } // 分页\n\n\n if (param.pageBean) {\n var _rows = tmpAry.slice((param.pageBean.page - 1) * param.pageBean.pageSize, param.pageBean.page * param.pageBean.pageSize);\n\n return {\n rows: _rows,\n page: param.pageBean.page,\n pageSize: param.pageBean.pageSize,\n total: tmpAry.length\n };\n } else {\n return {\n rows: rows\n };\n }\n },\n // 根据不同的查询条件进行过滤\n _query4operation: function _query4operation(query, ary) {\n var operation = query.operation;\n var permitOperations = ['EQUAL', 'LIKE', 'IN'];\n\n if (permitOperations.indexOf(operation) == -1) {\n throw \"\\u67E5\\u8BE2\\u6761\\u4EF6\\u4E0D\\u652F\\u6301\".concat(operation, \"\\uFF0C\\u4EC5\\u652F\\u6301\").concat(permitOperations);\n }\n\n var result = [];\n\n switch (operation) {\n case 'EQUAL':\n result = ary.filter(function (m) {\n return query.value === m[query.property];\n });\n break;\n\n case 'LIKE':\n result = ary.filter(function (m) {\n return m[query.property].indexOf(query.value) > -1;\n });\n break;\n\n case 'IN':\n result = ary.filter(function (m) {\n return query.value.indexOf(m[query.property]) > -1;\n });\n break;\n }\n\n return result;\n },\n // 多个数组之间取交集\n _mixArray: function _mixArray(ary4group) {\n ary4group = ary4group || [];\n var result = [];\n ary4group.forEach(function (ary, index) {\n if (index == 0) {\n result = _toConsumableArray(ary);\n } else {\n var set1 = new Set(result),\n set2 = new Set(ary);\n result = _toConsumableArray(new Set(_toConsumableArray(set1).filter(function (x) {\n return set2.has(x);\n })));\n }\n });\n return result;\n }\n};\nexport default mockUtil;",null]}