ソースを参照

B版本改版

panhui 6 年 前
コミット
f6c4c2b5d0
45 ファイル変更648 行追加307 行削除
  1. 1 1
      android/app/src/main/AndroidManifest.xml
  2. BIN
      android/app/src/main/res/mipmap-hdpi/icon_qidongye.png
  3. BIN
      android/app/src/main/res/mipmap-mdpi/icon_qidongye.png
  4. BIN
      android/app/src/main/res/mipmap-xhdpi/icon_qidongye.png
  5. BIN
      android/app/src/main/res/mipmap-xxhdpi/icon_qidongye.png
  6. BIN
      android/app/src/main/res/mipmap-xxxhdpi/icon_qidongye.png
  7. 0 0
      images/2x/house1.png
  8. BIN
      images/2x/house2.png
  9. BIN
      images/2x/icon_jisha.png
  10. BIN
      images/2x/icon_logo.png
  11. BIN
      images/2x/img_chijizhanchang.png
  12. BIN
      images/2x/text_yonghuduan.png
  13. 0 0
      images/3x/house1.png
  14. BIN
      images/3x/house2.png
  15. BIN
      images/3x/icon_jisha.png
  16. BIN
      images/3x/icon_logo.png
  17. BIN
      images/3x/img_chijizhanchang.png
  18. BIN
      images/3x/text_yonghuduan.png
  19. 0 0
      images/house1.png
  20. BIN
      images/house2.png
  21. BIN
      images/icon_jisha.png
  22. BIN
      images/icon_logo.png
  23. BIN
      images/img_chijizhanchang.png
  24. BIN
      images/text_yonghuduan.png
  25. 2 2
      ios/Runner/Info.plist
  26. 2 2
      ios/ScreenRecorder/Info.plist
  27. 1 1
      lib/main.dart
  28. 2 1
      lib/model/HouseInfo.dart
  29. 4 2
      lib/model/HouseInfo.g.dart
  30. 2 1
      lib/model/UserInfo.dart
  31. 4 2
      lib/model/UserInfo.g.dart
  32. 46 49
      lib/pages/ChoosePay.dart
  33. 41 36
      lib/pages/CompetitionInformation.dart
  34. 1 1
      lib/pages/HomePage.dart
  35. 23 4
      lib/pages/MatchPage.dart
  36. 1 1
      lib/pages/MyCode.dart
  37. 5 4
      lib/pages/OpenRoom.dart
  38. 166 120
      lib/pages/RoomInfo.dart
  39. 15 31
      lib/pages/ShoppingMall.dart
  40. 283 0
      lib/pages/ShoppingMall_old.dart
  41. 2 33
      lib/pages/TipInfo.dart
  42. 10 10
      lib/pages/UserPage.dart
  43. 34 3
      lib/widget/Dialog.dart
  44. 2 2
      lib/widget/HouseItem.dart
  45. 1 1
      screen_stream_plugin/android/src/main/res/layout/dialog.xml

+ 1 - 1
android/app/src/main/AndroidManifest.xml

@@ -10,7 +10,7 @@
     <application
     <application
         android:name="com.izouma.screen_stream_plugin.MyApplication"
         android:name="com.izouma.screen_stream_plugin.MyApplication"
         android:icon="@mipmap/ic_launcher"
         android:icon="@mipmap/ic_launcher"
-        android:label="EMMC战神竞技场"
+        android:label="全民电竞"
         android:networkSecurityConfig="@xml/network_security_config"
         android:networkSecurityConfig="@xml/network_security_config"
         android:usesCleartextTraffic="true"
         android:usesCleartextTraffic="true"
         tools:ignore="GoogleAppIndexingWarning">
         tools:ignore="GoogleAppIndexingWarning">

BIN
android/app/src/main/res/mipmap-hdpi/icon_qidongye.png


BIN
android/app/src/main/res/mipmap-mdpi/icon_qidongye.png


BIN
android/app/src/main/res/mipmap-xhdpi/icon_qidongye.png


BIN
android/app/src/main/res/mipmap-xxhdpi/icon_qidongye.png


BIN
android/app/src/main/res/mipmap-xxxhdpi/icon_qidongye.png


+ 0 - 0
images/2x/活动详情/icon_renshu.png → images/2x/house1.png


BIN
images/2x/house2.png


BIN
images/2x/icon_jisha.png


BIN
images/2x/icon_logo.png


BIN
images/2x/img_chijizhanchang.png


BIN
images/2x/text_yonghuduan.png


+ 0 - 0
images/3x/活动详情/icon_renshu.png → images/3x/house1.png


BIN
images/3x/house2.png


BIN
images/3x/icon_jisha.png


BIN
images/3x/icon_logo.png


BIN
images/3x/img_chijizhanchang.png


BIN
images/3x/text_yonghuduan.png


+ 0 - 0
images/活动详情/icon_renshu.png → images/house1.png


BIN
images/house2.png


BIN
images/icon_jisha.png


BIN
images/icon_logo.png


BIN
images/img_chijizhanchang.png


BIN
images/text_yonghuduan.png


+ 2 - 2
ios/Runner/Info.plist

@@ -5,7 +5,7 @@
 	<key>CFBundleDevelopmentRegion</key>
 	<key>CFBundleDevelopmentRegion</key>
 	<string>en</string>
 	<string>en</string>
 	<key>CFBundleDisplayName</key>
 	<key>CFBundleDisplayName</key>
-	<string>战神竞技场</string>
+	<string>全民电竞</string>
 	<key>CFBundleExecutable</key>
 	<key>CFBundleExecutable</key>
 	<string>$(EXECUTABLE_NAME)</string>
 	<string>$(EXECUTABLE_NAME)</string>
 	<key>CFBundleIdentifier</key>
 	<key>CFBundleIdentifier</key>
@@ -13,7 +13,7 @@
 	<key>CFBundleInfoDictionaryVersion</key>
 	<key>CFBundleInfoDictionaryVersion</key>
 	<string>6.0</string>
 	<string>6.0</string>
 	<key>CFBundleName</key>
 	<key>CFBundleName</key>
-	<string>战神竞技场</string>
+	<string>全民电竞</string>
 	<key>CFBundlePackageType</key>
 	<key>CFBundlePackageType</key>
 	<string>APPL</string>
 	<string>APPL</string>
 	<key>CFBundleShortVersionString</key>
 	<key>CFBundleShortVersionString</key>

+ 2 - 2
ios/ScreenRecorder/Info.plist

@@ -5,7 +5,7 @@
 	<key>CFBundleDevelopmentRegion</key>
 	<key>CFBundleDevelopmentRegion</key>
 	<string>$(DEVELOPMENT_LANGUAGE)</string>
 	<string>$(DEVELOPMENT_LANGUAGE)</string>
 	<key>CFBundleDisplayName</key>
 	<key>CFBundleDisplayName</key>
-	<string>战神竞技场</string>
+	<string>全民电竞</string>
 	<key>CFBundleExecutable</key>
 	<key>CFBundleExecutable</key>
 	<string>$(EXECUTABLE_NAME)</string>
 	<string>$(EXECUTABLE_NAME)</string>
 	<key>CFBundleIdentifier</key>
 	<key>CFBundleIdentifier</key>
@@ -13,7 +13,7 @@
 	<key>CFBundleInfoDictionaryVersion</key>
 	<key>CFBundleInfoDictionaryVersion</key>
 	<string>6.0</string>
 	<string>6.0</string>
 	<key>CFBundleName</key>
 	<key>CFBundleName</key>
-	<string>战神竞技场</string>
+	<string>全民电竞</string>
 	<key>CFBundlePackageType</key>
 	<key>CFBundlePackageType</key>
 	<string>XPC!</string>
 	<string>XPC!</string>
 	<key>CFBundleShortVersionString</key>
 	<key>CFBundleShortVersionString</key>

+ 1 - 1
lib/main.dart

