lab.dart 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. import 'dart:core';
  2. import 'package:fis_jsonrpc/client_base.dart';
  3. import 'package:fis_common/json_convert.dart';
  4. import 'lab.m.dart';
  5. import 'liveConsultation.m.dart';
  6. class LabService extends JsonRpcClientBase {
  7. LabService(
  8. String host, {
  9. String serviceName = "ILabService",
  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) => RecordLaboratoryFileResult.fromJson(map));
  20. FJsonConvert.setDecoder((map) => LabFolderDTO.fromJson(map));
  21. FJsonConvert.setDecoder((map) => PageResult<RemedicalInfoDTO>.fromJson(map));
  22. FJsonConvert.setDecoder((map) => RemedicalInfoDTO.fromJson(map));
  23. FJsonConvert.setDecoder((map) => DownloadLabFileTemplateResult.fromJson(map));
  24. }
  25. Future<RecordLaboratoryFileResult> recordLaboratoryFile(RecordLaboratoryFileRequest request) async {
  26. var rpcRst = await call("RecordLaboratoryFile", request);
  27. var result = RecordLaboratoryFileResult.fromJson(rpcRst as Map<String, dynamic>);
  28. return result;
  29. }
  30. Future<List<LabFolderDTO>> getLabFolderListAsync(TokenRequest request) async {
  31. var rpcRst = await call("GetLabFolderListAsync", request);
  32. var result = (rpcRst as List).map((e)=>LabFolderDTO.fromJson(e as Map<String, dynamic>)).toList();
  33. return result;
  34. }
  35. Future<PageResult<RemedicalInfoDTO>> getFileListByFolderAsync(GetFileListByFolderRequest request) async {
  36. var rpcRst = await call("GetFileListByFolderAsync", request);
  37. var result = PageResult<RemedicalInfoDTO>.fromJson(rpcRst as Map<String, dynamic>);
  38. return result;
  39. }
  40. Future<DownloadLabFileTemplateResult> downloadLabFileTemplateAsync(DownloadLabFileTemplateRequest request) async {
  41. var rpcRst = await call("DownloadLabFileTemplateAsync", request);
  42. var result = DownloadLabFileTemplateResult.fromJson(rpcRst as Map<String, dynamic>);
  43. return result;
  44. }
  45. }