liveConsultation.dart 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399
  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) => PageResult<OrganizationExpertDTO>.fromJson(map));
  21. FJsonConvert.setDecoder((map) => OrganizationExpertDTO.fromJson(map));
  22. FJsonConvert.setDecoder((map) => PageResult<ConsultationPageDTO>.fromJson(map));
  23. FJsonConvert.setDecoder((map) => ConsultationPageDTO.fromJson(map));
  24. FJsonConvert.setDecoder((map) => ExportConsultationDataResult.fromJson(map));
  25. FJsonConvert.setDecoder((map) => ConsultationDetailDTO.fromJson(map));
  26. FJsonConvert.setDecoder((map) => ConsultationAssistantDTO.fromJson(map));
  27. FJsonConvert.setDecoder((map) => ConsultationAssistantDoctorDTO.fromJson(map));
  28. FJsonConvert.setDecoder((map) => PageResult<ClientPatientInfoBaseDTO>.fromJson(map));
  29. FJsonConvert.setDecoder((map) => ClientPatientInfoBaseDTO.fromJson(map));
  30. FJsonConvert.setDecoder((map) => InitiateLiveConsultationResult.fromJson(map));
  31. FJsonConvert.setDecoder((map) => InviteInLiveConsultationResult.fromJson(map));
  32. FJsonConvert.setDecoder((map) => CancelInvitingInLiveConsultationResult.fromJson(map));
  33. FJsonConvert.setDecoder((map) => RejectLiveConsultationResult.fromJson(map));
  34. FJsonConvert.setDecoder((map) => JoinLiveConsultationResult.fromJson(map));
  35. FJsonConvert.setDecoder((map) => CancelLiveConsultationResult.fromJson(map));
  36. FJsonConvert.setDecoder((map) => AcceptLiveConsultationResult.fromJson(map));
  37. FJsonConvert.setDecoder((map) => LeaveLiveConsultationResult.fromJson(map));
  38. FJsonConvert.setDecoder((map) => MuteLiveConsultationResult.fromJson(map));
  39. FJsonConvert.setDecoder((map) => SwitchLiveConsultationVideoResult.fromJson(map));
  40. FJsonConvert.setDecoder((map) => LiveConsultationHeartRateResult.fromJson(map));
  41. FJsonConvert.setDecoder((map) => FollowUpVisitDTO.fromJson(map));
  42. FJsonConvert.setDecoder((map) => ConsultationEvaluateDTO.fromJson(map));
  43. FJsonConvert.setDecoder((map) => GetEmergencySettingResult.fromJson(map));
  44. FJsonConvert.setDecoder((map) => ConsultationImagesDTO.fromJson(map));
  45. FJsonConvert.setDecoder((map) => UserExtendDTO.fromJson(map));
  46. FJsonConvert.setDecoder((map) => ChangeConsultationResult.fromJson(map));
  47. FJsonConvert.setDecoder((map) => LiveConsultationMember.fromJson(map));
  48. FJsonConvert.setDecoder((map) => QueryEmergencyDataResult.fromJson(map));
  49. FJsonConvert.setDecoder((map) => GetConsultationQualityTypeResult.fromJson(map));
  50. }
  51. Future<List<OrganizationBaseDTO>> findParentOrganizationsAsync(FindHigherOrganizationsRequest request) async {
  52. var rpcRst = await call("FindParentOrganizationsAsync", request);
  53. var result = (rpcRst as List).map((e)=>OrganizationBaseDTO.fromJson(e as Map<String, dynamic>)).toList();
  54. return result;
  55. }
  56. Future<List<OrganizationBaseDTO>> findGrassRootsOrganizationsAsync(FindGrassRootsOrganizationsRequest request) async {
  57. var rpcRst = await call("FindGrassRootsOrganizationsAsync", request);
  58. var result = (rpcRst as List).map((e)=>OrganizationBaseDTO.fromJson(e as Map<String, dynamic>)).toList();
  59. return result;
  60. }
  61. Future<PageResult<OrganizationExpertDTO>> findOrganizationExpertsAsync(FindOrganizationExpertsRequest request) async {
  62. var rpcRst = await call("FindOrganizationExpertsAsync", request);
  63. var result = PageResult<OrganizationExpertDTO>.fromJson(rpcRst as Map<String, dynamic>);
  64. return result;
  65. }
  66. Future<String> applyConsultationAsync(ApplyConsultationRequest request) async {
  67. var rpcRst = await call("ApplyConsultationAsync", request);
  68. return rpcRst;
  69. }
  70. Future<bool> updateConsultationAsync(UpdateConsultationRequest request) async {
  71. var rpcRst = await call("UpdateConsultationAsync", request);
  72. return rpcRst;
  73. }
  74. Future<bool> improveConsultationInfoAsync(ImproveConsultationInfoRequest request) async {
  75. var rpcRst = await call("ImproveConsultationInfoAsync", request);
  76. return rpcRst;
  77. }
  78. Future<List<OrganizationExpertDTO>> findAssistantExpertsAsync(FindAssistantExpertsRequest request) async {
  79. var rpcRst = await call("FindAssistantExpertsAsync", request);
  80. var result = (rpcRst as List).map((e)=>OrganizationExpertDTO.fromJson(e as Map<String, dynamic>)).toList();
  81. return result;
  82. }
  83. Future<PageResult<ConsultationPageDTO>> findConsultationsByPageAsync(FindConsultationByPageRequest request) async {
  84. var rpcRst = await call("FindConsultationsByPageAsync", request);
  85. var result = PageResult<ConsultationPageDTO>.fromJson(rpcRst as Map<String, dynamic>);
  86. return result;
  87. }
  88. Future<ExportConsultationDataResult> exportConsultationsAsync(ExportConsultationsRequest request) async {
  89. var rpcRst = await call("ExportConsultationsAsync", request);
  90. var result = ExportConsultationDataResult.fromJson(rpcRst as Map<String, dynamic>);
  91. return result;
  92. }
  93. Future<ConsultationDetailDTO> findConsultationDetailAsync(FindConsultationDetailRequest request) async {
  94. var rpcRst = await call("FindConsultationDetailAsync", request);
  95. var result = ConsultationDetailDTO.fromJson(rpcRst as Map<String, dynamic>);
  96. return result;
  97. }
  98. Future<bool> approvalConsultationAsync(ApprovalConsultationRequest request) async {
  99. var rpcRst = await call("ApprovalConsultationAsync", request);
  100. return rpcRst;
  101. }
  102. Future<bool> rejectApplyConsultationAsync(RejectApplyConsultationRequest request) async {
  103. var rpcRst = await call("RejectApplyConsultationAsync", request);
  104. return rpcRst;
  105. }
  106. Future<bool> revokeConsultationAsync(RevokeConsultationRequest request) async {
  107. var rpcRst = await call("RevokeConsultationAsync", request);
  108. return rpcRst;
  109. }
  110. Future<bool> deleteConsultationAsync(DeleteConsultationRequest request) async {
  111. var rpcRst = await call("DeleteConsultationAsync", request);
  112. return rpcRst;
  113. }
  114. Future<bool> updateConsultationFilesInfoAsync(UpdateConsultationFilesInfoRequest request) async {
  115. var rpcRst = await call("UpdateConsultationFilesInfoAsync", request);
  116. return rpcRst;
  117. }
  118. Future<List<ConsultationAssistantDTO>> findOrganizationAssistantsAsync(FindOrganizationAssistantsRequest request) async {
  119. var rpcRst = await call("FindOrganizationAssistantsAsync", request);
  120. var result = (rpcRst as List).map((e)=>ConsultationAssistantDTO.fromJson(e as Map<String, dynamic>)).toList();
  121. return result;
  122. }
  123. Future<List<ConsultationAssistantDoctorDTO>> findOrganizationAssistantDoctorsAsync(FindOrganizationAssistantDoctorsRequest request) async {
  124. var rpcRst = await call("FindOrganizationAssistantDoctorsAsync", request);
  125. var result = (rpcRst as List).map((e)=>ConsultationAssistantDoctorDTO.fromJson(e as Map<String, dynamic>)).toList();
  126. return result;
  127. }
  128. Future<bool> updateMyOrganizationAssistantAsync(UpdateMyOrganizationAssistantRequest request) async {
  129. var rpcRst = await call("UpdateMyOrganizationAssistantAsync", request);
  130. return rpcRst;
  131. }
  132. Future<PageResult<ClientPatientInfoBaseDTO>> findConsultationPatientAsync(FindConsultationPatientPageRequest request) async {
  133. var rpcRst = await call("FindConsultationPatientAsync", request);
  134. var result = PageResult<ClientPatientInfoBaseDTO>.fromJson(rpcRst as Map<String, dynamic>);
  135. return result;
  136. }
  137. Future<List<ConsultationPageDTO>> findCanSwitchConsultationsAsync(FindCanSwitchConsultationsRequest request) async {
  138. var rpcRst = await call("FindCanSwitchConsultationsAsync", request);
  139. var result = (rpcRst as List).map((e)=>ConsultationPageDTO.fromJson(e as Map<String, dynamic>)).toList();
  140. return result;
  141. }
  142. Future<InitiateLiveConsultationResult> initiateLiveConsultationAsync(InitiateLiveConsultationRequest request) async {
  143. var rpcRst = await call("InitiateLiveConsultationAsync", request);
  144. var result = InitiateLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  145. return result;
  146. }
  147. Future<InviteInLiveConsultationResult> inviteInLiveConsultationAsync(InviteInLiveConsultationRequest request) async {
  148. var rpcRst = await call("InviteInLiveConsultationAsync", request);
  149. var result = InviteInLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  150. return result;
  151. }
  152. Future<CancelInvitingInLiveConsultationResult> cancelInvitingInLiveConsultationAsync(CancelInvitingInLiveConsultationRequest request) async {
  153. var rpcRst = await call("CancelInvitingInLiveConsultationAsync", request);
  154. var result = CancelInvitingInLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  155. return result;
  156. }
  157. Future<RejectLiveConsultationResult> rejectInviteLiveConsultationAsync(RejectLiveConsultationRequest request) async {
  158. var rpcRst = await call("RejectInviteLiveConsultationAsync", request);
  159. var result = RejectLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  160. return result;
  161. }
  162. Future<JoinLiveConsultationResult> joinInLiveConsultationAsync(JoinLiveConsultationRequest request) async {
  163. var rpcRst = await call("JoinInLiveConsultationAsync", request);
  164. var result = JoinLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  165. return result;
  166. }
  167. Future<CancelLiveConsultationResult> cancelLiveConsultationAsync(CancelLiveConsultationRequest request) async {
  168. var rpcRst = await call("CancelLiveConsultationAsync", request);
  169. var result = CancelLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  170. return result;
  171. }
  172. Future<AcceptLiveConsultationResult> acceptLiveConsultationAsync(AcceptLiveConsultationRequest request) async {
  173. var rpcRst = await call("AcceptLiveConsultationAsync", request);
  174. var result = AcceptLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  175. return result;
  176. }
  177. Future<RejectLiveConsultationResult> rejectLiveConsultationAsync(RejectLiveConsultationRequest request) async {
  178. var rpcRst = await call("RejectLiveConsultationAsync", request);
  179. var result = RejectLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  180. return result;
  181. }
  182. Future<JoinLiveConsultationResult> joinLiveConsultationAsync(JoinLiveConsultationRequest request) async {
  183. var rpcRst = await call("JoinLiveConsultationAsync", request);
  184. var result = JoinLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  185. return result;
  186. }
  187. Future<LeaveLiveConsultationResult> leaveLiveConsultationAsync(LeaveLiveConsultationRequest request) async {
  188. var rpcRst = await call("LeaveLiveConsultationAsync", request);
  189. var result = LeaveLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  190. return result;
  191. }
  192. Future<MuteLiveConsultationResult> muteLiveConsultationAsync(MuteLiveConsultationRequest request) async {
  193. var rpcRst = await call("MuteLiveConsultationAsync", request);
  194. var result = MuteLiveConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  195. return result;
  196. }
  197. Future<SwitchLiveConsultationVideoResult> switchLiveConsultationVideoAsync(SwitchLiveConsultationVideoRequest request) async {
  198. var rpcRst = await call("SwitchLiveConsultationVideoAsync", request);
  199. var result = SwitchLiveConsultationVideoResult.fromJson(rpcRst as Map<String, dynamic>);
  200. return result;
  201. }
  202. Future<LiveConsultationHeartRateResult> heartRateAsync(LiveConsultationHeartRateRequest request) async {
  203. var rpcRst = await call("HeartRateAsync", request);
  204. var result = LiveConsultationHeartRateResult.fromJson(rpcRst as Map<String, dynamic>);
  205. return result;
  206. }
  207. Future<bool> sendInteractiveBoardDataAsync(SendInteractiveBoardDataRequest request) async {
  208. var rpcRst = await call("SendInteractiveBoardDataAsync", request);
  209. return rpcRst;
  210. }
  211. Future<bool> addFollowUpVisitInfoAsync(AddFollowUpVisitInfoRequest request) async {
  212. var rpcRst = await call("AddFollowUpVisitInfoAsync", request);
  213. return rpcRst;
  214. }
  215. Future<bool> deleteFollowUpVisitInfoAsync(DeleteFollowUpVisitInfoRequest request) async {
  216. var rpcRst = await call("DeleteFollowUpVisitInfoAsync", request);
  217. return rpcRst;
  218. }
  219. Future<bool> updateFollowUpVisitInfoAsync(UpdateFollowUpVisitInfoRequest request) async {
  220. var rpcRst = await call("UpdateFollowUpVisitInfoAsync", request);
  221. return rpcRst;
  222. }
  223. Future<List<FollowUpVisitDTO>> getFollowUpVisitInfoAsync(GetFollowUpVisitInfoRequest request) async {
  224. var rpcRst = await call("GetFollowUpVisitInfoAsync", request);
  225. var result = (rpcRst as List).map((e)=>FollowUpVisitDTO.fromJson(e as Map<String, dynamic>)).toList();
  226. return result;
  227. }
  228. Future<FollowUpVisitDTO> getFollowUpVisitInfoDetailAsync(GetFollowUpVisitInfoDetailRequest request) async {
  229. var rpcRst = await call("GetFollowUpVisitInfoDetailAsync", request);
  230. var result = FollowUpVisitDTO.fromJson(rpcRst as Map<String, dynamic>);
  231. return result;
  232. }
  233. Future<bool> setNeedFollowUpVisitAsync(SetNeedFollowUpVisitRequest request) async {
  234. var rpcRst = await call("SetNeedFollowUpVisitAsync", request);
  235. return rpcRst;
  236. }
  237. Future<bool> addConsultationEvaluateAsync(AddConsultationEvaluateRequest request) async {
  238. var rpcRst = await call("AddConsultationEvaluateAsync", request);
  239. return rpcRst;
  240. }
  241. Future<bool> deleteConsultationEvaluateAsync(DeleteConsultationEvaluateRequest request) async {
  242. var rpcRst = await call("DeleteConsultationEvaluateAsync", request);
  243. return rpcRst;
  244. }
  245. Future<bool> updateConsultationEvaluateAsync(UpdateConsultationEvaluateRequest request) async {
  246. var rpcRst = await call("UpdateConsultationEvaluateAsync", request);
  247. return rpcRst;
  248. }
  249. Future<ConsultationEvaluateDTO> getConsultationEvaluateDetailAsync(GetConsultationEvaluateRequest request) async {
  250. var rpcRst = await call("GetConsultationEvaluateDetailAsync", request);
  251. var result = ConsultationEvaluateDTO.fromJson(rpcRst as Map<String, dynamic>);
  252. return result;
  253. }
  254. Future<List<String>> findScanPositionsAsync(TokenRequest request) async {
  255. var rpcRst = await call("FindScanPositionsAsync", request);
  256. var result = (rpcRst as List).cast<String>().toList();
  257. return result;
  258. }
  259. Future<bool> acceptInvitationAsync(AcceptInvitationRequest request) async {
  260. var rpcRst = await call("AcceptInvitationAsync", request);
  261. return rpcRst;
  262. }
  263. Future<String> applyEmergencyTreatment(ApplyEmergencyTreatmentRequest request) async {
  264. var rpcRst = await call("ApplyEmergencyTreatment", request);
  265. return rpcRst;
  266. }
  267. Future<GetEmergencySettingResult> getEmergencySettingAsync(GetEmergencySettingRequest request) async {
  268. var rpcRst = await call("GetEmergencySettingAsync", request);
  269. var result = GetEmergencySettingResult.fromJson(rpcRst as Map<String, dynamic>);
  270. return result;
  271. }
  272. Future<bool> controlParameterAsync(ControlDeviceParameterInConsultationRequest request) async {
  273. var rpcRst = await call("ControlParameterAsync", request);
  274. return rpcRst;
  275. }
  276. Future<UserStatusEnum> getUserStatusAsync(GetUserStatusRequest request) async {
  277. var rpcRst = await call("GetUserStatusAsync", request);
  278. var result = UserStatusEnum.values.firstWhere((e) => e.index == rpcRst);
  279. return result;
  280. }
  281. Future<List<ConsultationImagesDTO>> getConsultationFilesAsync(FindConsultationDetailRequest request) async {
  282. var rpcRst = await call("GetConsultationFilesAsync", request);
  283. var result = (rpcRst as List).map((e)=>ConsultationImagesDTO.fromJson(e as Map<String, dynamic>)).toList();
  284. return result;
  285. }
  286. Future<List<UserExtendDTO>> getInviteableUserListAsync(GetInviteableUserListRequest request) async {
  287. var rpcRst = await call("GetInviteableUserListAsync", request);
  288. var result = (rpcRst as List).map((e)=>UserExtendDTO.fromJson(e as Map<String, dynamic>)).toList();
  289. return result;
  290. }
  291. Future<ChangeConsultationResult> changeConsultationAsync(ChangeConsultationRequest request) async {
  292. var rpcRst = await call("ChangeConsultationAsync", request);
  293. var result = ChangeConsultationResult.fromJson(rpcRst as Map<String, dynamic>);
  294. return result;
  295. }
  296. Future<LiveConsultationMember> deviceJoinInLiveConsultationAsync(JoinLiveConsultationRequest request) async {
  297. var rpcRst = await call("DeviceJoinInLiveConsultationAsync", request);
  298. var result = LiveConsultationMember.fromJson(rpcRst as Map<String, dynamic>);
  299. return result;
  300. }
  301. Future<QueryEmergencyDataResult> queryEmergencyDataAsync(TokenRequest request) async {
  302. var rpcRst = await call("QueryEmergencyDataAsync", request);
  303. var result = QueryEmergencyDataResult.fromJson(rpcRst as Map<String, dynamic>);
  304. return result;
  305. }
  306. Future<bool> acceptRemoteConnnectionAsync(ControlDeviceResponseRequest request) async {
  307. var rpcRst = await call("AcceptRemoteConnnectionAsync", request);
  308. return rpcRst;
  309. }
  310. Future<bool> syncBatchConsultationAsync(SyncBatchConsultationRequest syncBatchConsultationRequest) async {
  311. var rpcRst = await call("SyncBatchConsultationAsync", syncBatchConsultationRequest);
  312. return rpcRst;
  313. }
  314. Future<GetConsultationQualityTypeResult> getConsultationReportQualityTypeAsync(GetConsultationReportQualityTypeRequest request) async {
  315. var rpcRst = await call("GetConsultationReportQualityTypeAsync", request);
  316. var result = GetConsultationQualityTypeResult.fromJson(rpcRst as Map<String, dynamic>);
  317. return result;
  318. }
  319. Future<bool> addConsultationReportQualityAsync(AddConsultationReportQualityRequest request) async {
  320. var rpcRst = await call("AddConsultationReportQualityAsync", request);
  321. return rpcRst;
  322. }
  323. Future<bool> modifyConsultationReportQualityAsync(ModifyConsultationReportQualityRequest request) async {
  324. var rpcRst = await call("ModifyConsultationReportQualityAsync", request);
  325. return rpcRst;
  326. }
  327. Future<bool> deleteConsultationReportQualityAsync(DeleteConsultationReportQualityRequest request) async {
  328. var rpcRst = await call("DeleteConsultationReportQualityAsync", request);
  329. return rpcRst;
  330. }
  331. }