import 'package:isar/isar.dart'; import 'package:json_annotation/json_annotation.dart'; part 'zip_message.g.dart'; /* { "recv": "rank", "payload": { "set_pos": { "zip": "22525", "track": { "time": "2021-03-01T12:55:51Z", "pos": { "lat": 53.595121, "long": 9.907433, "acc": 35 } } }, "reg_zip": { "id": 2, "zip": "22039" } } } */ @JsonSerializable() class ZipMessage { @JsonKey(name: "set_pos") ZipSetPos? setPos; @JsonKey(name: "req_zip") ZipReqZip? reqZip; ZipMessage(); factory ZipMessage.fromJson(Map json) => _$ZipMessageFromJson(json); Map toJson() => _$ZipMessageToJson(this); } @embedded @JsonSerializable() class ZipReqZip { late int id; late String zip; ZipReqZip(); factory ZipReqZip.fromJson(Map json) => _$ZipReqZipFromJson(json); Map toJson() => _$ZipReqZipToJson(this); } @embedded @JsonSerializable() class ZipSetPos { late String zip; ZipTrack? track; ZipSetPos(); factory ZipSetPos.fromJson(Map json) => _$ZipSetPosFromJson(json); Map toJson() => _$ZipSetPosToJson(this); } @embedded @JsonSerializable() class ZipTrack { late String time; ZipTrackPos? pos; ZipTrack(); factory ZipTrack.fromJson(Map json) => _$ZipTrackFromJson(json); Map toJson() => _$ZipTrackToJson(this); } @embedded @JsonSerializable() class ZipTrackPos { late double lat; late double long; late int acc; ZipTrackPos(); factory ZipTrackPos.fromJson(Map json) => _$ZipTrackPosFromJson(json); Map toJson() => _$ZipTrackPosToJson(this); } /* @JsonSerializable() class MessageContent { late String text; late String subj; late String time; MessageContent(); factory MessageContent.fromJson(Map json) => _$MessageContentFromJson(json); Map toJson() => _$MessageContentToJson(this); } */