87d1f6cae51e8c43418af3c7ab927872.json 26 KB

1
  1. {"remainingRequest":"D:\\front\\item\\zyAdmin\\node_modules\\babel-loader\\lib\\index.js!D:\\front\\item\\zyAdmin\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!D:\\front\\item\\zyAdmin\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\front\\item\\zyAdmin\\src\\pages\\user\\grade\\card\\index.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\front\\item\\zyAdmin\\src\\pages\\user\\grade\\card\\index.vue","mtime":1761614939078},{"path":"D:\\front\\item\\zyAdmin\\babel.config.js","mtime":1761614925168},{"path":"D:\\front\\item\\zyAdmin\\.babelrc","mtime":1761614925165},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1761614927801},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\babel-loader\\lib\\index.js","mtime":1761614927320},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1761614927801},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\vue-loader\\lib\\index.js","mtime":1761614937402}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0IF9yZWdlbmVyYXRvciBmcm9tICJEOi9mcm9udC9pdGVtL3p5QWRtaW4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL3JlZ2VuZXJhdG9yLmpzIjsKaW1wb3J0IF9hc3luY1RvR2VuZXJhdG9yIGZyb20gIkQ6L2Zyb250L2l0ZW0venlBZG1pbi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vYXN5bmNUb0dlbmVyYXRvci5qcyI7CmltcG9ydCBfb2JqZWN0U3ByZWFkIGZyb20gIkQ6L2Zyb250L2l0ZW0venlBZG1pbi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vb2JqZWN0U3ByZWFkMi5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LmNvbmNhdC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLm9iamVjdC50by1zdHJpbmcuanMiOwppbXBvcnQgeyBtYXBTdGF0ZSB9IGZyb20gJ3Z1ZXgnOwppbXBvcnQgY2FyZExpc3QgZnJvbSAnLi9saXN0LnZ1ZSc7CmltcG9ydCB7IHVzZXJNZW1iZXJCYXRjaCwgbWVtYmVyQmF0Y2hTYXZlLCBtZW1iZXJCYXRjaFNldFZhbHVlLCBleHBvcnRNZW1iZXJDYXJkLCB1c2VyTWVtYmVyU2NhbiB9IGZyb20gJ0AvYXBpL3VzZXInOwppbXBvcnQgeyBleHBvcnRtYmVyQ2FyZExpc3QgfSBmcm9tICdAL2FwaS9leHBvcnQuanMnOwpleHBvcnQgZGVmYXVsdCB7CiAgbmFtZTogJ2luZGV4JywKICBjb21wb25lbnRzOiB7CiAgICBjYXJkTGlzdDogY2FyZExpc3QKICB9LAogIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7CiAgICByZXR1cm4gewogICAgICBjYXJkTW9kYWw6IGZhbHNlLAogICAgICBpZDogMCwKICAgICAgZ3JpZDogewogICAgICAgIHhsOiA3LAogICAgICAgIGxnOiA3LAogICAgICAgIG1kOiAxMiwKICAgICAgICBzbTogMjQsCiAgICAgICAgeHM6IDI0CiAgICAgIH0sCiAgICAgIHRib2R5OiBbXSwKICAgICAgdG90YWw6IDAsCiAgICAgIGdyYWRlRnJvbTogewogICAgICAgIHRpdGxlOiAnJywKICAgICAgICBwYWdlOiAxLAogICAgICAgIGxpbWl0OiAxNQogICAgICB9LAogICAgICBsb2FkaW5nOiBmYWxzZSwKICAgICAgbW9kYWw6IGZhbHNlLAogICAgICBmb3JtVmFsaWRhdGU6IHsKICAgICAgICBpZDogMCwKICAgICAgICB0aXRsZTogJycsCiAgICAgICAgdG90YWxfbnVtOiAxLAogICAgICAgIHVzZV9kYXk6IDEsCiAgICAgICAgc3RhdHVzOiAxLAogICAgICAgIHJlbWFyazogJycKICAgICAgfSwKICAgICAgbW9kYWwyOiBmYWxzZSwKICAgICAgbW9kYWwzOiBmYWxzZSwKICAgICAgcXJjb2RlOiBudWxsLAogICAgICBmYXBpOiB7fQogICAgfTsKICB9LAogIGNvbXB1dGVkOiBfb2JqZWN0U3ByZWFkKF9vYmplY3RTcHJlYWQoe30sIG1hcFN0YXRlKCdtZWRpYScsIFsnaXNNb2JpbGUnXSkpLCB7fSwgewogICAgbGFiZWxXaWR0aDogZnVuY3Rpb24gbGFiZWxXaWR0aCgpIHsKICAgICAgcmV0dXJuIHRoaXMuaXNNb2JpbGUgPyB1bmRlZmluZWQgOiAnODBweCc7CiAgICB9LAogICAgbGFiZWxQb3NpdGlvbjogZnVuY3Rpb24gbGFiZWxQb3NpdGlvbigpIHsKICAgICAgcmV0dXJuIHRoaXMuaXNNb2JpbGUgPyAndG9wJyA6ICdyaWdodCc7CiAgICB9CiAgfSksCiAgY3JlYXRlZDogZnVuY3Rpb24gY3JlYXRlZCgpIHsKICAgIHRoaXMuZ2V0TWVtYmVyQmF0Y2godGhpcy5ncmFkZUZyb20pOwogIH0sCiAgbWV0aG9kczogewogICAgLy8g5om55qyh5YiX6KGoCiAgICBnZXRNZW1iZXJCYXRjaDogZnVuY3Rpb24gZ2V0TWVtYmVyQmF0Y2goKSB7CiAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7CiAgICAgIHVzZXJNZW1iZXJCYXRjaCh0aGlzLmdyYWRlRnJvbSkudGhlbihmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgX3RoaXMubG9hZGluZyA9IGZhbHNlOwogICAgICAgIF90aGlzLnRib2R5ID0gcmVzLmRhdGEubGlzdDsKICAgICAgICBfdGhpcy50b3RhbCA9IHJlcy5kYXRhLmNvdW50OwogICAgICB9KS5jYXRjaChmdW5jdGlvbiAoZXJyKSB7CiAgICAgICAgX3RoaXMubG9hZGluZyA9IGZhbHNlOwogICAgICAgIF90aGlzLiRtZXNzYWdlLmVycm9yKGVyci5tc2cpOwogICAgICB9KTsKICAgIH0sCiAgICAvLyDmibnmrKHlkI3np7Dmn6Xor6IKICAgIHVzZXJTZWFyY2hzOiBmdW5jdGlvbiB1c2VyU2VhcmNocygpIHsKICAgICAgdGhpcy5ncmFkZUZyb20ucGFnZSA9IDE7CiAgICAgIHRoaXMuZ2V0TWVtYmVyQmF0Y2goKTsKICAgIH0sCiAgICAvLyDmv4DmtLsgfCDlhrvnu5MKICAgIG9uY2hhbmdlSXNTaG93OiBmdW5jdGlvbiBvbmNoYW5nZUlzU2hvdyhyb3cpIHsKICAgICAgdmFyIF90aGlzMiA9IHRoaXM7CiAgICAgIG1lbWJlckJhdGNoU2V0VmFsdWUocm93LmlkLCB7CiAgICAgICAgZmllbGQ6ICdzdGF0dXMnLAogICAgICAgIHZhbHVlOiByb3cuc3RhdHVzCiAgICAgIH0pLnRoZW4oZnVuY3Rpb24gKHJlcykgewogICAgICAgIF90aGlzMi4kbWVzc2FnZS5zdWNjZXNzKHJlcy5tc2cpOwogICAgICB9KS5jYXRjaChmdW5jdGlvbiAoZXJyKSB7CiAgICAgICAgX3RoaXMyLiRtZXNzYWdlLmVycm9yKGVyci5tc2cpOwogICAgICB9KTsKICAgIH0sCiAgICAvLyDlr7zlh7oKICAgIGV4cG9ydDogZnVuY3Rpb24gX2V4cG9ydChyb3cpIHsKICAgICAgdmFyIF90aGlzMyA9IHRoaXM7CiAgICAgIHJldHVybiBfYXN5bmNUb0dlbmVyYXRvcigvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yKCkubShmdW5jdGlvbiBfY2FsbGVlKCkgewogICAgICAgIHZhciB0aCwgZmlsZWtleSwgZGF0YSwgZmlsZU5hbWUsIGxlYkRhdGE7CiAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvcigpLncoZnVuY3Rpb24gKF9jb250ZXh0KSB7CiAgICAgICAgICB3aGlsZSAoMSkgc3dpdGNoIChfY29udGV4dC5uKSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgICB0aCA9IFtdLCBmaWxla2V5ID0gW10sIGRhdGEgPSBbXSwgZmlsZU5hbWUgPSAnJzsKICAgICAgICAgICAgICBfY29udGV4dC5uID0gMTsKICAgICAgICAgICAgICByZXR1cm4gX3RoaXMzLmdldEV4Y2VsRGF0YShyb3cuaWQpOwogICAgICAgICAgICBjYXNlIDE6CiAgICAgICAgICAgICAgbGViRGF0YSA9IF9jb250ZXh0LnY7CiAgICAgICAgICAgICAgaWYgKCFmaWxlTmFtZSkgZmlsZU5hbWUgPSBsZWJEYXRhLmZpbGVuYW1lOwogICAgICAgICAgICAgIGlmICghZmlsZWtleS5sZW5ndGgpIHsKICAgICAgICAgICAgICAgIGZpbGVrZXkgPSBsZWJEYXRhLmZpbGVLZXk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIGlmICghdGgubGVuZ3RoKSB0aCA9IGxlYkRhdGEuaGVhZGVyOwogICAgICAgICAgICAgIGRhdGEgPSBkYXRhLmNvbmNhdChsZWJEYXRhLmV4cG9ydCk7CiAgICAgICAgICAgICAgX3RoaXMzLiRleHBvcnRFeGNlbCh0aCwgZmlsZWtleSwgZmlsZU5hbWUsIGRhdGEpOwogICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0LmEoMik7CiAgICAgICAgICB9CiAgICAgICAgfSwgX2NhbGxlZSk7CiAgICAgIH0pKSgpOwogICAgfSwKICAgIGdldEV4Y2VsRGF0YTogZnVuY3Rpb24gZ2V0RXhjZWxEYXRhKGV4Y2VsRGF0YSkgewogICAgICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgIGV4cG9ydG1iZXJDYXJkTGlzdChleGNlbERhdGEpLnRoZW4oZnVuY3Rpb24gKHJlcykgewogICAgICAgICAgcmVzb2x2ZShyZXMuZGF0YSk7CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgfSwKICAgIC8vIOabtOWkmgogICAgY2hhbmdlTWVudTogZnVuY3Rpb24gY2hhbmdlTWVudShyb3csIG5hbWUpIHsKICAgICAgc3dpdGNoIChuYW1lKSB7CiAgICAgICAgY2FzZSAnMSc6CiAgICAgICAgICB0aGlzLmZvcm1WYWxpZGF0ZS5pZCA9IHJvdy5pZDsKICAgICAgICAgIHRoaXMuZm9ybVZhbGlkYXRlLnRpdGxlID0gcm93LnRpdGxlOwogICAgICAgICAgdGhpcy5tb2RhbCA9IHRydWU7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICcyJzoKICAgICAgICAgIHRoaXMuaWQgPSByb3cuaWQ7CiAgICAgICAgICB0aGlzLmNhcmRNb2RhbCA9IHRydWU7CiAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICczJzoKICAgICAgICAgIHRoaXMuZXhwb3J0KHJvdyk7CiAgICAgICAgICBicmVhazsKICAgICAgfQogICAgfSwKICAgIC8vIOa3u+WKoOaJueasoeW8ueeqlwogICAgYWRkQmF0Y2g6IGZ1bmN0aW9uIGFkZEJhdGNoKCkgewogICAgICAvLyB0aGlzLmZhcGkucmVzZXRGaWVsZHMoKTsKICAgICAgdGhpcy5tb2RhbCA9IHRydWU7CiAgICAgIHRoaXMuZm9ybVZhbGlkYXRlLmlkID0gMDsKICAgICAgdGhpcy5mb3JtVmFsaWRhdGUudGl0bGUgPSAnJzsKICAgIH0sCiAgICAvLyDmj5DkuqTmibnmrKEKICAgIG9uU3VibWl0OiBmdW5jdGlvbiBvblN1Ym1pdCgpIHsKICAgICAgdmFyIF90aGlzNCA9IHRoaXM7CiAgICAgIGlmICh0aGlzLmZvcm1WYWxpZGF0ZS5pZCkgewogICAgICAgIG1lbWJlckJhdGNoU2V0VmFsdWUodGhpcy5mb3JtVmFsaWRhdGUuaWQsIHsKICAgICAgICAgIGZpZWxkOiAndGl0bGUnLAogICAgICAgICAgdmFsdWU6IHRoaXMuZm9ybVZhbGlkYXRlLnRpdGxlLAogICAgICAgICAgcmVtYXJrOiB0aGlzLmZvcm1WYWxpZGF0ZS5yZW1hcmsKICAgICAgICB9KS50aGVuKGZ1bmN0aW9uIChyZXMpIHsKICAgICAgICAgIF90aGlzNC5tb2RhbCA9IGZhbHNlOwogICAgICAgICAgX3RoaXM0LiRtZXNzYWdlLnN1Y2Nlc3MocmVzLm1zZyk7CiAgICAgICAgICBfdGhpczQuZ2V0TWVtYmVyQmF0Y2goKTsKICAgICAgICB9KS5jYXRjaChmdW5jdGlvbiAoZXJyKSB7CiAgICAgICAgICBfdGhpczQuJG1lc3NhZ2UuZXJyb3IoZXJyLm1zZyk7CiAgICAgICAgfSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgbWVtYmVyQmF0Y2hTYXZlKHRoaXMuZm9ybVZhbGlkYXRlLmlkLCB0aGlzLmZvcm1WYWxpZGF0ZSkudGhlbihmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgICBfdGhpczQubW9kYWwgPSBmYWxzZTsKICAgICAgICAgIF90aGlzNC4kbWVzc2FnZS5zdWNjZXNzKHJlcy5tc2cpOwogICAgICAgICAgX3RoaXM0LmdldE1lbWJlckJhdGNoKCk7CiAgICAgICAgfSkuY2F0Y2goZnVuY3Rpb24gKGVycikgewogICAgICAgICAgX3RoaXM0LiRtZXNzYWdlLmVycm9yKGVyci5tc2cpOwogICAgICAgIH0pOwogICAgICB9CiAgICB9LAogICAgb25TdWJtaXQyOiBmdW5jdGlvbiBvblN1Ym1pdDIoZm9ybURhdGEpIHt9LAogICAgLy8g5Lya5ZGY5Y2h5LqM57u056CBCiAgICBnZXRNZW1iZXJTY2FuOiBmdW5jdGlvbiBnZXRNZW1iZXJTY2FuKCkgewogICAgICB2YXIgX3RoaXM1ID0gdGhpczsKICAgICAgdXNlck1lbWJlclNjYW4oKS50aGVuKGZ1bmN0aW9uIChyZXMpIHsKICAgICAgICBfdGhpczUucXJjb2RlID0gcmVzLmRhdGE7CiAgICAgICAgX3RoaXM1Lm1vZGFsMyA9IHRydWU7CiAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uIChlcnIpIHsKICAgICAgICBfdGhpczUuJG1lc3NhZ2UuZXJyb3IoZXJyLm1zZyk7CiAgICAgIH0pOwogICAgfQogIH0KfTs="},{"version":3,"names":["mapState","cardList","userMemberBatch","memberBatchSave","memberBatchSetValue","exportMemberCard","userMemberScan","exportmberCardList","name","components","data","cardModal","id","grid","xl","lg","md","sm","xs","tbody","total","gradeFrom","title","page","limit","loading","modal","formValidate","total_num","use_day","status","remark","modal2","modal3","qrcode","fapi","computed","_objectSpread","labelWidth","isMobile","undefined","labelPosition","created","getMemberBatch","methods","_this","then","res","list","count","catch","err","$message","error","msg","userSearchs","onchangeIsShow","row","_this2","field","value","success","export","_this3","_asyncToGenerator","_regenerator","m","_callee","th","filekey","fileName","lebData","w","_context","n","getExcelData","v","filename","length","fileKey","header","concat","$exportExcel","a","excelData","Promise","resolve","reject","changeMenu","addBatch","onSubmit","_this4","onSubmit2","formData","getMemberScan","_this5"],"sources":["src/pages/user/grade/card/index.vue"],"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\r\n :model=\"gradeFrom\"\r\n inline\r\n :label-width=\"labelWidth\"\r\n :label-position=\"labelPosition\"\r\n @submit.native.prevent\r\n >\r\n <el-form-item label=\"批次名称:\" label-for=\"title\">\r\n <el-input clearable v-model=\"gradeFrom.title\" placeholder=\"请输入批次名称\" class=\"form_content_width\" />\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=\"mt16\">\r\n <el-button type=\"primary\" v-db-click @click=\"addBatch\">添加批次</el-button>\r\n <el-button v-db-click @click=\"getMemberScan\">卡密使用页面二维码</el-button>\r\n <el-table\r\n class=\"mt14\"\r\n :data=\"tbody\"\r\n v-loading=\"loading\"\r\n highlight-current-row\r\n no-userFrom-text=\"暂无数据\"\r\n no-filtered-userFrom-text=\"暂无筛选结果\"\r\n >\r\n <el-table-column label=\"编号\" width=\"100\">\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=\"100\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.title }}</span>\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 <span>{{ scope.row.use_day }}</span>\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 <span>{{ scope.row.total_num }}</span>\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 <span>{{ scope.row.use_num }}</span>\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 <span>{{ scope.row.add_time }}</span>\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\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 @change=\"onchangeIsShow(scope.row)\"\r\n size=\"large\"\r\n >\r\n </el-switch>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"备注\" min-width=\"120\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.remark }}</span>\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 <span>{{ scope.row.add_time }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"操作\" fixed=\"right\" width=\"120\">\r\n <template slot-scope=\"scope\">\r\n <el-dropdown size=\"small\" @command=\"changeMenu(scope.row, $event, scope.$index)\" :transfer=\"true\">\r\n <span class=\"el-dropdown-link\">更多<i class=\"el-icon-arrow-down el-icon--right\"></i> </span>\r\n <el-dropdown-menu slot=\"dropdown\">\r\n <el-dropdown-item command=\"1\">编辑批次名</el-dropdown-item>\r\n <el-dropdown-item command=\"2\">查看卡列表</el-dropdown-item>\r\n <el-dropdown-item command=\"3\">导出</el-dropdown-item>\r\n </el-dropdown-menu>\r\n </el-dropdown>\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=\"gradeFrom.page\"\r\n :limit.sync=\"gradeFrom.limit\"\r\n @pagination=\"getMemberBatch\"\r\n />\r\n </div>\r\n </el-card>\r\n <el-dialog :visible.sync=\"modal\" width=\"540px\" :title=\"`${formValidate.id ? '编辑' : '添加'}批次`\">\r\n <!-- <form-create v-model=\"fapi\" :rule=\"rule\" @submit=\"onSubmit\"></form-create> -->\r\n <el-form ref=\"formValidate\" :model=\"formValidate\" label-width=\"80px\" @submit.native.prevent>\r\n <el-form-item label=\"批次名称:\">\r\n <el-input placeholder=\"请输入批次名称\" element-id=\"unit_name\" v-model=\"formValidate.title\" class=\"w100\" />\r\n </el-form-item>\r\n <el-form-item label=\"备注:\" v-if=\"formValidate.id\">\r\n <el-input type=\"textarea\" placeholder=\"请输入备注\" v-model=\"formValidate.remark\" class=\"w100\" />\r\n </el-form-item>\r\n <template v-if=\"!formValidate.id\">\r\n <el-form-item label=\"制卡数量:\">\r\n <el-input-number\r\n :controls=\"false\"\r\n placeholder=\"请输入制卡数量\"\r\n element-id=\"sort\"\r\n :precision=\"0\"\r\n :max=\"100000\"\r\n :min=\"1\"\r\n v-model=\"formValidate.total_num\"\r\n class=\"perW10\"\r\n />\r\n </el-form-item>\r\n <el-form-item label=\"体验天数:\">\r\n <el-input-number\r\n :controls=\"false\"\r\n placeholder=\"请输入体验天数\"\r\n element-id=\"sort\"\r\n :precision=\"0\"\r\n :max=\"100000\"\r\n :min=\"1\"\r\n v-model=\"formValidate.use_day\"\r\n class=\"perW10\"\r\n />\r\n </el-form-item>\r\n <el-form-item label=\"是否激活:\">\r\n <el-radio-group element-id=\"status\" v-model=\"formValidate.status\">\r\n <el-radio :label=\"1\" class=\"radio\">激活</el-radio>\r\n <el-radio :label=\"0\">冻结</el-radio>\r\n </el-radio-group>\r\n </el-form-item>\r\n <el-form-item label=\"备注:\">\r\n <el-input type=\"textarea\" placeholder=\"请输入备注\" v-model=\"formValidate.remark\" class=\"w100\" />\r\n </el-form-item>\r\n </template>\r\n </el-form>\r\n <div class=\"acea-row row-right\">\r\n <el-button v-db-click @click=\"modal = false\">取消</el-button>\r\n <el-button type=\"primary\" v-db-click @click=\"onSubmit()\">提交</el-button>\r\n </div>\r\n </el-dialog>\r\n <el-dialog :visible.sync=\"cardModal\" title=\"卡列表\" width=\"1000px\">\r\n <cardList v-if=\"cardModal\" :id=\"id\"></cardList>\r\n </el-dialog>\r\n <el-dialog :visible.sync=\"modal3\" title=\"二维码\" width=\"540px\">\r\n <div v-if=\"qrcode\" class=\"acea-row row-around\">\r\n <div v-if=\"qrcode && qrcode.wechat_img\" class=\"acea-row row-column-around row-between-wrapper\">\r\n <div v-viewer class=\"QRpic\">\r\n <img v-lazy=\"qrcode.wechat_img\" />\r\n </div>\r\n <span class=\"mt10\">公众号二维码</span>\r\n </div>\r\n <div v-if=\"qrcode && qrcode.routine\" class=\"acea-row row-column-around row-between-wrapper\">\r\n <div v-viewer class=\"QRpic\">\r\n <img v-lazy=\"qrcode.routine\" />\r\n </div>\r\n <span class=\"mt10\">小程序二维码</span>\r\n </div>\r\n </div>\r\n </el-dialog>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { mapState } from 'vuex';\r\nimport cardList from './list.vue';\r\nimport { userMemberBatch, memberBatchSave, memberBatchSetValue, exportMemberCard, userMemberScan } from '@/api/user';\r\nimport { exportmberCardList } from '@/api/export.js';\r\n\r\nexport default {\r\n name: 'index',\r\n components: { cardList },\r\n data() {\r\n return {\r\n cardModal: false,\r\n id: 0,\r\n grid: {\r\n xl: 7,\r\n lg: 7,\r\n md: 12,\r\n sm: 24,\r\n xs: 24,\r\n },\r\n tbody: [],\r\n total: 0,\r\n gradeFrom: {\r\n title: '',\r\n page: 1,\r\n limit: 15,\r\n },\r\n loading: false,\r\n modal: false,\r\n\r\n formValidate: {\r\n id: 0,\r\n title: '',\r\n total_num: 1,\r\n use_day: 1,\r\n status: 1,\r\n remark: '',\r\n },\r\n modal2: false,\r\n modal3: false,\r\n qrcode: null,\r\n fapi: {},\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 created() {\r\n this.getMemberBatch(this.gradeFrom);\r\n },\r\n methods: {\r\n // 批次列表\r\n getMemberBatch() {\r\n this.loading = true;\r\n userMemberBatch(this.gradeFrom)\r\n .then((res) => {\r\n this.loading = false;\r\n this.tbody = res.data.list;\r\n this.total = res.data.count;\r\n })\r\n .catch((err) => {\r\n this.loading = false;\r\n this.$message.error(err.msg);\r\n });\r\n },\r\n // 批次名称查询\r\n userSearchs() {\r\n this.gradeFrom.page = 1;\r\n this.getMemberBatch();\r\n },\r\n // 激活 | 冻结\r\n onchangeIsShow(row) {\r\n memberBatchSetValue(row.id, {\r\n field: 'status',\r\n value: row.status,\r\n })\r\n .then((res) => {\r\n this.$message.success(res.msg);\r\n })\r\n .catch((err) => {\r\n this.$message.error(err.msg);\r\n });\r\n },\r\n // 导出\r\n async export(row) {\r\n let [th, filekey, data, fileName] = [[], [], [], ''];\r\n let lebData = await this.getExcelData(row.id);\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 data = data.concat(lebData.export);\r\n this.$exportExcel(th, filekey, fileName, data);\r\n },\r\n getExcelData(excelData) {\r\n return new Promise((resolve, reject) => {\r\n exportmberCardList(excelData).then((res) => {\r\n resolve(res.data);\r\n });\r\n });\r\n },\r\n // 更多\r\n changeMenu(row, name) {\r\n switch (name) {\r\n case '1':\r\n this.formValidate.id = row.id;\r\n this.formValidate.title = row.title;\r\n this.modal = true;\r\n break;\r\n case '2':\r\n this.id = row.id;\r\n this.cardModal = true;\r\n break;\r\n case '3':\r\n this.export(row);\r\n break;\r\n }\r\n },\r\n // 添加批次弹窗\r\n addBatch() {\r\n // this.fapi.resetFields();\r\n this.modal = true;\r\n this.formValidate.id = 0;\r\n this.formValidate.title = '';\r\n },\r\n // 提交批次\r\n onSubmit() {\r\n if (this.formValidate.id) {\r\n memberBatchSetValue(this.formValidate.id, {\r\n field: 'title',\r\n value: this.formValidate.title,\r\n remark: this.formValidate.remark,\r\n })\r\n .then((res) => {\r\n this.modal = false;\r\n this.$message.success(res.msg);\r\n this.getMemberBatch();\r\n })\r\n .catch((err) => {\r\n this.$message.error(err.msg);\r\n });\r\n } else {\r\n memberBatchSave(this.formValidate.id, this.formValidate)\r\n .then((res) => {\r\n this.modal = false;\r\n this.$message.success(res.msg);\r\n this.getMemberBatch();\r\n })\r\n .catch((err) => {\r\n this.$message.error(err.msg);\r\n });\r\n }\r\n },\r\n onSubmit2(formData) {},\r\n // 会员卡二维码\r\n getMemberScan() {\r\n userMemberScan()\r\n .then((res) => {\r\n this.qrcode = res.data;\r\n this.modal3 = true;\r\n })\r\n .catch((err) => {\r\n this.$message.error(err.msg);\r\n });\r\n },\r\n },\r\n};\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.el-input-number--small {\r\n width: 100%;\r\n}\r\n.QRpic {\r\n width: 180px;\r\n height: 180px;\r\n\r\n img {\r\n width: 100%;\r\n height: 100%;\r\n }\r\n}\r\n.w414 {\r\n width: 414px;\r\n}\r\n</style>\r\n"],"mappings":"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","ignoreList":[]}]}