dr_study_idl.proto 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. syntax = "proto3";
  2. option go_package = "dr_study_pb/";
  3. package dr.study;
  4. import "google/protobuf/empty.proto";
  5. import "google/protobuf/timestamp.proto";
  6. import "google/protobuf/struct.proto";
  7. message IDRequest {
  8. optional uint32 id = 1;
  9. optional string instance_id = 2;
  10. }
  11. service Basic {
  12. rpc SoftwareInfo (google.protobuf.Empty) returns (SoftwareInfoReply) {}
  13. }
  14. message SoftwareInfoReply {
  15. string module = 1;
  16. string desc = 2;
  17. string build = 3;
  18. string version = 4;
  19. }
  20. service Study {
  21. rpc CreateStudy (StudyRequest) returns (StudyReply) {}
  22. rpc GetStudy (IDRequest) returns (StudyReply) {}
  23. rpc CreateImage (CreateImageRequest) returns (CreateImageReply) {}
  24. rpc CopyImage (IDRequest) returns (CreateImageReply) {}
  25. rpc DeleteImage (IDRequest) returns (google.protobuf.Empty) {}
  26. rpc SortImage (SortRequest) returns (google.protobuf.Empty) {}
  27. }
  28. message ViewRequest {
  29. string view_id = 1;
  30. string procedure_id = 2;
  31. }
  32. message StudyRequest {
  33. string accession_number = 1;
  34. string patient_id = 2;
  35. string patient_name = 3;
  36. string patient_size = 4;
  37. string patient_age = 5;
  38. google.protobuf.Timestamp patient_dob = 6;
  39. string patient_sex = 7;
  40. string sex_neutered = 8;
  41. string pregnancy_status = 9; //妊娠状态
  42. string patient_type = 10;
  43. string ref_physician = 11; //兽医师
  44. string operator_id = 12;
  45. string modality = 13;
  46. int32 weight = 14;
  47. int32 thickness = 15;
  48. int32 length = 16;
  49. string study_type = 17;
  50. string chip_number = 18;
  51. string variety = 19; //品种描述
  52. string comment = 20; //备注
  53. repeated ViewRequest views = 21;
  54. }
  55. message CreateImageRequest {
  56. string study_id = 1;
  57. repeated ViewRequest views = 2;
  58. }
  59. message Image {
  60. string sop_instance_id = 1;
  61. string series_instance_uid = 2;
  62. string study_instance_uid = 3;
  63. string secondary_sop_uid = 4;
  64. string study_id = 5;
  65. string view_id = 6;
  66. string view_description = 7;
  67. string image_status = 8;
  68. string image_file_path = 9;
  69. string acquisition_mode = 10;
  70. google.protobuf.Struct acquisition_context = 11;
  71. google.protobuf.Struct img_proc_context = 12;
  72. int32 sort = 13;
  73. string product = 14;
  74. bool is_pre_install = 15;
  75. }
  76. message Series {
  77. string series_instance_uid = 1;
  78. string study_instance_uid = 2;
  79. string study_id = 3;
  80. string procedure_id = 4;
  81. string body_part = 5;
  82. google.protobuf.Timestamp performed_datetime = 6;
  83. string performed_protocol_code_meaning = 7;
  84. string performed_protocol_code_value = 8;
  85. int32 sort = 9;
  86. string product = 10;
  87. bool is_pre_install = 11;
  88. repeated Image images = 12;
  89. }
  90. message StudyReply {
  91. string study_instance_uid = 1;
  92. string study_id = 2;
  93. string public_study_id = 3;
  94. string specific_character_set = 4;
  95. string accession_number = 5;
  96. string ref_physician = 6;
  97. string patient_id = 7;
  98. string patient_name = 8;
  99. string patient_size = 9;
  100. string other_patient_ids = 10;
  101. string other_patient_names = 11;
  102. string owner_name = 12;
  103. string patient_age = 13;
  104. google.protobuf.Timestamp patient_dob = 14;
  105. string patient_sex = 15;
  106. string patient_state = 16;
  107. google.protobuf.Timestamp admitting_time = 17;
  108. string priority = 18;
  109. string reg_source = 19;
  110. string study_status = 20;
  111. string study_description = 21;
  112. google.protobuf.Timestamp study_start_datetime = 22;
  113. google.protobuf.Timestamp study_end_datetime = 23;
  114. google.protobuf.Timestamp scheduled_procedure_step_start_date = 24;
  115. string performed_physician = 25;
  116. string study_lock = 26;
  117. string folder_path = 27;
  118. string operator_name = 28;
  119. string modality = 29;
  120. int32 weight = 30;
  121. int32 thickness = 31;
  122. int32 length = 32;
  123. string patient_type = 33;
  124. string study_type = 34;
  125. string mwl = 35;
  126. bool is_exported = 36;
  127. bool is_edited = 37;
  128. bool is_appended = 38;
  129. string department = 39;
  130. bool mapped_status = 40;
  131. bool qc_result = 41;
  132. string comment = 42;
  133. int32 sort = 43;
  134. string product = 44;
  135. repeated Series series = 45;
  136. }
  137. message CreateImageReply {
  138. repeated Series series = 1;
  139. }
  140. message SortRequest {
  141. repeated string sop_instance_id = 1;
  142. }