| 1 |
- {"remainingRequest":"/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/node_modules/babel-loader/lib/index.js!/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/node_modules/cache-loader/dist/cjs.js??ref--0-0!/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/node_modules/vue-loader/lib/index.js??vue-loader-options!/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/src/view/system-config/bannerManage.vue?vue&type=script&lang=js&","dependencies":[{"path":"/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/src/view/system-config/bannerManage.vue","mtime":1618306924000},{"path":"/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/node_modules/cache-loader/dist/cjs.js","mtime":1665684022107},{"path":"/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/node_modules/babel-loader/lib/index.js","mtime":1665684010704},{"path":"/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/node_modules/cache-loader/dist/cjs.js","mtime":1665684022107},{"path":"/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/node_modules/vue-loader/lib/index.js","mtime":1665684006084}],"contextDependencies":[],"result":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport axios from '@/libs/api.request';\nexport default {\n name: 'banner',\n\n data() {\n return {\n addBanner: false,\n editBanner: false,\n formAdd: {\n title: '',\n sort: '',\n img: ''\n },\n formEdit: {\n title: '',\n sort: '',\n img: ''\n },\n bannerUrl: this.$config.baseUrl.pro,\n columns: [{\n title: '排序',\n key: 'sort',\n width: 150\n }, {\n title: '图片',\n key: 'img',\n align: 'center',\n render: (h, params) => {\n return h('div', {\n style: {\n \"width\": '80px',\n \"height\": '80px',\n padding: '5px'\n }\n }, [h('img', {\n attrs: {\n src: this.bannerUrl + params.row.img\n },\n style: {\n \"max-width\": '100%',\n \"max-height\": '100%'\n }\n })]);\n }\n }, {\n title: '标题',\n key: 'title'\n }, {\n title: '操作',\n minWidth: 200,\n key: 'action',\n align: 'center',\n render: (h, params) => {\n let btnArr = [];\n btnArr.push(h('Button', {\n props: {\n size: 'small',\n type: 'primary'\n },\n style: {\n marginTop: '5px',\n marginBottom: '5px',\n marginRight: '5px'\n },\n on: {\n click: () => {\n let _this = this;\n\n _this.editBanner = true;\n _this.formEdit.id = params.row.id;\n _this.formEdit.title = params.row.title;\n _this.formEdit.img = params.row.img;\n _this.formEdit.sort = params.row.sort;\n }\n },\n directives: [{\n name: 'opcode',\n value: 'admins/system/slider/update'\n }]\n }, '编辑'));\n btnArr.push(h('Button', {\n props: {\n size: 'small',\n type: 'error'\n },\n style: {\n marginTop: '5px',\n marginBottom: '5px',\n marginRight: '5px'\n },\n on: {\n click: () => {\n let _this = this;\n\n this.$Modal.confirm({\n title: '确定删除该条数据吗?',\n content: '',\n loading: true,\n onOk: () => {\n _this.delBanner(params.row.id);\n }\n });\n }\n },\n directives: [{\n name: 'opcode',\n value: 'admins/system/slider/del'\n }]\n }, '删除'));\n return h('div', btnArr);\n }\n }],\n tableData: []\n };\n },\n\n created() {\n this.getBanner();\n },\n\n methods: {\n addBtn() {\n if (this.tableData.length >= 5) {\n this.$Message.warning('最多只能添加5个轮播图');\n return;\n }\n\n this.addBanner = true;\n },\n\n cancel() {\n this.formAdd.title = '';\n this.formAdd.sort = '';\n this.formAdd.img = '';\n this.formAdd.url = '';\n this.$refs.imgupload.fileList = [];\n },\n\n uploadBannerSuccess(res, file) {\n if (res.code == 'success') {\n this.$set(this.formAdd, 'img', res.data.url);\n this.$refs.imgupload.fileList = [];\n } else {\n this.$Message.error(res.message);\n }\n },\n\n uploadBannerSuccessEdit(res, file) {\n if (res.code == 'success') {\n this.$set(this.formEdit, 'img', res.data.url);\n this.$refs.imguploadEdit.fileList = [];\n } else {\n this.$Message.error(res.message);\n }\n },\n\n handleImgBefore(res) {\n this.$refs.imgupload.fileList = [];\n },\n\n handleImgBeforeEdit(res) {\n this.$refs.imguploadEdit.fileList = [];\n },\n\n saveBanner() {\n let _this = this;\n\n if (!_this.formAdd.sort) {\n _this.$Message.error('请输入排序!');\n\n return;\n }\n\n if (!_this.formAdd.img) {\n _this.$Message.error('请上传图片!');\n\n return;\n }\n\n axios.request({\n url: '/admins/system/slider/add',\n data: _this.formAdd,\n method: 'POST'\n }).then(res => {\n if (res.data.code === 'success') {\n _this.addBanner = false;\n\n _this.$Modal.remove();\n\n _this.$Message.success(res.data.message, 'middle');\n\n _this.getBanner();\n\n _this.cancel();\n } else {\n _this.$Message.error(res.data.message);\n }\n });\n },\n\n saveBannerEdit() {\n let _this = this;\n\n if (!_this.formEdit.sort) {\n _this.$Message.error('请输入排序!');\n\n return;\n }\n\n if (!_this.formEdit.img) {\n _this.$Message.error('请上传图片!');\n\n return;\n }\n\n axios.request({\n url: '/admins/system/slider/update',\n data: _this.formEdit,\n method: 'POST'\n }).then(res => {\n if (res.data.code === 'success') {\n _this.editBanner = false;\n\n _this.$Modal.remove();\n\n _this.$Message.success(res.data.message, 'middle');\n\n _this.getBanner();\n\n _this.formEdit.title = '';\n _this.formEdit.sort = '';\n _this.formEdit.img = '';\n _this.formEdit.url = '';\n _this.$refs.imguploadEdit.fileList = [];\n } else {\n _this.$Message.error(res.data.message);\n }\n });\n },\n\n getBanner() {\n let _this = this;\n\n axios.request({\n url: 'admins/system/slider/index',\n method: 'POST'\n }).then(res => {\n if (res.data.code === 'success') {\n _this.tableData = res.data.data;\n } else {\n _this.$Message.error(res.data.message);\n }\n });\n },\n\n delBanner(id) {\n let _this = this;\n\n axios.request({\n url: '/admins/system/slider/del',\n data: {\n id: id\n },\n method: 'POST'\n }).then(res => {\n if (res.data.code === 'success') {\n _this.$Modal.remove();\n\n _this.$Message.success(res.data.message, 'middle');\n\n _this.getBanner();\n } else {\n _this.$Message.error(res.data.message);\n }\n });\n }\n\n }\n};",{"version":3,"sources":["bannerManage.vue"],"names":[],"mappings":"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","sourcesContent":["<template>\n <div>\n <Card>\n <Row>\n <Form :label-width=\"60\">\n <FormItem :label-width=\"0\">\n <Button type=\"primary\" @click=\"addBtn\" opcode=\"'admins/system/slider/add'\">新增轮播图</Button>\n </FormItem>\n </Form>\n </Row>\n <Row class=\"mt10\">\n <Table border ref=\"selection\" :columns=\"columns\" :data=\"tableData\">\n </Table>\n </Row>\n </Card>\n <!-- 添加轮播图 -->\n <Modal v-model=\"addBanner\" title=\"添加轮播图\" @on-cancel=\"cancel\"\n :mask-closable=\"false\">\n <Form ref='formAdd' :model='formAdd' :label-width=\"120\">\n <FormItem label=\"排序:\">\n <Input v-model.number=\"formAdd.sort\" placeholder=\"请输入序号\"/>\n </FormItem>\n <FormItem label=\"标题(选填):\">\n <Input v-model=\"formAdd.title\" placeholder=\"请输入标题\"/>\n </FormItem>\n <FormItem label=\"图片上传:\">\n <div class=\"banner_img\" v-show=\"formAdd.img\"><img :src=\"bannerUrl+formAdd.img\"></div>\n <Upload action=\"/api/uploadImg\" name=\"image\" ref=\"imgupload\" :format=\"['jpg','jpeg','png']\" :before-upload=\"handleImgBefore\" :on-success=\"uploadBannerSuccess\">\n <Button icon=\"ios-cloud-upload-outline\">点击上传</Button>\n </Upload>\n </FormItem>\n <FormItem>\n <Button type=\"primary\" @click=\"saveBanner\" style=\"margin-left:20%;\">保存并发布</Button>\n <Button @click=\"cancel;addBanner=false\" style=\"margin-left: 10px;\">取消</Button>\n </FormItem>\n </Form>\n <div slot=\"footer\">\n <!-- <Row type=\"flex\" justify=\"center\">\n <Button @click=\"showCurrency=false\">关闭</Button>\n </Row> -->\n </div>\n </Modal>\n\n <!-- 编辑轮播图 -->\n <Modal v-model=\"editBanner\" title=\"编辑轮播图\" :mask-closable=\"false\">\n <Form ref='formAdd' :model='formEdit' :label-width=\"120\">\n <FormItem label=\"排序:\">\n <Input v-model.number=\"formEdit.sort\" placeholder=\"请输入序号\"/>\n </FormItem>\n <FormItem label=\"标题(选填):\">\n <Input v-model=\"formEdit.title\" placeholder=\"请输入标题\"/>\n </FormItem>\n <FormItem label=\"图片上传:\">\n <div class=\"banner_img\"><img :src=\"bannerUrl+formEdit.img\"></div>\n <Upload action=\"/api/uploadImg\" name=\"image\" ref=\"imguploadEdit\" :format=\"['jpg','jpeg','png']\" :before-upload=\"handleImgBeforeEdit\" :on-success=\"uploadBannerSuccessEdit\">\n <Button icon=\"ios-cloud-upload-outline\">点击上传</Button>\n </Upload>\n </FormItem>\n <FormItem>\n <Button type=\"primary\" @click=\"saveBannerEdit\" style=\"margin-left:20%;\">保存并发布</Button>\n <Button @click=\"editBanner=false\" style=\"margin-left: 10px;\">取消</Button>\n </FormItem>\n </Form>\n <div slot=\"footer\">\n <!-- <Row type=\"flex\" justify=\"center\">\n <Button @click=\"showCurrency=false\">关闭</Button>\n </Row> -->\n </div>\n </Modal>\n </div>\n</template>\n<script>\n import axios from '@/libs/api.request'\n export default{\n name: 'banner',\n data(){\n return {\n addBanner: false,\n editBanner: false,\n formAdd: {title: '', sort: '', img: ''},\n formEdit: {title: '', sort: '', img: ''},\n bannerUrl:this.$config.baseUrl.pro,\n columns: [\n {\n title: '排序',\n key: 'sort',\n width: 150\n },\n {\n title: '图片',\n key: 'img',\n align: 'center',\n render: (h, params) => {\n return h('div', {\n style: {\n \"width\": '80px',\n \"height\": '80px',\n padding: '5px'\n }\n }, [\n h('img', {\n attrs: {\n src: this.bannerUrl + params.row.img\n },\n style: {\n \"max-width\": '100%',\n \"max-height\": '100%'\n }\n }),\n ]);\n }\n },\n {\n title: '标题',\n key: 'title'\n },\n {\n title: '操作',\n minWidth: 200,\n key: 'action',\n align: 'center',\n render: (h, params) => {\n let btnArr = []\n btnArr.push(\n h('Button', {\n props: {\n size: 'small',\n type: 'primary'\n },\n style: {\n marginTop: '5px',\n marginBottom: '5px',\n marginRight: '5px'\n },\n on: {\n click: () => {\n let _this = this;\n _this.editBanner = true;\n _this.formEdit.id = params.row.id;\n _this.formEdit.title = params.row.title;\n _this.formEdit.img = params.row.img;\n _this.formEdit.sort = params.row.sort;\n }\n },\n directives: [\n {\n name: 'opcode',\n value: 'admins/system/slider/update'\n }\n ]\n }, '编辑'))\n btnArr.push(\n h('Button', {\n props: {\n size: 'small',\n type: 'error'\n },\n style: {\n marginTop: '5px',\n marginBottom: '5px',\n marginRight: '5px'\n },\n on: {\n click: () => {\n let _this = this;\n this.$Modal.confirm({\n title: '确定删除该条数据吗?',\n content: '',\n loading: true,\n onOk: () => {\n _this.delBanner(params.row.id);\n }\n })\n }\n },\n directives: [\n {\n name: 'opcode',\n value: 'admins/system/slider/del'\n }\n ]\n }, '删除')\n );\n return h('div', btnArr)\n }\n }\n ],\n tableData: []\n }\n },\n created(){\n this.getBanner();\n },\n methods: {\n addBtn(){\n if (this.tableData.length >= 5) {\n this.$Message.warning('最多只能添加5个轮播图');\n return;\n }\n this.addBanner = true\n },\n cancel(){\n this.formAdd.title = ''\n this.formAdd.sort = ''\n this.formAdd.img = ''\n this.formAdd.url = ''\n this.$refs.imgupload.fileList = []\n },\n uploadBannerSuccess (res, file) {\n if (res.code == 'success') {\n this.$set(this.formAdd, 'img', res.data.url)\n this.$refs.imgupload.fileList = []\n } else {\n this.$Message.error(res.message)\n }\n },\n uploadBannerSuccessEdit (res, file) {\n if (res.code == 'success') {\n this.$set(this.formEdit, 'img', res.data.url)\n this.$refs.imguploadEdit.fileList = []\n } else {\n this.$Message.error(res.message)\n }\n },\n handleImgBefore (res) {\n this.$refs.imgupload.fileList = []\n },\n handleImgBeforeEdit (res) {\n this.$refs.imguploadEdit.fileList = []\n },\n saveBanner(){\n let _this = this;\n if (!_this.formAdd.sort) {\n _this.$Message.error('请输入排序!');\n return;\n }\n if (!_this.formAdd.img) {\n _this.$Message.error('请上传图片!');\n return;\n }\n axios.request({\n url: '/admins/system/slider/add',\n data: _this.formAdd,\n method: 'POST'\n })\n .then(res => {\n if (res.data.code === 'success') {\n _this.addBanner = false\n _this.$Modal.remove()\n _this.$Message.success(res.data.message, 'middle')\n _this.getBanner();\n _this.cancel();\n } else {\n _this.$Message.error(res.data.message)\n }\n })\n },\n saveBannerEdit(){\n let _this = this;\n if (!_this.formEdit.sort) {\n _this.$Message.error('请输入排序!');\n return;\n }\n if (!_this.formEdit.img) {\n _this.$Message.error('请上传图片!');\n return;\n }\n axios.request({\n url: '/admins/system/slider/update',\n data: _this.formEdit,\n method: 'POST'\n })\n .then(res => {\n if (res.data.code === 'success') {\n _this.editBanner = false\n _this.$Modal.remove()\n _this.$Message.success(res.data.message, 'middle')\n _this.getBanner();\n _this.formEdit.title = ''\n _this.formEdit.sort = ''\n _this.formEdit.img = ''\n _this.formEdit.url = ''\n _this.$refs.imguploadEdit.fileList = []\n } else {\n _this.$Message.error(res.data.message)\n }\n })\n },\n getBanner(){\n let _this = this;\n axios.request({\n url: 'admins/system/slider/index',\n method: 'POST'\n })\n .then(res => {\n if (res.data.code === 'success') {\n _this.tableData = res.data.data;\n } else {\n _this.$Message.error(res.data.message)\n }\n })\n },\n delBanner(id){\n let _this = this;\n axios.request({\n url: '/admins/system/slider/del',\n data: {id: id},\n method: 'POST'\n })\n .then(res => {\n if (res.data.code === 'success') {\n _this.$Modal.remove()\n _this.$Message.success(res.data.message, 'middle')\n _this.getBanner();\n } else {\n _this.$Message.error(res.data.message)\n }\n })\n }\n }\n }\n</script>\n<style scoped>\n .banner_img {\n max-width: 100px;\n max-height: 100px;\n margin-bottom: 5px;\n }\n\n .banner_img img {\n max-width: 100%;\n max-height: 100%;\n }\n</style>\n"],"sourceRoot":"src/view/system-config"}]}
|