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() { -