Blame view

lib/pages/moduleSelect/view.dart 6.36 KB
6d61919a   吴启风   feat:增加过渡页&集成串联游戏
1
2
  import 'package:flutter/material.dart';
  import 'package:flutter_bloc/flutter_bloc.dart';
28f20da9   吴启风   feat:针对apple审核对支付...
3
  import 'package:wow_english/common/core/app_config_helper.dart';
6d61919a   吴启风   feat:增加过渡页&集成串联游戏
4
5
6
  import 'package:wow_english/common/extension/string_extension.dart';
  import 'package:wow_english/pages/moduleSelect/state.dart';
  import 'package:wow_english/pages/moduleSelect/widgets/BaseHomeHeaderWidget.dart';
795fb23f   吴启风   feat:支付成功刷新用户数据
7
  import 'package:wow_english/pages/user/bloc/user_bloc.dart';
6d61919a   吴启风   feat:增加过渡页&集成串联游戏
8
  
278208b8   吴启风   feat:1、用户访问权限调整;2...
9
10
  import '../../common/core/user_util.dart';
  import '../../common/dialogs/show_dialog.dart';
6d61919a   吴启风   feat:增加过渡页&集成串联游戏
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
  import 'bloc.dart';
  import 'event.dart';
  import 'package:flutter_screenutil/flutter_screenutil.dart';
  import 'package:wow_english/route/route.dart';
  
  class ModuleSelectPage extends StatelessWidget {
    const ModuleSelectPage({super.key});
  
    @override
    Widget build(BuildContext context) {
      return BlocProvider(
        create: (BuildContext context) => ModuleSelectBloc()..add(InitEvent()),
        child: Builder(builder: (context) => _HomePageView()),
      );
    }
  }
  
  class _HomePageView extends StatelessWidget {
    @override
    Widget build(BuildContext context) {
795fb23f   吴启风   feat:支付成功刷新用户数据
31
32
33
34
35
36
37
38
      return MultiBlocListener(listeners: [
        BlocListener<UserBloc, UserState>(listener: (context, state) {
          debugPrint('WQF ModuleSelectPage BlocListener state: $state');
        }),
        BlocListener<ModuleSelectBloc, ModuleSelectState>(
          listener: (context, state) {},
        ),
      ], child: _homeView());
6d61919a   吴启风   feat:增加过渡页&集成串联游戏
39
40
41
42
    }
  
    Widget _homeView() => BlocBuilder<ModuleSelectBloc, ModuleSelectState>(
            builder: (context, state) {
6d61919a   吴启风   feat:增加过渡页&集成串联游戏
43
44
45
46
47
48
49
50
51
52
53
54
55
          return Scaffold(
            body: Container(
              color: Colors.white,
              child: Column(
                children: [
                  const BaseHomeHeaderWidget(),
                  Expanded(
                    child: Center(
                      child: Row(
                        children: [
                          Expanded(
                            child: GestureDetector(
                              onTap: () {
278208b8   吴启风   feat:1、用户访问权限调整;2...
56
57
58
59
60
                                if (UserUtil.isLogined()) {
                                  pushNamed(AppRouteName.home);
                                } else {
                                  pushNamed(AppRouteName.login);
                                }
6d61919a   吴启风   feat:增加过渡页&集成串联游戏
61
62
63
64
                              },
                              child: Column(
                                mainAxisAlignment: MainAxisAlignment.center,
                                children: [
2879454a   吴启风   feat:调通支付宝支付&游戏列表页
65
66
67
68
69
70
71
72
73
74
75
76
                                  Stack(
                                      alignment: AlignmentDirectional.center,
                                      children: [
                                        Image.asset('bg_frame_module'.assetPng,
                                            width: 162.5.w, height: 203.5.h),
                                        Center(
                                          child: Image.asset(
                                              'pic_module_study'.assetPng,
                                              width: 140.5.w,
                                              height: 172.h),
                                        )
                                      ]),
6d61919a   吴启风   feat:增加过渡页&集成串联游戏
77
78
79
80
81
82
83
84
                                  10.verticalSpace,
                                  Image.asset('label_module_study'.assetPng,
                                      width: 124.w, height: 34.h),
                                ],
                              ),
                            ),
                          ),
                          Expanded(
795fb23f   吴启风   feat:支付成功刷新用户数据
85
86
87
88
89
90
91
92
93
94
                            child: BlocBuilder<UserBloc, UserState>(
                                builder: (context, userState) {
                              final userBloc = BlocProvider.of<UserBloc>(context);
                              debugPrint(
                                  'WQF ModuleSelectPage BlocBuilder state: $userState');
                              return GestureDetector(
                                  onTap: () {
                                    //如果没登录先登录
                                    if (UserUtil.isLogined()) {
                                      if (AppConfigHelper.shouldHidePay()) {
28f20da9   吴启风   feat:针对apple审核对支付...
95
96
                                        pushNamed(AppRouteName.games);
                                      } else {
795fb23f   吴启风   feat:支付成功刷新用户数据
97
98
99
100
101
102
103
104
105
106
107
                                        if (UserUtil.hasGamePermission()) {
                                          pushNamed(AppRouteName.games);
                                        } else {
                                          showTwoActionDialog('提示', '忽略', '去续费',
                                              '您的课程已到期,请快快续费继续学习吧!', leftTap: () {
                                            popPage();
                                          }, rightTap: () {
                                            popPage();
                                            pushNamed(AppRouteName.shop);
                                          });
                                        }
28f20da9   吴启风   feat:针对apple审核对支付...
108
                                      }
795fb23f   吴启风   feat:支付成功刷新用户数据
109
110
                                    } else {
                                      pushNamed(AppRouteName.login);
278208b8   吴启风   feat:1、用户访问权限调整;2...
111
                                    }
795fb23f   吴启风   feat:支付成功刷新用户数据
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
                                  },
                                  child: Column(
                                    mainAxisAlignment: MainAxisAlignment.center,
                                    children: [
                                      Stack(
                                          alignment: AlignmentDirectional.center,
                                          children: [
                                            Image.asset(
                                                'bg_frame_module'.assetPng,
                                                width: 162.5.w,
                                                height: 203.5.h),
                                            Image.asset(
                                                'pic_module_game'.assetPng,
                                                width: 140.5.w,
                                                height: 172.h)
                                          ]),
                                      10.verticalSpace,
                                      Image.asset('label_module_game'.assetPng,
                                          width: 124.w, height: 34.h),
                                    ],
                                  ));
                            }),
6d61919a   吴启风   feat:增加过渡页&集成串联游戏
134
135
136
137
138
139
140
141
142
143
144
                          ),
                        ],
                      ),
                    ),
                  )
                ],
              ),
            ),
          );
        });
  }