46a8a9d9d686ad2a16f6edb104d01fac.json 12 KB

1
  1. {"remainingRequest":"D:\\front\\item\\zyAdmin\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\front\\item\\zyAdmin\\src\\pages\\system\\maintain\\systemLog\\index.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\front\\item\\zyAdmin\\src\\pages\\system\\maintain\\systemLog\\index.vue","mtime":1761614939077},{"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:DQppbXBvcnQgeyBtYXBTdGF0ZSB9IGZyb20gJ3Z1ZXgnOw0KaW1wb3J0IHsgc2VhcmNoQWRtaW5BcGksIHN5c3RlbUxpc3RBcGkgfSBmcm9tICdAL2FwaS9zeXN0ZW0nOw0KaW1wb3J0IHsgZm9ybWF0RGF0ZSB9IGZyb20gJ0AvdXRpbHMvdmFsaWRhdGUnOw0KZXhwb3J0IGRlZmF1bHQgew0KICBuYW1lOiAnc3lzdGVtTG9nJywNCiAgZmlsdGVyczogew0KICAgIGZvcm1hdERhdGUodGltZSkgew0KICAgICAgaWYgKHRpbWUgIT09IDApIHsNCiAgICAgICAgbGV0IGRhdGUgPSBuZXcgRGF0ZSh0aW1lICogMTAwMCk7DQogICAgICAgIHJldHVybiBmb3JtYXREYXRlKGRhdGUsICd5eXl5LU1NLWRkIGhoOm1tJyk7DQogICAgICB9DQogICAgfSwNCiAgfSwNCiAgZGF0YSgpIHsNCiAgICByZXR1cm4gew0KICAgICAgZnJvbUxpc3Q6IHsNCiAgICAgICAgdGl0bGU6ICfpgInmi6nml7bpl7QnLA0KICAgICAgICBjdXN0b206IHRydWUsDQogICAgICAgIGZyb21UeHQ6IFsNCiAgICAgICAgICB7IHRleHQ6ICflhajpg6gnLCB2YWw6ICcnIH0sDQogICAgICAgICAgeyB0ZXh0OiAn5LuK5aSpJywgdmFsOiAndG9kYXknIH0sDQogICAgICAgICAgeyB0ZXh0OiAn5pio5aSpJywgdmFsOiAneWVzdGVyZGF5JyB9LA0KICAgICAgICAgIHsgdGV4dDogJ+acgOi/kTflpKknLCB2YWw6ICdsYXRlbHk3JyB9LA0KICAgICAgICAgIHsgdGV4dDogJ+acgOi/kTMw5aSpJywgdmFsOiAnbGF0ZWx5MzAnIH0sDQogICAgICAgICAgeyB0ZXh0OiAn5pys5pyIJywgdmFsOiAnbW9udGgnIH0sDQogICAgICAgICAgeyB0ZXh0OiAn5pys5bm0JywgdmFsOiAneWVhcicgfSwNCiAgICAgICAgXSwNCiAgICAgIH0sDQogICAgICB0aW1lVmFsOiBbXSwNCiAgICAgIGZvcm1WYWxpZGF0ZTogew0KICAgICAgICBsaW1pdDogMjAsDQogICAgICAgIHBhZ2U6IDEsDQogICAgICAgIHBhZ2VzOiAnJywNCiAgICAgICAgZGF0YTogJycsDQogICAgICAgIHBhdGg6ICcnLA0KICAgICAgICBpcDogJycsDQogICAgICAgIGFkbWluX2lkOiAnJywNCiAgICAgIH0sDQogICAgICBsb2FkaW5nOiBmYWxzZSwNCiAgICAgIHRhYkxpc3Q6IFtdLA0KICAgICAgdG90YWw6IDAsDQoNCiAgICAgIGRhdGFMaXN0OiBbXSwNCiAgICB9Ow0KICB9LA0KICBjb21wdXRlZDogew0KICAgIC4uLm1hcFN0YXRlKCdtZWRpYScsIFsnaXNNb2JpbGUnXSksDQogICAgbGFiZWxXaWR0aCgpIHsNCiAgICAgIHJldHVybiB0aGlzLmlzTW9iaWxlID8gdW5kZWZpbmVkIDogJzgwcHgnOw0KICAgIH0sDQogICAgbGFiZWxQb3NpdGlvbigpIHsNCiAgICAgIHJldHVybiB0aGlzLmlzTW9iaWxlID8gJ3RvcCcgOiAncmlnaHQnOw0KICAgIH0sDQogIH0sDQogIGNyZWF0ZWQoKSB7DQogICAgdGhpcy5nZXRTZWFyY2hBZG1pbigpOw0KICAgIHRoaXMuZ2V0TGlzdCgpOw0KICB9LA0KICBtZXRob2RzOiB7DQogICAgLy8g5YW35L2T5pel5pyfDQogICAgb25jaGFuZ2VUaW1lKGUpIHsNCiAgICAgIHRoaXMudGltZVZhbCA9IGU7DQogICAgICB0aGlzLmZvcm1WYWxpZGF0ZS5kYXRhID0gdGhpcy50aW1lVmFsID8gdGhpcy50aW1lVmFsLmpvaW4oJy0nKSA6ICcnOw0KICAgICAgdGhpcy5mb3JtVmFsaWRhdGUucGFnZSA9IDE7DQogICAgICB0aGlzLmdldExpc3QoKTsNCiAgICB9LA0KICAgIC8vIOmAieaLqeaXtumXtA0KICAgIHNlbGVjdENoYW5nZSh0YWIpIHsNCiAgICAgIHRoaXMuZm9ybVZhbGlkYXRlLmRhdGEgPSB0YWI7DQogICAgICB0aGlzLnRpbWVWYWwgPSBbXTsNCiAgICAgIHRoaXMuZm9ybVZhbGlkYXRlLnBhZ2UgPSAxOw0KICAgICAgdGhpcy5nZXRMaXN0KCk7DQogICAgfSwNCiAgICAvLyDmkJzntKLmnaHku7YNCiAgICBnZXRTZWFyY2hBZG1pbigpIHsNCiAgICAgIHNlYXJjaEFkbWluQXBpKCkNCiAgICAgICAgLnRoZW4oYXN5bmMgKHJlcykgPT4gew0KICAgICAgICAgIHRoaXMuZGF0YUxpc3QgPSByZXMuZGF0YS5pbmZvOw0KICAgICAgICB9KQ0KICAgICAgICAuY2F0Y2goKHJlcykgPT4gew0KICAgICAgICAgIHRoaXMuJG1lc3NhZ2UuZXJyb3IocmVzLm1zZyk7DQogICAgICAgIH0pOw0KICAgIH0sDQogICAgLy8g5YiX6KGoDQogICAgZ2V0TGlzdCgpIHsNCiAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7DQogICAgICBzeXN0ZW1MaXN0QXBpKHRoaXMuZm9ybVZhbGlkYXRlKQ0KICAgICAgICAudGhlbihhc3luYyAocmVzKSA9PiB7DQogICAgICAgICAgbGV0IGRhdGEgPSByZXMuZGF0YTsNCiAgICAgICAgICB0aGlzLnRhYkxpc3QgPSBkYXRhLmxpc3Q7DQogICAgICAgICAgdGhpcy50b3RhbCA9IGRhdGEuY291bnQ7DQogICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7DQogICAgICAgIH0pDQogICAgICAgIC5jYXRjaCgocmVzKSA9PiB7DQogICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7DQogICAgICAgICAgdGhpcy4kbWVzc2FnZS5lcnJvcihyZXMubXNnKTsNCiAgICAgICAgfSk7DQogICAgfSwNCiAgICAvLyDmkJzntKINCiAgICB1c2VyU2VhcmNocygpIHsNCiAgICAgIHRoaXMuZm9ybVZhbGlkYXRlLnBhZ2UgPSAxOw0KICAgICAgdGhpcy5nZXRMaXN0KCk7DQogICAgfSwNCiAgfSwNCn07DQo="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";AAyGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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","file":"index.vue","sourceRoot":"src/pages/system/maintain/systemLog","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 :label-width=\"labelWidth\"\r\n :label-position=\"labelPosition\"\r\n @submit.native.prevent\r\n inline\r\n class=\"tabform\"\r\n >\r\n <el-form-item :label=\"fromList.title + ':'\">\r\n <el-date-picker\r\n clearable\r\n :editable=\"false\"\r\n @change=\"onchangeTime\"\r\n v-model=\"timeVal\"\r\n format=\"yyyy/MM/dd\"\r\n type=\"daterange\"\r\n value-format=\"yyyy/MM/dd\"\r\n start-placeholder=\"开始日期\"\r\n end-placeholder=\"结束日期\"\r\n style=\"width: 250px\"\r\n ></el-date-picker>\r\n </el-form-item>\r\n <el-form-item label=\"名称:\">\r\n <el-select v-model=\"formValidate.admin_id\" clearable @change=\"userSearchs\" class=\"form_content_width\">\r\n <el-option\r\n :value=\"item.id\"\r\n v-for=\"(item, index) in dataList\"\r\n :key=\"index\"\r\n :label=\"item.real_name\"\r\n ></el-option>\r\n </el-select>\r\n </el-form-item>\r\n <el-form-item label=\"链接:\">\r\n <el-input\r\n placeholder=\"请输入链接\"\r\n v-model=\"formValidate.path\"\r\n class=\"form_content_width\"\r\n clearable\r\n ></el-input>\r\n </el-form-item>\r\n <el-form-item label=\"IP:\">\r\n <el-input placeholder=\"请输入IP\" v-model=\"formValidate.ip\" clearable class=\"form_content_width\"></el-input>\r\n </el-form-item>\r\n <el-form-item>\r\n <el-button type=\"primary\" class=\"userSearch\" 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-table ref=\"selection\" :data=\"tabList\" v-loading=\"loading\" empty-text=\"暂无数据\" highlight-current-row>\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=\"ID/名称\" min-width=\"100\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.admin_id + ' / ' + scope.row.admin_name }}</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.path_name }}</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.path }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"操作ip\" min-width=\"100\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.ip }}</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.type }}</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 | formatDate }}</span>\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 </div>\r\n</template>\r\n\r\n<script>\r\nimport { mapState } from 'vuex';\r\nimport { searchAdminApi, systemListApi } from '@/api/system';\r\nimport { formatDate } from '@/utils/validate';\r\nexport default {\r\n name: 'systemLog',\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 fromList: {\r\n title: '选择时间',\r\n custom: true,\r\n fromTxt: [\r\n { text: '全部', val: '' },\r\n { text: '今天', val: 'today' },\r\n { text: '昨天', val: 'yesterday' },\r\n { text: '最近7天', val: 'lately7' },\r\n { text: '最近30天', val: 'lately30' },\r\n { text: '本月', val: 'month' },\r\n { text: '本年', val: 'year' },\r\n ],\r\n },\r\n timeVal: [],\r\n formValidate: {\r\n limit: 20,\r\n page: 1,\r\n pages: '',\r\n data: '',\r\n path: '',\r\n ip: '',\r\n admin_id: '',\r\n },\r\n loading: false,\r\n tabList: [],\r\n total: 0,\r\n\r\n dataList: [],\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.getSearchAdmin();\r\n this.getList();\r\n },\r\n methods: {\r\n // 具体日期\r\n onchangeTime(e) {\r\n this.timeVal = e;\r\n this.formValidate.data = this.timeVal ? this.timeVal.join('-') : '';\r\n this.formValidate.page = 1;\r\n this.getList();\r\n },\r\n // 选择时间\r\n selectChange(tab) {\r\n this.formValidate.data = tab;\r\n this.timeVal = [];\r\n this.formValidate.page = 1;\r\n this.getList();\r\n },\r\n // 搜索条件\r\n getSearchAdmin() {\r\n searchAdminApi()\r\n .then(async (res) => {\r\n this.dataList = res.data.info;\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\r\n });\r\n },\r\n // 列表\r\n getList() {\r\n this.loading = true;\r\n systemListApi(this.formValidate)\r\n .then(async (res) => {\r\n let data = res.data;\r\n this.tabList = data.list;\r\n this.total = 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.formValidate.page = 1;\r\n this.getList();\r\n },\r\n },\r\n};\r\n</script>\r\n\r\n<style scoped></style>\r\n"]}]}