自定义线路与线路优化
This commit is contained in:
@@ -45,12 +45,7 @@ class ServerService {
|
||||
} catch (e) {
|
||||
AppLogger.d('加载服务器列表失败: $e');
|
||||
// 加载失败时使用默认服务器
|
||||
_servers = [
|
||||
ServerModel(
|
||||
label: _defaultLabel,
|
||||
baseUrl: _defaultBaseUrl,
|
||||
),
|
||||
];
|
||||
_servers = [ServerModel(label: _defaultLabel, baseUrl: _defaultBaseUrl)];
|
||||
_currentServer = _servers.first;
|
||||
}
|
||||
}
|
||||
@@ -65,15 +60,10 @@ class ServerService {
|
||||
}
|
||||
}
|
||||
|
||||
_currentServer = (savedDefaultServer ??
|
||||
ServerModel(
|
||||
label: _defaultLabel,
|
||||
baseUrl: _defaultBaseUrl,
|
||||
))
|
||||
.copyWith(
|
||||
label: _defaultLabel,
|
||||
baseUrl: _defaultBaseUrl,
|
||||
);
|
||||
_currentServer =
|
||||
(savedDefaultServer ??
|
||||
ServerModel(label: _defaultLabel, baseUrl: _defaultBaseUrl))
|
||||
.copyWith(label: _defaultLabel, baseUrl: _defaultBaseUrl);
|
||||
|
||||
_servers = [_currentServer!];
|
||||
}
|
||||
@@ -91,7 +81,9 @@ class ServerService {
|
||||
/// 保存上次选中的服务器
|
||||
Future<void> _saveLastSelected() async {
|
||||
if (_currentServer != null) {
|
||||
await StorageService.instance.setLastSelectedServerLabel(_currentServer!.label);
|
||||
await StorageService.instance.setLastSelectedServerLabel(
|
||||
_currentServer!.label,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -125,16 +117,21 @@ class ServerService {
|
||||
String? password,
|
||||
UserModel? user,
|
||||
bool? rememberMe,
|
||||
bool clearEmail = false,
|
||||
bool clearPassword = false,
|
||||
bool clearUser = false,
|
||||
}) async {
|
||||
if (_currentServer == null) {
|
||||
throw Exception('没有选中的服务器');
|
||||
}
|
||||
|
||||
_currentServer = _currentServer!.copyWith(
|
||||
email: email,
|
||||
password: password,
|
||||
user: user,
|
||||
_currentServer = ServerModel(
|
||||
label: _currentServer!.label,
|
||||
baseUrl: _currentServer!.baseUrl,
|
||||
rememberMe: rememberMe ?? _currentServer!.rememberMe,
|
||||
email: clearEmail ? null : (email ?? _currentServer!.email),
|
||||
password: clearPassword ? null : (password ?? _currentServer!.password),
|
||||
user: clearUser ? null : (user ?? _currentServer!.user),
|
||||
);
|
||||
|
||||
// 更新列表中的引用
|
||||
@@ -152,17 +149,15 @@ class ServerService {
|
||||
email: null,
|
||||
password: null,
|
||||
user: null,
|
||||
clearEmail: true,
|
||||
clearPassword: true,
|
||||
clearUser: true,
|
||||
);
|
||||
}
|
||||
|
||||
/// 重置为默认服务器列表
|
||||
Future<void> resetToDefault() async {
|
||||
_servers = [
|
||||
ServerModel(
|
||||
label: _defaultLabel,
|
||||
baseUrl: _defaultBaseUrl,
|
||||
),
|
||||
];
|
||||
_servers = [ServerModel(label: _defaultLabel, baseUrl: _defaultBaseUrl)];
|
||||
_currentServer = _servers.first;
|
||||
await _saveServers();
|
||||
await _saveLastSelected();
|
||||
|
||||
Reference in New Issue
Block a user