{"remainingRequest":"C:\\Users\\100zone\\Desktop\\baizong\\community\\SmartCommunity\\videoSurveillance\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!C:\\Users\\100zone\\Desktop\\baizong\\community\\SmartCommunity\\videoSurveillance\\node_modules\\style-vw-loader\\index.js??ref--0-2!C:\\Users\\100zone\\Desktop\\baizong\\community\\SmartCommunity\\videoSurveillance\\src\\components\\common\\XKUpload.vue?vue&type=script&lang=js&","dependencies":[{"path":"C:\\Users\\100zone\\Desktop\\baizong\\community\\SmartCommunity\\videoSurveillance\\src\\components\\common\\XKUpload.vue","mtime":1663828782924},{"path":"C:\\Users\\100zone\\Desktop\\baizong\\community\\SmartCommunity\\videoSurveillance\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"C:\\Users\\100zone\\Desktop\\baizong\\community\\SmartCommunity\\videoSurveillance\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"C:\\Users\\100zone\\Desktop\\baizong\\community\\SmartCommunity\\videoSurveillance\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"C:\\Users\\100zone\\Desktop\\baizong\\community\\SmartCommunity\\videoSurveillance\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000},{"path":"C:\\Users\\100zone\\Desktop\\baizong\\community\\SmartCommunity\\videoSurveillance\\node_modules\\style-vw-loader\\index.js","mtime":1540864632000}],"contextDependencies":[],"result":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\r\nimport envConfig from '@/config';\r\nconst fileMatch = {\r\n excel: {\r\n label: \"Excel表格\",\r\n reg: /\\.(xls|xlsx|xlsm)$/,\r\n tip: \"导入文件只支持.xls、.xlsx或.xlsm格式的Excel\"\r\n },\r\n image: {\r\n label: \"图片\",\r\n reg: /\\.(png|gif|jpg|jpeg|PNG|GIF|JPG)$/,\r\n tip: \"导入文件只支持.png、.gif、.jpg或.jpeg格式的图片\"\r\n }\r\n};\r\nexport default {\r\n name: \"xk-upload\",\r\n props: {\r\n actionUrl: {\r\n type: String,\r\n default() {\r\n return \"/sc-community/excel/import/excel\";\r\n }\r\n },\r\n params: {\r\n type: Object,\r\n default() {\r\n return {};\r\n }\r\n },\r\n fileType: {\r\n type: String,\r\n default() {\r\n return \"excel\";\r\n }\r\n },\r\n limitSize: {\r\n type: Number, // 单位M\r\n default() {\r\n return 0;\r\n }\r\n }\r\n },\r\n methods: {\r\n beforeUpload(file) {\r\n let currentSize =\r\n this.limitSize || envConfig.upload[`${this.fileType}Size`] || 5;\r\n let currentType = fileMatch[this.fileType];\r\n const isMatchType = currentType.reg.test(file.name);\r\n const isMatchSize = file.size / 1024 / 1024 < currentSize;\r\n if (!isMatchType) {\r\n this.$message.error(currentType.tip);\r\n return false;\r\n }\r\n if (!isMatchSize) {\r\n this.$message.error(\r\n `上传${currentType.label}大小不能超过${currentSize}Mb!`\r\n );\r\n return false;\r\n }\r\n return isMatchType && isMatchSize;\r\n },\r\n formUpload(content) {\r\n if (!this.actionUrl) {\r\n return;\r\n }\r\n let formData = new FormData();\r\n formData.append(\"file\", content.file);\r\n _.each(_.keys(this.params), v => {\r\n formData.append(v, this.params[v]);\r\n });\r\n let loading = this.$loading();\r\n this.$http\r\n .post(this.actionUrl, formData)\r\n .then(({ status, msg }) => {\r\n loading.close();\r\n if (status === 0) {\r\n this.$message.success(\r\n this.fileType == \"excel\"\r\n ? \"上传成功,请稍后在消息查看上传结果\"\r\n : msg\r\n );\r\n setTimeout(() => {\r\n this.$store.dispatch(\"getMessageCount\");\r\n this.$emit(\"callback\");\r\n }, 1500);\r\n } else {\r\n this.$message.error(msg);\r\n }\r\n })\r\n .catch(() => {\r\n loading.close();\r\n });\r\n }\r\n }\r\n};\r\n",{"version":3,"sources":["XKUpload.vue"],"names":[],"mappings":";;;;;;;;;;;;;AAaA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"XKUpload.vue","sourceRoot":"src/components/common","sourcesContent":["\r\n\r\n\r\n\r\n\r\n"]}]}