From 37e8ebbe30ea323d16691cde3dacc5defca61b87 Mon Sep 17 00:00:00 2001 From: kratikpal Date: Mon, 26 Aug 2024 12:23:14 +0530 Subject: [PATCH] jason mapper bug fix --- lib/controller/home_service.dart | 1 + lib/main.dart | 2 - lib/models/user_model.dart | 30 +- .../controller/auth_service.dart | 12 +- lib/utils/common_api_service.dart | 6 +- pubspec.lock | 312 ------------------ pubspec.yaml | 1 - 7 files changed, 34 insertions(+), 330 deletions(-) diff --git a/lib/controller/home_service.dart b/lib/controller/home_service.dart index bad77e7..332ca60 100644 --- a/lib/controller/home_service.dart +++ b/lib/controller/home_service.dart @@ -8,6 +8,7 @@ class HomeService { final response = await commonApiService( method: "GET", url: "/api/territorymanager/my-profile", + fromJson: (json) => UserModel.fromJson(json), ); return response; diff --git a/lib/main.dart b/lib/main.dart index 5ac6667..92066bc 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,10 +1,8 @@ import 'package:cheminova/screens/splash_screen.dart'; import 'package:flutter/material.dart'; import 'package:get/get.dart'; -import 'main.mapper.g.dart' show initializeJsonMapper; void main() { - initializeJsonMapper(); runApp(const MyApp()); } diff --git a/lib/models/user_model.dart b/lib/models/user_model.dart index 1cf562c..a4e5357 100644 --- a/lib/models/user_model.dart +++ b/lib/models/user_model.dart @@ -1,16 +1,8 @@ -import 'package:dart_json_mapper/dart_json_mapper.dart'; - -@jsonSerializable class UserModel { - @JsonProperty(name: '_id') String id; - @JsonProperty(name: 'name') String name; - @JsonProperty(name: 'uniqueId') String uniqueId; - @JsonProperty(name: 'email') String email; - @JsonProperty(name: 'isVerified') bool isVerified; UserModel({ @@ -20,4 +12,26 @@ class UserModel { required this.email, required this.isVerified, }); + + // Factory constructor to create an instance of UserModel from a JSON map + factory UserModel.fromJson(Map json) { + return UserModel( + id: json['_id'] as String, + name: json['name'] as String, + uniqueId: json['uniqueId'] as String, + email: json['email'] as String, + isVerified: json['isVerified'] as bool, + ); + } + + // Method to convert an instance of UserModel to a JSON map + Map toJson() { + return { + '_id': id, + 'name': name, + 'uniqueId': uniqueId, + 'email': email, + 'isVerified': isVerified, + }; + } } diff --git a/lib/screens/authentication/controller/auth_service.dart b/lib/screens/authentication/controller/auth_service.dart index 282208d..49853f0 100644 --- a/lib/screens/authentication/controller/auth_service.dart +++ b/lib/screens/authentication/controller/auth_service.dart @@ -3,13 +3,17 @@ import 'package:cheminova/utils/show_snackbar.dart'; class AuthService { Future?> login(Map data) async { - try{ + try { final response = await commonApiService>( - url: '/api/territorymanager/login', method: 'POST', body: data); + url: '/api/territorymanager/login', + method: 'POST', + body: data, + fromJson: (json) => json, // Simply return the JSON map as is + ); return response; - }catch(e){ + } catch (e) { showSnackbar(e.toString()); } return null; } -} \ No newline at end of file +} diff --git a/lib/utils/common_api_service.dart b/lib/utils/common_api_service.dart index d0490ec..4c9dd07 100644 --- a/lib/utils/common_api_service.dart +++ b/lib/utils/common_api_service.dart @@ -2,7 +2,6 @@ import 'dart:io'; import 'package:cheminova/utils/constants.dart'; import 'package:cheminova/utils/show_snackbar.dart'; -import 'package:dart_json_mapper/dart_json_mapper.dart'; import 'package:dio/dio.dart'; import 'package:shared_preferences/shared_preferences.dart'; @@ -12,6 +11,7 @@ Future commonApiService({ Map body = const {}, File? imageFile, bool isformData = true, + required BodyType Function(Map) fromJson, }) async { try { Dio dio = Dio(); @@ -66,10 +66,10 @@ Future commonApiService({ } if (url == "/api/territorymanager/my-profile") { - return JsonMapper.deserialize(response.data['myData']); + return fromJson(response.data['myData']); } - return JsonMapper.deserialize(response.data); + return fromJson(response.data); } on DioException catch (e) { print("dio exception $url ${e.response?.data}}"); print("dio exception details: ${e.message} ${e.response?.statusCode}"); diff --git a/pubspec.lock b/pubspec.lock index 9957deb..3b6069e 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -1,22 +1,6 @@ # Generated by pub # See https://dart.dev/tools/pub/glossary#lockfile packages: - _fe_analyzer_shared: - dependency: transitive - description: - name: _fe_analyzer_shared - sha256: "0b2f2bd91ba804e53a61d757b986f89f1f9eaed5b11e4b2f5a2468d86d6c9fc7" - url: "https://pub.dev" - source: hosted - version: "67.0.0" - analyzer: - dependency: transitive - description: - name: analyzer - sha256: "37577842a27e4338429a1cbc32679d508836510b056f1eedf0c8d20e39c1383d" - url: "https://pub.dev" - source: hosted - version: "6.4.1" args: dependency: transitive description: @@ -41,70 +25,6 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.1" - build: - dependency: transitive - description: - name: build - sha256: "80184af8b6cb3e5c1c4ec6d8544d27711700bc3e6d2efad04238c7b5290889f0" - url: "https://pub.dev" - source: hosted - version: "2.4.1" - build_config: - dependency: transitive - description: - name: build_config - sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1 - url: "https://pub.dev" - source: hosted - version: "1.1.1" - build_daemon: - dependency: transitive - description: - name: build_daemon - sha256: "79b2aef6ac2ed00046867ed354c88778c9c0f029df8a20fe10b5436826721ef9" - url: "https://pub.dev" - source: hosted - version: "4.0.2" - build_resolvers: - dependency: transitive - description: - name: build_resolvers - sha256: "339086358431fa15d7eca8b6a36e5d783728cf025e559b834f4609a1fcfb7b0a" - url: "https://pub.dev" - source: hosted - version: "2.4.2" - build_runner: - dependency: transitive - description: - name: build_runner - sha256: "644dc98a0f179b872f612d3eb627924b578897c629788e858157fa5e704ca0c7" - url: "https://pub.dev" - source: hosted - version: "2.4.11" - build_runner_core: - dependency: transitive - description: - name: build_runner_core - sha256: e3c79f69a64bdfcd8a776a3c28db4eb6e3fb5356d013ae5eb2e52007706d5dbe - url: "https://pub.dev" - source: hosted - version: "7.3.1" - built_collection: - dependency: transitive - description: - name: built_collection - sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" - url: "https://pub.dev" - source: hosted - version: "5.1.1" - built_value: - dependency: transitive - description: - name: built_value - sha256: c7913a9737ee4007efedaffc968c049fd0f3d0e49109e778edc10de9426005cb - url: "https://pub.dev" - source: hosted - version: "8.9.2" characters: dependency: transitive description: @@ -113,14 +33,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.3.0" - checked_yaml: - dependency: transitive - description: - name: checked_yaml - sha256: feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff - url: "https://pub.dev" - source: hosted - version: "2.0.3" clock: dependency: transitive description: @@ -129,14 +41,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.1.1" - code_builder: - dependency: transitive - description: - name: code_builder - sha256: f692079e25e7869c14132d39f223f8eec9830eb76131925143b2129c4bb01b37 - url: "https://pub.dev" - source: hosted - version: "4.10.0" collection: dependency: transitive description: @@ -145,14 +49,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.18.0" - convert: - dependency: transitive - description: - name: convert - sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592" - url: "https://pub.dev" - source: hosted - version: "3.1.1" crypto: dependency: transitive description: @@ -169,22 +65,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.0.8" - dart_json_mapper: - dependency: "direct main" - description: - name: dart_json_mapper - sha256: fe6033901157b77e217688b995e1090d37bc38dddb288ca54f217efa5dffed85 - url: "https://pub.dev" - source: hosted - version: "2.2.12+1" - dart_style: - dependency: transitive - description: - name: dart_style - sha256: "99e066ce75c89d6b29903d788a7bb9369cf754f7b24bf70bf4b6d6d6b26853b9" - url: "https://pub.dev" - source: hosted - version: "2.3.6" dio: dependency: "direct main" description: @@ -225,14 +105,6 @@ packages: url: "https://pub.dev" source: hosted version: "7.0.0" - fixnum: - dependency: transitive - description: - name: fixnum - sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1" - url: "https://pub.dev" - source: hosted - version: "1.1.0" flutter: dependency: "direct main" description: flutter @@ -264,14 +136,6 @@ packages: description: flutter source: sdk version: "0.0.0" - frontend_server_client: - dependency: transitive - description: - name: frontend_server_client - sha256: f64a0333a82f30b0cca061bc3d143813a486dc086b574bfb233b7c1372427694 - url: "https://pub.dev" - source: hosted - version: "4.0.0" get: dependency: "direct main" description: @@ -280,14 +144,6 @@ packages: url: "https://pub.dev" source: hosted version: "4.6.6" - glob: - dependency: transitive - description: - name: glob - sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63" - url: "https://pub.dev" - source: hosted - version: "2.1.2" google_fonts: dependency: "direct main" description: @@ -296,14 +152,6 @@ packages: url: "https://pub.dev" source: hosted version: "6.2.1" - graphs: - dependency: transitive - description: - name: graphs - sha256: "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0" - url: "https://pub.dev" - source: hosted - version: "2.3.2" http: dependency: "direct main" description: @@ -312,14 +160,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.2.2" - http_multi_server: - dependency: transitive - description: - name: http_multi_server - sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b" - url: "https://pub.dev" - source: hosted - version: "3.2.1" http_parser: dependency: transitive description: @@ -328,38 +168,6 @@ packages: url: "https://pub.dev" source: hosted version: "4.0.2" - intl: - dependency: transitive - description: - name: intl - sha256: d6f56758b7d3014a48af9701c085700aac781a92a87a62b1333b46d8879661cf - url: "https://pub.dev" - source: hosted - version: "0.19.0" - io: - dependency: transitive - description: - name: io - sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e" - url: "https://pub.dev" - source: hosted - version: "1.0.4" - js: - dependency: transitive - description: - name: js - sha256: c1b2e9b5ea78c45e1a0788d29606ba27dc5f71f019f32ca5140f61ef071838cf - url: "https://pub.dev" - source: hosted - version: "0.7.1" - json_annotation: - dependency: transitive - description: - name: json_annotation - sha256: "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1" - url: "https://pub.dev" - source: hosted - version: "4.9.0" leak_tracker: dependency: transitive description: @@ -392,14 +200,6 @@ packages: url: "https://pub.dev" source: hosted version: "3.0.0" - logging: - dependency: transitive - description: - name: logging - sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340" - url: "https://pub.dev" - source: hosted - version: "1.2.0" matcher: dependency: transitive description: @@ -424,22 +224,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.12.0" - mime: - dependency: transitive - description: - name: mime - sha256: "2e123074287cc9fd6c09de8336dae606d1ddb88d9ac47358826db698c176a1f2" - url: "https://pub.dev" - source: hosted - version: "1.0.5" - package_config: - dependency: transitive - description: - name: package_config - sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd" - url: "https://pub.dev" - source: hosted - version: "2.1.0" path: dependency: transitive description: @@ -536,38 +320,6 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.8" - pool: - dependency: transitive - description: - name: pool - sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a" - url: "https://pub.dev" - source: hosted - version: "1.5.1" - pub_semver: - dependency: transitive - description: - name: pub_semver - sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c" - url: "https://pub.dev" - source: hosted - version: "2.1.4" - pubspec_parse: - dependency: transitive - description: - name: pubspec_parse - sha256: c799b721d79eb6ee6fa56f00c04b472dcd44a30d258fac2174a6ec57302678f8 - url: "https://pub.dev" - source: hosted - version: "1.3.0" - reflectable: - dependency: transitive - description: - name: reflectable - sha256: cdc1a278a2e9769abafaf9ba54ce1fd3432b2a38360e14b87ea6344f715340de - url: "https://pub.dev" - source: hosted - version: "4.0.6" shared_preferences: dependency: "direct main" description: @@ -624,22 +376,6 @@ packages: url: "https://pub.dev" source: hosted version: "2.3.2" - shelf: - dependency: transitive - description: - name: shelf - sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4 - url: "https://pub.dev" - source: hosted - version: "1.4.1" - shelf_web_socket: - dependency: transitive - description: - name: shelf_web_socket - sha256: "073c147238594ecd0d193f3456a5fe91c4b0abbcc68bf5cd95b36c4e194ac611" - url: "https://pub.dev" - source: hosted - version: "2.0.0" sky_engine: dependency: transitive description: flutter @@ -669,14 +405,6 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.2" - stream_transform: - dependency: transitive - description: - name: stream_transform - sha256: "14a00e794c7c11aa145a170587321aedce29769c08d7f58b1d141da75e3b1c6f" - url: "https://pub.dev" - source: hosted - version: "2.1.0" string_scanner: dependency: transitive description: @@ -701,14 +429,6 @@ packages: url: "https://pub.dev" source: hosted version: "0.7.0" - timing: - dependency: transitive - description: - name: timing - sha256: "70a3b636575d4163c477e6de42f247a23b315ae20e86442bebe32d3cabf61c32" - url: "https://pub.dev" - source: hosted - version: "1.0.1" typed_data: dependency: transitive description: @@ -757,14 +477,6 @@ packages: url: "https://pub.dev" source: hosted version: "14.2.1" - watcher: - dependency: transitive - description: - name: watcher - sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8" - url: "https://pub.dev" - source: hosted - version: "1.1.0" web: dependency: transitive description: @@ -773,22 +485,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.0.0" - web_socket: - dependency: transitive - description: - name: web_socket - sha256: "3c12d96c0c9a4eec095246debcea7b86c0324f22df69893d538fcc6f1b8cce83" - url: "https://pub.dev" - source: hosted - version: "0.1.6" - web_socket_channel: - dependency: transitive - description: - name: web_socket_channel - sha256: "9f187088ed104edd8662ca07af4b124465893caf063ba29758f97af57e61da8f" - url: "https://pub.dev" - source: hosted - version: "3.0.1" xdg_directories: dependency: transitive description: @@ -805,14 +501,6 @@ packages: url: "https://pub.dev" source: hosted version: "6.5.0" - yaml: - dependency: transitive - description: - name: yaml - sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5" - url: "https://pub.dev" - source: hosted - version: "3.1.2" sdks: dart: ">=3.4.1 <4.0.0" flutter: ">=3.22.0" diff --git a/pubspec.yaml b/pubspec.yaml index 094df4b..fa2758a 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -40,7 +40,6 @@ dependencies: pin_code_fields: ^8.0.1 dio: ^5.5.0+1 http: ^1.2.2 - dart_json_mapper: ^2.2.12+1 shared_preferences: ^2.2.3 dev_dependencies: