import 'dart:convert'; import 'package:dio/dio.dart'; import 'package:tm_app/core/utils/logger.dart'; import 'package:tm_app/core/utils/result.dart'; import 'package:tm_app/data/services/mock_data/tender_detail_mock.dart'; import 'package:tm_app/data/services/model/tender_detail_response/tender_detail_response_model.dart'; import 'package:tm_app/data/services/network_manager.dart'; class TenderDetailService { TenderDetailService({required NetworkManager networkManager}) : _networkManager = networkManager; final NetworkManager _networkManager; Future> getTenderDetail({required String id}) async { try { await Future.delayed(Duration(seconds: 2)); // شبیه سازی لود appLogger.info('get tender detail success'); return Result.ok( TenderDetailResponseModel.fromJson( jsonDecode(tenderDetailMockData)['data'], ), ); } on DioException catch (e) { appLogger.error('get tender detail failed: $e'); return Result.error(e); } on Exception catch (e, stackTrace) { appLogger.error('get tender detail failed: $e', stackTrace: stackTrace); return Result.error(Exception(e)); } } }