member_repository.dart 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. import 'package:injectable/injectable.dart';
  2. import 'package:location/base/app_base_request.dart';
  3. import 'package:location/data/api/atmob_api.dart';
  4. import 'package:location/utils/http_handler.dart';
  5. import '../api/request/order_status_request.dart';
  6. import '../api/request/submit_and_request_pay_request.dart';
  7. import '../api/response/item_list_response.dart';
  8. import '../api/response/request_pay_response.dart';
  9. @lazySingleton
  10. class MemberRepository {
  11. final AtmobApi atmobApi;
  12. MemberRepository(this.atmobApi);
  13. Future<int> memberTrial() {
  14. return atmobApi
  15. .memberTrial(AppBaseRequest())
  16. .then(HttpHandler.handle(false))
  17. .then((response) => response.freeMemberMinutes);
  18. }
  19. Future<ItemListResponse> getMemberList() {
  20. return atmobApi
  21. .getMemberList(AppBaseRequest())
  22. .then(HttpHandler.handle(true));
  23. }
  24. Future<RequestPayResponse> submitAndRequestPay(
  25. {required int goodsId,
  26. required int payPlatform,
  27. required int payMethod}) {
  28. return atmobApi
  29. .submitAndRequestPay(SubmitAndRequestPayRequest(
  30. goodsId: goodsId, payPlatform: payPlatform, payMethod: payMethod))
  31. .then(HttpHandler.handle(false));
  32. }
  33. Future<int> orderStatus(String outTradeNo, {String? receiptData}) {
  34. return atmobApi
  35. .orderStatus(OrderStatusRequest(outTradeNo, receiptData))
  36. .then(HttpHandler.handle(false))
  37. .then((data) {
  38. return data.payStatus;
  39. });
  40. }
  41. }