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 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()}'); // } }