feat
This commit is contained in:
50
src/api/ops/alertLevel.ts
Normal file
50
src/api/ops/alertLevel.ts
Normal file
@@ -0,0 +1,50 @@
|
||||
import { request } from "@/api/request";
|
||||
|
||||
/** 获取告警级别列表(分页) */
|
||||
export const fetchAlertLevelList = (data?: {
|
||||
page?: number;
|
||||
page_size?: number;
|
||||
keyword?: string;
|
||||
enabled?: string;
|
||||
}) => {
|
||||
return request.get("/Alert/v1/severity/list", data || {});
|
||||
};
|
||||
|
||||
/** 获取告警级别详情 */
|
||||
export const fetchAlertLevelDetail = (id: number) => {
|
||||
return request.get(`/Alert/v1/severity/get/${id}`);
|
||||
};
|
||||
|
||||
/** 创建告警级别 */
|
||||
export const createAlertLevel = (data: {
|
||||
name: string;
|
||||
code: string;
|
||||
description?: string;
|
||||
color: string;
|
||||
icon?: string;
|
||||
priority?: number;
|
||||
enabled?: boolean;
|
||||
config?: string;
|
||||
}) => {
|
||||
return request.post("/Alert/v1/severity/create", data);
|
||||
};
|
||||
|
||||
/** 更新告警级别 */
|
||||
export const updateAlertLevel = (data: {
|
||||
id: number;
|
||||
name?: string;
|
||||
code?: string;
|
||||
description?: string;
|
||||
color?: string;
|
||||
icon?: string;
|
||||
priority?: number;
|
||||
enabled?: boolean;
|
||||
config?: string;
|
||||
}) => {
|
||||
return request.post("/Alert/v1/severity/update", data);
|
||||
};
|
||||
|
||||
/** 删除告警级别 */
|
||||
export const deleteAlertLevel = (id: number) => {
|
||||
return request.delete(`/Alert/v1/severity/delete/${id}`);
|
||||
};
|
||||
58
src/api/ops/noticeChannel.ts
Normal file
58
src/api/ops/noticeChannel.ts
Normal file
@@ -0,0 +1,58 @@
|
||||
import { request } from "@/api/request";
|
||||
|
||||
/** 获取通知渠道列表(分页) */
|
||||
export const fetchNoticeChannelList = (data?: {
|
||||
page?: number;
|
||||
page_size?: number;
|
||||
keyword?: string;
|
||||
type?: string;
|
||||
}) => {
|
||||
return request.get("/Alert/v1/channel/list", { params: data || {} });
|
||||
};
|
||||
|
||||
/** 获取通知渠道详情 */
|
||||
export const fetchNoticeChannelDetail = (id: number) => {
|
||||
return request.get(`/Alert/v1/channel/get/${id}`);
|
||||
};
|
||||
|
||||
/** 创建通知渠道 */
|
||||
export const createNoticeChannel = (data: {
|
||||
name: string;
|
||||
type: string;
|
||||
config: string;
|
||||
message_template?: string;
|
||||
rate_limit?: number;
|
||||
rate_limit_window?: number;
|
||||
severity_filter?: string;
|
||||
quiet_hours?: string;
|
||||
retry_times?: number;
|
||||
retry_interval?: number;
|
||||
enabled?: boolean;
|
||||
description?: string;
|
||||
}) => {
|
||||
return request.post("/Alert/v1/channel/create", data);
|
||||
};
|
||||
|
||||
/** 更新通知渠道 */
|
||||
export const updateNoticeChannel = (data: {
|
||||
id: number;
|
||||
name?: string;
|
||||
type?: string;
|
||||
config?: string;
|
||||
message_template?: string;
|
||||
rate_limit?: number;
|
||||
rate_limit_window?: number;
|
||||
severity_filter?: string;
|
||||
quiet_hours?: string;
|
||||
retry_times?: number;
|
||||
retry_interval?: number;
|
||||
enabled?: boolean;
|
||||
description?: string;
|
||||
}) => {
|
||||
return request.post("/Alert/v1/channel/update", data);
|
||||
};
|
||||
|
||||
/** 删除通知渠道 */
|
||||
export const deleteNoticeChannel = (id: number) => {
|
||||
return request.delete(`/Alert/v1/channel/delete/${id}`);
|
||||
};
|
||||
51
src/api/ops/rack.ts
Normal file
51
src/api/ops/rack.ts
Normal file
@@ -0,0 +1,51 @@
|
||||
import { request } from "@/api/request";
|
||||
|
||||
/** 获取机柜列表(分页) */
|
||||
export const fetchRackList = (data?: {
|
||||
page?: number;
|
||||
page_size?: number;
|
||||
keyword?: string;
|
||||
datacenter_id?: number;
|
||||
floor_id?: number;
|
||||
rack_type?: string;
|
||||
status?: string;
|
||||
sort?: string;
|
||||
order?: string;
|
||||
}) => {
|
||||
return request.post("/Assets/v1/rack/list", data || {});
|
||||
};
|
||||
|
||||
/** 获取机柜详情 */
|
||||
export const fetchRackDetail = (id: number) => {
|
||||
return request.get(`/Assets/v1/rack/detail/${id}`);
|
||||
};
|
||||
|
||||
/** 创建机柜 */
|
||||
export const createRack = (data: any) => {
|
||||
return request.post("/Assets/v1/rack/create", data);
|
||||
};
|
||||
|
||||
/** 更新机柜 */
|
||||
export const updateRack = (data: any) => {
|
||||
return request.put("/Assets/v1/rack/update", data);
|
||||
};
|
||||
|
||||
/** 删除机柜 */
|
||||
export const deleteRack = (id: number) => {
|
||||
return request.delete(`/Assets/v1/rack/delete/${id}`);
|
||||
};
|
||||
|
||||
/** 获取供应商列表(用于下拉选择) */
|
||||
export const fetchSupplierList = () => {
|
||||
return request.get("/Assets/v1/supplier/all");
|
||||
};
|
||||
|
||||
/** 获取数据中心列表(用于下拉选择) */
|
||||
export const fetchDatacenterList = () => {
|
||||
return request.get("/Assets/v1/datacenter/all");
|
||||
};
|
||||
|
||||
/** 获取楼层列表(用于下拉选择) */
|
||||
export const fetchFloorListForSelect = (datacenterId?: number) => {
|
||||
return request.get("/Assets/v1/floor/all", { params: { datacenter_id: datacenterId } });
|
||||
};
|
||||
64
src/api/ops/unit.ts
Normal file
64
src/api/ops/unit.ts
Normal file
@@ -0,0 +1,64 @@
|
||||
import { request } from "@/api/request";
|
||||
|
||||
/** 获取机柜U位状态 */
|
||||
export const fetchRackUnits = (rackId: number) => {
|
||||
return request.get(`/Assets/v1/unit/rack/${rackId}`);
|
||||
};
|
||||
|
||||
/** 获取U位列表(别名) */
|
||||
export const fetchUnitList = fetchRackUnits;
|
||||
|
||||
/** 分配U位 */
|
||||
export const allocateUnit = (data: {
|
||||
rack_id: number;
|
||||
start_unit: number;
|
||||
occupied_units: number;
|
||||
asset_id?: number;
|
||||
asset_code?: string;
|
||||
asset_name: string;
|
||||
asset_type: string;
|
||||
power_consumption?: number;
|
||||
description?: string;
|
||||
}) => {
|
||||
return request.post("/Assets/v1/unit/allocate", data);
|
||||
};
|
||||
|
||||
/** 释放U位 */
|
||||
export const releaseUnit = (data: {
|
||||
rack_id: number;
|
||||
start_unit: number;
|
||||
end_unit: number;
|
||||
}) => {
|
||||
return request.post("/Assets/v1/unit/release", data);
|
||||
};
|
||||
|
||||
/** 预留U位 */
|
||||
export const reserveUnit = (data: {
|
||||
rack_id: number;
|
||||
start_unit: number;
|
||||
occupied_units: number;
|
||||
reserved_for: string;
|
||||
reserved_until: string;
|
||||
description?: string;
|
||||
}) => {
|
||||
return request.post("/Assets/v1/unit/reserve", data);
|
||||
};
|
||||
|
||||
/** 取消预留 */
|
||||
export const cancelReservation = (data: {
|
||||
rack_id: number;
|
||||
start_unit: number;
|
||||
end_unit: number;
|
||||
}) => {
|
||||
return request.post("/Assets/v1/unit/cancel_reservation", data);
|
||||
};
|
||||
|
||||
/** 更新U位状态 */
|
||||
export const updateUnitStatus = (data: {
|
||||
rack_id: number;
|
||||
start_unit: number;
|
||||
end_unit: number;
|
||||
status: "available" | "disabled";
|
||||
}) => {
|
||||
return request.put("/Assets/v1/unit/status", data);
|
||||
};
|
||||
Reference in New Issue
Block a user