forked from liweijie/education
1 line
9.8 KiB
JSON
1 line
9.8 KiB
JSON
{"remainingRequest":"C:\\Users\\Admin\\Desktop\\education\\frontend\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!C:\\Users\\Admin\\Desktop\\education\\frontend\\src\\views\\system\\user\\authRole.vue?vue&type=script&lang=js","dependencies":[{"path":"C:\\Users\\Admin\\Desktop\\education\\frontend\\src\\views\\system\\user\\authRole.vue","mtime":1787567871668},{"path":"C:\\Users\\Admin\\Desktop\\education\\frontend\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1787309791955},{"path":"C:\\Users\\Admin\\Desktop\\education\\frontend\\node_modules\\babel-loader\\lib\\index.js","mtime":1787309793142},{"path":"C:\\Users\\Admin\\Desktop\\education\\frontend\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1787309791955},{"path":"C:\\Users\\Admin\\Desktop\\education\\frontend\\node_modules\\vue-loader\\lib\\index.js","mtime":1787309793790}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQppbXBvcnQgeyBnZXRBdXRoUm9sZSwgdXBkYXRlQXV0aFJvbGUgfSBmcm9tICJAL2FwaS9zeXN0ZW0vdXNlciINCg0KZXhwb3J0IGRlZmF1bHQgew0KICBuYW1lOiAiQXV0aFJvbGUiLA0KICBkYXRhKCkgew0KICAgIHJldHVybiB7DQogICAgICAvLyDpga7nvanlsYINCiAgICAgIGxvYWRpbmc6IHRydWUsDQogICAgICAvLyDooajmoLzpq5jluqYNCiAgICAgIHRhYmxlSGVpZ2h0OiB3aW5kb3cuaW5uZXJIZWlnaHQgLSAyNDAsDQogICAgICAvLyDliIbpobXkv6Hmga8NCiAgICAgIHRvdGFsOiAwLA0KICAgICAgcGFnZU51bTogMSwNCiAgICAgIHBhZ2VTaXplOiAxMCwNCiAgICAgIC8vIOmAieS4reinkuiJsue8luWPtw0KICAgICAgcm9sZUlkczogW10sDQogICAgICAvLyDop5LoibLkv6Hmga8NCiAgICAgIHJvbGVzOiBbXSwNCiAgICAgIC8vIOeUqOaIt+S/oeaBrw0KICAgICAgZm9ybToge30NCiAgICB9DQogIH0sDQogIGNyZWF0ZWQoKSB7DQogICAgY29uc3QgdXNlcklkID0gdGhpcy4kcm91dGUucGFyYW1zICYmIHRoaXMuJHJvdXRlLnBhcmFtcy51c2VySWQNCiAgICBpZiAodXNlcklkKSB7DQogICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlDQogICAgICBnZXRBdXRoUm9sZSh1c2VySWQpLnRoZW4oKHJlc3BvbnNlKSA9PiB7DQogICAgICAgIHRoaXMuZm9ybSA9IHJlc3BvbnNlLnVzZXINCiAgICAgICAgdGhpcy5yb2xlcyA9IHJlc3BvbnNlLnJvbGVzDQogICAgICAgIHRoaXMudG90YWwgPSB0aGlzLnJvbGVzLmxlbmd0aA0KICAgICAgICB0aGlzLiRuZXh0VGljaygoKSA9PiB7DQogICAgICAgICAgdGhpcy5yb2xlcy5mb3JFYWNoKChyb3cpID0+IHsNCiAgICAgICAgICAgIGlmIChyb3cuZmxhZykgew0KICAgICAgICAgICAgICB0aGlzLiRyZWZzLnRhYmxlLnRvZ2dsZVJvd1NlbGVjdGlvbihyb3cpDQogICAgICAgICAgICB9DQogICAgICAgICAgfSkNCiAgICAgICAgfSkNCiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2UNCiAgICAgIH0pDQogICAgfQ0KICB9LA0KICBtb3VudGVkKCkgew0KICAgIHRoaXMuZ2V0VGFibGVIZWlnaHQoKQ0KICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdyZXNpemUnLCB0aGlzLmdldFRhYmxlSGVpZ2h0KQ0KICB9LA0KICBiZWZvcmVEZXN0cm95KCkgew0KICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdyZXNpemUnLCB0aGlzLmdldFRhYmxlSGVpZ2h0KQ0KICB9LA0KICBtZXRob2RzOiB7DQogICAgLyoqIOiOt+WPluihqOagvOmrmOW6piAqLw0KICAgIGdldFRhYmxlSGVpZ2h0KCkgew0KICAgICAgdGhpcy50YWJsZUhlaWdodCA9IHdpbmRvdy5pbm5lckhlaWdodCAtIDI0MA0KICAgIH0sDQogICAgLyoqIOWNleWHu+mAieS4reihjOaVsOaNriAqLw0KICAgIGNsaWNrUm93KHJvdykgew0KICAgICAgaWYgKHRoaXMuY2hlY2tTZWxlY3RhYmxlKHJvdykpIHsNCiAgICAgICAgdGhpcy4kcmVmcy50YWJsZS50b2dnbGVSb3dTZWxlY3Rpb24ocm93KQ0KICAgICAgfQ0KICAgIH0sDQogICAgLy8g5aSa6YCJ5qGG6YCJ5Lit5pWw5o2uDQogICAgaGFuZGxlU2VsZWN0aW9uQ2hhbmdlKHNlbGVjdGlvbikgew0KICAgICAgdGhpcy5yb2xlSWRzID0gc2VsZWN0aW9uLm1hcCgoaXRlbSkgPT4gaXRlbS5yb2xlSWQpDQogICAgfSwNCiAgICAvLyDkv53lrZjpgInkuK3nmoTmlbDmja7nvJblj7cNCiAgICBnZXRSb3dLZXkocm93KSB7DQogICAgICByZXR1cm4gcm93LnJvbGVJZA0KICAgIH0sDQogICAgLy8g5qOA5p+l6KeS6Imy54q25oCBDQogICAgY2hlY2tTZWxlY3RhYmxlKHJvdykgew0KICAgICAgcmV0dXJuIHJvdy5zdGF0dXMgPT09ICIwIiA/IHRydWUgOiBmYWxzZQ0KICAgIH0sDQogICAgLyoqIOaPkOS6pOaMiemSriAqLw0KICAgIHN1Ym1pdEZvcm0oKSB7DQogICAgICBjb25zdCB1c2VySWQgPSB0aGlzLmZvcm0udXNlcklkDQogICAgICBjb25zdCByb2xlSWRzID0gdGhpcy5yb2xlSWRzLmpvaW4oIiwiKQ0KICAgICAgdXBkYXRlQXV0aFJvbGUoeyB1c2VySWQ6IHVzZXJJZCwgcm9sZUlkczogcm9sZUlkcyB9KS50aGVuKCgpID0+IHsNCiAgICAgICAgdGhpcy4kbW9kYWwubXNnU3VjY2Vzcygi5o6I5p2D5oiQ5YqfIikNCiAgICAgICAgdGhpcy5jbG9zZSgpDQogICAgICB9KQ0KICAgIH0sDQogICAgLyoqIOWFs+mXreaMiemSriAqLw0KICAgIGNsb3NlKCkgew0KICAgICAgY29uc3Qgb2JqID0geyBwYXRoOiAiL3N5c3RlbS91c2VyIiB9DQogICAgICB0aGlzLiR0YWIuY2xvc2VPcGVuUGFnZShvYmopDQogICAgfQ0KICB9DQp9DQo="},{"version":3,"sources":["authRole.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgDA;;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","file":"authRole.vue","sourceRoot":"src/views/system/user","sourcesContent":["<template>\r\n <div class=\"app-container system-user-auth-role\">\r\n <h4 class=\"form-header h4\">基本信息</h4>\r\n <el-form ref=\"form\" :model=\"form\" label-width=\"80px\">\r\n <el-row>\r\n <el-col :span=\"8\" :offset=\"2\">\r\n <el-form-item label=\"用户昵称\" prop=\"nickName\">\r\n <el-input v-model=\"form.nickName\" disabled />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"8\" :offset=\"2\">\r\n <el-form-item label=\"登录账号\" prop=\"userName\">\r\n <el-input v-model=\"form.userName\" disabled />\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n\r\n <h4 class=\"form-header h4\">角色信息</h4>\r\n <el-table v-loading=\"loading\" :row-key=\"getRowKey\" @row-click=\"clickRow\" ref=\"table\" @selection-change=\"handleSelectionChange\" :data=\"roles.slice((pageNum-1)*pageSize,pageNum*pageSize)\" :height=\"tableHeight\">\r\n <el-table-column label=\"序号\" type=\"index\" align=\"center\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ (pageNum - 1) * pageSize + scope.$index + 1 }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column type=\"selection\" :reserve-selection=\"true\" :selectable=\"checkSelectable\" width=\"55\" />\r\n <el-table-column label=\"角色编号\" align=\"center\" prop=\"roleId\" />\r\n <el-table-column label=\"角色名称\" align=\"center\" prop=\"roleName\" />\r\n <el-table-column label=\"权限字符\" align=\"center\" prop=\"roleKey\" />\r\n <el-table-column label=\"创建时间\" align=\"center\" prop=\"createTime\" width=\"180\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ parseTime(scope.row.createTime) }}</span>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n\r\n <pagination v-show=\"total>0\" :total=\"total\" :page.sync=\"pageNum\" :limit.sync=\"pageSize\" />\r\n\r\n <el-form label-width=\"100px\">\r\n <el-form-item style=\"text-align: center;margin-left:-120px;margin-top:30px;\">\r\n <el-button type=\"primary\" @click=\"submitForm()\">提交</el-button>\r\n <el-button @click=\"close()\">返回</el-button>\r\n </el-form-item>\r\n </el-form>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { getAuthRole, updateAuthRole } from \"@/api/system/user\"\r\n\r\nexport default {\r\n name: \"AuthRole\",\r\n data() {\r\n return {\r\n // 遮罩层\r\n loading: true,\r\n // 表格高度\r\n tableHeight: window.innerHeight - 240,\r\n // 分页信息\r\n total: 0,\r\n pageNum: 1,\r\n pageSize: 10,\r\n // 选中角色编号\r\n roleIds: [],\r\n // 角色信息\r\n roles: [],\r\n // 用户信息\r\n form: {}\r\n }\r\n },\r\n created() {\r\n const userId = this.$route.params && this.$route.params.userId\r\n if (userId) {\r\n this.loading = true\r\n getAuthRole(userId).then((response) => {\r\n this.form = response.user\r\n this.roles = response.roles\r\n this.total = this.roles.length\r\n this.$nextTick(() => {\r\n this.roles.forEach((row) => {\r\n if (row.flag) {\r\n this.$refs.table.toggleRowSelection(row)\r\n }\r\n })\r\n })\r\n this.loading = false\r\n })\r\n }\r\n },\r\n mounted() {\r\n this.getTableHeight()\r\n window.addEventListener('resize', this.getTableHeight)\r\n },\r\n beforeDestroy() {\r\n window.removeEventListener('resize', this.getTableHeight)\r\n },\r\n methods: {\r\n /** 获取表格高度 */\r\n getTableHeight() {\r\n this.tableHeight = window.innerHeight - 240\r\n },\r\n /** 单击选中行数据 */\r\n clickRow(row) {\r\n if (this.checkSelectable(row)) {\r\n this.$refs.table.toggleRowSelection(row)\r\n }\r\n },\r\n // 多选框选中数据\r\n handleSelectionChange(selection) {\r\n this.roleIds = selection.map((item) => item.roleId)\r\n },\r\n // 保存选中的数据编号\r\n getRowKey(row) {\r\n return row.roleId\r\n },\r\n // 检查角色状态\r\n checkSelectable(row) {\r\n return row.status === \"0\" ? true : false\r\n },\r\n /** 提交按钮 */\r\n submitForm() {\r\n const userId = this.form.userId\r\n const roleIds = this.roleIds.join(\",\")\r\n updateAuthRole({ userId: userId, roleIds: roleIds }).then(() => {\r\n this.$modal.msgSuccess(\"授权成功\")\r\n this.close()\r\n })\r\n },\r\n /** 关闭按钮 */\r\n close() {\r\n const obj = { path: \"/system/user\" }\r\n this.$tab.closeOpenPage(obj)\r\n }\r\n }\r\n}\r\n</script>\r\n<style scoped>\r\n.system-user-auth-role ::v-deep .el-table ::-webkit-scrollbar {\r\n display: none;\r\n}\r\n.system-user-auth-role ::v-deep .el-table {\r\n scrollbar-width: none;\r\n -ms-overflow-style: none;\r\n}\r\n.system-user-auth-role ::v-deep .el-table__body-wrapper::-webkit-scrollbar {\r\n display: none;\r\n}\r\n.system-user-auth-role ::v-deep .el-table__body-wrapper {\r\n scrollbar-width: none;\r\n -ms-overflow-style: none;\r\n}\r\n</style>"]}]} |