vinnoIOT.dart 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. import 'dart:core';
  2. import 'package:fis_jsonrpc/client_base.dart';
  3. import 'package:fis_common/json_convert.dart';
  4. import 'vinnoIOT.m.dart';
  5. import 'liveConsultation.m.dart';
  6. class VinnoIOTService extends JsonRpcClientBase {
  7. VinnoIOTService(
  8. String host, {
  9. String serviceName = "IVinnoIOTService",
  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) => IOTDeviceCarouselsResult.fromJson(map));
  20. FJsonConvert.setDecoder((map) => PageResult<IOTDeviceNewsResult>.fromJson(map));
  21. FJsonConvert.setDecoder((map) => IOTDeviceNewsResult.fromJson(map));
  22. FJsonConvert.setDecoder((map) => PageResult<IOTDeviceOperateGuidesResult>.fromJson(map));
  23. FJsonConvert.setDecoder((map) => IOTDeviceOperateGuidesResult.fromJson(map));
  24. FJsonConvert.setDecoder((map) => IOTDeviceDetailResult.fromJson(map));
  25. FJsonConvert.setDecoder((map) => IOTDeviceOperateResult.fromJson(map));
  26. FJsonConvert.setDecoder((map) => UserDeviceInfoResult.fromJson(map));
  27. FJsonConvert.setDecoder((map) => IOTDeviceSumaryResult.fromJson(map));
  28. FJsonConvert.setDecoder((map) => IOTDeviceVersionResult.fromJson(map));
  29. }
  30. Future<List<IOTDeviceCarouselsResult>> getCarousels(TokenRequest request) async {
  31. var rpcRst = await call("GetCarousels", request);
  32. var result = (rpcRst as List).map((e)=>IOTDeviceCarouselsResult.fromJson(e as Map<String, dynamic>)).toList();
  33. return result;
  34. }
  35. Future<PageResult<IOTDeviceNewsResult>> getNews(GetIOTDeviceNewsPageRequest request) async {
  36. var rpcRst = await call("GetNews", request);
  37. var result = PageResult<IOTDeviceNewsResult>.fromJson(rpcRst as Map<String, dynamic>);
  38. return result;
  39. }
  40. Future<PageResult<IOTDeviceOperateGuidesResult>> getOperateGuides(GetOperateGuidesPageRequest request) async {
  41. var rpcRst = await call("GetOperateGuides", request);
  42. var result = PageResult<IOTDeviceOperateGuidesResult>.fromJson(rpcRst as Map<String, dynamic>);
  43. return result;
  44. }
  45. Future<IOTDeviceDetailResult> getDeviceDetail(GetIOTDeviceDetailRequest request) async {
  46. var rpcRst = await call("GetDeviceDetail", request);
  47. var result = IOTDeviceDetailResult.fromJson(rpcRst as Map<String, dynamic>);
  48. return result;
  49. }
  50. Future<String> getDeviceReport(GetIOTDeviceReportRequest request) async {
  51. var rpcRst = await call("GetDeviceReport", request);
  52. return rpcRst;
  53. }
  54. Future<List<DateTime>> getDeviceUseDates(GetIOTDeviceUseDateRequest request) async {
  55. var rpcRst = await call("GetDeviceUseDates", request);
  56. var result = (rpcRst as List).cast<DateTime>().toList();
  57. return result;
  58. }
  59. Future<List<ModeType>> getDeviceModeTypes(GetIOTDevicBaseRequest request) async {
  60. var rpcRst = await call("GetDeviceModeTypes", request);
  61. var result = (rpcRst as List).map((e)=>ModeType.values.firstWhere((i) => i.index == e)).toList();
  62. return result;
  63. }
  64. Future<IOTDeviceOperateResult> bindDevice(UserBindDeviceRequest request) async {
  65. var rpcRst = await call("BindDevice", request);
  66. var result = IOTDeviceOperateResult.fromJson(rpcRst as Map<String, dynamic>);
  67. return result;
  68. }
  69. Future<IOTDeviceOperateResult> deleteDevice(DeleteDeviceInfoRequest request) async {
  70. var rpcRst = await call("DeleteDevice", request);
  71. var result = IOTDeviceOperateResult.fromJson(rpcRst as Map<String, dynamic>);
  72. return result;
  73. }
  74. Future<List<UserDeviceInfoResult>> getDevices(TokenRequest request) async {
  75. var rpcRst = await call("GetDevices", request);
  76. var result = (rpcRst as List).map((e)=>UserDeviceInfoResult.fromJson(e as Map<String, dynamic>)).toList();
  77. return result;
  78. }
  79. Future<IOTDeviceSumaryResult> summary(GetSummaryRequest request) async {
  80. var rpcRst = await call("Summary", request);
  81. var result = IOTDeviceSumaryResult.fromJson(rpcRst as Map<String, dynamic>);
  82. return result;
  83. }
  84. Future<List<IOTDeviceVersionResult>> checkVersion(GetDeviceVersionRequest request) async {
  85. var rpcRst = await call("CheckVersion", request);
  86. var result = (rpcRst as List).map((e)=>IOTDeviceVersionResult.fromJson(e as Map<String, dynamic>)).toList();
  87. return result;
  88. }
  89. Future<IOTDeviceOperateResult> deviceAttributePost(IOTDeviceAttributeEscalationRequest request) async {
  90. var rpcRst = await call("DeviceAttributePost", request);
  91. var result = IOTDeviceOperateResult.fromJson(rpcRst as Map<String, dynamic>);
  92. return result;
  93. }
  94. Future<String> deviceAttributeGet(IOTDeviceAttributeEscalationRequest request) async {
  95. var rpcRst = await call("DeviceAttributeGet", request);
  96. return rpcRst;
  97. }
  98. Future<String> publishDeviceSetTopic(IOTDeviceTopicInfoRequest request) async {
  99. var rpcRst = await call("PublishDeviceSetTopic", request);
  100. return rpcRst;
  101. }
  102. Future<IOTDeviceOperateResult> deviceEventPost(IOTDeviceAttributeEscalationRequest request) async {
  103. var rpcRst = await call("DeviceEventPost", request);
  104. var result = IOTDeviceOperateResult.fromJson(rpcRst as Map<String, dynamic>);
  105. return result;
  106. }
  107. Future<IOTDeviceOperateResult> iOTDeviceRegisterAsync(IOTDeviceRegisterRequest request) async {
  108. var rpcRst = await call("IOTDeviceRegisterAsync", request);
  109. var result = IOTDeviceOperateResult.fromJson(rpcRst as Map<String, dynamic>);
  110. return result;
  111. }
  112. }