feat: 设备树添加管理功能
- 新增设备导入、导出、删除功能及相关API - 封装设备管理逻辑,拆分设备选择与设备管理逻辑 - 添加右键菜单支持设备管理操作
This commit is contained in:
34
src/apis/request/biz/composed/export-device.ts
Normal file
34
src/apis/request/biz/composed/export-device.ts
Normal file
@@ -0,0 +1,34 @@
|
||||
import {
|
||||
exportAlarmHostApi,
|
||||
exportCameraApi,
|
||||
exportDecoderApi,
|
||||
exportKeyboardApi,
|
||||
exportMediaServerApi,
|
||||
exportNvrApi,
|
||||
exportSecurityBoxApi,
|
||||
exportSwitchApi,
|
||||
exportVideoServerApi,
|
||||
type NdmDevicePageQuery,
|
||||
type PageParams,
|
||||
type Station,
|
||||
} from '@/apis';
|
||||
import { DEVICE_TYPE_LITERALS, type DeviceType } from '@/enums';
|
||||
|
||||
export const exportDeviceApi = async (deviceType: DeviceType, pageQuery: PageParams<NdmDevicePageQuery>, options?: { stationCode?: Station['code']; signal?: AbortSignal }) => {
|
||||
const apiRecord = {
|
||||
[DEVICE_TYPE_LITERALS.ndmAlarmHost]: exportAlarmHostApi,
|
||||
[DEVICE_TYPE_LITERALS.ndmCamera]: exportCameraApi,
|
||||
[DEVICE_TYPE_LITERALS.ndmDecoder]: exportDecoderApi,
|
||||
[DEVICE_TYPE_LITERALS.ndmKeyboard]: exportKeyboardApi,
|
||||
[DEVICE_TYPE_LITERALS.ndmMediaServer]: exportMediaServerApi,
|
||||
[DEVICE_TYPE_LITERALS.ndmNvr]: exportNvrApi,
|
||||
[DEVICE_TYPE_LITERALS.ndmSecurityBox]: exportSecurityBoxApi,
|
||||
[DEVICE_TYPE_LITERALS.ndmSwitch]: exportSwitchApi,
|
||||
[DEVICE_TYPE_LITERALS.ndmVideoServer]: exportVideoServerApi,
|
||||
};
|
||||
|
||||
const exportApi = apiRecord[deviceType];
|
||||
if (!exportApi) throw new Error('接口不存在');
|
||||
|
||||
return exportApi(pageQuery, options);
|
||||
};
|
||||
Reference in New Issue
Block a user