agent-module-http.service.ts 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. import { Injectable } from '@nestjs/common'
  2. import { ServiceResponse } from '@/response/response.interface'
  3. import { HttpClientService } from '@/shared/http-client/http-client.service'
  4. @Injectable()
  5. export class AgentModuleHttpService {
  6. private readonly baseUrl = 'http://192.168.206.189:8083/api'
  7. constructor(private readonly httpClientService: HttpClientService) {}
  8. private async makeRequest<T>(
  9. endpoint: string,
  10. params?: Record<string, any>
  11. ): Promise<ServiceResponse<T>> {
  12. const url = `${this.baseUrl}/${endpoint}`
  13. return this.httpClientService.get<T>(url, params)
  14. }
  15. async makeRequestPost<T>(
  16. endpoint: string,
  17. params?: Record<string, any>
  18. ): Promise<ServiceResponse<T>> {
  19. const url = `${this.baseUrl}/${endpoint}`
  20. return this.httpClientService.post<T>(url, params)
  21. }
  22. async getModuleList(
  23. page: number,
  24. page_size: number
  25. ): Promise<ServiceResponse<ModuleConfigurationType[]>> {
  26. return this.makeRequest<ModuleConfigurationType[]>('getModuleList', {
  27. page,
  28. page_size
  29. })
  30. }
  31. async getModuleConfiguration(
  32. module_id: number
  33. ): Promise<ServiceResponse<ModuleConfigurationType>> {
  34. return this.makeRequest<ModuleConfigurationType>('getModuleConfiguration', {
  35. module_id
  36. })
  37. }
  38. async saveModuleConfiguration(
  39. module_id: number,
  40. name: string,
  41. display_name: string,
  42. default_agent_type: number,
  43. default_agent_id: number
  44. ): Promise<ServiceResponse<any>> {
  45. return this.makeRequestPost<any>('saveModuleConfiguration', {
  46. module_id,
  47. name,
  48. display_name,
  49. default_agent_type,
  50. default_agent_id
  51. })
  52. }
  53. async getModuleAgentTypes(): Promise<ServiceResponse<any>> {
  54. return this.makeRequest<any>('getModuleAgentTypes')
  55. }
  56. }