liveConsultation.dart 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357
  1. import 'dart:core';
  2. import 'package:fis_jsonrpc/client_base.dart';
  3. import 'package:fis_common/json_convert.dart';
  4. import 'liveConsultation.m.dart';
  5. import 'notification.m.dart';
  6. class LiveConsultationService extends JsonRpcClientBase {
  7. LiveConsultationService(
  8. String host, {
  9. String serviceName = "ILiveConsultationService",
  10. Map<String, String>? headers,
  11. int? timeout,
  12. }) : super(
  13. host,
  14. serviceName,
  15. headers: headers,
  16. timeout: timeout,
  17. ) {
  18. /// 注册响应实体反序列化处理器
  19. FJsonConvert.setDecoder((map) => OrganizationBaseDTO.fromJson(map));
  20. FJsonConvert.setDecoder((map) => OrganizationExpertDTO.fromJson(map));
  21. FJsonConvert.setDecoder((map) => PageResult<ConsultationPageDTO>.fromJson(map));
  22. FJsonConvert.setDecoder((map) => ConsultationPageDTO.fromJson(map));
  23. FJsonConvert.setDecoder((map) => ExportConsultationDataResult.fromJson(map));
  24. FJsonConvert.setDecoder((map) => ConsultationDetailDTO.fromJson(map));
  25. FJsonConvert.setDecoder((map) => ConsultationAssistantDTO.fromJson(map));
  26. FJsonConvert.setDecoder((map) => ConsultationAssistantDoctorDTO.fromJson(map));
  27. FJsonConvert.setDecoder((map) => PageResult<ClientPatientInfoBaseDTO>.fromJson(map));
  28. FJsonConvert.setDecoder((map) => ClientPatientInfoBaseDTO.fromJson(map));
  29. FJsonConvert.setDecoder((map) => InitiateLiveConsultationResult.fromJson(map));
  30. FJsonConvert.setDecoder((map) => InviteInLiveConsultationResult.fromJson(map));
  31. FJsonConvert.setDecoder((map) => CancelInvitingInLiveConsultationResult.fromJson(map));
  32. FJsonConvert.setDecoder((map) => RejectLiveConsultationResult.fromJson(map));
  33. FJsonConvert.setDecoder((map) => JoinLiveConsultationResult.fromJson(map));
  34. FJsonConvert.setDecoder((map) => CancelLiveConsultationResult.fromJson(map));
  35. FJsonConvert.setDecoder((map) => AcceptLiveConsultationResult.fromJson(map));
  36. FJsonConvert.setDecoder((map) => LeaveLiveConsultationResult.fromJson(map));
  37. FJsonConvert.setDecoder((map) => MuteLiveConsultationResult.fromJson(map));
  38. FJsonConvert.setDecoder((map) => SwitchLiveConsultationVideoResult.fromJson(map));
  39. FJsonConvert.setDecoder((map) => LiveConsultationHeartRateResult.fromJson(map));
  40. FJsonConvert.setDecoder((map) => FollowUpVisitDTO.fromJson(map));
  41. FJsonConvert.setDecoder((map) => ConsultationEvaluateDTO.fromJson(map));
  42. FJsonConvert.setDecoder((map) => ConsultationImagesDTO.fromJson(map));
  43. FJsonConvert.setDecoder((map) => UserExtendDTO.fromJson(map));
  44. FJsonConvert.setDecoder((map) => ChangeConsultationResult.fromJson(map));
  45. FJsonConvert.setDecoder((map) => LiveConsultationMember.fromJson(map));
  46. }
  47. Future<List<OrganizationBaseDTO>> findParentOrganizationsAsync(FindHigherOrganizationsRequest request) async {
  48. var rpcRst = await call("FindParentOrganizationsAsync", request);
  49. var result = (rpcRst as List).map((e)=>OrganizationBaseDTO.fromJson(e as Map<String, dynamic>)).toList();
  50. return result;
  51. }
  52. Future<List<OrganizationBaseDTO>> findGrassRootsOrganizationsAsync(FindGrassRootsOrganizationsRequest request) async {
  53. var rpcRst = await call("FindGrassRootsOrganizationsAsync", request);
  54. var result = (rpcRst as List).map((e)=>OrganizationBaseDTO.fromJson(e as Map<String, dynamic>)).toList();
  55. return result;
  56. }
  57. Future<List<OrganizationExpertDTO>> findOrganizationExpertsAsync(FindOrganizationExpertsRequest request) async {
  58. var rpcRst = await call("FindOrganizationExpertsAsync", request);
  59. var result = (rpcRst as List).map((e)=>OrganizationExpertDTO.fromJson(e as Map<String, dynamic>)).toList();
  60. return result;
  61. }
  62. Future<String> applyConsultationAsync(ApplyConsultationRequest request) async {
  63. var rpcRst = await call("ApplyConsultationAsync", request);
  64. return rpcRst;
  65. }
  66. Future<bool> updateConsultationAsync(UpdateConsultationRequest request) async {
  67. var rpcRst = await call("UpdateConsultationAsync", request);
  68. return rpcRst;
  69. }
  70. Future<bool> improveConsultationInfoAsync(ImproveConsultationInfoRequest request) async {
  71. var rpcRst = await call("ImproveConsultationInfoAsync", request);
  72. return rpcRst;
  73. }
  74. Future<List<OrganizationExpertDTO>> findAssistantExpertsAsync(FindAssistantExpertsRequest request) async {
  75. var rpcRst = await call("FindAssistantExpertsAsync", request);
  76. var result = (rpcRst as List).map((e)=>OrganizationExpertDTO.fromJson(e as Map<String, dynamic>)).toList();
  77. return result;
  78. }
  79. Future<PageResult<ConsultationPageDTO>> findConsultationsByPageAsync(FindConsultationByPageRequest request) async {
  80. var rpcRst = await call("FindConsultationsByPageAsync", request);
  81. var result = PageResult<ConsultationPageDTO>.fromJson(rpcRst as Map<String, dynamic>);
  82. return result;
  83. }
  84. Future<ExportConsultationDataResult> exportConsultationsAsync(ExportConsultationsRequest request) async {
  85. var rpcRst = await call("ExportConsultationsAsync", request);
  86. var result = ExportConsultationDataResult.fromJson(rpcRst as Map<String, dynamic>);
  87. return result;
  88. }
  89. Future<ConsultationDetailDTO> findConsultationDetailAsync(FindConsultationDetailRequest request) async {
  90. var rpcRst = await call("FindConsultationDetailAsync", request);
  91. var result = ConsultationDetailDTO.fromJson(rpcRst as Map<String, dynamic>);
  92. return result;
  93. }
  94. Future<bool> approvalConsultationAsync(ApprovalConsultationRequest request) async {
  95. var rpcRst = await call("ApprovalConsultationAsync", request);
  96. return rpcRst;
  97. }
  98. Future<bool> rejectApplyConsultationAsync(RejectApplyConsultationRequest request) async {
  99. var rpcRst = await call("RejectApplyConsultationAsync", request);
  100. return rpcRst;
  101. }
  102. Future<bool> revokeConsultationAsync(RevokeConsultationRequest request) async {
  103. var rpcRst = await call("RevokeConsultationAsync", request);
  104. return rpcRst;
  105. }
  106. Future<bool> deleteConsultationAsync(DeleteConsultationRequest request) async {
  107. var rpcRst = await call("DeleteConsultationAsync", request);
  108. return rpcRst;
  109. }
  110. Future<bool> updateConsultationFilesInfoAsync(UpdateConsultationFilesInfoRequest request) async {
  111. var rpcRst = await call("UpdateConsultationFilesInfoAsync", request);
  112. return rpcRst;
  113. }
  114. Future<List<ConsultationAssistantDTO>> findOrganizationAssistantsAsync(FindOrganizationAssistantsRequest request) async {
  115. var rpcRst = await call("FindOrganizationAssistantsAsync", request);
  116. var result = (rpcRst as List).map((e)=>ConsultationAssistantDTO.fromJson(e as Map<String, dynamic>)).toList();
  117. return result;
  118. }
  119. Future<List<ConsultationAssistantDoctorDTO>> findOrganizationAssistantDoctorsAsync(FindOrganizationAssistantDoctorsRequest request) async {
  120. var rpcRst = await call("FindOrganizationAssistantDoctorsAsync", request);
  121. var result = (rpcRst as List).map((e)=>ConsultationAssistantDoctorDTO.fromJson(e as Map<String, dynamic>)).toList();
  122. return result;
  123. }
  124. Future<bool> updateMyOrganizationAssistantAsync(UpdateMyOrganizationAssistantRequest request) async {
  125. var rpcRst = await call("UpdateMyOrganizationAssistantAsync", request);
  126. return rpcRst;
  127. }
  128. Future<PageResult<ClientPatientInfoBaseDTO>> findConsultationPatientAsync(FindConsultationPatientPageRequest request) async {
  129. var rpcRst = await call("FindConsultationPatientAsync", request);
  130. var result = PageResult<ClientPatientInfoBaseDTO>.fromJson(rpcRst as Map<String, dynamic>);
  131. return result;
  132. }
  133. Future<List<ConsultationPageDTO>> findCanSwitchConsultationsAsync(FindCanSwitchConsultationsRequest request) async {
  134. var rpcRst = await call("FindCanSwitchConsultationsAsync", request);
  135. var result = (rpcRst as List).map((e)=>ConsultationPageDTO.fromJson(e as Map<String, dynamic>)).toList();
  136. return result;
  137. }
  138. Future<InitiateLiveConsultationResult> initiateLiveConsultationAsync(InitiateLiveConsultationRequest request) async {
  139. var rpcRst = await call("InitiateLiveConsultationAsync", request);
  140. var result = InitiateLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  141. return result;
  142. }
  143. Future<InviteInLiveConsultationResult> inviteInLiveConsultationAsync(InviteInLiveConsultationRequest request) async {
  144. var rpcRst = await call("InviteInLiveConsultationAsync", request);
  145. var result = InviteInLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  146. return result;
  147. }
  148. Future<CancelInvitingInLiveConsultationResult> cancelInvitingInLiveConsultationAsync(CancelInvitingInLiveConsultationRequest request) async {
  149. var rpcRst = await call("CancelInvitingInLiveConsultationAsync", request);
  150. var result = CancelInvitingInLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  151. return result;
  152. }
  153. Future<RejectLiveConsultationResult> rejectInviteLiveConsultationAsync(RejectLiveConsultationRequest request) async {
  154. var rpcRst = await call("RejectInviteLiveConsultationAsync", request);
  155. var result = RejectLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  156. return result;
  157. }
  158. Future<JoinLiveConsultationResult> joinInLiveConsultationAsync(JoinLiveConsultationRequest request) async {
  159. var rpcRst = await call("JoinInLiveConsultationAsync", request);
  160. var result = JoinLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  161. return result;
  162. }
  163. Future<CancelLiveConsultationResult> cancelLiveConsultationAsync(CancelLiveConsultationRequest request) async {
  164. var rpcRst = await call("CancelLiveConsultationAsync", request);
  165. var result = CancelLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  166. return result;
  167. }
  168. Future<AcceptLiveConsultationResult> acceptLiveConsultationAsync(AcceptLiveConsultationRequest request) async {
  169. var rpcRst = await call("AcceptLiveConsultationAsync", request);
  170. var result = AcceptLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  171. return result;
  172. }
  173. Future<RejectLiveConsultationResult> rejectLiveConsultationAsync(RejectLiveConsultationRequest request) async {
  174. var rpcRst = await call("RejectLiveConsultationAsync", request);
  175. var result = RejectLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  176. return result;
  177. }
  178. Future<JoinLiveConsultationResult> joinLiveConsultationAsync(JoinLiveConsultationRequest request) async {
  179. var rpcRst = await call("JoinLiveConsultationAsync", request);
  180. var result = JoinLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  181. return result;
  182. }
  183. Future<LeaveLiveConsultationResult> leaveLiveConsultationAsync(LeaveLiveConsultationRequest request) async {
  184. var rpcRst = await call("LeaveLiveConsultationAsync", request);
  185. var result = LeaveLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  186. return result;
  187. }
  188. Future<MuteLiveConsultationResult> muteLiveConsultationAsync(MuteLiveConsultationRequest request) async {
  189. var rpcRst = await call("MuteLiveConsultationAsync", request);
  190. var result = MuteLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  191. return result;
  192. }
  193. Future<SwitchLiveConsultationVideoResult> switchLiveConsultationVideoAsync(SwitchLiveConsultationVideoRequest request) async {
  194. var rpcRst = await call("SwitchLiveConsultationVideoAsync", request);
  195. var result = SwitchLiveConsultationVideoResult.fromJson(rpcRst as Map<String, dynamic>);
  196. return result;
  197. }
  198. Future<LiveConsultationHeartRateResult> heartRateAsync(LiveConsultationHeartRateRequest request) async {
  199. var rpcRst = await call("HeartRateAsync", request);
  200. var result = LiveConsultationHeartRateResult.fromJson(rpcRst as Map<String, dynamic>);
  201. return result;
  202. }
  203. Future<bool> sendInteractiveBoardDataAsync(SendInteractiveBoardDataRequest request) async {
  204. var rpcRst = await call("SendInteractiveBoardDataAsync", request);
  205. return rpcRst;
  206. }
  207. Future<bool> addFollowUpVisitInfoAsync(AddFollowUpVisitInfoRequest request) async {
  208. var rpcRst = await call("AddFollowUpVisitInfoAsync", request);
  209. return rpcRst;
  210. }
  211. Future<bool> deleteFollowUpVisitInfoAsync(DeleteFollowUpVisitInfoRequest request) async {
  212. var rpcRst = await call("DeleteFollowUpVisitInfoAsync", request);
  213. return rpcRst;
  214. }
  215. Future<bool> updateFollowUpVisitInfoAsync(UpdateFollowUpVisitInfoRequest request) async {
  216. var rpcRst = await call("UpdateFollowUpVisitInfoAsync", request);
  217. return rpcRst;
  218. }
  219. Future<List<FollowUpVisitDTO>> getFollowUpVisitInfoAsync(GetFollowUpVisitInfoRequest request) async {
  220. var rpcRst = await call("GetFollowUpVisitInfoAsync", request);
  221. var result = (rpcRst as List).map((e)=>FollowUpVisitDTO.fromJson(e as Map<String, dynamic>)).toList();
  222. return result;
  223. }
  224. Future<FollowUpVisitDTO> getFollowUpVisitInfoDetailAsync(GetFollowUpVisitInfoDetailRequest request) async {
  225. var rpcRst = await call("GetFollowUpVisitInfoDetailAsync", request);
  226. var result = FollowUpVisitDTO.fromJson(rpcRst as Map<String, dynamic>);
  227. return result;
  228. }
  229. Future<bool> setNeedFollowUpVisitAsync(SetNeedFollowUpVisitRequest request) async {
  230. var rpcRst = await call("SetNeedFollowUpVisitAsync", request);
  231. return rpcRst;
  232. }
  233. Future<bool> addConsultationEvaluateAsync(AddConsultationEvaluateRequest request) async {
  234. var rpcRst = await call("AddConsultationEvaluateAsync", request);
  235. return rpcRst;
  236. }
  237. Future<bool> deleteConsultationEvaluateAsync(DeleteConsultationEvaluateRequest request) async {
  238. var rpcRst = await call("DeleteConsultationEvaluateAsync", request);
  239. return rpcRst;
  240. }
  241. Future<bool> updateConsultationEvaluateAsync(UpdateConsultationEvaluateRequest request) async {
  242. var rpcRst = await call("UpdateConsultationEvaluateAsync", request);
  243. return rpcRst;
  244. }
  245. Future<ConsultationEvaluateDTO> getConsultationEvaluateDetailAsync(GetConsultationEvaluateRequest request) async {
  246. var rpcRst = await call("GetConsultationEvaluateDetailAsync", request);
  247. var result = ConsultationEvaluateDTO.fromJson(rpcRst as Map<String, dynamic>);
  248. return result;
  249. }
  250. Future<List<String>> findScanPositionsAsync(TokenRequest request) async {
  251. var rpcRst = await call("FindScanPositionsAsync", request);
  252. var result = (rpcRst as List).cast<String>().toList();
  253. return result;
  254. }
  255. Future<bool> acceptInvitationAsync(AcceptInvitationRequest request) async {
  256. var rpcRst = await call("AcceptInvitationAsync", request);
  257. return rpcRst;
  258. }
  259. Future<String> applyEmergencyTreatment(ApplyEmergencyTreatmentRequest request) async {
  260. var rpcRst = await call("ApplyEmergencyTreatment", request);
  261. return rpcRst;
  262. }
  263. Future<bool> controlParameterAsync(ControlDeviceParameterInConsultationRequest request) async {
  264. var rpcRst = await call("ControlParameterAsync", request);
  265. return rpcRst;
  266. }
  267. Future<UserStatusEnum> getUserStatusAsync(GetUserStatusRequest request) async {
  268. var rpcRst = await call("GetUserStatusAsync", request);
  269. var result = UserStatusEnum.values.firstWhere((e) => e.index == rpcRst);
  270. return result;
  271. }
  272. Future<List<ConsultationImagesDTO>> getConsultationFilesAsync(FindConsultationDetailRequest request) async {
  273. var rpcRst = await call("GetConsultationFilesAsync", request);
  274. var result = (rpcRst as List).map((e)=>ConsultationImagesDTO.fromJson(e as Map<String, dynamic>)).toList();
  275. return result;
  276. }
  277. Future<List<UserExtendDTO>> getInviteableUserListAsync(GetInviteableUserListRequest request) async {
  278. var rpcRst = await call("GetInviteableUserListAsync", request);
  279. var result = (rpcRst as List).map((e)=>UserExtendDTO.fromJson(e as Map<String, dynamic>)).toList();
  280. return result;
  281. }
  282. Future<ChangeConsultationResult> changeConsultationAsync(ChangeConsultationRequest request) async {
  283. var rpcRst = await call("ChangeConsultationAsync", request);
  284. var result = ChangeConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  285. return result;
  286. }
  287. Future<bool> changeConsultationControllingStateAsync(ChangeConsultationControllingStateRequest request) async {
  288. var rpcRst = await call("ChangeConsultationControllingStateAsync", request);
  289. return rpcRst;
  290. }
  291. Future<LiveConsultationMember> deviceJoinInLiveConsultationAsync(JoinLiveConsultationRequest request) async {
  292. var rpcRst = await call("DeviceJoinInLiveConsultationAsync", request);
  293. var result = LiveConsultationMember.fromJson(rpcRst as Map<String, dynamic>);
  294. return result;
  295. }
  296. }