Browse Source

Merge branch 'refs/heads/milestone-20250711-金币前端二期' into lihui/feature-20250711103624-金币二期

zhangrenyuan/feature-20250714163943-金币前端二期
lihui 2 weeks ago
parent
commit
ba759d2e00
  1. 58
      src/components/changePassword.vue
  2. 27
      src/views/permissions/permission.vue

58
src/components/changePassword.vue

@ -133,8 +133,7 @@ const rules = reactive({
{required: true, message: '新密码不能为空', trigger: 'blur'}, {required: true, message: '新密码不能为空', trigger: 'blur'},
{ {
validator: (rule, value, callback) => { validator: (rule, value, callback) => {
//
if (!/^[a-zA-Z0-9\W_]+$/.test(value)) {
if (!/^[a-zA-Z0-9!@#$%^&*()-_+={}[\]|\\:;"'<>,.?/~\`]+$/.test(value)) {
callback(new Error('密码只能包含数字、字母或符号')); callback(new Error('密码只能包含数字、字母或符号'));
} else if (value === passwd.oldPassword) { } else if (value === passwd.oldPassword) {
callback(new Error('新密码不能与旧密码一致')) callback(new Error('新密码不能与旧密码一致'))
@ -179,19 +178,20 @@ const changePassword = async function () {
} }
const result = await API({url: '/admin/password', data: params}) const result = await API({url: '/admin/password', data: params})
console.log('@@@@@@@@@@@修改密码结果:', result)
if (result.code === 0){
ElMessage.error('原密码错误')
}
console.log('修改密码结果:', result)
if (result.code === 200) { if (result.code === 200) {
// 使 // 使
//await router.push({ name: 'PasswordSuccess' }); //await router.push({ name: 'PasswordSuccess' });
ElMessage.success('修改密码成功');
// 使 // 使
await router.push('/PasswordSuccess'); await router.push('/PasswordSuccess');
ElMessage.success('修改密码成功');
resetFields(); resetFields();
}else if (result.code === 0){
ElMessage.error('原密码错误')
}else if(result.code === 400){ }else if(result.code === 400){
// //
console.log('修改密码失败') console.log('修改密码失败')
@ -200,7 +200,6 @@ const changePassword = async function () {
} }
} catch (error) { } catch (error) {
console.log('re:', result)
console.error('修改密码失败', error) console.error('修改密码失败', error)
ElMessage.error('操作失败') ElMessage.error('操作失败')
// finally // finally
@ -208,46 +207,13 @@ const changePassword = async function () {
} }
} }
//
// const changePassword = async function () {
// try {
// // API
// const result = {
// status: 200,
// data: {success: true, message: ''}
// };
// console.log(':', result);
// //
// if (result.status === 200 ) {
// //
// ElMessage.success(result.data.message || '');
// //
// resetFields();
// router.replace ('/PasswordSuccess');
// return result;
// } else {
// // API
// const errorMsg = result.data.message || '';
// ElMessage.error(errorMsg);
// throw new Error(errorMsg);
// }
// } catch (error) {
// // API
// console.error(':', error);
// ElMessage.error(error.message || '');
// throw error;
// }
// };
// //
const resetFields = () => { const resetFields = () => {
passwdFormRef.value.resetFields()
if (passwdFormRef.value) {
passwdFormRef.value.resetFields()
}
errorMsg.value = '' errorMsg.value = ''
} }

27
src/views/permissions/permission.vue

@ -499,7 +499,7 @@ const permissionEdit = async function () {
market: permissionEditObj.value.market,// market: permissionEditObj.value.market,//
postiton: permissionEditObj.value.postiton,// postiton: permissionEditObj.value.postiton,//
roleId: permissionEditObj.value.roleId,//id roleId: permissionEditObj.value.roleId,//id
machineId: permissionEditObj.value.machineId,//
machineId: permissionEditObj.value.machineIds[0],//
machineIds: permissionEditObj.value.machineIds[1],// machineIds: permissionEditObj.value.machineIds[1],//
password: permissionEditObj.value.password,// password: permissionEditObj.value.password,//
remark: permissionEditObj.value.remark// remark: permissionEditObj.value.remark//
@ -579,6 +579,15 @@ const delRoleConfirm = async function () {
} }
const handleAddRole = async function () { const handleAddRole = async function () {
try { try {
await new Promise((resolve, reject) => {
Ref.value.validate((valid) => {
if (valid) {
resolve(); //
} else {
reject(new Error('请检查并完善表单信息')); //
}
});
});
const res = await API({ const res = await API({
@ -723,6 +732,20 @@ onMounted(async function () {
await getRoleList() await getRoleList()
await getAdminData() await getAdminData()
}) })
const Rolerules = reactive({
roleName: [
{ required: true, message: '请输入角色名称', trigger: 'blur' },
{ min: 2, max: 20, message: '角色名称长度应在2-20个字符之间', trigger: 'blur' }
],
market: [
{ required: true, message: '请选择所属地区', trigger: 'change' }
],
grade: [
{ required: true, message: '请输入优先级', trigger: 'blur' },
{ pattern: /^[1-9]\d{0,2}$/, message: '优先级应为1-999的数字', trigger: 'blur' }
]
});
</script> </script>
<template> <template>
@ -1030,7 +1053,7 @@ onMounted(async function () {
<!-- 新增角色 --> <!-- 新增角色 -->
<el-dialog v-model="permissionAddVisible" title="新增角色" width="800px" :close-on-click-modal="false"> <el-dialog v-model="permissionAddVisible" title="新增角色" width="800px" :close-on-click-modal="false">
<template #footer> <template #footer>
<el-form ref="Ref" :model="addRole" label-width="auto" style="max-width: 600px; align-items: center">
<el-form ref="Ref" :rules="Rolerules" :model="addRole" label-width="auto" style="max-width: 600px; align-items: center">
<el-form-item prop="roleName" label="角色名称:" required> <el-form-item prop="roleName" label="角色名称:" required>
<el-input v-model="addRole.roleName" placeholder="请输入用户名" style="width: 220px" /> <el-input v-model="addRole.roleName" placeholder="请输入用户名" style="width: 220px" />
</el-form-item> </el-form-item>

Loading…
Cancel
Save