@@ -25,7 +25,7 @@ class MobileCyberGamesApp extends StatelessWidget {
     return StoreProvider<AppState>(
     return StoreProvider<AppState>(
       store: store,
       store: store,
       child: MaterialApp(
       child: MaterialApp(
-        title: '战神竞技场',
+        title: '全民电竞',
         supportedLocales: [
         supportedLocales: [
           const Locale('en'), // English
           const Locale('en'), // English
           const Locale('zh'), // China
           const Locale('zh'), // China

+ 2 - 1
lib/model/HouseInfo.dart

@@ -26,7 +26,7 @@ class HouseInfo {
       this.createUser,
       this.createUser,
       this.beginTime,
       this.beginTime,
       this.createTime,
       this.createTime,
-      this.scoreType,this.houseCode);
+      this.scoreType,this.houseCode,this.killnumber);
   int id;
   int id;
   int gameId; //游戏ID
   int gameId; //游戏ID
   int userId; //用户ID
   int userId; //用户ID
@@ -49,6 +49,7 @@ class HouseInfo {
   int createTime;//创建时间
   int createTime;//创建时间
   int scoreType;//评分类型 0.评分 1.吃鸡
   int scoreType;//评分类型 0.评分 1.吃鸡
 String houseCode;//房间号
 String houseCode;//房间号
+int killnumber;//击杀人数
   factory HouseInfo.fromJson(Map<String, dynamic> json) =>
   factory HouseInfo.fromJson(Map<String, dynamic> json) =>
       _$HouseInfoFromJson(json);
       _$HouseInfoFromJson(json);
 
 

+ 4 - 2
lib/model/HouseInfo.g.dart

@@ -32,7 +32,8 @@ HouseInfo _$HouseInfoFromJson(Map<String, dynamic> json) {
       json['beginTime'] as int,
       json['beginTime'] as int,
       json['createTime'] as int,
       json['createTime'] as int,
       json['scoreType'] as int,
       json['scoreType'] as int,
-      json['houseCode'] as String);
+      json['houseCode'] as String,
+      json['killnumber'] as int);
 }
 }
 
 
 Map<String, dynamic> _$HouseInfoToJson(HouseInfo instance) => <String, dynamic>{
 Map<String, dynamic> _$HouseInfoToJson(HouseInfo instance) => <String, dynamic>{
@@ -56,5 +57,6 @@ Map<String, dynamic> _$HouseInfoToJson(HouseInfo instance) => <String, dynamic>{
       'beginTime': instance.beginTime,
       'beginTime': instance.beginTime,
       'createTime': instance.createTime,
       'createTime': instance.createTime,
       'scoreType': instance.scoreType,
       'scoreType': instance.scoreType,
-      'houseCode': instance.houseCode
+      'houseCode': instance.houseCode,
+      'killnumber':instance.killnumber
     };
     };

+ 2 - 1
lib/model/UserInfo.dart

@@ -5,7 +5,7 @@ part 'UserInfo.g.dart';
 @JsonSerializable()
 @JsonSerializable()
 class UserInfo {
 class UserInfo {
   UserInfo(this.id, this.nickname, this.username, this.icon, this.phone,
   UserInfo(this.id, this.nickname, this.username, this.icon, this.phone,
-      this.sex, this.moneyCoin, this.moneyPoint,this.birthday,this.noticeFlag,this.remindFlag,this.createFlag,this.houseCard,this.recommender,this.levelId,this.moneyTicket);
+      this.sex, this.moneyCoin, this.moneyPoint,this.birthday,this.noticeFlag,this.remindFlag,this.createFlag,this.houseCard,this.recommender,this.levelId,this.moneyTicket,this.channel);
   int id;
   int id;
   String nickname;
   String nickname;
   String username;
   String username;
@@ -22,6 +22,7 @@ class UserInfo {
    int recommender;//上级ID
    int recommender;//上级ID
    int levelId;//用户级别ID
    int levelId;//用户级别ID
    int moneyTicket;//门票数量
    int moneyTicket;//门票数量
+   int channel;//渠道ID
   factory UserInfo.fromJson(Map<String, dynamic> json) =>
   factory UserInfo.fromJson(Map<String, dynamic> json) =>
       _$UserInfoFromJson(json);
       _$UserInfoFromJson(json);
 
 

+ 4 - 2
lib/model/UserInfo.g.dart

@@ -23,7 +23,8 @@ UserInfo _$UserInfoFromJson(Map<String, dynamic> json) {
       json['houseCard'] as int,
       json['houseCard'] as int,
       json['recommender'] as int,
       json['recommender'] as int,
       json['levelId'] as int,
       json['levelId'] as int,
-      json['moneyTicket'] as int);
+      json['moneyTicket'] as int,
+      json['channel'] as int);
 }
 }
 
 
 Map<String, dynamic> _$UserInfoToJson(UserInfo instance) => <String, dynamic>{
 Map<String, dynamic> _$UserInfoToJson(UserInfo instance) => <String, dynamic>{
@@ -42,5 +43,6 @@ Map<String, dynamic> _$UserInfoToJson(UserInfo instance) => <String, dynamic>{
       'houseCard': instance.houseCard,
       'houseCard': instance.houseCard,
       'recommender': instance.recommender,
       'recommender': instance.recommender,
       'levelId': instance.levelId,
       'levelId': instance.levelId,
-      'moneyTicket': instance.moneyTicket
+      'moneyTicket': instance.moneyTicket,
+      'channel':instance.channel
     };
     };

+ 46 - 49
lib/pages/ChoosePay.dart

@@ -23,7 +23,7 @@ class ChoosePay extends StatefulWidget {
 }
 }
 
 
 class _ChoosePayState extends State<ChoosePay> with WidgetsBindingObserver {
 class _ChoosePayState extends State<ChoosePay> with WidgetsBindingObserver {
-  String chooseKey = 'wxpay';
+  String chooseKey = 'alipay';
   Future<void> getUserInfo() async {
   Future<void> getUserInfo() async {
     Result res = await HttpManager.get('userInfo/getUserInfo');
     Result res = await HttpManager.get('userInfo/getUserInfo');
     if (res.success) {
     if (res.success) {
@@ -35,7 +35,7 @@ class _ChoosePayState extends State<ChoosePay> with WidgetsBindingObserver {
   @override
   @override
   void initState() {
   void initState() {
     super.initState();
     super.initState();
-    fluwx.register(appId: "wx62f8a9c1d3d70245");
+    // fluwx.register(appId: "wx62f8a9c1d3d70245");
     Future.delayed(Duration.zero, () => getUserInfo());
     Future.delayed(Duration.zero, () => getUserInfo());
   }
   }
 
 
@@ -67,11 +67,11 @@ class _ChoosePayState extends State<ChoosePay> with WidgetsBindingObserver {
                 ],
                 ],
               ),
               ),
             ),
             ),
-            // PayContent('支付宝', '支持有支付宝,网银的用户使用', 'images/icon_zhifubao.png', 'alipay', chooseKey, () {
-            //   setState(() {
-            //     chooseKey = 'alipay';
-            //   });
-            // }),
+            PayContent('支付宝', '支持有支付宝,网银的用户使用', 'images/icon_zhifubao.png', 'alipay', chooseKey, () {
+              setState(() {
+                chooseKey = 'alipay';
+              });
+            }),
             PayContent('微信支付', '使用微信支付,方便快捷', 'images/icon_weixin.png', 'wxpay', chooseKey, () {
             PayContent('微信支付', '使用微信支付,方便快捷', 'images/icon_weixin.png', 'wxpay', chooseKey, () {
               setState(() {
               setState(() {
                 chooseKey = 'wxpay';
                 chooseKey = 'wxpay';
@@ -90,52 +90,49 @@ class _ChoosePayState extends State<ChoosePay> with WidgetsBindingObserver {
           child: Text('立即支付'),
           child: Text('立即支付'),
           onPressed: () async {
           onPressed: () async {
             // return;
             // return;
-            String ipAddress = await GetIp.ipAddress;
-            print(ipAddress);
-            final Result res = await HttpManager.get('lyf/appUnifiedOrder', data: {
-              'userId': StoreProvider.of<AppState>(context).state.userInfo.id,
-              // 'typeFlag': widget.type,
-              'ip': ipAddress,
-              'productId': widget.chooseProduct.id
-            });
-            print(StoreProvider.of<AppState>(context).state.userInfo.id);
-            if (res.success) {
-              fluwx.launchMiniProgram(username: "gh_a6a98cd9b3cd", path: "page/component/confirm/index?data=" + res.data["data"]).then((res) {
-                print(res);
-              });
-              MyDialog.showDialog(context, '已经成功调起微信支付', submitText: '支付完成', isCancel: true, onsubmit: () async {
-                final Result res2 = await HttpManager.get('wxpayTemp/getWxpayTemp', data: {'id': res.data["id"]});
-                if (res2.success && res2.data != new Map()) {
-                  if (res2.data['resultCode'] == 'NOT_PAY') {
-                    Toast.show(context, '支付取消', 1500, 'info');
-                  } else {
-                    Toast.show(context, '购买成功', 1500, 'success');
-                    getUserInfo();
-                    Navigator.of(context).pop();
-                  }
-                }
-              });
-            }
-
-            //  String str= 'eyJhbW91bnQiOiIxIiwiYX
-
-            //  String str= 'eyJhbW91bnQiOiIxIiwiYXR0YWNoIjoie1widG90YWxcIjoxLFwicHJvZHVjdElkXCI6XCIxXCIsXCJ1c2VySWRcIjpcIjg0NzA1XCIsXCJjYXNoXCI6MTB9IiwiYm9keSI6IjHpl6jnpagiLCJtY2hfaWQiOiIxMDAwMDAwODM1NDEiLCJub25jZV9zdHIiOiI1ZmM3NWVlZmY0MjA0MGEwYmEwMWQwZDE2NGJhYmU2YyIsIm5vdGlmeV91cmwiOiJodHRwOi8vMTIzLjU4LjI0MC4xMzg6OTAwMC8iLCJvdXRfdHJhZGVfbm8iOiIxNTY0OTkzMjYwNDc0NjQxNTcyNyIsInBheW1lbnRfdHlwZSI6InRyYWRlLndlaXhpbi5hcHAiLCJyZXR1cm5fdXJsIjoiaHR0cDovLzEyMy41OC4yNDAuMTM4OjkwMDAvbHlmL25vdGlmeSIsInNpZ24iOiIxYjg0NWE4ZjNmYWI0OTA1NTViYWE5MGZkYzFkODc1MyIsInNpZ25fdHlwZSI6Ik1ENSIsInNwYmlsbF9jcmVhdGVfaXAiOiIxMTkuMTM3LjU1LjE4OSJ9';            fluwx.launchMiniProgram(username: "gh_a6a98cd9b3cd",path:"page/component/confirm/index?data="+str);
-            // fluwx.launchMiniProgram(username: "gh_a6a98cd9b3cd",path:"page/component/confirm/index?data="+str);
-            // Toast.show(context, '加载中', -1, 'loading');
-            // final Result res = await HttpManager.post('productInfo/buy', data: {
+            // String ipAddress = await GetIp.ipAddress;
+            // print(ipAddress);
+            // final Result res = await HttpManager.get('lyf/appUnifiedOrder', data: {
             //   'userId': StoreProvider.of<AppState>(context).state.userInfo.id,
             //   'userId': StoreProvider.of<AppState>(context).state.userInfo.id,
-            //   'typeFlag': widget.type,
-            //   'money': widget.chooseProduct.money,
-            //   'id': widget.chooseProduct.id
+            //   // 'typeFlag': widget.type,
+            //   'ip': ipAddress,
+            //   'productId': widget.chooseProduct.id
             // });
             // });
-            // Toast.hide();
+            // print(StoreProvider.of<AppState>(context).state.userInfo.id);
             // if (res.success) {
             // if (res.success) {
-            //   Toast.show(context, '购买成功', 1500, 'success');
-            //   getUserInfo();
-            //   Navigator.of(context).pop();
-            // } else {
-            //   Toast.show(context, res.error, 1500, 'info');
+            //   fluwx.launchMiniProgram(username: "gh_a6a98cd9b3cd", path: "page/component/confirm/index?data=" + res.data["data"]).then((res) {
+            //     print(res);
+            //   });
+            //   MyDialog.showDialog(context, '已经成功调起微信支付', submitText: '支付完成', isCancel: true, onsubmit: () async {
+            //     final Result res2 = await HttpManager.get('wxpayTemp/getWxpayTemp', data: {'id': res.data["id"]});
+            //     if (res2.success && res2.data != new Map()) {
+            //       if (res2.data['resultCode'] == 'NOT_PAY') {
+            //         Toast.show(context, '支付取消', 1500, 'info');
+            //       } else {
+            //         Toast.show(context, '购买成功', 1500, 'success');
+            //         getUserInfo();
+            //         Navigator.of(context).pop();
+            //       }
+            //     }
+            //   });
             // }
             // }
+
+            
+            Toast.show(context, '加载中', -1, 'loading');
+            final Result res = await HttpManager.post('productInfo/buy', data: {
+              'userId': StoreProvider.of<AppState>(context).state.userInfo.id,
+              'typeFlag': widget.type,
+              'money': widget.chooseProduct.money,
+              'id': widget.chooseProduct.id
+            });
+            Toast.hide();
+            if (res.success) {
+              Toast.show(context, '购买成功', 1500, 'success');
+              getUserInfo();
+              Navigator.of(context).pop();
+            } else {
+              Toast.show(context, res.error, 1500, 'info');
+            }
           },
           },
         ),
         ),
       ),
       ),

+ 41 - 36
lib/pages/CompetitionInformation.dart

@@ -1,12 +1,10 @@
 import 'package:flutter/material.dart';
 import 'package:flutter/material.dart';
 import 'package:flutter_swiper/flutter_swiper.dart';
 import 'package:flutter_swiper/flutter_swiper.dart';
-import '../model/HouseInfo.dart';
 import '../widget/LinearButton.dart';
 import '../widget/LinearButton.dart';
 
 
 //竞赛须知
 //竞赛须知
 class CompetitionInformation extends StatefulWidget {
 class CompetitionInformation extends StatefulWidget {
-  HouseInfo houseInfo;
-  CompetitionInformation(this.houseInfo);
+  CompetitionInformation();
   @override
   @override
   CompetitionInformationState createState() => CompetitionInformationState();
   CompetitionInformationState createState() => CompetitionInformationState();
 }
 }
@@ -34,12 +32,11 @@ class CompetitionInformationState extends State<CompetitionInformation> {
                     itemHeight: 422.0,
                     itemHeight: 422.0,
                     control: SwiperControl(color: Theme.of(context).primaryColor, disableColor: Colors.transparent),
                     control: SwiperControl(color: Theme.of(context).primaryColor, disableColor: Colors.transparent),
                     index: nowSwiperIndex,
                     index: nowSwiperIndex,
-                    itemCount: 4,
+                    itemCount: 3,
                     scrollDirection: Axis.horizontal,
                     scrollDirection: Axis.horizontal,
                     loop: false,
                     loop: false,
                     itemBuilder: (context, index) {
                     itemBuilder: (context, index) {
                       return InfoBox(
                       return InfoBox(
-                          houseInfo: widget.houseInfo,
                           typeIndex: index + 1,
                           typeIndex: index + 1,
                           next: () {
                           next: () {
                             _swiperController.next();
                             _swiperController.next();
@@ -59,11 +56,10 @@ class CompetitionInformationState extends State<CompetitionInformation> {
 typedef OnTapHomeMenu = void Function();
 typedef OnTapHomeMenu = void Function();
 
 
 class InfoBox extends StatelessWidget {
 class InfoBox extends StatelessWidget {
-  InfoBox({Key key, this.typeIndex, this.next, this.end, this.houseInfo}) : super(key: key);
+  InfoBox({Key key, this.typeIndex, this.next, this.end}) : super(key: key);
   final int typeIndex;
   final int typeIndex;
   final OnTapHomeMenu next;
   final OnTapHomeMenu next;
   final OnTapHomeMenu end;
   final OnTapHomeMenu end;
-  final HouseInfo houseInfo;
 
 
   @override
   @override
   Widget build(BuildContext context) {
   Widget build(BuildContext context) {
@@ -79,7 +75,7 @@ class InfoBox extends StatelessWidget {
             padding: EdgeInsets.only(top: 25),
             padding: EdgeInsets.only(top: 25),
             child: Column(
             child: Column(
               children: <Widget>[
               children: <Widget>[
-                Text('竞赛须知 ' + typeIndex.toString() + '/4', style: TextStyle(color: Color(0xFFC2524D), fontSize: 20, fontWeight: FontWeight.w600)),
+                Text('竞赛须知 ' + typeIndex.toString() + '/3', style: TextStyle(color: Color(0xFFC2524D), fontSize: 20, fontWeight: FontWeight.w600)),
                 _centerContent(typeIndex, context)
                 _centerContent(typeIndex, context)
               ],
               ],
             ),
             ),
@@ -109,8 +105,8 @@ class InfoBox extends StatelessWidget {
                     width: 220,
                     width: 220,
                     height: 36,
                     height: 36,
                     child: LinearButton(
                     child: LinearButton(
-                      btntext: typeIndex != 4 ? '下一个' : '知道了',
-                      onTapHomeMenu: typeIndex != 4 ? next : end,
+                      btntext: typeIndex != 3 ? '下一个' : '知道了',
+                      onTapHomeMenu: typeIndex != 3 ? next : end,
                     )
                     )
                     //  RaisedButton(
                     //  RaisedButton(
                     //   textColor: Colors.white,
                     //   textColor: Colors.white,
@@ -118,7 +114,7 @@ class InfoBox extends StatelessWidget {
                     //   onPressed: typeIndex != 4 ? next : end,
                     //   onPressed: typeIndex != 4 ? next : end,
                     // ),
                     // ),
                     ),
                     ),
-               typeIndex!=4? FlatButton(
+               typeIndex!=3? FlatButton(
                   textColor: Color(0xFF727785),
                   textColor: Color(0xFF727785),
                   highlightColor: Colors.transparent,
                   highlightColor: Colors.transparent,
                   splashColor: Colors.transparent,
                   splashColor: Colors.transparent,
@@ -143,27 +139,28 @@ class InfoBox extends StatelessWidget {
     Widget useContent = Container();
     Widget useContent = Container();
     TextStyle _text = TextStyle(color: Colors.white, fontSize: 14);
     TextStyle _text = TextStyle(color: Colors.white, fontSize: 14);
 
 
+    // if (index == 1) {
+    //   useContent = Container(
+    //     margin: EdgeInsets.only(top: 20),
+    //     padding: EdgeInsets.symmetric(horizontal: 20),
+    //     child: Column(
+    //       crossAxisAlignment: CrossAxisAlignment.start,
+    //       children: <Widget>[
+    //         Text(
+    //           '吃鸡模式',
+    //           style: TextStyle(color: Color(0xFFFFB726)),
+    //         ),
+    //         Text('胜利条件:只要在游戏中成功吃鸡,即可获得一枚铂金奖牌,没有吃鸡即算做失败', style: TextStyle(color: Colors.white)),
+    //         Container(
+    //           height: 15,
+    //         ),
+    //         Text('评分模式', style: TextStyle(color: Color(0xFFFFB726))),
+    //         Text('胜利条件:不管游戏最终是否吃鸡,按游戏最终显示评分数值进行排序,评分相同用时短者优胜,前三名分别获得金银铜奖牌,其它人算做失败', style: TextStyle(color: Colors.white))
+    //       ],
+    //     ),
+    //   );
+    // } else 
     if (index == 1) {
     if (index == 1) {
-      useContent = Container(
-        margin: EdgeInsets.only(top: 20),
-        padding: EdgeInsets.symmetric(horizontal: 20),
-        child: Column(
-          crossAxisAlignment: CrossAxisAlignment.start,
-          children: <Widget>[
-            Text(
-              '吃鸡模式',
-              style: TextStyle(color: Color(0xFFFFB726)),
-            ),
-            Text('胜利条件:只要在游戏中成功吃鸡,即可获得一枚铂金奖牌,没有吃鸡即算做失败', style: TextStyle(color: Colors.white)),
-            Container(
-              height: 15,
-            ),
-            Text('评分模式', style: TextStyle(color: Color(0xFFFFB726))),
-            Text('胜利条件:不管游戏最终是否吃鸡,按游戏最终显示评分数值进行排序,评分相同用时短者优胜,前三名分别获得金银铜奖牌,其它人算做失败', style: TextStyle(color: Colors.white))
-          ],
-        ),
-      );
-    } else if (index == 2) {
       useContent = Container(
       useContent = Container(
         margin: EdgeInsets.only(top: 20),
         margin: EdgeInsets.only(top: 20),
         padding: EdgeInsets.symmetric(horizontal: 20),
         padding: EdgeInsets.symmetric(horizontal: 20),
@@ -192,7 +189,7 @@ class InfoBox extends StatelessWidget {
           ],
           ],
         ),
         ),
       );
       );
-    } else if (index == 3) {
+    } else if (index == 2) {
       useContent = Container(
       useContent = Container(
         margin: EdgeInsets.only(top: 20),
         margin: EdgeInsets.only(top: 20),
         padding: EdgeInsets.symmetric(horizontal: 20),
         padding: EdgeInsets.symmetric(horizontal: 20),
@@ -229,7 +226,7 @@ class InfoBox extends StatelessWidget {
           ],
           ],
         ),
         ),
       );
       );
-    } else if (index == 4) {
+    } else if (index == 3) {
       useContent = Container(
       useContent = Container(
         margin: EdgeInsets.only(top: 20),
         margin: EdgeInsets.only(top: 20),
         padding: EdgeInsets.symmetric(horizontal: 20),
         padding: EdgeInsets.symmetric(horizontal: 20),
@@ -242,15 +239,23 @@ class InfoBox extends StatelessWidget {
             Text.rich(
             Text.rich(
                 TextSpan(children: [
                 TextSpan(children: [
                   TextSpan(
                   TextSpan(
-                    text: '在游戏比赛结束后,',
+                    text: '进入《和平精英》游戏,',
+                    style: _text,
+                  ),
+                  TextSpan(
+                    text: '在任何模式中,击杀1-3人后(具体人数参见房间内信息),',
+                    style: TextStyle(color:Color(0xFFFFB726), fontSize: 14, fontWeight: FontWeight.w600),
+                  ),
+                  TextSpan(
+                    text: '立刻点击悬浮窗返回游戏,并点击',
                     style: _text,
                     style: _text,
                   ),
                   ),
                   TextSpan(
                   TextSpan(
-                    text: '请一定要点击查看游戏最后的分数名次结算页面',
+                    text: '“完成比赛”',
                     style: TextStyle(color:Color(0xFFFFB726), fontSize: 14, fontWeight: FontWeight.w600),
                     style: TextStyle(color:Color(0xFFFFB726), fontSize: 14, fontWeight: FontWeight.w600),
                   ),
                   ),
                   TextSpan(
                   TextSpan(
-                    text: ',返回游戏主页,最后再切换到我们竞赛app中,点击完成比赛,方可成功长传本次成绩,赢取大奖',
+                    text: '。最快完成的三位选手,获得1、2、3名。',
                     style: _text,
                     style: _text,
                   )
                   )
                 ]),
                 ]),

+ 1 - 1
lib/pages/HomePage.dart

@@ -50,7 +50,7 @@ class _HomePageState extends State<HomePage> with SingleTickerProviderStateMixin
       }
       }
     } else {
     } else {
       //引导页
       //引导页
-      showGruide();
+      // showGruide();
     }
     }
   }
   }
 
 

+ 23 - 4
lib/pages/MatchPage.dart

@@ -15,6 +15,7 @@ import '../widget/HouseItem.dart';
 import '../model/HouseInfo.dart';
 import '../model/HouseInfo.dart';
 import 'OpenRoom.dart';
 import 'OpenRoom.dart';
 import 'package:flutter_picker/flutter_picker.dart';
 import 'package:flutter_picker/flutter_picker.dart';
+import 'CompetitionInformation.dart';
 import '../model/GameInfo.dart';
 import '../model/GameInfo.dart';
 import 'dart:async';
 import 'dart:async';
 import 'dart:convert';
 import 'dart:convert';
@@ -40,6 +41,22 @@ class _MatchPageState extends State<MatchPage> with WidgetsBindingObserver {
   bool isFirst = true;
   bool isFirst = true;
   FocusNode _focusNode = new FocusNode();
   FocusNode _focusNode = new FocusNode();
 
 
+  //展示通知
+  void showNotice() {
+    Navigator.of(context).push(PageRouteBuilder(
+        opaque: false,
+        transitionDuration: Duration(milliseconds: 300),
+        transitionsBuilder: (BuildContext context, Animation<double> animation, Animation<double> secondaryAnimation, Widget child) {
+          return FadeTransition(
+            opacity: CurvedAnimation(parent: animation, curve: Curves.linear),
+            child: child,
+          );
+        },
+        pageBuilder: (BuildContext context, _, __) {
+          return CompetitionInformation();
+        }));
+  }
+
   void showPicker(BuildContext context) {
   void showPicker(BuildContext context) {
     List<String> _list = [];
     List<String> _list = [];
     for (var item in gameList) {
     for (var item in gameList) {
@@ -206,12 +223,14 @@ class _MatchPageState extends State<MatchPage> with WidgetsBindingObserver {
                   width: 102,
                   width: 102,
                   padding: EdgeInsets.all(15),
                   padding: EdgeInsets.all(15),
                   child: LinearButton(
                   child: LinearButton(
-                    btntext: '发起比赛',
-                    textColor: Color(0xFFA2423E),
+                    btntext: '竞赛须知',
+                    textColor: Color(0xFF2E3049),
                     btnHeight: 26.0,
                     btnHeight: 26.0,
-                    colorList: [Color(0xFFFFE77C), Color(0xFFFFE77C)],
+                    colorList: [Color(0xFFFFB726), Color(0xFFFFB726)],
                     textSize: 12.0,
                     textSize: 12.0,
-                    onTapHomeMenu: () => {Navigator.push(context, CupertinoPageRoute(builder: (context) => OpenRoom(roomFlag: '0')))},
+                    onTapHomeMenu: (){
+                      showNotice();
+                    },
                   ),
                   ),
                 )
                 )
               ],
               ],

+ 1 - 1
lib/pages/MyCode.dart

@@ -51,7 +51,7 @@ class MyCodeState extends State<MyCode> {
     return StoreConnector<AppState, UserInfo>(
     return StoreConnector<AppState, UserInfo>(
         converter: (Store store) => store.state.userInfo,
         converter: (Store store) => store.state.userInfo,
         builder: (context, userInfo) {
         builder: (context, userInfo) {
-          String qrstr =HttpManager.baseUrl+"share?userId=" + userInfo.id.toString();
+          String qrstr =HttpManager.baseUrl+"share?userId=${userInfo.id}&channel=${userInfo.channel}";
           // final cryptor = new PlatformStringCryptor();
           // final cryptor = new PlatformStringCryptor();
           return RepaintBoundary(
           return RepaintBoundary(
               key: globalKey,
               key: globalKey,

+ 5 - 4
lib/pages/OpenRoom.dart

@@ -32,7 +32,7 @@ class OpenRoomState extends State<OpenRoom> {
   TextStyle titleStyle = TextStyle(color: Colors.white, fontSize: 14);
   TextStyle titleStyle = TextStyle(color: Colors.white, fontSize: 14);
   TextStyle valStyle = TextStyle(color: Colors.white, fontSize: 15, fontWeight: FontWeight.w500);
   TextStyle valStyle = TextStyle(color: Colors.white, fontSize: 15, fontWeight: FontWeight.w500);
 
 
-  Map<String, dynamic> editRoomInfo = {'gameId': 1, 'houseLevel': 1, 'maxNumber': 5, 'scoreType': 0};
+  Map<String, dynamic> editRoomInfo = {'gameId': 1, 'houseLevel': 1, 'maxNumber': 5, 'killnumber': 3};
   List<GameInfo> gameList = [];
   List<GameInfo> gameList = [];
   List<HouseLevel> levelList = [];
   List<HouseLevel> levelList = [];
 
 
@@ -381,7 +381,7 @@ class OpenRoomState extends State<OpenRoom> {
                   //房间人数
                   //房间人数
                   ChooseContent(
                   ChooseContent(
                     title: '胜利条件',
                     title: '胜利条件',
-                    val: editRoomInfo['scoreType'] == 0 ? '评分' : '吃鸡',
+                    val:"击杀${editRoomInfo['killnumber']}人模式",
                     onTapHomeMenu: () {
                     onTapHomeMenu: () {
                       showScoreType(context);
                       showScoreType(context);
                     },
                     },
@@ -542,7 +542,8 @@ class OpenRoomState extends State<OpenRoom> {
   }
   }
 
 
   void showScoreType(BuildContext context) {
   void showScoreType(BuildContext context) {
-    List _list = ['评分', '吃鸡'];
+    List _list = ['击杀3人模式', '击杀5人模式', '击杀10人模式'];
+    List _val = [3, 5, 10];
     String PickerData = json.encode(_list);
     String PickerData = json.encode(_list);
     Picker(
     Picker(
         confirmText: '确定',
         confirmText: '确定',
@@ -553,7 +554,7 @@ class OpenRoomState extends State<OpenRoom> {
         columnPadding: const EdgeInsets.all(8.0),
         columnPadding: const EdgeInsets.all(8.0),
         onConfirm: (Picker picker, List value) {
         onConfirm: (Picker picker, List value) {
           setState(() {
           setState(() {
-            editRoomInfo['scoreType'] = _list[value[0]] == '评分' ? 0 : 1;
+            editRoomInfo['killnumber'] = _val[value[0]];
           });
           });
         }).showModal(this.context);
         }).showModal(this.context);
   }
   }

+ 166 - 120
lib/pages/RoomInfo.dart

@@ -173,8 +173,14 @@ class RoomInfoState extends State<RoomInfo> with SingleTickerProviderStateMixin
 
 
 //开始录屏提示框
 //开始录屏提示框
   void showSucessInfo(status) {
   void showSucessInfo(status) {
-    MyDialog.showDialog(context, '您已经完成比赛了吗,确认完成,那就点击下方完成竞赛按钮,上传本次成绩,祝您赢取大奖', title: '完成比赛', submitText: '我已完成比赛', onsubmit: () async {
-    
+    MyDialog.showDialog(context, '',
+        textList: [
+          {"value": '您已经完成杀戮目标了吗?确定请点击', "isImportant": false},
+          {"value": '“我已完成比赛”', "isImportant": true},
+          {"value": '按钮。上传本次成绩,最后的名次稍后公布。祝您取得好成绩!', "isImportant": false}
+        ],
+        title: '完成比赛',
+        submitText: '我已完成比赛', onsubmit: () async {
       HttpManager.post('playerInfo/update', data: {'id': playerInfo.id, 'statusFlag': status, 'endTime': DateTime.now().millisecondsSinceEpoch});
       HttpManager.post('playerInfo/update', data: {'id': playerInfo.id, 'statusFlag': status, 'endTime': DateTime.now().millisecondsSinceEpoch});
       bool success = await ScreenStreamPlugin.stop();
       bool success = await ScreenStreamPlugin.stop();
 
 
@@ -363,7 +369,7 @@ class RoomInfoState extends State<RoomInfo> with SingleTickerProviderStateMixin
           );
           );
         },
         },
         pageBuilder: (BuildContext context, _, __) {
         pageBuilder: (BuildContext context, _, __) {
-          return CompetitionInformation(houseInfo);
+          return CompetitionInformation();
         }));
         }));
   }
   }
 
 
@@ -411,6 +417,7 @@ class RoomInfoState extends State<RoomInfo> with SingleTickerProviderStateMixin
     };
     };
 
 
     Future.delayed(Duration.zero, () async {
     Future.delayed(Duration.zero, () async {
+      // showSucessInfo(3);
       getRoomInfo('first');
       getRoomInfo('first');
       userInfo = StoreProvider.of<AppState>(context).state.userInfo;
       userInfo = StoreProvider.of<AppState>(context).state.userInfo;
       // showStart();
       // showStart();
@@ -584,7 +591,7 @@ class RoomInfoState extends State<RoomInfo> with SingleTickerProviderStateMixin
                                               );
                                               );
                                             },
                                             },
                                             pageBuilder: (BuildContext context, _, __) {
                                             pageBuilder: (BuildContext context, _, __) {
-                                              return CompetitionInformation(houseInfo);
+                                              return CompetitionInformation();
                                             }));
                                             }));
                                       },
                                       },
                                     ),
                                     ),
@@ -611,32 +618,51 @@ class RoomInfoState extends State<RoomInfo> with SingleTickerProviderStateMixin
                           Container(
                           Container(
                             padding: EdgeInsets.symmetric(horizontal: 15),
                             padding: EdgeInsets.symmetric(horizontal: 15),
                             child: Row(
                             child: Row(
-                              // mainAxisAlignment: MainAxisAlignment.center,
+                              mainAxisAlignment: MainAxisAlignment.spaceBetween,
                               children: <Widget>[
                               children: <Widget>[
-                                Image.asset(
-                                  'images/icon_renshu.png',
-                                  width: 20,
-                                ),
-                                Text(
-                                  (houseInfo != null ? (houseInfo.playerNumber ?? 0).toString() : '0') +
-                                      '/' +
-                                      (houseInfo != null ? houseInfo.maxNumber.toString() : '0'),
-                                  style: TextStyle(fontSize: 14, fontWeight: FontWeight.w500, color: Color(0xFFB1B2C0)),
+                                Row(
+                                  children: <Widget>[
+                                    Image.asset(
+                                      'images/icon_renshu.png',
+                                    ),
+                                    Text(
+                                      (houseInfo != null ? (houseInfo.playerNumber ?? 0).toString() : '0') +
+                                          '/' +
+                                          (houseInfo != null ? houseInfo.maxNumber.toString() : '0'),
+                                      style: TextStyle(fontSize: 14, fontWeight: FontWeight.w500, color: Color(0xFFB1B2C0)),
+                                    ),
+                                  ],
                                 ),
                                 ),
-                                Container(
-                                  width: 30,
+
+                                   Row(
+                                  children: <Widget>[
+                                    Image.asset(
+                                      'images/house2.png',
+                                    ),
+                                    Text('X${houseInfo.bonus}',
+                                      style: TextStyle(fontSize: 14, fontWeight: FontWeight.w500, color: Color(0xFFB1B2C0)),
+                                    ),
+                                  ],
                                 ),
                                 ),
-                                Text.rich(TextSpan(children: [
-                                  TextSpan(text: "模式 ", style: TextStyle(color: Colors.white30, fontSize: 14)),
-                                  TextSpan(text: houseInfo.houseType == 0 ? '评分模式' : '吃鸡模式', style: TextStyle(color: Colors.white70, fontSize: 14)),
-                                ])),
-                                Container(
-                                  width: 30,
+                                // Container(
+                                //   width: 30,
+                                // ),
+                                Row(
+                                  children: <Widget>[
+                                    Image.asset(
+                                      'images/icon_jisha.png',
+                                    ),
+                                    Text('在游戏中击败${houseInfo.killnumber}人',
+                                      style: TextStyle(fontSize: 14, fontWeight: FontWeight.w500, color: Color(0xFFB1B2C0)),
+                                    ),
+                                  ],
                                 ),
                                 ),
-                                Text.rich(TextSpan(children: [
-                                  TextSpan(text: "房间ID ", style: TextStyle(color: Colors.white30, fontSize: 14)),
-                                  TextSpan(text: houseInfo.houseCode != null ? houseInfo.houseCode : '', style: TextStyle(color: Colors.white70, fontSize: 14)),
-                                ])),
+
+                               
+                                // Container(
+                                //   width: 10,
+                                // ),
+                                
                               ],
                               ],
                             ),
                             ),
                           ),
                           ),
@@ -662,95 +688,115 @@ class RoomInfoState extends State<RoomInfo> with SingleTickerProviderStateMixin
                                   child: playerInfo != null
                                   child: playerInfo != null
                                       ? Column(
                                       ? Column(
                                           children: <Widget>[
                                           children: <Widget>[
-                                          ( playerInfo.statusFlag!=7&&playerInfo.statusFlag!=9&&!playerInfo.dataError)? Container(
-                                              margin: EdgeInsets.symmetric(vertical: 10, horizontal: 15),
-                                              padding: EdgeInsets.all(15),
-                                              height: 80,
-                                              decoration: BoxDecoration(
-                                                  color: Color(0xFF3A3E61),
-                                                  borderRadius: BorderRadius.only(
-                                                      topRight: Radius.circular(8), bottomLeft: Radius.circular(8), bottomRight: Radius.circular(8))),
-                                              child: Column(
-                                                crossAxisAlignment: CrossAxisAlignment.start,
-                                                mainAxisAlignment: MainAxisAlignment.spaceBetween,
-                                                children: <Widget>[
-                                                  Text('和平精英游戏结果', style: TextStyle(color: Colors.white54, fontSize: 13)),
-                                                  Row(
-                                                    mainAxisAlignment: MainAxisAlignment.spaceBetween,
-                                                    children: <Widget>[
-                                                      Text.rich(TextSpan(children: [
-                                                        TextSpan(text: "名次 ", style: TextStyle(color: Colors.white, fontSize: 14)),
-                                                        TextSpan(
-                                                            text: '${myRank}',
-                                                            style: TextStyle(color: Color(0xFFFFB726), fontWeight: FontWeight.w500, fontSize: 14)),
-                                                      ])),
-                                                      Text.rich(TextSpan(children: [
-                                                        TextSpan(text: "时长 ", style: TextStyle(color: Colors.white, fontSize: 14)),
-                                                        TextSpan(
-                                                            text: playerInfo.liveTime != null ? '${playerInfo.liveTime}' : '0',
-                                                            style: TextStyle(color: Color(0xFFFFB726), fontWeight: FontWeight.w500, fontSize: 14)),
-                                                      ])),
-                                                      Text.rich(TextSpan(children: [
-                                                        TextSpan(text: "评分 ", style: TextStyle(color: Colors.white, fontSize: 14)),
-                                                        TextSpan(
-                                                            text: '${playerInfo.score}',
-                                                            style: TextStyle(color: Color(0xFFFFB726), fontWeight: FontWeight.w500, fontSize: 14)),
-                                                      ])),
-                                                    ],
-                                                  )
-                                                ],
-                                              ),
-                                            ):Container(),
+                                            // ( playerInfo.statusFlag!=7&&playerInfo.statusFlag!=9&&!playerInfo.dataError)?
                                             Container(
                                             Container(
-                                              margin: EdgeInsets.symmetric(vertical: 10, horizontal: 15),
-                                              padding: EdgeInsets.all(15),
-                                              height: 140,
-                                              decoration: BoxDecoration(
-                                                  color: Color(0xFF3A3E61),
-                                                  borderRadius: BorderRadius.only(
-                                                      topRight: Radius.circular(8), bottomLeft: Radius.circular(8), bottomRight: Radius.circular(8))),
-                                              child: Column(
-                                                crossAxisAlignment: CrossAxisAlignment.start,
-                                                mainAxisAlignment: MainAxisAlignment.spaceBetween,
-                                                children: <Widget>[
-                                                  Text('比赛结果', style: TextStyle(color: Colors.white54, fontSize: 13)),
-                                                  Row(
-                                                    mainAxisAlignment: MainAxisAlignment.spaceBetween,
-                                                    children: <Widget>[
-                                                      Text("参数成员 ", style: TextStyle(color: Colors.white, fontSize: 14)),
-                                                      Text("${houseInfo.playerNumber}人 ",
-                                                          style: TextStyle(color: Color(0xFFFFB726), fontWeight: FontWeight.w500, fontSize: 14))
-                                                    ],
-                                                  ),
-                                                  Row(
-                                                    mainAxisAlignment: MainAxisAlignment.spaceBetween,
-                                                    children: <Widget>[
-                                                      Text("是否吃鸡 ", style: TextStyle(color: Colors.white, fontSize: 14)),
-                                                      Text(playerInfo.ranking == 1 ? '是' : '否',
-                                                          style: TextStyle(color: Color(0xFFFFB726), fontWeight: FontWeight.w500, fontSize: 14))
-                                                    ],
-                                                  ),
-                                                  Row(
-                                                    mainAxisAlignment: MainAxisAlignment.spaceBetween,
-                                                    children: <Widget>[
-                                                      Text("获得奖牌 ", style: TextStyle(color: Colors.white, fontSize: 14)),
-                                                      img != ''
-                                                          ? Row(
-                                                              children: <Widget>[
-                                                                prefix1.Image.asset(
-                                                                  img,
-                                                                  width: 20,
-                                                                ),
-                                                                Text("+1",
+                                              width: double.infinity,
+                                              margin: EdgeInsets.symmetric(horizontal: 15, vertical: 10),
+                                              padding: EdgeInsets.symmetric(vertical: 10),
+                                              height: 40,
+                                              decoration:
+                                                  BoxDecoration(color: Color(0xFFD4504B).withOpacity(0.1), borderRadius: BorderRadius.all(Radius.circular(4))),
+                                              child: Text(
+                                                (playerInfo.statusFlag != 7 && playerInfo.statusFlag != 9 && !playerInfo.dataError)
+                                                    ? (playerInfo.houseRank < 3 ? '恭喜您,您获得了第${playerInfo.houseRank}名!' : '很遗憾您未能进入前三名,下次加油!')
+                                                    : '很遗憾您本次上传的比赛结果解析失败',
+                                                style: prefix0.TextStyle(
+                                                  color: Color(0xFFD4504B),
+                                                  fontSize: 15,
+                                                ),
+                                                textAlign: TextAlign.center,
+                                              ),
+                                            ),
+                                            (playerInfo.statusFlag != 7 && playerInfo.statusFlag != 9 && !playerInfo.dataError)
+                                                ? Container(
+                                                    margin: EdgeInsets.symmetric(vertical: 10, horizontal: 15),
+                                                    padding: EdgeInsets.all(15),
+                                                    height: 140,
+                                                    decoration: BoxDecoration(
+                                                        color: Color(0xFF3A3E61),
+                                                        borderRadius: BorderRadius.only(
+                                                            topRight: Radius.circular(8), bottomLeft: Radius.circular(8), bottomRight: Radius.circular(8))),
+                                                    child: Column(
+                                                      crossAxisAlignment: CrossAxisAlignment.start,
+                                                      mainAxisAlignment: MainAxisAlignment.spaceBetween,
+                                                      children: <Widget>[
+                                                        Text('比赛结果', style: TextStyle(color: Colors.white54, fontSize: 13)),
+                                                        Row(
+                                                          mainAxisAlignment: MainAxisAlignment.spaceBetween,
+                                                          children: <Widget>[
+                                                            Text("参数成员 ", style: TextStyle(color: Colors.white, fontSize: 14)),
+                                                            Text("${houseInfo.playerNumber}人 ",
+                                                                style: TextStyle(color: Color(0xFFFFB726), fontWeight: FontWeight.w500, fontSize: 14))
+                                                          ],
+                                                        ),
+                                                        Row(
+                                                          mainAxisAlignment: MainAxisAlignment.spaceBetween,
+                                                          children: <Widget>[
+                                                            Text("我的排名 ", style: TextStyle(color: Colors.white, fontSize: 14)),
+                                                            Text('${playerInfo.houseRank}',
+                                                                style: TextStyle(color: Color(0xFFFFB726), fontWeight: FontWeight.w500, fontSize: 14))
+                                                          ],
+                                                        ),
+                                                        Row(
+                                                          mainAxisAlignment: MainAxisAlignment.spaceBetween,
+                                                          children: <Widget>[
+                                                            Text("获得奖牌 ", style: TextStyle(color: Colors.white, fontSize: 14)),
+                                                            img != ''
+                                                                ? Row(
+                                                                    children: <Widget>[
+                                                                      Image.asset(
+                                                                        img,
+                                                                        width: 20,
+                                                                      ),
+                                                                      Text("+1",
+                                                                          style: TextStyle(color: Color(0xFFFFB726), fontWeight: FontWeight.w500, fontSize: 14))
+                                                                    ],
+                                                                  )
+                                                                : Text("无",
                                                                     style: TextStyle(color: Color(0xFFFFB726), fontWeight: FontWeight.w500, fontSize: 14))
                                                                     style: TextStyle(color: Color(0xFFFFB726), fontWeight: FontWeight.w500, fontSize: 14))
-                                                              ],
-                                                            )
-                                                          : Text("无", style: TextStyle(color: Color(0xFFFFB726), fontWeight: FontWeight.w500, fontSize: 14))
-                                                    ],
+                                                          ],
+                                                        )
+                                                      ],
+                                                    ),
+                                                  )
+                                                : Container(
+                                                    margin: EdgeInsets.symmetric(vertical: 10, horizontal: 15),
+                                                    padding: EdgeInsets.all(15),
+                                                    height: 239,
+                                                    width: double.infinity,
+                                                    decoration: BoxDecoration(
+                                                        color: Color(0xFF3A3E61),
+                                                        borderRadius: BorderRadius.only(
+                                                            topRight: Radius.circular(8), bottomLeft: Radius.circular(8), bottomRight: Radius.circular(8))),
+                                                    child: Column(
+                                                      crossAxisAlignment: CrossAxisAlignment.start,
+                                                      children: <Widget>[
+                                                        Text(
+                                                          '造成此情况等原因可能是:',
+                                                          style: TextStyle(color: Colors.white54, fontSize: 13),
+                                                        ),
+                                                        Container(
+                                                          height: 10,
+                                                        ),
+                                                        Text(
+                                                          '1、没有实际进行游戏比赛 ',
+                                                          style: TextStyle(color: Colors.white, fontSize: 13),
+                                                        ),
+                                                        Text(
+                                                          '2、使用作弊手段进行游戏  ',
+                                                          style: TextStyle(color: Colors.white, fontSize: 13),
+                                                        ),
+                                                        Text(
+                                                          '3、手机性能或电量过低,在运行和平精英游戏时自动将我们平台APP从后台进程中退掉  ',
+                                                          style: TextStyle(color: Colors.white, fontSize: 13),
+                                                        ),
+                                                        Text(
+                                                          '4、游戏时间过长,没有在最大时间内返回平台APP点击结束游戏 ',
+                                                          style: TextStyle(color: Colors.white, fontSize: 13),
+                                                        ),
+                                                      ],
+                                                    ),
                                                   )
                                                   )
-                                                ],
-                                              ),
-                                            )
                                           ],
                                           ],
                                         )
                                         )
                                       : Container(),
                                       : Container(),
@@ -806,7 +852,7 @@ class RoomInfoState extends State<RoomInfo> with SingleTickerProviderStateMixin
                     Container(
                     Container(
                       margin: EdgeInsets.only(left: 6),
                       margin: EdgeInsets.only(left: 6),
                       child: Text(
                       child: Text(
-                        '×1',
+                        '×${houseInfo.bonus}',
                         style: TextStyle(color: Colors.white, fontSize: 16, fontWeight: FontWeight.w500),
                         style: TextStyle(color: Colors.white, fontSize: 16, fontWeight: FontWeight.w500),
                       ),
                       ),
                     ),
                     ),
@@ -853,7 +899,7 @@ class RoomInfoState extends State<RoomInfo> with SingleTickerProviderStateMixin
               Container(
               Container(
                 margin: EdgeInsets.only(left: 6),
                 margin: EdgeInsets.only(left: 6),
                 child: Text(
                 child: Text(
-                  '×1',
+                  '×${houseInfo.bonus}',
                   style: TextStyle(color: Colors.white, fontSize: 16, fontWeight: FontWeight.w500),
                   style: TextStyle(color: Colors.white, fontSize: 16, fontWeight: FontWeight.w500),
                 ),
                 ),
               ),
               ),
@@ -873,7 +919,7 @@ class RoomInfoState extends State<RoomInfo> with SingleTickerProviderStateMixin
           width: double.infinity,
           width: double.infinity,
           padding: EdgeInsets.symmetric(horizontal: 15, vertical: 20),
           padding: EdgeInsets.symmetric(horizontal: 15, vertical: 20),
           height: 88,
           height: 88,
-          child: LinearButton(btntext: '房间已经开始,加入通道关闭', colorList: [Color(0xFFC99C09), Color(0xFFC7873E)], textColor: Color(0xFF252532))
+          child: LinearButton(btntext: '房间已经开始,加入通道关闭', colorList: [Color(0xFFB34A4A), Color(0xFFB34A4A)], textColor: Color(0xFF252532))
           // RaisedButton(
           // RaisedButton(
           //   disabledColor: Color(0xFFC2524D),
           //   disabledColor: Color(0xFFC2524D),
           //   disabledTextColor: Color(0xFF252532),
           //   disabledTextColor: Color(0xFF252532),
@@ -939,14 +985,14 @@ class RoomInfoState extends State<RoomInfo> with SingleTickerProviderStateMixin
             width: double.infinity,
             width: double.infinity,
             padding: EdgeInsets.symmetric(horizontal: 15, vertical: 20),
             padding: EdgeInsets.symmetric(horizontal: 15, vertical: 20),
             height: 88,
             height: 88,
-            child: LinearButton(btntext: '等待开始中', colorList: [Color(0xFFAF4946), Color(0xFFAF4946)], textColor: Color(0xFF252532)));
+            child: LinearButton(btntext: '等待开始中', colorList: [Color(0xFFB34A4A), Color(0xFFB34A4A)], textColor: Color(0xFF252532)));
       }
       }
     } else if (isJoin && statusFlag == 8) {
     } else if (isJoin && statusFlag == 8) {
       return Container(
       return Container(
           width: double.infinity,
           width: double.infinity,
           padding: EdgeInsets.symmetric(horizontal: 15, vertical: 20),
           padding: EdgeInsets.symmetric(horizontal: 15, vertical: 20),
           height: 88,
           height: 88,
-          child: LinearButton(btntext: '正在努力解析视频中', colorList: [Color(0xFFAF4946), Color(0xFFAF4946)], textColor: Color(0xFF252532))
+          child: LinearButton(btntext: '正在努力解析视频中', colorList: [Color(0xFFB34A4A), Color(0xFFB34A4A)], textColor: Color(0xFF252532))
           //   RaisedButton(
           //   RaisedButton(
           //   disabledColor: Color(0xFFC2524D),
           //   disabledColor: Color(0xFFC2524D),
           //   disabledTextColor: Color(0xFF252532),
           //   disabledTextColor: Color(0xFF252532),
@@ -966,10 +1012,10 @@ class RoomInfoState extends State<RoomInfo> with SingleTickerProviderStateMixin
         width: double.infinity,
         width: double.infinity,
         padding: EdgeInsets.symmetric(horizontal: 15, vertical: 20),
         padding: EdgeInsets.symmetric(horizontal: 15, vertical: 20),
         height: 88,
         height: 88,
-        child: LinearButton(btntext: '预计还有 ' + getSecondsMIn(_time) + ' 结算', colorList: [Color(0xFFAF4946), Color(0xFFAF4946)], textColor: Color(0xFF252532)),
+        child: LinearButton(btntext: '预计还有 ' + getSecondsMIn(_time) + ' 结算', colorList: [Color(0xFFB34A4A), Color(0xFFB34A4A)], textColor: Color(0xFF252532)),
       );
       );
     } else if (statusFlag == 4 && tabIndex == 0) {
     } else if (statusFlag == 4 && tabIndex == 0) {
-      if (isJoin && canAppeal && appealState == 0 &&playerInfo!=null&&(playerInfo.statusFlag==9||playerInfo.statusFlag==7||playerInfo.dataError)) {
+      if (isJoin && canAppeal && appealState == 0 && playerInfo != null && (playerInfo.statusFlag == 9 || playerInfo.statusFlag == 7 || playerInfo.dataError)) {
         return Container(
         return Container(
             width: double.infinity,
             width: double.infinity,
             padding: EdgeInsets.symmetric(horizontal: 15, vertical: 20),
             padding: EdgeInsets.symmetric(horizontal: 15, vertical: 20),
@@ -993,7 +1039,7 @@ class RoomInfoState extends State<RoomInfo> with SingleTickerProviderStateMixin
             width: double.infinity,
             width: double.infinity,
             padding: EdgeInsets.symmetric(horizontal: 15, vertical: 20),
             padding: EdgeInsets.symmetric(horizontal: 15, vertical: 20),
             height: 88,
             height: 88,
-            child: LinearButton(btntext: '已提交申诉', colorList: [Color(0xFFAF4946), Color(0xFFAF4946)], textColor: Color(0xFF252532)));
+            child: LinearButton(btntext: '已提交申诉', colorList: [Color(0xFFB34A4A), Color(0xFFB34A4A)], textColor: Color(0xFF252532)));
       } else {
       } else {
         return Container();
         return Container();
       }
       }

+ 15 - 31
lib/pages/ShoppingMall.dart

@@ -18,36 +18,18 @@ class ShoppingMall extends StatefulWidget {
 }
 }
 
 
 class ShoppingMallState extends State<ShoppingMall> {
 class ShoppingMallState extends State<ShoppingMall> {
-  final List<Tab> myTabs = <Tab>[Tab(text: '门票购买'), Tab(text: '会员充值')];
+  // final List<Tab> myTabs = <Tab>[Tab(text: '门票购买'), Tab(text: '会员充值')];
 
 
   @override
   @override
   Widget build(BuildContext context) {
   Widget build(BuildContext context) {
-    return DefaultTabController(
-      length: myTabs.length,
-      child: Scaffold(
-        appBar: AppBar(
-          // backgroundColor: PRIMARY_COLOR,
-          title: Padding(
-            padding: EdgeInsets.only(right: 56),
-            child: TabBar(
-              tabs: myTabs,
-              indicatorColor: Theme.of(context).primaryColor,
-              labelColor: Theme.of(context).primaryColor,
-              unselectedLabelColor: Colors.white,
-              indicatorSize: TabBarIndicatorSize.label,
-            ),
+    return Scaffold(
+          appBar: AppBar(
+            // backgroundColor: PRIMARY_COLOR,
+            title: Text('充值参赛券'),
+            centerTitle: true,
           ),
           ),
-        ),
-        body: TabBarView(
-          children: <Widget>[
-            Recharge(type: 0),
-            Recharge(
-              type: 1,
-            )
-          ],
-        ),
-      ),
-    );
+          body: Recharge(type: 0),
+        );
   }
   }
 }
 }
 
 
@@ -160,7 +142,9 @@ class RechargeState extends State<Recharge> {
                 child: FlatButton(
                 child: FlatButton(
                   color: Color(0xFF24263A),
                   color: Color(0xFF24263A),
                   padding: EdgeInsets.all(0),
                   padding: EdgeInsets.all(0),
-                  shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(4.0),side: BorderSide(color: isChoose ? Theme.of(context).primaryColor : Colors.transparent, width: 1)),
+                  shape: RoundedRectangleBorder(
+                      borderRadius: BorderRadius.circular(4.0),
+                      side: BorderSide(color: isChoose ? Theme.of(context).primaryColor : Colors.transparent, width: 1)),
                   disabledColor: Color(0xFF24263A),
                   disabledColor: Color(0xFF24263A),
                   child: Container(
                   child: Container(
                     child: Stack(
                     child: Stack(
@@ -248,10 +232,10 @@ class ShoopingBtn extends StatelessWidget {
     return Container(
     return Container(
       height: 70,
       height: 70,
       decoration: BoxDecoration(
       decoration: BoxDecoration(
-          // gradient: LinearGradient(begin: Alignment.topCenter, end: Alignment.bottomCenter, stops: [0.0, 0.5], colors: [Color(0xFF464B6A), Color(0xFF35395E)])
-          color: Color(0xFF3A3E61),
-          borderRadius: BorderRadius.all(Radius.circular(4)),
-          ),
+        // gradient: LinearGradient(begin: Alignment.topCenter, end: Alignment.bottomCenter, stops: [0.0, 0.5], colors: [Color(0xFF464B6A), Color(0xFF35395E)])
+        color: Color(0xFF3A3E61),
+        borderRadius: BorderRadius.all(Radius.circular(4)),
+      ),
       child: Material(
       child: Material(
           color: Colors.transparent,
           color: Colors.transparent,
           child: InkWell(
           child: InkWell(

+ 283 - 0
lib/pages/ShoppingMall_old.dart

@@ -0,0 +1,283 @@
+import 'package:flutter/material.dart';
+import 'package:flutter_redux/flutter_redux.dart';
+import 'package:flutter/cupertino.dart';
+import '../redux/AppState.dart';
+import '../model/ProductInfo.dart';
+import '../widget/Dialog.dart';
+import '../redux/UserRedux.dart';
+import '../model/UserInfo.dart';
+import '../styles/colors.dart';
+import '../net/HttpManager.dart';
+import '../net/Result.dart';
+import '../styles/totast.dart';
+import 'ChoosePay.dart';
+
+class ShoppingMall extends StatefulWidget {
+  @override
+  ShoppingMallState createState() => ShoppingMallState();
+}
+
+class ShoppingMallState extends State<ShoppingMall> {
+  final List<Tab> myTabs = <Tab>[Tab(text: '门票购买'), Tab(text: '会员充值')];
+
+  @override
+  Widget build(BuildContext context) {
+    return DefaultTabController(
+      length: myTabs.length,
+      child: Scaffold(
+        appBar: AppBar(
+          // backgroundColor: PRIMARY_COLOR,
+          title: Padding(
+            padding: EdgeInsets.only(right: 56),
+            child: TabBar(
+              tabs: myTabs,
+              indicatorColor: Theme.of(context).primaryColor,
+              labelColor: Theme.of(context).primaryColor,
+              unselectedLabelColor: Colors.white,
+              indicatorSize: TabBarIndicatorSize.label,
+            ),
+          ),
+        ),
+        body: TabBarView(
+          children: <Widget>[
+            Recharge(type: 0),
+            Recharge(
+              type: 1,
+            )
+          ],
+        ),
+      ),
+    );
+  }
+}
+
+class Recharge extends StatefulWidget {
+  Recharge({Key key, this.type}) : super(key: key);
+  final int type; //类型 0 金币 1 会员
+  @override
+  RechargeState createState() => RechargeState();
+}
+
+class RechargeState extends State<Recharge> {
+  Future<void> getUserInfo() async {
+    Result res = await HttpManager.get('userInfo/getUserInfo');
+    if (res.success) {
+      print(res.data);
+      StoreProvider.of<AppState>(context).dispatch(UpdateUserAction(UserInfo.fromJson(res.data)));
+    } else {}
+  }
+
+  List moneyList = [100, 300, 500, 1000, 2000, 5000];
+  List vipList = [
+    {'name': 'VIP1', 'value': 100},
+    {'name': 'VIP2', 'value': 300},
+    {'name': 'VIP3', 'value': 500},
+    {'name': 'VIP4', 'value': 1000},
+    {'name': 'VIP5', 'value': 2000},
+    {'name': 'VIP6', 'value': 5000}
+  ];
+  List<ProductInfo> productInfoList = [];
+  int chooseMoney = 0;
+  ProductInfo chooseProduct;
+
+  Future<void> getInfoList() async {
+    Toast.show(context, '加载中', -1, 'loading');
+    final Result res = await HttpManager.get('productInfo/all', data: {'typeFlag': widget.type});
+    Toast.hide();
+    if (res.success) {
+      for (var item in res.data) {
+        ProductInfo product;
+        product = ProductInfo.fromJson(item);
+        setState(() {
+          productInfoList.add(product);
+        });
+      }
+      if (productInfoList.isNotEmpty) {
+        setState(() {
+          chooseProduct = productInfoList[0];
+        });
+      }
+    }
+  }
+
+  Future<void> showDialog(id) async {
+    Toast.show(context, '加载中', -1, 'loading');
+    Result res = await HttpManager.get('alertMessage/getOne', data: {'id': id});
+    Toast.hide();
+    if (res.success) {
+      MyDialog.showDialog(context, res.data['remark']);
+    }
+  }
+
+  @override
+  void initState() {
+    super.initState();
+    getInfoList();
+  }
+
+  @override
+  Widget build(BuildContext context) {
+    return Scaffold(
+      body: Container(
+        color: BG_COLOR,
+        child: ListView.builder(
+            itemCount: productInfoList.length + 1,
+            itemBuilder: (BuildContext context, int index) {
+              if (index == 0) {
+                return Padding(
+                  padding: EdgeInsets.fromLTRB(15, 15, 15, 10),
+                  child: Row(
+                    crossAxisAlignment: CrossAxisAlignment.center,
+                    mainAxisAlignment: MainAxisAlignment.center,
+                    children: <Widget>[
+                      Expanded(
+                        flex: 1,
+                        child: ShoopingBtn('images/icon_haoli.png', '更多好礼', onTapHomeMenu: () {
+                          showDialog(2);
+                        }),
+                      ),
+                      Container(
+                        width: 15,
+                      ),
+                      Expanded(
+                        flex: 1,
+                        child: ShoopingBtn('images/icon_shangwu.png', '商务合作', onTapHomeMenu: () {
+                          showDialog(3);
+                        }),
+                      ),
+                    ],
+                  ),
+                );
+              }
+              bool isChoose = false;
+              if (productInfoList[index - 1].id == chooseProduct.id) {
+                isChoose = true;
+              }
+              return Container(
+                padding: EdgeInsets.symmetric(horizontal: 15),
+                margin: EdgeInsets.only(top: 10),
+                height: 60,
+                child: FlatButton(
+                  color: Color(0xFF24263A),
+                  padding: EdgeInsets.all(0),
+                  shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(4.0),side: BorderSide(color: isChoose ? Theme.of(context).primaryColor : Colors.transparent, width: 1)),
+                  disabledColor: Color(0xFF24263A),
+                  child: Container(
+                    child: Stack(
+                      children: <Widget>[
+                        Center(
+                          child: Row(
+                            mainAxisAlignment: MainAxisAlignment.center,
+                            children: <Widget>[
+                              Text(productInfoList[index - 1].productName,
+                                  style: TextStyle(color: Color(0xFFFFFFFF), fontWeight: FontWeight.w500, fontSize: 15)),
+                              Container(
+                                width: 10,
+                              ),
+                              Text(
+                                '¥' + productInfoList[index - 1].money.toString(),
+                                style: TextStyle(color: Color(0xFF727785), fontWeight: FontWeight.w400, fontSize: 14),
+                              )
+                            ],
+                          ),
+                        ),
+                        Positioned(
+                          right: 0,
+                          bottom: 0,
+                          child: isChoose ? Image.asset('images/icon_xuanzhong.png') : Container(),
+                        )
+                      ],
+                    ),
+                  ),
+                  onPressed: isChoose
+                      ? null
+                      : () {
+                          setState(() {
+                            chooseProduct = productInfoList[index - 1];
+                          });
+                        },
+                ),
+              );
+            }),
+      ),
+      floatingActionButton: Container(
+        width: double.infinity,
+        padding: EdgeInsets.symmetric(horizontal: 15),
+        height: 48,
+        child: FlatButton(
+          color: PRIMARY_COLOR,
+          textColor: Colors.white,
+          child: Text('立即充值'),
+          onPressed: () async {
+            Navigator.push(context, CupertinoPageRoute(builder: (context) => ChoosePay(widget.type, chooseProduct)));
+            // Toast.show(context, '加载中', -1, 'loading');
+            // final Result res = await HttpManager.post('productInfo/buy', data: {
+            //   'userId': StoreProvider.of<AppState>(context).state.userInfo.id,
+            //   'typeFlag': widget.type,
+            //   'money': chooseProduct.money,
+            //   'id': chooseProduct.id
+            // });
+            // Toast.hide();
+            // if (res.success) {
+            //   Toast.show(context, '购买成功', 1500, 'success');
+            //   getUserInfo();
+            // } else {
+            //   Toast.show(context, res.error, 1500, 'info');
+            // }
+          },
+        ),
+      ),
+      floatingActionButtonLocation: FloatingActionButtonLocation.centerFloat,
+    );
+  }
+}
+
+typedef void OnTapMenu();
+
+class ShoopingBtn extends StatelessWidget {
+  final String icon;
+  final String title;
+  final OnTapMenu onTapHomeMenu;
+  ShoopingBtn(
+    this.icon,
+    this.title, {
+    this.onTapHomeMenu,
+  });
+  @override
+  Widget build(BuildContext context) {
+    return Container(
+      height: 70,
+      decoration: BoxDecoration(
+          // gradient: LinearGradient(begin: Alignment.topCenter, end: Alignment.bottomCenter, stops: [0.0, 0.5], colors: [Color(0xFF464B6A), Color(0xFF35395E)])
+          color: Color(0xFF3A3E61),
+          borderRadius: BorderRadius.all(Radius.circular(4)),
+          ),
+      child: Material(
+          color: Colors.transparent,
+          child: InkWell(
+            onTap: onTapHomeMenu,
+            child: Column(
+              mainAxisAlignment: MainAxisAlignment.center,
+              children: <Widget>[
+                Image.asset(
+                  icon,
+                  width: 20,
+                  height: 20,
+                ),
+                Container(
+                  height: 5,
+                ),
+                Text(
+                  title,
+                  style: TextStyle(
+                    fontSize: 13,
+                    fontWeight: FontWeight.w600,
+                    color: Theme.of(context).primaryColor,
+                  ),
+                )
+              ],
+            ),
+          )),
+    );
+  }
+}

+ 2 - 33
lib/pages/TipInfo.dart

@@ -365,38 +365,7 @@ class TipInfoState extends State<TipInfo> {
       }
       }
     }
     }
     return Column(children: <Widget>[
     return Column(children: <Widget>[
-      (typeFlag != 4 && typeFlag != 5 && playerInfo != null && !playerInfo.dataError && typeFlag!=0)
-          ? Container(
-              margin: EdgeInsets.fromLTRB(15, 10, 15, 0),
-              padding: EdgeInsets.all(15),
-              height: 80,
-              decoration: BoxDecoration(color: Color(0xFF3A3E61), borderRadius: BorderRadius.all(Radius.circular(4))),
-              child: Column(
-                crossAxisAlignment: CrossAxisAlignment.start,
-                mainAxisAlignment: MainAxisAlignment.spaceBetween,
-                children: <Widget>[
-                  Text('和平精英游戏结果', style: TextStyle(color: Colors.white54, fontSize: 13)),
-                  Row(
-                    mainAxisAlignment: MainAxisAlignment.spaceBetween,
-                    children: <Widget>[
-                      Text.rich(TextSpan(children: [
-                        TextSpan(text: "名次 ", style: TextStyle(color: Colors.white, fontSize: 14)),
-                        TextSpan(text: '${playerInfo.ranking}', style: TextStyle(color: Color(0xFFFFB726), fontWeight: FontWeight.w500, fontSize: 14)),
-                      ])),
-                      Text.rich(TextSpan(children: [
-                        TextSpan(text: "时长 ", style: TextStyle(color: Colors.white, fontSize: 14)),
-                        TextSpan(text: playerInfo.liveTime != null ? '${playerInfo.liveTime}' : '0', style: TextStyle(color: Color(0xFFFFB726), fontWeight: FontWeight.w500, fontSize: 14)),
-                      ])),
-                      Text.rich(TextSpan(children: [
-                        TextSpan(text: "评分 ", style: TextStyle(color: Colors.white, fontSize: 14)),
-                        TextSpan(text: '${playerInfo.score}', style: TextStyle(color: Color(0xFFFFB726), fontWeight: FontWeight.w500, fontSize: 14)),
-                      ])),
-                    ],
-                  )
-                ],
-              ),
-            )
-          : Container(),
+     
       Container(
       Container(
         margin: EdgeInsets.symmetric(vertical: 5, horizontal: 15),
         margin: EdgeInsets.symmetric(vertical: 5, horizontal: 15),
         padding: EdgeInsets.all(15),
         padding: EdgeInsets.all(15),
@@ -413,7 +382,7 @@ class TipInfoState extends State<TipInfo> {
             ),
             ),
             Row(
             Row(
               mainAxisAlignment: MainAxisAlignment.spaceBetween,
               mainAxisAlignment: MainAxisAlignment.spaceBetween,
-              children: <Widget>[Text("是否吃鸡 ", style: TextStyle(color: Colors.white, fontSize: 14)), Text(playerInfo.ranking == 1 ? '是' : '否', style: TextStyle(color: Color(0xFFFFB726), fontWeight: FontWeight.w500, fontSize: 14))],
+              children: <Widget>[Text("我的排名", style: TextStyle(color: Colors.white, fontSize: 14)), Text("${playerInfo.houseRank}", style: TextStyle(color: Color(0xFFFFB726), fontWeight: FontWeight.w500, fontSize: 14))],
             ),
             ),
             Row(
             Row(
               mainAxisAlignment: MainAxisAlignment.spaceBetween,
               mainAxisAlignment: MainAxisAlignment.spaceBetween,

+ 10 - 10
lib/pages/UserPage.dart

@@ -122,17 +122,17 @@ class _UserPageState extends State<UserPage> with WidgetsBindingObserver {
                         Navigator.push(context, CupertinoPageRoute(builder: (context) => MyWallet()));
                         Navigator.push(context, CupertinoPageRoute(builder: (context) => MyWallet()));
                       },
                       },
                     ),
                     ),
+                    // Divder(),
+                    // DrawerMenu(
+                    //   'images/icon_fangka.png',
+                    //   '房卡人数',
+                    //   tipValue: userInfo.houseCard,
+                    //   onTap: () {
+                    //     Navigator.push(context, CupertinoPageRoute(builder: (context) => RoomCardList()));
+                    //   },
+                    // ),
                     Divder(),
                     Divder(),
-                    DrawerMenu(
-                      'images/icon_fangka.png',
-                      '房卡人数',
-                      tipValue: userInfo.houseCard,
-                      onTap: () {
-                        Navigator.push(context, CupertinoPageRoute(builder: (context) => RoomCardList()));
-                      },
-                    ),
-                    Divder(),
-                    DrawerMenu('images/icon_zhanji.png', '我的赛事', onTap: () {
+                    DrawerMenu('images/icon_zhanji.png', '我的战绩', onTap: () {
                       Navigator.push(context, CupertinoPageRoute(builder: (context) => RecordList()));
                       Navigator.push(context, CupertinoPageRoute(builder: (context) => RecordList()));
                     }),
                     }),
                     Divder(),
                     Divder(),

+ 34 - 3
lib/widget/Dialog.dart

@@ -5,8 +5,11 @@ import 'LinearButton.dart';
 
 
 //   }
 //   }
 
 
+
 class MyDialog {
 class MyDialog {
-  static Future showDialog(context, text, {String title, bool isCancel = false, String submitText = '确认', OnTapHomeMenu onsubmit, OnTapHomeMenu oncancel}) {
+  static Future showDialog(context, text,
+      {String title, bool isCancel = false, String submitText = '确认', List<Map> textList = const [], OnTapHomeMenu onsubmit, OnTapHomeMenu oncancel}) {
+   
     return Navigator.of(context).push(
     return Navigator.of(context).push(
       PageRouteBuilder(
       PageRouteBuilder(
         opaque: false,
         opaque: false,
@@ -18,7 +21,7 @@ class MyDialog {
           );
           );
         },
         },
         pageBuilder: (BuildContext context, _, __) {
         pageBuilder: (BuildContext context, _, __) {
-          return LoadingDialog(title: title, text: text, submitText: submitText, cancel: isCancel, onsubmit: onsubmit, oncancel: oncancel);
+          return LoadingDialog(title: title, text: text, textList: textList, submitText: submitText, cancel: isCancel, onsubmit: onsubmit, oncancel: oncancel);
         },
         },
       ),
       ),
     );
     );
@@ -35,8 +38,35 @@ class LoadingDialog extends Dialog {
   bool cancel = false;
   bool cancel = false;
   OnTapHomeMenu onsubmit = () {};
   OnTapHomeMenu onsubmit = () {};
   OnTapHomeMenu oncancel = () {};
   OnTapHomeMenu oncancel = () {};
+  List<Map> textList = [];
+
+  LoadingDialog({Key key, @required this.text, this.cancel, this.textList, this.onsubmit, this.oncancel, this.title, this.submitText}) : super(key: key);
+
+  Widget _text(textList) {
+    if (textList.length > 0) {
+      List<TextSpan> _list = [];
 
 
-  LoadingDialog({Key key, @required this.text, this.cancel, this.onsubmit, this.oncancel, this.title, this.submitText}) : super(key: key);
+      for (int i = 0; i < textList.length; i++) {
+        if (textList[i]["isImportant"]) {
+          _list.add(TextSpan(
+              text: textList[i]['value'],
+              style: TextStyle(
+                color: Color(0xFFFFB726),
+              )));
+        } else {
+          _list.add(TextSpan(
+              text: textList[i]['value'],
+              style: TextStyle(
+                color: Colors.white,
+              )));
+        }
+      }
+
+      return Text.rich(TextSpan(children: _list),textAlign: TextAlign.center,);
+    } else {
+      return Container();
+    }
+  }
 
 
   @override
   @override
   Widget build(BuildContext context) {
   Widget build(BuildContext context) {
@@ -62,6 +92,7 @@ class LoadingDialog extends Dialog {
                             height: 20,
                             height: 20,
                           ),
                           ),
                           Text(text, style: TextStyle(color: Colors.white, fontSize: 14), textAlign: TextAlign.center),
                           Text(text, style: TextStyle(color: Colors.white, fontSize: 14), textAlign: TextAlign.center),
+                          _text(textList),
                           Container(
                           Container(
                             height: 30,
                             height: 30,
                           ),
                           ),

+ 2 - 2
lib/widget/HouseItem.dart

@@ -58,8 +58,7 @@ class HouseItem extends StatelessWidget {
                             Container(
                             Container(
                               height: 4,
                               height: 4,
                             ),
                             ),
-                            Text('' + (houseInfo.scoreType == 0 ? '评分' : '吃鸡') + '模式',
-                                overflow: TextOverflow.ellipsis, style: TextStyle(fontSize: 13, color: Color(0xFF999999)))
+                            Text('游戏中击败${houseInfo.killnumber}人',style: TextStyle(fontSize: 13, color: Color(0xFF999999)))
                           ],
                           ],
                         ),
                         ),
                       ),
                       ),
@@ -69,6 +68,7 @@ class HouseItem extends StatelessWidget {
                           _topWidget(playerInfo),
                           _topWidget(playerInfo),
                           Row(
                           Row(
                             children: <Widget>[
                             children: <Widget>[
+                              Image.asset('images/house1.png'),
                               Text(
                               Text(
                                 '${houseInfo.playerNumber!=null?houseInfo.playerNumber:0}/${houseInfo.maxNumber}',
                                 '${houseInfo.playerNumber!=null?houseInfo.playerNumber:0}/${houseInfo.maxNumber}',
                                 style: TextStyle(color: Colors.white, fontSize: 14),
                                 style: TextStyle(color: Colors.white, fontSize: 14),

+ 1 - 1
screen_stream_plugin/android/src/main/res/layout/dialog.xml

@@ -28,7 +28,7 @@
             android:layout_width="wrap_content"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_height="wrap_content"
             android:layout_marginTop="20dp"
             android:layout_marginTop="20dp"
-            android:text="是否立即返回战神竞技场APP"
+            android:text="是否立即返回全民电竞APP"
             android:textColor="@android:color/white" />
             android:textColor="@android:color/white" />
 
 
         <LinearLayout
         <LinearLayout