Selaa lähdekoodia

payment 的 history 的详情

liukai 1 viikko sitten
vanhempi
commit
7937a3b623

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

@@ -41,7 +41,9 @@ class HistoryListScreen extends HookConsumerWidget {
             SliverList(
                 delegate: SliverChildBuilderDelegate(
               (context, index) {
-                return HistoryListItem(index: index, item: state.datas[index]).onTap(() {});
+                return HistoryListItem(index: index, item: state.datas[index]).onTap(() {
+                  viewModel.gotoPaymentDetailPageByType(state.datas[index]);
+                });
               },
               childCount: state.datas.length,
             ))

+ 29 - 0
packages/cpt_payment/lib/modules/payment/history/history_list_view_model.dart

@@ -1,11 +1,14 @@
 import 'package:domain/entity/payment_page_entity.dart';
 import 'package:domain/repository/payment_repository.dart';
+import 'package:plugin_platform/engine/toast/toast_engine.dart';
 import 'package:plugin_platform/http/dio/dio_cancelable_mixin.dart';
 import 'package:riverpod_annotation/riverpod_annotation.dart';
+import 'package:router/componentRouter/component_service_manager.dart';
 import 'package:shared/utils/log_utils.dart';
 import 'package:widgets/load_state_layout.dart';
 import 'package:widgets/widget_export.dart';
 
+import '../../payment_success/payment_success_page.dart';
 import 'history_list_state.dart';
 
 part 'history_list_view_model.g.dart';
@@ -106,4 +109,30 @@ class HistoryListViewModel extends _$HistoryListViewModel with DioCancelableMixi
       }
     }
   }
+
+  //根据类型跳转到详情页面
+  void gotoPaymentDetailPageByType(PaymentPageList data) {
+    switch (data.type) {
+      case 'facility_booking':
+        //设施预定订单
+        ComponentServiceManager().facilityService.startFacilityDetailPage(id: data.orderable?.id ?? "");
+        break;
+      case 'online_form_apply':
+        //在线表单订单
+        ComponentServiceManager().formService.startFormDetailPage(
+          data.orderable?.estateOnlineFormId ?? "",
+          data.orderable?.id ?? "",
+          data.orderable?.onlineFormTypeId ?? "",
+        );
+        break;
+      case 'paid_service_order':
+        //服务订单
+        ToastEngine.show("Service 的订单,自己写路由跳转到支付详情页面");
+        break;
+      default:
+        //默认周期订单的支付 (通用支付页面)
+        PaymentSuccessPage.startWithPop(orderId: data.id);
+        break;
+    }
+  }
 }