You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1 lines
12 KiB
1 lines
12 KiB
{"remainingRequest":"C:\\Users\\明允\\Desktop\\springboot\\vue\\node_modules\\babel-loader\\lib\\index.js!C:\\Users\\明允\\Desktop\\springboot\\vue\\node_modules\\cache-loader\\dist\\cjs.js??ref--1-0!C:\\Users\\明允\\Desktop\\springboot\\vue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!C:\\Users\\明允\\Desktop\\springboot\\vue\\src\\views\\File.vue?vue&type=script&lang=js","dependencies":[{"path":"C:\\Users\\明允\\Desktop\\springboot\\vue\\src\\views\\File.vue","mtime":1644654796509},{"path":"C:\\Users\\明允\\Desktop\\springboot\\vue\\babel.config.js","mtime":1642682271570},{"path":"C:\\Users\\明允\\Desktop\\springboot\\vue\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1713785856543},{"path":"C:\\Users\\明允\\Desktop\\springboot\\vue\\node_modules\\babel-loader\\lib\\index.js","mtime":1713785857863},{"path":"C:\\Users\\明允\\Desktop\\springboot\\vue\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1713785856543},{"path":"C:\\Users\\明允\\Desktop\\springboot\\vue\\node_modules\\vue-loader\\lib\\index.js","mtime":1713785858382}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvd2ViLmRvbS1leGNlcHRpb24uc3RhY2suanMiOwpleHBvcnQgZGVmYXVsdCB7CiAgbmFtZTogIkZpbGUiLAogIGRhdGEoKSB7CiAgICByZXR1cm4gewogICAgICB0YWJsZURhdGE6IFtdLAogICAgICBuYW1lOiAnJywKICAgICAgbXVsdGlwbGVTZWxlY3Rpb246IFtdLAogICAgICBwYWdlTnVtOiAxLAogICAgICBwYWdlU2l6ZTogMTAsCiAgICAgIHRvdGFsOiAwCiAgICB9OwogIH0sCiAgY3JlYXRlZCgpIHsKICAgIHRoaXMubG9hZCgpOwogIH0sCiAgbWV0aG9kczogewogICAgbG9hZCgpIHsKICAgICAgdGhpcy5yZXF1ZXN0LmdldCgiL2ZpbGUvcGFnZSIsIHsKICAgICAgICBwYXJhbXM6IHsKICAgICAgICAgIHBhZ2VOdW06IHRoaXMucGFnZU51bSwKICAgICAgICAgIHBhZ2VTaXplOiB0aGlzLnBhZ2VTaXplLAogICAgICAgICAgbmFtZTogdGhpcy5uYW1lCiAgICAgICAgfQogICAgICB9KS50aGVuKHJlcyA9PiB7CiAgICAgICAgdGhpcy50YWJsZURhdGEgPSByZXMuZGF0YS5yZWNvcmRzOwogICAgICAgIHRoaXMudG90YWwgPSByZXMuZGF0YS50b3RhbDsKICAgICAgfSk7CiAgICB9LAogICAgY2hhbmdlRW5hYmxlKHJvdykgewogICAgICB0aGlzLnJlcXVlc3QucG9zdCgiL2ZpbGUvdXBkYXRlIiwgcm93KS50aGVuKHJlcyA9PiB7CiAgICAgICAgaWYgKHJlcy5jb2RlID09PSAnMjAwJykgewogICAgICAgICAgdGhpcy4kbWVzc2FnZS5zdWNjZXNzKCLmk43kvZzmiJDlip8iKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfSwKICAgIGRlbChpZCkgewogICAgICB0aGlzLnJlcXVlc3QuZGVsZXRlKCIvZmlsZS8iICsgaWQpLnRoZW4ocmVzID0+IHsKICAgICAgICBpZiAocmVzLmNvZGUgPT09ICcyMDAnKSB7CiAgICAgICAgICB0aGlzLiRtZXNzYWdlLnN1Y2Nlc3MoIuWIoOmZpOaIkOWKnyIpOwogICAgICAgICAgdGhpcy5sb2FkKCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuJG1lc3NhZ2UuZXJyb3IoIuWIoOmZpOWksei0pSIpOwogICAgICAgIH0KICAgICAgfSk7CiAgICB9LAogICAgaGFuZGxlU2VsZWN0aW9uQ2hhbmdlKHZhbCkgewogICAgICBjb25zb2xlLmxvZyh2YWwpOwogICAgICB0aGlzLm11bHRpcGxlU2VsZWN0aW9uID0gdmFsOwogICAgfSwKICAgIGRlbEJhdGNoKCkgewogICAgICBsZXQgaWRzID0gdGhpcy5tdWx0aXBsZVNlbGVjdGlvbi5tYXAodiA9PiB2LmlkKTsgLy8gW3t9LCB7fSwge31dID0+IFsxLDIsM10KICAgICAgdGhpcy5yZXF1ZXN0LnBvc3QoIi9maWxlL2RlbC9iYXRjaCIsIGlkcykudGhlbihyZXMgPT4gewogICAgICAgIGlmIChyZXMuY29kZSA9PT0gJzIwMCcpIHsKICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uuc3VjY2Vzcygi5om56YeP5Yig6Zmk5oiQ5YqfIik7CiAgICAgICAgICB0aGlzLmxvYWQoKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy4kbWVzc2FnZS5lcnJvcigi5om56YeP5Yig6Zmk5aSx6LSlIik7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0sCiAgICByZXNldCgpIHsKICAgICAgdGhpcy5uYW1lID0gIiI7CiAgICAgIHRoaXMubG9hZCgpOwogICAgfSwKICAgIGhhbmRsZVNpemVDaGFuZ2UocGFnZVNpemUpIHsKICAgICAgY29uc29sZS5sb2cocGFnZVNpemUpOwogICAgICB0aGlzLnBhZ2VTaXplID0gcGFnZVNpemU7CiAgICAgIHRoaXMubG9hZCgpOwogICAgfSwKICAgIGhhbmRsZUN1cnJlbnRDaGFuZ2UocGFnZU51bSkgewogICAgICBjb25zb2xlLmxvZyhwYWdlTnVtKTsKICAgICAgdGhpcy5wYWdlTnVtID0gcGFnZU51bTsKICAgICAgdGhpcy5sb2FkKCk7CiAgICB9LAogICAgaGFuZGxlRmlsZVVwbG9hZFN1Y2Nlc3MocmVzKSB7CiAgICAgIHRoaXMuJG1lc3NhZ2Uuc3VjY2Vzcygi5LiK5Lyg5oiQ5YqfIik7CiAgICAgIHRoaXMubG9hZCgpOwogICAgfSwKICAgIGRvd25sb2FkKHVybCkgewogICAgICB3aW5kb3cub3Blbih1cmwpOwogICAgfSwKICAgIHByZXZpZXcodXJsKSB7CiAgICAgIHdpbmRvdy5vcGVuKCdodHRwczovL2ZpbGUua2VraW5nLmNuL29ubGluZVByZXZpZXc/dXJsPScgKyBlbmNvZGVVUklDb21wb25lbnQod2luZG93LmJ0b2EodXJsKSkpOwogICAgfQogIH0KfTs="},{"version":3,"names":["name","data","tableData","multipleSelection","pageNum","pageSize","total","created","load","methods","request","get","params","then","res","records","changeEnable","row","post","code","$message","success","del","id","delete","error","handleSelectionChange","val","console","log","delBatch","ids","map","v","reset","handleSizeChange","handleCurrentChange","handleFileUploadSuccess","download","url","window","open","preview","encodeURIComponent","btoa"],"sources":["src/views/File.vue"],"sourcesContent":["<template>\r\n <div>\r\n <div style=\"margin: 10px 0\">\r\n <el-input style=\"width: 200px\" placeholder=\"请输入名称\" suffix-icon=\"el-icon-search\" v-model=\"name\"></el-input>\r\n <el-button class=\"ml-5\" type=\"primary\" @click=\"load\">搜索</el-button>\r\n <el-button type=\"warning\" @click=\"reset\">重置</el-button>\r\n </div>\r\n <div style=\"margin: 10px 0\">\r\n <el-upload action=\"http://localhost:9090/file/upload\" :show-file-list=\"false\"\r\n :on-success=\"handleFileUploadSuccess\" style=\"display: inline-block\">\r\n <el-button type=\"primary\" class=\"ml-5\">上传文件 <i class=\"el-icon-top\"></i></el-button>\r\n </el-upload>\r\n <el-popconfirm\r\n class=\"ml-5\"\r\n confirm-button-text='确定'\r\n cancel-button-text='我再想想'\r\n icon=\"el-icon-info\"\r\n icon-color=\"red\"\r\n title=\"您确定批量删除这些数据吗?\"\r\n @confirm=\"delBatch\"\r\n >\r\n <el-button type=\"danger\" slot=\"reference\">批量删除 <i class=\"el-icon-remove-outline\"></i></el-button>\r\n </el-popconfirm>\r\n\r\n </div>\r\n <el-table :data=\"tableData\" border stripe :header-cell-class-name=\"'headerBg'\"\r\n @selection-change=\"handleSelectionChange\">\r\n <el-table-column type=\"selection\" width=\"55\"></el-table-column>\r\n <el-table-column prop=\"id\" label=\"ID\" width=\"80\"></el-table-column>\r\n <el-table-column prop=\"name\" label=\"文件名称\"></el-table-column>\r\n <el-table-column prop=\"type\" label=\"文件类型\"></el-table-column>\r\n <el-table-column prop=\"size\" label=\"文件大小(kb)\"></el-table-column>\r\n <el-table-column label=\"预览\">\r\n <template slot-scope=\"scope\">\r\n <el-button type=\"primary\" @click=\"preview(scope.row.url)\">预览</el-button>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"下载\">\r\n <template slot-scope=\"scope\">\r\n <el-button type=\"primary\" @click=\"download(scope.row.url)\">下载</el-button>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"启用\">\r\n <template slot-scope=\"scope\">\r\n <el-switch v-model=\"scope.row.enable\" active-color=\"#13ce66\" inactive-color=\"#ccc\"\r\n @change=\"changeEnable(scope.row)\"></el-switch>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"操作\" width=\"200\" align=\"center\">\r\n <template slot-scope=\"scope\">\r\n <el-popconfirm\r\n class=\"ml-5\"\r\n confirm-button-text='确定'\r\n cancel-button-text='我再想想'\r\n icon=\"el-icon-info\"\r\n icon-color=\"red\"\r\n title=\"您确定删除吗?\"\r\n @confirm=\"del(scope.row.id)\"\r\n >\r\n <el-button type=\"danger\" slot=\"reference\">删除 <i class=\"el-icon-remove-outline\"></i></el-button>\r\n </el-popconfirm>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n\r\n <div style=\"padding: 10px 0\">\r\n <el-pagination\r\n @size-change=\"handleSizeChange\"\r\n @current-change=\"handleCurrentChange\"\r\n :current-page=\"pageNum\"\r\n :page-sizes=\"[2, 5, 10, 20]\"\r\n :page-size=\"pageSize\"\r\n layout=\"total, sizes, prev, pager, next, jumper\"\r\n :total=\"total\">\r\n </el-pagination>\r\n </div>\r\n\r\n </div>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: \"File\",\r\n data() {\r\n return {\r\n tableData: [],\r\n name: '',\r\n multipleSelection: [],\r\n pageNum: 1,\r\n pageSize: 10,\r\n total: 0\r\n }\r\n },\r\n created() {\r\n this.load()\r\n },\r\n methods: {\r\n load() {\r\n this.request.get(\"/file/page\", {\r\n params: {\r\n pageNum: this.pageNum,\r\n pageSize: this.pageSize,\r\n name: this.name,\r\n }\r\n }).then(res => {\r\n\r\n this.tableData = res.data.records\r\n this.total = res.data.total\r\n\r\n })\r\n },\r\n changeEnable(row) {\r\n this.request.post(\"/file/update\", row).then(res => {\r\n if (res.code === '200') {\r\n this.$message.success(\"操作成功\")\r\n }\r\n })\r\n },\r\n del(id) {\r\n this.request.delete(\"/file/\" + id).then(res => {\r\n if (res.code === '200') {\r\n this.$message.success(\"删除成功\")\r\n this.load()\r\n } else {\r\n this.$message.error(\"删除失败\")\r\n }\r\n })\r\n },\r\n handleSelectionChange(val) {\r\n console.log(val)\r\n this.multipleSelection = val\r\n },\r\n delBatch() {\r\n let ids = this.multipleSelection.map(v => v.id) // [{}, {}, {}] => [1,2,3]\r\n this.request.post(\"/file/del/batch\", ids).then(res => {\r\n if (res.code === '200') {\r\n this.$message.success(\"批量删除成功\")\r\n this.load()\r\n } else {\r\n this.$message.error(\"批量删除失败\")\r\n }\r\n })\r\n },\r\n reset() {\r\n this.name = \"\"\r\n this.load()\r\n },\r\n handleSizeChange(pageSize) {\r\n console.log(pageSize)\r\n this.pageSize = pageSize\r\n this.load()\r\n },\r\n handleCurrentChange(pageNum) {\r\n console.log(pageNum)\r\n this.pageNum = pageNum\r\n this.load()\r\n },\r\n handleFileUploadSuccess(res) {\r\n this.$message.success(\"上传成功\")\r\n this.load()\r\n },\r\n download(url) {\r\n window.open(url)\r\n },\r\n preview(url) {\r\n window.open('https://file.keking.cn/onlinePreview?url=' + encodeURIComponent(window.btoa((url))))\r\n },\r\n }\r\n}\r\n</script>\r\n\r\n<style scoped>\r\n\r\n</style>\r\n"],"mappings":";AAiFA;EACAA,IAAA;EACAC,KAAA;IACA;MACAC,SAAA;MACAF,IAAA;MACAG,iBAAA;MACAC,OAAA;MACAC,QAAA;MACAC,KAAA;IACA;EACA;EACAC,QAAA;IACA,KAAAC,IAAA;EACA;EACAC,OAAA;IACAD,KAAA;MACA,KAAAE,OAAA,CAAAC,GAAA;QACAC,MAAA;UACAR,OAAA,OAAAA,OAAA;UACAC,QAAA,OAAAA,QAAA;UACAL,IAAA,OAAAA;QACA;MACA,GAAAa,IAAA,CAAAC,GAAA;QAEA,KAAAZ,SAAA,GAAAY,GAAA,CAAAb,IAAA,CAAAc,OAAA;QACA,KAAAT,KAAA,GAAAQ,GAAA,CAAAb,IAAA,CAAAK,KAAA;MAEA;IACA;IACAU,aAAAC,GAAA;MACA,KAAAP,OAAA,CAAAQ,IAAA,iBAAAD,GAAA,EAAAJ,IAAA,CAAAC,GAAA;QACA,IAAAA,GAAA,CAAAK,IAAA;UACA,KAAAC,QAAA,CAAAC,OAAA;QACA;MACA;IACA;IACAC,IAAAC,EAAA;MACA,KAAAb,OAAA,CAAAc,MAAA,YAAAD,EAAA,EAAAV,IAAA,CAAAC,GAAA;QACA,IAAAA,GAAA,CAAAK,IAAA;UACA,KAAAC,QAAA,CAAAC,OAAA;UACA,KAAAb,IAAA;QACA;UACA,KAAAY,QAAA,CAAAK,KAAA;QACA;MACA;IACA;IACAC,sBAAAC,GAAA;MACAC,OAAA,CAAAC,GAAA,CAAAF,GAAA;MACA,KAAAxB,iBAAA,GAAAwB,GAAA;IACA;IACAG,SAAA;MACA,IAAAC,GAAA,QAAA5B,iBAAA,CAAA6B,GAAA,CAAAC,CAAA,IAAAA,CAAA,CAAAV,EAAA;MACA,KAAAb,OAAA,CAAAQ,IAAA,oBAAAa,GAAA,EAAAlB,IAAA,CAAAC,GAAA;QACA,IAAAA,GAAA,CAAAK,IAAA;UACA,KAAAC,QAAA,CAAAC,OAAA;UACA,KAAAb,IAAA;QACA;UACA,KAAAY,QAAA,CAAAK,KAAA;QACA;MACA;IACA;IACAS,MAAA;MACA,KAAAlC,IAAA;MACA,KAAAQ,IAAA;IACA;IACA2B,iBAAA9B,QAAA;MACAuB,OAAA,CAAAC,GAAA,CAAAxB,QAAA;MACA,KAAAA,QAAA,GAAAA,QAAA;MACA,KAAAG,IAAA;IACA;IACA4B,oBAAAhC,OAAA;MACAwB,OAAA,CAAAC,GAAA,CAAAzB,OAAA;MACA,KAAAA,OAAA,GAAAA,OAAA;MACA,KAAAI,IAAA;IACA;IACA6B,wBAAAvB,GAAA;MACA,KAAAM,QAAA,CAAAC,OAAA;MACA,KAAAb,IAAA;IACA;IACA8B,SAAAC,GAAA;MACAC,MAAA,CAAAC,IAAA,CAAAF,GAAA;IACA;IACAG,QAAAH,GAAA;MACAC,MAAA,CAAAC,IAAA,+CAAAE,kBAAA,CAAAH,MAAA,CAAAI,IAAA,CAAAL,GAAA;IACA;EACA;AACA","ignoreList":[]}]} |