33 lines
1.1 KiB
TypeScript
33 lines
1.1 KiB
TypeScript
import {
|
|
deleteAlarmHostApi,
|
|
deleteCameraApi,
|
|
deleteDecoderApi,
|
|
deleteKeyboardApi,
|
|
deleteMediaServerApi,
|
|
deleteNvrApi,
|
|
deleteSecurityBoxApi,
|
|
deleteSwitchApi,
|
|
deleteVideoServerApi,
|
|
type Station,
|
|
} from '@/apis';
|
|
import { DEVICE_TYPE_LITERALS, type DeviceType } from '@/enums';
|
|
|
|
export const deleteDeviceApi = async (deviceType: DeviceType, id: string, options?: { stationCode?: Station['code']; signal?: AbortSignal }) => {
|
|
const apiRecord = {
|
|
[DEVICE_TYPE_LITERALS.ndmAlarmHost]: deleteAlarmHostApi,
|
|
[DEVICE_TYPE_LITERALS.ndmCamera]: deleteCameraApi,
|
|
[DEVICE_TYPE_LITERALS.ndmDecoder]: deleteDecoderApi,
|
|
[DEVICE_TYPE_LITERALS.ndmKeyboard]: deleteKeyboardApi,
|
|
[DEVICE_TYPE_LITERALS.ndmMediaServer]: deleteMediaServerApi,
|
|
[DEVICE_TYPE_LITERALS.ndmNvr]: deleteNvrApi,
|
|
[DEVICE_TYPE_LITERALS.ndmSecurityBox]: deleteSecurityBoxApi,
|
|
[DEVICE_TYPE_LITERALS.ndmSwitch]: deleteSwitchApi,
|
|
[DEVICE_TYPE_LITERALS.ndmVideoServer]: deleteVideoServerApi,
|
|
};
|
|
|
|
const deleteApi = apiRecord[deviceType];
|
|
if (!deleteApi) throw new Error('接口不存在');
|
|
|
|
return deleteApi([id], options);
|
|
};
|