rack_server.ts 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. import axios from 'axios';
  2. import { RackServer } from "../../share/monitorTypes.ts";
  3. // 机柜服务器API接口定义
  4. export const RackServerAPI = {
  5. // 获取机柜服务器列表
  6. getRackServerList: async (params?: {
  7. page?: number,
  8. limit?: number,
  9. rack_id?: number,
  10. asset_id?: number,
  11. server_type?: string
  12. }) => {
  13. try {
  14. const response = await axios.get(`/rack-servers`, { params });
  15. return response.data;
  16. } catch (error) {
  17. throw error;
  18. }
  19. },
  20. // 获取单个机柜服务器信息
  21. getRackServer: async (id: number) => {
  22. try {
  23. const response = await axios.get(`/rack-servers/${id}`);
  24. return response.data;
  25. } catch (error) {
  26. throw error;
  27. }
  28. },
  29. // 创建机柜服务器
  30. createRackServer: async (data: Partial<RackServer>) => {
  31. try {
  32. const response = await axios.post(`/rack-servers`, data);
  33. return response.data;
  34. } catch (error) {
  35. throw error;
  36. }
  37. },
  38. // 更新机柜服务器
  39. updateRackServer: async (id: number, data: Partial<RackServer>) => {
  40. try {
  41. const response = await axios.put(`/rack-servers/${id}`, data);
  42. return response.data;
  43. } catch (error) {
  44. throw error;
  45. }
  46. },
  47. // 删除机柜服务器
  48. deleteRackServer: async (id: number) => {
  49. try {
  50. const response = await axios.delete(`/rack-servers/${id}`);
  51. return response.data;
  52. } catch (error) {
  53. throw error;
  54. }
  55. }
  56. };