feat password

This commit is contained in:
Ironsp
2026-05-21 10:07:35 +08:00
parent ed0a1655ca
commit 1091581251
2 changed files with 26 additions and 13 deletions

View File

@@ -19,12 +19,13 @@
</template> </template>
<el-empty v-else :description="'消息为空'"></el-empty> <el-empty v-else :description="'消息为空'"></el-empty>
</div> </div>
<div v-if="newsList.length > 0" class="foot-box" @click="onGoToGiteeClick">前往gitee</div> <!-- <div v-if="newsList.length > 0" class="foot-box" @click="onGoToGiteeClick">前往gitee</div> -->
</div> </div>
</template> </template>
<script setup lang="ts" name="layoutBreadcrumbUserNews"> <script setup lang="ts" name="layoutBreadcrumbUserNews">
import { useNoticeStore } from '@/store/modules/notice'; import { useNoticeStore } from '@/store/modules/notice';
import { listNotice } from '@/api/system/notice';
const noticeStore = useNoticeStore(); const noticeStore = useNoticeStore();
const { readAll } = useNoticeStore(); const { readAll } = useNoticeStore();
@@ -60,6 +61,7 @@ const onGoToGiteeClick = () => {
onMounted(() => { onMounted(() => {
nextTick(() => { nextTick(() => {
getTableData(); getTableData();
console.log('消息列表:', newsList.value);
}); });
}); });
</script> </script>

View File

@@ -2,18 +2,21 @@
<div class="base"> <div class="base">
<div class="base-content"> <div class="base-content">
<el-form ref="pwdRef" :model="user" :rules="rules" label-width="80px"> <el-form ref="pwdRef" :model="user" :rules="rules" label-width="80px">
<el-form-item label="旧密码" prop="oldPassword"> <el-form-item label="账号" prop="username" label-position="left">
<el-input v-model="user.oldPassword" placeholder="请输入旧密码" type="password" show-password /> <el-input v-model="user.username" placeholder="请输入账号" clearable />
</el-form-item> </el-form-item>
<el-form-item label="密码" prop="newPassword"> <el-form-item label="密码" prop="oldPassword" label-position="left">
<el-input v-model="user.newPassword" placeholder="请输入密码" type="password" show-password /> <el-input v-model="user.oldPassword" placeholder="请输入密码" type="password" show-password label-position="left" />
</el-form-item> </el-form-item>
<el-form-item label="确认密码" prop="confirmPassword"> <el-form-item label="密码" prop="newPassword" label-position="left">
<el-input v-model="user.confirmPassword" placeholder="请确认新密码" type="password" show-password /> <el-input v-model="user.newPassword" placeholder="请输入新密码" type="password" show-password label-position="left" />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item label="确认密码" prop="confirmPassword" label-position="left">
<el-button type="primary" @click="submit">保存</el-button> <el-input v-model="user.confirmPassword" placeholder="请确认新密码" type="password" show-password label-position="left" />
<el-button type="danger" @click="close">关闭</el-button> </el-form-item>
<el-form-item style="margin: 50px 0 0 0">
<el-button style="width: 100px; margin-left: 200px" type="primary" @click="submit">提交</el-button>
<!-- <el-button type="danger" @click="close">关闭</el-button> -->
</el-form-item> </el-form-item>
</el-form> </el-form>
</div> </div>
@@ -21,12 +24,13 @@
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import { updateUserPwd } from '@/api/system/user'; import { updateUserPwd, getUserProfile } from '@/api/system/user';
import type { ResetPwdForm } from '@/api/system/user/types'; import type { ResetPwdForm } from '@/api/system/user/types';
const { proxy } = getCurrentInstance() as ComponentInternalInstance; const { proxy } = getCurrentInstance() as ComponentInternalInstance;
const pwdRef = ref<ElFormInstance>(); const pwdRef = ref<ElFormInstance>();
const user = ref<ResetPwdForm>({ const user = ref({
username: '',
oldPassword: '', oldPassword: '',
newPassword: '', newPassword: '',
confirmPassword: '' confirmPassword: ''
@@ -40,6 +44,7 @@ const equalToPassword = (rule: any, value: string, callback: any) => {
} }
}; };
const rules = ref({ const rules = ref({
username: [{ required: true, message: '账号不能为空', trigger: 'blur' }],
oldPassword: [{ required: true, message: '旧密码不能为空', trigger: 'blur' }], oldPassword: [{ required: true, message: '旧密码不能为空', trigger: 'blur' }],
newPassword: [ newPassword: [
{ required: true, message: '新密码不能为空', trigger: 'blur' }, { required: true, message: '新密码不能为空', trigger: 'blur' },
@@ -62,7 +67,13 @@ const rules = ref({
}); });
/** 提交按钮 */ /** 提交按钮 */
const submit = () => { const submit = async () => {
const res = await getUserProfile();
console.log('当前用户信息', res);
if (!user.value.username != res.data.userName) {
proxy?.$modal.msgError('账号填写错误');
return false;
}
pwdRef.value?.validate(async (valid: boolean) => { pwdRef.value?.validate(async (valid: boolean) => {
if (valid) { if (valid) {
await updateUserPwd(user.value.oldPassword, user.value.newPassword); await updateUserPwd(user.value.oldPassword, user.value.newPassword);