语言的本地缓存
This commit is contained in:
@@ -235,16 +235,7 @@ class MyUtils {
|
||||
return '$dateStr $weekStr';
|
||||
}
|
||||
|
||||
// static String getFormatEnglishDate(int millis) {
|
||||
// final date = DateTime.fromMillisecondsSinceEpoch(millis);
|
||||
// const weekdays = ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'];
|
||||
// final weekday = weekdays[date.weekday - 1];
|
||||
// final formattedDate =
|
||||
// '${date.year}/${date.month.toString().padLeft(2, '0')}/${date.day.toString().padLeft(2, '0')}';
|
||||
// return '$weekday, $formattedDate';
|
||||
// // return '$formattedDate';
|
||||
// }
|
||||
static String getFormatEnglishDate(int millis) {
|
||||
static String getFormatEnglishDate(int millis, {bool showWeekday = true}) {
|
||||
final date = DateTime.fromMillisecondsSinceEpoch(millis);
|
||||
|
||||
// 英文星期简写
|
||||
@@ -254,7 +245,7 @@ static String getFormatEnglishDate(int millis) {
|
||||
// 格式化年月日:2025/07/21
|
||||
final formattedDate =
|
||||
'${date.year}/${date.month.toString().padLeft(2, '0')}/${date.day.toString().padLeft(2, '0')}';
|
||||
|
||||
if (!showWeekday) return formattedDate;
|
||||
return '$weekday, $formattedDate';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -111,6 +111,6 @@ class AppLanguage extends Translations {
|
||||
}
|
||||
|
||||
bool isChinese() {
|
||||
return _currentLanguageCode == "zh_CN";
|
||||
return _currentLanguageCode == "zh_CN"||_currentLanguageCode == "zh_TW";
|
||||
}
|
||||
}
|
||||
|
||||
@@ -88,7 +88,8 @@ Future<void> main() async {
|
||||
// final selectapp = "th";
|
||||
final selectapp = "mht";
|
||||
// await AppLanguage().loadLanguage("en_US");
|
||||
await AppLanguage().loadLanguage("zh_CN", project: selectapp);
|
||||
|
||||
await loadLanguageSetting(selectapp);
|
||||
await initLanguageSetting();
|
||||
WidgetsFlutterBinding.ensureInitialized();
|
||||
|
||||
@@ -98,6 +99,7 @@ Future<void> main() async {
|
||||
await initLocalStorage();
|
||||
initEasyDartModule();
|
||||
await initLogin();
|
||||
|
||||
await messageStatus();
|
||||
|
||||
startMessagePolling(selectapp);
|
||||
@@ -117,6 +119,14 @@ Future<void> main() async {
|
||||
});
|
||||
}
|
||||
|
||||
loadLanguageSetting(String selectapp) async {
|
||||
await ef.kvdb.openDir("mht");
|
||||
String? language = await ef.kvdb.read("mht/language");
|
||||
|
||||
language ??= 'zh_CN';
|
||||
await AppLanguage().loadLanguage(language, project: selectapp);
|
||||
}
|
||||
|
||||
void initwebService() {
|
||||
ef.kvRoot.appmanger = MiniAppManager(assetsfilePath: 'assets/file.json');
|
||||
ef.kvRoot.appmanger.register(["mhtControl"]);
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import 'package:ef/ef.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutterflow_ui/flutterflow_ui.dart';
|
||||
import 'package:get_storage/get_storage.dart';
|
||||
import 'package:vbvs_app/common/color/appConstants.dart';
|
||||
import 'package:vbvs_app/common/util/FitTool.dart';
|
||||
import 'package:vbvs_app/common/util/MyUtils.dart';
|
||||
@@ -136,6 +137,15 @@ class _LanguagePageState extends State<LanguagePage> {
|
||||
.personnelList.value;
|
||||
deviceController.getHomeSleeps(
|
||||
list[0]["mac"], context);
|
||||
|
||||
try {
|
||||
// ef.kv.set("language",
|
||||
// language.language_code);
|
||||
ef.kvdb.write("mht/language",
|
||||
language.language_code);
|
||||
} catch (e) {
|
||||
print(e);
|
||||
}
|
||||
},
|
||||
child: Row(
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
@@ -168,33 +178,42 @@ class _LanguagePageState extends State<LanguagePage> {
|
||||
value: language.selected ??
|
||||
false, // 根据 selected 状态显示选中或未选中
|
||||
onChanged: (value) async {
|
||||
// 保持原有的状态更改逻辑
|
||||
for (var lang
|
||||
in languageController
|
||||
.languageList) {
|
||||
lang.selected = (lang ==
|
||||
language); // 更新选中状态
|
||||
}
|
||||
// // 保持原有的状态更改逻辑
|
||||
// for (var lang
|
||||
// in languageController
|
||||
// .languageList) {
|
||||
// lang.selected = (lang ==
|
||||
// language); // 更新选中状态
|
||||
// }
|
||||
|
||||
await AppLanguage()
|
||||
.loadLanguage(
|
||||
language
|
||||
.language_code,
|
||||
project:
|
||||
"mht"); // 加载语言
|
||||
languageController
|
||||
.updateAll(); // 更新操作
|
||||
languageController
|
||||
.selectLanguage
|
||||
.value = language;
|
||||
final list =
|
||||
deviceController
|
||||
.personnelList
|
||||
.value;
|
||||
deviceController
|
||||
.getHomeSleeps(
|
||||
list[0]["mac"],
|
||||
context);
|
||||
// await AppLanguage()
|
||||
// .loadLanguage(
|
||||
// language
|
||||
// .language_code,
|
||||
// project:
|
||||
// "mht"); // 加载语言
|
||||
// languageController
|
||||
// .updateAll(); // 更新操作
|
||||
// languageController
|
||||
// .selectLanguage
|
||||
// .value = language;
|
||||
// final list =
|
||||
// deviceController
|
||||
// .personnelList
|
||||
// .value;
|
||||
// deviceController
|
||||
// .getHomeSleeps(
|
||||
// list[0]["mac"],
|
||||
// context);
|
||||
// final box = GetStorage();
|
||||
// try {
|
||||
// box.write(
|
||||
// 'language',
|
||||
// language
|
||||
// .language_code);
|
||||
// } catch (e) {
|
||||
// print(e);
|
||||
// }
|
||||
},
|
||||
),
|
||||
].divide(SizedBox(
|
||||
|
||||
@@ -442,7 +442,7 @@ class _NewSleepReportPageState extends State<NewSleepReportPage> {
|
||||
width: double.infinity,
|
||||
child: Padding(
|
||||
padding: EdgeInsetsDirectional.fromSTEB(
|
||||
0.rpx, 32.rpx, 30.rpx, 32.rpx),
|
||||
30.rpx, 32.rpx, 30.rpx, 32.rpx),
|
||||
child: getTimeWidget(),
|
||||
),
|
||||
),
|
||||
@@ -1116,7 +1116,7 @@ class _NewSleepReportPageState extends State<NewSleepReportPage> {
|
||||
selectedDate.subtract(Duration(days: selectedDate.weekday - 1));
|
||||
final endOfWeek = startOfWeek.add(const Duration(days: 6));
|
||||
displayText =
|
||||
'${MyUtils.getFormatEnglishDate(startOfWeek.millisecondsSinceEpoch)} - ${MyUtils.getFormatEnglishDate(endOfWeek.millisecondsSinceEpoch)}';
|
||||
'${MyUtils.getFormatEnglishDate(startOfWeek.millisecondsSinceEpoch, showWeekday: false)} - ${MyUtils.getFormatEnglishDate(endOfWeek.millisecondsSinceEpoch, showWeekday: false)}';
|
||||
} else if (type == 3) {
|
||||
// Monthly Report
|
||||
displayText =
|
||||
|
||||
Reference in New Issue
Block a user