86bd0a3e1609afbc7e15226f4bd562b5.json 24 KB

1
  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\\storeSeckill\\index.vue?vue&type=script&lang=js","dependencies":[{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\src\\pages\\marketing\\storeSeckill\\index.vue","mtime":1761185180138},{"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:DQppbXBvcnQgeyBtYXBTdGF0ZSB9IGZyb20gJ3Z1ZXgnOw0KaW1wb3J0IHsgc2Vja2lsbExpc3RBcGksIHNlY2tpbGxTdGF0dXNBcGksIHN0b3JlU2Vja2lsbEFwaSwgc2Vja2lsbFRpbWVMaXN0QXBpIH0gZnJvbSAnQC9hcGkvbWFya2V0aW5nJzsNCmltcG9ydCB7IGZvcm1hdERhdGUgfSBmcm9tICdAL3V0aWxzL3ZhbGlkYXRlJzsNCmltcG9ydCB7IGV4cG9ydFNlY2tpbGxMaXN0IH0gZnJvbSAnQC9hcGkvZXhwb3J0LmpzJzsNCg0KZXhwb3J0IGRlZmF1bHQgew0KICBuYW1lOiAnbWFya2V0aW5nX3N0b3JlU2Vja2lsbCcsDQogIGZpbHRlcnM6IHsNCiAgICBmb3JtYXREYXRlKHRpbWUpIHsNCiAgICAgIGlmICh0aW1lICE9PSAwKSB7DQogICAgICAgIGxldCBkYXRlID0gbmV3IERhdGUodGltZSAqIDEwMDApOw0KICAgICAgICByZXR1cm4gZm9ybWF0RGF0ZShkYXRlLCAneXl5eS1NTS1kZCcpOw0KICAgICAgfQ0KICAgIH0sDQogIH0sDQogIGRhdGEoKSB7DQogICAgcmV0dXJuIHsNCiAgICAgIGxvYWRpbmc6IGZhbHNlLA0KICAgICAgY29sdW1uczE6IFsNCiAgICAgICAgew0KICAgICAgICAgIHRpdGxlOiAnSUQnLA0KICAgICAgICAgIGtleTogJ2lkJywNCiAgICAgICAgICB3aWR0aDogODAsDQogICAgICAgIH0sDQogICAgICAgIHsNCiAgICAgICAgICB0aXRsZTogJ+WVhuWTgeWbvueJhycsDQogICAgICAgICAgc2xvdDogJ2ltYWdlJywNCiAgICAgICAgICBtaW5XaWR0aDogOTAsDQogICAgICAgIH0sDQogICAgICAgIHsNCiAgICAgICAgICB0aXRsZTogJ+a0u+WKqOagh+mimCcsDQogICAgICAgICAga2V5OiAndGl0bGUnLA0KICAgICAgICAgIG1pbldpZHRoOiAxMzAsDQogICAgICAgIH0sDQogICAgICAgIHsNCiAgICAgICAgICB0aXRsZTogJ+a0u+WKqOeugOS7iycsDQogICAgICAgICAga2V5OiAnaW5mbycsDQogICAgICAgICAgbWluV2lkdGg6IDEwMCwNCiAgICAgICAgfSwNCiAgICAgICAgew0KICAgICAgICAgIHRpdGxlOiAn5Y6f5Lu3JywNCiAgICAgICAgICBrZXk6ICdvdF9wcmljZScsDQogICAgICAgICAgbWluV2lkdGg6IDEwMCwNCiAgICAgICAgfSwNCiAgICAgICAgew0KICAgICAgICAgIHRpdGxlOiAn56eS5p2A5Lu3JywNCiAgICAgICAgICBrZXk6ICdwcmljZScsDQogICAgICAgICAgbWluV2lkdGg6IDEwMCwNCiAgICAgICAgfSwNCiAgICAgICAgew0KICAgICAgICAgIHRpdGxlOiAn6ZmQ6YePJywNCiAgICAgICAgICBrZXk6ICdxdW90YV9zaG93JywNCiAgICAgICAgICBtaW5XaWR0aDogMTMwLA0KICAgICAgICB9LA0KICAgICAgICB7DQogICAgICAgICAgdGl0bGU6ICfpmZDph4/liankvZknLA0KICAgICAgICAgIGtleTogJ3F1b3RhJywNCiAgICAgICAgICBtaW5XaWR0aDogMTMwLA0KICAgICAgICB9LA0KICAgICAgICB7DQogICAgICAgICAgdGl0bGU6ICfnp5LmnYDnirbmgIEnLA0KICAgICAgICAgIGtleTogJ3N0YXJ0X25hbWUnLA0KICAgICAgICAgIG1pbldpZHRoOiAxMDAsDQogICAgICAgIH0sDQogICAgICAgIHsNCiAgICAgICAgICB0aXRsZTogJ+e7k+adn+aXtumXtCcsDQogICAgICAgICAgc2xvdDogJ3N0b3BfdGltZScsDQogICAgICAgICAgbWluV2lkdGg6IDEwMCwNCiAgICAgICAgfSwNCiAgICAgICAgew0KICAgICAgICAgIHRpdGxlOiAn54q25oCBJywNCiAgICAgICAgICBzbG90OiAnc3RhdHVzJywNCiAgICAgICAgICBtaW5XaWR0aDogMTAwLA0KICAgICAgICB9LA0KICAgICAgICB7DQogICAgICAgICAgdGl0bGU6ICfmk43kvZwnLA0KICAgICAgICAgIHNsb3Q6ICdhY3Rpb24nLA0KICAgICAgICAgIGZpeGVkOiAncmlnaHQnLA0KICAgICAgICAgIG1pbldpZHRoOiAxMzAsDQogICAgICAgIH0sDQogICAgICBdLA0KICAgICAgdGFibGVMaXN0OiBbXSwNCiAgICAgIHRpbWVMaXN0OiBbXSwNCiAgICAgIGdyaWQ6IHsNCiAgICAgICAgeGw6IDcsDQogICAgICAgIGxnOiAxMCwNCiAgICAgICAgbWQ6IDEyLA0KICAgICAgICBzbTogMjQsDQogICAgICAgIHhzOiAyNCwNCiAgICAgIH0sDQogICAgICB0YWJsZUZyb206IHsNCiAgICAgICAgc3RhdHVzOiAnJywNCiAgICAgICAgc3RvcmVfbmFtZTogJycsDQogICAgICAgIHBhZ2U6IDEsDQogICAgICAgIGxpbWl0OiAxNSwNCiAgICAgICAgdGltZV9pZHM6IFtdLA0KICAgICAgICB0aW1lOiAnJywNCiAgICAgICAgYWN0aXZpdHlfbmFtZTogJycsDQogICAgICB9LA0KICAgICAgdGltZVZhbDogW10sDQogICAgICB0b3RhbDogMCwNCiAgICB9Ow0KICB9LA0KICBjb21wdXRlZDogew0KICAgIC4uLm1hcFN0YXRlKCdtZWRpYScsIFsnaXNNb2JpbGUnXSksDQogICAgbGFiZWxXaWR0aCgpIHsNCiAgICAgIHJldHVybiB0aGlzLmlzTW9iaWxlID8gdW5kZWZpbmVkIDogJzgwcHgnOw0KICAgIH0sDQogICAgbGFiZWxQb3NpdGlvbigpIHsNCiAgICAgIHJldHVybiB0aGlzLmlzTW9iaWxlID8gJ3RvcCcgOiAncmlnaHQnOw0KICAgIH0sDQogIH0sDQogIGFjdGl2YXRlZCgpIHsNCiAgICB0aGlzLmdldExpc3QoKTsNCiAgICB0aGlzLnNlY2tpbGxUaW1lTGlzdCgpOw0KICB9LA0KICBtZXRob2RzOiB7DQogICAgc2Vja2lsbFRpbWVMaXN0KCkgew0KICAgICAgc2Vja2lsbFRpbWVMaXN0QXBpKCkNCiAgICAgICAgLnRoZW4oKHJlcykgPT4gew0KICAgICAgICAgIHRoaXMudGltZUxpc3QgPSByZXMuZGF0YS5saXN0LmRhdGE7DQogICAgICAgIH0pDQogICAgICAgIC5jYXRjaCgocmVzKSA9PiB7DQogICAgICAgICAgdGhpcy4kbWVzc2FnZS5lcnJvcihyZXMubXNnKTsNCiAgICAgICAgfSk7DQogICAgfSwNCiAgICAvLyDlhbfkvZPml6XmnJ8NCiAgICBvbmNoYW5nZVRpbWUoZSkgew0KICAgICAgdGhpcy50aW1lVmFsID0gZTsNCiAgICAgIHRoaXMudGFibGVGcm9tLnRpbWUgPSB0aGlzLnRpbWVWYWwgPyB0aGlzLnRpbWVWYWwuam9pbignLScpIDogJyc7DQogICAgICB0aGlzLnRhYmxlRnJvbS5wYWdlID0gMTsNCiAgICAgIGlmICghZVswXSkgew0KICAgICAgICB0aGlzLnRhYmxlRnJvbS50aW1lID0gJyc7DQogICAgICB9DQogICAgICB0aGlzLmdldExpc3QoKTsNCiAgICB9LA0KICAgIC8vIOa3u+WKoA0KICAgIGFkZCgpIHsNCiAgICAgIHRoaXMuJHJvdXRlci5wdXNoKHsgcGF0aDogdGhpcy4kcm91dGVQcm9TdHIgKyAnL21hcmtldGluZy9zdG9yZV9zZWNraWxsL2NyZWF0ZScgfSk7DQogICAgfSwNCiAgICAvLyDlr7zlh7oNCiAgICBhc3luYyBleHBvcnRzKCkgew0KICAgICAgbGV0IFt0aCwgZmlsZWtleSwgZGF0YSwgZmlsZU5hbWVdID0gW1tdLCBbXSwgW10sICcnXTsNCiAgICAgIGxldCBleGNlbERhdGEgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHRoaXMudGFibGVGcm9tKSk7DQogICAgICBleGNlbERhdGEucGFnZSA9IDE7DQogICAgICBleGNlbERhdGEubGltaXQgPSAyMDA7DQogICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGV4Y2VsRGF0YS5wYWdlICsgMTsgaSsrKSB7DQogICAgICAgIGxldCBsZWJEYXRhID0gYXdhaXQgdGhpcy5nZXRFeGNlbERhdGEoZXhjZWxEYXRhKTsNCiAgICAgICAgaWYgKCFmaWxlTmFtZSkgZmlsZU5hbWUgPSBsZWJEYXRhLmZpbGVuYW1lOw0KICAgICAgICBpZiAoIWZpbGVrZXkubGVuZ3RoKSB7DQogICAgICAgICAgZmlsZWtleSA9IGxlYkRhdGEuZmlsZUtleTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoIXRoLmxlbmd0aCkgdGggPSBsZWJEYXRhLmhlYWRlcjsNCiAgICAgICAgaWYgKGxlYkRhdGEuZXhwb3J0Lmxlbmd0aCkgew0KICAgICAgICAgIGRhdGEgPSBkYXRhLmNvbmNhdChsZWJEYXRhLmV4cG9ydCk7DQogICAgICAgICAgZXhjZWxEYXRhLnBhZ2UrKzsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICB0aGlzLiRleHBvcnRFeGNlbCh0aCwgZmlsZWtleSwgZmlsZU5hbWUsIGRhdGEpOw0KICAgICAgICAgIHJldHVybjsNCiAgICAgICAgfQ0KICAgICAgfQ0KICAgIH0sDQogICAgZ2V0RXhjZWxEYXRhKGV4Y2VsRGF0YSkgew0KICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHsNCiAgICAgICAgZXhwb3J0U2Vja2lsbExpc3QoZXhjZWxEYXRhKS50aGVuKChyZXMpID0+IHsNCiAgICAgICAgICByZXNvbHZlKHJlcy5kYXRhKTsNCiAgICAgICAgfSk7DQogICAgICB9KTsNCiAgICB9LA0KDQogICAgLy8g57yW6L6RDQogICAgZWRpdChyb3cpIHsNCiAgICAgIHRoaXMuJHJvdXRlci5wdXNoKHsNCiAgICAgICAgcGF0aDogdGhpcy4kcm91dGVQcm9TdHIgKyAnL21hcmtldGluZy9zdG9yZV9zZWNraWxsL2NyZWF0ZS8nICsgcm93LmlkICsgJy8wJywNCiAgICAgIH0pOw0KICAgIH0sDQogICAgLy8g5LiA6ZSu5aSN5Yi2DQogICAgY29weShyb3cpIHsNCiAgICAgIHRoaXMuJHJvdXRlci5wdXNoKHsNCiAgICAgICAgcGF0aDogdGhpcy4kcm91dGVQcm9TdHIgKyAnL21hcmtldGluZy9zdG9yZV9zZWNraWxsL2NyZWF0ZS8nICsgcm93LmlkICsgJy8xJywNCiAgICAgIH0pOw0KICAgIH0sDQogICAgLy8g5Yig6ZmkDQogICAgZGVsKHJvdywgdGl0LCBudW0pIHsNCiAgICAgIGxldCBkZWxmcm9tRGF0YSA9IHsNCiAgICAgICAgdGl0bGU6IHRpdCwNCiAgICAgICAgbnVtOiBudW0sDQogICAgICAgIHVybDogYG1hcmtldGluZy9zZWNraWxsLyR7cm93LmlkfWAsDQogICAgICAgIG1ldGhvZDogJ0RFTEVURScsDQogICAgICAgIGlkczogJycsDQogICAgICB9Ow0KICAgICAgdGhpcy4kbW9kYWxTdXJlKGRlbGZyb21EYXRhKQ0KICAgICAgICAudGhlbigocmVzKSA9PiB7DQogICAgICAgICAgdGhpcy4kbWVzc2FnZS5zdWNjZXNzKHJlcy5tc2cpOw0KICAgICAgICAgIHRoaXMudGFibGVMaXN0LnNwbGljZShudW0sIDEpOw0KICAgICAgICB9KQ0KICAgICAgICAuY2F0Y2goKHJlcykgPT4gew0KICAgICAgICAgIHRoaXMuJG1lc3NhZ2UuZXJyb3IocmVzLm1zZyk7DQogICAgICAgIH0pOw0KICAgIH0sDQogICAgdmlld0luZm8ocm93KSB7DQogICAgICB0aGlzLiRyb3V0ZXIucHVzaCh7DQogICAgICAgIHBhdGg6IHRoaXMuJHJvdXRlUHJvU3RyICsgJy9tYXJrZXRpbmcvc3RvcmVfc2Vja2lsbC9zdGF0aXN0aWNzLycgKyByb3cuaWQsDQogICAgICB9KTsNCiAgICB9LA0KICAgIC8vIOWIl+ihqA0KICAgIGdldExpc3QoKSB7DQogICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlOw0KICAgICAgdGhpcy50YWJsZUZyb20uc3RhdHVzID0gdGhpcy50YWJsZUZyb20uc3RhdHVzIHx8ICcnOw0KICAgICAgdGhpcy50YWJsZUZyb20ucHJvZHVjdF9pZCA9IHRoaXMuJHJvdXRlLnBhcmFtcy5wcm9kdWN0X2lkIHx8ICcnOw0KICAgICAgc2Vja2lsbExpc3RBcGkodGhpcy50YWJsZUZyb20pDQogICAgICAgIC50aGVuKGFzeW5jIChyZXMpID0+IHsNCiAgICAgICAgICBsZXQgZGF0YSA9IHJlcy5kYXRhOw0KICAgICAgICAgIHRoaXMudGFibGVMaXN0ID0gZGF0YS5saXN0Ow0KICAgICAgICAgIHRoaXMudG90YWwgPSByZXMuZGF0YS5jb3VudDsNCiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTsNCiAgICAgICAgfSkNCiAgICAgICAgLmNhdGNoKChyZXMpID0+IHsNCiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTsNCiAgICAgICAgICB0aGlzLiRtZXNzYWdlLmVycm9yKHJlcy5tc2cpOw0KICAgICAgICB9KTsNCiAgICB9LA0KICAgIC8vIOihqOagvOaQnOe0og0KICAgIHVzZXJTZWFyY2hzKCkgew0KICAgICAgdGhpcy50YWJsZUZyb20ucGFnZSA9IDE7DQogICAgICB0aGlzLmdldExpc3QoKTsNCiAgICB9LA0KICAgIC8vIOS/ruaUueaYr+WQpuaYvuekug0KICAgIG9uY2hhbmdlSXNTaG93KHJvdykgew0KICAgICAgbGV0IGRhdGEgPSB7DQogICAgICAgIGlkOiByb3cuaWQsDQogICAgICAgIHN0YXR1czogcm93LnN0YXR1cywNCiAgICAgIH07DQogICAgICBzZWNraWxsU3RhdHVzQXBpKGRhdGEpDQogICAgICAgIC50aGVuKGFzeW5jIChyZXMpID0+IHsNCiAgICAgICAgICB0aGlzLmdldExpc3QoKTsNCg0KICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uuc3VjY2VzcyhyZXMubXNnKTsNCiAgICAgICAgfSkNCiAgICAgICAgLmNhdGNoKChyZXMpID0+IHsNCiAgICAgICAgICB0aGlzLiRtZXNzYWdlLmVycm9yKHJlcy5tc2cpOw0KICAgICAgICAgIHJvdy5zdGF0dXMgPSAhcm93LnN0YXR1czsNCiAgICAgICAgfSk7DQogICAgfSwNCiAgfSwNCn07DQo="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";AA0IA;AACA;AACA;AACA;;AAEA;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;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;;AAEA;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;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"index.vue","sourceRoot":"src/pages/marketing/storeSeckill","sourcesContent":["<template>\r\n <div>\r\n <el-card :bordered=\"false\" shadow=\"never\" class=\"ivu-mt\" :body-style=\"{ padding: 0 }\">\r\n <div class=\"padding-add\">\r\n <el-form ref=\"tableFrom\" :model=\"tableFrom\" :label-width=\"labelWidth\" label-position=\"right\"\r\n @submit.native.prevent inline>\r\n <el-form-item label=\"商品搜索:\" label-for=\"store_name\">\r\n <el-input placeholder=\"请输入商品名称,ID\" v-model=\"tableFrom.store_name\" class=\"form_content_width\" />\r\n </el-form-item>\r\n <el-form-item label=\"活动搜索:\" label-for=\"store_name\">\r\n <el-input placeholder=\"请输入活动名称\" v-model=\"tableFrom.activity_name\" class=\"form_content_width\" />\r\n </el-form-item>\r\n <el-form-item label=\"活动状态:\">\r\n <el-select placeholder=\"请选择\" clearable v-model=\"tableFrom.status\" @change=\"userSearchs\"\r\n class=\"form_content_width\">\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-form-item label=\"活动时段:\">\r\n <el-select v-model=\"tableFrom.time_ids\" multiple class=\"form_content_width\" @change=\"userSearchs\">\r\n <el-option v-for=\"item in timeList\" :value=\"item.id\" :key=\"item.id\" :label=\"item.time_name\"></el-option>\r\n </el-select>\r\n </el-form-item> -->\r\n <el-form-item label=\"活动时间:\">\r\n <el-date-picker clearable v-model=\"timeVal\" type=\"daterange\" :editable=\"false\" @change=\"onchangeTime\"\r\n format=\"yyyy/MM/dd\" value-format=\"yyyy/MM/dd\" start-placeholder=\"开始日期\" end-placeholder=\"结束日期\"\r\n style=\"width: 250px\"></el-date-picker>\r\n </el-form-item>\r\n <el-form-item>\r\n <el-button type=\"primary\" v-db-click @click=\"userSearchs\">查询</el-button>\r\n </el-form-item>\r\n </el-form>\r\n </div>\r\n </el-card>\r\n <el-card :bordered=\"false\" shadow=\"never\" class=\"ivu-mt mt16\">\r\n <!-- <el-button v-auth=\"['marketing-store_seckill-create']\" type=\"primary\" v-db-click @click=\"add\"\r\n >添加秒杀商品</el-button\r\n > -->\r\n <el-button v-auth=\"['export-storeSeckill']\" class=\"export\" v-db-click @click=\"exports\">导出</el-button>\r\n <el-table :data=\"tableList\" v-loading=\"loading\" highlight-current-row no-userFrom-text=\"暂无数据\"\r\n no-filtered-userFrom-text=\"暂无筛选结果\" class=\"mt14\">\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=\"90\">\r\n <template slot-scope=\"scope\">\r\n <div class=\"tabBox_img\" v-viewer>\r\n <img v-lazy=\"scope.row.image\" />\r\n </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 <el-tooltip placement=\"top\" :open-delay=\"600\">\r\n <div slot=\"content\">{{ scope.row.title }}</div>\r\n <span class=\"line2\">{{ scope.row.title }}</span>\r\n </el-tooltip>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"商品简介\" min-width=\"100\">\r\n <template slot-scope=\"scope\">\r\n <el-tooltip placement=\"top\" :open-delay=\"600\">\r\n <div slot=\"content\">{{ scope.row.info }}</div>\r\n <span class=\"line2\">{{ scope.row.info }}</span>\r\n </el-tooltip>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"活动名称\" min-width=\"100\">\r\n <template slot-scope=\"scope\">\r\n <el-tooltip placement=\"top\" :open-delay=\"600\">\r\n <div slot=\"content\">{{ scope.row.activity_name }}</div>\r\n <span class=\"line2\">{{ scope.row.activity_name }}</span>\r\n </el-tooltip>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"售价\" min-width=\"90\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.product_price }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"秒杀价\" min-width=\"90\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.price }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"限量\" min-width=\"80\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.quota_show }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"限量剩余\" min-width=\"80\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.quota }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"秒杀状态\" min-width=\"90\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.start_name }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"活动时间\" min-width=\"190\">\r\n <template slot-scope=\"scope\">\r\n <p>开始:{{ scope.row.start_time}}</p>\r\n <p>结束:{{ scope.row.stop_time}}</p>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"状态\" min-width=\"100\">\r\n <template slot-scope=\"scope\">\r\n <el-switch class=\"defineSwitch\" :active-value=\"1\" :inactive-value=\"0\" v-model=\"scope.row.status\"\r\n :value=\"scope.row.status\" @change=\"onchangeIsShow(scope.row)\" size=\"large\" active-text=\"开启\"\r\n inactive-text=\"关闭\">\r\n </el-switch>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"操作\" fixed=\"right\" width=\"100\">\r\n <template slot-scope=\"scope\">\r\n <!-- <a v-if=\"scope.row.stop_status === 0\" v-db-click @click=\"edit(scope.row)\">编辑</a>\r\n <el-divider direction=\"vertical\" v-if=\"scope.row.stop_status === 0\" />\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=\"del(scope.row, '删除秒杀商品', scope.$index)\">删除</a>\r\n <el-divider direction=\"vertical\"></el-divider>\r\n <a v-db-click @click=\"viewInfo(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 v-if=\"total\" :total=\"total\" :page.sync=\"tableFrom.page\" :limit.sync=\"tableFrom.limit\"\r\n @pagination=\"getList\" />\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 { seckillListApi, seckillStatusApi, storeSeckillApi, seckillTimeListApi } from '@/api/marketing';\r\nimport { formatDate } from '@/utils/validate';\r\nimport { exportSeckillList } from '@/api/export.js';\r\n\r\nexport default {\r\n name: 'marketing_storeSeckill',\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');\r\n }\r\n },\r\n },\r\n data() {\r\n return {\r\n loading: false,\r\n columns1: [\r\n {\r\n title: 'ID',\r\n key: 'id',\r\n width: 80,\r\n },\r\n {\r\n title: '商品图片',\r\n slot: 'image',\r\n minWidth: 90,\r\n },\r\n {\r\n title: '活动标题',\r\n key: 'title',\r\n minWidth: 130,\r\n },\r\n {\r\n title: '活动简介',\r\n key: 'info',\r\n minWidth: 100,\r\n },\r\n {\r\n title: '原价',\r\n key: 'ot_price',\r\n minWidth: 100,\r\n },\r\n {\r\n title: '秒杀价',\r\n key: 'price',\r\n minWidth: 100,\r\n },\r\n {\r\n title: '限量',\r\n key: 'quota_show',\r\n minWidth: 130,\r\n },\r\n {\r\n title: '限量剩余',\r\n key: 'quota',\r\n minWidth: 130,\r\n },\r\n {\r\n title: '秒杀状态',\r\n key: 'start_name',\r\n minWidth: 100,\r\n },\r\n {\r\n title: '结束时间',\r\n slot: 'stop_time',\r\n minWidth: 100,\r\n },\r\n {\r\n title: '状态',\r\n slot: 'status',\r\n minWidth: 100,\r\n },\r\n {\r\n title: '操作',\r\n slot: 'action',\r\n fixed: 'right',\r\n minWidth: 130,\r\n },\r\n ],\r\n tableList: [],\r\n timeList: [],\r\n grid: {\r\n xl: 7,\r\n lg: 10,\r\n md: 12,\r\n sm: 24,\r\n xs: 24,\r\n },\r\n tableFrom: {\r\n status: '',\r\n store_name: '',\r\n page: 1,\r\n limit: 15,\r\n time_ids: [],\r\n time: '',\r\n activity_name: '',\r\n },\r\n timeVal: [],\r\n total: 0,\r\n };\r\n },\r\n computed: {\r\n ...mapState('media', ['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 activated() {\r\n this.getList();\r\n this.seckillTimeList();\r\n },\r\n methods: {\r\n seckillTimeList() {\r\n seckillTimeListApi()\r\n .then((res) => {\r\n this.timeList = res.data.list.data;\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\r\n });\r\n },\r\n // 具体日期\r\n onchangeTime(e) {\r\n this.timeVal = e;\r\n this.tableFrom.time = this.timeVal ? this.timeVal.join('-') : '';\r\n this.tableFrom.page = 1;\r\n if (!e[0]) {\r\n this.tableFrom.time = '';\r\n }\r\n this.getList();\r\n },\r\n // 添加\r\n add() {\r\n this.$router.push({ path: this.$routeProStr + '/marketing/store_seckill/create' });\r\n },\r\n // 导出\r\n async exports() {\r\n let [th, filekey, data, fileName] = [[], [], [], ''];\r\n let excelData = JSON.parse(JSON.stringify(this.tableFrom));\r\n excelData.page = 1;\r\n excelData.limit = 200;\r\n for (let i = 0; i < excelData.page + 1; i++) {\r\n let lebData = await this.getExcelData(excelData);\r\n if (!fileName) fileName = lebData.filename;\r\n if (!filekey.length) {\r\n filekey = lebData.fileKey;\r\n }\r\n if (!th.length) th = lebData.header;\r\n if (lebData.export.length) {\r\n data = data.concat(lebData.export);\r\n excelData.page++;\r\n } else {\r\n this.$exportExcel(th, filekey, fileName, data);\r\n return;\r\n }\r\n }\r\n },\r\n getExcelData(excelData) {\r\n return new Promise((resolve, reject) => {\r\n exportSeckillList(excelData).then((res) => {\r\n resolve(res.data);\r\n });\r\n });\r\n },\r\n\r\n // 编辑\r\n edit(row) {\r\n this.$router.push({\r\n path: this.$routeProStr + '/marketing/store_seckill/create/' + row.id + '/0',\r\n });\r\n },\r\n // 一键复制\r\n copy(row) {\r\n this.$router.push({\r\n path: this.$routeProStr + '/marketing/store_seckill/create/' + row.id + '/1',\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/seckill/${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 viewInfo(row) {\r\n this.$router.push({\r\n path: this.$routeProStr + '/marketing/store_seckill/statistics/' + row.id,\r\n });\r\n },\r\n // 列表\r\n getList() {\r\n this.loading = true;\r\n this.tableFrom.status = this.tableFrom.status || '';\r\n this.tableFrom.product_id = this.$route.params.product_id || '';\r\n seckillListApi(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 seckillStatusApi(data)\r\n .then(async (res) => {\r\n this.getList();\r\n\r\n this.$message.success(res.msg);\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\r\n row.status = !row.status;\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"]}]}