feat:增加网络请求

This commit is contained in:
2025-07-14 19:43:41 +08:00
parent 8a1b507166
commit 3f12b03648
10 changed files with 4030 additions and 47 deletions

80
lib/models/session.dart Normal file
View File

@@ -0,0 +1,80 @@
import 'package:json_annotation/json_annotation.dart';
part 'session.g.dart';
@JsonSerializable()
class SaTokenInfo {
String? tokenName;
String? tokenValue;
bool? isLogin;
dynamic loginId;
String? loginType;
int? tokenTimeout;
int? sessionTimeout;
int? tokenSessionTimeout;
int? tokenActiveTimeout;
String? loginDeviceType;
String? tag;
SaTokenInfo({
this.tokenName,
this.tokenValue,
this.isLogin,
this.loginId,
this.loginType,
this.tokenTimeout,
this.sessionTimeout,
this.tokenSessionTimeout,
this.tokenActiveTimeout,
this.loginDeviceType,
this.tag,
});
factory SaTokenInfo.fromJson(Map<String, dynamic> json) => _$SaTokenInfoFromJson(json);
Map<String, dynamic> toJson() => _$SaTokenInfoToJson(this);
}
@JsonSerializable()
class User {
String? username;
int? gender;
String? phoneNumber;
String? email;
DateTime? birthDate;
String? avatar;
List<String>? area;
String? address;
String? job;
List<String>? tags;
String? description;
String? id;
User({
this.id,
this.username,
this.gender,
this.phoneNumber,
this.email,
this.birthDate,
this.avatar,
this.area,
this.address,
this.job,
this.tags,
this.description,
});
factory User.fromJson(Map<String, dynamic> json) => _$UserFromJson(json);
Map<String, dynamic> toJson() => _$UserToJson(this);
}
@JsonSerializable()
class Session {
SaTokenInfo? saToken;
User? userInfo;
Session({this.saToken, this.userInfo});
factory Session.fromJson(Map<String, dynamic> json) => _$SessionFromJson(json);
Map<String, dynamic> toJson() => _$SessionToJson(this);
}

85
lib/models/session.g.dart Normal file
View File

@@ -0,0 +1,85 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'session.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
SaTokenInfo _$SaTokenInfoFromJson(Map<String, dynamic> json) => SaTokenInfo(
tokenName: json['tokenName'] as String?,
tokenValue: json['tokenValue'] as String?,
isLogin: json['isLogin'] as bool?,
loginId: json['loginId'],
loginType: json['loginType'] as String?,
tokenTimeout: (json['tokenTimeout'] as num?)?.toInt(),
sessionTimeout: (json['sessionTimeout'] as num?)?.toInt(),
tokenSessionTimeout: (json['tokenSessionTimeout'] as num?)?.toInt(),
tokenActiveTimeout: (json['tokenActiveTimeout'] as num?)?.toInt(),
loginDeviceType: json['loginDeviceType'] as String?,
tag: json['tag'] as String?,
);
Map<String, dynamic> _$SaTokenInfoToJson(SaTokenInfo instance) =>
<String, dynamic>{
'tokenName': instance.tokenName,
'tokenValue': instance.tokenValue,
'isLogin': instance.isLogin,
'loginId': instance.loginId,
'loginType': instance.loginType,
'tokenTimeout': instance.tokenTimeout,
'sessionTimeout': instance.sessionTimeout,
'tokenSessionTimeout': instance.tokenSessionTimeout,
'tokenActiveTimeout': instance.tokenActiveTimeout,
'loginDeviceType': instance.loginDeviceType,
'tag': instance.tag,
};
User _$UserFromJson(Map<String, dynamic> json) => User(
id: json['id'] as String?,
username: json['username'] as String?,
gender: (json['gender'] as num?)?.toInt(),
phoneNumber: json['phoneNumber'] as String?,
email: json['email'] as String?,
birthDate:
json['birthDate'] == null
? null
: DateTime.parse(json['birthDate'] as String),
avatar: json['avatar'] as String?,
area: (json['area'] as List<dynamic>?)?.map((e) => e as String).toList(),
address: json['address'] as String?,
job: json['job'] as String?,
tags: (json['tags'] as List<dynamic>?)?.map((e) => e as String).toList(),
description: json['description'] as String?,
);
Map<String, dynamic> _$UserToJson(User instance) => <String, dynamic>{
'username': instance.username,
'gender': instance.gender,
'phoneNumber': instance.phoneNumber,
'email': instance.email,
'birthDate': instance.birthDate?.toIso8601String(),
'avatar': instance.avatar,
'area': instance.area,
'address': instance.address,
'job': instance.job,
'tags': instance.tags,
'description': instance.description,
'id': instance.id,
};
Session _$SessionFromJson(Map<String, dynamic> json) => Session(
saToken:
json['saToken'] == null
? null
: SaTokenInfo.fromJson(json['saToken'] as Map<String, dynamic>),
userInfo:
json['userInfo'] == null
? null
: User.fromJson(json['userInfo'] as Map<String, dynamic>),
);
Map<String, dynamic> _$SessionToJson(Session instance) => <String, dynamic>{
'saToken': instance.saToken,
'userInfo': instance.userInfo,
};