aIDiagnosis.dart 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. import 'dart:core';
  2. import 'package:fis_jsonrpc/client_base.dart';
  3. import 'package:fis_common/json_convert.dart';
  4. import 'aIDiagnosis.m.dart';
  5. import 'liveConsultation.m.dart';
  6. class AIDiagnosisService extends JsonRpcClientBase {
  7. AIDiagnosisService(
  8. String host, {
  9. String serviceName = "IAIDiagnosisService",
  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) => DiagnosisImageResult.fromJson(map));
  20. FJsonConvert.setDecoder((map) => CarotidResultDTO.fromJson(map));
  21. FJsonConvert.setDecoder((map) => CreateCarotidSurfaceImagesResult.fromJson(map));
  22. FJsonConvert.setDecoder((map) => DiagnosisReportResult.fromJson(map));
  23. FJsonConvert.setDecoder((map) => GetDiagnosisConclusionResult.fromJson(map));
  24. FJsonConvert.setDecoder((map) => GetDiagnosisEnumItemsResult.fromJson(map));
  25. FJsonConvert.setDecoder((map) => DiagnosisKeyPointDTO.fromJson(map));
  26. FJsonConvert.setDecoder((map) => ContourAndKeyPointsAfterDragResult.fromJson(map));
  27. FJsonConvert.setDecoder((map) => MinimumDistanceToContourPointsResult.fromJson(map));
  28. FJsonConvert.setDecoder((map) => ContourMergeResult.fromJson(map));
  29. }
  30. Future<List<String>> findDiagnosisModulesAsync(TokenRequest request) async {
  31. var rpcRst = await call("FindDiagnosisModulesAsync", request);
  32. var result = (rpcRst as List).cast<String>().toList();
  33. return result;
  34. }
  35. Future<DiagnosisImageResult> diagnosisImageAsync(DiagnosisImageRequest request) async {
  36. var rpcRst = await call("DiagnosisImageAsync", request);
  37. var result = DiagnosisImageResult.fromJson(rpcRst as Map<String, dynamic>);
  38. return result;
  39. }
  40. Future<DiagnosisImageResult> getDiagnosisImageResultByAIResultAsync(GetDiagnosisImageResultByAIResultRequest request) async {
  41. var rpcRst = await call("GetDiagnosisImageResultByAIResultAsync", request);
  42. var result = DiagnosisImageResult.fromJson(rpcRst as Map<String, dynamic>);
  43. return result;
  44. }
  45. Future<CarotidResultDTO> getCarotidResultAsync(GetCarotidResultRequest request) async {
  46. var rpcRst = await call("GetCarotidResultAsync", request);
  47. var result = CarotidResultDTO.fromJson(rpcRst as Map<String, dynamic>);
  48. return result;
  49. }
  50. Future<CreateCarotidSurfaceImagesResult> createCarotidSurfaceImagesAsync(CreateCarotidSurfaceImagesRequest request) async {
  51. var rpcRst = await call("CreateCarotidSurfaceImagesAsync", request);
  52. var result = CreateCarotidSurfaceImagesResult.fromJson(rpcRst as Map<String, dynamic>);
  53. return result;
  54. }
  55. Future<DiagnosisReportResult> diagnosisReportAsync(DiagnosisReportRequest request) async {
  56. var rpcRst = await call("DiagnosisReportAsync", request);
  57. var result = DiagnosisReportResult.fromJson(rpcRst as Map<String, dynamic>);
  58. return result;
  59. }
  60. Future<GetDiagnosisConclusionResult> getDiagnosisConclusionAsync(GetDiagnosisConclusionRequest request) async {
  61. var rpcRst = await call("GetDiagnosisConclusionAsync", request);
  62. var result = GetDiagnosisConclusionResult.fromJson(rpcRst as Map<String, dynamic>);
  63. return result;
  64. }
  65. Future<GetDiagnosisEnumItemsResult> getDiagnosisEnumItemsAsync(GetDiagnosisEnumItemsRequest request) async {
  66. var rpcRst = await call("GetDiagnosisEnumItemsAsync", request);
  67. var result = GetDiagnosisEnumItemsResult.fromJson(rpcRst as Map<String, dynamic>);
  68. return result;
  69. }
  70. Future<List<DiagnosisKeyPointDTO>> getKeyPointsOfContourAsync(GetKeyPointsOfContourRequest request) async {
  71. var rpcRst = await call("GetKeyPointsOfContourAsync", request);
  72. var result = (rpcRst as List).map((e)=>DiagnosisKeyPointDTO.fromJson(e as Map<String, dynamic>)).toList();
  73. return result;
  74. }
  75. Future<List<int>> affectedKeyPointsByDragActionAsync(AffectedKeyPointsByDragActionRequest request) async {
  76. var rpcRst = await call("AffectedKeyPointsByDragActionAsync", request);
  77. var result = (rpcRst as List).cast<int>().toList();
  78. return result;
  79. }
  80. Future<ContourAndKeyPointsAfterDragResult> contourAndKeyPointsAfterDragAsync(ContourAndKeyPointsAfterDragRequest request) async {
  81. var rpcRst = await call("ContourAndKeyPointsAfterDragAsync", request);
  82. var result = ContourAndKeyPointsAfterDragResult.fromJson(rpcRst as Map<String, dynamic>);
  83. return result;
  84. }
  85. Future<MinimumDistanceToContourPointsResult> minimumDistanceToContourPointsAsync(MinimumDistanceToContourPointsRequest request) async {
  86. var rpcRst = await call("MinimumDistanceToContourPointsAsync", request);
  87. var result = MinimumDistanceToContourPointsResult.fromJson(rpcRst as Map<String, dynamic>);
  88. return result;
  89. }
  90. Future<ContourMergeResult> contourMergeAsync(ContourMergeRequest request) async {
  91. var rpcRst = await call("ContourMergeAsync", request);
  92. var result = ContourMergeResult.fromJson(rpcRst as Map<String, dynamic>);
  93. return result;
  94. }
  95. }