1
1
2
+ import 'dart:developer' ;
2
3
import 'dart:ui' ;
3
4
4
5
import 'package:adaptive_theme/adaptive_theme.dart' ;
6
+ import 'package:chat_all/db/setting_database.dart' ;
5
7
import 'package:get/get.dart' ;
6
8
7
9
class SettingPageController extends GetxController {
@@ -10,7 +12,7 @@ class SettingPageController extends GetxController {
10
12
// 语言
11
13
final language = Get .deviceLocale.obs;
12
14
// api设置
13
- final api = "https://api.mnzdna.xyz " .obs;
15
+ final api = "https://api.openai.com " .obs;
14
16
final key = "" .obs;
15
17
// 对话配置
16
18
final chatModel = "gpt-3.5-turbo" .obs;
@@ -21,10 +23,29 @@ class SettingPageController extends GetxController {
21
23
final disabledSystemPrompt = true .obs;
22
24
final topP = 0.5 .obs;
23
25
26
+ final db = SettingDatabase ();
27
+
28
+ @override
29
+ void onInit () {
30
+ themeMode.value = db.getThemeMode ();
31
+ language.value = db.getLanguage ();
32
+ api.value = db.getApi ()?? api.value;
33
+ key.value = db.getKey ()?? key.value;
34
+ chatModel.value = db.getChatModel ()?? chatModel.value;
35
+ temperature.value = db.getTemperature ()?? temperature.value;
36
+ presencePenalty.value = db.getPresencePenalty ()?? presencePenalty.value;
37
+ frequencyPenalty.value = db.getFrequencyPenalty ()?? frequencyPenalty.value;
38
+ historyLength.value = db.getHistoryLength ()?? historyLength.value;
39
+ disabledSystemPrompt.value = db.getDisabledSystemPrompt ()?? disabledSystemPrompt.value;
40
+ topP.value = db.getTopP ()?? topP.value;
41
+ setLanguage (language.value! );
42
+ super .onInit ();
43
+ }
24
44
25
45
void setLanguage (Locale locale){
26
46
language.value = locale;
27
47
Get .updateLocale (locale);
48
+ update ();
28
49
}
29
50
30
51
void reset () {
@@ -39,8 +60,23 @@ class SettingPageController extends GetxController {
39
60
40
61
@override
41
62
void onClose () {
42
- // 配置存储到数据库中
63
+ super .onClose ();
64
+ saveSettingInfo ();
65
+ }
43
66
67
+ void saveSettingInfo (){
68
+ db.saveThemeMode (themeMode.value);
69
+ db.saveLanguage (language.value! );
70
+ db.saveApi (api.value);
71
+ db.saveKey (key.value);
72
+ db.saveChatModel (chatModel.value);
73
+ db.saveTemperature (temperature.value);
74
+ db.savePresencePenalty (presencePenalty.value);
75
+ db.saveFrequencyPenalty (frequencyPenalty.value);
76
+ db.saveHistoryLength (historyLength.value);
77
+ db.saveDisabledSystemPrompt (disabledSystemPrompt.value);
78
+ db.saveTopP (topP.value);
79
+ log ("配置信息存储完成" );
44
80
}
45
81
}
46
82
0 commit comments