liveConsultation.dart 16 KB

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