From 18883ff834383f98ab496f3a904ef198cd0e5940 Mon Sep 17 00:00:00 2001 From: ZHR007 Date: Tue, 18 Nov 2025 14:16:40 +0800 Subject: [PATCH] no message --- lib/controller/mine/mine_controller.dart | 3 - lib/controller/mine/user_controller.dart | 1 + .../setting/setting_controller.dart | 25 +- lib/network/network_config.dart | 1 - lib/pages/mine/mine_page.dart | 27 +- lib/pages/mine/setting_page.dart | 238 ------------------ lib/pages/setting/setting_page.dart | 4 + 7 files changed, 47 insertions(+), 252 deletions(-) delete mode 100644 lib/pages/mine/setting_page.dart diff --git a/lib/controller/mine/mine_controller.dart b/lib/controller/mine/mine_controller.dart index ba6a99a..4188ac1 100644 --- a/lib/controller/mine/mine_controller.dart +++ b/lib/controller/mine/mine_controller.dart @@ -1,13 +1,10 @@ import 'package:dating_touchme_app/controller/global.dart'; import 'package:dating_touchme_app/generated/assets.dart'; -import 'package:dating_touchme_app/model/mine/user_data.dart'; import 'package:dating_touchme_app/pages/mine/auth_center_page.dart'; import 'package:dating_touchme_app/pages/mine/my_wallet_page.dart'; import 'package:dating_touchme_app/pages/mine/rose_page.dart'; -import 'package:dating_touchme_app/pages/mine/setting_page.dart'; import 'package:dating_touchme_app/pages/mine/user_help_center_page.dart'; import 'package:get/get.dart'; -import 'package:flutter_smart_dialog/flutter_smart_dialog.dart'; import '../../pages/setting/setting_page.dart'; diff --git a/lib/controller/mine/user_controller.dart b/lib/controller/mine/user_controller.dart index efa1462..5fc0a31 100644 --- a/lib/controller/mine/user_controller.dart +++ b/lib/controller/mine/user_controller.dart @@ -87,6 +87,7 @@ class UserController extends GetxController { final baseInfo = response.data.data!; final result = await _userApi.getMarriageInformationDetail(); + print(result.data); if (result.data.isSuccess) { if(result.data.data == null){ if(isMain){ diff --git a/lib/controller/setting/setting_controller.dart b/lib/controller/setting/setting_controller.dart index d6d5567..6e2dd9b 100644 --- a/lib/controller/setting/setting_controller.dart +++ b/lib/controller/setting/setting_controller.dart @@ -1,13 +1,17 @@ import 'dart:async'; +import 'package:dating_touchme_app/controller/global.dart'; +import 'package:dating_touchme_app/extension/ex_widget.dart'; import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; +import 'package:get_storage/get_storage.dart'; import 'package:tdesign_flutter/tdesign_flutter.dart'; import '../../generated/assets.dart'; import 'package:package_info_plus/package_info_plus.dart'; class SettingController extends GetxController { + final storage = GetStorage(); final appName = ''.obs; final packageName = ''.obs; final version = ''.obs; @@ -32,6 +36,19 @@ class SettingController extends GetxController { } } + Future checkVersion() async { + try { + _showUpdateDialog(); + } catch (e) { + print('检测版本跟新失败: $e'); + } + } + + void logout(){ + storage.erase(); + GlobalData().logout(); + } + // 弹出版本升级的dialog void _showUpdateDialog(){ Navigator.of(Get.context!).push(TDSlidePopupRoute( @@ -43,9 +60,7 @@ class SettingController extends GetxController { child: Container( color: Colors.transparent, width: 299.w, - padding: EdgeInsets.only( - top: 56.w - ), + padding: EdgeInsets.only(top: 56.w), child: Stack( clipBehavior: Clip.none, children: [ @@ -146,7 +161,9 @@ class SettingController extends GetxController { ), ), ), - ), + ).onTap((){ + Navigator.of(context).pop(); + }), Container( width: 113.w, height: 40.w, diff --git a/lib/network/network_config.dart b/lib/network/network_config.dart index 58f0e53..c892bf5 100644 --- a/lib/network/network_config.dart +++ b/lib/network/network_config.dart @@ -83,7 +83,6 @@ class ResponseInterceptor extends Interceptor { ) { // 统一处理响应数据 final data = response.data; - // 检查响应状态码 if (response.statusCode == 200) { // 假设后端返回的数据格式为 {"code": 0, "message": "success", "data": {...}} diff --git a/lib/pages/mine/mine_page.dart b/lib/pages/mine/mine_page.dart index 374837b..c9df4aa 100644 --- a/lib/pages/mine/mine_page.dart +++ b/lib/pages/mine/mine_page.dart @@ -1,3 +1,4 @@ +import 'package:cached_network_image/cached_network_image.dart'; import 'package:dating_touchme_app/controller/mine/mine_controller.dart'; import 'package:dating_touchme_app/extension/ex_widget.dart'; import 'package:dating_touchme_app/pages/mine/edit_info_page.dart'; @@ -71,15 +72,29 @@ class _MinePageState extends State with AutomaticKeepAliveClientMixin{ children: [ ClipRRect( borderRadius: BorderRadius.all(Radius.circular(60.w)), - child: (controller.userData.value?.profilePhoto?.isNotEmpty ?? false) ? Image.network( - "${controller.userData.value?.profilePhoto ?? ""}", - width: 60.w, - height: 60.w, - ) : Image.asset( + child: (controller.userData.value?.profilePhoto?.isNotEmpty ?? false) ? CachedNetworkImage( + imageUrl: controller.userData.value!.profilePhoto!, + width: 60, + height: 60, + imageBuilder: (context, imageProvider) => Container( + decoration: BoxDecoration( + image: DecorationImage( + image: imageProvider, + fit: BoxFit.cover, + ), + ), + ), + errorWidget: (context, url, error) => Image.asset( + Assets.imagesUserAvatar, + width: 60, + height: 60, + fit: BoxFit.cover, + ), + ) : Image.asset( Assets.imagesUserAvatar, width: 60.w, height: 60.w, - ), + ) ), SizedBox(width: 14.w,), Column( diff --git a/lib/pages/mine/setting_page.dart b/lib/pages/mine/setting_page.dart deleted file mode 100644 index af0b86f..0000000 --- a/lib/pages/mine/setting_page.dart +++ /dev/null @@ -1,238 +0,0 @@ -// import 'package:dating_touchme_app/components/page_appbar.dart'; -// import 'package:dating_touchme_app/extension/ex_widget.dart'; -// import 'package:dating_touchme_app/generated/assets.dart'; -// import 'package:dating_touchme_app/pages/mine/blacklist_page.dart'; -// import 'package:flutter/material.dart'; -// import 'package:flutter_screenutil/flutter_screenutil.dart'; -// import 'package:get/get.dart'; -// import 'package:get/get_core/src/get_main.dart'; -// import 'package:tdesign_flutter/tdesign_flutter.dart'; -// -// class SettingPage extends StatefulWidget { -// const SettingPage({super.key}); -// -// @override -// State createState() => _SettingPageState(); -// } -// -// class _SettingPageState extends State { -// -// -// bool blockUser = false; -// -// @override -// Widget build(BuildContext context) { -// return Scaffold( -// backgroundColor: const Color.fromRGBO(250, 250, 250, 1), -// appBar: PageAppbar(title: "设置"), -// body: SingleChildScrollView( -// child: Container( -// padding: EdgeInsets.symmetric( -// vertical: 15.w, -// horizontal: 10.w -// ), -// child: Column( -// children: [ -// BlockItem( -// children: [ -// Item( -// label: "后台播放", -// child: TDSwitch( -// isOn: blockUser, -// trackOnColor: const Color.fromRGBO(117, 98, 249, 1), -// onChanged: (bool e){ -// print(e); -// blockUser = e; -// setState(() { -// -// }); -// return e; -// }, -// ), -// ), -// LineItem(), -// Item( -// label: "语音/视频通话提示音", -// child: TDSwitch( -// isOn: blockUser, -// trackOnColor: const Color.fromRGBO(117, 98, 249, 1), -// onChanged: (bool e){ -// print(e); -// blockUser = e; -// setState(() { -// -// }); -// return e; -// }, -// ), -// ), -// ], -// ), -// BlockItem( -// children: [ -// Item( -// label: "安全中心", -// child: Icon( -// Icons.keyboard_arrow_right, -// size: 10.w, -// color: const Color.fromRGBO(191, 191, 191, 1), -// ), -// ), -// LineItem(), -// Item( -// label: "黑名单", -// child: Icon( -// Icons.keyboard_arrow_right, -// size: 10.w, -// color: const Color.fromRGBO(191, 191, 191, 1), -// ), -// ).onTap((){ -// Get.to(() => BlacklistPage()); -// }), -// ], -// ), -// BlockItem( -// children: [ -// Item( -// label: "隐私设置", -// child: Icon( -// Icons.keyboard_arrow_right, -// size: 10.w, -// color: const Color.fromRGBO(191, 191, 191, 1), -// ), -// ), -// LineItem(), -// Item( -// label: "青少年模式", -// child: Icon( -// Icons.keyboard_arrow_right, -// size: 10.w, -// color: const Color.fromRGBO(191, 191, 191, 1), -// ), -// ), -// ], -// ), -// BlockItem( -// children: [ -// Item( -// label: "系统权限管理", -// child: Icon( -// Icons.keyboard_arrow_right, -// size: 10.w, -// color: const Color.fromRGBO(191, 191, 191, 1), -// ), -// ), -// LineItem(), -// Item( -// label: "消息通知", -// child: Icon( -// Icons.keyboard_arrow_right, -// size: 10.w, -// color: const Color.fromRGBO(191, 191, 191, 1), -// ), -// ), -// LineItem(), -// Item( -// label: "检查更新", -// child: Row( -// children: [ -// Text( -// "版本号 1.0.000", -// style: TextStyle( -// fontSize: 13.w, -// color: const Color.fromRGBO(117, 98, 249, 1) -// ), -// ), -// SizedBox(width: 10.w,), -// Icon( -// Icons.keyboard_arrow_right, -// size: 10.w, -// color: const Color.fromRGBO(191, 191, 191, 1), -// ) -// ], -// ), -// ).onTap((){ -// -// }), -// ], -// ), -// ], -// ), -// ), -// ), -// ); -// } -// } -// -// class BlockItem extends StatefulWidget { -// final List children; -// const BlockItem({super.key, required this.children}); -// -// @override -// State createState() => _BlockItemState(); -// } -// -// class _BlockItemState extends State { -// @override -// Widget build(BuildContext context) { -// return Container( -// padding: EdgeInsets.symmetric( -// horizontal: 14.w -// ), -// margin: EdgeInsets.only( -// bottom: 10.w -// ), -// decoration: BoxDecoration( -// borderRadius: BorderRadius.all(Radius.circular(9.w)), -// color: Colors.white -// ), -// child: Column( -// children: widget.children, -// ), -// ); -// } -// } -// -// class Item extends StatefulWidget { -// final String label; -// final Widget child; -// const Item({super.key, required this.label, required this.child}); -// -// @override -// State createState() => _ItemState(); -// } -// -// class _ItemState extends State { -// @override -// Widget build(BuildContext context) { -// return SizedBox( -// height: 54.w, -// child: Row( -// mainAxisAlignment: MainAxisAlignment.spaceBetween, -// children: [ -// Text( -// widget.label, -// style: TextStyle( -// fontSize: 13.w, -// fontWeight: FontWeight.w500 -// ), -// ), -// widget.child -// ], -// ), -// ); -// } -// } -// -// class LineItem extends StatelessWidget { -// const LineItem({super.key}); -// -// @override -// Widget build(BuildContext context) { -// return Container( -// width: 320.w, -// height: 2.w, -// color: const Color.fromRGBO(245, 245, 245, 1), -// ); -// } -// } diff --git a/lib/pages/setting/setting_page.dart b/lib/pages/setting/setting_page.dart index d72219f..27c03e6 100644 --- a/lib/pages/setting/setting_page.dart +++ b/lib/pages/setting/setting_page.dart @@ -1,3 +1,4 @@ +import 'package:dating_touchme_app/pages/mine/login_page.dart'; import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; @@ -77,6 +78,7 @@ class SettingPage extends StatelessWidget { }), TDCell(arrow: true, title: '检查更新', onClick: (cell) { // _showUpdateDialog(); + controller.checkVersion(); }, noteWidget: Text('当前版本:${controller.version.value}',style: TextStyle(fontSize: 13.w,color: const Color.fromRGBO(117, 98, 249, 1))), ) @@ -125,7 +127,9 @@ class SettingPage extends StatelessWidget { shape: TDButtonShape.round, theme: TDButtonTheme.danger, onTap: () { + controller.logout(); Navigator.of(context).pop(); + Get.offAll(() => LoginPage()); }, ), ],