Browse Source

部分模块的暗色模式适配
房产、服务。社区的模块还没有做

liukai 1 week ago
parent
commit
23761d8e0b
52 changed files with 813 additions and 1033 deletions
  1. 1 1
      packages/cpt_facility/lib/modules/book_confirm/book_confirm_page.dart
  2. 1 1
      packages/cpt_facility/lib/modules/detail/facility_detail_page.dart
  3. 2 2
      packages/cpt_main/lib/modules/feedback/detail/feedback_detail_page.dart
  4. 1 1
      packages/cpt_main/lib/modules/feedback/item_feedback.dart
  5. 1 1
      packages/cpt_main/lib/modules/home/latest_news/item_latest_news.dart
  6. 1 1
      packages/cpt_main/lib/modules/home/management_guides/item_management_guide.dart
  7. 1 1
      packages/cpt_main/lib/modules/home/property_news/item_list_news.dart
  8. 1 1
      packages/cpt_main/lib/modules/visitor/item_visitor.dart
  9. 35 44
      packages/cpt_notice_board/lib/modules/announ/page/announ_page.dart
  10. 8 8
      packages/cpt_notice_board/lib/modules/announcement_detail/page/announcement_detail_page.dart
  11. 22 22
      packages/cpt_notice_board/lib/modules/documents/page/documents_page.dart
  12. 11 11
      packages/cpt_notice_board/lib/modules/documents_list/page/documents_list_page.dart
  13. 10 8
      packages/cpt_notice_board/lib/modules/event/page/event_page.dart
  14. 20 16
      packages/cpt_notice_board/lib/modules/event_detail/page/event_detail_page.dart
  15. 6 10
      packages/cpt_notice_board/lib/modules/notice_board/page/notice_board_page.dart
  16. 2 5
      packages/cpt_payment/lib/modules/choose_card/choose_card_page.dart
  17. 65 0
      packages/cpt_payment/lib/modules/choose_card/item_card.dart
  18. 1 1
      packages/cpt_payment/lib/modules/payment/history/item_history_list.dart
  19. 2 2
      packages/cpt_payment/lib/modules/payment/info/info_screen.dart
  20. 1 1
      packages/cpt_payment/lib/modules/payment/manage/item_manage.dart
  21. 1 1
      packages/cpt_payment/lib/modules/payment/payment/item_payment_list.dart
  22. 1 1
      packages/cpt_property/lib/modules/ioan/property_ioan_page.dart
  23. 1 1
      packages/cpt_property/lib/modules/ioan/property_ioan_vm.dart
  24. 98 92
      packages/cpt_rewards/lib/modules/rewards/rewards_page.dart
  25. 12 23
      packages/cpt_rewards/lib/modules/rewards_address/rewards_address_page.dart
  26. 18 22
      packages/cpt_rewards/lib/modules/rewards_code/rewards_code_page.dart
  27. 41 72
      packages/cpt_rewards/lib/modules/rewards_confirm/rewards_confirm_page.dart
  28. 50 119
      packages/cpt_rewards/lib/modules/rewards_detail/rewards_detail_page.dart
  29. 9 6
      packages/cpt_rewards/lib/modules/rewards_history/rewards_history_earned/rewards_history_earned_page.dart
  30. 8 16
      packages/cpt_rewards/lib/modules/rewards_history/rewards_history_page.dart
  31. 8 6
      packages/cpt_rewards/lib/modules/rewards_history/rewards_history_spent/rewards_history_spent_page.dart
  32. 43 41
      packages/cpt_rewards/lib/modules/rewards_home/rewards_home_page.dart
  33. 40 116
      packages/cpt_rewards/lib/modules/rewards_list/rewards_list_page.dart
  34. 19 42
      packages/cpt_rewards/lib/modules/rewards_my/rewards_my_active/rewards_my_active_page.dart
  35. 15 31
      packages/cpt_rewards/lib/modules/rewards_my/rewards_my_expired/rewards_my_expired_page.dart
  36. 7 19
      packages/cpt_rewards/lib/modules/rewards_my/rewards_my_page.dart
  37. 16 15
      packages/cpt_rewards/lib/modules/rewards_my/rewards_my_used/rewards_my_used_page.dart
  38. 33 32
      packages/cpt_rewards/lib/modules/rewards_redeem/rewards_redeem_page.dart
  39. 45 32
      packages/cpt_rewards/lib/modules/rewards_search/rewards_search_page.dart
  40. 31 30
      packages/cpt_rewards/lib/modules/rewards_successful/rewards_successful_page.dart
  41. 46 119
      packages/cpt_rewards/lib/modules/rewards_transaction/rewards_transaction_page.dart
  42. 10 2
      packages/cs_plugin_basic/lib/widget/webview_page.dart
  43. 6 7
      packages/cs_resources/lib/generated/intl/messages_en.dart
  44. 6 7
      packages/cs_resources/lib/generated/intl/messages_zh_CN.dart
  45. 6 7
      packages/cs_resources/lib/generated/intl/messages_zh_HK.dart
  46. 12 12
      packages/cs_resources/lib/generated/l10n.dart
  47. 6 6
      packages/cs_resources/lib/l10n/intl_en.arb
  48. 6 6
      packages/cs_resources/lib/l10n/intl_zh_CN.arb
  49. 6 6
      packages/cs_resources/lib/l10n/intl_zh_HK.arb
  50. 15 4
      packages/cs_resources/lib/theme/app_colors_theme.dart
  51. 2 2
      packages/cs_widgets/lib/search_app_bar.dart
  52. 4 1
      packages/cs_widgets/lib/utils/dark_theme_util.dart

+ 1 - 1
packages/cpt_facility/lib/modules/book_confirm/book_confirm_page.dart

