From 120b27e13a283c145b41e40cd849a7a7d7da1781 Mon Sep 17 00:00:00 2001 From: lxj <15683799673@163.com> Date: Fri, 27 Jun 2025 17:13:34 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=BA=E5=83=8F=E5=BA=93=E9=A1=B5=E9=9D=A2?= =?UTF-8?q?=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/api/sis/accessControlDevice/index.ts | 9 ++++++++ apps/web-antd/src/views/sis/personLib/data.ts | 22 ++++++++++++++----- .../views/sis/personLib/personLib-modal.vue | 9 +++++--- 3 files changed, 31 insertions(+), 9 deletions(-) diff --git a/apps/web-antd/src/api/sis/accessControlDevice/index.ts b/apps/web-antd/src/api/sis/accessControlDevice/index.ts index ae5b9b23..ef99954a 100644 --- a/apps/web-antd/src/api/sis/accessControlDevice/index.ts +++ b/apps/web-antd/src/api/sis/accessControlDevice/index.ts @@ -21,6 +21,15 @@ export function accessControlDeviceList(params?: AccessControlDeviceQuery) { ); } +/** + * 根据厂商编号查询设备列表 + * @param params + * @returns 门禁设备列表 + */ +export function queryListByFactoryNo(factory: string) { + return requestClient.get(`/sis/accessControlDevice/list/${factory}`,); +} + /** * 导出门禁设备列表 * @param params diff --git a/apps/web-antd/src/views/sis/personLib/data.ts b/apps/web-antd/src/views/sis/personLib/data.ts index 8e9603b4..fae53fa8 100644 --- a/apps/web-antd/src/views/sis/personLib/data.ts +++ b/apps/web-antd/src/views/sis/personLib/data.ts @@ -5,6 +5,7 @@ import { DictEnum } from '@vben/constants'; import { getPopupContainer } from '@vben/utils'; import { getDictOptions } from '#/utils/dict'; +import { queryListByFactoryNo } from '#/api/sis/accessControlDevice'; export const querySchema: FormSchemaGetter = () => [ { @@ -79,10 +80,19 @@ export const modalSchema: FormSchemaGetter = () => [ options: getDictOptions(DictEnum.SIS_LIB_TYPE), }, }, - /* { - label: '业务类型', - fieldName: 'busiType', - component: 'Select', - componentProps: {}, - },*/ + { + label: '设备', + fieldName: 'eqpIds', + component: 'ApiSelect', + rules: 'required', + componentProps: { + mode: 'multiple', // 关键属性,启用多选模式 + resultField: 'list', // 根据API返回结构调整 + labelField: 'eqpName', + valueField: 'eqpNo', + api: async () => { + return await queryListByFactoryNo('2'); + }, + }, + }, ]; diff --git a/apps/web-antd/src/views/sis/personLib/personLib-modal.vue b/apps/web-antd/src/views/sis/personLib/personLib-modal.vue index a10f4264..2737d80c 100644 --- a/apps/web-antd/src/views/sis/personLib/personLib-modal.vue +++ b/apps/web-antd/src/views/sis/personLib/personLib-modal.vue @@ -6,7 +6,11 @@ import { $t } from '@vben/locales'; import { cloneDeep } from '@vben/utils'; import { useVbenForm } from '#/adapter/form'; -import { personLibAdd, personLibInfo, personLibUpdate } from '#/api/sis/personLib'; +import { + personLibAdd, + personLibInfo, + personLibUpdate, +} from '#/api/sis/personLib'; import { defaultFormValueGetter, useBeforeCloseDiff } from '#/utils/popup'; import { modalSchema } from './data'; @@ -27,7 +31,7 @@ const [BasicForm, formApi] = useVbenForm({ // 通用配置项 会影响到所有表单项 componentProps: { class: 'w-full', - } + }, }, schema: modalSchema(), showDefaultActions: false, @@ -98,4 +102,3 @@ async function handleClosed() { -