dr_protocol_idl.proto 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202
  1. syntax = "proto3";
  2. option go_package = "dr_protocol_pb/";
  3. package dr.protocol;
  4. import "google/protobuf/any.proto";
  5. import "google/protobuf/struct.proto";
  6. message EmptyRequest {}
  7. message IDRequest {
  8. optional uint32 id = 1;
  9. optional string instance_id = 2;
  10. }
  11. message OptionRequest {
  12. string group = 1;
  13. string flag = 2;
  14. }
  15. message Option {
  16. string text = 1;
  17. google.protobuf.Any value = 2;
  18. }
  19. message OptionReply {
  20. repeated Option option = 1;
  21. }
  22. service Basic {
  23. rpc SoftwareInfo (EmptyRequest) returns (SoftwareInfoReply) {}
  24. rpc GetOptions (OptionRequest) returns (OptionReply) {}
  25. }
  26. message SoftwareInfoReply {
  27. string module = 1;
  28. string desc = 2;
  29. string build = 3;
  30. string version = 4;
  31. }
  32. service Protocol {
  33. rpc GetPatientTypeList (PatientTypeRequest) returns (PatientTypeReply) {}
  34. rpc GetBodyPartList (BodyPartRequest) returns (BodyPartReply) {}
  35. rpc GetProcedureList (ProcedureRequest) returns (ProcedureReply) {}
  36. rpc GetProcedure (IDRequest) returns (Procedure) {}
  37. rpc GetViewList (ViewRequest) returns (ViewReply) {}
  38. rpc GetView (IDRequest) returns (View) {}
  39. }
  40. message PatientTypeRequest {
  41. optional bool is_enabled = 1;
  42. optional bool is_pre_install = 2;
  43. }
  44. message PatientType {
  45. uint64 id = 1;
  46. string patient_type_id = 2;
  47. string patient_type_name = 3;
  48. string patient_type_name_local = 4;
  49. string patient_type_description = 5;
  50. int32 sort = 6;
  51. bool is_enabled = 7;
  52. string product = 8;
  53. bool is_pre_install = 9;
  54. }
  55. message PatientTypeReply {
  56. repeated PatientType patient_type_list = 1;
  57. }
  58. message BodyPartRequest {
  59. optional string patient_type = 1;
  60. optional string modality = 2;
  61. optional bool is_enabled = 3;
  62. optional bool is_pre_install = 4;
  63. }
  64. message BodyPart {
  65. uint64 id = 1;
  66. string body_part_id = 2;
  67. string body_part_name = 3;
  68. string body_part_name_local = 4;
  69. string body_part_description = 5;
  70. string patient_type = 6;
  71. string modality = 7;
  72. int32 sort = 8;
  73. bool is_enabled = 9;
  74. string product = 10;
  75. bool is_pre_install = 11;
  76. }
  77. message BodyPartReply {
  78. repeated BodyPart body_part_list = 1;
  79. }
  80. message ProcedureRequest {
  81. optional string patient_type = 1;
  82. optional string body_part_id = 2;
  83. optional string modality = 3;
  84. optional bool is_enabled = 4;
  85. optional bool is_pre_install = 5;
  86. }
  87. message Procedure {
  88. uint64 id = 1;
  89. string procedure_id = 2;
  90. string procedure_code = 3;
  91. string procedure_name = 4;
  92. string procedure_name_local = 5;
  93. string procedure_other_name = 6;
  94. string procedure_description = 7;
  95. string procedure_description_local = 8;
  96. string patient_type = 9;
  97. string body_part_id = 10;
  98. string procedure_type = 11;
  99. bool fast_search = 12;
  100. string protocol_laterality = 13;
  101. string procedure_category = 14;
  102. string modality = 15;
  103. int32 sort = 16;
  104. bool is_enabled = 17;
  105. string product = 18;
  106. bool is_pre_install = 19;
  107. }
  108. message ProcedureReply {
  109. repeated Procedure procedure_list = 1;
  110. }
  111. message ViewRequest {
  112. optional string patient_type = 1;
  113. optional string body_part_id = 2;
  114. optional string procedure_id = 3;
  115. optional string modality = 4;
  116. optional bool is_enabled = 5;
  117. optional bool is_pre_install = 6;
  118. }
  119. message View {
  120. string internal_id = 1;
  121. string view_id = 2;
  122. string view_name = 3;
  123. string view_name_local = 4;
  124. string view_other_name = 5;
  125. string view_description = 6;
  126. string view_position = 7;
  127. string application = 8;
  128. string anatomic_region = 9;
  129. string patient_type = 10;
  130. string body_part_id = 11;
  131. string view_icon_name = 12;
  132. string view_big_icon_name = 13;
  133. string view_coach_name = 14;
  134. string modality = 15;
  135. int32 work_station_id = 16;
  136. string apr_id = 17;
  137. string img_proc_id = 18;
  138. google.protobuf.Struct config_object = 19;
  139. int32 sort = 20;
  140. bool is_enabled = 21;
  141. string product = 22;
  142. bool is_pre_install = 23;
  143. }
  144. message ViewReply {
  145. repeated View view_list = 1;
  146. }
  147. service Apr {
  148. rpc GetApr (AprRequest) returns (AprReply) {}
  149. }
  150. message AprRequest {
  151. optional string view_id = 1;
  152. optional string apr_id = 2;
  153. optional bool is_enabled = 3;
  154. }
  155. message AprSub {
  156. int32 work_station_id = 1;
  157. string patient_size = 2;
  158. google.protobuf.Struct config_object = 3;
  159. }
  160. message AprReply {
  161. string apr_id = 1;
  162. string apr_name = 2;
  163. string apr_description = 3;
  164. string patient_type = 4;
  165. string body_part_id = 5;
  166. string view_position = 6;
  167. string category = 7;
  168. string modality = 8;
  169. repeated AprSub sub = 9;
  170. int32 sort = 10;
  171. bool is_enabled = 11;
  172. string product = 12;
  173. bool is_pre_install = 13;
  174. }