mapToTask.ts 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. import { RegisterWorkResponseData } from '../../API/patient/workActions';
  2. import { Task } from '../work';
  3. import { Series } from '../series';
  4. import { XImage } from '../xImage';
  5. import { dview } from '../dview';
  6. const mapToTask = (data: RegisterWorkResponseData): Task => {
  7. console.log(`mapToTask--data:${JSON.stringify(data)}`);
  8. return {
  9. StudyInstanceUID: data.study_instance_uid,
  10. StudyID: data.study_id,
  11. SpecificCharacterSet: data.specific_character_set,
  12. AccessionNumber: data.accession_number,
  13. PatientID: data.patient_id,
  14. PatientName: data.patient_name,
  15. DisplayPatientName: data.patient_name,
  16. PatientSize: data.patient_size,
  17. PatientAge: data.patient_age,
  18. PatientSex: data.patient_sex,
  19. AdmittingTime: data.admitting_time || '',
  20. RegSource: data.reg_source,
  21. StudyStatus: data.study_status,
  22. RequestedProcedureID: '',
  23. PerformedProtocolCodeValue: '',
  24. PerformedProtocolCodeMeaning: '',
  25. PerformedProcedureStepID: '',
  26. StudyDescription: data.study_description,
  27. StudyStartDatetime: data.study_start_datetime || '',
  28. ScheduledProcedureStepStartDate:
  29. data.scheduled_procedure_step_start_date || '',
  30. StudyLock: data.study_lock,
  31. OperatorID: data.operator_name,
  32. Modality: data.modality,
  33. Views: data.series.flatMap<dview>(
  34. (series: Series) =>
  35. series.images.map<dview>(
  36. (image: XImage) =>
  37. ({
  38. view_id: image.view_id,
  39. series_instance_uid: series.series_instance_uid,
  40. study_instance_uid: data.study_instance_uid,
  41. study_id: data.study_id,
  42. procedure_id: series.procedure_id,
  43. view_description: image.view_description,
  44. view_type: '',
  45. PrimarySopUID: image.sop_instance_uid,
  46. expose_status: image.expose_status,
  47. judged_status:image.judged_status,
  48. image_file_path: image.image_file_path,
  49. image_file: image.image_file_path, // Assuming image_file is the same as image_file
  50. thumbnail_file: image.thumbnail_file || '', // Assuming thumbnail_file is optional
  51. }) satisfies dview
  52. ) as dview[]
  53. ),
  54. Thickness: data.thickness,
  55. PatientType: data.patient_type,
  56. StudyType: data.study_type,
  57. QRCode: '',
  58. IsExported: data.is_exported,
  59. IsEdited: data.is_edited,
  60. WorkRef: '',
  61. IsAppended: data.is_appended,
  62. CreationTime: '',
  63. MappedStatus: data.mapped_status,
  64. IsDelete: false,
  65. };
  66. };
  67. export default mapToTask;