feat: bugfix

This commit is contained in:
2025-11-27 22:05:44 -08:00
parent 83e742a9dc
commit adcde623c7
10 changed files with 65 additions and 48 deletions
@@ -63,6 +63,7 @@ class KRSiteInfo {
final String customHtml;
final String customData;
final String crispId;
final String deviceLimit;
KRSiteInfo({
required this.host,
@@ -73,10 +74,12 @@ class KRSiteInfo {
required this.customHtml,
required this.customData,
required this.crispId,
required this.deviceLimit,
});
factory KRSiteInfo.fromJson(Map<String, dynamic> json) {
String crispId = '0';
String deviceLimit = '0';
// 尝试解析 custom_data 中的 kr_website_id
try {
@@ -89,6 +92,16 @@ class KRSiteInfo {
// 解析失败时使用默认值
}
// 尝试解析 custom_data 中的 deviceLimit
try {
final customDataStr = json['custom_data'] ?? '';
if (customDataStr.isNotEmpty) {
final customDataJson = jsonDecode(customDataStr) as Map<String, dynamic>;
deviceLimit = (customDataJson['deviceLimit'] ?? 0).toString();
}
} catch (e) {
// 解析失败时使用默认值
}
return KRSiteInfo(
host: json['host'] ?? '',
siteName: json['site_name'] ?? '',
@@ -98,6 +111,7 @@ class KRSiteInfo {
customHtml: json['custom_html'] ?? '',
customData: json['custom_data'] ?? '',
crispId: crispId,
deviceLimit: deviceLimit,
);
}