didvan-app/lib/models/new_statistic/exchange_model.dart

122 lines
2.4 KiB
Dart

class ExchangeContentModel {
List<ExChangeContent> contents;
int lastPage;
ExchangeContentModel({required this.contents, required this.lastPage});
factory ExchangeContentModel.fromJson(Map<String, dynamic> json) {
return ExchangeContentModel(
contents: List<ExChangeContent>.from(
json['contents'].map((x) => ExChangeContent.fromJson(x))),
lastPage: json['lastPage'],
);
}
Map<String, dynamic> toJson() {
return {
'contents': List<dynamic>.from(contents.map((x) => x.toJson())),
'lastPage': lastPage,
};
}
}
class ExChangeContent {
final int id;
final String label;
final String title;
final int type;
final bool marked;
final Data data;
ExChangeContent({
required this.id,
required this.label,
required this.title,
required this.type,
required this.marked,
required this.data,
});
factory ExChangeContent.fromJson(Map<String, dynamic> json) {
return ExChangeContent(
id: json['id'],
label: json['label'],
title: json['title'],
type: json['type'],
marked: json['marked'],
data: Data.fromJson(json['data']),
);
}
Map<String, dynamic> toJson() {
return {
'id': id,
'label': label,
'title': title,
'type': type,
'marked': marked,
'data': data.toJson(),
};
}
}
class Data {
final String p;
final String y;
final String h;
final String l;
final String d;
final double dp;
final String dt;
final String t;
final String tEn;
final String tG;
final String ts;
Data({
required this.p,
required this.h,
required this.l,
required this.y,
required this.d,
required this.dp,
required this.dt,
required this.t,
required this.tEn,
required this.tG,
required this.ts,
});
factory Data.fromJson(Map<String, dynamic> json) {
return Data(
p: json['p'],
y: json['y'],
h: json['h'],
l: json['l'],
d: json['d'],
dp: json['dp'].toDouble(), // Ensuring correct type
dt: json['dt'],
t: json['t'],
tEn: json['t_en'],
tG: json['t-g'],
ts: json['ts'],
);
}
Map<String, dynamic> toJson() {
return {
'p': p,
'h': h,
'l': l,
'y': y,
'd': d,
'dp': dp,
'dt': dt,
't': t,
't_en': tEn,
't-g': tG,
'ts': ts,
};
}
}