|
|
|
|
import 'package:mc_common_app/api/api_client.dart';
|
|
|
|
|
import 'package:mc_common_app/classes/app_state.dart';
|
|
|
|
|
import 'package:mc_common_app/classes/consts.dart';
|
|
|
|
|
import 'package:mc_common_app/config/dependency_injection.dart';
|
|
|
|
|
import 'package:mc_common_app/models/general_models/generic_resp_model.dart';
|
|
|
|
|
import 'package:mc_common_app/models/payment_models/pay_order_detail_resp_model.dart';
|
|
|
|
|
|
|
|
|
|
abstract class PaymentsRepo {
|
|
|
|
|
Future<PayOrderDetailRespModel> getPayOrderDetails({required int paymentTypeId, required int adId});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
class PaymentsRepoImp implements PaymentsRepo {
|
|
|
|
|
ApiClient apiClient = injector.get<ApiClient>();
|
|
|
|
|
AppState appState = injector.get<AppState>();
|
|
|
|
|
|
|
|
|
|
@override
|
|
|
|
|
Future<PayOrderDetailRespModel> getPayOrderDetails({required int paymentTypeId, required int adId}) async {
|
|
|
|
|
var queryParameters = {
|
|
|
|
|
"AdsID": adId.toString(),
|
|
|
|
|
"PaymentType": paymentTypeId.toString(),
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
GenericRespModel adsGenericModel = await apiClient.getJsonForObject(
|
|
|
|
|
token: appState.getUser.data!.accessToken,
|
|
|
|
|
queryParameters: queryParameters,
|
|
|
|
|
(json) => GenericRespModel.fromJson(json),
|
|
|
|
|
ApiConsts.payForOrderDetailGet,
|
|
|
|
|
);
|
|
|
|
|
PayOrderDetailRespModel payOrderDetailRespModel = PayOrderDetailRespModel.fromJson(adsGenericModel.data);
|
|
|
|
|
return payOrderDetailRespModel;
|
|
|
|
|
}
|
|
|
|
|
}
|