diff --git a/src/api/user/index.ts b/src/api/user/index.ts
index 7a9025b..117df7b 100644
--- a/src/api/user/index.ts
+++ b/src/api/user/index.ts
@@ -12,6 +12,7 @@ import { baseUrlHost } from '../baseUrlHost';
* @method updateUser 更新用户
* @method getuserListAll 获取全部用户
* @method getUserDetail 查询单个用户
+ * @method updatepwd 修改用户密码
*/
export function userApi() {
@@ -55,5 +56,12 @@ export function userApi() {
method: 'get',
});
},
+ updatepwd: (id:Number,data:object) => {
+ return request({
+ url: baseUrlHost + `/acUser/${id}/pwdreset`,
+ method: 'post',
+ data
+ })
+ }
};
}
diff --git a/src/i18n/lang/en.ts b/src/i18n/lang/en.ts
index 7a80e8a..40badf7 100644
--- a/src/i18n/lang/en.ts
+++ b/src/i18n/lang/en.ts
@@ -129,9 +129,10 @@ export default {
dropdownDefault: 'default',
dropdownSmall: 'small',
dropdown1: 'home page',
- dropdown2: 'Personal Center',
- dropdown3: '404',
- dropdown4: '401',
+ dropdown2:'updatepwd',
+ // dropdown2: 'Personal Center',
+ // dropdown3: '404',
+ // dropdown4: '401',
dropdown5: 'Log out',
dropdown6: 'Code warehouse',
searchPlaceholder: 'Menu search: support Chinese, routing path',
diff --git a/src/i18n/lang/zh-cn.ts b/src/i18n/lang/zh-cn.ts
index f4f3f89..b8d59d2 100644
--- a/src/i18n/lang/zh-cn.ts
+++ b/src/i18n/lang/zh-cn.ts
@@ -132,9 +132,10 @@ export default {
dropdownDefault: '默认',
dropdownSmall: '小型',
dropdown1: '首页',
- dropdown2: '个人中心',
- dropdown3: '404',
- dropdown4: '401',
+ // dropdown2: '个人中心',
+ // dropdown3: '404',
+ // dropdown4: '401',
+ dropdown2:'修改密码',
dropdown5: '退出登录',
dropdown6: '代码仓库',
searchPlaceholder: '菜单搜索:支持中文、路由路径',
diff --git a/src/i18n/lang/zh-tw.ts b/src/i18n/lang/zh-tw.ts
index 2a3f8e5..3e994b8 100644
--- a/src/i18n/lang/zh-tw.ts
+++ b/src/i18n/lang/zh-tw.ts
@@ -129,9 +129,10 @@ export default {
dropdownDefault: '默認',
dropdownSmall: '小型',
dropdown1: '首頁',
- dropdown2: '個人中心',
- dropdown3: '404',
- dropdown4: '401',
+ dropdown2:'修改密碼',
+ // dropdown2: '個人中心',
+ // dropdown3: '404',
+ // dropdown4: '401',
dropdown5: '登出',
dropdown6: '程式碼倉庫',
searchPlaceholder: '選單蒐索:支援中文、路由路徑',
diff --git a/src/layout/navBars/topBar/user.vue b/src/layout/navBars/topBar/user.vue
index cd765f2..a97be71 100644
--- a/src/layout/navBars/topBar/user.vue
+++ b/src/layout/navBars/topBar/user.vue
@@ -73,15 +73,38 @@
{{ $t('message.user.dropdown1') }}
-
+
+ {{ $t('message.user.dropdown2') }}
+
{{ $t('message.user.dropdown5') }}
+
@@ -98,6 +121,7 @@ import other from '/@/utils/other';
import mittBus from '/@/utils/mitt';
import { Session, Local } from '/@/utils/storage';
import { useLoginApi } from '/@/api/login';
+import { userApi } from '/@/api/user'
// 引入组件
const UserNews = defineAsyncComponent(() => import('/@/layout/navBars/topBar/userNews.vue'));
@@ -106,6 +130,8 @@ const Search = defineAsyncComponent(() => import('/@/layout/navBars/topBar/searc
// 引入 api 请求接口
const loginApi = useLoginApi();
+const userapi = userApi();
+
// 定义变量内容
const userNewsRef = ref();
const userNewsBadgeRef = ref();
@@ -120,8 +146,23 @@ const state = reactive({
isScreenfull: false,
disabledI18n: 'zh-cn',
disabledSize: 'large',
+ userDetailList:{
+ old:'',
+ pwd:'',
+ },
+ dialog:{
+ isShowDialog: false,
+ title: '修改密码',
+ loading: false,
+ },
+ rules:{
+ old:{ required: true, message: '旧密码不能为空', trigger: 'blur' },
+ pwd:{ required: true, message: '新密码不能为空', trigger: 'blur' }
+ }
});
+const userDialogFormRef = ref();
+
// 设置分割样式
const layoutUserFlexNum = computed(() => {
let num: string | number = '';
@@ -152,7 +193,8 @@ const onLayoutSetingClick = () => {
mittBus.emit('openSetingsDrawer');
};
// 下拉菜单点击时
-const onHandleCommandClick = (path: string) => {
+const onHandleCommandClick = async(path: string) => {
+
if (path === 'logOut') {
ElMessageBox({
closeOnClickModal: false,
@@ -189,10 +231,73 @@ const onHandleCommandClick = (path: string) => {
.catch(() => {});
} else if (path === 'wareHouse') {
window.open('https://gitee.com/lyt-top/vue-next-admin');
- } else {
+ } else if(path === 'updatepwd'){
+ state.dialog.isShowDialog = true;
+ state.userDetailList.pwd ='';
+ try{
+ const res = await userapi.getUserDetail(localStorage.getItem('userid'));
+ if(res?.success){
+ state.userDetailList.old = res.data.password;
+ // console.log(111111111,state.userDetailList.oldpwd)
+ }
+ }catch(error){
+ console.error(error);
+ }
+ }
+ else {
router.push(path);
}
};
+
+// 关闭弹窗
+const closeDialog = () => {
+ state.dialog.isShowDialog = false;
+};
+
+//确定
+const handleSure = () =>{
+ userDialogFormRef.value?.validate(async(valid:boolean) =>{
+ if(valid){
+ // console.log(111111111)
+
+ try{
+ const res = await userapi.updatepwd(localStorage.getItem('userid'),state.userDetailList);
+ if(res?.success){
+ ElMessage.success('修改成功!');
+ reset();
+ closeDialog();
+ ElMessageBox.alert('你已被登出,请重新登录', '提示', {})
+ .then(async () => {
+ // 清除缓存/token等
+ console.log('清除缓存/token等');
+ Session.clear();
+ // 使用 reload 时,不需要调用 resetRoute() 重置路由
+ window.location.reload();
+ window.location.href = import.meta.env.MODE === "development" ? '/' : '/pixelAdmin/'; // 去登录页
+ })
+ .catch(() => {});
+ }
+ }catch(error){
+ console.error(error);
+ ElMessage.error('修改失败!');
+ }
+ }
+ })
+};
+
+// 取消
+const onCancel = () => {
+ closeDialog();
+};
+
+const reset = () =>{
+ state.userDetailList = {
+ old:'',
+ pwd:''
+ }
+
+};
+
// 菜单搜索点击
const onSearchClick = () => {
searchRef.value.openSearch();
diff --git a/src/views/home/index.vue b/src/views/home/index.vue
index 0daf6d6..253e419 100644
--- a/src/views/home/index.vue
+++ b/src/views/home/index.vue
@@ -14,28 +14,28 @@
- {{ currentTime }},admin,生活变的再糟糕,也不妨碍我变得更好!
+ {{ currentTime }},{{username}},生活变的再糟糕,也不妨碍我变得更好!
昵称:
- 小柒
+ {{ username }}
身份:
- 超级管理
+ {{ acgroup }}
-
+
- 登录时间:
- 2021-02-05 18:47:26
+ 创建时间:
+ {{creatime}}
@@ -193,17 +193,22 @@