const App = { mixins: [sharedMixin],/////共用的方法///// data() { return { loading: false, dialog: { addDialogStatus: false, }, Add_title: "新增销售平台", currindex: '', direction: 'ltr', clearable: false, useritem: {}, list: [], other: {}, clearable: false, searchdata: { page: 1, page_size: 50, kw: '', }, Add_form: {}, dialogImageUrl: '', dialogVisible_img: false, platformRegionList: [], }; }, mounted() { this.index(); this.getPlatformRegion(); }, created() { }, methods: { // 上传图片前验证大小 handleBeforeUpload(file) { return new Promise((resolve, reject) => { const suffix = file.type === 'image/jpg' || file.type === 'image/jpeg' || file.type === 'image/png' || file.type === 'image/gif' const isLt10M = file.size / 1024 / 1024 < 10 if (!suffix) { this.$message.error('上传图片只能是 JPG、JPEG、PNG、GIF 格式!') reject(false) } if (!isLt10M) { this.$message.error('上传图片大小不能超过 4MB!') reject(false) } resolve(true) }); }, //上传转账截图///// uploadLogo(param) { const that = this; var fileobj = param.file; var form = new FormData(); form.append('file', fileobj); form.append('logo', that.Add_form.logo); form.append('id', that.Add_form.id); const url = "/admin/" + viewPath + "/uploadLogo.html"; axios.post(url, form).then((res) => { if (res.data.code === 200) { that.$message({ message: res.data.message, type: 'success', plain: true, duration: 2000, }) that.Add_form.logo = res.data.logo; } param.onSuccess(res) }).catch(({ err }) => { param.onError(err) }); }, handleView() { this.dialogVisible_img = true; this.dialogImageUrl = this.Add_form.logo; }, ///修改扩展字段的值//// updateExt(row, field) { if (row.id) { let that = this; let url = "/admin/" + viewPath + "/updateExt.html" postRequest(url, { id: row.id, [field]: row[field] }).then(res => { if (res.data.code == 200) { that.$notify({ title: "成功", message: res.data.message, position: "top-left", type: "success", }); } else { that.$notify.error({ title: "错误", position: "top-left", message: res.data.message, }); } }); } }, del(index) { var that = this; let { id } = that.list[index]; that.$confirm( '确定删除吗?', '警告', { confirmButtonText: '删除', cancelButtonText: '取消', type: 'warning', center: true, } ).then(() => { let url = "/admin/" + viewPath + "/delete.html" postRequest(url, { id: id }).then(res => { if (res.data.code == 200) { that.$notify({ title: '成功', message: res.data.message, position: 'top-left', type: 'success' }); that.list.splice(index, 1) that.other.count--; } else { that.$notify.error({ title: '错误', position: 'top-left', message: res.data.message }); } }); ///////////// }).catch(() => { //取消 }) }, Add(index) { if (index >= 0) { this.Add_title = "编辑销售平台"; this.Add_form = this.list[index]; } else { this.Add_title = "新增销售平台"; this.Add_form = {} } this.loading = false; this.dialog.addDialogStatus = true; }, submit() { let that = this; that.loading = true let url = "/admin/" + viewPath + "/save.html" postRequest(url, that.Add_form).then(res => { that.loading = false; if (res.data.code == 200) { that.$notify({ title: '成功', message: res.data.message, position: 'top-left', type: 'success' }); this.dialog.addDialogStatus = false; that.index(); } else { that.$notify.error({ title: '错误', position: 'top-left', message: res.data.message }); } }).then((res) => { that.loading = false; }); }, handleSizeChange(val) { //////设置每页多少条 this.searchdata.page_size = val this.index(); }, handleCurrentChange(val) { ///改变当前页/////// this.searchdata.p = val this.index(); }, index() { let that = this; let url = "/admin/" + viewPath + "/index.html" postRequest(url, that.searchdata).then(res => { console.log(res) if (res.data.code == 200) { that.list = res.data.list; that.other = res.data.other; } else { that.list = []; } }); }, getPlatformRegion() { let that = this; let url = "/admin/" + viewPath + "/getPlatformRegion.html" postRequest(url, {}).then(res => { if (res.data.code == 200) { that.platformRegionList = res.data.list; } else { that.list = []; } }); }, } }; const app = Vue.createApp(App); for (const [key, component] of Object.entries(ElementPlusIconsVue)) { app.component(key, component) } app.use(ElementPlus, { locale: ElementPlusLocaleZhCn, }); app.mount("#vue_item");