fix: 资产相关页面微调
This commit is contained in:
@@ -1,22 +1,27 @@
|
||||
import { request } from '@/api/request'
|
||||
|
||||
/** 许可证配置(与 DC-Control `LicenceConfig` / 接口 `data` 一致;字段按实际响应可能部分缺失) */
|
||||
export interface LicenceConfig {
|
||||
title?: string
|
||||
version?: string
|
||||
company_name?: string
|
||||
create_time?: string
|
||||
expire_time?: string
|
||||
machine_code?: string
|
||||
max_database?: number
|
||||
max_middleware?: number
|
||||
max_pc?: number
|
||||
max_server?: number
|
||||
max_client?: number
|
||||
max_user?: number
|
||||
max_role?: number
|
||||
max_permission?: number
|
||||
max_menu?: number
|
||||
export interface LicenceQuotas {
|
||||
max_database: number
|
||||
max_middleware: number
|
||||
max_network_device: number
|
||||
max_security: number
|
||||
max_storage: number
|
||||
max_pc: number
|
||||
max_server: number
|
||||
max_user: number
|
||||
max_role: number
|
||||
max_permission: number
|
||||
max_menu: number
|
||||
}
|
||||
|
||||
export interface LicenceInfo {
|
||||
id: string
|
||||
platform_name: string
|
||||
workspace: string
|
||||
issued_on: string
|
||||
valid_from: string
|
||||
expires_on: string
|
||||
quotas: LicenceQuotas
|
||||
}
|
||||
|
||||
/** 获取 采集器 */
|
||||
@@ -39,7 +44,8 @@ export const updateCollector = (data: any) => request.put(`/DC-Control/v1/collec
|
||||
export const fetchCollectorStatistics = () => request.get('/DC-Control/v1/statistics')
|
||||
|
||||
/** 获取 许可证信息 */
|
||||
export const fetchLicenseInfo = () => request.get<{ code?: number; data?: LicenceConfig; message?: string }>('/DC-Control/v1/license')
|
||||
export const fetchLicenseInfo = () =>
|
||||
request.get<{ code: number; details: LicenceInfo; message: string; timeseq: number }>('/DC-Control/v1/license')
|
||||
|
||||
export interface PageResult<T> {
|
||||
total: number
|
||||
@@ -182,7 +188,9 @@ export const fetchControlResources = (params?: ResourceListParams) =>
|
||||
request.get<{ code?: number; details?: PageResult<ControlResource>; message?: string }>('/DC-Control/v1/resources', { params })
|
||||
|
||||
export const fetchControlResourceOptions = (params?: { resource_category?: string }) =>
|
||||
request.get<{ code?: number; details?: { list: OptionItem[]; count: number }; message?: string }>('/DC-Control/v1/resources/options', { params })
|
||||
request.get<{ code?: number; details?: { list: OptionItem[]; count: number }; message?: string }>('/DC-Control/v1/resources/options', {
|
||||
params,
|
||||
})
|
||||
|
||||
export const createControlResource = (data: ControlResourcePayload) =>
|
||||
request.post<{ code?: number; details?: ControlResource; message?: string }>('/DC-Control/v1/resources', data)
|
||||
@@ -203,10 +211,9 @@ export const fetchControlResourceTypeOptions = () =>
|
||||
request.get<{ code?: number; details?: { list: OptionItem[]; count: number }; message?: string }>('/DC-Control/v1/resource-types/options')
|
||||
|
||||
export const fetchControlMetricDefinitions = (params?: { page?: number; size?: number; keyword?: string; resource_category?: string }) =>
|
||||
request.get<{ code?: number; details?: PageResult<ControlMetricDefinition>; message?: string }>(
|
||||
'/DC-Control/v1/metric-definitions',
|
||||
{ params }
|
||||
)
|
||||
request.get<{ code?: number; details?: PageResult<ControlMetricDefinition>; message?: string }>('/DC-Control/v1/metric-definitions', {
|
||||
params,
|
||||
})
|
||||
|
||||
export const fetchControlMetricDefinitionOptions = (params?: { resource_category?: string }) =>
|
||||
request.get<{ code?: number; details?: { list: OptionItem[]; count: number }; message?: string }>(
|
||||
@@ -218,10 +225,14 @@ export const fetchControlMetricSeries = (params?: MetricSeriesListParams) =>
|
||||
request.get<{ code?: number; details?: PageResult<ControlMetricSeries>; message?: string }>('/DC-Control/v1/metric-series', { params })
|
||||
|
||||
export const fetchControlBusinessSystems = (params?: { page?: number; size?: number; keyword?: string; status?: string }) =>
|
||||
request.get<{ code?: number; details?: PageResult<ControlBusinessSystem>; message?: string }>('/DC-Control/v1/business-systems', { params })
|
||||
request.get<{ code?: number; details?: PageResult<ControlBusinessSystem>; message?: string }>('/DC-Control/v1/business-systems', {
|
||||
params,
|
||||
})
|
||||
|
||||
export const fetchControlBusinessSystemOptions = () =>
|
||||
request.get<{ code?: number; details?: { list: OptionItem[]; count: number }; message?: string }>('/DC-Control/v1/business-systems/options')
|
||||
request.get<{ code?: number; details?: { list: OptionItem[]; count: number }; message?: string }>(
|
||||
'/DC-Control/v1/business-systems/options'
|
||||
)
|
||||
|
||||
export const fetchCollectionStatus = (params?: {
|
||||
page?: number
|
||||
@@ -231,7 +242,6 @@ export const fetchCollectionStatus = (params?: {
|
||||
resource_uid?: string
|
||||
status?: string
|
||||
}) =>
|
||||
request.get<{ code?: number; details?: PageResult<ControlCollectionStatus>; message?: string }>(
|
||||
'/DC-Control/v1/collection/status',
|
||||
{ params }
|
||||
)
|
||||
request.get<{ code?: number; details?: PageResult<ControlCollectionStatus>; message?: string }>('/DC-Control/v1/collection/status', {
|
||||
params,
|
||||
})
|
||||
|
||||
@@ -1,5 +1,13 @@
|
||||
import { request } from '@/api/request'
|
||||
|
||||
/** IPAM服务统一响应 */
|
||||
export interface IPAMResponse<T> {
|
||||
code: number
|
||||
details: T
|
||||
message?: string
|
||||
timeseq?: number
|
||||
}
|
||||
|
||||
/** IP地址运行状态 */
|
||||
export type IPStatus = 'online' | 'offline' | 'unknown'
|
||||
|
||||
@@ -118,7 +126,8 @@ export interface IPGroupListParams {
|
||||
|
||||
/** IP分组列表响应 */
|
||||
export interface IPGroupListResponse {
|
||||
data: IPGroupItem[]
|
||||
list: IPGroupItem[]
|
||||
count: number
|
||||
}
|
||||
|
||||
/** IP分组表单数据 */
|
||||
@@ -359,92 +368,96 @@ export interface IPAnomalyFormData {
|
||||
/** ========== 概览 API ========== */
|
||||
|
||||
/** 获取IPAM概览统计 */
|
||||
export const fetchIPAMOverview = () => request.get<IPAMOverview>('/DC-Control/v1/ipam/overview')
|
||||
export const fetchIPAMOverview = () => request.get<IPAMResponse<IPAMOverview>>('/DC-Control/v1/ipam/overview')
|
||||
|
||||
/** ========== IP地址 API ========== */
|
||||
|
||||
/** 获取IP地址列表 */
|
||||
export const fetchIPAddressList = (params?: IPAddressListParams) =>
|
||||
request.get<IPAddressListResponse>('/DC-Control/v1/ipaddresses', { params })
|
||||
request.get<IPAMResponse<IPAddressListResponse>>('/DC-Control/v1/ipaddresses', { params })
|
||||
|
||||
/** 获取IP地址详情 */
|
||||
export const fetchIPAddressDetail = (id: number) => request.get<IPAddressItem>(`/DC-Control/v1/ipaddresses/${id}`)
|
||||
export const fetchIPAddressDetail = (id: number) => request.get<IPAMResponse<IPAddressItem>>(`/DC-Control/v1/ipaddresses/${id}`)
|
||||
|
||||
/** 创建IP地址 */
|
||||
export const createIPAddress = (data: IPAddressFormData) => request.post<IPAddressItem>('/DC-Control/v1/ipaddresses', data)
|
||||
export const createIPAddress = (data: IPAddressFormData) => request.post<IPAMResponse<IPAddressItem>>('/DC-Control/v1/ipaddresses', data)
|
||||
|
||||
/** 更新IP地址 */
|
||||
export const updateIPAddress = (id: number, data: Partial<IPAddressFormData>) =>
|
||||
request.put<{ message: string }>(`/DC-Control/v1/ipaddresses/${id}`, data)
|
||||
request.put<IPAMResponse<{ message: string }>>(`/DC-Control/v1/ipaddresses/${id}`, data)
|
||||
|
||||
/** 删除IP地址 */
|
||||
export const deleteIPAddress = (id: number) => request.delete<{ message: string }>(`/DC-Control/v1/ipaddresses/${id}`)
|
||||
export const deleteIPAddress = (id: number) => request.delete<IPAMResponse<{ message: string }>>(`/DC-Control/v1/ipaddresses/${id}`)
|
||||
|
||||
/** ========== IP分组 API ========== */
|
||||
|
||||
/** 获取IP分组列表(树形) */
|
||||
export const fetchIPGroupList = (params?: IPGroupListParams) => request.get<IPGroupListResponse>('/DC-Control/v1/ip-groups', { params })
|
||||
export const fetchIPGroupList = (params?: IPGroupListParams) =>
|
||||
request.get<IPAMResponse<IPGroupListResponse>>('/DC-Control/v1/ip-groups', { params })
|
||||
|
||||
/** 创建IP分组 */
|
||||
export const createIPGroup = (data: IPGroupFormData) => request.post<IPGroupItem>('/DC-Control/v1/ip-groups', data)
|
||||
export const createIPGroup = (data: IPGroupFormData) => request.post<IPAMResponse<IPGroupItem>>('/DC-Control/v1/ip-groups', data)
|
||||
|
||||
/** 更新IP分组 */
|
||||
export const updateIPGroup = (id: number, data: Partial<IPGroupFormData>) =>
|
||||
request.put<{ message: string }>(`/DC-Control/v1/ip-groups/${id}`, data)
|
||||
request.put<IPAMResponse<{ message: string }>>(`/DC-Control/v1/ip-groups/${id}`, data)
|
||||
|
||||
/** 删除IP分组 */
|
||||
export const deleteIPGroup = (id: number) => request.delete<{ message: string }>(`/DC-Control/v1/ip-groups/${id}`)
|
||||
export const deleteIPGroup = (id: number) => request.delete<IPAMResponse<{ message: string }>>(`/DC-Control/v1/ip-groups/${id}`)
|
||||
|
||||
/** ========== IP子网 API ========== */
|
||||
|
||||
/** 获取IP子网列表 */
|
||||
export const fetchIPSubnetList = (params?: IPSubnetListParams) => request.get<IPSubnetListResponse>('/DC-Control/v1/ip-subnets', { params })
|
||||
export const fetchIPSubnetList = (params?: IPSubnetListParams) =>
|
||||
request.get<IPAMResponse<IPSubnetListResponse>>('/DC-Control/v1/ip-subnets', { params })
|
||||
|
||||
/** 获取IP子网详情 */
|
||||
export const fetchIPSubnetDetail = (id: number) => request.get<IPSubnetItem>(`/DC-Control/v1/ip-subnets/${id}`)
|
||||
export const fetchIPSubnetDetail = (id: number) => request.get<IPAMResponse<IPSubnetItem>>(`/DC-Control/v1/ip-subnets/${id}`)
|
||||
|
||||
/** 创建IP子网 */
|
||||
export const createIPSubnet = (data: IPSubnetFormData) => request.post<IPSubnetItem>('/DC-Control/v1/ip-subnets', data)
|
||||
export const createIPSubnet = (data: IPSubnetFormData) => request.post<IPAMResponse<IPSubnetItem>>('/DC-Control/v1/ip-subnets', data)
|
||||
|
||||
/** 更新IP子网 */
|
||||
export const updateIPSubnet = (id: number, data: Partial<IPSubnetFormData>) =>
|
||||
request.put<{ message: string }>(`/DC-Control/v1/ip-subnets/${id}`, data)
|
||||
request.put<IPAMResponse<{ message: string }>>(`/DC-Control/v1/ip-subnets/${id}`, data)
|
||||
|
||||
/** 删除IP子网 */
|
||||
export const deleteIPSubnet = (id: number) => request.delete<{ message: string }>(`/DC-Control/v1/ip-subnets/${id}`)
|
||||
export const deleteIPSubnet = (id: number) => request.delete<IPAMResponse<{ message: string }>>(`/DC-Control/v1/ip-subnets/${id}`)
|
||||
|
||||
/** ========== DHCP租约 API ========== */
|
||||
|
||||
/** 获取DHCP租约列表 */
|
||||
export const fetchDHCPLeaseList = (params?: DHCPLeaseListParams) =>
|
||||
request.get<DHCPLeaseListResponse>('/DC-Control/v1/ipam/dhcp-leases', { params })
|
||||
request.get<IPAMResponse<DHCPLeaseListResponse>>('/DC-Control/v1/ipam/dhcp-leases', { params })
|
||||
|
||||
/** 创建DHCP租约 */
|
||||
export const createDHCPLease = (data: DHCPLeaseFormData) => request.post<DHCPLeaseItem>('/DC-Control/v1/ipam/dhcp-leases', data)
|
||||
export const createDHCPLease = (data: DHCPLeaseFormData) =>
|
||||
request.post<IPAMResponse<DHCPLeaseItem>>('/DC-Control/v1/ipam/dhcp-leases', data)
|
||||
|
||||
/** ========== IP冲突 API ========== */
|
||||
|
||||
/** 获取IP冲突列表 */
|
||||
export const fetchIPConflictList = (params?: IPConflictListParams) =>
|
||||
request.get<IPConflictListResponse>('/DC-Control/v1/ipam/conflicts', { params })
|
||||
request.get<IPAMResponse<IPConflictListResponse>>('/DC-Control/v1/ipam/conflicts', { params })
|
||||
|
||||
/** 创建IP冲突记录 */
|
||||
export const createIPConflict = (data: IPConflictFormData) => request.post<IPConflictItem>('/DC-Control/v1/ipam/conflicts', data)
|
||||
export const createIPConflict = (data: IPConflictFormData) =>
|
||||
request.post<IPAMResponse<IPConflictItem>>('/DC-Control/v1/ipam/conflicts', data)
|
||||
|
||||
/** ========== IP变更 API ========== */
|
||||
|
||||
/** 获取IP变更列表 */
|
||||
export const fetchIPChangeList = (params?: IPChangeListParams) =>
|
||||
request.get<IPChangeListResponse>('/DC-Control/v1/ipam/changes', { params })
|
||||
request.get<IPAMResponse<IPChangeListResponse>>('/DC-Control/v1/ipam/changes', { params })
|
||||
|
||||
/** 创建IP变更记录 */
|
||||
export const createIPChange = (data: IPChangeFormData) => request.post<IPChangeItem>('/DC-Control/v1/ipam/changes', data)
|
||||
export const createIPChange = (data: IPChangeFormData) => request.post<IPAMResponse<IPChangeItem>>('/DC-Control/v1/ipam/changes', data)
|
||||
|
||||
/** ========== IP异常 API ========== */
|
||||
|
||||
/** 获取IP异常列表 */
|
||||
export const fetchIPAnomalyList = (params?: IPAnomalyListParams) =>
|
||||
request.get<IPAnomalyListResponse>('/DC-Control/v1/ipam/anomalies', { params })
|
||||
request.get<IPAMResponse<IPAnomalyListResponse>>('/DC-Control/v1/ipam/anomalies', { params })
|
||||
|
||||
/** 创建IP异常记录 */
|
||||
export const createIPAnomaly = (data: IPAnomalyFormData) => request.post<IPAnomalyItem>('/DC-Control/v1/ipam/anomalies', data)
|
||||
export const createIPAnomaly = (data: IPAnomalyFormData) => request.post<IPAMResponse<IPAnomalyItem>>('/DC-Control/v1/ipam/anomalies', data)
|
||||
|
||||
@@ -9,7 +9,7 @@ export interface RoomDeviceItem {
|
||||
service_identity: string
|
||||
name: string
|
||||
description: string
|
||||
room_id: string
|
||||
room_id: number
|
||||
device_code?: string
|
||||
device_category: string
|
||||
type?: string
|
||||
@@ -69,7 +69,7 @@ export interface RoomDeviceCreateData {
|
||||
service_identity?: string
|
||||
name: string
|
||||
description?: string
|
||||
room_id: string
|
||||
room_id: number
|
||||
device_category: string
|
||||
agent_config?: string
|
||||
collect_method?: 'api' | 'snmp'
|
||||
@@ -97,7 +97,7 @@ export interface RoomDeviceCreateData {
|
||||
export interface RoomDeviceUpdateData {
|
||||
name?: string
|
||||
description?: string
|
||||
room_id?: string
|
||||
room_id?: number
|
||||
device_category?: string
|
||||
agent_config?: string
|
||||
collect_method?: 'api' | 'snmp'
|
||||
|
||||
@@ -67,7 +67,7 @@ export interface StorageListParams {
|
||||
|
||||
/** 创建存储设备请求参数 */
|
||||
export interface StorageCreateData {
|
||||
service_identity: string
|
||||
service_identity?: string
|
||||
name: string
|
||||
category?: string
|
||||
type: string
|
||||
|
||||
@@ -15,6 +15,7 @@ export interface LoginData {
|
||||
/** 用户信息 */
|
||||
export interface UserItem {
|
||||
id?: number
|
||||
user_id?: number
|
||||
account?: string
|
||||
password?: string
|
||||
confirmPassword?: string
|
||||
|
||||
Reference in New Issue
Block a user