| 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\\setting\\systemAdmin\\index.vue?vue&type=script&lang=js","dependencies":[{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\src\\pages\\setting\\systemAdmin\\index.vue","mtime":1761185180186},{"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:DQppbXBvcnQgeyBtYXBTdGF0ZSB9IGZyb20gJ3Z1ZXgnOw0KaW1wb3J0IHsgYWRtaW5MaXN0QXBpLCBhZG1pbkZyb21BcGksIGFkbWluRWRpdEZyb21BcGksIHNldFNob3dBcGkgfSBmcm9tICdAL2FwaS9zeXN0ZW1BZG1pbic7DQppbXBvcnQgYWRtaW5Gcm9tIGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvZnJvbS9mcm9tJzsNCmV4cG9ydCBkZWZhdWx0IHsNCiAgbmFtZTogJ3N5c3RlbUFkbWluJywNCiAgY29tcG9uZW50czogeyBhZG1pbkZyb20gfSwNCiAgZGF0YSgpIHsNCiAgICByZXR1cm4gew0KICAgICAgZ3JpZDogew0KICAgICAgICB4bDogNywNCiAgICAgICAgbGc6IDcsDQogICAgICAgIG1kOiAxMiwNCiAgICAgICAgc206IDI0LA0KICAgICAgICB4czogMjQsDQogICAgICB9LA0KICAgICAgdG90YWw6IDAsDQogICAgICBsb2FkaW5nOiBmYWxzZSwNCiAgICAgIHJvbGVEYXRhOiB7DQogICAgICAgIHN0YXR1czE6ICcnLA0KICAgICAgfSwNCiAgICAgIGZvcm1WYWxpZGF0ZTogew0KICAgICAgICByb2xlczogJycsDQogICAgICAgIHN0YXR1czogJycsDQogICAgICAgIG5hbWU6ICcnLA0KICAgICAgICBwYWdlOiAxLCAvLyDlvZPliY3pobUNCiAgICAgICAgbGltaXQ6IDIwLCAvLyDmr4/pobXmmL7npLrmnaHmlbANCiAgICAgIH0sDQogICAgICBzdGF0dXM6ICcnLA0KICAgICAgbGlzdDogW10sDQogICAgICBGcm9tRGF0YTogbnVsbCwNCiAgICAgIG1vZGFsVGl0bGVTczogJycsDQogICAgICBpZHM6IE51bWJlciwNCiAgICB9Ow0KICB9LA0KICBjb21wdXRlZDogew0KICAgIC4uLm1hcFN0YXRlKCdtZWRpYScsIFsnaXNNb2JpbGUnXSksDQogICAgbGFiZWxXaWR0aCgpIHsNCiAgICAgIHJldHVybiB0aGlzLmlzTW9iaWxlID8gdW5kZWZpbmVkIDogJzUwcHgnOw0KICAgIH0sDQogICAgbGFiZWxQb3NpdGlvbigpIHsNCiAgICAgIHJldHVybiB0aGlzLmlzTW9iaWxlID8gJ3RvcCcgOiAnbGVmdCc7DQogICAgfSwNCiAgfSwNCiAgY3JlYXRlZCgpIHsNCiAgICB0aGlzLmdldExpc3QoKTsNCiAgfSwNCiAgbWV0aG9kczogew0KICAgIC8vIOS/ruaUueaYr+WQpuW8gOWQrw0KICAgIG9uY2hhbmdlSXNTaG93KHJvdykgew0KICAgICAgbGV0IGRhdGEgPSB7DQogICAgICAgIGlkOiByb3cuaWQsDQogICAgICAgIHN0YXR1czogcm93LnN0YXR1cywNCiAgICAgIH07DQogICAgICBzZXRTaG93QXBpKGRhdGEpDQogICAgICAgIC50aGVuKGFzeW5jIChyZXMpID0+IHsNCiAgICAgICAgICB0aGlzLiRtZXNzYWdlLnN1Y2Nlc3MocmVzLm1zZyk7DQogICAgICAgIH0pDQogICAgICAgIC5jYXRjaCgocmVzKSA9PiB7DQogICAgICAgICAgdGhpcy4kbWVzc2FnZS5lcnJvcihyZXMubXNnKTsNCiAgICAgICAgfSk7DQogICAgfSwNCiAgICAvLyDor7fmsYLliJfooagNCiAgICBzdWJtaXRGYWlsKCkgew0KICAgICAgdGhpcy5nZXRMaXN0KCk7DQogICAgfSwNCiAgICAvLyDliJfooagNCiAgICBnZXRMaXN0KCkgew0KICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTsNCiAgICAgIHRoaXMuZm9ybVZhbGlkYXRlLnJvbGVzID0gdGhpcy5mb3JtVmFsaWRhdGUucm9sZXMgfHwgJyc7DQogICAgICBhZG1pbkxpc3RBcGkodGhpcy5mb3JtVmFsaWRhdGUpDQogICAgICAgIC50aGVuKGFzeW5jIChyZXMpID0+IHsNCiAgICAgICAgICB0aGlzLnRvdGFsID0gcmVzLmRhdGEuY291bnQ7DQogICAgICAgICAgdGhpcy5saXN0ID0gcmVzLmRhdGEubGlzdDsNCiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTsNCiAgICAgICAgfSkNCiAgICAgICAgLmNhdGNoKChyZXMpID0+IHsNCiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTsNCiAgICAgICAgICB0aGlzLiRtZXNzYWdlLmVycm9yKHJlcy5tc2cpOw0KICAgICAgICB9KTsNCiAgICB9LA0KICAgIC8vIOa3u+WKoOihqOWNlQ0KICAgIGFkZCgpIHsNCiAgICAgIGFkbWluRnJvbUFwaSgpDQogICAgICAgIC50aGVuKGFzeW5jIChyZXMpID0+IHsNCiAgICAgICAgICB0aGlzLkZyb21EYXRhID0gcmVzLmRhdGE7DQogICAgICAgICAgdGhpcy4kcmVmcy5hZG1pbmZyb20ubW9kYWxzID0gdHJ1ZTsNCiAgICAgICAgfSkNCiAgICAgICAgLmNhdGNoKChyZXMpID0+IHsNCiAgICAgICAgICB0aGlzLiRtZXNzYWdlLmVycm9yKHJlcy5tc2cpOw0KICAgICAgICB9KTsNCiAgICB9LA0KICAgIC8vIOe8lui+kQ0KICAgIGVkaXQocm93KSB7DQogICAgICBhZG1pbkVkaXRGcm9tQXBpKHJvdy5pZCkNCiAgICAgICAgLnRoZW4oYXN5bmMgKHJlcykgPT4gew0KICAgICAgICAgIGlmIChyZXMuZGF0YS5zdGF0dXMgPT09IGZhbHNlKSB7DQogICAgICAgICAgICByZXR1cm4gdGhpcy4kYXV0aExhcHNlKHJlcy5kYXRhKTsNCiAgICAgICAgICB9DQogICAgICAgICAgdGhpcy5Gcm9tRGF0YSA9IHJlcy5kYXRhOw0KICAgICAgICAgIHRoaXMuJHJlZnMuYWRtaW5mcm9tLm1vZGFscyA9IHRydWU7DQogICAgICAgIH0pDQogICAgICAgIC5jYXRjaCgocmVzKSA9PiB7DQogICAgICAgICAgdGhpcy4kbWVzc2FnZS5lcnJvcihyZXMubXNnKTsNCiAgICAgICAgfSk7DQogICAgfSwNCiAgICAvLyDliKDpmaQNCiAgICBkZWwocm93LCB0aXQsIG51bSkgew0KICAgICAgbGV0IGRlbGZyb21EYXRhID0gew0KICAgICAgICB0aXRsZTogdGl0LA0KICAgICAgICBudW06IG51bSwNCiAgICAgICAgdXJsOiBgc2V0dGluZy9hZG1pbi8ke3Jvdy5pZH1gLA0KICAgICAgICBtZXRob2Q6ICdERUxFVEUnLA0KICAgICAgICBpZHM6ICcnLA0KICAgICAgfTsNCiAgICAgIHRoaXMuJG1vZGFsU3VyZShkZWxmcm9tRGF0YSkNCiAgICAgICAgLnRoZW4oKHJlcykgPT4gew0KICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uuc3VjY2VzcyhyZXMubXNnKTsNCiAgICAgICAgICB0aGlzLmxpc3Quc3BsaWNlKG51bSwgMSk7DQogICAgICAgIH0pDQogICAgICAgIC5jYXRjaCgocmVzKSA9PiB7DQogICAgICAgICAgdGhpcy4kbWVzc2FnZS5lcnJvcihyZXMubXNnKTsNCiAgICAgICAgfSk7DQogICAgfSwNCiAgICAvLyDooajmoLzmkJzntKINCiAgICB1c2VyU2VhcmNocygpIHsNCiAgICAgIHRoaXMuZm9ybVZhbGlkYXRlLnN0YXR1cyA9IHRoaXMuc3RhdHVzID09PSAnYWxsJyA/ICcnIDogdGhpcy5zdGF0dXM7DQogICAgICB0aGlzLmZvcm1WYWxpZGF0ZS5wYWdlID0gMTsNCiAgICAgIHRoaXMubGlzdCA9IFtdOw0KICAgICAgdGhpcy5nZXRMaXN0KCk7DQogICAgfSwNCiAgfSwNCn07DQo="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";AA8GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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/setting/systemAdmin","sourcesContent":["<template>\r\n <div>\r\n <el-card :bordered=\"false\" shadow=\"never\" class=\"ivu-mb-16\" :body-style=\"{ padding: 0 }\">\r\n <div class=\"padding-add\">\r\n <el-form\r\n ref=\"formValidate\"\r\n :model=\"formValidate\"\r\n label-width=\"80px\"\r\n label-position=\"right\"\r\n @submit.native.prevent\r\n inline\r\n >\r\n <el-form-item label=\"状态:\" label-for=\"status1\">\r\n <el-select v-model=\"status\" placeholder=\"请选择\" @change=\"userSearchs\" clearable class=\"form_content_width\">\r\n <el-option value=\"all\" label=\"全部\"></el-option>\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=\"搜索:\" label-for=\"status2\">\r\n <el-input\r\n clearable\r\n placeholder=\"请输入姓名或者账号\"\r\n v-model=\"formValidate.name\"\r\n class=\"form_content_width\"\r\n />\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\">\r\n <el-button v-auth=\"['setting-system_admin-add']\" type=\"primary\" v-db-click @click=\"add\">添加管理员</el-button>\r\n <el-table\r\n :data=\"list\"\r\n class=\"mt14\"\r\n no-userFrom-text=\"暂无数据\"\r\n no-filtered-userFrom-text=\"暂无筛选结果\"\r\n v-loading=\"loading\"\r\n highlight-current-row\r\n >\r\n <el-table-column label=\"姓名\" width=\"120\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.real_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.account }}</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 <div v-if=\"scope.row.roles.length !== 0\">\r\n <el-tag v-for=\"(item, index) in scope.row.roles.split(',')\" :key=\"index\">{{ item }}</el-tag>\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 <span>{{ scope.row._last_time }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"最后一次登录ip\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.last_ip }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"开启\" min-width=\"70\">\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 @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=\"操作\" fixed=\"right\" width=\"100\">\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 </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=\"formValidate.page\"\r\n :limit.sync=\"formValidate.limit\"\r\n @pagination=\"getList\"\r\n />\r\n </div>\r\n </el-card>\r\n <!-- 添加 编辑 -->\r\n <admin-from :FromData=\"FromData\" ref=\"adminfrom\" @submitFail=\"submitFail\"></admin-from>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { mapState } from 'vuex';\r\nimport { adminListApi, adminFromApi, adminEditFromApi, setShowApi } from '@/api/systemAdmin';\r\nimport adminFrom from '../../../components/from/from';\r\nexport default {\r\n name: 'systemAdmin',\r\n components: { adminFrom },\r\n data() {\r\n return {\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 total: 0,\r\n loading: false,\r\n roleData: {\r\n status1: '',\r\n },\r\n formValidate: {\r\n roles: '',\r\n status: '',\r\n name: '',\r\n page: 1, // 当前页\r\n limit: 20, // 每页显示条数\r\n },\r\n status: '',\r\n list: [],\r\n FromData: null,\r\n modalTitleSs: '',\r\n ids: Number,\r\n };\r\n },\r\n computed: {\r\n ...mapState('media', ['isMobile']),\r\n labelWidth() {\r\n return this.isMobile ? undefined : '50px';\r\n },\r\n labelPosition() {\r\n return this.isMobile ? 'top' : 'left';\r\n },\r\n },\r\n created() {\r\n this.getList();\r\n },\r\n methods: {\r\n // 修改是否开启\r\n onchangeIsShow(row) {\r\n let data = {\r\n id: row.id,\r\n status: row.status,\r\n };\r\n setShowApi(data)\r\n .then(async (res) => {\r\n this.$message.success(res.msg);\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\r\n });\r\n },\r\n // 请求列表\r\n submitFail() {\r\n this.getList();\r\n },\r\n // 列表\r\n getList() {\r\n this.loading = true;\r\n this.formValidate.roles = this.formValidate.roles || '';\r\n adminListApi(this.formValidate)\r\n .then(async (res) => {\r\n this.total = res.data.count;\r\n this.list = res.data.list;\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 add() {\r\n adminFromApi()\r\n .then(async (res) => {\r\n this.FromData = res.data;\r\n this.$refs.adminfrom.modals = true;\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\r\n });\r\n },\r\n // 编辑\r\n edit(row) {\r\n adminEditFromApi(row.id)\r\n .then(async (res) => {\r\n if (res.data.status === false) {\r\n return this.$authLapse(res.data);\r\n }\r\n this.FromData = res.data;\r\n this.$refs.adminfrom.modals = true;\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\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: `setting/admin/${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.list.splice(num, 1);\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\r\n });\r\n },\r\n // 表格搜索\r\n userSearchs() {\r\n this.formValidate.status = this.status === 'all' ? '' : this.status;\r\n this.formValidate.page = 1;\r\n this.list = [];\r\n this.getList();\r\n },\r\n },\r\n};\r\n</script>\r\n\r\n<style scoped></style>\r\n"]}]}
|