recognition.dart 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. import 'dart:core';
  2. import 'package:fis_jsonrpc/client_base.dart';
  3. import 'package:fis_common/json_convert.dart';
  4. import 'recognition.m.dart';
  5. class RecognitionService extends JsonRpcClientBase {
  6. RecognitionService(
  7. String host, {
  8. String serviceName = "IRecognitionService",
  9. Map<String, String>? headers,
  10. int? timeout,
  11. }) : super(
  12. host,
  13. serviceName,
  14. headers: headers,
  15. timeout: timeout,
  16. ) {
  17. /// 注册响应实体反序列化处理器
  18. FJsonConvert.setDecoder((map) => RecognitionResult.fromJson(map));
  19. FJsonConvert.setDecoder((map) => SearchPersonsResult.fromJson(map));
  20. FJsonConvert.setDecoder((map) => SavePersonResult.fromJson(map));
  21. FJsonConvert.setDecoder((map) => DeletePersonResult.fromJson(map));
  22. }
  23. Future<RecognitionResult> getIDCardInfoAsync(IDCardInfoRequest request) async {
  24. var rpcRst = await call("GetIDCardInfoAsync", request);
  25. var result = RecognitionResult.fromJson(rpcRst as Map<String, dynamic>);
  26. return result;
  27. }
  28. Future<bool> addOrUpdatePersonAsync(AddOrUpdatePersonRequest request) async {
  29. var rpcRst = await call("AddOrUpdatePersonAsync", request);
  30. return rpcRst;
  31. }
  32. Future<SearchPersonsResult> searchPersonsAsync(SearchPersonsRequest request) async {
  33. var rpcRst = await call("SearchPersonsAsync", request);
  34. var result = SearchPersonsResult.fromJson(rpcRst as Map<String, dynamic>);
  35. return result;
  36. }
  37. Future<SavePersonResult> savePersonAsync(SavePersonRequest request) async {
  38. var rpcRst = await call("SavePersonAsync", request);
  39. var result = SavePersonResult.fromJson(rpcRst as Map<String, dynamic>);
  40. return result;
  41. }
  42. Future<DeletePersonResult> deletePersonAsync(DeletePersonRequest request) async {
  43. var rpcRst = await call("DeletePersonAsync", request);
  44. var result = DeletePersonResult.fromJson(rpcRst as Map<String, dynamic>);
  45. return result;
  46. }
  47. }