1 |
- {"remainingRequest":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/src/views/log/operation/index.vue?vue&type=script&lang=js","dependencies":[{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/src/views/log/operation/index.vue","mtime":1708395041888},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/cache-loader/dist/cjs.js","mtime":1708395146433},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/babel-loader/lib/index.js","mtime":1708395147257},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/cache-loader/dist/cjs.js","mtime":1708395146433},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/vue-loader/lib/index.js","mtime":1708395147382}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQppbXBvcnQgew0KICBnZXRPcGVyYXRpb25MaXN0LA0KICBnZXREb2luZ1R5cGVMaXN0LA0KICBnZXRsb2FmT3V0LA0KICBnZXREZWxldGVMaXN0DQp9IGZyb20gJ0AvYXBpL29wZXJhdGlvbicNCmltcG9ydCB7IG1hcEdldHRlcnMgfSBmcm9tICd2dWV4Jw0KDQpleHBvcnQgZGVmYXVsdCB7DQogIG5hbWU6ICdIb21lJywNCiAgY29tcHV0ZWQ6IHsNCiAgICAuLi5tYXBHZXR0ZXJzKFsnbmFtZSddKQ0KICB9LA0KICBkYXRhKCkgew0KICAgIHJldHVybiB7DQogICAgICBzZWFyY2hTaG93OiB0cnVlLA0KICAgICAgZm9ybURldGFpbDoge30sDQogICAgICB2YWx1ZTE6ICcnLA0KICAgICAgcXVlcnlQYXJhbXM6IHsNCiAgICAgICAgcGFnZVNpemU6ICcxMCcsDQogICAgICAgIHBhZ2VOdW06ICcxJywNCiAgICAgICAgdGl0bGU6ICcnLA0KICAgICAgICB1c2VySWQ6ICcnLA0KICAgICAgICBidXNpbmVzc1R5cGU6ICcnDQogICAgICB9LA0KICAgICAgb3BlbjogZmFsc2UsDQogICAgICBmb3JtOiB7DQogICAgICAgIGRpY3JOYW1lOiAnJywNCiAgICAgICAgZGljdFR5cGU6ICcnLA0KICAgICAgICBzdGF0dXM6ICcnLA0KICAgICAgICByZW1hcms6ICcnDQogICAgICB9LA0KICAgICAgc3RhdHVzT3B0aW9uczogWw0KICAgICAgICB7DQogICAgICAgICAgbGFiZWw6ICflkK/nlKgnLA0KICAgICAgICAgIHZhbHVlOiAnMCcNCiAgICAgICAgfSwNCiAgICAgICAgew0KICAgICAgICAgIGxhYmVsOiAn5YGc55SoJywNCiAgICAgICAgICB2YWx1ZTogJzEnDQogICAgICAgIH0NCiAgICAgIF0sDQogICAgICBzZWFyY2hEYXRhOiB7fSwNCiAgICAgIGRhdGVSYW5nZTogW10sDQogICAgICB0YWJsZURhdGE6IFtdLA0KICAgICAgZ2V0RG9UeXBlOiBbXSwNCiAgICAgIGlkczogW10sDQogICAgICB0b3RhbDogMCwNCiAgICAgIGRpYWxvZ0Zvcm1WaXNpYmxlOiBmYWxzZQ0KICAgIH0NCiAgfSwNCiAgY3JlYXRlZCgpIHsNCiAgICB0aGlzLmdldExpc3QoKQ0KICAgIHRoaXMuZ2V0VHlwZUxpc3QoKQ0KICB9LA0KICBtZXRob2RzOiB7DQogICAgc2hvd0RldGFpbChyb3cpIHsNCiAgICAgIHRoaXMub3BlbiA9IHRydWUNCiAgICAgIHRoaXMuZm9ybURldGFpbCA9IHJvdw0KICAgIH0sDQogICAgYWRkRGVwYXJ0TWVuRGljdCgpIHsNCiAgICAgIGlmICh0aGlzLmlkcy5sZW5ndGggPT0gMCkgew0KICAgICAgICB0aGlzLiRtZXNzYWdlKHsNCiAgICAgICAgICB0eXBlOiAnZXJyb3InLA0KICAgICAgICAgIG1lc3NhZ2U6ICfor7fpgInmi6nopoHliKDpmaTnmoTml6Xlv5fmlbDmja4hJw0KICAgICAgICB9KQ0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgdGhpcy4kY29uZmlybSgn56Gu5a6a6KaB5Yig6Zmk5ZCXPycsICfkv6Hmga/mj5DnpLonLCB7DQogICAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICfnoa7lrponLA0KICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICflj5bmtognLA0KICAgICAgICAgIHR5cGU6ICd3YXJuaW5nJw0KICAgICAgICB9KQ0KICAgICAgICAgIC50aGVuKCgpID0+IHsNCiAgICAgICAgICAgIGdldERlbGV0ZUxpc3QodGhpcy5pZHMpLnRoZW4oKHJlcykgPT4gew0KICAgICAgICAgICAgICBpZiAocmVzLmNvZGUgPT0gMjAwKSB7DQogICAgICAgICAgICAgICAgdGhpcy5nZXRMaXN0KCkNCiAgICAgICAgICAgICAgICB0aGlzLiRtZXNzYWdlKHsNCiAgICAgICAgICAgICAgICAgIHR5cGU6ICdzdWNjZXNzJywNCiAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6ICfliKDpmaTmiJDlip8hJw0KICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgdGhpcy4kbWVzc2FnZSh7DQogICAgICAgICAgICAgICAgICB0eXBlOiAnZXJyb3InLA0KICAgICAgICAgICAgICAgICAgbWVzc2FnZTogcmVzLm1zZw0KICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0pDQogICAgICAgICAgfSkNCiAgICAgICAgICAuY2F0Y2goKCkgPT4gew0KICAgICAgICAgICAgdGhpcy4kbWVzc2FnZSh7DQogICAgICAgICAgICAgIHR5cGU6ICdpbmZvJywNCiAgICAgICAgICAgICAgbWVzc2FnZTogJ+W3suWPlua2iOWIoOmZpCcNCiAgICAgICAgICAgIH0pDQogICAgICAgICAgfSkNCiAgICAgIH0NCiAgICB9LA0KICAgIGhhbmRsZVNlbGVjdGlvbkNoYW5nZSh2YWwpIHsNCiAgICAgIHRoaXMuaWRzID0gdmFsLm1hcCgoaXRlbSkgPT4gaXRlbS5vcGVySWQpDQogICAgfSwNCiAgICBleHBvcnRPdXQoKSB7DQogICAgICBnZXRsb2FmT3V0KHt9KS50aGVuKChyZXMpID0+IHsNCiAgICAgICAgdGhpcy5leHBvcnRGaWxlKHJlcywgJ+aTjeS9nOaXpeW/l+S/oeaBrycpDQogICAgICB9KQ0KICAgIH0sDQogICAgZXhwb3J0RmlsZTogZnVuY3Rpb24gKG9iaiwgbmFtZSA9IERhdGUubm93KCksIHN1ZmZpeCA9ICd4bHN4Jykgew0KICAgICAgY29uc3QgdXJsID0gd2luZG93LlVSTC5jcmVhdGVPYmplY3RVUkwoDQogICAgICAgIG5ldyBCbG9iKFtvYmpdLCB7IHR5cGU6ICdhcHBsaWNhdGlvbi92bmQubXMtZXhjZWwnIH0pDQogICAgICApDQogICAgICBjb25zdCBhRE9NID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpDQogICAgICBhRE9NLnN0eWxlLmRpc3BsYXkgPSAnbm9uZScNCiAgICAgIGFET00uaHJlZiA9IHVybA0KICAgICAgY29uc3QgZmlsZU5hbWUgPSBuYW1lICsgJy4nICsgc3VmZml4DQogICAgICBhRE9NLnNldEF0dHJpYnV0ZSgnZG93bmxvYWQnLCBmaWxlTmFtZSkNCiAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYURPTSkNCiAgICAgIGFET00uY2xpY2soKQ0KICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChhRE9NKQ0KICAgIH0sDQogICAgaGFuZGxlUXVlcnkoKSB7DQogICAgICB0aGlzLnF1ZXJ5UGFyYW1zLnBhZ2VOdW0gPSAxDQogICAgICB0aGlzLmdldExpc3QoKQ0KICAgIH0sDQogICAgcmVzZXQoKSB7DQogICAgICB0aGlzLnF1ZXJ5UGFyYW1zID0ge30NCiAgICAgIHRoaXMucXVlcnlQYXJhbXMucGFnZU51bSA9IDENCiAgICAgIHRoaXMucXVlcnlQYXJhbXMucGFnZVNpemUgPSAxMA0KICAgICAgdGhpcy5nZXRMaXN0KCkNCiAgICAgIHRoaXMuZGF0ZVJhbmdlID0gW10NCiAgICB9LA0KICAgIC8vIOaTjeS9nOexu+Weiw0KICAgIGdldFR5cGVMaXN0KCkgew0KICAgICAgZ2V0RG9pbmdUeXBlTGlzdCh7fSkudGhlbigocmVzKSA9PiB7DQogICAgICAgIHRoaXMuZ2V0RG9UeXBlID0gcmVzLmRhdGENCiAgICAgIH0pDQogICAgfSwNCiAgICBzd2l0Y2hOdW1iZXIobnVtKSB7DQogICAgICB0aGlzLmdldERvVHlwZS5tYXAoKGl0ZW0pID0+IHsNCiAgICAgICAgaWYgKG51bS50b1N0cmluZygpID09PSBpdGVtLmRpY3RWYWx1ZSkgew0KICAgICAgICAgIG51bSA9IGl0ZW0uZGljdExhYmVsDQogICAgICAgIH0NCiAgICAgIH0pDQogICAgICByZXR1cm4gbnVtDQogICAgfSwNCg0KICAgIGdldExpc3QoKSB7DQogICAgICBpZiAodGhpcy5kYXRlUmFuZ2UpIHsNCiAgICAgICAgdGhpcy5xdWVyeVBhcmFtcy5zdGFydFRpbWUgPSB0aGlzLmRhdGVSYW5nZVswXQ0KICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLmVuZFRpbWUgPSB0aGlzLmRhdGVSYW5nZVsxXQ0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgdGhpcy5xdWVyeVBhcmFtcy5zYXRydFRpbWUgPSAnJw0KICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLmVuZFRpbWUgPSAnJw0KICAgICAgfQ0KICAgICAgZ2V0T3BlcmF0aW9uTGlzdCh0aGlzLnF1ZXJ5UGFyYW1zKS50aGVuKChyZXMpID0+IHsNCiAgICAgICAgdGhpcy50YWJsZURhdGEgPSByZXMuZGF0YS5yZWNvcmRzDQogICAgICAgIHRoaXMudG90YWwgPSByZXMuZGF0YS50b3RhbA0KICAgICAgfSkNCiAgICB9LA0KICAgIGhhbmRsZVNpemVDaGFuZ2UodmFsKSB7DQogICAgICB0aGlzLnF1ZXJ5UGFyYW1zLnBhZ2VTaXplID0gdmFsDQogICAgICB0aGlzLmdldExpc3QoKQ0KICAgIH0sDQogICAgaGFuZGxlQ3VycmVudENoYW5nZSh2YWwpIHsNCiAgICAgIHRoaXMucXVlcnlQYXJhbXMucGFnZU51bSA9IHZhbA0KICAgICAgdGhpcy5nZXRMaXN0KCkNCiAgICB9DQogIH0NCn0NCg=="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyJA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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","file":"index.vue","sourceRoot":"src/views/log/operation","sourcesContent":["<template>\r\n <div class=\"dashboard-container\">\r\n <div class=\"dashboard-text\">\r\n <div style=\"margin-top:-15px;background:#fff;padding:15px\">\r\n <el-row :gutter=\"24\" style=\"display:flex\">\r\n <el-input v-model=\"queryParams.title\" style=\"width: 220px;padding:0 10px\" placeholder=\"请输入系统模块\" />\r\n <el-input v-model=\"queryParams.userId\" style=\"width: 220px;padding:0 10px\" placeholder=\"请输入操作人员\" />\r\n <el-select v-model=\"queryParams.businessType\" clearable placeholder=\"请选择类型\" style=\"width:220px;padding:0 10px\">\r\n <el-option v-for=\"item in getDoType\" :key=\"item.dictValue\" :label=\"item.dictLabel\" :value=\"item.dictValue\" />\r\n </el-select>\r\n <div v-if=\"searchShow == true\" :span=\"6\" style=\"display:flex;margin-top:2px\">\r\n <!-- <div class=\"search-btn\"> -->\r\n <div class=\"searchBtn\" style=\"margin-left:10px\" @click=\"handleQuery\">搜索</div>\r\n <div class=\"resetBtn\" style=\"margin-left:10px\" @click=\"reset\">重置</div>\r\n <el-button v-if=\"searchShow == false\" type=\"text\" style=\"color: #2766dd !important;margin-left:10px\"\r\n icon=\"el-icon-arrow-up\" @click=\"searchShow = true\">收起</el-button>\r\n <el-button v-if=\"searchShow == true\" type=\"text\" style=\"color:#2766DD;margin-left:10px\"\r\n icon=\"el-icon-arrow-down\" @click=\"searchShow = false\">展开</el-button>\r\n <!-- </div> -->\r\n </div>\r\n </el-row>\r\n <el-row :gutter=\"24\" style=\"display:flex\">\r\n <div v-if=\"searchShow == false\" :span=\"6\">\r\n <el-date-picker v-model=\"dateRange\" style=\"width: 420px;margin-left:10px\" end-placeholder=\"结束日期\"\r\n range-separator=\"至\" start-placeholder=\"开始日期\" clearable value-format=\"yyyy-MM-dd HH:mm:ss\" type=\"daterange\"\r\n :clearable=\"true\" />\r\n </div>\r\n <el-col style=\"width:240px\"></el-col>\r\n <div v-if=\"searchShow == false\" :span=\"6\">\r\n <div class=\"search-btn\" style=\"display: flex;\">\r\n <!-- <el-button class=\"search\" @click=\"handleQuery\">搜索</el-button>\r\n <el-button class=\"reset\" @click=\"reset\">重置</el-button> -->\r\n <div class=\"searchBtn\" style=\"margin-top: 10px;\" @click=\"handleQuery\">搜索</div>\r\n <div class=\"resetBtn\" style=\"margin-left:10px;margin-top: 10px;\" @click=\"reset\">重置</div>\r\n <el-button v-if=\"searchShow == false\" type=\"text\" icon=\"el-icon-arrow-up\"\r\n style=\"color: #2766dd !important;margin-left:10px;margin-top: 10px;\"\r\n @click=\"searchShow = true\">收起</el-button>\r\n <el-button v-if=\"searchShow == true\" type=\"text\" icon=\"el-icon-arrow-down\"\r\n @click=\"searchShow = false\">展开</el-button>\r\n </div>\r\n </div>\r\n </el-row>\r\n </div>\r\n </div>\r\n\r\n <div style=\"margin-top: 15px;background:#fff;padding:20px\">\r\n <div class=\"table-content\">\r\n <div style=\"width: 100%; height: 30px\">\r\n <!-- <div class=\"addBtn\" style=\"margin-right:0\" @click=\"exportOut\">导出</div> -->\r\n <!-- <div class=\"addBtn\" @click=\"addDepartMenDict\">删除</div> -->\r\n </div>\r\n <el-table ref=\"multipleTable\" :data=\"tableData\" tooltip-effect=\"dark\" style=\"width: 100%\"\r\n @selection-change=\"handleSelectionChange\">\r\n <el-table-column type=\"selection\" width=\"55\" align=\"center\" />\r\n <el-table-column prop=\"operId\" label=\"日志编号\" align=\"center\" fixed=\"left\" />\r\n <el-table-column prop=\"title\" label=\"系统模块\" align=\"center\" />\r\n <el-table-column prop=\"businessType\" label=\"操作类型\" align=\"center\">\r\n <template slot-scope=\"scope\">\r\n <!-- <dict-tag :options=\"getDoType\" :value=\"scope.row.businessType\" /> -->\r\n {{ switchNumber(scope.row.businessType) }}\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"requestMethod\" label=\"请求方式\" align=\"center\" />\r\n <el-table-column prop=\"userId\" label=\"操作人员\" align=\"center\" />\r\n <el-table-column prop=\"operIp\" label=\"操作地址\" align=\"center\" />\r\n <el-table-column prop=\"operTime\" label=\"操作时间\" align=\"center\" />\r\n <el-table-column label=\"操作\" align=\"center\" fixed=\"right\">\r\n <template slot-scope=\"scope\">\r\n <div class=\"operateBtn\">\r\n <div style=\"cursor: pointer;font-size:14px;color: #2766DD;;\" @click=\"showDetail(scope.row)\">\r\n 详细\r\n </div>\r\n </div>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n <el-row type=\"flex\" justify=\"end\" style=\"margin-top: 10px\">\r\n <div class=\"pagination\">\r\n <el-pagination :page-sizes=\"[10, 15, 20]\" :page-size=\"searchData.pageSize\"\r\n layout=\"total, sizes, prev, pager, next, jumper\" :total=\"total\" @size-change=\"handleSizeChange\"\r\n @current-change=\"handleCurrentChange\" />\r\n </div>\r\n </el-row>\r\n </div>\r\n </div>\r\n <!-- 操作日志详细 -->\r\n <el-dialog title=\"操作日志详细\" :visible.sync=\"open\" width=\"720px\" append-to-body>\r\n <div class=\"dialog_box\">\r\n <el-form :model=\"formDetail\">\r\n <el-row>\r\n <el-col :span=\"12\">\r\n <el-form-item label=\"操作模块\">{{\r\n formDetail.title\r\n }}</el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item label=\"操作状态\">\r\n <div v-if=\"formDetail.status === 1\">正常</div>\r\n <div v-else-if=\"formDetail.status === 2\">失败</div>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item label=\"操作时间\">{{\r\n formDetail.operTime\r\n }}</el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item label=\"请求方式\">{{\r\n formDetail.requestMethod\r\n }}</el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item label=\"登录信息\">{{ formDetail.operName }} / {{ formDetail.operIp }} /\r\n {{ formDetail.operLocation }}</el-form-item>\r\n </el-col>\r\n <el-col :span=\"24\">\r\n <el-form-item label=\"请求参数\">{{\r\n formDetail.operParam\r\n }}</el-form-item>\r\n </el-col>\r\n <el-col :span=\"24\">\r\n <el-form-item label=\"请求地址\">{{\r\n formDetail.operUrl\r\n }}</el-form-item>\r\n </el-col>\r\n <el-col :span=\"24\">\r\n <el-form-item label=\"操作方法\">{{\r\n formDetail.method\r\n }}</el-form-item>\r\n </el-col>\r\n <el-col :span=\"24\">\r\n <el-form-item label=\"返回参数\">{{\r\n formDetail.jsonResult\r\n }}</el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item v-if=\"form.status === 1\" label=\"异常信息\">{{\r\n formDetail.errorMsg\r\n }}</el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n </div>\r\n <template #footer>\r\n <div class=\"dialog-footer\">\r\n <!-- <el-button class=\"reset\" @click=\"open = false\">关 闭</el-button> -->\r\n </div>\r\n </template>\r\n </el-dialog>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport {\r\n getOperationList,\r\n getDoingTypeList,\r\n getloafOut,\r\n getDeleteList\r\n} from '@/api/operation'\r\nimport { mapGetters } from 'vuex'\r\n\r\nexport default {\r\n name: 'Home',\r\n computed: {\r\n ...mapGetters(['name'])\r\n },\r\n data() {\r\n return {\r\n searchShow: true,\r\n formDetail: {},\r\n value1: '',\r\n queryParams: {\r\n pageSize: '10',\r\n pageNum: '1',\r\n title: '',\r\n userId: '',\r\n businessType: ''\r\n },\r\n open: false,\r\n form: {\r\n dicrName: '',\r\n dictType: '',\r\n status: '',\r\n remark: ''\r\n },\r\n statusOptions: [\r\n {\r\n label: '启用',\r\n value: '0'\r\n },\r\n {\r\n label: '停用',\r\n value: '1'\r\n }\r\n ],\r\n searchData: {},\r\n dateRange: [],\r\n tableData: [],\r\n getDoType: [],\r\n ids: [],\r\n total: 0,\r\n dialogFormVisible: false\r\n }\r\n },\r\n created() {\r\n this.getList()\r\n this.getTypeList()\r\n },\r\n methods: {\r\n showDetail(row) {\r\n this.open = true\r\n this.formDetail = row\r\n },\r\n addDepartMenDict() {\r\n if (this.ids.length == 0) {\r\n this.$message({\r\n type: 'error',\r\n message: '请选择要删除的日志数据!'\r\n })\r\n } else {\r\n this.$confirm('确定要删除吗?', '信息提示', {\r\n confirmButtonText: '确定',\r\n cancelButtonText: '取消',\r\n type: 'warning'\r\n })\r\n .then(() => {\r\n getDeleteList(this.ids).then((res) => {\r\n if (res.code == 200) {\r\n this.getList()\r\n this.$message({\r\n type: 'success',\r\n message: '删除成功!'\r\n })\r\n } else {\r\n this.$message({\r\n type: 'error',\r\n message: res.msg\r\n })\r\n }\r\n })\r\n })\r\n .catch(() => {\r\n this.$message({\r\n type: 'info',\r\n message: '已取消删除'\r\n })\r\n })\r\n }\r\n },\r\n handleSelectionChange(val) {\r\n this.ids = val.map((item) => item.operId)\r\n },\r\n exportOut() {\r\n getloafOut({}).then((res) => {\r\n this.exportFile(res, '操作日志信息')\r\n })\r\n },\r\n exportFile: function (obj, name = Date.now(), suffix = 'xlsx') {\r\n const url = window.URL.createObjectURL(\r\n new Blob([obj], { type: 'application/vnd.ms-excel' })\r\n )\r\n const aDOM = document.createElement('a')\r\n aDOM.style.display = 'none'\r\n aDOM.href = url\r\n const fileName = name + '.' + suffix\r\n aDOM.setAttribute('download', fileName)\r\n document.body.appendChild(aDOM)\r\n aDOM.click()\r\n document.body.removeChild(aDOM)\r\n },\r\n handleQuery() {\r\n this.queryParams.pageNum = 1\r\n this.getList()\r\n },\r\n reset() {\r\n this.queryParams = {}\r\n this.queryParams.pageNum = 1\r\n this.queryParams.pageSize = 10\r\n this.getList()\r\n this.dateRange = []\r\n },\r\n // 操作类型\r\n getTypeList() {\r\n getDoingTypeList({}).then((res) => {\r\n this.getDoType = res.data\r\n })\r\n },\r\n switchNumber(num) {\r\n this.getDoType.map((item) => {\r\n if (num.toString() === item.dictValue) {\r\n num = item.dictLabel\r\n }\r\n })\r\n return num\r\n },\r\n\r\n getList() {\r\n if (this.dateRange) {\r\n this.queryParams.startTime = this.dateRange[0]\r\n this.queryParams.endTime = this.dateRange[1]\r\n } else {\r\n this.queryParams.satrtTime = ''\r\n this.queryParams.endTime = ''\r\n }\r\n getOperationList(this.queryParams).then((res) => {\r\n this.tableData = res.data.records\r\n this.total = res.data.total\r\n })\r\n },\r\n handleSizeChange(val) {\r\n this.queryParams.pageSize = val\r\n this.getList()\r\n },\r\n handleCurrentChange(val) {\r\n this.queryParams.pageNum = val\r\n this.getList()\r\n }\r\n }\r\n}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.dashboard {\r\n &-container {\r\n margin: 45px 30px 30px;\r\n }\r\n\r\n &-text {\r\n font-size: 30px;\r\n line-height: 46px;\r\n }\r\n}\r\n\r\n.dashboard-container {\r\n\r\n .search-content {\r\n width: 100%;\r\n height: 80px;\r\n background-color: #fff;\r\n padding-top: 20px;\r\n\r\n .el-input {\r\n margin: 0 20px;\r\n }\r\n\r\n .el-select {\r\n margin: 0 20px;\r\n }\r\n\r\n .search-btn {\r\n float: right;\r\n margin-right: 20px;\r\n }\r\n }\r\n\r\n .table-content {\r\n margin-top: -20px;\r\n width: 100%;\r\n background-color: #fff;\r\n\r\n .addBtn {\r\n margin: 23px 6px;\r\n cursor: pointer;\r\n float: right;\r\n text-align: center;\r\n width: 98px;\r\n height: 34px;\r\n border-radius: 2px;\r\n line-height: 34px;\r\n font-weight: 400;\r\n font-size: 14px;\r\n color: #F7F8FB;\r\n background-color: #2766DD;\r\n }\r\n\r\n .addBtn:hover {\r\n background-color: #4D85F4;\r\n }\r\n\r\n .rightTable {\r\n float: right;\r\n width: 85%;\r\n background-color: #fff;\r\n\r\n .btn {\r\n margin: 20px 15px 20px;\r\n cursor: pointer;\r\n float: right;\r\n text-align: center;\r\n width: 98px;\r\n height: 34px;\r\n line-height: 34px;\r\n font-weight: 400;\r\n font-size: 14px;\r\n color: #fff;\r\n background-color: #2866dd;\r\n }\r\n\r\n .startUsing {\r\n width: 60px;\r\n height: 25px;\r\n line-height: 25px;\r\n text-align: center;\r\n font-size: 12px;\r\n color: #fff;\r\n border-radius: 5px;\r\n background-color: #00974b;\r\n }\r\n\r\n .Deactivate {\r\n width: 60px;\r\n height: 25px;\r\n line-height: 25px;\r\n text-align: center;\r\n font-size: 12px;\r\n color: #fff;\r\n border-radius: 5px;\r\n background-color: #ff9933;\r\n }\r\n\r\n .operateBtn {\r\n display: flex;\r\n justify-content: center;\r\n color: #2766DD;\r\n\r\n div {\r\n font-size: 14px;\r\n margin: 0 5px;\r\n cursor: pointer;\r\n }\r\n }\r\n\r\n .pagination {\r\n margin: 10px 0;\r\n width: 100%;\r\n height: 20px;\r\n\r\n .el-pagination {\r\n float: right;\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\n.search {\r\n background-color: #2766DD;\r\n color: #F7F8FB;\r\n}\r\n\r\n.search:hover {\r\n background-color: #4D85F4;\r\n}\r\n\r\n.reset {\r\n color: #333334;\r\n border: 1px solid #D7D7D7;\r\n}\r\n\r\n.reset:hover {\r\n color: #1F9FFF;\r\n border: 1px solid #1F9FFF;\r\n background: none;\r\n}\r\n\r\n::v-deep .el-pagination .number {\r\n width: 72px\r\n}\r\n\r\n::v-deep .el-date-editor .el-range__icon {\r\n position: absolute;\r\n top: 2px;\r\n}\r\n\r\n.searchBtn {\r\n cursor: pointer;\r\n background-color: #2766dd;\r\n color: #f7f8fb;\r\n font-size: 14px;\r\n width: 80px;\r\n height: 40px;\r\n text-align: center;\r\n line-height: 40px;\r\n}\r\n\r\n.searchBtn:hover {\r\n background-color: #4d85f4;\r\n}\r\n\r\n.resetBtn {\r\n cursor: pointer;\r\n color: #565656;\r\n font-size: 14px;\r\n border: 1px solid #d7d7d7;\r\n width: 80px;\r\n height: 40px;\r\n text-align: center;\r\n line-height: 40px;\r\n}\r\n\r\n.resetBtn:hover {\r\n color: #1f9fff;\r\n border: 1px solid #1f9fff;\r\n background: none;\r\n}\r\n\r\n::v-deep .el-input__icon {\r\n // line-height: 47px;\r\n}\r\n\r\n::v-deep .el-date-editor .el-range__icon {\r\n line-height: 30px;\r\n}\r\n</style>\r\n"]}]}
|