diff --git a/src/api/operate/materialSeal/types.ts b/src/api/operate/materialSeal/types.ts index fe72d3a..8cfb66c 100644 --- a/src/api/operate/materialSeal/types.ts +++ b/src/api/operate/materialSeal/types.ts @@ -22,7 +22,7 @@ export interface MaterialSealVO { /** * 印章管理员姓名 */ - sealAdminName: string | number; + sealAdminName: string; /** * 启用状态 diff --git a/src/views/operate/materialSeal/index.vue b/src/views/operate/materialSeal/index.vue index 91556ea..2ae112f 100644 --- a/src/views/operate/materialSeal/index.vue +++ b/src/views/operate/materialSeal/index.vue @@ -124,6 +124,7 @@ import { listMaterialSeal, getMaterialSeal, delMaterialSeal, addMaterialSeal, up import { MaterialSealVO, MaterialSealQuery, MaterialSealForm } from '@/api/operate/materialSeal/types'; import UserSelect from '@/components/UserSelect/index.vue'; import { UserVO } from '@/api/system/user/types'; +import { RefSymbol } from '@vue/reactivity'; const { proxy } = getCurrentInstance() as ComponentInternalInstance; const materialSealList = ref([]); @@ -229,7 +230,8 @@ const handleAdd = () => { reset(); dialog.visible = true; dialog.title = '添加公章管理'; - selectUserList.value=[]; + selectUserList.value = []; // 确保新建时清空管理员列表 + form.value.sealAdminId = ''; // 清空表单中的管理员ID(关键!) }; /** 修改按钮操作 */ @@ -315,17 +317,31 @@ const handleExport = () => { //打开人员 const openUserSelect = () => { - userSelectRef.value.open(); - console.log(userSelectRef) - selectUserIds.value = selectUserList.value.map((item) => item.userId).join(','); + if (userSelectRef.value) { + userSelectRef.value.open(); + // 确保 UserSelect 的 data 是数组格式(即使单选也传数组) + userSelectRef.value.$el.querySelector('input')?.focus(); // 可选:自动聚焦输入框 + console.log('selectUserList') + console.log(selectUserList) + if (selectUserList.value.length !== 0) { + console.log('selectUserList不为空') + selectUserIds.value = selectUserList.value.map((item) => item.userId).join(','); + } + + } }; //确认人员 const userSelectCallBack = (data: UserVO[]) => { if (data && data.length > 0) { selectUserList.value = data; - selectUserIds.value = selectUserList.value.map((item) => item.userId).join(','); - form.value.sealAdminId = selectUserIds.value; + selectUserIds.value = data[0].userId.toString(); + // 单选模式下直接取第一个用户的ID + form.value.sealAdminId = selectUserIds.value; // 同步到表单(关键!) + } else { + selectUserList.value = []; + selectUserIds.value = ''; + form.value.sealAdminId = ''; // 清空表单 } }; //删除人员