From c694cffc8541d921e5256d33e14e3237454de950 Mon Sep 17 00:00:00 2001 From: 马宇豪 <978517621@qq.com> Date: 星期五, 26 一月 2024 09:43:31 +0800 Subject: [PATCH] 新提交 --- src/views/system/user/component/userDialog.vue | 30 +++++++++++++++++++++++++++--- 1 files changed, 27 insertions(+), 3 deletions(-) diff --git a/src/views/system/user/component/userDialog.vue b/src/views/system/user/component/userDialog.vue index e978c9d..1570fce 100644 --- a/src/views/system/user/component/userDialog.vue +++ b/src/views/system/user/component/userDialog.vue @@ -93,6 +93,7 @@ import { reactive, toRefs, onMounted, defineComponent, ref } from 'vue'; import { ElMessageBox, ElMessage } from 'element-plus'; import { userApi } from '/@/api/systemManage/user'; +import {verifyPhone, verifyPwd} from "/@/utils/toolsValidate"; // 定义接口来定义对象的类型 interface DeptData {} @@ -133,6 +134,27 @@ name: 'user', setup(props, context) { const userRef = ref() + const checkPhone = (rule: any, value: any, callback: any) => { + if (value == '') { + return callback(new Error('该内容不能为空')) + } + setTimeout(() => { + if (!verifyPhone(value)) { + callback(new Error('手机号格式不正确')) + }else callback(); + }, 400) + } + let validatePwd = (rule: any, value: any, callback: any)=>{ + if(value === ''){ + callback(new Error('请输入密码')) + }else{ + if(!verifyPwd(value)){ + callback(new Error('密码须包含字母、数字、特殊字符,长度在6-16之间')) + }else{ + callback() + } + } + } const state = reactive<UserState>({ title: '', disabled: false, @@ -158,10 +180,10 @@ roleIds: [{ required: true, message: '请选择用户角色', trigger: 'change' }], depId: [{ required: true, message: '请选择部门', trigger: 'change' }], positionIds: [{ required: true, message: '请选择职务', trigger: 'change' }], - phone: [{ required: true, message: '请填写手机号', trigger: 'blur' }], + phone: [{ required: true, validator: checkPhone, trigger: 'blur' }], type: [{ required: true, message: '请填写用户类型', trigger: 'blur' }], gender: [{ required: true, message: '请选择性别', trigger: 'change' }], - password: [{ required: true, message: '请输入账户密码', trigger: 'blur' }], + password: [{ required: true, validator: validatePwd, trigger: 'blur' }], }, departmentData: [], // 部门数据 roleData: [], //角色数据 @@ -176,6 +198,7 @@ { id: 3, name: '普通员工' } ], }); + // 打开弹窗 const openDialog = (type: string, value: any, departmentList: [], roleList: [], dutyList:[]) => { state.isShowUserDialog = true; @@ -240,7 +263,8 @@ }); } } else { - let res = await userApi().modUser(state.userForm); + const { roles, positions, ...data} = state.userForm + let res = await userApi().modUser(data); if (res.data.code === '200') { ElMessage({ type: 'success', -- Gitblit v1.9.2