bodyPart.ts 949 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import axiosInstance from './interceptor';
  2. export interface BodyPartParams {
  3. patient_type?: string;
  4. modality?: string;
  5. is_enabled?: string;
  6. }
  7. export interface BodyPart {
  8. id: string;
  9. body_part_id: string;
  10. body_part_name: string;
  11. body_part_local: string;
  12. body_part_description: string;
  13. patient_type: string;
  14. category: string;
  15. sort: number;
  16. is_enabled: boolean;
  17. product: string;
  18. is_pre_install: boolean;
  19. }
  20. export async function fetchBodyParts(
  21. params: BodyPartParams
  22. ): Promise<BodyPart[]> {
  23. const response = await axiosInstance.get('/auth/protocol/body_part', {
  24. params,
  25. });
  26. // 兼容接口返回结构
  27. if (
  28. response.data &&
  29. response.data.code === '0x000000' &&
  30. response.data.data &&
  31. Array.isArray(response.data.data.body_part_list)
  32. ) {
  33. return response.data.data.body_part_list;
  34. }
  35. // 兼容原有结构
  36. return Array.isArray(response.data) ? response.data : response.data.data;
  37. }