Blame view

lib/pages/moduleSelect/view.dart 5.36 KB
6d61919a   吴启风   feat:增加过渡页&集成串联游戏
1
2
3
4
5
6
  import 'package:flutter/material.dart';
  import 'package:flutter_bloc/flutter_bloc.dart';
  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';
  
278208b8   吴启风   feat:1、用户访问权限调整;2...
7
8
  import '../../common/core/user_util.dart';
  import '../../common/dialogs/show_dialog.dart';
6d61919a   吴启风   feat:增加过渡页&集成串联游戏
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
  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) {
      final bloc = BlocProvider.of<ModuleSelectBloc>(context);
      return BlocListener<ModuleSelectBloc, ModuleSelectState>(
        listener: (context, state) {},
        child: _homeView(),
      );
    }
  
    Widget _homeView() => BlocBuilder<ModuleSelectBloc, ModuleSelectState>(
            builder: (context, state) {
          final bloc = BlocProvider.of<ModuleSelectBloc>(context);
          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...
52
53
54
55
56
                                if (UserUtil.isLogined()) {
                                  pushNamed(AppRouteName.home);
                                } else {
                                  pushNamed(AppRouteName.login);
                                }
6d61919a   吴启风   feat:增加过渡页&集成串联游戏
57
58
59
60
                              },
                              child: Column(
                                mainAxisAlignment: MainAxisAlignment.center,
                                children: [
2879454a   吴启风   feat:调通支付宝支付&游戏列表页
61
62
63
64
65
66
67
68
69
70
71
72
                                  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:增加过渡页&集成串联游戏
73
74
75
76
77
78
79
80
81
82
                                  10.verticalSpace,
                                  Image.asset('label_module_study'.assetPng,
                                      width: 124.w, height: 34.h),
                                ],
                              ),
                            ),
                          ),
                          Expanded(
                            child: GestureDetector(
                                onTap: () {
278208b8   吴启风   feat:1、用户访问权限调整;2...
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
                                  //如果没登录先登录
                                  if (UserUtil.isLogined()) {
                                    if (UserUtil.hasGamePermission()) {
                                      pushNamed(AppRouteName.games);
                                    } else {
                                      showTwoActionDialog(
                                          '提示', '忽略', '去续费',
                                          '您的课程已到期,请快快续费继续学习吧!', leftTap: () {
                                        popPage();
                                      }, rightTap: () {
                                        popPage();
                                        pushNamed(AppRouteName.shop);
                                      });
                                    }
                                  } else {
                                    pushNamed(AppRouteName.login);
                                  }
6d61919a   吴启风   feat:增加过渡页&集成串联游戏
100
101
102
103
                                },
                                child: Column(
                                  mainAxisAlignment: MainAxisAlignment.center,
                                  children: [
2879454a   吴启风   feat:调通支付宝支付&游戏列表页
104
105
106
107
108
109
110
111
                                    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)
                                        ]),
6d61919a   吴启风   feat:增加过渡页&集成串联游戏
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
                                    10.verticalSpace,
                                    Image.asset('label_module_game'.assetPng,
                                        width: 124.w, height: 34.h),
                                  ],
                                )),
                          ),
                        ],
                      ),
                    ),
                  )
                ],
              ),
            ),
          );
        });
  }