@@ -159,7 +159,7 @@ class BookConfirmPage extends HookConsumerWidget {
         borderRadius: BorderRadius.circular(6.0), // 圆角
         boxShadow: [
           BoxShadow(
-            color: const Color(0xFFB8BFD9).withOpacity(0.3), // 阴影颜色
+            color: context.appColors.itemBGShadow, // 阴影颜色
             offset: const Offset(0, 3), // 阴影的偏移量
             blurRadius: 8.0, // 模糊半径
             spreadRadius: 3.0, // 扩散半径

+ 1 - 1
packages/cpt_facility/lib/modules/detail/facility_detail_page.dart

@@ -302,7 +302,7 @@ class FacilityDetailPage extends HookConsumerWidget {
         borderRadius: BorderRadius.circular(6.0), // 圆角
         boxShadow: [
           BoxShadow(
-            color: const Color(0xFFB8BFD9).withOpacity(0.3), // 阴影颜色
+            color: context.appColors.itemBGShadow, // 阴影颜色
             offset: const Offset(0, 3), // 阴影的偏移量
             blurRadius: 8.0, // 模糊半径
             spreadRadius: 3.0, // 扩散半径

+ 2 - 2
packages/cpt_main/lib/modules/feedback/detail/feedback_detail_page.dart

@@ -91,7 +91,7 @@ class FeedbackDetailPage extends HookConsumerWidget {
                   borderRadius: BorderRadius.circular(6.0), // 圆角
                   boxShadow: [
                     BoxShadow(
-                      color: const Color(0xFFB8BFD9).withOpacity(0.3), // 阴影颜色
+                      color: context.appColors.itemBGShadow, // 阴影颜色
                       offset: const Offset(0, 3), // 阴影的偏移量
                       blurRadius: 8.0, // 模糊半径
                       spreadRadius: 3.0, // 扩散半径
@@ -164,7 +164,7 @@ class FeedbackDetailPage extends HookConsumerWidget {
             borderRadius: BorderRadius.circular(6.0), // 圆角
             boxShadow: [
               BoxShadow(
-                color: const Color(0xFFB8BFD9).withOpacity(0.3), // 阴影颜色
+                color: context.appColors.itemBGShadow, // 阴影颜色
                 offset: const Offset(0, 3), // 阴影的偏移量
                 blurRadius: 8.0, // 模糊半径
                 spreadRadius: 3.0, // 扩散半径

+ 1 - 1
packages/cpt_main/lib/modules/feedback/item_feedback.dart

@@ -26,7 +26,7 @@ class FeedbackItem extends StatelessWidget {
         borderRadius: BorderRadius.circular(6.0), // 圆角
         boxShadow: [
           BoxShadow(
-            color: const Color(0xFFB8BFD9).withOpacity(0.3), // 阴影颜色
+            color: context.appColors.itemBGShadow, // 阴影颜色
             offset: const Offset(0, 3), // 阴影的偏移量
             blurRadius: 8.0, // 模糊半径
             spreadRadius: 3.0, // 扩散半径

+ 1 - 1
packages/cpt_main/lib/modules/home/latest_news/item_latest_news.dart

@@ -25,7 +25,7 @@ class LatestNewsItem extends StatelessWidget {
         borderRadius: BorderRadius.circular(6.0),
         boxShadow: [
           BoxShadow(
-            color: const Color(0xFFB8BFD9).withOpacity(0.3),
+            color: context.appColors.itemBGShadow,
             offset: const Offset(0, 3),
             blurRadius: 8.0,
             spreadRadius: 3.0,

+ 1 - 1
packages/cpt_main/lib/modules/home/management_guides/item_management_guide.dart

@@ -20,7 +20,7 @@ class ManagementGuideItem extends StatelessWidget {
         borderRadius: BorderRadius.circular(5.0), // 5个圆角
         boxShadow: [
           BoxShadow(
-            color: const Color(0xFF656565).withOpacity(0.1), // 阴影颜色,并且设置透明度
+            color: context.appColors.itemBGShadow, // 阴影颜色,并且设置透明度
             offset: const Offset(0, 1.5), // 阴影的偏移量
             blurRadius: 2.5, // 模糊半径
             spreadRadius: 1.5, // 扩散半径

+ 1 - 1
packages/cpt_main/lib/modules/home/property_news/item_list_news.dart

@@ -26,7 +26,7 @@ class ListNewsItem extends StatelessWidget {
         borderRadius: BorderRadius.circular(6.0), // 圆角
         boxShadow: [
           BoxShadow(
-            color: const Color(0xFFB8BFD9).withOpacity(0.3), // 阴影颜色
+            color: context.appColors.itemBGShadow, // 阴影颜色
             offset: const Offset(0, 3), // 阴影的偏移量
             blurRadius: 8.0, // 模糊半径
             spreadRadius: 3.0, // 扩散半径

+ 1 - 1
packages/cpt_main/lib/modules/visitor/item_visitor.dart

@@ -24,7 +24,7 @@ class VisitorItem extends StatelessWidget {
         borderRadius: BorderRadius.circular(6.0), // 圆角
         boxShadow: [
           BoxShadow(
-            color: const Color(0xFFB8BFD9).withOpacity(0.3), // 阴影颜色
+            color: context.appColors.itemBGShadow, // 阴影颜色
             offset: const Offset(0, 3), // 阴影的偏移量
             blurRadius: 8.0, // 模糊半径
             spreadRadius: 3.0, // 扩散半径

+ 35 - 44
packages/cpt_notice_board/lib/modules/announ/page/announ_page.dart

@@ -1,4 +1,5 @@
 import 'package:cpt_notice_board/modules/notice_board/page/notice_board_page.dart';
+import 'package:cs_resources/theme/app_colors_theme.dart';
 import 'package:flutter/material.dart';
 import 'package:auto_route/auto_route.dart';
 import 'package:flutter_hooks/flutter_hooks.dart';
@@ -37,10 +38,7 @@ class AnnounPage extends HookConsumerWidget {
         maxLines: 2, // 设置最大行数为2
         overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
         item['title'],
-        style: const TextStyle(
-            fontSize: 16.0,
-            color: Colors.black,
-            fontWeight: FontWeight.w700), // 设置字体大小
+        style:  TextStyle(fontSize: 16.0, color: context.appColors.textBlack, fontWeight: FontWeight.w700), // 设置字体大小
       ),
     );
   }
@@ -50,10 +48,7 @@ class AnnounPage extends HookConsumerWidget {
       // color: Colors.green,
       child: Text(
         item['created_at'],
-        style: const TextStyle(
-            fontSize: 14.0,
-            color: Colors.black,
-            fontWeight: FontWeight.w400), // 设置字体大小
+        style:  TextStyle(fontSize: 14.0, color: context.appColors.textBlack, fontWeight: FontWeight.w400), // 设置字体大小
       ),
     );
   }
@@ -61,16 +56,18 @@ class AnnounPage extends HookConsumerWidget {
   // listitem
   Widget _buildSaleItem(BuildContext context, WidgetRef ref, item, vm) {
     return Container(
-      decoration: const BoxDecoration(
-        color: Colors.white,
-        borderRadius: BorderRadius.all(Radius.circular(6.0)),
+      decoration: BoxDecoration(
+        color: context.appColors.whiteBG,
+        borderRadius: const BorderRadius.all(Radius.circular(6.0)),
         boxShadow: [
-          BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
+          BoxShadow(
+            color: context.appColors.itemBGShadow,
+          )
         ],
       ),
       child: Column(
         children: [
-          Container(
+          SizedBox(
             width: MediaQuery.of(context).size.width - 30,
             height: 100,
             // margin: const EdgeInsets.only(left: 15, right: 15, top: 12.5),
@@ -78,8 +75,7 @@ class AnnounPage extends HookConsumerWidget {
               crossAxisAlignment: CrossAxisAlignment.start,
               mainAxisAlignment: MainAxisAlignment.center,
               children: [
-                _buildItemLeftSection(context, ref, item, vm)
-                    .marginOnly(bottom: 5),
+                _buildItemLeftSection(context, ref, item, vm).marginOnly(bottom: 5),
                 _buildItemRightSection(context, ref, item, vm),
               ],
             ).paddingOnly(left: 20, right: 20),
@@ -116,35 +112,30 @@ class AnnounPage extends HookConsumerWidget {
         Log.d("property_news_page 组件卸载时执行");
       };
     }, []);
-    return Scaffold(
-      // appBar: AppBar(title: Text("资产")),
-      body: SizedBox(
-          width: double.infinity,
-          height: double.infinity,
-          child: EasyRefresh(
-              controller: vm.refreshController,
-              // 上拉加载
-              onLoad: () async {
-                Log.d("----onLoad");
-                vm.loadMore();
-              },
-              // 下拉刷新
-              onRefresh: () async {
-                Log.d("----onRefresh");
-                vm.onRefresh();
-              },
-              child: Container(
-                color: ColorUtils.string2Color('#F2F3F6'),
-                padding: const EdgeInsets.only(top: 15),
-                child: LoadStateLayout(
-                  state: state.loadingState,
-                  errorMessage: state.errorMessage,
-                  errorRetry: () {
-                    vm.retryRequest();
-                  },
-                  successSliverWidget: [_buildSaleList(context, ref, vm)],
-                ),
-              ))),
+    return EasyRefresh(
+      controller: vm.refreshController,
+      // 上拉加载
+      onLoad: () async {
+        Log.d("----onLoad");
+        vm.loadMore();
+      },
+      // 下拉刷新
+      onRefresh: () async {
+        Log.d("----onRefresh");
+        vm.onRefresh();
+      },
+      child: Container(
+        color:context.appColors.backgroundDark,
+        padding: const EdgeInsets.only(top: 15),
+        child: LoadStateLayout(
+          state: state.loadingState,
+          errorMessage: state.errorMessage,
+          errorRetry: () {
+            vm.retryRequest();
+          },
+          successSliverWidget: [_buildSaleList(context, ref, vm)],
+        ),
+      ),
     );
   }
 }

+ 8 - 8
packages/cpt_notice_board/lib/modules/announcement_detail/page/announcement_detail_page.dart

@@ -43,9 +43,9 @@ class AnnouncementDetailPage extends HookConsumerWidget {
         Column(children: [
           Text(
             item.title,
-            style: const TextStyle(
+            style: TextStyle(
                 fontSize: 18.0,
-                color: Colors.black,
+                color: context.appColors.textBlack,
                 fontWeight: FontWeight.w700), // 设置字体大小
           ),
           // Row(
@@ -82,18 +82,18 @@ class AnnouncementDetailPage extends HookConsumerWidget {
                 width: 15,
                 height: 15,
               ).marginOnly(right: 8),
-              const Text(
+               Text(
                 'Date: ',
                 style: TextStyle(
                     fontSize: 15.0,
-                    color: Colors.black,
+                    color: context.appColors.textBlack,
                     fontWeight: FontWeight.w700), // 设置字体大小
               ),
               Text(
                 item.createdAt,
-                style: const TextStyle(
+                style: TextStyle(
                     fontSize: 15.0,
-                    color: Colors.black,
+                    color:context.appColors.textBlack,
                     fontWeight: FontWeight.w400), // 设置字体大小
               ),
             ],
@@ -128,7 +128,7 @@ class AnnouncementDetailPage extends HookConsumerWidget {
             .border(bottom: 1, color: ColorUtils.string2Color('#F2F3F6')),
         Column(
           children: [
-            const Column(
+             Column(
               mainAxisAlignment: MainAxisAlignment.center,
               crossAxisAlignment: CrossAxisAlignment.center,
               children: [
@@ -136,7 +136,7 @@ class AnnouncementDetailPage extends HookConsumerWidget {
                   'IMPORTANT',
                   style: TextStyle(
                       fontSize: 18.0,
-                      color: Colors.black,
+                      color: context.appColors.textBlack,
                       fontWeight: FontWeight.w700), // 设置字体大小
                 )
               ],

+ 22 - 22
packages/cpt_notice_board/lib/modules/documents/page/documents_page.dart

@@ -1,5 +1,6 @@
 import 'package:cpt_notice_board/modules/notice_board/page/notice_board_page.dart';
 import 'package:cs_resources/generated/l10n.dart';
+import 'package:cs_resources/theme/app_colors_theme.dart';
 import 'package:flutter/material.dart';
 import 'package:auto_route/auto_route.dart';
 import 'package:flutter_hooks/flutter_hooks.dart';
@@ -38,41 +39,39 @@ class DocumentsPage extends HookConsumerWidget {
         item['name'],
         maxLines: 1, // 设置最大行数为2
         overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
-        style: const TextStyle(
-            fontSize: 16.0,
-            color: Colors.black,
-            fontWeight: FontWeight.w700), // 设置字体大小
+        style: TextStyle(fontSize: 16.0, color: context.appColors.textBlack, fontWeight: FontWeight.w700), // 设置字体大小
       ),
     ).marginOnly(right: 17.5);
   }
 
-  Widget _buildItemRightSection(
-      BuildContext context, WidgetRef ref, item, _vm) {
+  Widget _buildItemRightSection(BuildContext context, WidgetRef ref, item, _vm) {
     return Container(
-      color: Colors.white,
+      color: context.appColors.whiteBG,
       child: TextButton(
         onPressed: () {
           DocumentsListPage.startInstance(id: item['id']);
           // DocumentsListPage.startInstance(context: context);
         },
         style: TextButton.styleFrom(
-          foregroundColor: Colors.black,
-          backgroundColor: ColorUtils.string2Color('#4161D0'), // 背景颜色
-          minimumSize: const Size(91.5, 30), // 最小宽度和高度
-          padding:
-              const EdgeInsets.symmetric(horizontal: 11.0, vertical: 9), // 内边距
+          foregroundColor: context.appColors.textBlack,
+          backgroundColor: context.appColors.tabBgSelectedPrimary,
+          // 背景颜色
+          minimumSize: const Size(91.5, 30),
+          // 最小宽度和高度
+          padding: const EdgeInsets.symmetric(horizontal: 11.0, vertical: 9),
+          // 内边距
           shape: RoundedRectangleBorder(
             borderRadius: BorderRadius.circular(5), // 圆角
             side: BorderSide(
-              color: ColorUtils.string2Color('#4161D0'),
+              color: context.appColors.tabBgSelectedPrimary,
               width: 1.0,
             ), // 边框
           ),
         ),
-        child:  Text(
+        child: Text(
           S.current.open_folder,
-          style: const TextStyle(
-            color: Colors.white,
+          style: TextStyle(
+            color: context.appColors.textWhite,
           ),
         ),
       ),
@@ -83,11 +82,13 @@ class DocumentsPage extends HookConsumerWidget {
   Widget _buildSaleItem(BuildContext context, WidgetRef ref, item, _vm) {
     String url = item['url'];
     return Container(
-      decoration: const BoxDecoration(
-        color: Colors.white,
+      decoration: BoxDecoration(
+        color: context.appColors.whiteBG,
         borderRadius: BorderRadius.all(Radius.circular(6.0)),
         boxShadow: [
-          BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
+          BoxShadow(
+            color: context.appColors.itemBGShadow,
+          )
         ],
       ),
       child: Row(
@@ -120,8 +121,7 @@ class DocumentsPage extends HookConsumerWidget {
         // 去详情
         if (url != '') {
           // _vm.launchURL(url);
-          GlobalWebPage.startInstance(
-              context: context, title: item['name'], url: url);
+          GlobalWebPage.startInstance(context: context, title: item['name'], url: url);
         }
         // DocumentsListPage.startInstance(context: context);
       }),
@@ -167,7 +167,7 @@ class DocumentsPage extends HookConsumerWidget {
                 vm.onRefresh();
               },
               child: Container(
-                color: ColorUtils.string2Color('#F2F3F6'),
+                color: context.appColors.backgroundDark,
                 padding: const EdgeInsets.only(top: 15),
                 child: LoadStateLayout(
                   state: state.loadingState,

+ 11 - 11
packages/cpt_notice_board/lib/modules/documents_list/page/documents_list_page.dart

@@ -44,9 +44,9 @@ class DocumentsListPage extends HookConsumerWidget {
         item['name'],
         maxLines: 2, // 设置最大行数为2
         overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
-        style: const TextStyle(
+        style:  TextStyle(
             fontSize: 16.0,
-            color: Colors.black,
+            color: context.appColors.textBlack,
             fontWeight: FontWeight.w700), // 设置字体大小
       ),
     ).marginOnly(right: 17.5);
@@ -59,8 +59,8 @@ class DocumentsListPage extends HookConsumerWidget {
       child: TextButton(
         onPressed: () {},
         style: TextButton.styleFrom(
-          foregroundColor: Colors.black,
-          backgroundColor: ColorUtils.string2Color('#4161D0'), // 背景颜色
+          foregroundColor: context.appColors.textBlack,
+          backgroundColor: context.appColors.tabBgSelectedPrimary, // 背景颜色
           minimumSize: const Size(91.5, 30), // 最小宽度和高度
           padding:
               const EdgeInsets.symmetric(horizontal: 11.0, vertical: 9), // 内边距
@@ -74,8 +74,8 @@ class DocumentsListPage extends HookConsumerWidget {
         ),
         child: Text(
           S.current.open_folder,
-          style: const TextStyle(
-            color: Colors.white,
+          style:  TextStyle(
+            color: context.appColors.textWhite,
           ),
         ),
       ),
@@ -86,11 +86,11 @@ class DocumentsListPage extends HookConsumerWidget {
   Widget _buildSaleItem(BuildContext context, WidgetRef ref, item, _vm) {
     String url = item['url'];
     return Container(
-      decoration: const BoxDecoration(
-        color: Colors.white,
-        borderRadius: BorderRadius.all(Radius.circular(6.0)),
+      decoration:  BoxDecoration(
+        color: context.appColors.whiteBG,
+        borderRadius: const BorderRadius.all(Radius.circular(6.0)),
         boxShadow: [
-          BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
+          BoxShadow( color: context.appColors.itemBGShadow,)
         ],
       ),
       child: Row(
@@ -167,7 +167,7 @@ class DocumentsListPage extends HookConsumerWidget {
                 vm.onRefresh();
               },
               child: Container(
-                color: ColorUtils.string2Color('#F2F3F6'),
+                color: context.appColors.backgroundDark,
                 padding: const EdgeInsets.only(top: 15),
                 child: LoadStateLayout(
                   state: state.loadingState,

+ 10 - 8
packages/cpt_notice_board/lib/modules/event/page/event_page.dart

@@ -1,5 +1,7 @@
+import 'package:cpt_notice_board/modules/announ/page/announ_page.dart';
 import 'package:cpt_notice_board/modules/event_detail/page/event_detail_page.dart';
 import 'package:cpt_notice_board/modules/notice_board/page/notice_board_page.dart';
+import 'package:cs_resources/theme/app_colors_theme.dart';
 import 'package:flutter/material.dart';
 import 'package:auto_route/auto_route.dart';
 import 'package:flutter_hooks/flutter_hooks.dart';
@@ -34,9 +36,9 @@ class EventPage extends HookConsumerWidget {
       maxLines: 2, // 设置最大行数为2
       overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
       item['title'],
-      style: const TextStyle(
+      style:  TextStyle(
           fontSize: 16.0,
-          color: Colors.black,
+          color: context.appColors.textBlack,
           fontWeight: FontWeight.w700), // 设置字体大小
     );
   }
@@ -47,9 +49,9 @@ class EventPage extends HookConsumerWidget {
       // color: Colors.green,
       child: Text(
         item['created_at'],
-        style: const TextStyle(
+        style:  TextStyle(
             fontSize: 14.0,
-            color: Colors.black,
+            color: context.appColors.textBlack,
             fontWeight: FontWeight.w400), // 设置字体大小
       ),
     );
@@ -58,11 +60,11 @@ class EventPage extends HookConsumerWidget {
   // listitem
   Widget _buildSaleItem(BuildContext context, WidgetRef ref, item, _vm) {
     return Container(
-      decoration: const BoxDecoration(
-        color: Colors.white,
+      decoration:  BoxDecoration(
+        color: context.appColors.whiteBG,
         borderRadius: BorderRadius.all(Radius.circular(6.0)),
         boxShadow: [
-          BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
+          BoxShadow(  color: context.appColors.itemBGShadow,)
         ],
       ),
       child: Column(
@@ -130,7 +132,7 @@ class EventPage extends HookConsumerWidget {
                 vm.onRefresh();
               },
               child: Container(
-                color: ColorUtils.string2Color('#F2F3F6'),
+                color: context.appColors.backgroundDark,
                 padding: const EdgeInsets.only(top: 15),
                 child: LoadStateLayout(
                   state: state.loadingState,

+ 20 - 16
packages/cpt_notice_board/lib/modules/event_detail/page/event_detail_page.dart

@@ -21,6 +21,7 @@ import '../vm/event_detail_vm.dart';
 @RoutePage()
 class EventDetailPage extends HookConsumerWidget {
   final int? id;
+
   const EventDetailPage({Key? key, @PathParam('id') required this.id})
       : super(key: key);
 
@@ -43,9 +44,9 @@ class EventDetailPage extends HookConsumerWidget {
         Column(children: [
           Text(
             item.title,
-            style: const TextStyle(
+            style: TextStyle(
                 fontSize: 18.0,
-                color: Colors.black,
+                color: context.appColors.textBlack,
                 fontWeight: FontWeight.w700), // 设置字体大小
           ),
           Row(
@@ -66,9 +67,9 @@ class EventDetailPage extends HookConsumerWidget {
               // ),
               Text(
                 item.datetime,
-                style: const TextStyle(
+                style: TextStyle(
                     fontSize: 15.0,
-                    color: Colors.black,
+                    color: context.appColors.textBlack,
                     fontWeight: FontWeight.w400), // 设置字体大小
               ),
             ],
@@ -96,10 +97,13 @@ class EventDetailPage extends HookConsumerWidget {
             // ).marginOnly(bottom: 25),
             resources!.length > 0
                 ? MyLoadImage(
-                    resources[0] ?? '',
-                    width: MediaQuery.of(context).size.width,
-                    height: 150,
-                  ).marginOnly(bottom: 15)
+              resources[0] ?? '',
+              width: MediaQuery
+                  .of(context)
+                  .size
+                  .width,
+              height: 150,
+            ).marginOnly(bottom: 15)
                 : Container(),
             Html(
               data: item.content,
@@ -137,15 +141,15 @@ class EventDetailPage extends HookConsumerWidget {
           },
           successWidget: Container(
               child: EasyRefresh(
-            child: SingleChildScrollView(
-                scrollDirection: Axis.vertical,
-                physics: const BouncingScrollPhysics(),
-                clipBehavior: Clip.none,
-                child: Padding(
-                    padding:
+                child: SingleChildScrollView(
+                    scrollDirection: Axis.vertical,
+                    physics: const BouncingScrollPhysics(),
+                    clipBehavior: Clip.none,
+                    child: Padding(
+                        padding:
                         const EdgeInsets.only(left: 15, right: 15, top: 15),
-                    child: _buildDetailTop(context, ref, _vm, detailInfo))),
-          ))),
+                        child: _buildDetailTop(context, ref, _vm, detailInfo))),
+              ))),
     );
   }
 }

+ 6 - 10
packages/cpt_notice_board/lib/modules/notice_board/page/notice_board_page.dart

@@ -37,7 +37,7 @@ class NoticeBoardPage extends HookConsumerWidget {
     final curIdx =
         ref.watch(noticeBoardVmProvider.select((value) => value.curIdx));
     return Container(
-      color: Colors.white,
+      color: context.appColors.whiteBG,
       child: Center(
         child: Row(
           mainAxisAlignment: MainAxisAlignment.center,
@@ -47,20 +47,17 @@ class NoticeBoardPage extends HookConsumerWidget {
             return Column(
               children: [
                 Container(
-                  width: MediaQuery.of(context).size.width /
-                          topSectionsData.length -
-                      36,
+                  width: MediaQuery.of(context).size.width / topSectionsData.length - 36,
                   height: 70,
                   padding: const EdgeInsets.only(
                       top: 18, left: 15, right: 15, bottom: 15),
                   decoration: BoxDecoration(
-                    color:  ColorUtils.string2Color('#E6F2FF'),
+                    color: context.appColors.lightBlueBg, // 设置圆形背景颜色
                     shape: BoxShape.circle, // 设置为圆形
                     boxShadow: tabsRouter.activeIndex == index
                         ? [
                             BoxShadow(
-                              color: context
-                                  .appColors.tabLightBlueShadow, // 设置阴影颜色
+                              color: context.appColors.tabLightBlueShadow, // 设置阴影颜色
                               blurRadius: 5, // 设置模糊半径
                               spreadRadius: 0.05, // 控制阴影扩散
                               offset: const Offset(0, 4), // 设置阴影偏移量
@@ -85,9 +82,8 @@ class NoticeBoardPage extends HookConsumerWidget {
                   maxLines: 1, // 设置最大行数为2
                   isTextEllipsis: true, // 超出部分用省略号表示
                   fontSize: 13,
-                  textColor: currentTabIdx == index
-                      ? ColorUtils.string2Color('#4161D0')
-                      : Colors.black,
+                  textColor: currentTabIdx == index?
+                  context.appColors.tabTextSelectedDefault : context.appColors.tabTextUnSelectedDefault,
                   isFontMedium: true,
                 ),
               ],

+ 2 - 5
packages/cpt_payment/lib/modules/choose_card/choose_card_page.dart

@@ -13,8 +13,8 @@ import 'package:widgets/my_text_view.dart';
 import 'package:widgets/widget_export.dart';
 
 import '../../router/page/payment_page_router.dart';
-import '../payment/manage/item_manage.dart';
 import 'choose_card_view_model.dart';
+import 'item_card.dart';
 
 @RoutePage()
 class ChooseCardPage extends HookConsumerWidget {
@@ -90,12 +90,9 @@ class ChooseCardPage extends HookConsumerWidget {
                   SliverList(
                       delegate: SliverChildBuilderDelegate(
                     (context, index) {
-                      return ManageItem(
+                      return CardItem(
                         index: index,
                         item: state.datas[index],
-                        deleteAction: () {
-                          viewModel.showDeleteDialog(index);
-                        },
                       ).onTap(() {
                         viewModel.setAsPrimary(index);
                       });

+ 65 - 0
packages/cpt_payment/lib/modules/choose_card/item_card.dart

@@ -0,0 +1,65 @@
+import 'package:cs_resources/generated/assets.dart';
+import 'package:cs_resources/generated/l10n.dart';
+import 'package:cs_resources/theme/app_colors_theme.dart';
+import 'package:flutter/material.dart';
+import 'package:widgets/ext/ex_widget.dart';
+import 'package:widgets/my_load_image.dart';
+import 'package:widgets/my_text_view.dart';
+
+///  选择银行卡的Item
+class CardItem extends StatelessWidget {
+  final int index;
+  final bool item;
+
+  const CardItem({
+    required this.index,
+    required this.item,
+  });
+
+  @override
+  Widget build(BuildContext context) {
+    return Container(
+      margin: const EdgeInsets.only(top: 1),
+      color: context.appColors.whiteBG,
+      width: double.infinity,
+      padding: const EdgeInsets.only(left: 20, right: 23, top: 20, bottom: 20),
+      child: Row(
+        mainAxisSize: MainAxisSize.max,
+        crossAxisAlignment: CrossAxisAlignment.center,
+        children: [
+          //选中
+          MyAssetImage(
+            item ? Assets.baseServiceRadioChecked : Assets.baseServiceRadioUncheck,
+            width: 25,
+            height: 25,
+          ),
+
+          const MyAssetImage(
+            Assets.facilityAddCardMaster,
+            height: 38,
+          ).marginOnly(left: 9, right: 9),
+
+          Column(
+            crossAxisAlignment: CrossAxisAlignment.start,
+            children: [
+              MyTextView(
+                "Wu Bing Bing's Card",
+                textColor: context.appColors.textBlack,
+                fontSize: 13.5,
+                isFontRegular: true,
+              ),
+              MyTextView(
+                "Ending 9423",
+                marginTop: 5,
+                textColor: context.appColors.textBlack,
+                fontSize: 13.5,
+                isFontRegular: true,
+              ),
+            ],
+          ).expanded(),
+
+        ],
+      ),
+    );
+  }
+}

+ 1 - 1
packages/cpt_payment/lib/modules/payment/history/item_history_list.dart

@@ -25,7 +25,7 @@ class HistoryListItem extends StatelessWidget {
         borderRadius: BorderRadius.circular(6.0), // 圆角
         boxShadow: [
           BoxShadow(
-            color: const Color(0xFFB8BFD9).withOpacity(0.3), // 阴影颜色
+            color: context.appColors.itemBGShadow, // 阴影颜色
             offset: const Offset(0, 3), // 阴影的偏移量
             blurRadius: 8.0, // 模糊半径
             spreadRadius: 3.0, // 扩散半径

+ 2 - 2
packages/cpt_payment/lib/modules/payment/info/info_screen.dart

@@ -45,7 +45,7 @@ class InfoScreen extends HookConsumerWidget {
                           style: TextStyle(fontSize: 16, fontWeight: FontWeight.w500, color: context.appColors.textPrimary),
                           children: <TextSpan>[
                             const TextSpan(
-                              text: "YY Home",
+                              text: "24IFM",
                             ),
                             TextSpan(
                               text: " Pay",
@@ -92,7 +92,7 @@ class InfoScreen extends HookConsumerWidget {
                 style: TextStyle(fontSize: 16, fontWeight: FontWeight.w500, color: context.appColors.textPrimary),
                 children: <TextSpan>[
                   const TextSpan(
-                    text: "YY Home",
+                    text: "24IFM",
                   ),
                   TextSpan(
                     text: " Pay",

+ 1 - 1
packages/cpt_payment/lib/modules/payment/manage/item_manage.dart

@@ -36,7 +36,7 @@ class ManageItem extends StatelessWidget {
             height: 25,
           ),
 
-          MyAssetImage(
+          const MyAssetImage(
             Assets.facilityAddCardMaster,
             height: 38,
           ).marginOnly(left: 9, right: 9),

+ 1 - 1
packages/cpt_payment/lib/modules/payment/payment/item_payment_list.dart

@@ -29,7 +29,7 @@ class PaymentListItem extends StatelessWidget {
         borderRadius: BorderRadius.circular(6.0), // 圆角
         boxShadow: [
           BoxShadow(
-            color: const Color(0xFFB8BFD9).withOpacity(0.3), // 阴影颜色
+            color: context.appColors.itemBGShadow, // 阴影颜色
             offset: const Offset(0, 3), // 阴影的偏移量
             blurRadius: 8.0, // 模糊半径
             spreadRadius: 3.0, // 扩散半径

+ 1 - 1
packages/cpt_property/lib/modules/ioan/property_ioan_page.dart

@@ -34,7 +34,7 @@ class PropertyIoanPage extends HookConsumerWidget {
     return Column(
       children: [
         MyTextView(
-          "YY Home",
+          "24IFM",
           textColor: context.appColors.textBlack,
           fontSize: 27,
           isFontMedium: true,

+ 1 - 1
packages/cpt_property/lib/modules/ioan/property_ioan_vm.dart

@@ -124,7 +124,7 @@ class PropertyIoanVm extends _$PropertyIoanVm {
                   // maxLines: 5,
                 ),
                 MyTextView(
-                  "This is a complementary servicebrought to you by YY Home",
+                  "This is a complementary service brought to you by 24IFM",
                   textColor: ColorUtils.string2Color('#666666'),
                   textAlign: TextAlign.left,
                   // maxLines: 5,

+ 98 - 92
packages/cpt_rewards/lib/modules/rewards/rewards_page.dart

@@ -25,6 +25,7 @@ import 'package:widgets/ext/ex_widget.dart';
 import 'package:widgets/load_state_layout.dart';
 import 'package:widgets/my_appbar.dart';
 import 'package:widgets/my_load_image.dart';
+import 'package:widgets/utils/dark_theme_util.dart';
 import 'package:widgets/widget_export.dart';
 
 import 'package:intl/intl.dart';
@@ -113,64 +114,64 @@ class RewardsPage extends HookConsumerWidget {
                 )),
           ),
         ),
-      ]).backgroundColor(ColorUtils.string2Color('#F2F3F6')),
+      ]).backgroundColor(context.appColors.backgroundDark),
     );
   }
 
   Widget _buildTop(BuildContext context, WidgetRef ref, _vm, RewardsIndexEntity? list) {
     int points = list?.points ?? 0;
     return Container(
-        decoration: BoxDecoration(
-          border: Border(
-              bottom: BorderSide(
-            color: ColorUtils.string2Color('#4161D0'), // 设置bottom边框的颜色
-            width: 45.0, // 设置bottom边框的宽度
-          )),
-          borderRadius: const BorderRadius.only(
-            topLeft: Radius.circular(0.0),
-            topRight: Radius.circular(0.0),
-            bottomLeft: Radius.circular(30.0),
-            bottomRight: Radius.circular(30.0),
-          ), // 圆角
-        ),
-        child: Column(
-          crossAxisAlignment: CrossAxisAlignment.start,
-          children: [
-
-            Row(
-              crossAxisAlignment: CrossAxisAlignment.center,
-              mainAxisAlignment: MainAxisAlignment.spaceBetween,
-              children: [
-                 Text(
-                  S.current.available_points,
-                  style: const TextStyle(fontSize: 17.0, color: Colors.white, fontWeight: FontWeight.w500), // 设置字体大小
-                ),
-                Container(
-                  decoration: BoxDecoration(
-                    border: Border.all(color: Colors.white, width: 1), // 边框
-                    borderRadius: BorderRadius.circular(8), // 圆角
-                  ),
-                  child: Row(
-                    children: [
-                      const MyAssetImage(
-                        Assets.rewardsRewardsIconJb,
-                        width: 23,
-                        height: 23,
-                      ).marginOnly(right: 5),
-                      Text(
-                        '$points',
-                        style: const TextStyle(fontSize: 15.0, color: Colors.white, fontWeight: FontWeight.w400), // 设置字体大小
-                      ),
-                    ],
-                  ).paddingOnly(left: 10, top: 7, bottom: 7, right: 10),
+      decoration: BoxDecoration(
+        border: Border(
+            bottom: BorderSide(
+          color: context.appColors.btnBgDefault, // 设置bottom边框的颜色
+          width: 45.0, // 设置bottom边框的宽度
+        )),
+        borderRadius: const BorderRadius.only(
+          topLeft: Radius.circular(0.0),
+          topRight: Radius.circular(0.0),
+          bottomLeft: Radius.circular(30.0),
+          bottomRight: Radius.circular(30.0),
+        ), // 圆角
+      ),
+      child: Column(
+        crossAxisAlignment: CrossAxisAlignment.start,
+        children: [
+          Row(
+            crossAxisAlignment: CrossAxisAlignment.center,
+            mainAxisAlignment: MainAxisAlignment.spaceBetween,
+            children: [
+              Text(
+                S.current.available_points,
+                style: const TextStyle(fontSize: 17.0, color: Colors.white, fontWeight: FontWeight.w500), // 设置字体大小
+              ),
+              Container(
+                decoration: BoxDecoration(
+                  border: Border.all(color: Colors.white, width: 1), // 边框
+                  borderRadius: BorderRadius.circular(8), // 圆角
                 ),
-              ],
-            ).paddingOnly(left: 10, top: 0, bottom: 18),
-          ],
-        )
-            .paddingOnly(top: 15, left: 5, right: 15, bottom: 0)
-            .border(bottom: 0, color: ColorUtils.string2Color('#4161D0'))
-            .backgroundColor(ColorUtils.string2Color('#4161D0')));
+                child: Row(
+                  children: [
+                    const MyAssetImage(
+                      Assets.rewardsRewardsIconJb,
+                      width: 23,
+                      height: 23,
+                    ).marginOnly(right: 5),
+                    Text(
+                      '$points',
+                      style: const TextStyle(fontSize: 15.0, color: Colors.white, fontWeight: FontWeight.w400), // 设置字体大小
+                    ),
+                  ],
+                ).paddingOnly(left: 10, top: 7, bottom: 7, right: 10),
+              ),
+            ],
+          ).paddingOnly(left: 10, top: 0, bottom: 18),
+        ],
+      )
+          .paddingOnly(top: 15, left: 5, right: 15, bottom: 0)
+          .border(bottom: 0, color: context.appColors.btnBgDefault)
+          .backgroundColor(context.appColors.btnBgDefault),
+    );
   }
 
   Widget _buildSearch(BuildContext context, WidgetRef ref, _vm, RewardsIndexEntity? list) {
@@ -188,9 +189,9 @@ class RewardsPage extends HookConsumerWidget {
     return Container(
       width: MediaQuery.of(context).size.width - 30,
       decoration: BoxDecoration(
-        color: Colors.white,
+        color: context.appColors.whiteBG,
         borderRadius: BorderRadius.circular(10),
-        boxShadow: const [BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)],
+        boxShadow: [BoxShadow(color: context.appColors.itemBGShadow)],
       ),
       child: Column(
         crossAxisAlignment: CrossAxisAlignment.start,
@@ -198,7 +199,7 @@ class RewardsPage extends HookConsumerWidget {
         children: [
           Text(
             S.current.continuous_login_8_day,
-            style: TextStyle(fontSize: 15.0, color: ColorUtils.string2Color('#000000'), fontWeight: FontWeight.w500), // 设置字体大小
+            style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500), // 设置字体大小
           ),
           Flex(
             direction: Axis.horizontal,
@@ -207,9 +208,9 @@ class RewardsPage extends HookConsumerWidget {
                 flex: 1,
                 child: Container(
                   decoration: BoxDecoration(
-                    color: ColorUtils.string2Color('#F2F3F6'),
+                    color: context.appColors.whiteSecondBG,
                     borderRadius: BorderRadius.circular(10),
-                    border: Border.all(color: ColorUtils.string2Color('#4161D0'), width: 1),
+                    border: Border.all(color: context.appColors.textPrimary, width: 1),
                   ),
                   height: 78,
                   child: Column(
@@ -217,8 +218,8 @@ class RewardsPage extends HookConsumerWidget {
                     mainAxisAlignment: MainAxisAlignment.center,
                     children: [
                       Text(
-                        '$date0',
-                        style: TextStyle(fontSize: 13.0, color: ColorUtils.string2Color('#4161D0'), fontWeight: FontWeight.w400), // 设置字体大小
+                        date0,
+                        style: TextStyle(fontSize: 13.0, color: context.appColors.textPrimary, fontWeight: FontWeight.w400), // 设置字体大小
                       ),
                       const MyAssetImage(
                         Assets.rewardsRewardsIconJb,
@@ -227,7 +228,7 @@ class RewardsPage extends HookConsumerWidget {
                       ),
                       Text(
                         '+2',
-                        style: TextStyle(fontSize: 15.0, color: ColorUtils.string2Color('#4161D0'), fontWeight: FontWeight.w500), // 设置字体大小
+                        style: TextStyle(fontSize: 15.0, color: context.appColors.textPrimary, fontWeight: FontWeight.w500), // 设置字体大小
                       ),
                     ],
                   ),
@@ -442,9 +443,9 @@ class RewardsPage extends HookConsumerWidget {
       // color: Colors.white,
       height: 55,
       decoration: BoxDecoration(
-        color: Colors.white,
+        color: context.appColors.whiteBG,
         borderRadius: BorderRadius.circular(10),
-        boxShadow: const [BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)],
+        boxShadow: [BoxShadow(color: context.appColors.itemBGShadow)],
       ),
       child: Row(
         crossAxisAlignment: CrossAxisAlignment.center,
@@ -452,12 +453,12 @@ class RewardsPage extends HookConsumerWidget {
         children: [
           Text(
             S.current.how_to_get_rewards,
-            style: TextStyle(fontSize: 15.0, color: ColorUtils.string2Color('#000000'), fontWeight: FontWeight.w500), // 设置字体大小
+            style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500), // 设置字体大小
           ),
           Container(
             padding: const EdgeInsets.only(top: 10, bottom: 10, left: 17, right: 17),
             decoration: BoxDecoration(
-              color: ColorUtils.string2Color('#4161D0'),
+              color: context.appColors.btnBgDefaultDark,
               borderRadius: BorderRadius.circular(5),
             ),
             child: Text(
@@ -477,9 +478,9 @@ class RewardsPage extends HookConsumerWidget {
     int giveLikes = list?.tasks?.give10Likes ?? 0;
     return Container(
       decoration: BoxDecoration(
-        color: Colors.white,
+        color: context.appColors.whiteBG,
         borderRadius: BorderRadius.circular(10),
-        boxShadow: const [BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)],
+        boxShadow: [BoxShadow(color: context.appColors.itemBGShadow)],
       ),
       child: Column(
         crossAxisAlignment: CrossAxisAlignment.center,
@@ -491,7 +492,7 @@ class RewardsPage extends HookConsumerWidget {
                 border: Border(
                     bottom: BorderSide(
               width: 1.0, // 底边边框的宽度
-              color: ColorUtils.string2Color('#F2F3F6'), // 底边边框的颜色
+              color: context.appColors.backgroundDark, // 底边边框的颜色
             ))),
             child: Row(
               crossAxisAlignment: CrossAxisAlignment.center,
@@ -517,13 +518,13 @@ class RewardsPage extends HookConsumerWidget {
                       children: [
                         Text(
                           S.current.daily_login,
-                          style: TextStyle(fontSize: 15.0, color: ColorUtils.string2Color('#000000'), fontWeight: FontWeight.w500), // 设置字体大小
+                          style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500), // 设置字体大小
                         ).marginOnly(bottom: 6),
                         Row(
                           children: [
                             Text(
                               '+2',
-                              style: TextStyle(fontSize: 15.0, color: ColorUtils.string2Color('#4161D0'), fontWeight: FontWeight.w500), // 设置字体大小
+                              style: TextStyle(fontSize: 15.0, color: context.appColors.textPrimary, fontWeight: FontWeight.w500), // 设置字体大小
                             ),
                             const MyAssetImage(
                               Assets.rewardsRewardsIconJb,
@@ -540,14 +541,14 @@ class RewardsPage extends HookConsumerWidget {
                   width: 86,
                   height: 30,
                   decoration: BoxDecoration(
-                    color: ColorUtils.string2Color('#ffffff'),
+                    color: Colors.transparent,
                     borderRadius: BorderRadius.circular(5),
-                    border: Border.all(color: ColorUtils.string2Color('#4161D0'), width: 1),
+                    border: Border.all(color: context.appColors.btnBgDefaultDark, width: 1),
                   ),
                   child: Center(
                     child: Text(
                       S.current.check_in,
-                      style: TextStyle(fontSize: 14.0, color: ColorUtils.string2Color('#4161D0'), fontWeight: FontWeight.w400), // 设置字体大小
+                      style: TextStyle(fontSize: 14.0, color: context.appColors.textPrimary, fontWeight: FontWeight.w400), // 设置字体大小
                     ),
                   ),
                 ),
@@ -560,7 +561,7 @@ class RewardsPage extends HookConsumerWidget {
                 border: Border(
                     bottom: BorderSide(
               width: 1.0, // 底边边框的宽度
-              color: ColorUtils.string2Color('#F2F3F6'), // 底边边框的颜色
+              color: context.appColors.backgroundDark, // 底边边框的颜色
             ))),
             child: Row(
               crossAxisAlignment: CrossAxisAlignment.center,
@@ -586,13 +587,13 @@ class RewardsPage extends HookConsumerWidget {
                       children: [
                         Text(
                           S.current.news_feed_post,
-                          style: TextStyle(fontSize: 15.0, color: ColorUtils.string2Color('#000000'), fontWeight: FontWeight.w500), // 设置字体大小
+                          style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500), // 设置字体大小
                         ).marginOnly(bottom: 6),
                         Row(
                           children: [
                             Text(
                               '+2',
-                              style: TextStyle(fontSize: 15.0, color: ColorUtils.string2Color('#4161D0'), fontWeight: FontWeight.w500), // 设置字体大小
+                              style: TextStyle(fontSize: 15.0, color: context.appColors.textPrimary, fontWeight: FontWeight.w500), // 设置字体大小
                             ),
                             const MyAssetImage(
                               Assets.rewardsRewardsIconJb,
@@ -609,14 +610,14 @@ class RewardsPage extends HookConsumerWidget {
                   width: 86,
                   height: 30,
                   decoration: BoxDecoration(
-                    color: ColorUtils.string2Color('#ffffff'),
+                    color: Colors.transparent,
                     borderRadius: BorderRadius.circular(5),
-                    border: Border.all(color: ColorUtils.string2Color('#4161D0'), width: 1),
+                    border: Border.all(color: context.appColors.btnBgDefaultDark, width: 1),
                   ),
                   child: Center(
                     child: Text(
                       newsFeed == true ? S.current.completed : S.current.incomplete,
-                      style: TextStyle(fontSize: 14.0, color: ColorUtils.string2Color('#4161D0'), fontWeight: FontWeight.w400), // 设置字体大小
+                      style: TextStyle(fontSize: 14.0, color: context.appColors.textPrimary, fontWeight: FontWeight.w400), // 设置字体大小
                     ),
                   ),
                 ),
@@ -629,7 +630,7 @@ class RewardsPage extends HookConsumerWidget {
                 border: Border(
                     bottom: BorderSide(
               width: 1.0, // 底边边框的宽度
-              color: ColorUtils.string2Color('#F2F3F6'), // 底边边框的颜色
+              color: context.appColors.backgroundDark, // 底边边框的颜色
             ))),
             child: Row(
               crossAxisAlignment: CrossAxisAlignment.center,
@@ -655,13 +656,13 @@ class RewardsPage extends HookConsumerWidget {
                       children: [
                         Text(
                           S.current.give_10_likes,
-                          style: TextStyle(fontSize: 15.0, color: ColorUtils.string2Color('#000000'), fontWeight: FontWeight.w500), // 设置字体大小
+                          style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500), // 设置字体大小
                         ).marginOnly(bottom: 6),
                         Row(
                           children: [
                             Text(
                               '+2',
-                              style: TextStyle(fontSize: 15.0, color: ColorUtils.string2Color('#4161D0'), fontWeight: FontWeight.w500), // 设置字体大小
+                              style: TextStyle(fontSize: 15.0, color: context.appColors.textPrimary, fontWeight: FontWeight.w500), // 设置字体大小
                             ),
                             const MyAssetImage(
                               Assets.rewardsRewardsIconJb,
@@ -678,14 +679,14 @@ class RewardsPage extends HookConsumerWidget {
                   width: 86,
                   height: 30,
                   decoration: BoxDecoration(
-                    color: ColorUtils.string2Color('#ffffff'),
+                    color: Colors.transparent,
                     borderRadius: BorderRadius.circular(5),
-                    border: Border.all(color: ColorUtils.string2Color('#4161D0'), width: 1),
+                    border: Border.all(color: context.appColors.btnBgDefaultDark, width: 1),
                   ),
                   child: Center(
                     child: Text(
                       giveLikes == 10 ? S.current.completed : '$giveLikes/10',
-                      style: TextStyle(fontSize: 14.0, color: ColorUtils.string2Color('#4161D0'), fontWeight: FontWeight.w400), // 设置字体大小
+                      style: TextStyle(fontSize: 14.0, color: context.appColors.textPrimary, fontWeight: FontWeight.w400), // 设置字体大小
                     ),
                   ),
                 ),
@@ -699,12 +700,11 @@ class RewardsPage extends HookConsumerWidget {
 
   Widget _buildHistory(BuildContext context, WidgetRef ref, _vm, RewardsIndexEntity? list) {
     List latest = list?.latest ?? [];
-    Log.d("list是空吗? $list  最近的信息:$latest");
     return Container(
       decoration: BoxDecoration(
-        color: Colors.white,
+        color: context.appColors.whiteBG,
         borderRadius: BorderRadius.circular(10),
-        boxShadow: const [BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)],
+        boxShadow: [BoxShadow(color: context.appColors.itemBGShadow)],
       ),
       child: Column(
         crossAxisAlignment: CrossAxisAlignment.center,
@@ -713,11 +713,11 @@ class RewardsPage extends HookConsumerWidget {
           Row(crossAxisAlignment: CrossAxisAlignment.center, mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [
             Text(
               S.current.points_history,
-              style: TextStyle(fontSize: 15.0, color: ColorUtils.string2Color('#000000'), fontWeight: FontWeight.w500), // 设置字体大小
+              style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500), // 设置字体大小
             ),
             Text(
               S.current.more_arrow,
-              style: TextStyle(fontSize: 15.0, color: ColorUtils.string2Color('#4161D0'), fontWeight: FontWeight.w500), // 设置字体大小
+              style: TextStyle(fontSize: 15.0, color: context.appColors.textPrimary, fontWeight: FontWeight.w500), // 设置字体大小
             ).onTap(() {
               RewardsHistoryPage.startInstance();
             })
@@ -733,7 +733,7 @@ class RewardsPage extends HookConsumerWidget {
                       border: Border(
                           bottom: BorderSide(
                     width: 1.0, // 底边边框的宽度
-                    color: ColorUtils.string2Color('#F2F3F6'), // 底边边框的颜色
+                    color: context.appColors.backgroundDark, // 底边边框的颜色
                   ))),
                   child: Row(
                     crossAxisAlignment: CrossAxisAlignment.center,
@@ -745,17 +745,23 @@ class RewardsPage extends HookConsumerWidget {
                         children: [
                           Text(
                             latest[index]['short_description'],
-                            style: TextStyle(fontSize: 15.0, color: ColorUtils.string2Color('#000000'), fontWeight: FontWeight.w500), // 设置字体大小
+                            style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500), // 设置字体大小
                           ).marginOnly(bottom: 6),
                           Text(
                             latest[index]['created_at'],
-                            style: TextStyle(fontSize: 13.0, color: ColorUtils.string2Color('#808DAF'), fontWeight: FontWeight.w400), // 设置字体大小
+                            style: TextStyle(
+                                fontSize: 13.0,
+                                color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#808DAF'), darkColor: Colors.white),
+                                fontWeight: FontWeight.w400), // 设置字体大小
                           ),
                         ],
                       ),
                       Text(
                         "$point",
-                        style: TextStyle(fontSize: 20.0, color: ColorUtils.string2Color('#FDB429'), fontWeight: FontWeight.w500), // 设置字体大小
+                        style: TextStyle(
+                            fontSize: 20.0,
+                            color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#FDB429'), darkColor: Colors.white),
+                            fontWeight: FontWeight.w500), // 设置字体大小
                       ),
                     ],
                   ),

+ 12 - 23
packages/cpt_rewards/lib/modules/rewards_address/rewards_address_page.dart

@@ -11,6 +11,7 @@ import 'package:widgets/ext/ex_widget.dart';
 import 'package:widgets/my_appbar.dart';
 import 'package:widgets/my_load_image.dart';
 import 'package:widgets/shatter/picker_container.dart';
+import 'package:widgets/utils/dark_theme_util.dart';
 import 'package:widgets/widget_export.dart';
 import 'package:cs_resources/generated/assets.dart';
 
@@ -36,14 +37,11 @@ class RewardsAddressPage extends HookConsumerWidget {
         Column(
           crossAxisAlignment: CrossAxisAlignment.start,
           children: [
-            const Text(
+            Text(
               maxLines: 1, // 设置最大行数为2
               overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
               'Delibowl Group',
-              style: TextStyle(
-                  fontSize: 16.0,
-                  color: Colors.black,
-                  fontWeight: FontWeight.w500),
+              style: TextStyle(fontSize: 16.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
             ),
             Row(
               crossAxisAlignment: CrossAxisAlignment.center,
@@ -54,7 +52,7 @@ class RewardsAddressPage extends HookConsumerWidget {
                   width: 15,
                   height: 19,
                 ).marginOnly(right: 10),
-                const Expanded(
+                Expanded(
                   child: Text(
                     maxLines: 2, // 设置最大行数为2
                     overflow: TextOverflow.ellipsis,
@@ -62,7 +60,7 @@ class RewardsAddressPage extends HookConsumerWidget {
                     '176 Orchard Rd, #02-29/30 Song Fa Bak Kut Teh The Centrepoint, Singapore 238843',
                     style: TextStyle(
                         fontSize: 15.0,
-                        color: Color.fromARGB(255, 69, 33, 33),
+                        color: DarkThemeUtil.multiColors(context, Color.fromARGB(255, 69, 33, 33), darkColor: Colors.white),
                         fontWeight: FontWeight.w400),
                   ),
                 ),
@@ -73,16 +71,12 @@ class RewardsAddressPage extends HookConsumerWidget {
               decoration: BoxDecoration(
                 color: Colors.white,
                 borderRadius: const BorderRadius.all(Radius.circular(6.0)),
-                border: Border.all(
-                    color: ColorUtils.string2Color('#4161D0'), width: 1.0),
+                border: Border.all(color: context.appColors.textPrimary, width: 1.0),
               ),
               child: Center(
                 child: Text(
                   '+65 26593458',
-                  style: TextStyle(
-                      fontSize: 15.0,
-                      color: ColorUtils.string2Color('#4161D0'),
-                      fontWeight: FontWeight.w500),
+                  style: TextStyle(fontSize: 15.0, color: context.appColors.textPrimary, fontWeight: FontWeight.w500),
                 ),
               ),
             ),
@@ -95,12 +89,10 @@ class RewardsAddressPage extends HookConsumerWidget {
   // listitem
   Widget _buildSaleItem(BuildContext context, WidgetRef ref, item, _vm) {
     return Container(
-      decoration: const BoxDecoration(
-        color: Colors.white,
-        borderRadius: BorderRadius.all(Radius.circular(6.0)),
-        boxShadow: [
-          BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
-        ],
+      decoration: BoxDecoration(
+        color: context.appColors.whiteBG,
+        borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+        boxShadow: const [BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)],
       ),
       child: Column(
         children: [
@@ -157,10 +149,7 @@ class RewardsAddressPage extends HookConsumerWidget {
                   Log.d("----onRefresh");
                   _vm.refreshListData();
                 },
-                child: Container(
-                    color: ColorUtils.string2Color('#F2F3F6'),
-                    padding: const EdgeInsets.only(top: 15),
-                    child: _buildSaleList(context, ref, _vm)),
+                child: Container(color: context.appColors.backgroundDark, padding: const EdgeInsets.only(top: 15), child: _buildSaleList(context, ref, _vm)),
               ),
             )
           ],

+ 18 - 22
packages/cpt_rewards/lib/modules/rewards_code/rewards_code_page.dart

@@ -11,6 +11,7 @@ import 'package:widgets/ext/ex_widget.dart';
 import 'package:widgets/my_appbar.dart';
 import 'package:widgets/my_load_image.dart';
 import 'package:widgets/shatter/picker_container.dart';
+import 'package:widgets/utils/dark_theme_util.dart';
 import 'package:widgets/widget_export.dart';
 import 'package:cs_resources/generated/assets.dart';
 
@@ -20,10 +21,12 @@ import './rewards_code_vm.dart';
 @RoutePage()
 class RewardsCodePage extends HookConsumerWidget {
   final int? code;
+
   const RewardsCodePage({Key? key, @PathParam('code') required this.code}) : super(key: key);
 
   //启动当前页面
-  static void startInstance({BuildContext? context,
+  static void startInstance({
+    BuildContext? context,
     int? code,
   }) {
     if (context != null) {
@@ -41,28 +44,25 @@ class RewardsCodePage extends HookConsumerWidget {
           crossAxisAlignment: CrossAxisAlignment.center,
           mainAxisAlignment: MainAxisAlignment.center,
           children: [
-             Center(
+            Center(
               child: Text(
                 S.current.show_verification_cap,
                 textAlign: TextAlign.center,
-                style: const TextStyle(
-                    fontSize: 20.0,
-                    color: Colors.black,
-                    fontWeight: FontWeight.w500),
+                style: TextStyle(fontSize: 20.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
               ),
             ),
             Text(
               S.current.verification_code_cap,
               style: TextStyle(
                   fontSize: 18.0,
-                  color: ColorUtils.string2Color('#54638C'),
+                  color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#54638C'), darkColor: Colors.white),
                   fontWeight: FontWeight.w500),
             ).marginOnly(top: 35, bottom: 20),
             Text(
               '$codes',
               style: TextStyle(
                   fontSize: 36.0,
-                  color: ColorUtils.string2Color('#4161D0'),
+                  color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#4161D0'), darkColor: Colors.white),
                   fontWeight: FontWeight.w500),
             ),
           ],
@@ -76,13 +76,10 @@ class RewardsCodePage extends HookConsumerWidget {
     return Column(
       children: [
         Container(
-          decoration: const BoxDecoration(
-            color: Colors.white,
-            borderRadius: BorderRadius.all(Radius.circular(6.0)),
-            boxShadow: [
-              BoxShadow(
-                  color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
-            ],
+          decoration: BoxDecoration(
+            color: context.appColors.whiteBG,
+            borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+            boxShadow: const [BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)],
           ),
           width: MediaQuery.of(context).size.width - 30,
           height: 250,
@@ -117,13 +114,12 @@ class RewardsCodePage extends HookConsumerWidget {
         child: Column(
           children: [
             Expanded(
-              child: 
-              EasyRefresh(
-                child: 
-                Container(
-                    color: ColorUtils.string2Color('#F2F3F6'),
-                    padding: const EdgeInsets.only(top: 15),
-                    child: _buildSaleList(context, ref, _vm)),
+              child: EasyRefresh(
+                child: Container(
+                  color: context.appColors.backgroundDark,
+                  padding: const EdgeInsets.only(top: 15),
+                  child: _buildSaleList(context, ref, _vm),
+                ),
               ),
             )
           ],

+ 41 - 72
packages/cpt_rewards/lib/modules/rewards_confirm/rewards_confirm_page.dart

@@ -15,6 +15,7 @@ import 'package:widgets/my_appbar.dart';
 import 'package:widgets/my_load_image.dart';
 import 'package:widgets/my_text_view.dart';
 import 'package:widgets/shatter/picker_container.dart';
+import 'package:widgets/utils/dark_theme_util.dart';
 import 'package:widgets/widget_export.dart';
 import 'package:cs_resources/generated/assets.dart';
 
@@ -24,8 +25,8 @@ import './rewards_confirm_vm.dart';
 @RoutePage()
 class RewardsConfirmPage extends HookConsumerWidget {
   final int? id;
-  const RewardsConfirmPage({Key? key, @PathParam('id') required this.id})
-      : super(key: key);
+
+  const RewardsConfirmPage({Key? key, @PathParam('id') required this.id}) : super(key: key);
 
   //启动当前页面
   static void startInstance({
@@ -46,13 +47,10 @@ class RewardsConfirmPage extends HookConsumerWidget {
     return Column(
       children: [
         Container(
-            decoration: const BoxDecoration(
-              color: Colors.white,
-              borderRadius: BorderRadius.all(Radius.circular(6.0)),
-              boxShadow: [
-                BoxShadow(
-                    color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
-              ],
+            decoration: BoxDecoration(
+              color: context.appColors.whiteBG,
+              borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+              boxShadow: [BoxShadow(color: context.appColors.itemBGShadow)],
             ),
             width: MediaQuery.of(context).size.width - 30,
             // height: 420,
@@ -67,7 +65,7 @@ class RewardsConfirmPage extends HookConsumerWidget {
                         width: MediaQuery.of(context).size.width,
                         height: 150,
                       )
-                    : Container(),
+                    : const SizedBox.shrink(),
                 Column(
                   crossAxisAlignment: CrossAxisAlignment.start,
                   mainAxisAlignment: MainAxisAlignment.start,
@@ -76,10 +74,7 @@ class RewardsConfirmPage extends HookConsumerWidget {
                       maxLines: 1, // 设置最大行数为2
                       overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
                       title,
-                      style: const TextStyle(
-                          fontSize: 17.0,
-                          color: Colors.black,
-                          fontWeight: FontWeight.w500),
+                      style: TextStyle(fontSize: 17.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
                     ),
                   ],
                 ).paddingOnly(left: 15, right: 15, top: 10, bottom: 30),
@@ -93,13 +88,10 @@ class RewardsConfirmPage extends HookConsumerWidget {
     return Column(
       children: [
         Container(
-          decoration: const BoxDecoration(
-            color: Colors.white,
-            borderRadius: BorderRadius.all(Radius.circular(6.0)),
-            boxShadow: [
-              BoxShadow(
-                  color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
-            ],
+          decoration: BoxDecoration(
+            color: context.appColors.whiteBG,
+            borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+            boxShadow: [BoxShadow(color: context.appColors.itemBGShadow)],
           ),
           width: MediaQuery.of(context).size.width - 30,
           child: Column(
@@ -117,10 +109,7 @@ class RewardsConfirmPage extends HookConsumerWidget {
                   ).marginOnly(right: 5),
                   Text(
                     S.current.redeem_deal_at,
-                    style: TextStyle(
-                        fontSize: 15.0,
-                        color: ColorUtils.string2Color('#000000'),
-                        fontWeight: FontWeight.w500),
+                    style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
                   )
                 ],
               ),
@@ -134,7 +123,7 @@ class RewardsConfirmPage extends HookConsumerWidget {
                     overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
                     style: TextStyle(
                         fontSize: 15.0,
-                        color: ColorUtils.string2Color('#54638C'),
+                        color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#54638C'), darkColor: Colors.white),
                         fontWeight: FontWeight.w400),
                   ),
                 ],
@@ -153,13 +142,10 @@ class RewardsConfirmPage extends HookConsumerWidget {
     return Column(
       children: [
         Container(
-          decoration: const BoxDecoration(
-            color: Colors.white,
+          decoration: BoxDecoration(
+            color: context.appColors.whiteBG,
             borderRadius: BorderRadius.all(Radius.circular(6.0)),
-            boxShadow: [
-              BoxShadow(
-                  color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
-            ],
+            boxShadow: [BoxShadow(color: context.appColors.itemBGShadow)],
           ),
           width: MediaQuery.of(context).size.width - 30,
           child: Column(
@@ -177,10 +163,7 @@ class RewardsConfirmPage extends HookConsumerWidget {
                   ).marginOnly(right: 10),
                   Text(
                     S.current.redeem_from,
-                    style: TextStyle(
-                        fontSize: 15.0,
-                        color: ColorUtils.string2Color('#000000'),
-                        fontWeight: FontWeight.w500),
+                    style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
                   )
                 ],
               ).marginOnly(bottom: 10),
@@ -191,7 +174,7 @@ class RewardsConfirmPage extends HookConsumerWidget {
                     redeemedDate,
                     style: TextStyle(
                         fontSize: 15.0,
-                        color: ColorUtils.string2Color('#54638C'),
+                        color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#54638C'), darkColor: Colors.white),
                         fontWeight: FontWeight.w400),
                   ),
                 ],
@@ -212,13 +195,10 @@ class RewardsConfirmPage extends HookConsumerWidget {
     return Column(
       children: [
         Container(
-          decoration: const BoxDecoration(
-            color: Colors.white,
-            borderRadius: BorderRadius.all(Radius.circular(6.0)),
-            boxShadow: [
-              BoxShadow(
-                  color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
-            ],
+          decoration: BoxDecoration(
+            color: context.appColors.whiteBG,
+            borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+            boxShadow: [BoxShadow(color: context.appColors.itemBGShadow)],
           ),
           width: MediaQuery.of(context).size.width - 30,
           child: Column(
@@ -230,15 +210,14 @@ class RewardsConfirmPage extends HookConsumerWidget {
                 children: [
                   Text(
                     "${S.current.quantity}:",
-                    style: TextStyle(
-                        fontSize: 15.0,
-                        color: ColorUtils.string2Color('#333333'),
-                        fontWeight: FontWeight.w400),
+                    style: TextStyle(fontSize: 15.0, color: context.appColors.tabTextUnSelectedPrimary, fontWeight: FontWeight.w400),
                   ),
                   Row(
                     children: [
-                      const MyAssetImage(
+                      DarkThemeUtil.multiImageColorFit(
+                        context,
                         Assets.rewardsRewardsJian,
+                        darkColor: Colors.white,
                         width: 21,
                         height: 21,
                       ).onTap(() {
@@ -246,13 +225,12 @@ class RewardsConfirmPage extends HookConsumerWidget {
                       }),
                       Text(
                         '$number',
-                        style: TextStyle(
-                            fontSize: 19.0,
-                            color: ColorUtils.string2Color('#333333'),
-                            fontWeight: FontWeight.w500),
+                        style: TextStyle(fontSize: 19.0, color: context.appColors.tabTextUnSelectedPrimary, fontWeight: FontWeight.w500),
                       ).marginOnly(left: 15, right: 15),
-                      const MyAssetImage(
+                      DarkThemeUtil.multiImageColorFit(
+                        context,
                         Assets.rewardsRewardsJia,
+                        darkColor: Colors.white,
                         width: 21,
                         height: 21,
                       ).onTap(() {
@@ -268,10 +246,7 @@ class RewardsConfirmPage extends HookConsumerWidget {
                 children: [
                   Text(
                     '${S.current.points}:',
-                    style: TextStyle(
-                        fontSize: 15.0,
-                        color: ColorUtils.string2Color('#333333'),
-                        fontWeight: FontWeight.w400),
+                    style: TextStyle(fontSize: 15.0, color: context.appColors.tabTextUnSelectedPrimary, fontWeight: FontWeight.w400),
                   ),
                   Row(
                     children: [
@@ -279,18 +254,15 @@ class RewardsConfirmPage extends HookConsumerWidget {
                         '$originalPoint',
                         style: TextStyle(
                             decoration: TextDecoration.lineThrough,
-                            decorationColor: ColorUtils.string2Color('#54638C'),
+                            decorationColor: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#54638C'), darkColor: Colors.white),
                             decorationStyle: TextDecorationStyle.solid,
                             fontSize: 14.0,
-                            color: ColorUtils.string2Color('#54638C'),
+                            color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#54638C'), darkColor: Colors.white),
                             fontWeight: FontWeight.w400),
                       ),
                       Text(
                         '$point',
-                        style: TextStyle(
-                            fontSize: 19.0,
-                            color: ColorUtils.string2Color('#333333'),
-                            fontWeight: FontWeight.w500),
+                        style: TextStyle(fontSize: 19.0, color: context.appColors.tabTextUnSelectedPrimary, fontWeight: FontWeight.w500),
                       ).marginOnly(left: 10),
                     ],
                   ),
@@ -302,10 +274,7 @@ class RewardsConfirmPage extends HookConsumerWidget {
                 children: [
                   Text(
                     '${S.current.amount}:',
-                    style: TextStyle(
-                        fontSize: 15.0,
-                        color: ColorUtils.string2Color('#333333'),
-                        fontWeight: FontWeight.w400),
+                    style: TextStyle(fontSize: 15.0, color: context.appColors.tabTextUnSelectedPrimary, fontWeight: FontWeight.w400),
                   ),
                   Row(
                     children: [
@@ -313,7 +282,7 @@ class RewardsConfirmPage extends HookConsumerWidget {
                         '$amount',
                         style: TextStyle(
                             fontSize: 19.0,
-                            color: ColorUtils.string2Color('#4161D0'),
+                            color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#4161D0'), darkColor: Colors.white),
                             fontWeight: FontWeight.w500),
                       ),
                     ],
@@ -362,7 +331,7 @@ class RewardsConfirmPage extends HookConsumerWidget {
                       child: Column(
                         children: [
                           Container(
-                              color: ColorUtils.string2Color('#F2F3F6'),
+                              color: context.appColors.backgroundDark,
                               padding: const EdgeInsets.only(top: 15),
                               child: Column(
                                 children: [
@@ -376,14 +345,14 @@ class RewardsConfirmPage extends HookConsumerWidget {
                       ))),
               Container(
                 height: 50,
-                color: ColorUtils.string2Color('#4161D0'),
+                color: context.appColors.btnBgDefault,
                 child: Flex(
                   direction: Axis.horizontal,
                   children: [
                     Expanded(
                       flex: 1,
                       child: Container(
-                        color: ColorUtils.string2Color('#4161D0'),
+                        color: context.appColors.btnBgDefault,
                         height: 100,
                         child: Row(
                           mainAxisAlignment: MainAxisAlignment.center,

+ 50 - 119
packages/cpt_rewards/lib/modules/rewards_detail/rewards_detail_page.dart

@@ -16,6 +16,7 @@ import 'package:widgets/my_appbar.dart';
 import 'package:widgets/my_load_image.dart';
 import 'package:widgets/my_text_view.dart';
 import 'package:widgets/shatter/picker_container.dart';
+import 'package:widgets/utils/dark_theme_util.dart';
 import 'package:widgets/widget_export.dart';
 import 'package:cs_resources/generated/assets.dart';
 
@@ -25,8 +26,8 @@ import './rewards_detail_vm.dart';
 @RoutePage()
 class RewardsDetailPage extends HookConsumerWidget {
   final int? id;
-  const RewardsDetailPage({Key? key, @PathParam('id') required this.id})
-      : super(key: key);
+
+  const RewardsDetailPage({Key? key, @PathParam('id') required this.id}) : super(key: key);
 
   //启动当前页面
   static void startInstance({
@@ -55,13 +56,10 @@ class RewardsDetailPage extends HookConsumerWidget {
     return Column(
       children: [
         Container(
-            decoration: const BoxDecoration(
-              color: Colors.white,
+            decoration: BoxDecoration(
+              color: context.appColors.whiteBG,
               borderRadius: BorderRadius.all(Radius.circular(6.0)),
-              boxShadow: [
-                BoxShadow(
-                    color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
-              ],
+              boxShadow: [BoxShadow(color: context.appColors.itemBGShadow)],
             ),
             width: MediaQuery.of(context).size.width - 30,
             // height: 420,
@@ -83,10 +81,7 @@ class RewardsDetailPage extends HookConsumerWidget {
                       maxLines: 1, // 设置最大行数为2
                       overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
                       title,
-                      style: const TextStyle(
-                          fontSize: 16.0,
-                          color: Colors.black,
-                          fontWeight: FontWeight.w500),
+                      style: TextStyle(fontSize: 16.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
                     ),
                     Text(
                       maxLines: 1, // 设置最大行数为2
@@ -94,35 +89,28 @@ class RewardsDetailPage extends HookConsumerWidget {
                       '${S.current.published_date}: $createdAt',
                       style: TextStyle(
                           fontSize: 13.0,
-                          color: ColorUtils.string2Color('#808DAF'),
+                          color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#808DAF'), darkColor: Colors.white),
                           fontWeight: FontWeight.w400),
                     ).marginOnly(bottom: 5),
                     Row(
                       children: [
                         Text(
                           '$point',
-                          style: const TextStyle(
-                              fontSize: 19.0,
-                              color: Colors.black,
-                              fontWeight: FontWeight.w500),
+                          style: TextStyle(fontSize: 19.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
                         ),
                         Text(
                           '$originalPoint',
                           style: TextStyle(
                               decoration: TextDecoration.lineThrough,
-                              decorationColor:
-                                  ColorUtils.string2Color('#808DAF'),
+                              decorationColor: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#808DAF'), darkColor: Colors.white),
                               decorationStyle: TextDecorationStyle.solid,
                               fontSize: 12.0,
                               color: ColorUtils.string2Color('#808DAF'),
                               fontWeight: FontWeight.w400),
                         ).marginOnly(left: 5, right: 5),
-                         Text(
+                        Text(
                           S.current.points,
-                          style: const TextStyle(
-                              fontSize: 13.0,
-                              color: Colors.black,
-                              fontWeight: FontWeight.w400),
+                          style: TextStyle(fontSize: 13.0, color: context.appColors.textBlack, fontWeight: FontWeight.w400),
                         ),
                       ],
                     ),
@@ -130,7 +118,7 @@ class RewardsDetailPage extends HookConsumerWidget {
                       description,
                       style: TextStyle(
                           fontSize: 13.0,
-                          color: ColorUtils.string2Color('#808DAF'),
+                          color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#808DAF'), darkColor: Colors.white),
                           fontWeight: FontWeight.w400),
                     ).marginOnly(bottom: 10, top: 10),
                     Container(
@@ -165,8 +153,7 @@ class RewardsDetailPage extends HookConsumerWidget {
                             height: 28,
                             decoration: BoxDecoration(
                               color: ColorUtils.string2Color('#F2F3F6'),
-                              borderRadius:
-                                  const BorderRadius.all(Radius.circular(6.0)),
+                              borderRadius: const BorderRadius.all(Radius.circular(6.0)),
                             ),
                             child: Row(
                               mainAxisSize: MainAxisSize.min,
@@ -181,9 +168,7 @@ class RewardsDetailPage extends HookConsumerWidget {
                                 Text(
                                   maxLines: 1, // 设置最大行数为2
                                   overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
-                                  reservation
-                                      ? S.current.reservation_required
-                                      : S.current.no_reservation_required,
+                                  reservation ? S.current.reservation_required : S.current.no_reservation_required,
                                   style: TextStyle(
                                       fontSize: 14.0,
                                       color: ColorUtils.string2Color('#808DAF'),
@@ -207,10 +192,7 @@ class RewardsDetailPage extends HookConsumerWidget {
           decoration: const BoxDecoration(
             color: Colors.white,
             borderRadius: BorderRadius.all(Radius.circular(6.0)),
-            boxShadow: [
-              BoxShadow(
-                  color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
-            ],
+            boxShadow: [BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)],
           ),
           width: MediaQuery.of(context).size.width - 30,
           child: Column(
@@ -228,19 +210,15 @@ class RewardsDetailPage extends HookConsumerWidget {
                   ).marginOnly(right: 10),
                   Text(
                     S.current.redeem_deal_at,
-                    style: TextStyle(
-                        fontSize: 15.0,
-                        color: ColorUtils.string2Color('#000000'),
-                        fontWeight: FontWeight.w500),
+                    style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack   , fontWeight: FontWeight.w500),
                   )
                 ],
               ),
               Container(
                       height: 77,
                       decoration: BoxDecoration(
-                        color: ColorUtils.string2Color('#F2F3F6'),
-                        borderRadius:
-                            const BorderRadius.all(Radius.circular(6.0)),
+                        color:DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#F2F3F6'),darkColor: Colors.white),
+                        borderRadius: const BorderRadius.all(Radius.circular(6.0)),
                       ),
                       child: Row(
                         mainAxisSize: MainAxisSize.max,
@@ -259,19 +237,13 @@ class RewardsDetailPage extends HookConsumerWidget {
                                 maxLines: 1, // 设置最大行数为2
                                 overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
                                 'Delibowl Group',
-                                style: TextStyle(
-                                    fontSize: 15.0,
-                                    color: ColorUtils.string2Color('#54638C'),
-                                    fontWeight: FontWeight.w500),
+                                style: TextStyle(fontSize: 15.0, color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#54638C'),darkColor: Colors.white), fontWeight: FontWeight.w500),
                               ).marginOnly(bottom: 8),
                               Text(
                                 maxLines: 1, // 设置最大行数为2
                                 overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
                                 '#01-136, SingPost Center, 408600',
-                                style: TextStyle(
-                                    fontSize: 14.0,
-                                    color: ColorUtils.string2Color('#54638C'),
-                                    fontWeight: FontWeight.w400),
+                                style: TextStyle(fontSize: 14.0, color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#54638C'),darkColor: Colors.white), fontWeight: FontWeight.w400),
                               )
                             ],
                           ).paddingOnly(
@@ -286,10 +258,7 @@ class RewardsDetailPage extends HookConsumerWidget {
                 children: [
                   Text(
                     'Also redeemable in 1 more location',
-                    style: TextStyle(
-                        fontSize: 15.0,
-                        color: ColorUtils.string2Color('#54638C'),
-                        fontWeight: FontWeight.w400),
+                    style: TextStyle(fontSize: 15.0, color:DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#54638C'),darkColor: Colors.white), fontWeight: FontWeight.w400),
                   ),
                   const MyAssetImage(
                     Assets.rewardsRewardsRight,
@@ -310,13 +279,10 @@ class RewardsDetailPage extends HookConsumerWidget {
     return Column(
       children: [
         Container(
-          decoration: const BoxDecoration(
-            color: Colors.white,
-            borderRadius: BorderRadius.all(Radius.circular(6.0)),
-            boxShadow: [
-              BoxShadow(
-                  color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
-            ],
+          decoration:  BoxDecoration(
+            color:context.appColors.whiteBG ,
+            borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+            boxShadow: [BoxShadow(color: context.appColors.itemBGShadow )],
           ),
           width: MediaQuery.of(context).size.width - 30,
           child: Column(
@@ -334,10 +300,7 @@ class RewardsDetailPage extends HookConsumerWidget {
                   ).marginOnly(right: 10),
                   Text(
                     'What’s In The Package',
-                    style: TextStyle(
-                        fontSize: 15.0,
-                        color: ColorUtils.string2Color('#000000'),
-                        fontWeight: FontWeight.w500),
+                    style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack  , fontWeight: FontWeight.w500),
                   )
                 ],
               ).marginOnly(bottom: 10),
@@ -346,10 +309,7 @@ class RewardsDetailPage extends HookConsumerWidget {
                 children: [
                   Text(
                     package,
-                    style: TextStyle(
-                        fontSize: 15.0,
-                        color: ColorUtils.string2Color('#54638C'),
-                        fontWeight: FontWeight.w400),
+                    style: TextStyle(fontSize: 15.0, color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#54638C'),darkColor: Colors.white), fontWeight: FontWeight.w400),
                   ),
                 ],
               ),
@@ -365,13 +325,10 @@ class RewardsDetailPage extends HookConsumerWidget {
     return Column(
       children: [
         Container(
-          decoration: const BoxDecoration(
-            color: Colors.white,
-            borderRadius: BorderRadius.all(Radius.circular(6.0)),
-            boxShadow: [
-              BoxShadow(
-                  color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
-            ],
+          decoration:  BoxDecoration(
+            color:context.appColors.whiteBG   ,
+            borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+            boxShadow: [BoxShadow(color: context.appColors.itemBGShadow   )],
           ),
           width: MediaQuery.of(context).size.width - 30,
           child: Column(
@@ -389,10 +346,7 @@ class RewardsDetailPage extends HookConsumerWidget {
                   ).marginOnly(right: 10),
                   Text(
                     S.current.redemption_notice,
-                    style: TextStyle(
-                        fontSize: 15.0,
-                        color: ColorUtils.string2Color('#000000'),
-                        fontWeight: FontWeight.w500),
+                    style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack   , fontWeight: FontWeight.w500),
                   )
                 ],
               ).marginOnly(bottom: 10),
@@ -401,10 +355,7 @@ class RewardsDetailPage extends HookConsumerWidget {
                 children: [
                   Text(
                     notice,
-                    style: TextStyle(
-                        fontSize: 15.0,
-                        color: ColorUtils.string2Color('#54638C'),
-                        fontWeight: FontWeight.w400),
+                    style: TextStyle(fontSize: 15.0, color:DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#54638C'),darkColor: Colors.white), fontWeight: FontWeight.w400),
                   ),
                 ],
               ),
@@ -419,13 +370,10 @@ class RewardsDetailPage extends HookConsumerWidget {
     return Column(
       children: [
         Container(
-          decoration: const BoxDecoration(
-            color: Colors.white,
+          decoration:  BoxDecoration(
+            color: context.appColors.whiteBG ,
             borderRadius: BorderRadius.all(Radius.circular(6.0)),
-            boxShadow: [
-              BoxShadow(
-                  color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
-            ],
+            boxShadow: [BoxShadow(color: context.appColors.itemBGShadow)],
           ),
           width: MediaQuery.of(context).size.width - 30,
           child: Column(
@@ -443,10 +391,7 @@ class RewardsDetailPage extends HookConsumerWidget {
                   ).marginOnly(right: 10),
                   Text(
                     S.current.redemption_instructions,
-                    style: TextStyle(
-                        fontSize: 15.0,
-                        color: ColorUtils.string2Color('#000000'),
-                        fontWeight: FontWeight.w500),
+                    style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack , fontWeight: FontWeight.w500),
                   )
                 ],
               ).marginOnly(bottom: 10),
@@ -455,10 +400,7 @@ class RewardsDetailPage extends HookConsumerWidget {
                 children: [
                   Text(
                     S.current.redemption_reservation_txt,
-                    style: TextStyle(
-                        fontSize: 15.0,
-                        color: ColorUtils.string2Color('#54638C'),
-                        fontWeight: FontWeight.w400),
+                    style: TextStyle(fontSize: 15.0, color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#54638C'),darkColor: Colors.white), fontWeight: FontWeight.w400),
                   ),
                 ],
               ),
@@ -469,19 +411,15 @@ class RewardsDetailPage extends HookConsumerWidget {
     ).marginOnly(left: 15, bottom: 15, right: 15);
   }
 
-  Widget _buildRedeemable(
-      BuildContext context, WidgetRef ref, _vm, detailInfo) {
+  Widget _buildRedeemable(BuildContext context, WidgetRef ref, _vm, detailInfo) {
     List? redeemable = detailInfo!.redeemable ?? [];
     return Column(
       children: [
         Container(
-          decoration: const BoxDecoration(
-            color: Colors.white,
-            borderRadius: BorderRadius.all(Radius.circular(6.0)),
-            boxShadow: [
-              BoxShadow(
-                  color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
-            ],
+          decoration:  BoxDecoration(
+            color: context.appColors.whiteBG    ,
+            borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+            boxShadow: [BoxShadow(color: context.appColors.itemBGShadow    )],
           ),
           width: MediaQuery.of(context).size.width - 30,
           child: Column(
@@ -499,10 +437,7 @@ class RewardsDetailPage extends HookConsumerWidget {
                   ).marginOnly(right: 10),
                   Text(
                     S.current.redeemable_on,
-                    style: TextStyle(
-                        fontSize: 15.0,
-                        color: ColorUtils.string2Color('#000000'),
-                        fontWeight: FontWeight.w500),
+                    style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack    , fontWeight: FontWeight.w500),
                   )
                 ],
               ).marginOnly(bottom: 10),
@@ -514,10 +449,7 @@ class RewardsDetailPage extends HookConsumerWidget {
                     final item = redeemable[index];
                     return Text(
                       '${item.day}: ${item.time}',
-                      style: TextStyle(
-                          fontSize: 15.0,
-                          color: ColorUtils.string2Color('#54638C'),
-                          fontWeight: FontWeight.w400),
+                      style: TextStyle(fontSize: 15.0, color:DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#54638C'),darkColor: Colors.white), fontWeight: FontWeight.w400),
                     );
                   },
                 ),
@@ -564,7 +496,7 @@ class RewardsDetailPage extends HookConsumerWidget {
                       child: Column(
                         children: [
                           Container(
-                              color: ColorUtils.string2Color('#F2F3F6'),
+                              color: context.appColors.backgroundDark,
                               padding: const EdgeInsets.only(top: 15),
                               child: Column(
                                 children: [
@@ -573,22 +505,21 @@ class RewardsDetailPage extends HookConsumerWidget {
                                   _buildPackage(context, ref, _vm, detailInfo),
                                   _buildNotice(context, ref, _vm, detailInfo),
                                   // _buildInstructions(context, ref, _vm),
-                                  _buildRedeemable(
-                                      context, ref, _vm, detailInfo),
+                                  _buildRedeemable(context, ref, _vm, detailInfo),
                                 ],
                               )),
                         ],
                       ))),
               Container(
                 height: 50,
-                color: ColorUtils.string2Color('#4161D0'),
+                color: context.appColors.btnBgDefault,
                 child: Flex(
                   direction: Axis.horizontal,
                   children: [
                     Expanded(
                       flex: 1,
                       child: Container(
-                        color: ColorUtils.string2Color('#4161D0'),
+                        color: context.appColors.btnBgDefault,
                         height: 100,
                         child: Row(
                           mainAxisAlignment: MainAxisAlignment.center,

+ 9 - 6
packages/cpt_rewards/lib/modules/rewards_history/rewards_history_earned/rewards_history_earned_page.dart

@@ -1,5 +1,7 @@
+import 'package:cpt_rewards/modules/rewards/rewards_page.dart';
 import 'package:cpt_rewards/modules/rewards_code/rewards_code_page.dart';
 import 'package:cpt_rewards/modules/rewards_redeem/rewards_redeem_page.dart';
+import 'package:cs_resources/theme/app_colors_theme.dart';
 import 'package:flutter/material.dart';
 import 'package:auto_route/auto_route.dart';
 import 'package:flutter_hooks/flutter_hooks.dart';
@@ -10,6 +12,7 @@ import 'package:shared/utils/color_utils.dart';
 import 'package:widgets/ext/ex_widget.dart';
 import 'package:widgets/load_state_layout.dart';
 import 'package:widgets/my_load_image.dart';
+import 'package:widgets/utils/dark_theme_util.dart';
 import 'package:widgets/widget_export.dart';
 import 'package:cs_resources/generated/assets.dart';
 
@@ -40,7 +43,7 @@ class RewardsHistoryEarnedPage extends HookConsumerWidget {
           border: Border(
               bottom: BorderSide(
         width: 1.0, // 底边边框的宽度
-        color: ColorUtils.string2Color('#F2F3F6'), // 底边边框的颜色
+        color: context.appColors.backgroundDark, // 底边边框的颜色
       ))),
       child: Row(
         crossAxisAlignment: CrossAxisAlignment.center,
@@ -54,14 +57,14 @@ class RewardsHistoryEarnedPage extends HookConsumerWidget {
                 shortDescription,
                 style: TextStyle(
                     fontSize: 15.0,
-                    color: ColorUtils.string2Color('#000000'),
+                    color: context.appColors.textBlack,
                     fontWeight: FontWeight.w500), // 设置字体大小
               ).marginOnly(bottom: 6),
               Text(
                 createdAt,
                 style: TextStyle(
                     fontSize: 13.0,
-                    color: ColorUtils.string2Color('#808DAF'),
+                    color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#808DAF'),darkColor: Colors.white),
                     fontWeight: FontWeight.w400), // 设置字体大小
               ),
             ],
@@ -70,7 +73,7 @@ class RewardsHistoryEarnedPage extends HookConsumerWidget {
             '$point',
             style: TextStyle(
                 fontSize: 20.0,
-                color: ColorUtils.string2Color('#FDB429'),
+                color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#FDB429'),darkColor: Colors.white),
                 fontWeight: FontWeight.w500), // 设置字体大小
           ),
         ],
@@ -105,7 +108,7 @@ class RewardsHistoryEarnedPage extends HookConsumerWidget {
           width: double.infinity,
           height: double.infinity,
           child: Container(
-              color: ColorUtils.string2Color('#F2F3F6'),
+              color: context.appColors.backgroundDark,
               padding: const EdgeInsets.only(top: 15),
               child: EasyRefresh(
               controller: vm.refreshController,
@@ -121,7 +124,7 @@ class RewardsHistoryEarnedPage extends HookConsumerWidget {
               },
               child:  Container(
                     decoration: BoxDecoration(
-                      color: Colors.white,
+                      color: context.appColors.whiteBG,
                       borderRadius: BorderRadius.circular(10),
                       boxShadow: const [
                         BoxShadow(

+ 8 - 16
packages/cpt_rewards/lib/modules/rewards_history/rewards_history_page.dart

@@ -1,6 +1,7 @@
 import 'package:cs_resources/generated/l10n.dart';
 import 'package:cs_resources/theme/app_colors_theme.dart';
 import 'package:flutter/material.dart';
+
 // ignore: depend_on_referenced_packages
 import 'package:auto_route/auto_route.dart';
 import 'package:hooks_riverpod/hooks_riverpod.dart';
@@ -29,12 +30,11 @@ class RewardsHistoryPage extends HookConsumerWidget {
   }
 
   // 顶部tab 切换
-  Widget _buildTopSection(
-      BuildContext context, WidgetRef ref, _vm, tabsRouter) {
+  Widget _buildTopSection(BuildContext context, WidgetRef ref, _vm, tabsRouter) {
     final topSectionsData = _vm.topSectionsData;
     final currentTabIdx = tabsRouter.activeIndex;
     return Container(
-      color: ColorUtils.string2Color('#F2F3F6'),
+      color: context.appColors.backgroundDark,
       child: Center(
         child: Row(
           mainAxisAlignment: MainAxisAlignment.center,
@@ -42,25 +42,19 @@ class RewardsHistoryPage extends HookConsumerWidget {
           children: List.generate(topSectionsData.length, (index) {
             final item = topSectionsData[index];
             return Container(
-              width:
-                  MediaQuery.of(context).size.width / topSectionsData.length -
-                      45,
+              width: MediaQuery.of(context).size.width / topSectionsData.length - 45,
               height: 43,
-              padding: const EdgeInsets.only(
-                  top: 10, bottom: 10, left: 10, right: 10),
+              padding: const EdgeInsets.only(top: 10, bottom: 10, left: 10, right: 10),
               decoration: index == currentTabIdx
                   ? BoxDecoration(
-                      color: index == currentTabIdx
-                          ? context.appColors.btnBgDefault
-                          : ColorUtils.string2Color("#F2F3F6"),
+                      color: index == currentTabIdx ? context.appColors.btnBgDefault : context.appColors.backgroundDark,
                       borderRadius: BorderRadius.circular(20),
                       boxShadow: [
                         BoxShadow(
                           color: Colors.grey.withOpacity(0.5),
                           spreadRadius: 1,
                           blurRadius: 5,
-                          offset:
-                              const Offset(0, 2), // changes position of shadow
+                          offset: const Offset(0, 2), // changes position of shadow
                         ),
                       ],
                     )
@@ -75,9 +69,7 @@ class RewardsHistoryPage extends HookConsumerWidget {
                         fontSize: 16,
                         textAlign: TextAlign.center,
                         isFontMedium: true,
-                        textColor: index == currentTabIdx
-                            ? Colors.white
-                            : ColorUtils.string2Color("#000000"),
+                        textColor: index == currentTabIdx ? Colors.white : context.appColors.textBlack,
                       ),
                     ).onTap(
                       () {

+ 8 - 6
packages/cpt_rewards/lib/modules/rewards_history/rewards_history_spent/rewards_history_spent_page.dart

@@ -1,4 +1,5 @@
 import 'package:cpt_rewards/modules/rewards_transaction/rewards_transaction_page.dart';
+import 'package:cs_resources/theme/app_colors_theme.dart';
 import 'package:flutter/material.dart';
 import 'package:auto_route/auto_route.dart';
 import 'package:flutter_hooks/flutter_hooks.dart';
@@ -9,6 +10,7 @@ import 'package:shared/utils/color_utils.dart';
 import 'package:widgets/ext/ex_widget.dart';
 import 'package:widgets/load_state_layout.dart';
 import 'package:widgets/my_load_image.dart';
+import 'package:widgets/utils/dark_theme_util.dart';
 import 'package:widgets/widget_export.dart';
 import 'package:cs_resources/generated/assets.dart';
 
@@ -39,7 +41,7 @@ class RewardsHistorySpentPage extends HookConsumerWidget {
           border: Border(
               bottom: BorderSide(
         width: 1.0, // 底边边框的宽度
-        color: ColorUtils.string2Color('#F2F3F6'), // 底边边框的颜色
+        color: context.appColors.backgroundDark, // 底边边框的颜色
       ))),
       child: Row(
         crossAxisAlignment: CrossAxisAlignment.center,
@@ -53,14 +55,14 @@ class RewardsHistorySpentPage extends HookConsumerWidget {
                 shortDescription,
                 style: TextStyle(
                     fontSize: 15.0,
-                    color: ColorUtils.string2Color('#000000'),
+                    color: context.appColors.textBlack,
                     fontWeight: FontWeight.w500), // 设置字体大小
               ).marginOnly(bottom: 6),
               Text(
                 createdAt,
                 style: TextStyle(
                     fontSize: 13.0,
-                    color: ColorUtils.string2Color('#808DAF'),
+                    color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#808DAF'),darkColor: Colors.white),
                     fontWeight: FontWeight.w400), // 设置字体大小
               ),
             ],
@@ -69,7 +71,7 @@ class RewardsHistorySpentPage extends HookConsumerWidget {
             '$point',
             style: TextStyle(
                 fontSize: 20.0,
-                color: ColorUtils.string2Color('#4161D0'),
+                color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#4161D0'),darkColor: Colors.white),
                 fontWeight: FontWeight.w500), // 设置字体大小
           ),
         ],
@@ -103,7 +105,7 @@ class RewardsHistorySpentPage extends HookConsumerWidget {
           width: double.infinity,
           height: double.infinity,
           child: Container(
-              color: ColorUtils.string2Color('#F2F3F6'),
+              color: context.appColors.backgroundDark,
               padding: const EdgeInsets.only(top: 15),
               child: EasyRefresh(
               controller: vm.refreshController,
@@ -119,7 +121,7 @@ class RewardsHistorySpentPage extends HookConsumerWidget {
               },
               child:  Container(
                     decoration: BoxDecoration(
-                      color: Colors.white,
+                      color: context.appColors.whiteBG,
                       borderRadius: BorderRadius.circular(10),
                       boxShadow: const [
                         BoxShadow(

+ 43 - 41
packages/cpt_rewards/lib/modules/rewards_home/rewards_home_page.dart

@@ -23,6 +23,7 @@ import 'package:widgets/ext/ex_widget.dart';
 import 'package:widgets/load_state_layout.dart';
 import 'package:widgets/my_appbar.dart';
 import 'package:widgets/my_load_image.dart';
+import 'package:widgets/utils/dark_theme_util.dart';
 
 import '../../../router/page/rewards_page_router.dart';
 import './rewards_home_vm.dart';
@@ -52,7 +53,7 @@ class RewardsHomePage extends HookConsumerWidget {
         decoration: BoxDecoration(
           border: Border(
               bottom: BorderSide(
-            color: ColorUtils.string2Color('#4161D0'), // 设置bottom边框的颜色
+            color: context.appColors.btnBgDefault, // 设置bottom边框的颜色
             width: 45.0, // 设置bottom边框的宽度
           )),
           borderRadius: const BorderRadius.only(
@@ -65,7 +66,6 @@ class RewardsHomePage extends HookConsumerWidget {
         child: Column(
           crossAxisAlignment: CrossAxisAlignment.start,
           children: [
-
             Row(
               crossAxisAlignment: CrossAxisAlignment.center,
               mainAxisAlignment: MainAxisAlignment.center,
@@ -85,7 +85,7 @@ class RewardsHomePage extends HookConsumerWidget {
                     border: Border.all(color: Colors.white, width: 1), // 边框
                     borderRadius: BorderRadius.circular(8), // 圆角
                   ),
-                  child:  Text(
+                  child: Text(
                     S.current.my_rewards,
                     style: const TextStyle(fontSize: 15.0, color: Colors.white, fontWeight: FontWeight.w400), // 设置字体大小
                   ).paddingOnly(left: 10, top: 7, bottom: 7, right: 10).onTap(() {
@@ -123,8 +123,9 @@ class RewardsHomePage extends HookConsumerWidget {
           ],
         )
             .paddingOnly(top: 8, left: 5, right: 15, bottom: 8)
-            .border(bottom: 0, color: ColorUtils.string2Color('#4161D0'))
-            .backgroundColor(ColorUtils.string2Color('#4161D0')));
+            .border(bottom: 0, color: context.appColors.btnBgDefault)
+            .backgroundColor(context.appColors.btnBgDefault),
+    );
   }
 
   Widget _buildSearch(BuildContext context, WidgetRef ref, _vm) {
@@ -133,7 +134,7 @@ class RewardsHomePage extends HookConsumerWidget {
       width: MediaQuery.of(context).size.width - 30,
       height: 50,
       decoration: BoxDecoration(
-        color: Colors.white,
+        color: context.appColors.whiteSecondBG,
         borderRadius: BorderRadius.circular(10),
       ),
       child: Row(
@@ -164,15 +165,15 @@ class RewardsHomePage extends HookConsumerWidget {
       transform: Matrix4.translationValues(0.0, -10.0, 0.0),
       // color: Colors.white,
       height: 110,
-      decoration: const BoxDecoration(
-        color: Colors.white,
+      decoration:  BoxDecoration(
+        color: context.appColors.whiteBG,
         borderRadius: const BorderRadius.only(
           topLeft: Radius.circular(10.0),
           topRight: Radius.circular(0.0),
           bottomLeft: Radius.circular(10.0),
           bottomRight: Radius.circular(0.0),
         ),
-        boxShadow: [BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)],
+        boxShadow: [BoxShadow(color: context.appColors.itemBGShadow)],
       ),
       child: ClipRect(
           child: SingleChildScrollView(
@@ -195,7 +196,7 @@ class RewardsHomePage extends HookConsumerWidget {
                 ),
                 Text(
                   item['name']!,
-                  style: TextStyle(fontSize: 14.0, color: ColorUtils.string2Color('#000001'), fontWeight: FontWeight.w600), // 设置字体大小
+                  style: TextStyle(fontSize: 14.0, color: context.appColors.textBlack, fontWeight: FontWeight.w600), // 设置字体大小
                 ),
               ],
             ).marginOnly(right: 5).onTap(() {
@@ -218,11 +219,11 @@ class RewardsHomePage extends HookConsumerWidget {
                   children: [
                     Text(
                       list?['name'] ?? '',
-                      style: TextStyle(fontSize: 17.0, color: ColorUtils.string2Color('#000001'), fontWeight: FontWeight.w500), // 设置字体大小
+                      style: TextStyle(fontSize: 17.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500), // 设置字体大小
                     ),
                     Text(
                       S.current.see_all,
-                      style: TextStyle(fontSize: 17.0, color: ColorUtils.string2Color('#4161D0'), fontWeight: FontWeight.w500), // 设置字体大小
+                      style: TextStyle(fontSize: 17.0, color: context.appColors.textPrimary, fontWeight: FontWeight.w500), // 设置字体大小
                     ).onTap(() {
                       RewardsListPage.startInstance();
                     }),
@@ -236,13 +237,14 @@ class RewardsHomePage extends HookConsumerWidget {
                       return Container(
                           width: MediaQuery.of(context).size.width / 2 - 25,
                           height: 155,
-                          decoration: const BoxDecoration(
-                            color: Colors.white,
-                            borderRadius: BorderRadius.all(Radius.circular(6.0)),
-                            boxShadow: [BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)],
+                          decoration:  BoxDecoration(
+                            color: context.appColors.whiteBG,
+                            borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+                            boxShadow: [BoxShadow(color: context.appColors.itemBGShadow)],
                           ),
                           child: ClipRRect(
-                              borderRadius: const BorderRadius.all(Radius.circular(6.0)), child: _buildItem(context, ref, _vm, hg, list['rewards'][index])));
+                              borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+                              child: _buildItem(context, ref, _vm, hg, list['rewards'][index])));
                     }))
               ],
             ),
@@ -260,11 +262,11 @@ class RewardsHomePage extends HookConsumerWidget {
             children: [
               Text(
                 S.current.hottest,
-                style: TextStyle(fontSize: 17.0, color: ColorUtils.string2Color('#000001'), fontWeight: FontWeight.w500), // 设置字体大小
+                style: TextStyle(fontSize: 17.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500), // 设置字体大小
               ),
               Text(
                 S.current.see_all,
-                style: TextStyle(fontSize: 17.0, color: ColorUtils.string2Color('#4161D0'), fontWeight: FontWeight.w500), // 设置字体大小
+                style: TextStyle(fontSize: 17.0, color: context.appColors.textPrimary, fontWeight: FontWeight.w500), // 设置字体大小
               ).onTap(() {
                 RewardsListPage.startInstance();
               }),
@@ -278,10 +280,10 @@ class RewardsHomePage extends HookConsumerWidget {
                 return Container(
                     width: MediaQuery.of(context).size.width / 2 - 25,
                     height: 185,
-                    decoration: const BoxDecoration(
-                      color: Colors.white,
-                      borderRadius: BorderRadius.all(Radius.circular(6.0)),
-                      boxShadow: [BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)],
+                    decoration:  BoxDecoration(
+                      color: context.appColors.whiteBG,
+                      borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+                      boxShadow: [BoxShadow(color: context.appColors.itemBGShadow)],
                     ),
                     child: _buildItem(context, ref, _vm, hg, {}));
               }))
@@ -310,13 +312,13 @@ class RewardsHomePage extends HookConsumerWidget {
               maxLines: 1, // 设置最大行数为2
               overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
               item?['name'] ?? '',
-              style: const TextStyle(fontSize: 15.0, color: Colors.black, fontWeight: FontWeight.w500),
+              style:  TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
             ).marginOnly(bottom: 5),
             Row(
               children: [
                 Text(
                   '$point',
-                  style: const TextStyle(fontSize: 18.0, color: Colors.black, fontWeight: FontWeight.w500),
+                  style: TextStyle(fontSize: 18.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
                 ),
                 Text(
                   '$originalPoint',
@@ -325,12 +327,12 @@ class RewardsHomePage extends HookConsumerWidget {
                       decorationColor: ColorUtils.string2Color('#808DAF'),
                       decorationStyle: TextDecorationStyle.solid,
                       fontSize: 13.0,
-                      color: ColorUtils.string2Color('#808DAF'),
+                      color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#808DAF'),darkColor: Colors.white),
                       fontWeight: FontWeight.w400),
                 ).marginOnly(left: 5, right: 5),
-                 Text(
+                Text(
                   S.current.points,
-                  style: const TextStyle(fontSize: 13.0, color: Colors.black, fontWeight: FontWeight.w400),
+                  style: TextStyle(fontSize: 13.0, color: context.appColors.textBlack, fontWeight: FontWeight.w400),
                 ),
               ],
             )
@@ -353,11 +355,11 @@ class RewardsHomePage extends HookConsumerWidget {
                   children: [
                     Text(
                       list?['name'] ?? '',
-                      style: TextStyle(fontSize: 17.0, color: ColorUtils.string2Color('#000001'), fontWeight: FontWeight.w500), // 设置字体大小
+                      style: TextStyle(fontSize: 17.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500), // 设置字体大小
                     ),
                     Text(
                       S.current.see_all,
-                      style: TextStyle(fontSize: 17.0, color: ColorUtils.string2Color('#4161D0'), fontWeight: FontWeight.w500), // 设置字体大小
+                      style: TextStyle(fontSize: 17.0, color: context.appColors.textPrimary, fontWeight: FontWeight.w500), // 设置字体大小
                     ).onTap(() {
                       RewardsListPage.startInstance();
                     }),
@@ -371,10 +373,10 @@ class RewardsHomePage extends HookConsumerWidget {
                       return Container(
                           width: MediaQuery.of(context).size.width / 2 - 25,
                           height: 155,
-                          decoration: const BoxDecoration(
-                            color: Colors.white,
-                            borderRadius: BorderRadius.all(Radius.circular(6.0)),
-                            boxShadow: [BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)],
+                          decoration:  BoxDecoration(
+                            color: context.appColors.whiteBG,
+                            borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+                            boxShadow: [BoxShadow(color: context.appColors.itemBGShadow)],
                           ),
                           child: ClipRRect(
                               borderRadius: const BorderRadius.all(Radius.circular(6.0)), child: _buildItem(context, ref, _vm, hg, list['rewards'][index])));
@@ -396,11 +398,11 @@ class RewardsHomePage extends HookConsumerWidget {
                   children: [
                     Text(
                       S.current.best_offers_in_singapore,
-                      style: TextStyle(fontSize: 17.0, color: ColorUtils.string2Color('#000001'), fontWeight: FontWeight.w500), // 设置字体大小
+                      style: TextStyle(fontSize: 17.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500), // 设置字体大小
                     ),
                     Text(
                       S.current.see_all,
-                      style: TextStyle(fontSize: 17.0, color: ColorUtils.string2Color('#4161D0'), fontWeight: FontWeight.w500), // 设置字体大小
+                      style: TextStyle(fontSize: 17.0, color: context.appColors.textPrimary, fontWeight: FontWeight.w500), // 设置字体大小
                     ),
                   ],
                 ).marginOnly(bottom: 15),
@@ -412,10 +414,10 @@ class RewardsHomePage extends HookConsumerWidget {
                       return Container(
                               // width: MediaQuery.of(context).size.width / 2 - 25,
                               height: 220,
-                              decoration: const BoxDecoration(
-                                color: Colors.white,
-                                borderRadius: BorderRadius.all(Radius.circular(6.0)),
-                                boxShadow: [BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)],
+                              decoration:  BoxDecoration(
+                                color:context.appColors.whiteBG,
+                                borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+                                boxShadow: [BoxShadow(color: context.appColors.itemBGShadow)],
                               ),
                               child: ClipRRect(
                                   borderRadius: const BorderRadius.all(Radius.circular(6.0)), child: _buildItem(context, ref, _vm, hg, list['rewards'][index])))
@@ -503,7 +505,7 @@ class RewardsHomePage extends HookConsumerWidget {
                     )
                   : const Column()),
         )),
-      ]).backgroundColor(ColorUtils.string2Color('#F2F3F6')),
+      ]).backgroundColor(context.appColors.backgroundDark),
     );
   }
 }

+ 40 - 116
packages/cpt_rewards/lib/modules/rewards_list/rewards_list_page.dart

@@ -14,6 +14,7 @@ import 'package:widgets/my_appbar.dart';
 import 'package:widgets/my_load_image.dart';
 import 'package:widgets/my_text_view.dart';
 import 'package:widgets/shatter/picker_container.dart';
+import 'package:widgets/utils/dark_theme_util.dart';
 import 'package:widgets/widget_export.dart';
 import 'package:cs_resources/generated/assets.dart';
 
@@ -51,19 +52,13 @@ class RewardsListPage extends HookConsumerWidget {
               maxLines: 1, // 设置最大行数为2
               overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
               item?['name'] ?? '',
-              style: const TextStyle(
-                  fontSize: 16.0,
-                  color: Colors.black,
-                  fontWeight: FontWeight.w500),
+              style: TextStyle(fontSize: 16.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
             ).marginOnly(bottom: 5, top: 10).paddingOnly(left: 20, right: 20),
             Row(
               children: [
                 Text(
                   '$point',
-                  style: const TextStyle(
-                      fontSize: 19.0,
-                      color: Colors.black,
-                      fontWeight: FontWeight.w500),
+                  style: TextStyle(fontSize: 19.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
                 ),
                 Text(
                   '$originalPoint',
@@ -75,12 +70,9 @@ class RewardsListPage extends HookConsumerWidget {
                       color: ColorUtils.string2Color('#000000'),
                       fontWeight: FontWeight.w400),
                 ).marginOnly(left: 5, right: 5),
-                const Text(
+                Text(
                   'Points',
-                  style: TextStyle(
-                      fontSize: 13.0,
-                      color: Colors.black,
-                      fontWeight: FontWeight.w400),
+                  style: TextStyle(fontSize: 13.0, color: context.appColors.textBlack, fontWeight: FontWeight.w400),
                 ),
               ],
             ).paddingOnly(left: 20, right: 20),
@@ -95,12 +87,10 @@ class RewardsListPage extends HookConsumerWidget {
   // listitem
   Widget _buildSaleItem(BuildContext context, WidgetRef ref, item, _vm) {
     return Container(
-      decoration: const BoxDecoration(
-        color: Colors.white,
-        borderRadius: BorderRadius.all(Radius.circular(6.0)),
-        boxShadow: [
-          BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
-        ],
+      decoration: BoxDecoration(
+        color: context.appColors.whiteBG,
+        borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+        boxShadow: const [BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)],
       ),
       child: Column(
         children: [
@@ -112,10 +102,7 @@ class RewardsListPage extends HookConsumerWidget {
               crossAxisAlignment: CrossAxisAlignment.start,
               mainAxisAlignment: MainAxisAlignment.start,
               children: [
-                ClipRRect(
-                              borderRadius:
-                                  const BorderRadius.all(Radius.circular(6.0)),
-                              child:_buildItemLeftSection(context, ref, item, _vm))
+                ClipRRect(borderRadius: const BorderRadius.all(Radius.circular(6.0)), child: _buildItemLeftSection(context, ref, item, _vm))
                 // .marginOnly(bottom: 5),
               ],
             ),
@@ -140,12 +127,10 @@ class RewardsListPage extends HookConsumerWidget {
     final state = ref.watch(rewardsListVmProvider);
     return Container(
       height: 55,
-      decoration: const BoxDecoration(
-        color: Colors.white,
-        borderRadius: BorderRadius.all(Radius.circular(6.0)),
-        boxShadow: [
-          BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
-        ],
+      decoration: BoxDecoration(
+        color: context.appColors.whiteBG,
+        borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+        boxShadow: const [BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)],
       ),
       child: Row(
         children: [
@@ -169,16 +154,9 @@ class RewardsListPage extends HookConsumerWidget {
                 children: [
                   Text(
                     state.category_name!,
-                    style: const TextStyle(
-                        fontSize: 15.0,
-                        color: Colors.black,
-                        fontWeight: FontWeight.w500), // 设置字体大小
-                  ),
-                  const MyAssetImage(
-                    Assets.rewardsRewardsIconDomn,
-                    width: 12,
-                    height: 7,
+                    style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500), // 设置字体大小
                   ),
+                  DarkThemeUtil.multiImageColorFit(context, Assets.rewardsRewardsIconDomn, width: 12, height: 7, darkColor: Colors.white),
                 ],
               ).onTap(() {
                 // _vm.doDeleteAccountAll(context);
@@ -198,22 +176,15 @@ class RewardsListPage extends HookConsumerWidget {
                   //     ),
                   //   ],
                   // )
-                  const Row(
+                  Row(
                 mainAxisAlignment: MainAxisAlignment.spaceBetween,
                 crossAxisAlignment: CrossAxisAlignment.center,
                 children: [
                   Text(
                     'Popularity',
-                    style: const TextStyle(
-                        fontSize: 15.0,
-                        color: Colors.black,
-                        fontWeight: FontWeight.w500), // 设置字体大小
-                  ),
-                  MyAssetImage(
-                    Assets.rewardsRewardsIconDomn,
-                    width: 12,
-                    height: 7,
+                    style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500), // 设置字体大小
                   ),
+                  DarkThemeUtil.multiImageColorFit(context, Assets.rewardsRewardsIconDomn, width: 12, height: 7, darkColor: Colors.white),
                 ],
               ).onTap(() {
                 // 去详情
@@ -222,9 +193,7 @@ class RewardsListPage extends HookConsumerWidget {
               })).paddingOnly(left: 15, right: 15)
         ],
       ),
-    )
-        .marginOnly(top: 12, left: 15, right: 15)
-        .backgroundColor(ColorUtils.string2Color('#F2F3F6'));
+    ).marginOnly(top: 12, left: 15, right: 15).backgroundColor(context.appColors.backgroundDark);
   }
 
   @override
@@ -262,7 +231,7 @@ class RewardsListPage extends HookConsumerWidget {
                 vm.onRefresh();
               },
               child: Container(
-                color: ColorUtils.string2Color('#F2F3F6'),
+                color: context.appColors.backgroundDark,
                 padding: const EdgeInsets.only(top: 15),
                 child: LoadStateLayout(
                   state: state.loadingState,
@@ -316,10 +285,7 @@ class RewardsListPage extends HookConsumerWidget {
                             itemsList[index]['name'],
                             style: TextStyle(
                                 fontSize: 16.0,
-                                color:
-                                    itemsList[index]['id'] == state.category_id
-                                        ? ColorUtils.string2Color('#FF5E75')
-                                        : ColorUtils.string2Color('#000000'),
+                                color: itemsList[index]['id'] == state.category_id ? ColorUtils.string2Color('#FF5E75') : ColorUtils.string2Color('#000000'),
                                 fontWeight: FontWeight.w400),
                           ),
                         ],
@@ -374,10 +340,7 @@ class RewardsListPage extends HookConsumerWidget {
                         Text(
                           textAlign: TextAlign.center,
                           'Sort by',
-                          style: TextStyle(
-                              fontSize: 16.0,
-                              color: ColorUtils.string2Color('#767676'),
-                              fontWeight: FontWeight.w500),
+                          style: TextStyle(fontSize: 16.0, color: ColorUtils.string2Color('#767676'), fontWeight: FontWeight.w500),
                         ),
                       ],
                     ).paddingOnly(left: 15, right: 15),
@@ -390,8 +353,7 @@ class RewardsListPage extends HookConsumerWidget {
                               border: Border(
                                   bottom: BorderSide(
                             width: 1.0, // 底边边框的宽度
-                            color:
-                                ColorUtils.string2Color('#F2F3F6'), // 底边边框的颜色
+                            color: ColorUtils.string2Color('#F2F3F6'), // 底边边框的颜色
                           ))),
                           child: Row(
                             crossAxisAlignment: CrossAxisAlignment.center,
@@ -408,10 +370,7 @@ class RewardsListPage extends HookConsumerWidget {
                                     'Latest',
                                     style: TextStyle(
                                         fontSize: 16.0,
-                                        color: sortBy == "created_at"
-                                            ? ColorUtils.string2Color('#FF5E75')
-                                            : ColorUtils.string2Color(
-                                                '#000000'),
+                                        color: sortBy == "created_at" ? ColorUtils.string2Color('#FF5E75') : ColorUtils.string2Color('#000000'),
                                         fontWeight: FontWeight.w400),
                                   ),
                                 ],
@@ -436,8 +395,7 @@ class RewardsListPage extends HookConsumerWidget {
                               border: Border(
                                   bottom: BorderSide(
                             width: 1.0, // 底边边框的宽度
-                            color:
-                                ColorUtils.string2Color('#F2F3F6'), // 底边边框的颜色
+                            color: ColorUtils.string2Color('#F2F3F6'), // 底边边框的颜色
                           ))),
                           child: Row(
                             crossAxisAlignment: CrossAxisAlignment.center,
@@ -454,10 +412,7 @@ class RewardsListPage extends HookConsumerWidget {
                                     'Popularity',
                                     style: TextStyle(
                                         fontSize: 16.0,
-                                        color: sortBy == "clicks_count"
-                                            ? ColorUtils.string2Color('#FF5E75')
-                                            : ColorUtils.string2Color(
-                                                '#000000'),
+                                        color: sortBy == "clicks_count" ? ColorUtils.string2Color('#FF5E75') : ColorUtils.string2Color('#000000'),
                                         fontWeight: FontWeight.w400),
                                   ),
                                 ],
@@ -482,8 +437,7 @@ class RewardsListPage extends HookConsumerWidget {
                               border: Border(
                                   bottom: BorderSide(
                             width: 1.0, // 底边边框的宽度
-                            color:
-                                ColorUtils.string2Color('#F2F3F6'), // 底边边框的颜色
+                            color: ColorUtils.string2Color('#F2F3F6'), // 底边边框的颜色
                           ))),
                           child: Row(
                             crossAxisAlignment: CrossAxisAlignment.center,
@@ -500,10 +454,7 @@ class RewardsListPage extends HookConsumerWidget {
                                     'Low to High Points',
                                     style: TextStyle(
                                         fontSize: 16.0,
-                                        color: sort == "asc"
-                                            ? ColorUtils.string2Color('#FF5E75')
-                                            : ColorUtils.string2Color(
-                                                '#000000'),
+                                        color: sort == "asc" ? ColorUtils.string2Color('#FF5E75') : ColorUtils.string2Color('#000000'),
                                         fontWeight: FontWeight.w400),
                                   ),
                                 ],
@@ -528,8 +479,7 @@ class RewardsListPage extends HookConsumerWidget {
                               border: Border(
                                   bottom: BorderSide(
                             width: 1.0, // 底边边框的宽度
-                            color:
-                                ColorUtils.string2Color('#F2F3F6'), // 底边边框的颜色
+                            color: ColorUtils.string2Color('#F2F3F6'), // 底边边框的颜色
                           ))),
                           child: Row(
                             crossAxisAlignment: CrossAxisAlignment.center,
@@ -546,10 +496,7 @@ class RewardsListPage extends HookConsumerWidget {
                                     'High to Low Points',
                                     style: TextStyle(
                                         fontSize: 16.0,
-                                        color: sort == "desc"
-                                            ? ColorUtils.string2Color('#FF5E75')
-                                            : ColorUtils.string2Color(
-                                                '#000000'),
+                                        color: sort == "desc" ? ColorUtils.string2Color('#FF5E75') : ColorUtils.string2Color('#000000'),
                                         fontWeight: FontWeight.w400),
                                   ),
                                 ],
@@ -580,10 +527,7 @@ class RewardsListPage extends HookConsumerWidget {
                         Text(
                           textAlign: TextAlign.center,
                           'Filter By',
-                          style: TextStyle(
-                              fontSize: 16.0,
-                              color: ColorUtils.string2Color('#767676'),
-                              fontWeight: FontWeight.w500),
+                          style: TextStyle(fontSize: 16.0, color: ColorUtils.string2Color('#767676'), fontWeight: FontWeight.w500),
                         ),
                       ],
                     ).paddingOnly(left: 15, right: 15),
@@ -594,44 +538,28 @@ class RewardsListPage extends HookConsumerWidget {
                     children: [
                       Text(
                         '$point_min',
-                        style: TextStyle(
-                            fontSize: 16.0,
-                            color: ColorUtils.string2Color('#000000'),
-                            fontWeight: FontWeight.w400),
+                        style: TextStyle(fontSize: 16.0, color: ColorUtils.string2Color('#000000'), fontWeight: FontWeight.w400),
                       ).marginOnly(right: 3),
                       Text(
                         'points',
-                        style: TextStyle(
-                            fontSize: 16.0,
-                            color: ColorUtils.string2Color('#000000'),
-                            fontWeight: FontWeight.w400),
+                        style: TextStyle(fontSize: 16.0, color: ColorUtils.string2Color('#000000'), fontWeight: FontWeight.w400),
                       ).marginOnly(right: 3),
                       Text(
                         '-',
-                        style: TextStyle(
-                            fontSize: 16.0,
-                            color: ColorUtils.string2Color('#000000'),
-                            fontWeight: FontWeight.w400),
+                        style: TextStyle(fontSize: 16.0, color: ColorUtils.string2Color('#000000'), fontWeight: FontWeight.w400),
                       ).marginOnly(right: 3),
                       Text(
                         '$point_max',
-                        style: TextStyle(
-                            fontSize: 16.0,
-                            color: ColorUtils.string2Color('#000000'),
-                            fontWeight: FontWeight.w400),
+                        style: TextStyle(fontSize: 16.0, color: ColorUtils.string2Color('#000000'), fontWeight: FontWeight.w400),
                       ).marginOnly(right: 3),
                       Text(
                         'points',
-                        style: TextStyle(
-                            fontSize: 16.0,
-                            color: ColorUtils.string2Color('#000000'),
-                            fontWeight: FontWeight.w400),
+                        style: TextStyle(fontSize: 16.0, color: ColorUtils.string2Color('#000000'), fontWeight: FontWeight.w400),
                       ).marginOnly(right: 3),
                     ],
                   ).paddingOnly(left: 15, right: 15, top: 20),
                   RangeSlider(
-                    values: RangeValues(
-                        point_min.toDouble(), point_max.toDouble()), // 初始化范围
+                    values: RangeValues(point_min.toDouble(), point_max.toDouble()), // 初始化范围
                     min: 0, // 最小值
                     max: 100, // 最大值
                     onChanged: (RangeValues values) {
@@ -640,8 +568,7 @@ class RewardsListPage extends HookConsumerWidget {
                         point_max = values.end.toInt();
                         _vm.rangeSliderChanged(values);
                         // 处理范围改变事件
-                        print(
-                            'Selected range: ${values.start} to ${values.end}');
+                        print('Selected range: ${values.start} to ${values.end}');
                       });
                     },
                   ).marginOnly(top: 5),
@@ -650,10 +577,7 @@ class RewardsListPage extends HookConsumerWidget {
                       transform: Matrix4.translationValues(-20.0, 0.0, 0.0),
                       child: Text(
                         'Only show rewards I can redeem',
-                        style: TextStyle(
-                            fontSize: 14.0,
-                            color: ColorUtils.string2Color('#767676'),
-                            fontWeight: FontWeight.w400),
+                        style: TextStyle(fontSize: 14.0, color: ColorUtils.string2Color('#767676'), fontWeight: FontWeight.w400),
                       ),
                     ),
                     controlAffinity: ListTileControlAffinity.leading,

+ 19 - 42
packages/cpt_rewards/lib/modules/rewards_my/rewards_my_active/rewards_my_active_page.dart

@@ -1,6 +1,7 @@
 import 'package:cpt_rewards/modules/rewards_code/rewards_code_page.dart';
 import 'package:cpt_rewards/modules/rewards_redeem/rewards_redeem_page.dart';
 import 'package:cs_resources/generated/l10n.dart';
+import 'package:cs_resources/theme/app_colors_theme.dart';
 import 'package:flutter/material.dart';
 import 'package:auto_route/auto_route.dart';
 import 'package:flutter_hooks/flutter_hooks.dart';
@@ -49,36 +50,27 @@ class RewardsMyActivePage extends HookConsumerWidget {
               maxLines: 1, // 设置最大行数为2
               overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
               title,
-              style: const TextStyle(
-                  fontSize: 16.0,
-                  color: Colors.black,
-                  fontWeight: FontWeight.w500),
+              style: TextStyle(fontSize: 16.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
             ),
             Row(
               children: [
                 Text(
                   '$point',
-                  style: const TextStyle(
-                      fontSize: 19.0,
-                      color: Colors.black,
-                      fontWeight: FontWeight.w500),
+                  style: TextStyle(fontSize: 19.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
                 ),
                 Text(
                   '$originalPoint',
                   style: TextStyle(
                       decoration: TextDecoration.lineThrough,
-                      decorationColor: ColorUtils.string2Color('#000000'),
+                      decorationColor: context.appColors.textBlack  ,
                       decorationStyle: TextDecorationStyle.solid,
                       fontSize: 12.0,
-                      color: ColorUtils.string2Color('#000000'),
+                      color: context.appColors.textBlack  ,
                       fontWeight: FontWeight.w400),
                 ).marginOnly(left: 5, right: 5),
-                 Text(
+                Text(
                   S.current.points,
-                  style: const TextStyle(
-                      fontSize: 13.0,
-                      color: Colors.black,
-                      fontWeight: FontWeight.w400),
+                  style:  TextStyle(fontSize: 13.0, color: context.appColors.textBlack, fontWeight: FontWeight.w400),
                 ),
               ],
             ),
@@ -92,28 +84,22 @@ class RewardsMyActivePage extends HookConsumerWidget {
                       width: 15,
                       height: 15,
                     ),
-                     Text(
+                    Text(
                       '${S.current.redeem_from}:',
-                      style: const TextStyle(
-                          fontSize: 13.0,
-                          color: Colors.black,
-                          fontWeight: FontWeight.w400),
+                      style:  TextStyle(fontSize: 13.0, color:context.appColors.textBlack  , fontWeight: FontWeight.w400),
                     ).marginOnly(left: 6)
                   ],
                 ),
                 Text(
                   '$redeemedDate',
-                  style: const TextStyle(
-                      fontSize: 13.0,
-                      color: Colors.black,
-                      fontWeight: FontWeight.w400),
+                  style:  TextStyle(fontSize: 13.0, color: context.appColors.textBlack  , fontWeight: FontWeight.w400),
                 )
               ],
             ),
             Container(
                 height: 43,
                 decoration: BoxDecoration(
-                  color: ColorUtils.string2Color('#4161D0'),
+                  color: context.appColors.btnBgDefaultDark,
                   borderRadius: BorderRadius.circular(8), // 圆角
                 ),
                 child: Expanded(
@@ -121,10 +107,7 @@ class RewardsMyActivePage extends HookConsumerWidget {
                         alignment: Alignment.center,
                         child: Text(
                           S.current.redeem_now,
-                          style: TextStyle(
-                              fontSize: 15.0,
-                              color: ColorUtils.string2Color('#FFFFFF'),
-                              fontWeight: FontWeight.w500),
+                          style: const TextStyle(fontSize: 15.0, color: Colors.white, fontWeight: FontWeight.w500),
                         )))).marginOnly(top: 10, bottom: 10).onTap(() {
               RewardsCodePage.startInstance(code: code);
             }),
@@ -141,16 +124,12 @@ class RewardsMyActivePage extends HookConsumerWidget {
     });
   }
 
-  Widget _buildItemRightSection(
-      BuildContext context, WidgetRef ref, item, _vm) {
+  Widget _buildItemRightSection(BuildContext context, WidgetRef ref, item, _vm) {
     return Container(
       // color: Colors.green,
       child: Text(
         item['price'],
-        style: const TextStyle(
-            fontSize: 14.0,
-            color: Colors.black,
-            fontWeight: FontWeight.w400), // 设置字体大小
+        style: const TextStyle(fontSize: 14.0, color: Colors.black, fontWeight: FontWeight.w400), // 设置字体大小
       ),
     );
   }
@@ -158,12 +137,10 @@ class RewardsMyActivePage extends HookConsumerWidget {
   // listitem
   Widget _buildSaleItem(BuildContext context, WidgetRef ref, item, _vm) {
     return Container(
-      decoration: const BoxDecoration(
-        color: Colors.white,
-        borderRadius: BorderRadius.all(Radius.circular(6.0)),
-        boxShadow: [
-          BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
-        ],
+      decoration: BoxDecoration(
+        color: context.appColors.whiteBG,
+        borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+        boxShadow: [BoxShadow(color: context.appColors.itemBGShadow)],
       ),
       child: Column(
         children: [
@@ -227,7 +204,7 @@ class RewardsMyActivePage extends HookConsumerWidget {
                 vm.onRefresh();
               },
               child: Container(
-                color: ColorUtils.string2Color('#F2F3F6'),
+                color: context.appColors.backgroundDark,
                 padding: const EdgeInsets.only(top: 15),
                 child: LoadStateLayout(
                   state: state.loadingState,

+ 15 - 31
packages/cpt_rewards/lib/modules/rewards_my/rewards_my_expired/rewards_my_expired_page.dart

@@ -1,5 +1,6 @@
 import 'package:cpt_rewards/modules/rewards_transaction/rewards_transaction_page.dart';
 import 'package:cs_resources/generated/l10n.dart';
+import 'package:cs_resources/theme/app_colors_theme.dart';
 import 'package:flutter/material.dart';
 import 'package:auto_route/auto_route.dart';
 import 'package:flutter_hooks/flutter_hooks.dart';
@@ -47,36 +48,27 @@ class RewardsMyExpiredPage extends HookConsumerWidget {
               maxLines: 1, // 设置最大行数为2
               overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
               title,
-              style: const TextStyle(
-                  fontSize: 16.0,
-                  color: Colors.black,
-                  fontWeight: FontWeight.w500),
+              style: TextStyle(fontSize: 16.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
             ),
             Row(
               children: [
                 Text(
                   '$point',
-                  style: const TextStyle(
-                      fontSize: 19.0,
-                      color: Colors.black,
-                      fontWeight: FontWeight.w500),
+                  style: TextStyle(fontSize: 19.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
                 ),
                 Text(
                   '$originalPoint',
                   style: TextStyle(
                       decoration: TextDecoration.lineThrough,
-                      decorationColor: ColorUtils.string2Color('#000000'),
+                      decorationColor: context.appColors.textBlack,
                       decorationStyle: TextDecorationStyle.solid,
                       fontSize: 12.0,
-                      color: ColorUtils.string2Color('#000000'),
+                      color: context.appColors.textBlack,
                       fontWeight: FontWeight.w400),
                 ).marginOnly(left: 5, right: 5),
-                 Text(
+                Text(
                   S.current.points,
-                  style: const TextStyle(
-                      fontSize: 13.0,
-                      color: Colors.black,
-                      fontWeight: FontWeight.w400),
+                  style: TextStyle(fontSize: 13.0, color: context.appColors.textBlack, fontWeight: FontWeight.w400),
                 ),
               ],
             ),
@@ -90,21 +82,15 @@ class RewardsMyExpiredPage extends HookConsumerWidget {
                       width: 15,
                       height: 15,
                     ),
-                     Text(
+                    Text(
                       '${S.current.redeem_from}:',
-                      style: const TextStyle(
-                          fontSize: 13.0,
-                          color: Colors.black,
-                          fontWeight: FontWeight.w400),
+                      style: TextStyle(fontSize: 13.0, color: context.appColors.textBlack, fontWeight: FontWeight.w400),
                     ).marginOnly(left: 6)
                   ],
                 ),
                 Text(
                   '$redeemedDate',
-                  style: const TextStyle(
-                      fontSize: 13.0,
-                      color: Colors.black,
-                      fontWeight: FontWeight.w400),
+                  style: TextStyle(fontSize: 13.0, color: context.appColors.textBlack, fontWeight: FontWeight.w400),
                 )
               ],
             ),
@@ -125,12 +111,10 @@ class RewardsMyExpiredPage extends HookConsumerWidget {
   // listitem
   Widget _buildSaleItem(BuildContext context, WidgetRef ref, item, _vm) {
     return Container(
-      decoration: const BoxDecoration(
-        color: Colors.white,
-        borderRadius: BorderRadius.all(Radius.circular(6.0)),
-        boxShadow: [
-          BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
-        ],
+      decoration: BoxDecoration(
+        color: context.appColors.whiteBG,
+        borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+        boxShadow: [BoxShadow(color: context.appColors.itemBGShadow)],
       ),
       child: Column(
         children: [
@@ -193,7 +177,7 @@ class RewardsMyExpiredPage extends HookConsumerWidget {
                 vm.onRefresh();
               },
               child: Container(
-                color: ColorUtils.string2Color('#F2F3F6'),
+                color: context.appColors.backgroundDark,
                 padding: const EdgeInsets.only(top: 15),
                 child: LoadStateLayout(
                   state: state.loadingState,

+ 7 - 19
packages/cpt_rewards/lib/modules/rewards_my/rewards_my_page.dart

@@ -1,13 +1,10 @@
 import 'package:cs_resources/generated/l10n.dart';
 import 'package:cs_resources/theme/app_colors_theme.dart';
 import 'package:flutter/material.dart';
-// ignore: depend_on_referenced_packages
 import 'package:auto_route/auto_route.dart';
 import 'package:hooks_riverpod/hooks_riverpod.dart';
 import 'package:router/ext/auto_router_extensions.dart';
 import 'package:shared/utils/color_utils.dart';
-import 'package:shared/utils/log_utils.dart';
-import 'package:widgets/my_load_image.dart';
 import 'package:widgets/ext/ex_widget.dart';
 import 'package:widgets/my_text_view.dart';
 import 'package:widgets/my_appbar.dart';
@@ -29,12 +26,11 @@ class RewardsMyPage extends HookConsumerWidget {
   }
 
   // 顶部tab 切换
-  Widget _buildTopSection(
-      BuildContext context, WidgetRef ref, _vm, tabsRouter) {
+  Widget _buildTopSection(BuildContext context, WidgetRef ref, _vm, tabsRouter) {
     final topSectionsData = _vm.topSectionsData;
     final currentTabIdx = tabsRouter.activeIndex;
     return Container(
-      color: Colors.white,
+      color: context.appColors.whiteBG,
       child: Center(
         child: Row(
           mainAxisAlignment: MainAxisAlignment.spaceBetween,
@@ -42,25 +38,19 @@ class RewardsMyPage extends HookConsumerWidget {
           children: List.generate(topSectionsData.length, (index) {
             final item = topSectionsData[index];
             return Container(
-              width:
-                  MediaQuery.of(context).size.width / topSectionsData.length -
-                      30,
+              width: MediaQuery.of(context).size.width / topSectionsData.length - 30,
               height: 43,
-              padding: const EdgeInsets.only(
-                  top: 10, bottom: 10, left: 10, right: 10),
+              padding: const EdgeInsets.only(top: 10, bottom: 10, left: 10, right: 10),
               decoration: index == currentTabIdx
                   ? BoxDecoration(
-                      color: index == currentTabIdx
-                          ? context.appColors.btnBgDefault
-                          : ColorUtils.string2Color("#F2F3F6"),
+                      color: index == currentTabIdx ? context.appColors.btnBgDefault : ColorUtils.string2Color("#F2F3F6"),
                       borderRadius: BorderRadius.circular(20),
                       boxShadow: [
                         BoxShadow(
                           color: Colors.grey.withOpacity(0.5),
                           spreadRadius: 1,
                           blurRadius: 5,
-                          offset:
-                              const Offset(0, 2), // changes position of shadow
+                          offset: const Offset(0, 2), // changes position of shadow
                         ),
                       ],
                     )
@@ -75,9 +65,7 @@ class RewardsMyPage extends HookConsumerWidget {
                         fontSize: 16,
                         textAlign: TextAlign.center,
                         isFontMedium: true,
-                        textColor: index == currentTabIdx
-                            ? Colors.white
-                            : ColorUtils.string2Color("#000000"),
+                        textColor: index == currentTabIdx ? Colors.white : context.appColors.textBlack,
                       ),
                     ).onTap(
                       () {

+ 16 - 15
packages/cpt_rewards/lib/modules/rewards_my/rewards_my_used/rewards_my_used_page.dart

@@ -1,5 +1,6 @@
 import 'package:cpt_rewards/modules/rewards_transaction/rewards_transaction_page.dart';
 import 'package:cs_resources/generated/l10n.dart';
+import 'package:cs_resources/theme/app_colors_theme.dart';
 import 'package:flutter/material.dart';
 import 'package:auto_route/auto_route.dart';
 import 'package:flutter_hooks/flutter_hooks.dart';
@@ -48,27 +49,27 @@ class RewardsMyUsedPage extends HookConsumerWidget {
               maxLines: 1, // 设置最大行数为2
               overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
               title,
-              style: const TextStyle(fontSize: 16.0, color: Colors.black, fontWeight: FontWeight.w500),
+              style: TextStyle(fontSize: 16.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
             ),
             Row(
               children: [
                 Text(
                   '$point',
-                  style: const TextStyle(fontSize: 19.0, color: Colors.black, fontWeight: FontWeight.w500),
+                  style: TextStyle(fontSize: 19.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
                 ),
                 Text(
                   '$originalPoint',
                   style: TextStyle(
                       decoration: TextDecoration.lineThrough,
-                      decorationColor: ColorUtils.string2Color('#000000'),
+                      decorationColor: context.appColors.textBlack,
                       decorationStyle: TextDecorationStyle.solid,
                       fontSize: 12.0,
-                      color: ColorUtils.string2Color('#000000'),
+                      color: context.appColors.textBlack,
                       fontWeight: FontWeight.w400),
                 ).marginOnly(left: 5, right: 5),
                 Text(
                   S.current.points,
-                  style: const TextStyle(fontSize: 13.0, color: Colors.black, fontWeight: FontWeight.w400),
+                  style: TextStyle(fontSize: 13.0, color: context.appColors.textBlack, fontWeight: FontWeight.w400),
                 ),
               ],
             ),
@@ -84,13 +85,13 @@ class RewardsMyUsedPage extends HookConsumerWidget {
                     ),
                     Text(
                       '${S.current.redeem_from}:',
-                      style: const TextStyle(fontSize: 13.0, color: Colors.black, fontWeight: FontWeight.w400),
+                      style: TextStyle(fontSize: 13.0, color: context.appColors.textBlack, fontWeight: FontWeight.w400),
                     ).marginOnly(left: 6)
                   ],
                 ),
                 Text(
                   '$redeemedDate',
-                  style: const TextStyle(fontSize: 13.0, color: Colors.black, fontWeight: FontWeight.w400),
+                  style: TextStyle(fontSize: 13.0, color: context.appColors.textBlack, fontWeight: FontWeight.w400),
                 )
               ],
             ),
@@ -103,14 +104,14 @@ class RewardsMyUsedPage extends HookConsumerWidget {
                 ),
                 Text(
                   '${S.current.redeem_deal_at}: $usedAt',
-                  style: const TextStyle(fontSize: 13.0, color: Colors.black, fontWeight: FontWeight.w400),
+                  style: TextStyle(fontSize: 13.0, color: context.appColors.textBlack, fontWeight: FontWeight.w400),
                 ).marginOnly(left: 6)
               ],
             ).paddingOnly(left: 6),
             Container(
                 height: 43,
                 decoration: BoxDecoration(
-                  color: ColorUtils.string2Color('#4161D0'),
+                  color: context.appColors.btnBgDefaultDark,
                   borderRadius: BorderRadius.circular(8), // 圆角
                 ),
                 child: Expanded(
@@ -118,7 +119,7 @@ class RewardsMyUsedPage extends HookConsumerWidget {
                         alignment: Alignment.center,
                         child: Text(
                           S.current.view,
-                          style: TextStyle(fontSize: 15.0, color: ColorUtils.string2Color('#FFFFFF'), fontWeight: FontWeight.w500),
+                          style: const TextStyle(fontSize: 15.0, color: Colors.white, fontWeight: FontWeight.w500),
                         )))).marginOnly(top: 10, bottom: 5).onTap(() {
               RewardsTransactionPage.startInstance();
             }),
@@ -139,10 +140,10 @@ class RewardsMyUsedPage extends HookConsumerWidget {
   // listitem
   Widget _buildSaleItem(BuildContext context, WidgetRef ref, item, _vm) {
     return Container(
-      decoration: const BoxDecoration(
-        color: Colors.white,
-        borderRadius: BorderRadius.all(Radius.circular(6.0)),
-        boxShadow: [BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)],
+      decoration: BoxDecoration(
+        color: context.appColors.whiteBG,
+        borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+        boxShadow: [BoxShadow(color: context.appColors.itemBGShadow)],
       ),
       child: Column(
         children: [
@@ -205,7 +206,7 @@ class RewardsMyUsedPage extends HookConsumerWidget {
                 vm.onRefresh();
               },
               child: Container(
-                color: ColorUtils.string2Color('#F2F3F6'),
+                color: context.appColors.backgroundDark,
                 padding: const EdgeInsets.only(top: 15),
                 child: LoadStateLayout(
                   state: state.loadingState,

+ 33 - 32
packages/cpt_rewards/lib/modules/rewards_redeem/rewards_redeem_page.dart

@@ -16,6 +16,7 @@ import 'package:widgets/my_appbar.dart';
 import 'package:widgets/my_load_image.dart';
 import 'package:widgets/my_text_view.dart';
 import 'package:widgets/shatter/picker_container.dart';
+import 'package:widgets/utils/dark_theme_util.dart';
 import 'package:widgets/widget_export.dart';
 import 'package:cs_resources/generated/assets.dart';
 
@@ -49,10 +50,10 @@ class RewardsRedeemPage extends HookConsumerWidget {
     return Column(
       children: [
         Container(
-            decoration: const BoxDecoration(
-              color: Colors.white,
-              borderRadius: BorderRadius.all(Radius.circular(6.0)),
-              boxShadow: [
+            decoration:  BoxDecoration(
+              color: context.appColors.whiteBG,
+              borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+              boxShadow: const [
                 BoxShadow(
                     color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
               ],
@@ -79,18 +80,18 @@ class RewardsRedeemPage extends HookConsumerWidget {
                       maxLines: 1, // 设置最大行数为2
                       overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
                       title,
-                      style: const TextStyle(
+                      style:  TextStyle(
                           fontSize: 17.0,
-                          color: Colors.black,
+                          color: context.appColors.textBlack,
                           fontWeight: FontWeight.w500),
                     ).marginOnly(bottom: 5),
                     Row(
                       children: [
                         Text(
                           '$point',
-                          style: const TextStyle(
+                          style:  TextStyle(
                               fontSize: 19.0,
-                              color: Colors.black,
+                              color: context.appColors.textBlack,
                               fontWeight: FontWeight.w500),
                         ),
                         Text(
@@ -98,17 +99,17 @@ class RewardsRedeemPage extends HookConsumerWidget {
                           style: TextStyle(
                               decoration: TextDecoration.lineThrough,
                               decorationColor:
-                                  ColorUtils.string2Color('#808DAF'),
+                                 DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#808DAF'),darkColor: Colors.white),
                               decorationStyle: TextDecorationStyle.solid,
                               fontSize: 12.0,
-                              color: ColorUtils.string2Color('#808DAF'),
+                              color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#808DAF'),darkColor: Colors.white),
                               fontWeight: FontWeight.w400),
                         ).marginOnly(left: 5, right: 5),
                          Text(
                           S.current.points,
-                          style: const TextStyle(
+                          style:  TextStyle(
                               fontSize: 13.0,
-                              color: Colors.black,
+                              color: context.appColors.textBlack   ,
                               fontWeight: FontWeight.w400),
                         ),
                       ],
@@ -126,10 +127,10 @@ class RewardsRedeemPage extends HookConsumerWidget {
     return Column(
       children: [
         Container(
-          decoration: const BoxDecoration(
-            color: Colors.white,
-            borderRadius: BorderRadius.all(Radius.circular(6.0)),
-            boxShadow: [
+          decoration:  BoxDecoration(
+            color: context.appColors.whiteBG   ,
+            borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+            boxShadow: const [
               BoxShadow(
                   color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
             ],
@@ -152,7 +153,7 @@ class RewardsRedeemPage extends HookConsumerWidget {
                     S.current.redeem_date,
                     style: TextStyle(
                         fontSize: 15.0,
-                        color: ColorUtils.string2Color('#000000'),
+                        color: context.appColors.textBlack   ,
                         fontWeight: FontWeight.w500),
                   )
                 ],
@@ -164,7 +165,7 @@ class RewardsRedeemPage extends HookConsumerWidget {
                     createdAt,
                     style: TextStyle(
                         fontSize: 15.0,
-                        color: ColorUtils.string2Color('#54638C'),
+                        color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#54638C'),darkColor: Colors.white),
                         fontWeight: FontWeight.w400),
                   ),
                 ],
@@ -183,10 +184,10 @@ class RewardsRedeemPage extends HookConsumerWidget {
     return Column(
       children: [
         Container(
-          decoration: const BoxDecoration(
-            color: Colors.white,
-            borderRadius: BorderRadius.all(Radius.circular(6.0)),
-            boxShadow: [
+          decoration:  BoxDecoration(
+            color: context.appColors.whiteBG ,
+            borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+            boxShadow: const [
               BoxShadow(
                   color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
             ],
@@ -209,7 +210,7 @@ class RewardsRedeemPage extends HookConsumerWidget {
                     S.current.redeem_from,
                     style: TextStyle(
                         fontSize: 15.0,
-                        color: ColorUtils.string2Color('#000000'),
+                        color:context.appColors.textBlack ,
                         fontWeight: FontWeight.w500),
                   )
                 ],
@@ -221,7 +222,7 @@ class RewardsRedeemPage extends HookConsumerWidget {
                     redeemedDate,
                     style: TextStyle(
                         fontSize: 15.0,
-                        color: ColorUtils.string2Color('#54638C'),
+                        color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#54638C'),darkColor: Colors.white),
                         fontWeight: FontWeight.w400),
                   ),
                 ],
@@ -237,10 +238,10 @@ class RewardsRedeemPage extends HookConsumerWidget {
     return Column(
       children: [
         Container(
-          decoration: const BoxDecoration(
-            color: Colors.white,
-            borderRadius: BorderRadius.all(Radius.circular(6.0)),
-            boxShadow: [
+          decoration:  BoxDecoration(
+            color:context.appColors.whiteBG  ,
+            borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+            boxShadow: const [
               BoxShadow(
                   color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
             ],
@@ -264,7 +265,7 @@ class RewardsRedeemPage extends HookConsumerWidget {
                       S.current.have_redeemed_promotion,
                       style: TextStyle(
                           fontSize: 15.0,
-                          color: ColorUtils.string2Color('#4161D0'),
+                          color: context.appColors.textPrimary   ,
                           fontWeight: FontWeight.w500),
                     ),
                   )
@@ -280,7 +281,7 @@ class RewardsRedeemPage extends HookConsumerWidget {
   Widget _buildTop(BuildContext context, WidgetRef ref, _vm) {
     return Container(
         width: MediaQuery.of(context).size.width,
-        color: ColorUtils.string2Color('#FFFFFF'),
+        color: context.appColors.whiteBG  ,
         padding: const EdgeInsets.only(top: 15, bottom: 30),
         child: Column(
           mainAxisAlignment: MainAxisAlignment.center,
@@ -295,7 +296,7 @@ class RewardsRedeemPage extends HookConsumerWidget {
               '${S.current.congratulations}!',
               style: TextStyle(
                   fontSize: 18.0,
-                  color: ColorUtils.string2Color('#4161D0'),
+                  color: context.appColors.textPrimary    ,
                   fontWeight: FontWeight.w500),
             ).marginOnly(top: 12, bottom: 15),
           ],
@@ -339,7 +340,7 @@ class RewardsRedeemPage extends HookConsumerWidget {
                             children: [
                               _buildTop(context, ref, _vm),
                               Container(
-                                  color: ColorUtils.string2Color('#F2F3F6'),
+                                  color: context.appColors.backgroundDark,
                                   padding: const EdgeInsets.only(top: 15),
                                   child: Column(
                                     children: [

+ 45 - 32
packages/cpt_rewards/lib/modules/rewards_search/rewards_search_page.dart

@@ -16,6 +16,7 @@ import 'package:widgets/load_state_layout.dart';
 import 'package:widgets/my_appbar.dart';
 import 'package:widgets/my_load_image.dart';
 import 'package:widgets/shatter/picker_container.dart';
+import 'package:widgets/utils/dark_theme_util.dart';
 import 'package:widgets/widget_export.dart';
 import 'package:cs_resources/generated/assets.dart';
 
@@ -53,27 +54,27 @@ class RewardsSearchPage extends HookConsumerWidget {
               maxLines: 1, // 设置最大行数为2
               overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
               item?['name'] ?? '',
-              style: const TextStyle(fontSize: 16.0, color: Colors.black, fontWeight: FontWeight.w500),
+              style: TextStyle(fontSize: 16.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
             ).marginOnly(bottom: 5, top: 10),
             Row(
               children: [
                 Text(
                   '$point',
-                  style: const TextStyle(fontSize: 19.0, color: Colors.black, fontWeight: FontWeight.w500),
+                  style: TextStyle(fontSize: 19.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
                 ),
                 Text(
                   '$originalPoint',
                   style: TextStyle(
                       decoration: TextDecoration.lineThrough,
-                      decorationColor: ColorUtils.string2Color('#000000'),
+                      decorationColor: context.appColors.textBlack,
                       decorationStyle: TextDecorationStyle.solid,
                       fontSize: 12.0,
-                      color: ColorUtils.string2Color('#000000'),
+                      color: context.appColors.textBlack,
                       fontWeight: FontWeight.w400),
                 ).marginOnly(left: 5, right: 5),
                 Text(
                   S.current.points,
-                  style: const TextStyle(fontSize: 13.0, color: Colors.black, fontWeight: FontWeight.w400),
+                  style: TextStyle(fontSize: 13.0, color: context.appColors.textBlack, fontWeight: FontWeight.w400),
                 ),
               ],
             ),
@@ -88,10 +89,10 @@ class RewardsSearchPage extends HookConsumerWidget {
   // listitem
   Widget _buildSaleItem(BuildContext context, WidgetRef ref, _vm, item) {
     return Container(
-      decoration: const BoxDecoration(
-        color: Colors.white,
-        borderRadius: BorderRadius.all(Radius.circular(6.0)),
-        boxShadow: [BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)],
+      decoration: BoxDecoration(
+        color: context.appColors.whiteBG,
+        borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+        boxShadow: [BoxShadow(color: context.appColors.itemBGShadow)],
       ),
       child: Column(
         children: [
@@ -139,7 +140,7 @@ class RewardsSearchPage extends HookConsumerWidget {
       children: [
         Text(
           S.current.recent_searches,
-          style: TextStyle(fontSize: 16.0, color: ColorUtils.string2Color('#000000'), fontWeight: FontWeight.w500),
+          style: TextStyle(fontSize: 16.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
         ).marginOnly(bottom: 20),
         Wrap(
             direction: Axis.horizontal, // 水平方向排列
@@ -154,14 +155,17 @@ class RewardsSearchPage extends HookConsumerWidget {
 
   Widget _buildSearchRecentItem(BuildContext context, WidgetRef ref, _vm, recent) {
     return Container(
-      decoration: const BoxDecoration(
-        color: Colors.white,
+      decoration: BoxDecoration(
+        color: context.appColors.whiteBG,
         borderRadius: BorderRadius.all(Radius.circular(3.0)),
       ),
-      padding: const EdgeInsets.all(10),
+      padding: EdgeInsets.all(10),
       child: Text(
         recent,
-        style: TextStyle(fontSize: 14.0, color: ColorUtils.string2Color('#969696'), fontWeight: FontWeight.w400),
+        style: TextStyle(
+            fontSize: 14.0,
+            color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#969696'), darkColor: Colors.white),
+            fontWeight: FontWeight.w400),
       ),
     ).onTap(() {
       _vm.searchIn(recent);
@@ -177,7 +181,7 @@ class RewardsSearchPage extends HookConsumerWidget {
       children: [
         Text(
           S.current.trending_searches,
-          style: TextStyle(fontSize: 16.0, color: ColorUtils.string2Color('#000000'), fontWeight: FontWeight.w500),
+          style: TextStyle(fontSize: 16.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
         ).marginOnly(bottom: 20),
         Wrap(
             direction: Axis.horizontal, // 水平方向排列
@@ -192,8 +196,8 @@ class RewardsSearchPage extends HookConsumerWidget {
 
   Widget _buildSearchTrendingItem(BuildContext context, WidgetRef ref, _vm, trending) {
     return Container(
-      decoration: const BoxDecoration(
-        color: Colors.white,
+      decoration: BoxDecoration(
+        color: context.appColors.whiteBG,
         borderRadius: BorderRadius.all(Radius.circular(3.0)),
       ),
       padding: const EdgeInsets.all(10),
@@ -207,7 +211,10 @@ class RewardsSearchPage extends HookConsumerWidget {
           ).marginOnly(right: 5),
           Text(
             trending,
-            style: TextStyle(fontSize: 14.0, color: ColorUtils.string2Color('#969696'), fontWeight: FontWeight.w400),
+            style: TextStyle(
+                fontSize: 14.0,
+                color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#969696'), darkColor: Colors.white),
+                fontWeight: FontWeight.w400),
           ),
         ],
       ),
@@ -225,7 +232,7 @@ class RewardsSearchPage extends HookConsumerWidget {
       children: [
         Text(
           S.current.recently_viewed,
-          style: TextStyle(fontSize: 16.0, color: ColorUtils.string2Color('#000000'), fontWeight: FontWeight.w500),
+          style: TextStyle(fontSize: 16.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
         ).marginOnly(bottom: 18),
         Column(
             crossAxisAlignment: CrossAxisAlignment.center,
@@ -246,10 +253,10 @@ class RewardsSearchPage extends HookConsumerWidget {
         // width: MediaQuery.of(context).size.width / 2 - 25,
         // height: 240,
         padding: const EdgeInsets.only(bottom: 20),
-        decoration: const BoxDecoration(
-          color: Colors.white,
-          borderRadius: BorderRadius.all(Radius.circular(6.0)),
-          boxShadow: [BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)],
+        decoration:  BoxDecoration(
+          color: context.appColors.whiteBG,
+          borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+          boxShadow: [BoxShadow(color: context.appColors.itemBGShadow)],
         ),
         child: Column(
           children: [
@@ -265,13 +272,13 @@ class RewardsSearchPage extends HookConsumerWidget {
                   maxLines: 1, // 设置最大行数为2
                   overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
                   item.name ?? '',
-                  style: const TextStyle(fontSize: 15.0, color: Colors.black, fontWeight: FontWeight.w500),
+                  style:  TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
                 ).marginOnly(bottom: 5, top: 10),
                 Row(
                   children: [
                     Text(
                       '$point',
-                      style: const TextStyle(fontSize: 18.0, color: Colors.black, fontWeight: FontWeight.w500),
+                      style:  TextStyle(fontSize: 18.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
                     ),
                     Text(
                       '$originalPoint',
@@ -280,12 +287,12 @@ class RewardsSearchPage extends HookConsumerWidget {
                           decorationColor: ColorUtils.string2Color('#808DAF'),
                           decorationStyle: TextDecorationStyle.solid,
                           fontSize: 13.0,
-                          color: ColorUtils.string2Color('#808DAF'),
+                          color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#808DAF'),darkColor: Colors.white),
                           fontWeight: FontWeight.w400),
                     ).marginOnly(left: 5, right: 5),
                     Text(
                       S.current.points,
-                      style: const TextStyle(fontSize: 13.0, color: Colors.black, fontWeight: FontWeight.w400),
+                      style:  TextStyle(fontSize: 13.0, color: context.appColors.textBlack, fontWeight: FontWeight.w400),
                     ),
                   ],
                 )
@@ -321,9 +328,15 @@ class RewardsSearchPage extends HookConsumerWidget {
       };
     }, []);
     return Scaffold(
-      appBar: MyAppBar.searchAppBar(context, onSearch: (value) {
-        _vm.searchIn(value);
-      }, value: state.keyword, backgroundColor: Colors.white, systemUiOverlayStyle: ThemeConfig.systemUiOverlayStyleLightThemeBlack),
+      appBar: MyAppBar.searchAppBar(
+        context,
+        onSearch: (value) {
+          _vm.searchIn(value);
+        },
+        value: state.keyword,
+        backgroundColor: context.appColors.backgroundWhite,
+        systemUiOverlayStyle: ThemeConfig.systemUiOverlayStyleLightThemeBlack,
+      ),
       body: searchIs
           ? LoadStateLayout(
               state: state.loadingState,
@@ -337,7 +350,7 @@ class RewardsSearchPage extends HookConsumerWidget {
                 clipBehavior: Clip.none,
                 child: Container(
                     width: MediaQuery.of(context).size.width,
-                    color: ColorUtils.string2Color('#F2F3F6'),
+                    color: context.appColors.backgroundDark,
                     padding: const EdgeInsets.only(top: 20, left: 15, right: 15),
                     child: _buildSearchOf(context, ref, _vm, detailInfo)),
               ))
@@ -358,7 +371,7 @@ class RewardsSearchPage extends HookConsumerWidget {
                         _vm.onRefresh();
                       },
                       child: Container(
-                        color: ColorUtils.string2Color('#F2F3F6'),
+                        color: context.appColors.backgroundDark,
                         padding: const EdgeInsets.only(top: 15),
                         child: LoadStateLayout(
                             state: state.loadingState,

+ 31 - 30
packages/cpt_rewards/lib/modules/rewards_successful/rewards_successful_page.dart

@@ -16,6 +16,7 @@ import 'package:widgets/my_appbar.dart';
 import 'package:widgets/my_load_image.dart';
 import 'package:widgets/my_text_view.dart';
 import 'package:widgets/shatter/picker_container.dart';
+import 'package:widgets/utils/dark_theme_util.dart';
 import 'package:widgets/widget_export.dart';
 import 'package:cs_resources/generated/assets.dart';
 
@@ -71,12 +72,12 @@ class RewardsSuccessfulPage extends HookConsumerWidget {
     return Column(
       children: [
         Container(
-            decoration: const BoxDecoration(
-              color: Colors.white,
-              borderRadius: BorderRadius.all(Radius.circular(6.0)),
+            decoration:  BoxDecoration(
+              color: context.appColors.whiteBG,
+              borderRadius: const BorderRadius.all(Radius.circular(6.0)),
               boxShadow: [
                 BoxShadow(
-                    color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
+                    color: context.appColors.itemBGShadow)
               ],
             ),
             width: MediaQuery.of(context).size.width - 30,
@@ -99,9 +100,9 @@ class RewardsSuccessfulPage extends HookConsumerWidget {
                       maxLines: 1, // 设置最大行数为2
                       overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
                       titles,
-                      style: const TextStyle(
+                      style:  TextStyle(
                           fontSize: 17.0,
-                          color: Colors.black,
+                          color: context.appColors.textBlack,
                           fontWeight: FontWeight.w500),
                     ),
                   ],
@@ -116,12 +117,12 @@ class RewardsSuccessfulPage extends HookConsumerWidget {
     return Column(
       children: [
         Container(
-          decoration: const BoxDecoration(
-            color: Colors.white,
-            borderRadius: BorderRadius.all(Radius.circular(6.0)),
+          decoration:  BoxDecoration(
+            color:context.appColors.whiteBG,
+            borderRadius: const BorderRadius.all(Radius.circular(6.0)),
             boxShadow: [
               BoxShadow(
-                  color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
+                  color: context.appColors.itemBGShadow)
             ],
           ),
           width: MediaQuery.of(context).size.width - 30,
@@ -142,7 +143,7 @@ class RewardsSuccessfulPage extends HookConsumerWidget {
                     S.current.redeem_deal_at,
                     style: TextStyle(
                         fontSize: 15.0,
-                        color: ColorUtils.string2Color('#000000'),
+                        color: context.appColors.textBlack,
                         fontWeight: FontWeight.w500),
                   )
                 ],
@@ -157,7 +158,7 @@ class RewardsSuccessfulPage extends HookConsumerWidget {
                     overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
                     style: TextStyle(
                         fontSize: 15.0,
-                        color: ColorUtils.string2Color('#54638C'),
+                        color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#54638C'),darkColor: Colors.white),
                         fontWeight: FontWeight.w400),
                   ),
                 ],
@@ -174,12 +175,12 @@ class RewardsSuccessfulPage extends HookConsumerWidget {
     return Column(
       children: [
         Container(
-          decoration: const BoxDecoration(
-            color: Colors.white,
-            borderRadius: BorderRadius.all(Radius.circular(6.0)),
+          decoration:  BoxDecoration(
+            color: context.appColors.whiteBG  ,
+            borderRadius: const BorderRadius.all(Radius.circular(6.0)),
             boxShadow: [
               BoxShadow(
-                  color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
+                  color: context.appColors.itemBGShadow  )
             ],
           ),
           width: MediaQuery.of(context).size.width - 30,
@@ -200,7 +201,7 @@ class RewardsSuccessfulPage extends HookConsumerWidget {
                     S.current.redeem_from,
                     style: TextStyle(
                         fontSize: 15.0,
-                        color: ColorUtils.string2Color('#000000'),
+                        color: context.appColors.textBlack  ,
                         fontWeight: FontWeight.w500),
                   )
                 ],
@@ -212,7 +213,7 @@ class RewardsSuccessfulPage extends HookConsumerWidget {
                     redeemedDates,
                     style: TextStyle(
                         fontSize: 15.0,
-                        color: ColorUtils.string2Color('#54638C'),
+                        color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#54638C'),darkColor: Colors.white),
                         fontWeight: FontWeight.w400),
                   ),
                 ],
@@ -229,12 +230,12 @@ class RewardsSuccessfulPage extends HookConsumerWidget {
     return Column(
       children: [
         Container(
-          decoration: const BoxDecoration(
-            color: Colors.white,
-            borderRadius: BorderRadius.all(Radius.circular(6.0)),
+          decoration:  BoxDecoration(
+            color: context.appColors.whiteBG   ,
+            borderRadius: const BorderRadius.all(Radius.circular(6.0)),
             boxShadow: [
               BoxShadow(
-                  color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
+                  color: context.appColors.itemBGShadow   )
             ],
           ),
           width: MediaQuery.of(context).size.width - 30,
@@ -249,7 +250,7 @@ class RewardsSuccessfulPage extends HookConsumerWidget {
                     '${S.current.date_time}:',
                     style: TextStyle(
                         fontSize: 15.0,
-                        color: ColorUtils.string2Color('#333333'),
+                        color: context.appColors.tabTextUnSelectedPrimary,
                         fontWeight: FontWeight.w400),
                   ),
                   Row(
@@ -258,7 +259,7 @@ class RewardsSuccessfulPage extends HookConsumerWidget {
                         createdAts,
                         style: TextStyle(
                             fontSize: 15.0,
-                            color: ColorUtils.string2Color('#54638C'),
+                            color:  DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#54638C'),darkColor: Colors.white),
                             fontWeight: FontWeight.w400),
                       ),
                     ],
@@ -299,7 +300,7 @@ class RewardsSuccessfulPage extends HookConsumerWidget {
   Widget _buildTop(BuildContext context, WidgetRef ref, _vm) {
     return Container(
         width: MediaQuery.of(context).size.width,
-        color: ColorUtils.string2Color('#FFFFFF'),
+        color: context.appColors.whiteBG  ,
         padding: const EdgeInsets.only(top: 15, bottom: 30),
         child: Column(
           mainAxisAlignment: MainAxisAlignment.center,
@@ -314,14 +315,14 @@ class RewardsSuccessfulPage extends HookConsumerWidget {
               S.current.you_have_paid_points,
               style: TextStyle(
                   fontSize: 18.0,
-                  color: ColorUtils.string2Color('#4161D0'),
+                  color:  DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#4161D0'),darkColor: Colors.white),
                   fontWeight: FontWeight.w500),
             ).marginOnly(top: 12, bottom: 15),
             Text(
               '$amount',
               style: TextStyle(
                   fontSize: 30.0,
-                  color: ColorUtils.string2Color('#000000'),
+                  color: context.appColors.textBlack  ,
                   fontWeight: FontWeight.w500),
             ),
           ],
@@ -350,7 +351,7 @@ class RewardsSuccessfulPage extends HookConsumerWidget {
                     children: [
                       _buildTop(context, ref, _vm),
                       Container(
-                          color: ColorUtils.string2Color('#F2F3F6'),
+                          color: context.appColors.backgroundDark,
                           padding: const EdgeInsets.only(top: 15),
                           child: Column(
                             children: [
@@ -364,14 +365,14 @@ class RewardsSuccessfulPage extends HookConsumerWidget {
                   ))),
           Container(
             height: 50,
-            color: ColorUtils.string2Color('#4161D0'),
+            color:context.appColors.btnBgDefault,
             child: Flex(
               direction: Axis.horizontal,
               children: [
                 Expanded(
                   flex: 1,
                   child: Container(
-                    color: ColorUtils.string2Color('#4161D0'),
+                    color: context.appColors.btnBgDefault  ,
                     height: 100,
                     child: Row(
                       mainAxisAlignment: MainAxisAlignment.center,

+ 46 - 119
packages/cpt_rewards/lib/modules/rewards_transaction/rewards_transaction_page.dart

@@ -15,6 +15,7 @@ import 'package:widgets/my_appbar.dart';
 import 'package:widgets/my_load_image.dart';
 import 'package:widgets/my_text_view.dart';
 import 'package:widgets/shatter/picker_container.dart';
+import 'package:widgets/utils/dark_theme_util.dart';
 import 'package:widgets/widget_export.dart';
 import 'package:cs_resources/generated/assets.dart';
 
@@ -25,15 +26,11 @@ import './rewards_transaction_vm.dart';
 class RewardsTransactionPage extends HookConsumerWidget {
   final int? id;
   final String? type;
-  const RewardsTransactionPage(
-      {Key? key,
-      @PathParam('id') required this.id,
-      @PathParam('type') required this.type})
-      : super(key: key);
+
+  const RewardsTransactionPage({Key? key, @PathParam('id') required this.id, @PathParam('type') required this.type}) : super(key: key);
 
   //启动当前页面
-  static void startInstance(
-      {BuildContext? context, int? id, String? type = ''}) {
+  static void startInstance({BuildContext? context, int? id, String? type = ''}) {
     if (context != null) {
       context.router.push(RewardsTransactionPageRoute(id: id, type: type));
     } else {
@@ -51,13 +48,10 @@ class RewardsTransactionPage extends HookConsumerWidget {
     return Column(
       children: [
         Container(
-            decoration: const BoxDecoration(
-              color: Colors.white,
-              borderRadius: BorderRadius.all(Radius.circular(6.0)),
-              boxShadow: [
-                BoxShadow(
-                    color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
-              ],
+            decoration: BoxDecoration(
+              color: context.appColors.whiteBG,
+              borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+              boxShadow: const [BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)],
             ),
             width: MediaQuery.of(context).size.width - 30,
             // height: 420,
@@ -81,37 +75,27 @@ class RewardsTransactionPage extends HookConsumerWidget {
                       maxLines: 1, // 设置最大行数为2
                       overflow: TextOverflow.ellipsis, // 超出部分用省略号表示
                       title,
-                      style: const TextStyle(
-                          fontSize: 17.0,
-                          color: Colors.black,
-                          fontWeight: FontWeight.w500),
+                      style: TextStyle(fontSize: 17.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
                     ).marginOnly(bottom: 5),
                     Row(
                       children: [
                         Text(
                           '$point',
-                          style: const TextStyle(
-                              fontSize: 19.0,
-                              color: Colors.black,
-                              fontWeight: FontWeight.w500),
+                          style: TextStyle(fontSize: 19.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
                         ),
                         Text(
                           '$originalPoint',
                           style: TextStyle(
                               decoration: TextDecoration.lineThrough,
-                              decorationColor:
-                                  ColorUtils.string2Color('#808DAF'),
+                              decorationColor: ColorUtils.string2Color('#808DAF'),
                               decorationStyle: TextDecorationStyle.solid,
                               fontSize: 12.0,
                               color: ColorUtils.string2Color('#808DAF'),
                               fontWeight: FontWeight.w400),
                         ).marginOnly(left: 5, right: 5),
-                         Text(
+                        Text(
                           S.current.points,
-                          style: const TextStyle(
-                              fontSize: 13.0,
-                              color: Colors.black,
-                              fontWeight: FontWeight.w400),
+                          style: TextStyle(fontSize: 13.0, color: context.appColors.textBlack, fontWeight: FontWeight.w400),
                         ),
                       ],
                     ),
@@ -131,13 +115,10 @@ class RewardsTransactionPage extends HookConsumerWidget {
     return Column(
       children: [
         Container(
-          decoration: const BoxDecoration(
-            color: Colors.white,
-            borderRadius: BorderRadius.all(Radius.circular(6.0)),
-            boxShadow: [
-              BoxShadow(
-                  color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
-            ],
+          decoration: BoxDecoration(
+            color: context.appColors.whiteBG,
+            borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+            boxShadow: const [BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)],
           ),
           width: MediaQuery.of(context).size.width - 30,
           child: Column(
@@ -155,10 +136,7 @@ class RewardsTransactionPage extends HookConsumerWidget {
                   ).marginOnly(right: 15),
                   Text(
                     redeemedEnd,
-                    style: TextStyle(
-                        fontSize: 15.0,
-                        color: ColorUtils.string2Color('#000000'),
-                        fontWeight: FontWeight.w400),
+                    style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w400),
                   )
                 ],
               ).marginOnly(bottom: 20),
@@ -176,19 +154,13 @@ class RewardsTransactionPage extends HookConsumerWidget {
                       ).marginOnly(right: 15),
                       Text(
                         S.current.verification_code,
-                        style: TextStyle(
-                            fontSize: 15.0,
-                            color: ColorUtils.string2Color('#000000'),
-                            fontWeight: FontWeight.w400),
+                        style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w400),
                       ),
                     ],
                   ),
                   Text(
                     '$code',
-                    style: TextStyle(
-                        fontSize: 15.0,
-                        color: ColorUtils.string2Color('#4161D0'),
-                        fontWeight: FontWeight.w500),
+                    style: TextStyle(fontSize: 15.0, color: context.appColors.textPrimary, fontWeight: FontWeight.w500),
                   ),
                 ],
               ),
@@ -203,13 +175,10 @@ class RewardsTransactionPage extends HookConsumerWidget {
     return Column(
       children: [
         Container(
-          decoration: const BoxDecoration(
-            color: Colors.white,
-            borderRadius: BorderRadius.all(Radius.circular(6.0)),
-            boxShadow: [
-              BoxShadow(
-                  color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
-            ],
+          decoration: BoxDecoration(
+            color: context.appColors.whiteBG,
+            borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+            boxShadow: const [BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)],
           ),
           width: MediaQuery.of(context).size.width - 30,
           child: Column(
@@ -223,10 +192,7 @@ class RewardsTransactionPage extends HookConsumerWidget {
                   Expanded(
                     child: Text(
                       S.current.issue_contact_phone,
-                      style: TextStyle(
-                          fontSize: 15.0,
-                          color: ColorUtils.string2Color('#000000'),
-                          fontWeight: FontWeight.w500),
+                      style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
                     ),
                   )
                 ],
@@ -238,8 +204,7 @@ class RewardsTransactionPage extends HookConsumerWidget {
     ).marginOnly(left: 15, bottom: 25, right: 15);
   }
 
-  Widget _buildNotice(
-      BuildContext context, WidgetRef ref, _vm, types, detailInfo) {
+  Widget _buildNotice(BuildContext context, WidgetRef ref, _vm, types, detailInfo) {
     int phone = detailInfo.account.phone ?? 0;
     String createdAt = detailInfo.createdAt ?? "";
     String usedAt = detailInfo.usedAt ?? "";
@@ -249,13 +214,10 @@ class RewardsTransactionPage extends HookConsumerWidget {
     return Column(
       children: [
         Container(
-          decoration: const BoxDecoration(
-            color: Colors.white,
-            borderRadius: BorderRadius.all(Radius.circular(6.0)),
-            boxShadow: [
-              BoxShadow(
-                  color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)
-            ],
+          decoration: BoxDecoration(
+            color: context.appColors.whiteBG,
+            borderRadius: const BorderRadius.all(Radius.circular(6.0)),
+            boxShadow: const [BoxShadow(color: Color.fromRGBO(184, 191, 217, 0.3), blurRadius: 6)],
           ),
           width: MediaQuery.of(context).size.width - 30,
           child: Column(
@@ -273,10 +235,7 @@ class RewardsTransactionPage extends HookConsumerWidget {
                   ).marginOnly(right: 10),
                   Text(
                     S.current.transaction_details,
-                    style: TextStyle(
-                        fontSize: 15.0,
-                        color: ColorUtils.string2Color('#000000'),
-                        fontWeight: FontWeight.w500),
+                    style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
                   )
                 ],
               ).marginOnly(bottom: 12),
@@ -286,19 +245,13 @@ class RewardsTransactionPage extends HookConsumerWidget {
                 children: [
                   Text(
                     '${S.current.purchase_mobile_no} :',
-                    style: TextStyle(
-                        fontSize: 15.0,
-                        color: ColorUtils.string2Color('#000000'),
-                        fontWeight: FontWeight.w400),
+                    style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w400),
                   ),
                   Row(
                     children: [
                       Text(
                         '$phone',
-                        style: TextStyle(
-                            fontSize: 15.0,
-                            color: ColorUtils.string2Color('#000000'),
-                            fontWeight: FontWeight.w500),
+                        style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
                       ),
                     ],
                   ),
@@ -310,19 +263,13 @@ class RewardsTransactionPage extends HookConsumerWidget {
                 children: [
                   Text(
                     '${S.current.purchase_date} :',
-                    style: TextStyle(
-                        fontSize: 15.0,
-                        color: ColorUtils.string2Color('#000000'),
-                        fontWeight: FontWeight.w400),
+                    style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w400),
                   ),
                   Row(
                     children: [
                       Text(
                         createdAt,
-                        style: TextStyle(
-                            fontSize: 15.0,
-                            color: ColorUtils.string2Color('#000000'),
-                            fontWeight: FontWeight.w500),
+                        style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
                       ),
                     ],
                   ),
@@ -335,19 +282,13 @@ class RewardsTransactionPage extends HookConsumerWidget {
                       children: [
                         Text(
                           '${S.current.redeemed_date} :',
-                          style: TextStyle(
-                              fontSize: 15.0,
-                              color: ColorUtils.string2Color('#000000'),
-                              fontWeight: FontWeight.w400),
+                          style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w400),
                         ),
                         Row(
                           children: [
                             Text(
                               usedAt,
-                              style: TextStyle(
-                                  fontSize: 15.0,
-                                  color: ColorUtils.string2Color('#000000'),
-                                  fontWeight: FontWeight.w500),
+                              style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
                             ),
                           ],
                         ),
@@ -360,19 +301,13 @@ class RewardsTransactionPage extends HookConsumerWidget {
                 children: [
                   Text(
                     '${S.current.quantity} :',
-                    style: TextStyle(
-                        fontSize: 15.0,
-                        color: ColorUtils.string2Color('#000000'),
-                        fontWeight: FontWeight.w400),
+                    style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w400),
                   ),
                   Row(
                     children: [
                       Text(
                         '$quantity',
-                        style: TextStyle(
-                            fontSize: 15.0,
-                            color: ColorUtils.string2Color('#000000'),
-                            fontWeight: FontWeight.w500),
+                        style: TextStyle(fontSize: 15.0, color: context.appColors.textBlack, fontWeight: FontWeight.w500),
                       ),
                     ],
                   ),
@@ -384,10 +319,7 @@ class RewardsTransactionPage extends HookConsumerWidget {
                 children: [
                   Text(
                     '${S.current.points} :',
-                    style: TextStyle(
-                        fontSize: 15.0,
-                        color: ColorUtils.string2Color('#333333'),
-                        fontWeight: FontWeight.w400),
+                    style: TextStyle(fontSize: 15.0, color: context.appColors.tabTextUnSelectedPrimary, fontWeight: FontWeight.w400),
                   ),
                   Row(
                     children: [
@@ -395,18 +327,15 @@ class RewardsTransactionPage extends HookConsumerWidget {
                         '$originalPoint',
                         style: TextStyle(
                             decoration: TextDecoration.lineThrough,
-                            decorationColor: ColorUtils.string2Color('#54638C'),
+                            decorationColor: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#54638C'),darkColor: Colors.white),
                             decorationStyle: TextDecorationStyle.solid,
                             fontSize: 14.0,
-                            color: ColorUtils.string2Color('#54638C'),
+                            color: DarkThemeUtil.multiColors(context, ColorUtils.string2Color('#54638C'),darkColor: Colors.white),
                             fontWeight: FontWeight.w400),
                       ),
                       Text(
                         '$point',
-                        style: TextStyle(
-                            fontSize: 19.0,
-                            color: ColorUtils.string2Color('#333333'),
-                            fontWeight: FontWeight.w500),
+                        style: TextStyle(fontSize: 19.0, color: context.appColors.tabTextUnSelectedPrimary, fontWeight: FontWeight.w500),
                       ).marginOnly(left: 10),
                     ],
                   ),
@@ -450,15 +379,13 @@ class RewardsTransactionPage extends HookConsumerWidget {
                         child: Column(
                           children: [
                             Container(
-                                color: ColorUtils.string2Color('#F2F3F6'),
+                                color: context.appColors.backgroundDark,
                                 padding: const EdgeInsets.only(top: 15),
                                 child: Column(
                                   children: [
-                                    _buildSaleItem(
-                                        context, ref, _vm, detailInfo),
+                                    _buildSaleItem(context, ref, _vm, detailInfo),
                                     _buildDeal(context, ref, _vm, detailInfo),
-                                    _buildNotice(
-                                        context, ref, _vm, types, detailInfo),
+                                    _buildNotice(context, ref, _vm, types, detailInfo),
                                     _buildPackage(context, ref, _vm),
                                   ],
                                 )),

+ 10 - 2
packages/cs_plugin_basic/lib/widget/webview_page.dart

@@ -162,8 +162,16 @@ class _WebViewPageState extends State<WebViewPage> {
   @override
   Widget build(BuildContext context) {
     return Scaffold(
-        backgroundColor: Colors.white,
-        appBar: _showAppbar ? MyAppBar.appBar(context, title ?? "", backgroundColor: Colors.white, actions: widget.actions, backCallback: _onWillPop) : null,
+        backgroundColor: context.appColors.whiteBG,
+        appBar: _showAppbar
+            ? MyAppBar.appBar(
+                context,
+                title ?? "",
+                backgroundColor: context.appColors.backgroundWhite,
+                actions: widget.actions,
+                backCallback: _onWillPop,
+              )
+            : null,
         body: SafeArea(
           bottom: true,
           top: false,

+ 6 - 7
packages/cs_resources/lib/generated/intl/messages_en.dart

@@ -193,7 +193,7 @@ class MessageLookup extends MessageLookupByLibrary {
         "create_new_feedback":
             MessageLookupByLibrary.simpleMessage("Create New FeedBack"),
         "create_new_yy_home_account":
-            MessageLookupByLibrary.simpleMessage("Create New YY Home Account"),
+            MessageLookupByLibrary.simpleMessage("Create New Account"),
         "create_post": MessageLookupByLibrary.simpleMessage("Create Post"),
         "credit_debit_card":
             MessageLookupByLibrary.simpleMessage("Credit or debit card"),
@@ -236,12 +236,12 @@ class MessageLookup extends MessageLookupByLibrary {
         "estate_or_building_name":
             MessageLookupByLibrary.simpleMessage("Estate or Building Name?"),
         "estate_upload_success_desc": MessageLookupByLibrary.simpleMessage(
-            "You have successfully submitted your application\n\nThe Management may take a few days to process your application\n\nOnce your application is approved you Will be notified via a push notification to the YY Home app\n\nKindly contact the Management if you would like to amend or check the status of your application"),
+            "You have successfully submitted your application\n\nThe Management may take a few days to process your application\n\nOnce your application is approved you Will be notified via a push notification to the app\n\nKindly contact the Management if you would like to amend or check the status of your application"),
         "evaluate": MessageLookupByLibrary.simpleMessage("Evaluate"),
         "evaluation": MessageLookupByLibrary.simpleMessage("Evaluation"),
         "event": MessageLookupByLibrary.simpleMessage("Event"),
         "exclusive_rates":
-            MessageLookupByLibrary.simpleMessage("YY Home exclusive rates:"),
+            MessageLookupByLibrary.simpleMessage("Exclusive rates:"),
         "expired": MessageLookupByLibrary.simpleMessage("Expired"),
         "extreme_speed": MessageLookupByLibrary.simpleMessage("Extreme speed"),
         "facility": MessageLookupByLibrary.simpleMessage("Facility"),
@@ -332,7 +332,7 @@ class MessageLookup extends MessageLookupByLibrary {
         "info_desc4": MessageLookupByLibrary.simpleMessage(
             "Her credit card rewards her 1.5 miles* for every dollar spent, earning her 93,000 miles."),
         "info_desc5": MessageLookupByLibrary.simpleMessage(
-            "Sundy is able to fly business class to Tokyo worth \$4,000 at only \$1,488 in YY Home Pay processing fees That is more than 60% in savings!"),
+            "Sundy is able to fly business class to Tokyo worth \$4,000 at only \$1,488 in Pay processing fees That is more than 60% in savings!"),
         "info_desc6": MessageLookupByLibrary.simpleMessage(
             "please check your credit card rewardsfor more information"),
         "internal": MessageLookupByLibrary.simpleMessage("Internal"),
@@ -598,7 +598,7 @@ class MessageLookup extends MessageLookupByLibrary {
         "show_verification_cap": MessageLookupByLibrary.simpleMessage(
             "SHOW THE VERIFICATION CODE TO YOUR MERCHANT"),
         "sign_up_success_txt1": MessageLookupByLibrary.simpleMessage(
-            "You have successfully created an YY Home account"),
+            "You have successfully created account"),
         "sign_up_success_txt2": MessageLookupByLibrary.simpleMessage(
             "Your username is your email address and please keep your password safe"),
         "sign_up_success_txt3": MessageLookupByLibrary.simpleMessage(
@@ -723,7 +723,6 @@ class MessageLookup extends MessageLookupByLibrary {
             MessageLookupByLibrary.simpleMessage("You Have Paid Points"),
         "your_roles_responsibilities": MessageLookupByLibrary.simpleMessage(
             "Your roles & responsibilities"),
-        "yy_home_accounts":
-            MessageLookupByLibrary.simpleMessage("YY Home Accounts")
+        "yy_home_accounts": MessageLookupByLibrary.simpleMessage("Accounts")
       };
 }

+ 6 - 7
packages/cs_resources/lib/generated/intl/messages_zh_CN.dart

@@ -157,7 +157,7 @@ class MessageLookup extends MessageLookupByLibrary {
         "conveyancing_lawyer": MessageLookupByLibrary.simpleMessage("过户律师"),
         "create_new_feedback": MessageLookupByLibrary.simpleMessage("创建新的反馈"),
         "create_new_yy_home_account":
-            MessageLookupByLibrary.simpleMessage("创建新的 YY Home 账户"),
+            MessageLookupByLibrary.simpleMessage("创建新的账户"),
         "create_post": MessageLookupByLibrary.simpleMessage("创建发布"),
         "credit_debit_card": MessageLookupByLibrary.simpleMessage("信用卡或借记卡"),
         "daily_login": MessageLookupByLibrary.simpleMessage("每日签到"),
@@ -192,12 +192,11 @@ class MessageLookup extends MessageLookupByLibrary {
         "estate_or_building_name":
             MessageLookupByLibrary.simpleMessage("房产或建筑名称?"),
         "estate_upload_success_desc": MessageLookupByLibrary.simpleMessage(
-            "您已成功提交申请\n\n管理员可能需要几天时间来处理您的申请\n\n一旦您的申请获得批准,您将通过推送通知YY Home应用程序收到通知\n\n如果您想修改或检查您的申请状态,请联系管理层"),
+            "您已成功提交申请\n\n管理员可能需要几天时间来处理您的申请\n\n一旦您的申请获得批准,您将通过推送通知应用程序收到通知\n\n如果您想修改或检查您的申请状态,请联系管理层"),
         "evaluate": MessageLookupByLibrary.simpleMessage("评价"),
         "evaluation": MessageLookupByLibrary.simpleMessage("评价"),
         "event": MessageLookupByLibrary.simpleMessage("活动"),
-        "exclusive_rates":
-            MessageLookupByLibrary.simpleMessage("YY Home 独家利率:"),
+        "exclusive_rates": MessageLookupByLibrary.simpleMessage("独家利率:"),
         "expired": MessageLookupByLibrary.simpleMessage("已过期"),
         "extreme_speed": MessageLookupByLibrary.simpleMessage("加急"),
         "facility": MessageLookupByLibrary.simpleMessage("设施"),
@@ -270,7 +269,7 @@ class MessageLookup extends MessageLookupByLibrary {
         "info_desc4": MessageLookupByLibrary.simpleMessage(
             "她的信用卡每消费一美元就奖励她1.5英里*,为她赚取93000英里。"),
         "info_desc5": MessageLookupByLibrary.simpleMessage(
-            "Sundy能够乘坐价值4000美元的商务舱前往东京,只需支付1488美元的YY Home Pay处理费,节省了60%以上!"),
+            "Sundy能够乘坐价值4000美元的商务舱前往东京,只需支付1488美元的Pay处理费,节省了60%以上!"),
         "info_desc6": MessageLookupByLibrary.simpleMessage("请查看您的信用卡奖励以获取更多信息"),
         "internal": MessageLookupByLibrary.simpleMessage("内部"),
         "introduction_to_info_pack":
@@ -474,7 +473,7 @@ class MessageLookup extends MessageLookupByLibrary {
         "show_verification_cap":
             MessageLookupByLibrary.simpleMessage("向商家出示验证码"),
         "sign_up_success_txt1":
-            MessageLookupByLibrary.simpleMessage("您已成功创建 YYHome 的帐户"),
+            MessageLookupByLibrary.simpleMessage("您已成功创建帐户"),
         "sign_up_success_txt2":
             MessageLookupByLibrary.simpleMessage("您的用户名是您的电子邮件地址,请保护您的密码安全"),
         "sign_up_success_txt3":
@@ -571,6 +570,6 @@ class MessageLookup extends MessageLookupByLibrary {
         "you_have_paid_points": MessageLookupByLibrary.simpleMessage("你已支付积分"),
         "your_roles_responsibilities":
             MessageLookupByLibrary.simpleMessage("您的角色和职责"),
-        "yy_home_accounts": MessageLookupByLibrary.simpleMessage("YY Home 账户")
+        "yy_home_accounts": MessageLookupByLibrary.simpleMessage("账户")
       };
 }

+ 6 - 7
packages/cs_resources/lib/generated/intl/messages_zh_HK.dart

@@ -157,7 +157,7 @@ class MessageLookup extends MessageLookupByLibrary {
         "conveyancing_lawyer": MessageLookupByLibrary.simpleMessage("过户律师"),
         "create_new_feedback": MessageLookupByLibrary.simpleMessage("创建新的反馈"),
         "create_new_yy_home_account":
-            MessageLookupByLibrary.simpleMessage("创建新的 YY Home 账户"),
+            MessageLookupByLibrary.simpleMessage("创建新的账户"),
         "create_post": MessageLookupByLibrary.simpleMessage("创建发布"),
         "credit_debit_card": MessageLookupByLibrary.simpleMessage("信用卡或借记卡"),
         "daily_login": MessageLookupByLibrary.simpleMessage("每日签到"),
@@ -192,12 +192,11 @@ class MessageLookup extends MessageLookupByLibrary {
         "estate_or_building_name":
             MessageLookupByLibrary.simpleMessage("房产或建筑名称?"),
         "estate_upload_success_desc": MessageLookupByLibrary.simpleMessage(
-            "您已成功提交申请\n\n管理员可能需要几天时间来处理您的申请\n\n一旦您的申请获得批准,您将通过推送通知YY Home应用程序收到通知\n\n如果您想修改或检查您的申请状态,请联系管理层"),
+            "您已成功提交申请\n\n管理员可能需要几天时间来处理您的申请\n\n一旦您的申请获得批准,您将通过推送通知应用程序收到通知\n\n如果您想修改或检查您的申请状态,请联系管理层"),
         "evaluate": MessageLookupByLibrary.simpleMessage("评价"),
         "evaluation": MessageLookupByLibrary.simpleMessage("评价"),
         "event": MessageLookupByLibrary.simpleMessage("活动"),
-        "exclusive_rates":
-            MessageLookupByLibrary.simpleMessage("YY Home 独家利率:"),
+        "exclusive_rates": MessageLookupByLibrary.simpleMessage("独家利率:"),
         "expired": MessageLookupByLibrary.simpleMessage("已过期"),
         "extreme_speed": MessageLookupByLibrary.simpleMessage("加急"),
         "facility": MessageLookupByLibrary.simpleMessage("設施"),
@@ -270,7 +269,7 @@ class MessageLookup extends MessageLookupByLibrary {
         "info_desc4": MessageLookupByLibrary.simpleMessage(
             "她的信用卡每消费一美元就奖励她1.5英里*,为她赚取93000英里。"),
         "info_desc5": MessageLookupByLibrary.simpleMessage(
-            "Sundy能够乘坐价值4000美元的商务舱前往东京,只需支付1488美元的YY Home Pay处理费,节省了60%以上!"),
+            "Sundy能够乘坐价值4000美元的商务舱前往东京,只需支付1488美元的Pay处理费,节省了60%以上!"),
         "info_desc6": MessageLookupByLibrary.simpleMessage("请查看您的信用卡奖励以获取更多信息"),
         "internal": MessageLookupByLibrary.simpleMessage("内部"),
         "introduction_to_info_pack":
@@ -466,7 +465,7 @@ class MessageLookup extends MessageLookupByLibrary {
         "show_verification_cap":
             MessageLookupByLibrary.simpleMessage("向商家出示验证码"),
         "sign_up_success_txt1":
-            MessageLookupByLibrary.simpleMessage("您已成功创建 YYHome 的帐户"),
+            MessageLookupByLibrary.simpleMessage("您已成功创建帐户"),
         "sign_up_success_txt2":
             MessageLookupByLibrary.simpleMessage("您的用户名是您的电子邮件地址,请保护您的密码安全"),
         "sign_up_success_txt3":
@@ -556,6 +555,6 @@ class MessageLookup extends MessageLookupByLibrary {
         "you_have_paid_points": MessageLookupByLibrary.simpleMessage("你已支付积分"),
         "your_roles_responsibilities":
             MessageLookupByLibrary.simpleMessage("您的角色和职责"),
-        "yy_home_accounts": MessageLookupByLibrary.simpleMessage("YY Home 账户")
+        "yy_home_accounts": MessageLookupByLibrary.simpleMessage("账户")
       };
 }

+ 12 - 12
packages/cs_resources/lib/generated/l10n.dart

@@ -150,10 +150,10 @@ class S {
     );
   }
 
-  /// `Create New YY Home Account`
+  /// `Create New Account`
   String get create_new_yy_home_account {
     return Intl.message(
-      'Create New YY Home Account',
+      'Create New Account',
       name: 'create_new_yy_home_account',
       desc: '',
       args: [],
@@ -350,10 +350,10 @@ class S {
     );
   }
 
-  /// `You have successfully created an YY Home account`
+  /// `You have successfully created account`
   String get sign_up_success_txt1 {
     return Intl.message(
-      'You have successfully created an YY Home account',
+      'You have successfully created account',
       name: 'sign_up_success_txt1',
       desc: '',
       args: [],
@@ -390,10 +390,10 @@ class S {
     );
   }
 
-  /// `YY Home Accounts`
+  /// `Accounts`
   String get yy_home_accounts {
     return Intl.message(
-      'YY Home Accounts',
+      'Accounts',
       name: 'yy_home_accounts',
       desc: '',
       args: [],
@@ -1770,10 +1770,10 @@ class S {
     );
   }
 
-  /// `Sundy is able to fly business class to Tokyo worth $4,000 at only $1,488 in YY Home Pay processing fees That is more than 60% in savings!`
+  /// `Sundy is able to fly business class to Tokyo worth $4,000 at only $1,488 in Pay processing fees That is more than 60% in savings!`
   String get info_desc5 {
     return Intl.message(
-      'Sundy is able to fly business class to Tokyo worth \$4,000 at only \$1,488 in YY Home Pay processing fees That is more than 60% in savings!',
+      'Sundy is able to fly business class to Tokyo worth \$4,000 at only \$1,488 in Pay processing fees That is more than 60% in savings!',
       name: 'info_desc5',
       desc: '',
       args: [],
@@ -2720,10 +2720,10 @@ class S {
     );
   }
 
-  /// `You have successfully submitted your application\n\nThe Management may take a few days to process your application\n\nOnce your application is approved you Will be notified via a push notification to the YY Home app\n\nKindly contact the Management if you would like to amend or check the status of your application`
+  /// `You have successfully submitted your application\n\nThe Management may take a few days to process your application\n\nOnce your application is approved you Will be notified via a push notification to the app\n\nKindly contact the Management if you would like to amend or check the status of your application`
   String get estate_upload_success_desc {
     return Intl.message(
-      'You have successfully submitted your application\n\nThe Management may take a few days to process your application\n\nOnce your application is approved you Will be notified via a push notification to the YY Home app\n\nKindly contact the Management if you would like to amend or check the status of your application',
+      'You have successfully submitted your application\n\nThe Management may take a few days to process your application\n\nOnce your application is approved you Will be notified via a push notification to the app\n\nKindly contact the Management if you would like to amend or check the status of your application',
       name: 'estate_upload_success_desc',
       desc: '',
       args: [],
@@ -3000,10 +3000,10 @@ class S {
     );
   }
 
-  /// `YY Home exclusive rates:`
+  /// `Exclusive rates:`
   String get exclusive_rates {
     return Intl.message(
-      'YY Home exclusive rates:',
+      'Exclusive rates:',
       name: 'exclusive_rates',
       desc: '',
       args: [],

+ 6 - 6
packages/cs_resources/lib/l10n/intl_en.arb

@@ -10,7 +10,7 @@
   "password": "Password",
   "login": "Log In",
   "forgot_password": "Forgot Password?",
-  "create_new_yy_home_account": "Create New YY Home Account",
+  "create_new_yy_home_account": "Create New Account",
   "agree_to": "Agree to",
   "terms_of_service": "Terms of Service",
   "forgot_text": "Enter your email and mobile phone number",
@@ -30,11 +30,11 @@
   "you_have": "You have",
   "tries_left": "Tries Left",
   "welcome_name": "Welcome {name}",
-  "sign_up_success_txt1": "You have successfully created an YY Home account",
+  "sign_up_success_txt1": "You have successfully created account",
   "sign_up_success_txt2": "Your username is your email address and please keep your password safe",
   "sign_up_success_txt3": "Now, let's get you connected to your estate and community",
   "get_started": "let's get started",
-  "yy_home_accounts": "YY Home Accounts",
+  "yy_home_accounts": "Accounts",
   "block": "Block",
   "unit_number": "Unit Number",
   "block_desc": "Block refers to the street number of the unit's official mailing address",
@@ -172,7 +172,7 @@
   "info_desc2": "Fly business class for 60% less!",
   "info_desc3": "Sundy pays MCST fees with her credit card to help her accumulate a yearly expenditure of $62,000. Everything adds up!",
   "info_desc4": "Her credit card rewards her 1.5 miles* for every dollar spent, earning her 93,000 miles.",
-  "info_desc5": "Sundy is able to fly business class to Tokyo worth $4,000 at only $1,488 in YY Home Pay processing fees That is more than 60% in savings!",
+  "info_desc5": "Sundy is able to fly business class to Tokyo worth $4,000 at only $1,488 in Pay processing fees That is more than 60% in savings!",
   "info_desc6": "please check your credit card rewardsfor more information",
   "add_new_card": "Add New Card",
   "primary_card": "Primary Card",
@@ -267,7 +267,7 @@
   "send_sms_successful": "Sending SMS successfully, please enter SMS verification code",
   "get_verification_code": "Get Verification Code",
   "thank_you_name": "Thank you {name}",
-  "estate_upload_success_desc": "You have successfully submitted your application\n\nThe Management may take a few days to process your application\n\nOnce your application is approved you Will be notified via a push notification to the YY Home app\n\nKindly contact the Management if you would like to amend or check the status of your application",
+  "estate_upload_success_desc": "You have successfully submitted your application\n\nThe Management may take a few days to process your application\n\nOnce your application is approved you Will be notified via a push notification to the app\n\nKindly contact the Management if you would like to amend or check the status of your application",
   "send_email": "Email",
   "call_phone": "Call",
   "replied": "Replied",
@@ -295,7 +295,7 @@
   "sale": "Sale",
   "rent": "Rent",
   "find_best_loan": "Find the best home loan for you",
-  "exclusive_rates": "YY Home exclusive rates:",
+  "exclusive_rates": "Exclusive rates:",
   "lowest_floating_rate": "Lowest Floating Rate",
   "other_offering": "Check out what others are offering:",
   "floating_rate": "Floating",

+ 6 - 6
packages/cs_resources/lib/l10n/intl_zh_CN.arb

@@ -10,7 +10,7 @@
   "password": "密码",
   "login": "登录",
   "forgot_password": "忘记密码?",
-  "create_new_yy_home_account": "创建新的 YY Home 账户",
+  "create_new_yy_home_account": "创建新的账户",
   "agree_to": "同意",
   "terms_of_service": "服务条款",
   "forgot_text": "请输入您的邮箱和手机号码",
@@ -30,11 +30,11 @@
   "you_have": "你还有",
   "tries_left": "次尝试机会",
   "welcome_name": "欢迎你 {name}",
-  "sign_up_success_txt1": "您已成功创建 YYHome 的帐户",
+  "sign_up_success_txt1": "您已成功创建帐户",
   "sign_up_success_txt2": "您的用户名是您的电子邮件地址,请保护您的密码安全",
   "sign_up_success_txt3": "现在,让我们把你和你的社区关联起来",
   "get_started": "让我们开始吧",
-  "yy_home_accounts": "YY Home 账户",
+  "yy_home_accounts": "账户",
   "block": "街区",
   "unit_number": "单元",
   "block_desc": "街区是指单位官方邮编街道号",
@@ -172,7 +172,7 @@
   "info_desc2": "商务舱便宜60%!",
   "info_desc3": "Sundy用信用卡支付MCST费用,以帮助她积累62000美元的年度支出。一切加起来!",
   "info_desc4": "她的信用卡每消费一美元就奖励她1.5英里*,为她赚取93000英里。",
-  "info_desc5": "Sundy能够乘坐价值4000美元的商务舱前往东京,只需支付1488美元的YY Home Pay处理费,节省了60%以上!",
+  "info_desc5": "Sundy能够乘坐价值4000美元的商务舱前往东京,只需支付1488美元的Pay处理费,节省了60%以上!",
   "info_desc6": "请查看您的信用卡奖励以获取更多信息",
   "add_new_card": "添加新卡",
   "primary_card": "主卡",
@@ -267,7 +267,7 @@
   "send_sms_successful": "发送短信成功,请输入短信验证码",
   "get_verification_code": "获取短信验证码",
   "thank_you_name": "谢谢你 {name}",
-  "estate_upload_success_desc": "您已成功提交申请\n\n管理员可能需要几天时间来处理您的申请\n\n一旦您的申请获得批准,您将通过推送通知YY Home应用程序收到通知\n\n如果您想修改或检查您的申请状态,请联系管理层",
+  "estate_upload_success_desc": "您已成功提交申请\n\n管理员可能需要几天时间来处理您的申请\n\n一旦您的申请获得批准,您将通过推送通知应用程序收到通知\n\n如果您想修改或检查您的申请状态,请联系管理层",
   "send_email": "发送邮件",
   "call_phone": "拨打电话",
   "replied": "已回复",
@@ -295,7 +295,7 @@
   "sale": "售卖",
   "rent": "出租",
   "find_best_loan": "为您找到最好的房贷",
-  "exclusive_rates": "YY Home 独家利率:",
+  "exclusive_rates": "独家利率:",
   "lowest_floating_rate": "最低浮动利率",
   "other_offering": "查看其他机构的报价:",
   "floating_rate": "浮动利率",

+ 6 - 6
packages/cs_resources/lib/l10n/intl_zh_HK.arb

@@ -10,7 +10,7 @@
   "password": "密码",
   "login": "登录",
   "forgot_password": "忘记密码?",
-  "create_new_yy_home_account": "创建新的 YY Home 账户",
+  "create_new_yy_home_account": "创建新的账户",
   "agree_to": "同意",
   "terms_of_service": "服务条款",
   "forgot_text": "请输入您的邮箱和手机号码",
@@ -30,11 +30,11 @@
   "you_have": "你还有",
   "tries_left": "次尝试机会",
   "welcome_name": "欢迎你 {name}",
-  "sign_up_success_txt1": "您已成功创建 YYHome 的帐户",
+  "sign_up_success_txt1": "您已成功创建帐户",
   "sign_up_success_txt2": "您的用户名是您的电子邮件地址,请保护您的密码安全",
   "sign_up_success_txt3": "现在,让我们把你和你的社区关联起来",
   "get_started": "让我们开始吧",
-  "yy_home_accounts": "YY Home 账户",
+  "yy_home_accounts": "账户",
   "block": "街区",
   "unit_number": "单元",
   "block_desc": "街区是指单位官方邮编街道号",
@@ -158,7 +158,7 @@
   "info_desc2": "商务舱便宜60%!",
   "info_desc3": "Sundy用信用卡支付MCST费用,以帮助她积累62000美元的年度支出。一切加起来!",
   "info_desc4": "她的信用卡每消费一美元就奖励她1.5英里*,为她赚取93000英里。",
-  "info_desc5": "Sundy能够乘坐价值4000美元的商务舱前往东京,只需支付1488美元的YY Home Pay处理费,节省了60%以上!",
+  "info_desc5": "Sundy能够乘坐价值4000美元的商务舱前往东京,只需支付1488美元的Pay处理费,节省了60%以上!",
   "info_desc6": "请查看您的信用卡奖励以获取更多信息",
   "add_new_card": "添加新卡",
   "primary_card": "主卡",
@@ -253,7 +253,7 @@
   "send_sms_successful": "发送短信成功,请输入短信验证码",
   "get_verification_code": "获取短信验证码",
   "thank_you_name": "谢谢你 {name}",
-  "estate_upload_success_desc": "您已成功提交申请\n\n管理员可能需要几天时间来处理您的申请\n\n一旦您的申请获得批准,您将通过推送通知YY Home应用程序收到通知\n\n如果您想修改或检查您的申请状态,请联系管理层",
+  "estate_upload_success_desc": "您已成功提交申请\n\n管理员可能需要几天时间来处理您的申请\n\n一旦您的申请获得批准,您将通过推送通知应用程序收到通知\n\n如果您想修改或检查您的申请状态,请联系管理层",
   "send_email": "发送邮件",
   "call_phone": "拨打电话",
   "replied": "已回复",
@@ -281,7 +281,7 @@
   "sale": "售卖",
   "rent": "出租",
   "find_best_loan": "为您找到最好的房贷",
-  "exclusive_rates": "YY Home 独家利率:",
+  "exclusive_rates": "独家利率:",
   "lowest_floating_rate": "最低浮动利率",
   "other_offering": "查看其他机构的报价:",
   "floating_rate": "浮动利率",

+ 15 - 4
packages/cs_resources/lib/theme/app_colors_theme.dart

@@ -35,6 +35,7 @@ class AppColorsTheme extends ThemeExtension<AppColorsTheme> {
   static const _color99A8CA = Color(0xFF99A8CA);
   static const _color0DBE1E= Color(0xFF0DBE1E);
   static const _color05CC67= Color(0xFF05CC67);
+  static const _colorB8BFD9= Color(0x4DB8BFD9);
 
   //暗色主题的一些自定义颜色值
   static const _darkBlackBg = Color(0xFF0F0F0F);
@@ -49,6 +50,7 @@ class AppColorsTheme extends ThemeExtension<AppColorsTheme> {
   final Color backgroundDark; //页面背景颜色(蓝灰蓝)
   final Color backgroundWhite; //页面背景颜色(白色)
   final Color btnBgDefault; //按钮背景颜色
+  final Color btnBgDefaultDark; //按钮背景颜色
   final Color searchFiledBorder; //搜索框的边框颜色
   final Color authFiledHint; //输入框默认的提示文本颜色
   final Color authFiledText; //输入框默认的文本颜色
@@ -82,6 +84,7 @@ class AppColorsTheme extends ThemeExtension<AppColorsTheme> {
   final Color greenBG; //按钮的绿色背景
   final Color textGreen; //按钮的绿色背景
   final Color imageDarkModelWhite; //黑暗模式是白色,亮色模式为null,用于图片 Image 的着色
+  final Color itemBGShadow; //列表Item布局的阴影颜色
 
   // 私有的构造函数
   const AppColorsTheme._internal({
@@ -89,6 +92,7 @@ class AppColorsTheme extends ThemeExtension<AppColorsTheme> {
     required this.backgroundDark,
     required this.backgroundWhite,
     required this.btnBgDefault,
+    required this.btnBgDefaultDark,
     required this.searchFiledBorder,
     required this.authFiledHint,
     required this.authFiledText,
@@ -122,6 +126,7 @@ class AppColorsTheme extends ThemeExtension<AppColorsTheme> {
     required this.greenBG,
     required this.textGreen,
     required this.imageDarkModelWhite,
+    required this.itemBGShadow,
   });
 
   // 浅色主题工厂方法
@@ -131,6 +136,7 @@ class AppColorsTheme extends ThemeExtension<AppColorsTheme> {
       backgroundDark: _colorF2F3F6,
       backgroundWhite: Colors.white,
       btnBgDefault: _colorPrimary,
+      btnBgDefaultDark: _colorPrimary,
       searchFiledBorder: _colorD7DBE7,
       authFiledHint: _colorBDBDBD,
       authFiledText: Colors.black,
@@ -164,6 +170,7 @@ class AppColorsTheme extends ThemeExtension<AppColorsTheme> {
       greenBG: _color0DBE1E,
       textGreen: _color05CC67,
       imageDarkModelWhite: Colors.transparent,
+      itemBGShadow: _colorB8BFD9,
     );
   }
 
@@ -174,6 +181,7 @@ class AppColorsTheme extends ThemeExtension<AppColorsTheme> {
       backgroundDark: _darkBlackBg,
       backgroundWhite: _darkBlackBg,
       btnBgDefault: _darkBlackItem,
+      btnBgDefaultDark: _darkBlackItemLight,
       searchFiledBorder: _darkBlackItem,
       authFiledHint: _colorD7DBE7,
       authFiledText: Colors.white,
@@ -182,7 +190,7 @@ class AppColorsTheme extends ThemeExtension<AppColorsTheme> {
       textBlack: Colors.white,
       textWhite: Colors.black,
       textDarkGray: Colors.white,
-      orangeBG: _darkBlackItem,
+      orangeBG: _darkBlackItemLightMost,
       tabBgSelectedPrimary: Colors.white,
       tabBgUnSelectedPrimary: _darkBlackItem,
       tabTextSelectedPrimary: Colors.black,
@@ -195,9 +203,9 @@ class AppColorsTheme extends ThemeExtension<AppColorsTheme> {
       dividerDefault: _darkBlackItemDivider,
       lightPurpleBg: _darkBlackItemLight,
       lightBlueBg: _darkBlackItem,
-      tabLightBlueShadow: _darkBlackItemLightShadow,
-      tabTextSelectedDefault: Colors.white,
-      tabTextUnSelectedDefault: _darkBlackItemLightMost,
+      tabLightBlueShadow: _color1B61CA,
+      tabTextSelectedDefault: _colorPrimary,
+      tabTextUnSelectedDefault: Colors.white,
       textLightPurple: Colors.white,
       avatarBg: _darkBlackItemLight,
       deleteRed: Colors.white,
@@ -207,6 +215,7 @@ class AppColorsTheme extends ThemeExtension<AppColorsTheme> {
       greenBG: _darkBlackItemLight,
       textGreen: Colors.white,
       imageDarkModelWhite: Colors.white,
+      itemBGShadow: _darkBlackItemLight,
     );
   }
 
@@ -226,6 +235,7 @@ class AppColorsTheme extends ThemeExtension<AppColorsTheme> {
       backgroundDark: Color.lerp(backgroundDark, other.backgroundDark, t)!,
       backgroundWhite: Color.lerp(backgroundWhite, other.backgroundWhite, t)!,
       btnBgDefault: Color.lerp(btnBgDefault, other.btnBgDefault, t)!,
+      btnBgDefaultDark: Color.lerp(btnBgDefaultDark, other.btnBgDefaultDark, t)!,
       searchFiledBorder: Color.lerp(searchFiledBorder, other.searchFiledBorder, t)!,
       authFiledHint: Color.lerp(authFiledHint, other.authFiledHint, t)!,
       authFiledText: Color.lerp(authFiledText, other.authFiledText, t)!,
@@ -259,6 +269,7 @@ class AppColorsTheme extends ThemeExtension<AppColorsTheme> {
       greenBG: Color.lerp(greenBG, other.greenBG, t)!,
       textGreen: Color.lerp(textGreen, other.textGreen, t)!,
       imageDarkModelWhite: Color.lerp(imageDarkModelWhite, other.imageDarkModelWhite, t)!,
+      itemBGShadow: Color.lerp(itemBGShadow, other.itemBGShadow, t)!,
     );
   }
 }

+ 2 - 2
packages/cs_widgets/lib/search_app_bar.dart

@@ -152,13 +152,13 @@ class _SearchAppBarState extends State<SearchAppBar> {
                 border: InputBorder.none,
                 hintText: widget.hintText,
                 hintStyle: TextStyle(
-                  color: widget.textHintColor ?? Color(0xFFAECAE5),
+                  color: DarkThemeUtil.multiColors(context, widget.textHintColor ?? Color(0xFFAECAE5),darkColor: Colors.white),
                   fontSize: 15.0,
                   fontWeight: FontWeight.w400,
                 ),
               ),
               style: TextStyle(
-                color: widget.textColor,
+                color: DarkThemeUtil.multiColors(context, widget.textColor,darkColor: Colors.white),
                 fontSize: 15.0,
                 fontWeight: FontWeight.w400,
               ),

+ 4 - 1
packages/cs_widgets/lib/utils/dark_theme_util.dart

@@ -5,7 +5,8 @@ import 'package:cs_resources/constants/color_constants.dart';
 
 //设置颜色兼容黑色模式
 class DarkThemeUtil {
-  /// 默认黑暗模式下的颜色为[ColorConstants.darkScaffoldBackgroundColor].
+
+  // ===================================  黑暗模式下颜色值的处理  ↓  ===================================
 
   /// 如果想自定义黑暗模式下的颜色
   static Color? multiColors(BuildContext context, Color? lightColor, {Color? darkColor}) {
@@ -18,6 +19,8 @@ class DarkThemeUtil {
     return color;
   }
 
+  // ===================================  黑暗模式下图片相关的处理  ↓  ===================================
+
   /// 默认黑暗模式下的颜色不变.
   /// 如果想自定义黑暗模式下的图标颜色填充颜色就行
   static MyAssetImage multiImageColorFit(BuildContext context, String imgPath, {double? width, double? height, Color? darkColor, BoxFit? fit}) {