Blame view

lib/pages/moduleSelect/widgets/BaseHomeHeaderWidget.dart 3.85 KB
6d61919a   吴启风   feat:增加过渡页&集成串联游戏
1
2
3
  import 'package:flutter/material.dart';
  import 'package:flutter_bloc/flutter_bloc.dart';
  import 'package:flutter_screenutil/flutter_screenutil.dart';
28f20da9   吴启风   feat:针对apple审核对支付...
4
  import 'package:wow_english/common/core/app_config_helper.dart';
6d61919a   吴启风   feat:增加过渡页&集成串联游戏
5
6
7
8
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
  import 'package:wow_english/common/extension/string_extension.dart';
  
  import '../../../common/core/user_util.dart';
  import '../../../models/course_entity.dart';
  import '../../../route/route.dart';
  import '../../../utils/image_util.dart';
  import '../../user/bloc/user_bloc.dart';
  
  class BaseHomeHeaderWidget extends StatelessWidget {
    const BaseHomeHeaderWidget({super.key, this.entity});
  
    final CourseEntity? entity;
  
    @override
    Widget build(BuildContext context) {
      return BlocBuilder<UserBloc, UserState>(
        builder: (context, state) {
          return Container(
              height: 45,
              width: double.infinity,
              decoration: BoxDecoration(
                image: DecorationImage(
                  image: AssetImage('bg_header_sliver'.assetPng),
                  fit: BoxFit.cover,
                ),
              ),
              padding: EdgeInsets.symmetric(horizontal: 9.5.w),
              child: Row(
                children: [
                  ScreenUtil().bottomBarHeight.horizontalSpace,
                  GestureDetector(
                    onTap: () => {onUserClick()},
                    child: Container(
                      decoration: BoxDecoration(
                        border: Border.all(
                          width: 1.0,
                          color: const Color(0xFF140C10),
                        ),
                        borderRadius: BorderRadius.circular(21),
                      ),
                      child: CircleAvatar(
                        radius: 21,
                        backgroundImage: ImageUtil.getImageProviderOnDefault(
                            UserUtil.getUser()?.avatarUrl),
                      ),
                    ),
                  ),
                  GestureDetector(
                    onTap: () {
                      onUserClick();
                    },
                    child: Container(
                      margin: const EdgeInsets.only(left: 7),
                      padding: const EdgeInsets.all(4.0),
                      decoration: BoxDecoration(
                        color: Colors.white,
                        borderRadius: BorderRadius.circular(2),
                        border: Border.all(
                            width: 1.0,
                            color: const Color(0xFF140C10),
                            style: BorderStyle.solid),
                      ),
                      child: Text(
                        UserUtil.getUser()?.name ?? '未登录',
                        style: TextStyle(
                            color: const Color(0xFF333333), fontSize: 16.sp),
                      ),
                    ),
                  ),
                  20.horizontalSpace,
                  const Expanded(
                      child: Text(
                    "WOW ENGLISH",
                    textAlign: TextAlign.left,
                    style: TextStyle(color: Colors.white, fontSize: 30.0),
                  )),
28f20da9   吴启风   feat:针对apple审核对支付...
81
82
83
84
85
86
87
88
89
90
91
92
93
                  Visibility(
                    visible: !AppConfigHelper.shouldHidePay(),
                    child: Row(children: <Widget>[
                      Image(
                          width: 20.0.w,
                          height: 20.0.h,
                          image: AssetImage('ic_countdown'.assetPng)),
                      // 替换为你的图片资源路径
                      const SizedBox(width: 10.0),
                      // 图片和文本之间的间隔
                      Text('还剩${UserUtil.getRemainingValidity()}天'),
                    ]),
                  ),
6d61919a   吴启风   feat:增加过渡页&集成串联游戏
94
95
96
97
98
99
100
101
102
                  ScreenUtil().bottomBarHeight.horizontalSpace,
                ],
              ));
        },
      );
    }
  }
  
  void onUserClick() {
278208b8   吴启风   feat:1、用户访问权限调整;2...
103
    if (UserUtil.isLogined()) {
6d61919a   吴启风   feat:增加过渡页&集成串联游戏
104
      pushNamed(AppRouteName.user);
278208b8   吴启风   feat:1、用户访问权限调整;2...
105
106
    } else {
      pushNamed(AppRouteName.login);
6d61919a   吴启风   feat:增加过渡页&集成串联游戏
107
108
    }
  }