| 1 |
- {"remainingRequest":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\src\\pages\\marketing\\lottery\\index.vue?vue&type=script&lang=js","dependencies":[{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\src\\pages\\marketing\\lottery\\index.vue","mtime":1761185180119},{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\babel-loader\\lib\\index.js","mtime":456789000000},{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:DQppbXBvcnQgeyBtYXBTdGF0ZSB9IGZyb20gJ3Z1ZXgnOw0KaW1wb3J0IHsgbG90dGVyeUxpc3RBcGksIGxvdHRlcnlTdGF0dXNBcGkgfSBmcm9tICdAL2FwaS9sb3R0ZXJ5JzsNCmltcG9ydCB7IGZvcm1hdERhdGUgfSBmcm9tICdAL3V0aWxzL3ZhbGlkYXRlJzsNCmV4cG9ydCBkZWZhdWx0IHsNCiAgbmFtZTogJ3N0b3JlQmFyZ2FpbicsDQogIGZpbHRlcnM6IHsNCiAgICBmb3JtYXREYXRlKHRpbWUpIHsNCiAgICAgIGlmICh0aW1lICE9PSAwKSB7DQogICAgICAgIGxldCBkYXRlID0gbmV3IERhdGUodGltZSAqIDEwMDApOw0KICAgICAgICByZXR1cm4gZm9ybWF0RGF0ZShkYXRlLCAneXl5eS1NTS1kZCBoaDptbScpOw0KICAgICAgfQ0KICAgIH0sDQogIH0sDQogIGRhdGEoKSB7DQogICAgcmV0dXJuIHsNCiAgICAgIGxvYWRpbmc6IGZhbHNlLA0KICAgICAgdGFibGVMaXN0OiBbXSwNCiAgICAgIHRhYmxlRnJvbTogew0KICAgICAgICBzdGFydF9zdGF0dXM6ICcnLA0KICAgICAgICBzdGF0dXM6ICcnLA0KICAgICAgICBzdG9yZV9uYW1lOiAnJywNCiAgICAgICAgZXhwb3J0OiAwLA0KICAgICAgICBwYWdlOiAxLA0KICAgICAgICBmYWN0b3I6ICcnLA0KICAgICAgICBsaW1pdDogMTUsDQogICAgICB9LA0KICAgICAgdG90YWw6IDAsDQogICAgfTsNCiAgfSwNCiAgY29tcHV0ZWQ6IHsNCiAgICAuLi5tYXBTdGF0ZSgnYWRtaW4vbGF5b3V0JywgWydpc01vYmlsZSddKSwNCiAgICBsYWJlbFdpZHRoKCkgew0KICAgICAgcmV0dXJuIHRoaXMuaXNNb2JpbGUgPyB1bmRlZmluZWQgOiAnODBweCc7DQogICAgfSwNCiAgICBsYWJlbFBvc2l0aW9uKCkgew0KICAgICAgcmV0dXJuIHRoaXMuaXNNb2JpbGUgPyAndG9wJyA6ICdyaWdodCc7DQogICAgfSwNCiAgfSwNCiAgY3JlYXRlZCgpIHsNCiAgICB0aGlzLmdldExpc3QoKTsNCiAgfSwNCiAgbWV0aG9kczogew0KICAgIC8vIOa3u+WKoA0KICAgIGFkZCgpIHsNCiAgICAgIHRoaXMuJHJvdXRlci5wdXNoKHsgcGF0aDogdGhpcy4kcm91dGVQcm9TdHIgKyAnL21hcmtldGluZy9sb3R0ZXJ5L2NyZWF0ZScgfSk7DQogICAgfSwNCiAgICAvLyDnvJbovpENCiAgICBlZGl0KHJvdykgew0KICAgICAgdGhpcy4kcm91dGVyLnB1c2goew0KICAgICAgICBuYW1lOiAnbWFya2V0aW5nX2NyZWF0ZScsDQogICAgICAgIHF1ZXJ5OiB7DQogICAgICAgICAgaWQ6IHJvdy5pZCwNCiAgICAgICAgfSwNCiAgICAgIH0pOw0KICAgIH0sDQogICAgLy8g5LiA6ZSu5aSN5Yi2DQogICAgY29weShyb3cpIHsNCiAgICAgIHRoaXMuJHJvdXRlci5wdXNoKHsNCiAgICAgICAgbmFtZTogJ21hcmtldGluZ19jcmVhdGUnLA0KICAgICAgICBxdWVyeTogew0KICAgICAgICAgIGlkOiByb3cuaWQsDQogICAgICAgICAgY29weTogMSwNCiAgICAgICAgfSwNCiAgICAgIH0pOw0KICAgIH0sDQogICAgLy8g5Yig6ZmkDQogICAgZGVsKHJvdywgdGl0LCBudW0pIHsNCiAgICAgIGxldCBkZWxmcm9tRGF0YSA9IHsNCiAgICAgICAgdGl0bGU6IHRpdCwNCiAgICAgICAgbnVtOiBudW0sDQogICAgICAgIHVybDogYG1hcmtldGluZy9sb3R0ZXJ5L2RlbC8ke3Jvdy5pZH1gLA0KICAgICAgICBtZXRob2Q6ICdERUxFVEUnLA0KICAgICAgICBpZHM6ICcnLA0KICAgICAgfTsNCiAgICAgIHRoaXMuJG1vZGFsU3VyZShkZWxmcm9tRGF0YSkNCiAgICAgICAgLnRoZW4oKHJlcykgPT4gew0KICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uuc3VjY2VzcyhyZXMubXNnKTsNCiAgICAgICAgICB0aGlzLnRhYmxlTGlzdC5zcGxpY2UobnVtLCAxKTsNCiAgICAgICAgfSkNCiAgICAgICAgLmNhdGNoKChyZXMpID0+IHsNCiAgICAgICAgICB0aGlzLiRtZXNzYWdlLmVycm9yKHJlcy5tc2cpOw0KICAgICAgICB9KTsNCiAgICB9LA0KICAgIC8v5p+l55yL5oq95aWW6K6w5b2VDQogICAgZ2V0UmVjb3JkaW5nKHJvdykgew0KICAgICAgdGhpcy4kcm91dGVyLnB1c2goew0KICAgICAgICBwYXRoOiB0aGlzLiRyb3V0ZVByb1N0ciArIGAvbWFya2V0aW5nL2xvdHRlcnkvcmVjb3JkaW5nX2xpc3RgLA0KICAgICAgICBxdWVyeTogew0KICAgICAgICAgIGlkOiByb3cuaWQsDQogICAgICAgIH0sDQogICAgICB9KTsNCiAgICB9LA0KICAgIC8vIOWIl+ihqA0KICAgIGdldExpc3QoKSB7DQogICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlOw0KICAgICAgdGhpcy50YWJsZUZyb20uc3RhcnRfc3RhdHVzID0gdGhpcy50YWJsZUZyb20uc3RhcnRfc3RhdHVzIHx8ICcnOw0KICAgICAgdGhpcy50YWJsZUZyb20uc3RhdHVzID0gdGhpcy50YWJsZUZyb20uc3RhdHVzIHx8ICcnOw0KICAgICAgbG90dGVyeUxpc3RBcGkodGhpcy50YWJsZUZyb20pDQogICAgICAgIC50aGVuKGFzeW5jIChyZXMpID0+IHsNCiAgICAgICAgICBsZXQgZGF0YSA9IHJlcy5kYXRhOw0KICAgICAgICAgIHRoaXMudGFibGVMaXN0ID0gZGF0YS5saXN0Ow0KICAgICAgICAgIHRoaXMudG90YWwgPSByZXMuZGF0YS5jb3VudDsNCiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTsNCiAgICAgICAgfSkNCiAgICAgICAgLmNhdGNoKChyZXMpID0+IHsNCiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTsNCiAgICAgICAgICB0aGlzLiRtZXNzYWdlLmVycm9yKHJlcy5tc2cpOw0KICAgICAgICB9KTsNCiAgICB9LA0KICAgIC8vIOihqOagvOaQnOe0og0KICAgIHVzZXJTZWFyY2hzKCkgew0KICAgICAgdGhpcy50YWJsZUZyb20ucGFnZSA9IDE7DQogICAgICB0aGlzLmdldExpc3QoKTsNCiAgICB9LA0KICAgIC8vIOS/ruaUueaYr+WQpuaYvuekug0KICAgIG9uY2hhbmdlSXNTaG93KHJvdykgew0KICAgICAgbGV0IGRhdGEgPSB7DQogICAgICAgIGlkOiByb3cuaWQsDQogICAgICAgIHN0YXR1czogcm93LnN0YXR1cywNCiAgICAgIH07DQogICAgICBsb3R0ZXJ5U3RhdHVzQXBpKGRhdGEpDQogICAgICAgIC50aGVuKGFzeW5jIChyZXMpID0+IHsNCiAgICAgICAgICB0aGlzLiRtZXNzYWdlLnN1Y2Nlc3MocmVzLm1zZyk7DQogICAgICAgICAgdGhpcy5nZXRMaXN0KCk7DQogICAgICAgIH0pDQogICAgICAgIC5jYXRjaCgocmVzKSA9PiB7DQogICAgICAgICAgdGhpcy4kbWVzc2FnZS5lcnJvcihyZXMubXNnKTsNCiAgICAgICAgICB0aGlzLmdldExpc3QoKTsNCiAgICAgICAgfSk7DQogICAgfSwNCiAgfSwNCn07DQo="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";AA2KA;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;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":"index.vue","sourceRoot":"src/pages/marketing/lottery","sourcesContent":["<template>\r\n <div>\r\n <el-card :bordered=\"false\" shadow=\"never\" class=\"ivu-mt\">\r\n <el-form\r\n ref=\"tableFrom\"\r\n :model=\"tableFrom\"\r\n :label-width=\"labelWidth\"\r\n :label-position=\"labelPosition\"\r\n @submit.native.prevent\r\n >\r\n <el-scope.row :gutter=\"24\">\r\n <el-col>\r\n <el-form-item label=\"活动类型:\" clearable>\r\n <el-select\r\n style=\"width: 200px\"\r\n v-model=\"tableFrom.factor\"\r\n placeholder=\"请选择活动类型\"\r\n clearable\r\n @change=\"userSearchs\"\r\n >\r\n <el-option value=\"1\" label=\"积分抽取\"></el-option>\r\n <el-option value=\"3\" label=\"订单支付\"></el-option>\r\n <el-option value=\"4\" label=\"订单评价\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col>\r\n <el-form-item label=\"活动状态:\" clearable>\r\n <el-select\r\n style=\"width: 200px\"\r\n v-model=\"tableFrom.start_status\"\r\n placeholder=\"请选择\"\r\n clearable\r\n @change=\"userSearchs\"\r\n >\r\n <el-option value=\"0\" label=\"未开始\"></el-option>\r\n <el-option value=\"1\" label=\"进行中\"></el-option>\r\n <el-option value=\"-1\" label=\"已结束\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n\r\n <el-col>\r\n <el-form-item label=\"上架状态:\">\r\n <el-select\r\n style=\"width: 200px\"\r\n placeholder=\"请选择\"\r\n v-model=\"tableFrom.status\"\r\n clearable\r\n @change=\"userSearchs\"\r\n >\r\n <el-option value=\"1\" label=\"上架\"></el-option>\r\n <el-option value=\"0\" label=\"下架\"></el-option>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col>\r\n <el-form-item label=\"抽奖搜索:\" label-for=\"store_name\">\r\n <el-input\r\n search\r\n enter-button\r\n style=\"width: 200px\"\r\n placeholder=\"请输入抽奖名称,ID\"\r\n v-model=\"tableFrom.store_name\"\r\n @on-search=\"userSearchs\"\r\n />\r\n </el-form-item>\r\n </el-col>\r\n </el-scope.row>\r\n <el-scope.row class=\"mb20\">\r\n <el-button v-auth=\"['marketing-store_bargain-create']\" type=\"primary\" v-db-click @click=\"add\" class=\"mr10\"\r\n >添加抽奖</el-button\r\n >\r\n </el-scope.row>\r\n </el-form>\r\n <el-table\r\n :data=\"tableList\"\r\n v-loading=\"loading\"\r\n highlight-scope.row\r\n no-userFrom-text=\"暂无数据\"\r\n no-filtered-userFrom-text=\"暂无筛选结果\"\r\n >\r\n <el-table-column label=\"ID\" width=\"80\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.id }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"活动名称\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.name }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"活动类型\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.lottery_type }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"参与次数\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.lottery_all }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"抽奖人数\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.lottery_people }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"中奖人数\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.lottery_win }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"活动状态\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.status_name }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"上架状态\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <el-switch\r\n class=\"defineSwitch\"\r\n :active-value=\"1\"\r\n :inactive-value=\"0\"\r\n v-model=\"scope.row.status\"\r\n :value=\"scope.row.status\"\r\n :disabled=\"scope.row.lottery_status == 2 ? true : false\"\r\n @change=\"onchangeIsShow(scope.row)\"\r\n size=\"large\"\r\n active-text=\"上架\"\r\n inactive-text=\"下架\"\r\n >\r\n </el-switch>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"活动时间\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <div>起:{{ scope.row.start_time || '--' }}</div>\r\n <div>止:{{ scope.row.end_time || '--' }}</div>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"活动状态\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.status_name }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"操作\" fixed=\"right\" width=\"170\">\r\n <template slot-scope=\"scope\">\r\n <a v-db-click @click=\"edit(scope.row)\">编辑</a>\r\n <el-divider direction=\"vertical\"></el-divider>\r\n <a v-db-click @click=\"del(scope.row, '删除抽奖', scope.$index)\">删除</a>\r\n <el-divider direction=\"vertical\"></el-divider>\r\n <a v-db-click @click=\"copy(scope.row)\">复制</a>\r\n <el-divider direction=\"vertical\"></el-divider>\r\n <a v-db-click @click=\"getRecording(scope.row)\">抽奖记录</a>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n <div class=\"acea-row row-right page\">\r\n <pagination\r\n v-if=\"total\"\r\n :total=\"total\"\r\n :page.sync=\"tableFrom.page\"\r\n :limit.sync=\"tableFrom.limit\"\r\n @pagination=\"getList\"\r\n />\r\n </div>\r\n </el-card>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { mapState } from 'vuex';\r\nimport { lotteryListApi, lotteryStatusApi } from '@/api/lottery';\r\nimport { formatDate } from '@/utils/validate';\r\nexport default {\r\n name: 'storeBargain',\r\n filters: {\r\n formatDate(time) {\r\n if (time !== 0) {\r\n let date = new Date(time * 1000);\r\n return formatDate(date, 'yyyy-MM-dd hh:mm');\r\n }\r\n },\r\n },\r\n data() {\r\n return {\r\n loading: false,\r\n tableList: [],\r\n tableFrom: {\r\n start_status: '',\r\n status: '',\r\n store_name: '',\r\n export: 0,\r\n page: 1,\r\n factor: '',\r\n limit: 15,\r\n },\r\n total: 0,\r\n };\r\n },\r\n computed: {\r\n ...mapState('admin/layout', ['isMobile']),\r\n labelWidth() {\r\n return this.isMobile ? undefined : '80px';\r\n },\r\n labelPosition() {\r\n return this.isMobile ? 'top' : 'right';\r\n },\r\n },\r\n created() {\r\n this.getList();\r\n },\r\n methods: {\r\n // 添加\r\n add() {\r\n this.$router.push({ path: this.$routeProStr + '/marketing/lottery/create' });\r\n },\r\n // 编辑\r\n edit(row) {\r\n this.$router.push({\r\n name: 'marketing_create',\r\n query: {\r\n id: row.id,\r\n },\r\n });\r\n },\r\n // 一键复制\r\n copy(row) {\r\n this.$router.push({\r\n name: 'marketing_create',\r\n query: {\r\n id: row.id,\r\n copy: 1,\r\n },\r\n });\r\n },\r\n // 删除\r\n del(row, tit, num) {\r\n let delfromData = {\r\n title: tit,\r\n num: num,\r\n url: `marketing/lottery/del/${row.id}`,\r\n method: 'DELETE',\r\n ids: '',\r\n };\r\n this.$modalSure(delfromData)\r\n .then((res) => {\r\n this.$message.success(res.msg);\r\n this.tableList.splice(num, 1);\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\r\n });\r\n },\r\n //查看抽奖记录\r\n getRecording(row) {\r\n this.$router.push({\r\n path: this.$routeProStr + `/marketing/lottery/recording_list`,\r\n query: {\r\n id: row.id,\r\n },\r\n });\r\n },\r\n // 列表\r\n getList() {\r\n this.loading = true;\r\n this.tableFrom.start_status = this.tableFrom.start_status || '';\r\n this.tableFrom.status = this.tableFrom.status || '';\r\n lotteryListApi(this.tableFrom)\r\n .then(async (res) => {\r\n let data = res.data;\r\n this.tableList = data.list;\r\n this.total = res.data.count;\r\n this.loading = false;\r\n })\r\n .catch((res) => {\r\n this.loading = false;\r\n this.$message.error(res.msg);\r\n });\r\n },\r\n // 表格搜索\r\n userSearchs() {\r\n this.tableFrom.page = 1;\r\n this.getList();\r\n },\r\n // 修改是否显示\r\n onchangeIsShow(row) {\r\n let data = {\r\n id: row.id,\r\n status: row.status,\r\n };\r\n lotteryStatusApi(data)\r\n .then(async (res) => {\r\n this.$message.success(res.msg);\r\n this.getList();\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\r\n this.getList();\r\n });\r\n },\r\n },\r\n};\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.tabBox_img {\r\n width: 36px;\r\n height: 36px;\r\n border-radius: 4px;\r\n cursor: pointer;\r\n\r\n img {\r\n width: 100%;\r\n height: 100%;\r\n }\r\n}\r\n</style>\r\n"]}]}
|