pd-android-app/lib/controller/place_order_service.dart
2025-04-28 13:34:34 +05:30

49 lines
1.5 KiB
Dart

import 'dart:convert';
import 'dart:developer';
import 'package:cheminova/models/product_model.dart';
import 'package:cheminova/utils/api_urls.dart';
import 'package:dio/dio.dart';
import '../models/oder_place_model.dart';
import '../utils/app_interceptor.dart';
import '../utils/log_service.dart';
class OrderPlacedService {
//final Dio dio = Dio();
// OrderPlacedService() : _dio = Dio(BaseOptions(baseUrl: 'https://api.cnapp.co.in')) {
// _dio.interceptors.add(AuthInterceptor());
// _dio.interceptors.add(PrettyDioLogger());
// }
Future<void> placeOrder(PlacedOrderModel orderDetails, String token) async {
final dio = Dio();
dio.interceptors.add(AuthInterceptor());
//try {
// logger.w("orderjson ${jsonEncode(orderDetails.toJson())}");
final response = await dio.post(
'${ApiUrls.placedOrderUrl}', // Ensure this is your correct endpoint
data: jsonEncode(orderDetails.toJson()),
options: Options(
headers: {
'Authorization': 'Bearer $token',
'Content-Type': 'application/json',
},
),
);
//logger.w("Status code,${response.statusCode}");
if (response.statusCode != 201) {
throw Exception('Failed to place order');
}
}
// on DioException catch (e) {
// print("DioException: ${e.message}");
// throw Exception('Failed to place order: ${e.message}');
// }
// catch (e) {
// print("General Exception: ${e.toString()}");
// throw Exception('Failed to place order: ${e.toString()}');
// }
}