You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
76 lines
1.6 KiB
76 lines
1.6 KiB
/// 登录请求模型 |
|
class LoginRequest { |
|
final String username; |
|
final String password; |
|
final String wechatJsCode; |
|
|
|
LoginRequest({ |
|
required this.username, |
|
required this.password, |
|
this.wechatJsCode = "", |
|
}); |
|
|
|
Map<String, dynamic> toJson() { |
|
return { |
|
'username': username, |
|
'password': password, |
|
'wechatJsCode': wechatJsCode, |
|
}; |
|
} |
|
|
|
// 从 Map 创建 LoginRequest 对象 |
|
factory LoginRequest.fromJson(Map<String, dynamic> json) { |
|
return LoginRequest( |
|
username: json['username'] as String, |
|
password: json['password'] as String, |
|
wechatJsCode: json['wechatJsCode'] as String, |
|
); |
|
} |
|
} |
|
|
|
/// 登录响应模型 |
|
class LoginResponse { |
|
final String token; |
|
final String refreshToken; |
|
final int expires; |
|
final String name; |
|
|
|
LoginResponse({ |
|
required this.token, |
|
required this.refreshToken, |
|
required this.expires, |
|
required this.name, |
|
}); |
|
|
|
factory LoginResponse.fromJson(Map<String, dynamic> json) { |
|
return LoginResponse( |
|
token: json['token'] ?? '', |
|
refreshToken: json['refresh_token'] ?? '', |
|
expires: json['expires'] ?? '', |
|
name: json['name'] ?? '', |
|
); |
|
} |
|
} |
|
|
|
class Profile { |
|
final String id; |
|
final String name; |
|
final String? email; |
|
final String? signatureImage; |
|
|
|
Profile({ |
|
required this.id, |
|
required this.name, |
|
this.email, |
|
this.signatureImage, |
|
}); |
|
|
|
factory Profile.fromJson(Map<String, dynamic> json) { |
|
return Profile( |
|
id: json['id'] as String, |
|
name: json['name'] as String, |
|
email: json['email'] as String?, |
|
signatureImage: json['signatureImage'] as String?, |
|
); |
|
} |
|
}
|
|
|