更新
This commit is contained in:
BIN
assets/img/huanshuiF.png
Normal file
BIN
assets/img/huanshuiF.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 149 KiB |
@@ -44,4 +44,7 @@ class AppConstants {
|
|||||||
stringToColor("0C83A7"), // 浅蓝
|
stringToColor("0C83A7"), // 浅蓝
|
||||||
stringToColor("006FA3"), // 浅蓝
|
stringToColor("006FA3"), // 浅蓝
|
||||||
];
|
];
|
||||||
|
|
||||||
|
//系统参数
|
||||||
|
int ent_type = 1;//1.默认太和 2.欢睡
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import 'package:get/get.dart';
|
|||||||
import 'package:path/path.dart' as p;
|
import 'package:path/path.dart' as p;
|
||||||
import 'package:path_provider/path_provider.dart';
|
import 'package:path_provider/path_provider.dart';
|
||||||
import 'package:http/http.dart' as http;
|
import 'package:http/http.dart' as http;
|
||||||
|
import 'package:vbvs_app/common/color/appConstants.dart';
|
||||||
|
|
||||||
class UserPdfController extends GetxController {
|
class UserPdfController extends GetxController {
|
||||||
var localPdfPath = Rx<String?>(null);
|
var localPdfPath = Rx<String?>(null);
|
||||||
|
|||||||
@@ -358,6 +358,7 @@ class MyApp extends StatelessWidget {
|
|||||||
Get.lazyPut(() => MHTDeviceCalibrationController()),
|
Get.lazyPut(() => MHTDeviceCalibrationController()),
|
||||||
Get.lazyPut(() => SleepReportController()),
|
Get.lazyPut(() => SleepReportController()),
|
||||||
Get.lazyPut(() => CalendarController()),
|
Get.lazyPut(() => CalendarController()),
|
||||||
|
Get.put(WebviewTestController()),
|
||||||
]));
|
]));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -442,7 +442,7 @@ class _MessageSettingPageState extends State<MessageSettingPage> {
|
|||||||
],
|
],
|
||||||
),
|
),
|
||||||
Text(
|
Text(
|
||||||
"APP消息介绍".tr,
|
AppConstants().ent_type == 1? "APP消息介绍".tr:"打开“欢睡科技”APP,可以查看该设备的消息内容",
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
color: themeController.currentColor.sc4,
|
color: themeController.currentColor.sc4,
|
||||||
fontSize: AppConstants()
|
fontSize: AppConstants()
|
||||||
@@ -548,7 +548,7 @@ class _MessageSettingPageState extends State<MessageSettingPage> {
|
|||||||
],
|
],
|
||||||
),
|
),
|
||||||
Text(
|
Text(
|
||||||
"服务号消息介绍".tr,
|
AppConstants().ent_type == 1? "服务号消息介绍".tr:"无需打开“欢睡科技”APP,关注欢睡智能睡眠研究所服务号后,微信内即可接收该设备消息推送",
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
color: themeController.currentColor.sc4,
|
color: themeController.currentColor.sc4,
|
||||||
fontSize: AppConstants()
|
fontSize: AppConstants()
|
||||||
|
|||||||
@@ -152,7 +152,7 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
child: Align(
|
child: Align(
|
||||||
alignment: AlignmentDirectional(0, 0),
|
alignment: AlignmentDirectional(0, 0),
|
||||||
child: Text(
|
child: Text(
|
||||||
'登录页.欢迎使用太和e护'.tr,
|
AppConstants().ent_type == 1?'登录页.欢迎使用太和e护'.tr:"欢迎使用欢睡科技",
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontFamily: 'Inter',
|
fontFamily: 'Inter',
|
||||||
fontSize: 48.rpx,
|
fontSize: 48.rpx,
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
import 'package:ef/ef.dart';
|
import 'package:ef/ef.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:vbvs_app/common/color/appConstants.dart';
|
||||||
import 'package:vbvs_app/common/util/FitTool.dart';
|
import 'package:vbvs_app/common/util/FitTool.dart';
|
||||||
import 'package:vbvs_app/common/util/MyUtils.dart';
|
import 'package:vbvs_app/common/util/MyUtils.dart';
|
||||||
import 'package:vbvs_app/component/tool/WebViewWidget.dart';
|
import 'package:vbvs_app/component/tool/WebViewWidget.dart';
|
||||||
@@ -85,7 +86,7 @@ class _FollowPageState extends State<FollowPage> {
|
|||||||
// child: widget.webView,
|
// child: widget.webView,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
image: AssetImage('assets/img/followus.png'), // 本地图片
|
image: AssetImage(AppConstants().ent_type == 1?'assets/img/followus.png':"assets/img/huanshuiF.png"), // 本地图片
|
||||||
fit: BoxFit.cover, // 填满整个 Container
|
fit: BoxFit.cover, // 填满整个 Container
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
import 'package:ef/ef.dart';
|
import 'package:ef/ef.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:vbvs_app/common/color/appConstants.dart';
|
||||||
import 'package:vbvs_app/common/util/FitTool.dart';
|
import 'package:vbvs_app/common/util/FitTool.dart';
|
||||||
import 'package:vbvs_app/common/util/MyUtils.dart';
|
import 'package:vbvs_app/common/util/MyUtils.dart';
|
||||||
import 'package:vbvs_app/component/tool/WebViewWidget.dart';
|
import 'package:vbvs_app/component/tool/WebViewWidget.dart';
|
||||||
@@ -20,7 +21,9 @@ class _HelpPageState extends State<HelpPage> {
|
|||||||
super.initState();
|
super.initState();
|
||||||
// pdfController.loadPdf();
|
// pdfController.loadPdf();
|
||||||
widget.webView = MyWebView(
|
widget.webView = MyWebView(
|
||||||
url: "https://mp.weixin.qq.com/s/hBo0FMYrpe04I2WV6wbcxQ",
|
url: AppConstants().ent_type == 1
|
||||||
|
? "https://mp.weixin.qq.com/s/hBo0FMYrpe04I2WV6wbcxQ"
|
||||||
|
: "https://mp.weixin.qq.com/s/tOnQjYa7foFLgic-RMAb7Q",
|
||||||
onLoad: () {
|
onLoad: () {
|
||||||
print('网页载入完毕');
|
print('网页载入完毕');
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import 'package:flutter_switch/flutter_switch.dart';
|
|||||||
import 'package:vbvs_app/common/util/FitTool.dart';
|
import 'package:vbvs_app/common/util/FitTool.dart';
|
||||||
import 'package:vbvs_app/common/util/MyUtils.dart';
|
import 'package:vbvs_app/common/util/MyUtils.dart';
|
||||||
import 'package:vbvs_app/component/tool/ClickableContainer.dart';
|
import 'package:vbvs_app/component/tool/ClickableContainer.dart';
|
||||||
|
import 'package:vbvs_app/pages/mh_page/test/WebviewTestModel.dart';
|
||||||
|
|
||||||
class MattressControlPage extends StatefulWidget {
|
class MattressControlPage extends StatefulWidget {
|
||||||
const MattressControlPage({super.key});
|
const MattressControlPage({super.key});
|
||||||
@@ -62,101 +63,84 @@ class _MattressControlPageState extends State<MattressControlPage> {
|
|||||||
child: Scaffold(
|
child: Scaffold(
|
||||||
backgroundColor: Colors.transparent,
|
backgroundColor: Colors.transparent,
|
||||||
// 顶部返回 + 设备选择 + 蓝牙图标 + 设置按钮
|
// 顶部返回 + 设备选择 + 蓝牙图标 + 设置按钮
|
||||||
appBar: AppBar(
|
// appBar: AppBar(
|
||||||
backgroundColor: Colors.transparent,
|
// backgroundColor: Colors.transparent,
|
||||||
automaticallyImplyLeading: false,
|
// automaticallyImplyLeading: false,
|
||||||
titleSpacing: 0,
|
// titleSpacing: 0,
|
||||||
elevation: 0,
|
// elevation: 0,
|
||||||
title: SizedBox(
|
// title: SizedBox(
|
||||||
width: double.infinity,
|
// width: double.infinity,
|
||||||
height: 180.rpx,
|
// height: 180.rpx,
|
||||||
child: Row(
|
// child: Row(
|
||||||
mainAxisAlignment: MainAxisAlignment.start,
|
// mainAxisAlignment: MainAxisAlignment.start,
|
||||||
children: [
|
// children: [
|
||||||
SizedBox(width: 20.rpx),
|
// SizedBox(width: 20.rpx),
|
||||||
returnIconButtomNew,
|
// returnIconButtomNew,
|
||||||
SizedBox(width: 26.rpx),
|
// SizedBox(width: 26.rpx),
|
||||||
Container(
|
// Container(
|
||||||
decoration: BoxDecoration(
|
// decoration: BoxDecoration(
|
||||||
color: const Color(0xFF003058),
|
// color: Color(0xFF003058),
|
||||||
borderRadius: BorderRadius.circular(30.rpx),
|
// borderRadius: BorderRadius.circular(30.rpx),
|
||||||
),
|
// ),
|
||||||
constraints: BoxConstraints(
|
// constraints: BoxConstraints(
|
||||||
minHeight: 60.rpx,
|
// minHeight: 60.rpx,
|
||||||
maxHeight: 60.rpx,
|
// maxHeight: 60.rpx,
|
||||||
maxWidth: 260.rpx,
|
// maxWidth: 260.rpx,
|
||||||
minWidth: 260.rpx),
|
// minWidth: 260.rpx),
|
||||||
padding: EdgeInsets.symmetric(
|
// padding: EdgeInsets.symmetric(
|
||||||
horizontal: 20.rpx), // 加左右边距
|
// horizontal: 20.rpx), // 加左右边距
|
||||||
child: DropdownButton<String>(
|
// child: DropdownButton<String>(
|
||||||
value: 'Eason Chan',
|
// value: 'Eason Chan',
|
||||||
underline: const SizedBox(),
|
// underline: const SizedBox(),
|
||||||
dropdownColor: Colors.blueGrey,
|
// dropdownColor: Colors.blueGrey,
|
||||||
iconEnabledColor: Colors.white,
|
// iconEnabledColor: Colors.white,
|
||||||
icon: Icon(
|
// style: const TextStyle(color: Colors.white),
|
||||||
Icons.keyboard_arrow_down, // 最常用的向下箭头
|
// isExpanded: true,
|
||||||
color: Colors.white,
|
// items: const [
|
||||||
size: 30.rpx,
|
// DropdownMenuItem(
|
||||||
),
|
// value: 'Eason Chan',
|
||||||
style: const TextStyle(color: Colors.white),
|
// child: Text('Eason Chan'),
|
||||||
isExpanded: true,
|
// ),
|
||||||
items: const [
|
// DropdownMenuItem(
|
||||||
DropdownMenuItem(
|
// value: 'Anna',
|
||||||
value: 'Eason Chan',
|
// child: Text('Anna'),
|
||||||
child: Text('Eason Chan'),
|
// ),
|
||||||
),
|
// ],
|
||||||
DropdownMenuItem(
|
// onChanged: (_) {},
|
||||||
value: 'Anna',
|
// ),
|
||||||
child: Text('Anna'),
|
// ),
|
||||||
),
|
// ],
|
||||||
],
|
// )),
|
||||||
onChanged: (_) {},
|
// actions: [
|
||||||
),
|
// ClickableContainer(
|
||||||
),
|
// backgroundColor: Colors.transparent,
|
||||||
],
|
// highlightColor: Colors.transparent,
|
||||||
)),
|
// padding: EdgeInsets.only(right: 69.rpx),
|
||||||
actions: [
|
// onTap: () {},
|
||||||
ClickableContainer(
|
// child: Icon(
|
||||||
backgroundColor: Colors.transparent,
|
// Icons.bluetooth,
|
||||||
highlightColor: Colors.transparent,
|
// color: Colors.white,
|
||||||
padding: EdgeInsets.only(right: 69.rpx),
|
// size: 42.rpx,
|
||||||
onTap: () {},
|
// ),
|
||||||
child:
|
// ),
|
||||||
//根据data['status']判断用那个svg
|
// ClickableContainer(
|
||||||
Image.asset(
|
// backgroundColor: Colors.transparent,
|
||||||
'assets/images/active_bluetooth.png',
|
// highlightColor: Colors.transparent,
|
||||||
width: 42.rpx,
|
// padding: EdgeInsets.only(right: 38.rpx),
|
||||||
height: 42.rpx,
|
// onTap: () {
|
||||||
),
|
// Get.toNamed('/bluetoothPage', arguments: data);
|
||||||
),
|
// },
|
||||||
ClickableContainer(
|
// child: Icon(Icons.tune,
|
||||||
backgroundColor: Colors.transparent,
|
// color: Colors.white, size: 42.rpx))
|
||||||
highlightColor: Colors.transparent,
|
// ],
|
||||||
padding: EdgeInsets.only(right: 38.rpx),
|
// centerTitle: false,
|
||||||
onTap: () {
|
// ),
|
||||||
Get.toNamed('/bluetoothPage', arguments: data);
|
|
||||||
},
|
|
||||||
child: Icon(Icons.tune,
|
|
||||||
color: Colors.white, size: 42.rpx))
|
|
||||||
],
|
|
||||||
centerTitle: false,
|
|
||||||
),
|
|
||||||
body: const SafeArea(
|
|
||||||
child: Column(
|
|
||||||
mainAxisAlignment: MainAxisAlignment.center,
|
|
||||||
children: [
|
|
||||||
Center(
|
|
||||||
child: Text(
|
|
||||||
"等待引入",
|
|
||||||
style: TextStyle(
|
|
||||||
color: Colors.white,
|
|
||||||
),
|
|
||||||
))
|
|
||||||
|
|
||||||
// _buildBedImageSection(context),
|
body: SafeArea(
|
||||||
// _buildModeSelector(context),
|
child: WebviewTestView(
|
||||||
// Expanded(child: _buildControlCards(context)),
|
oncreate: (widget) {
|
||||||
],
|
return WebviewTestController();
|
||||||
|
},
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
))));
|
))));
|
||||||
|
|||||||
@@ -1,21 +1,12 @@
|
|||||||
import 'package:ef/ef.dart';
|
import 'package:ef/ef.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_svg/svg.dart';
|
|
||||||
import 'package:flutterflow_ui/flutterflow_ui.dart';
|
import 'package:flutterflow_ui/flutterflow_ui.dart';
|
||||||
import 'package:vbvs_app/common/color/appConstants.dart';
|
|
||||||
import 'package:vbvs_app/common/color/app_uri_status.dart';
|
import 'package:vbvs_app/common/color/app_uri_status.dart';
|
||||||
import 'package:vbvs_app/common/util/FitTool.dart';
|
import 'package:vbvs_app/common/util/FitTool.dart';
|
||||||
import 'package:vbvs_app/common/util/MyUtils.dart';
|
import 'package:vbvs_app/common/util/MyUtils.dart';
|
||||||
import 'package:vbvs_app/component/NullDataComponentWidget.dart';
|
|
||||||
import 'package:vbvs_app/component/tool/ClickableContainer.dart';
|
|
||||||
import 'package:vbvs_app/component/tool/TopSlideNotification.dart';
|
import 'package:vbvs_app/component/tool/TopSlideNotification.dart';
|
||||||
import 'package:vbvs_app/controller/main_bottom/global_controller.dart';
|
|
||||||
import 'package:vbvs_app/controller/user_info_controller.dart';
|
import 'package:vbvs_app/controller/user_info_controller.dart';
|
||||||
import 'package:vbvs_app/controller/weather/weather_controller.dart';
|
|
||||||
import 'package:vbvs_app/pages/mh_page/FloatingSvgIcon.dart';
|
|
||||||
import 'package:vbvs_app/pages/mh_page/homepage/component/HomeDeviceWidget.dart';
|
|
||||||
import 'package:vbvs_app/pages/mh_page/homepage/controller/mht_home_controller.dart';
|
import 'package:vbvs_app/pages/mh_page/homepage/controller/mht_home_controller.dart';
|
||||||
import 'package:vbvs_app/pages/sleep_report/mht_new_sleep_report_page.dart';
|
|
||||||
import 'package:vbvs_app/pages/sleep_report/new_sleep_report_page.dart';
|
import 'package:vbvs_app/pages/sleep_report/new_sleep_report_page.dart';
|
||||||
|
|
||||||
class MhtSleepReportPage extends StatefulWidget {
|
class MhtSleepReportPage extends StatefulWidget {
|
||||||
|
|||||||
@@ -568,8 +568,8 @@ class _SettingPageState extends State<SettingPage> {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
Text(
|
Text(
|
||||||
'Copyright © 202-2025 嘉兴太和信息技术有限责任公司 版权所有'
|
AppConstants().ent_type == 1? 'Copyright © 202-2025 嘉兴太和信息技术有限责任公司 版权所有'
|
||||||
.tr,
|
.tr:"Copyright © 202-2025 杭州欢睡科技有限公司 版权所有",
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
color: themeController.currentColor.sc4,
|
color: themeController.currentColor.sc4,
|
||||||
fontFamily: 'Inter',
|
fontFamily: 'Inter',
|
||||||
|
|||||||
@@ -3,6 +3,9 @@ import 'package:ef/ef.dart';
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:easyweb/base/minisdk.dart';
|
import 'package:easyweb/base/minisdk.dart';
|
||||||
import 'package:easydevice/easydevice.dart';
|
import 'package:easydevice/easydevice.dart';
|
||||||
|
import 'package:vbvs_app/common/util/FitTool.dart';
|
||||||
|
import 'package:vbvs_app/controller/user_info_controller.dart';
|
||||||
|
import 'package:vbvs_app/pages/mh_page/homepage/controller/mht_home_controller.dart';
|
||||||
|
|
||||||
class WebviewTestModel {
|
class WebviewTestModel {
|
||||||
WebviewTestModel();
|
WebviewTestModel();
|
||||||
@@ -17,20 +20,22 @@ class WebviewTestController extends GetControllerEx<WebviewTestModel> {
|
|||||||
web = WebviewHelper(
|
web = WebviewHelper(
|
||||||
jsbridge: buildsdk(
|
jsbridge: buildsdk(
|
||||||
father: this,
|
father: this,
|
||||||
clientId: '494641114',
|
// clientId: '494641114',
|
||||||
//dbgserverUrl: 'ws://192.168.1.2:9001',
|
//dbgserverUrl: 'ws://192.168.1.2:9001',
|
||||||
),
|
),
|
||||||
settings: buildsettings(),
|
settings: buildsettings(),
|
||||||
params: PlatformHeadlessInAppWebViewCreationParams(
|
params: PlatformHeadlessInAppWebViewCreationParams(
|
||||||
initialUrlRequest: URLRequest(
|
initialUrlRequest: URLRequest(
|
||||||
url: WebUri('https://wsl.it.real.he-info.cn:94/webdemo/index.html'),
|
url: WebUri(
|
||||||
|
'https://wyf.it.real.he-info.cn:94/goods-front/index.html'),
|
||||||
),
|
),
|
||||||
onLoadStop: (controller, url) => {setState(() => ready.value = true)},
|
onLoadStop: (controller, url) => {setState(() => ready.value = true)},
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
try {
|
try {
|
||||||
web.jsbridge!.bind((bridge) {
|
web.jsbridge!.bind((bridge) {
|
||||||
Minibleapp(bridge: bridge);
|
var minible = Minibleapp(bridge: bridge);
|
||||||
|
// minible.bridge.sdk.ble.scanenable(5);
|
||||||
});
|
});
|
||||||
web
|
web
|
||||||
//.file(
|
//.file(
|
||||||
@@ -39,13 +44,13 @@ class WebviewTestController extends GetControllerEx<WebviewTestModel> {
|
|||||||
//)
|
//)
|
||||||
.network()
|
.network()
|
||||||
.then((value) {
|
.then((value) {
|
||||||
if (value) {
|
if (value) {
|
||||||
//资源准备完成..
|
//资源准备完成..
|
||||||
setState(() {
|
setState(() {
|
||||||
ready.value = true;
|
ready.value = true;
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
} catch (e, s) {
|
} catch (e, s) {
|
||||||
ef.log('$e,$s');
|
ef.log('$e,$s');
|
||||||
}
|
}
|
||||||
@@ -61,48 +66,50 @@ class WebviewTestView extends GetComponent<WebviewTestController> {
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
|
UserInfoController userInfoController = Get.find();
|
||||||
|
MHTHomeController deviceController = Get.find();
|
||||||
|
deviceController.getDeviceList(group: 'room');
|
||||||
return Scaffold(
|
return Scaffold(
|
||||||
backgroundColor: Colors.black12,
|
backgroundColor: Colors.black12,
|
||||||
body: Column(
|
body: Column(
|
||||||
mainAxisAlignment: MainAxisAlignment.start,
|
crossAxisAlignment: CrossAxisAlignment.center,
|
||||||
|
mainAxisSize: MainAxisSize.max,
|
||||||
|
mainAxisAlignment: (userInfoController.model.login! != null &&
|
||||||
|
userInfoController.model.login! == 1)
|
||||||
|
? MainAxisAlignment.start
|
||||||
|
: MainAxisAlignment.center,
|
||||||
children: [
|
children: [
|
||||||
Align(
|
Obx(() {
|
||||||
alignment: Alignment.topLeft,
|
if (userInfoController.model.login! == null ||
|
||||||
child: Padding(
|
userInfoController.model.login! == 0) {
|
||||||
padding: EdgeInsets.all(8),
|
return Center(
|
||||||
child: SizedBox(
|
// 包一层 Center,强制水平和垂直都居中
|
||||||
height: 30,
|
child: Text(
|
||||||
child: TextButton(
|
"登录进行设备控制".tr,
|
||||||
onPressed: () {
|
style: TextStyle(color: Colors.white, fontSize: 30.rpx),
|
||||||
setState(() => controller.cnt.value++);
|
|
||||||
// Get.to(
|
|
||||||
// () => TestInkWellView(
|
|
||||||
// oncreate: (x) => TestInkWellController(),
|
|
||||||
// ),
|
|
||||||
// );
|
|
||||||
},
|
|
||||||
child: Text('转跳'),
|
|
||||||
),
|
),
|
||||||
),
|
);
|
||||||
),
|
}
|
||||||
),
|
WebviewTestController webviewTestController = Get.find();
|
||||||
Expanded(
|
var dataList = deviceController.deviceList.value;
|
||||||
child: Align(
|
webviewTestController.web.jsbridge!.dart.updateDeviceList(dataList);
|
||||||
alignment: Alignment.topLeft,
|
return Expanded(
|
||||||
child:
|
child: Align(
|
||||||
controller.ready.value
|
alignment: Alignment.topLeft,
|
||||||
? ((controller.cnt.value % 2 == 0)
|
child: controller.ready.value
|
||||||
? controller.web.build(
|
? ((controller.cnt.value % 2 == 0)
|
||||||
|
? controller.web.build(
|
||||||
key: ValueKey("A"),
|
key: ValueKey("A"),
|
||||||
headless: false,
|
headless: false,
|
||||||
)
|
)
|
||||||
: controller.web.build(
|
: controller.web.build(
|
||||||
key: ValueKey("B"),
|
key: ValueKey("B"),
|
||||||
headless: false,
|
headless: false,
|
||||||
))
|
))
|
||||||
: Container(),
|
: Container(),
|
||||||
),
|
),
|
||||||
),
|
);
|
||||||
|
}),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -375,7 +375,9 @@ class _CommonMessageSettingPageState extends State<CommonMessageSettingPage> {
|
|||||||
],
|
],
|
||||||
),
|
),
|
||||||
Text(
|
Text(
|
||||||
"通用APP消息介绍".tr,
|
AppConstants().ent_type == 1
|
||||||
|
? "通用APP消息介绍".tr
|
||||||
|
: "打开“欢睡科技”APP,可以查看消息内容",
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
color:
|
color:
|
||||||
themeController.currentColor.sc4,
|
themeController.currentColor.sc4,
|
||||||
@@ -482,7 +484,9 @@ class _CommonMessageSettingPageState extends State<CommonMessageSettingPage> {
|
|||||||
],
|
],
|
||||||
),
|
),
|
||||||
Text(
|
Text(
|
||||||
"通用服务号消息介绍".tr,
|
AppConstants().ent_type == 1
|
||||||
|
? "通用服务号消息介绍".tr
|
||||||
|
: "无需打开“欢睡科技”APP,关注欢睡智能睡眠研究所服务号后,微信内即可接收消息推送",
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
color:
|
color:
|
||||||
themeController.currentColor.sc4,
|
themeController.currentColor.sc4,
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
import 'package:ef/ef.dart';
|
import 'package:ef/ef.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:vbvs_app/common/color/appConstants.dart';
|
||||||
import 'package:vbvs_app/common/util/FitTool.dart';
|
import 'package:vbvs_app/common/util/FitTool.dart';
|
||||||
import 'package:vbvs_app/common/util/MyUtils.dart';
|
import 'package:vbvs_app/common/util/MyUtils.dart';
|
||||||
import 'package:vbvs_app/component/tool/WebViewWidget.dart';
|
import 'package:vbvs_app/component/tool/WebViewWidget.dart';
|
||||||
@@ -17,8 +18,11 @@ class _AboutUsPageState extends State<AboutUsPage> {
|
|||||||
void initState() {
|
void initState() {
|
||||||
super.initState();
|
super.initState();
|
||||||
// pdfController.loadPdf();
|
// pdfController.loadPdf();
|
||||||
|
|
||||||
widget.webView = MyWebView(
|
widget.webView = MyWebView(
|
||||||
url: "https://mp.weixin.qq.com/s/IAr4RNBy0hGJXGKyMxe7eQ",
|
url: AppConstants().ent_type == 1
|
||||||
|
? "https://mp.weixin.qq.com/s/IAr4RNBy0hGJXGKyMxe7eQ"
|
||||||
|
: "https://mp.weixin.qq.com/s/7BvvprVDqX1eOzM3Lms8dg",
|
||||||
onLoad: () {
|
onLoad: () {
|
||||||
print('网页载入完毕');
|
print('网页载入完毕');
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
import 'package:ef/ef.dart';
|
import 'package:ef/ef.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_pdfview/flutter_pdfview.dart';
|
import 'package:flutter_pdfview/flutter_pdfview.dart';
|
||||||
|
import 'package:vbvs_app/common/color/appConstants.dart';
|
||||||
import 'package:vbvs_app/common/util/FitTool.dart';
|
import 'package:vbvs_app/common/util/FitTool.dart';
|
||||||
import 'package:vbvs_app/common/util/MyUtils.dart';
|
import 'package:vbvs_app/common/util/MyUtils.dart';
|
||||||
import 'package:vbvs_app/controller/setting/pdf/PrivacyPdfController.dart';
|
import 'package:vbvs_app/controller/setting/pdf/PrivacyPdfController.dart';
|
||||||
@@ -19,14 +20,16 @@ class _PrivacySchemePageState extends State<PrivacySchemePage> {
|
|||||||
void initState() {
|
void initState() {
|
||||||
super.initState();
|
super.initState();
|
||||||
String language = "zh_CN"; // 默认语言
|
String language = "zh_CN"; // 默认语言
|
||||||
|
int ent_type = AppConstants().ent_type;
|
||||||
if (languageController.selectLanguage?.value?.language_code != null) {
|
if (languageController.selectLanguage?.value?.language_code != null) {
|
||||||
language = languageController.selectLanguage!.value!.language_code!;
|
language = languageController.selectLanguage!.value!.language_code!;
|
||||||
}
|
} // 根据 ent_type 拼接不同的文件名
|
||||||
|
String pdfName =
|
||||||
|
ent_type == 1 ? "$language.pdf" : "${language}_$ent_type.pdf";
|
||||||
|
|
||||||
pdfController.loadPdf(
|
pdfController.loadPdf(
|
||||||
2,
|
2,
|
||||||
"https://vsbst-api.he-info.cn/vsbs_sotrage/privacy-scheme/$language.pdf",
|
"https://vsbst-api.he-info.cn/vsbs_sotrage/privacy-scheme/$pdfName",
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -577,8 +577,8 @@ class _SettingPageState extends State<SettingPage> {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
Text(
|
Text(
|
||||||
'Copyright © 202-2025 嘉兴太和信息技术有限责任公司 版权所有'
|
AppConstants().ent_type == 1? 'Copyright © 202-2025 嘉兴太和信息技术有限责任公司 版权所有'
|
||||||
.tr,
|
.tr:"Copyright © 202-2025 杭州欢睡科技有限公司 版权所有",
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
color: themeController.currentColor.sc4,
|
color: themeController.currentColor.sc4,
|
||||||
fontFamily: 'Inter',
|
fontFamily: 'Inter',
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
import 'package:ef/ef.dart';
|
import 'package:ef/ef.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_pdfview/flutter_pdfview.dart';
|
import 'package:flutter_pdfview/flutter_pdfview.dart';
|
||||||
|
import 'package:vbvs_app/common/color/appConstants.dart';
|
||||||
import 'package:vbvs_app/common/util/FitTool.dart';
|
import 'package:vbvs_app/common/util/FitTool.dart';
|
||||||
import 'package:vbvs_app/common/util/MyUtils.dart';
|
import 'package:vbvs_app/common/util/MyUtils.dart';
|
||||||
import 'package:vbvs_app/controller/setting/pdf/UserPdfController.dart';
|
import 'package:vbvs_app/controller/setting/pdf/UserPdfController.dart';
|
||||||
@@ -24,9 +25,15 @@ class _UserSchemePageState extends State<UserSchemePage> {
|
|||||||
language = languageController.selectLanguage!.value!.language_code!;
|
language = languageController.selectLanguage!.value!.language_code!;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int ent_type = AppConstants().ent_type;
|
||||||
|
|
||||||
|
// 根据 ent_type 拼接不同的文件名
|
||||||
|
String pdfName =
|
||||||
|
ent_type == 1 ? "$language.pdf" : "${language}_$ent_type.pdf";
|
||||||
|
|
||||||
pdfController.loadPdf(
|
pdfController.loadPdf(
|
||||||
1,
|
1,
|
||||||
"https://vsbst-api.he-info.cn/vsbs_sotrage/user-scheme/$language.pdf",
|
"https://vsbst-api.he-info.cn/vsbs_sotrage/user-scheme/$pdfName",
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -21,8 +21,8 @@ dependencies:
|
|||||||
flutter_svg: ^2.0.10+1
|
flutter_svg: ^2.0.10+1
|
||||||
EasyDartModule:
|
EasyDartModule:
|
||||||
git:
|
git:
|
||||||
url: http://git.real.he-info.cn:8080/r/~qmqz/EasyDartModule.git
|
url: http://git.he-info.cn/r/~qmqz/EasyDartModule.git
|
||||||
ref: master
|
ref: cff5448fe07ca7f2141dcb1b7c5ee430ca44d64d
|
||||||
flutter_localization: ^0.3.1
|
flutter_localization: ^0.3.1
|
||||||
syncfusion_localizations: ^27.2.5
|
syncfusion_localizations: ^27.2.5
|
||||||
flutterflow_ui:
|
flutterflow_ui:
|
||||||
|
|||||||
Reference in New Issue
Block a user