24 changed files with 2089 additions and 1596 deletions
Split View
Diff Options
-
BINassets/images/vip_buy_tag.png
-
BINassets/images/vip_chat.png
-
BINassets/images/vip_gift.png
-
BINassets/images/vip_message.png
-
BINassets/images/vip_special.png
-
BINassets/images/vip_visitor.png
-
BINassets/images/vip_voice.png
-
37lib/controller/mine/edit_info_controller.dart
-
9lib/controller/mine/mine_controller.dart
-
25lib/controller/mine/rose_controller.dart
-
71lib/generated/assets.dart
-
21lib/model/mine/submit_order_data.dart
-
3lib/network/api_urls.dart
-
6lib/network/user_api.dart
-
39lib/network/user_api.g.dart
-
993lib/pages/home/user_information_page.dart
-
1164lib/pages/mine/edit_info_page.dart
-
292lib/pages/mine/mine_page.dart
-
81lib/pages/mine/pay_fail_page.dart
-
75lib/pages/mine/renew_manage_page.dart
-
5lib/pages/mine/rose_page.dart
-
54lib/pages/mine/vip_manage_page.dart
-
390lib/pages/mine/vip_page.dart
-
420pubspec.lock
@ -0,0 +1,37 @@ |
|||
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:get/get.dart'; |
|||
import 'package:flutter_smart_dialog/flutter_smart_dialog.dart'; |
|||
|
|||
class EditInfoController extends GetxController { |
|||
|
|||
|
|||
final menuActive = 1.obs; |
|||
|
|||
|
|||
List<String> imgList = [ |
|||
"https://fastly.picsum.photos/id/64/800/800.jpg?hmac=NBZ4_-vqzD6p25oCeaW0H5vH-ql9zzei-SqJNeUo1QU", |
|||
"https://fastly.picsum.photos/id/985/800/800.jpg?hmac=DfRt99HFbMJ96DlN-poOhruWYRsexESE94ilLC3g1rU", |
|||
"https://fastly.picsum.photos/id/703/800/800.jpg?hmac=-bRTkPxnsiQ5kCo2tfXj6tFrXMD7YnVx7bQ0STno3Tg" |
|||
]; |
|||
|
|||
final nowSelect = 0.obs; |
|||
|
|||
List<String> tagList = [ |
|||
"北京", "160cm", "想要甜甜的恋爱", "本科", "朋友圈摄影师", "英雄联盟", "流放之路", |
|||
"CF", "DNA", "堡垒之夜", "SCP" |
|||
]; |
|||
|
|||
final userData = GlobalData().userData.obs; |
|||
|
|||
@override |
|||
void onInit() { |
|||
super.onInit(); |
|||
} |
|||
|
|||
|
|||
} |
|||
@ -0,0 +1,21 @@ |
|||
class SubmitOrderData { |
|||
String? orderId; |
|||
String? paymentOrderId; |
|||
bool? freeSettlement; |
|||
|
|||
SubmitOrderData({this.orderId, this.paymentOrderId, this.freeSettlement}); |
|||
|
|||
SubmitOrderData.fromJson(Map<String, dynamic> json) { |
|||
orderId = json['orderId']; |
|||
paymentOrderId = json['paymentOrderId']; |
|||
freeSettlement = json['freeSettlement']; |
|||
} |
|||
|
|||
Map<String, dynamic> toJson() { |
|||
final Map<String, dynamic> data = new Map<String, dynamic>(); |
|||
data['orderId'] = this.orderId; |
|||
data['paymentOrderId'] = this.paymentOrderId; |
|||
data['freeSettlement'] = this.freeSettlement; |
|||
return data; |
|||
} |
|||
} |
|||
993
lib/pages/home/user_information_page.dart
File diff suppressed because it is too large
View File
File diff suppressed because it is too large
View File
1164
lib/pages/mine/edit_info_page.dart
File diff suppressed because it is too large
View File
File diff suppressed because it is too large
View File
@ -0,0 +1,81 @@ |
|||
import 'package:dating_touchme_app/components/page_appbar.dart'; |
|||
import 'package:flutter/material.dart'; |
|||
import 'package:flutter_screenutil/flutter_screenutil.dart'; |
|||
|
|||
class PayFailPage extends StatefulWidget { |
|||
const PayFailPage({super.key}); |
|||
|
|||
@override |
|||
State<PayFailPage> createState() => _PayFailPageState(); |
|||
} |
|||
|
|||
class _PayFailPageState extends State<PayFailPage> { |
|||
@override |
|||
Widget build(BuildContext context) { |
|||
return Scaffold( |
|||
appBar: PageAppbar(title: "支付结果"), |
|||
body: SingleChildScrollView( |
|||
child: Container( |
|||
width: 375.w, |
|||
padding: EdgeInsets.symmetric( |
|||
vertical: 60.w |
|||
), |
|||
child: Column( |
|||
children: [ |
|||
Container( |
|||
width: 70.w, |
|||
height: 70.w, |
|||
margin: EdgeInsets.only(bottom: 16.w), |
|||
decoration: BoxDecoration( |
|||
borderRadius: BorderRadius.all(Radius.circular(70.w)), |
|||
color: const Color.fromRGBO(248, 85, 66, 1) |
|||
), |
|||
child: Center( |
|||
child: Icon( |
|||
Icons.close, |
|||
size: 50.w, |
|||
color: Colors.white, |
|||
), |
|||
), |
|||
), |
|||
Text( |
|||
"交易失败", |
|||
style: TextStyle( |
|||
fontSize: 13.w, |
|||
fontWeight: FontWeight.w500 |
|||
), |
|||
), |
|||
SizedBox(height: 292.w,), |
|||
Container( |
|||
width: 150.w, |
|||
height: 30.w, |
|||
decoration: BoxDecoration( |
|||
borderRadius: BorderRadius.all(Radius.circular(30.w)), |
|||
color: const Color.fromRGBO(245, 245, 245, 1) |
|||
), |
|||
child: Center( |
|||
child: Text( |
|||
"联系客服", |
|||
style: TextStyle( |
|||
fontSize: 13.w, |
|||
fontWeight: FontWeight.w500 |
|||
), |
|||
), |
|||
), |
|||
), |
|||
SizedBox(height: 18.w,), |
|||
Text( |
|||
"返回", |
|||
style: TextStyle( |
|||
fontSize: 13.w, |
|||
color: const Color.fromRGBO(144, 144, 144, 1), |
|||
fontWeight: FontWeight.w500 |
|||
), |
|||
) |
|||
], |
|||
), |
|||
), |
|||
), |
|||
); |
|||
} |
|||
} |
|||
@ -0,0 +1,75 @@ |
|||
import 'package:dating_touchme_app/components/page_appbar.dart'; |
|||
import 'package:flutter/material.dart'; |
|||
import 'package:flutter_screenutil/flutter_screenutil.dart'; |
|||
import 'package:tdesign_flutter/tdesign_flutter.dart'; |
|||
|
|||
class RenewManagePage extends StatefulWidget { |
|||
const RenewManagePage({super.key}); |
|||
|
|||
@override |
|||
State<RenewManagePage> createState() => _RenewManagePageState(); |
|||
} |
|||
|
|||
class _RenewManagePageState extends State<RenewManagePage> { |
|||
|
|||
bool blockUser = false; |
|||
|
|||
@override |
|||
Widget build(BuildContext context) { |
|||
return Scaffold( |
|||
appBar: PageAppbar(title: "自动续费管理"), |
|||
body: SingleChildScrollView( |
|||
child: Column( |
|||
children: [ |
|||
Container( |
|||
padding: EdgeInsets.symmetric( |
|||
vertical: 20.w, |
|||
horizontal: 14.w |
|||
), |
|||
margin: EdgeInsets.only( |
|||
bottom: 12.w |
|||
), |
|||
child: Row( |
|||
mainAxisAlignment: MainAxisAlignment.spaceBetween, |
|||
children: [ |
|||
Text( |
|||
"自动续费管理", |
|||
style: TextStyle( |
|||
fontSize: 13.w, |
|||
fontWeight: FontWeight.w500 |
|||
), |
|||
), |
|||
TDSwitch( |
|||
isOn: blockUser, |
|||
trackOnColor: const Color.fromRGBO(117, 98, 249, 1), |
|||
onChanged: (bool e){ |
|||
print(e); |
|||
blockUser = e; |
|||
setState(() { |
|||
|
|||
}); |
|||
return e; |
|||
}, |
|||
), |
|||
], |
|||
), |
|||
), |
|||
Padding( |
|||
padding: EdgeInsets.symmetric( |
|||
horizontal: 14.w |
|||
), |
|||
child: Text( |
|||
"关闭“会员自动续费”即可解除连续包月协议,次月将不再扣除会员服务费,也可以前往支付宝和微信进行解约。", |
|||
style: TextStyle( |
|||
fontSize: 11.w, |
|||
color: const Color.fromRGBO(144, 144, 144, 1) |
|||
), |
|||
), |
|||
) |
|||
|
|||
], |
|||
), |
|||
), |
|||
); |
|||
} |
|||
} |
|||
@ -0,0 +1,54 @@ |
|||
import 'package:dating_touchme_app/components/page_appbar.dart'; |
|||
import 'package:dating_touchme_app/extension/ex_widget.dart'; |
|||
import 'package:dating_touchme_app/pages/mine/renew_manage_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'; |
|||
|
|||
class VipManagePage extends StatefulWidget { |
|||
const VipManagePage({super.key}); |
|||
|
|||
@override |
|||
State<VipManagePage> createState() => _VipManagePageState(); |
|||
} |
|||
|
|||
class _VipManagePageState extends State<VipManagePage> { |
|||
@override |
|||
Widget build(BuildContext context) { |
|||
return Scaffold( |
|||
appBar: PageAppbar(title: "会员特权管理"), |
|||
body: SingleChildScrollView( |
|||
child: Column( |
|||
children: [ |
|||
Container( |
|||
padding: EdgeInsets.symmetric( |
|||
vertical: 20.w, |
|||
horizontal: 14.w |
|||
), |
|||
child: Row( |
|||
mainAxisAlignment: MainAxisAlignment.spaceBetween, |
|||
children: [ |
|||
Text( |
|||
"自动续费管理", |
|||
style: TextStyle( |
|||
fontSize: 13.w, |
|||
fontWeight: FontWeight.w500 |
|||
), |
|||
), |
|||
Icon( |
|||
Icons.keyboard_arrow_right, |
|||
size: 20.w, |
|||
color: const Color.fromRGBO(191, 191, 191, 1), |
|||
) |
|||
], |
|||
), |
|||
).onTap((){ |
|||
Get.to(() => RenewManagePage()); |
|||
}) |
|||
], |
|||
), |
|||
), |
|||
); |
|||
} |
|||
} |
|||
420
pubspec.lock
File diff suppressed because it is too large
View File
File diff suppressed because it is too large
View File
Write
Preview
Loading…
Cancel
Save