codigo actual del servidor, con avances de joan
This commit is contained in:
295
source_code/lib/repositories/payment_repository.dart
Normal file
295
source_code/lib/repositories/payment_repository.dart
Normal file
@@ -0,0 +1,295 @@
|
||||
|
||||
import 'package:active_ecommerce_seller_app/app_config.dart';
|
||||
import 'package:active_ecommerce_seller_app/data_model/offline_payment_response.dart';
|
||||
import 'package:active_ecommerce_seller_app/data_model/payment_type_response.dart';
|
||||
import 'package:active_ecommerce_seller_app/data_model/payments/bkash_begin_response.dart';
|
||||
import 'package:active_ecommerce_seller_app/data_model/payments/bkash_payment_process_response.dart';
|
||||
import 'package:active_ecommerce_seller_app/data_model/payments/flutterwave_url_response.dart';
|
||||
import 'package:active_ecommerce_seller_app/data_model/payments/iyzico_payment_success_response.dart';
|
||||
import 'package:active_ecommerce_seller_app/data_model/payments/nagad_begin_response.dart';
|
||||
import 'package:active_ecommerce_seller_app/data_model/payments/nagad_payment_process_response.dart';
|
||||
import 'package:active_ecommerce_seller_app/data_model/payments/paypal_url_response.dart';
|
||||
import 'package:active_ecommerce_seller_app/data_model/payments/paystack_payment_success_response.dart';
|
||||
import 'package:active_ecommerce_seller_app/data_model/payments/razorpay_payment_success_response.dart';
|
||||
import 'package:active_ecommerce_seller_app/data_model/payments/sslcommerz_begin_response.dart';
|
||||
import 'package:active_ecommerce_seller_app/helpers/shared_value_helper.dart';
|
||||
import 'package:http/http.dart' as http;
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'dart:convert';
|
||||
|
||||
|
||||
class PaymentRepository {
|
||||
Future<List<PaymentTypeResponse>> getPaymentResponseList({mode = "", list = "both"})async{
|
||||
Uri url = Uri.parse(
|
||||
"${AppConfig.BASE_URL}/payment-types?mode=${mode}&list=${list}");
|
||||
print(url.toString()+ " url.toString()");
|
||||
final response = await http.get(url, headers: {
|
||||
"App-Language": app_language.$!,
|
||||
"Authorization": "Bearer ${access_token.$}"
|
||||
});
|
||||
|
||||
|
||||
// print("payment-types"+response.body.toString());
|
||||
|
||||
return paymentTypeResponseFromJson(response.body);
|
||||
}
|
||||
|
||||
Future<PaypalUrlResponse> getPaypalUrlResponse(@required String payment_type,
|
||||
@required int combined_order_id,@required var package_id, @required double amount) async {
|
||||
Uri url = Uri.parse(
|
||||
"${AppConfig.BASE_URL}/paypal/payment/url?payment_type=${payment_type}&combined_order_id=${combined_order_id}&amount=${amount}&user_id=${seller_id.$}&package_id=${package_id}",
|
||||
);
|
||||
final response = await http.get(url, headers: {
|
||||
"App-Language": app_language.$!,
|
||||
});
|
||||
|
||||
return paypalUrlResponseFromJson(response.body);
|
||||
}
|
||||
|
||||
Future<FlutterwaveUrlResponse> getFlutterwaveUrlResponse(
|
||||
@required String payment_type,
|
||||
@required int combined_order_id,
|
||||
@required var package_id,
|
||||
@required double amount) async {
|
||||
Uri url = Uri.parse(
|
||||
"${AppConfig.BASE_URL}/flutterwave/payment/url?payment_type=${payment_type}&combined_order_id=${combined_order_id}&amount=${amount}&user_id=${seller_id.$}&package_id=${package_id}");
|
||||
|
||||
final response = await http.get(url, headers: {
|
||||
"App-Language": app_language.$!,
|
||||
});
|
||||
|
||||
//print(url);
|
||||
//print(response.body.toString());
|
||||
return flutterwaveUrlResponseFromJson(response.body);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Future<RazorpayPaymentSuccessResponse> getRazorpayPaymentSuccessResponse(
|
||||
@required payment_type,
|
||||
@required double amount,
|
||||
@required int combined_order_id,
|
||||
@required String? payment_details) async {
|
||||
var post_body = jsonEncode({
|
||||
"user_id": "${seller_id.$}",
|
||||
"payment_type": "${payment_type}",
|
||||
"combined_order_id": "${combined_order_id}",
|
||||
"amount": "${amount}",
|
||||
"payment_details": "${payment_details}"
|
||||
});
|
||||
|
||||
print(post_body.toString());
|
||||
|
||||
Uri url = Uri.parse("${AppConfig.BASE_URL}/razorpay/success");
|
||||
|
||||
final response = await http.post(url,
|
||||
headers: {
|
||||
"Content-Type": "application/json",
|
||||
"Authorization": "Bearer ${access_token.$}",
|
||||
"App-Language": app_language.$!
|
||||
},
|
||||
body: post_body);
|
||||
|
||||
//print(response.body.toString());
|
||||
return razorpayPaymentSuccessResponseFromJson(response.body);
|
||||
}
|
||||
|
||||
Future<PaystackPaymentSuccessResponse> getPaystackPaymentSuccessResponse(
|
||||
@required payment_type,
|
||||
@required double amount,
|
||||
@required int combined_order_id,
|
||||
@required String? payment_details) async {
|
||||
var post_body = jsonEncode({
|
||||
"user_id": "${seller_id.$}",
|
||||
"payment_type": "${payment_type}",
|
||||
"combined_order_id": "${combined_order_id}",
|
||||
"amount": "${amount}",
|
||||
"payment_details": "${payment_details}"
|
||||
});
|
||||
|
||||
Uri url = Uri.parse("${AppConfig.BASE_URL}/paystack/success");
|
||||
final response = await http.post(url,
|
||||
headers: {
|
||||
"Content-Type": "application/json",
|
||||
"Authorization": "Bearer ${access_token.$}"
|
||||
},
|
||||
body: post_body);
|
||||
|
||||
//print(response.body.toString());
|
||||
return paystackPaymentSuccessResponseFromJson(response.body);
|
||||
}
|
||||
|
||||
Future<IyzicoPaymentSuccessResponse> getIyzicoPaymentSuccessResponse(
|
||||
@required payment_type,
|
||||
@required double amount,
|
||||
@required int combined_order_id,
|
||||
@required String? payment_details) async {
|
||||
var post_body = jsonEncode({
|
||||
"user_id": "${seller_id.$}",
|
||||
"payment_type": "${payment_type}",
|
||||
"combined_order_id": "${combined_order_id}",
|
||||
"amount": "${amount}",
|
||||
"payment_details": "${payment_details}"
|
||||
});
|
||||
|
||||
Uri url = Uri.parse("${AppConfig.BASE_URL}/paystack/success");
|
||||
final response = await http.post(url,
|
||||
headers: {
|
||||
"Content-Type": "application/json",
|
||||
"Authorization": "Bearer ${access_token.$}"
|
||||
},
|
||||
body: post_body);
|
||||
|
||||
//print(response.body.toString());
|
||||
return iyzicoPaymentSuccessResponseFromJson(response.body);
|
||||
}
|
||||
|
||||
Future<BkashBeginResponse> getBkashBeginResponse(
|
||||
@required String payment_type,
|
||||
@required int combined_order_id,
|
||||
@required var package_id,
|
||||
@required double amount) async {
|
||||
Uri url = Uri.parse(
|
||||
"${AppConfig.BASE_URL}/bkash/begin?payment_type=${payment_type}&combined_order_id=${combined_order_id}&amount=${amount}&user_id=${seller_id.$}&package_id=${package_id}");
|
||||
|
||||
final response = await http.get(
|
||||
url,
|
||||
headers: {"Authorization": "Bearer ${access_token.$}"},
|
||||
);
|
||||
|
||||
print(response.body.toString());
|
||||
return bkashBeginResponseFromJson(response.body);
|
||||
}
|
||||
|
||||
Future<BkashPaymentProcessResponse> getBkashPaymentProcessResponse(
|
||||
{
|
||||
required payment_type,
|
||||
required double amount,
|
||||
required int combined_order_id,
|
||||
required String? payment_id,
|
||||
required String? token,
|
||||
required String? package_id,
|
||||
}) async {
|
||||
var post_body = jsonEncode({
|
||||
"user_id": "${seller_id.$}",
|
||||
"payment_type": "${payment_type}",
|
||||
"combined_order_id": "${combined_order_id}",
|
||||
"package_id": "${package_id}",
|
||||
"amount": "${amount}",
|
||||
"payment_id": "${payment_id}",
|
||||
"token": "${token}"
|
||||
});
|
||||
|
||||
Uri url = Uri.parse("${AppConfig.BASE_URL}/bkash/api/success");
|
||||
final response = await http.post(url,
|
||||
headers: {
|
||||
"Content-Type": "application/json",
|
||||
"Authorization": "Bearer ${access_token.$}",
|
||||
"App-Language": app_language.$!,
|
||||
},
|
||||
body: post_body);
|
||||
|
||||
//print(response.body.toString());
|
||||
return bkashPaymentProcessResponseFromJson(response.body);
|
||||
}
|
||||
|
||||
Future<SslcommerzBeginResponse> getSslcommerzBeginResponse(
|
||||
@required String payment_type,
|
||||
@required int combined_order_id,
|
||||
@required String package_id,
|
||||
@required double amount) async {
|
||||
Uri url = Uri.parse(
|
||||
"${AppConfig.BASE_URL}/sslcommerz/begin?payment_type=${payment_type}&combined_order_id=${combined_order_id}&amount=${amount}&user_id=${seller_id.$}&package_id=${package_id}");
|
||||
|
||||
final response = await http.get(
|
||||
url,
|
||||
headers: {
|
||||
"Authorization": "Bearer ${access_token.$}",
|
||||
"App-Language": app_language.$!
|
||||
},
|
||||
);
|
||||
|
||||
print(response.body.toString());
|
||||
return sslcommerzBeginResponseFromJson(response.body);
|
||||
}
|
||||
|
||||
Future<NagadBeginResponse> getNagadBeginResponse(
|
||||
@required String payment_type,
|
||||
@required int combined_order_id,
|
||||
@required var package_id,
|
||||
@required double amount) async {
|
||||
Uri url = Uri.parse(
|
||||
"${AppConfig.BASE_URL}/nagad/begin?payment_type=${payment_type}&combined_order_id=${combined_order_id}&amount=${amount}&user_id=${seller_id.$}&package_id=${package_id}");
|
||||
|
||||
final response = await http.get(
|
||||
url,
|
||||
headers: {
|
||||
"Authorization": "Bearer ${access_token.$}",
|
||||
"App-Language": app_language.$!
|
||||
},
|
||||
);
|
||||
|
||||
print(response.body.toString());
|
||||
return nagadBeginResponseFromJson(response.body);
|
||||
}
|
||||
|
||||
Future<NagadPaymentProcessResponse> getNagadPaymentProcessResponse(
|
||||
@required payment_type,
|
||||
@required double amount,
|
||||
@required int combined_order_id,
|
||||
@required String? payment_details) async {
|
||||
var post_body = jsonEncode({
|
||||
"user_id": "${seller_id.$}",
|
||||
"payment_type": "${payment_type}",
|
||||
"combined_order_id": "${combined_order_id}",
|
||||
"amount": "${amount}",
|
||||
"payment_details": "${payment_details}"
|
||||
});
|
||||
|
||||
Uri url = Uri.parse("${AppConfig.BASE_URL}/nagad/process");
|
||||
|
||||
final response = await http.post(url,
|
||||
headers: {
|
||||
"Content-Type": "application/json",
|
||||
"Authorization": "Bearer ${access_token.$}",
|
||||
"App-Language": app_language.$!,
|
||||
},
|
||||
body: post_body);
|
||||
|
||||
//print(response.body.toString());
|
||||
return nagadPaymentProcessResponseFromJson(response.body);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
Future<OfflinePaymentResponse> getOfflinePaymentResponse({required String amount,
|
||||
required String name,
|
||||
required String trx_id,
|
||||
required int? package_id,
|
||||
|
||||
required int? photo})async{
|
||||
|
||||
var post_body = jsonEncode({
|
||||
"package_id":package_id,
|
||||
"amount": "$amount",
|
||||
"payment_option": "Offline Payment",
|
||||
"trx_id": "$trx_id",
|
||||
"photo": "$photo",
|
||||
});
|
||||
Uri url = Uri.parse("${AppConfig.BASE_URL_WITH_PREFIX}/seller-package/offline-payment");
|
||||
print("offline payment url "+url.toString());
|
||||
print("offline payment access token "+access_token.$!);
|
||||
print("offline payment url "+post_body.toString());
|
||||
final response = await http.post(url,
|
||||
headers: {
|
||||
"Content-Type": "application/json",
|
||||
"Authorization": "Bearer ${access_token.$}",
|
||||
"App-Language": app_language.$!
|
||||
},
|
||||
body: post_body);
|
||||
|
||||
print("hello Offline wallet recharge" + response.body.toString());
|
||||
return offlinePaymentResponseFromJson(response.body);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user