forked from liweijie/education
1 line
6.7 KiB
JSON
1 line
6.7 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\\profile\\index.vue?vue&type=script&lang=js","dependencies":[{"path":"C:\\Users\\Admin\\Desktop\\education\\frontend\\src\\views\\system\\user\\profile\\index.vue","mtime":1787567871671},{"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:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQppbXBvcnQgdXNlckF2YXRhciBmcm9tICIuL3VzZXJBdmF0YXIiDQppbXBvcnQgdXNlckluZm8gZnJvbSAiLi91c2VySW5mbyINCmltcG9ydCByZXNldFB3ZCBmcm9tICIuL3Jlc2V0UHdkIg0KaW1wb3J0IHsgZ2V0VXNlclByb2ZpbGUgfSBmcm9tICJAL2FwaS9zeXN0ZW0vdXNlciINCg0KZXhwb3J0IGRlZmF1bHQgew0KICBuYW1lOiAiUHJvZmlsZSIsDQogIGNvbXBvbmVudHM6IHsgdXNlckF2YXRhciwgdXNlckluZm8sIHJlc2V0UHdkIH0sDQogIGRhdGEoKSB7DQogICAgcmV0dXJuIHsNCiAgICAgIHVzZXI6IHt9LA0KICAgICAgcm9sZUdyb3VwOiB7fSwNCiAgICAgIHBvc3RHcm91cDoge30sDQogICAgICBsb2dpblN0YXRzOiB7fSwNCiAgICAgIHNlbGVjdGVkVGFiOiAidXNlcmluZm8iDQogICAgfQ0KICB9LA0KICBjcmVhdGVkKCkgew0KICAgIGNvbnN0IGFjdGl2ZVRhYiA9IHRoaXMuJHJvdXRlLnBhcmFtcyAmJiB0aGlzLiRyb3V0ZS5wYXJhbXMuYWN0aXZlVGFiDQogICAgaWYgKGFjdGl2ZVRhYikgew0KICAgICAgdGhpcy5zZWxlY3RlZFRhYiA9IGFjdGl2ZVRhYg0KICAgIH0NCiAgICB0aGlzLmdldFVzZXIoKQ0KICB9LA0KICBtZXRob2RzOiB7DQogICAgZ2V0VXNlcigpIHsNCiAgICAgIGdldFVzZXJQcm9maWxlKCkudGhlbihyZXNwb25zZSA9PiB7DQogICAgICAgIHRoaXMudXNlciA9IHJlc3BvbnNlLmRhdGENCiAgICAgICAgdGhpcy5yb2xlR3JvdXAgPSByZXNwb25zZS5yb2xlR3JvdXANCiAgICAgICAgdGhpcy5wb3N0R3JvdXAgPSByZXNwb25zZS5wb3N0R3JvdXANCiAgICAgICAgdGhpcy5sb2dpblN0YXRzID0gcmVzcG9uc2UubG9naW5TdGF0cyB8fCB7fQ0KICAgICAgfSkNCiAgICB9DQogIH0NCn0NCg=="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyEA;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","file":"index.vue","sourceRoot":"src/views/system/user/profile","sourcesContent":["<template>\r\n <div class=\"app-container\">\r\n <el-row :gutter=\"20\">\r\n <el-col :span=\"6\" :xs=\"24\">\r\n <el-card class=\"box-card\">\r\n <div slot=\"header\" class=\"clearfix\">\r\n <span>个人信息</span>\r\n </div>\r\n <div>\r\n <div class=\"text-center\">\r\n <userAvatar />\r\n </div>\r\n <ul class=\"list-group list-group-striped\">\r\n <li class=\"list-group-item\">\r\n <svg-icon icon-class=\"user\" />用户名称\r\n <div class=\"pull-right\">{{ user.userName }}</div>\r\n </li>\r\n <li class=\"list-group-item\">\r\n <svg-icon icon-class=\"phone\" />手机号码\r\n <div class=\"pull-right\">{{ user.phonenumber }}</div>\r\n </li>\r\n <li class=\"list-group-item\">\r\n <svg-icon icon-class=\"email\" />用户邮箱\r\n <div class=\"pull-right\">{{ user.email }}</div>\r\n </li>\r\n <li class=\"list-group-item\">\r\n <svg-icon icon-class=\"tree\" />所属部门\r\n <div class=\"pull-right\" v-if=\"user.dept\">{{ user.dept.deptName }} / {{ postGroup }}</div>\r\n </li>\r\n <li class=\"list-group-item\">\r\n <svg-icon icon-class=\"peoples\" />所属角色\r\n <div class=\"pull-right\">{{ roleGroup }}</div>\r\n </li>\r\n <li class=\"list-group-item\">\r\n <svg-icon icon-class=\"date\" />创建日期\r\n <div class=\"pull-right\">{{ user.createTime }}</div>\r\n </li>\r\n <li class=\"list-group-item\">\r\n <svg-icon icon-class=\"login\" />上次登录时间\r\n <div class=\"pull-right\">{{ loginStats.LAST_LOGIN_TIME || '首次登录' }}</div>\r\n </li>\r\n <li class=\"list-group-item\">\r\n <svg-icon icon-class=\"online\" />登录次数\r\n <div class=\"pull-right\">{{ loginStats.LOGIN_COUNT || 0 }}次</div>\r\n </li>\r\n <li class=\"list-group-item\">\r\n <svg-icon icon-class=\"ip\" />最后登录IP\r\n <div class=\"pull-right\">{{ loginStats.LAST_LOGIN_IP || '-' }}</div>\r\n </li>\r\n </ul>\r\n </div>\r\n </el-card>\r\n </el-col>\r\n <el-col :span=\"18\" :xs=\"24\">\r\n <el-card>\r\n <div slot=\"header\" class=\"clearfix\">\r\n <span>基本资料</span>\r\n </div>\r\n <el-tabs v-model=\"selectedTab\">\r\n <el-tab-pane label=\"基本资料\" name=\"userinfo\">\r\n <userInfo :user=\"user\" />\r\n </el-tab-pane>\r\n <el-tab-pane label=\"修改密码\" name=\"resetPwd\">\r\n <resetPwd />\r\n </el-tab-pane>\r\n </el-tabs>\r\n </el-card>\r\n </el-col>\r\n </el-row>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport userAvatar from \"./userAvatar\"\r\nimport userInfo from \"./userInfo\"\r\nimport resetPwd from \"./resetPwd\"\r\nimport { getUserProfile } from \"@/api/system/user\"\r\n\r\nexport default {\r\n name: \"Profile\",\r\n components: { userAvatar, userInfo, resetPwd },\r\n data() {\r\n return {\r\n user: {},\r\n roleGroup: {},\r\n postGroup: {},\r\n loginStats: {},\r\n selectedTab: \"userinfo\"\r\n }\r\n },\r\n created() {\r\n const activeTab = this.$route.params && this.$route.params.activeTab\r\n if (activeTab) {\r\n this.selectedTab = activeTab\r\n }\r\n this.getUser()\r\n },\r\n methods: {\r\n getUser() {\r\n getUserProfile().then(response => {\r\n this.user = response.data\r\n this.roleGroup = response.roleGroup\r\n this.postGroup = response.postGroup\r\n this.loginStats = response.loginStats || {}\r\n })\r\n }\r\n }\r\n}\r\n</script>\r\n"]}]} |