123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. import 'package:farmer_client/pages/order/widgets/index.dart';
  2. import 'package:flutter/material.dart';
  3. import 'package:get/get.dart';
  4. import 'package:farmer_client/models/entities/OrderInfoModel.dart';
  5. import 'package:farmer_client/services/orderAPI.dart';
  6. import 'package:farmer_client/widgets/OrderListCard.dart';
  7. import 'package:farmer_client/widgets/layout/BasicPage.dart';
  8. import 'package:farmer_client/widgets/RefreshMoreList.dart';
  9. class OrderPage extends BasicPage {
  10. OrderPage({Key? key}) : super(key: key) {
  11. tabIndex = 1;
  12. naviTitle = '订单';
  13. }
  14. final orderList = Rx<List<OrderInfoModel>>([]);
  15. final params = Rx<Map<String, dynamic>>({'pageSize': 10, 'mine': true});
  16. Function? Refresh;
  17. List<OrderInfoModel> GetList(value) {
  18. List<OrderInfoModel> list = [];
  19. if (value != null)
  20. value.forEach((item) => {list.add(OrderInfoModel.fromJson(item))});
  21. return list;
  22. }
  23. @override
  24. Widget builder(BuildContext context) {
  25. return Column(
  26. children: [
  27. const OrderHead(),
  28. Expanded(
  29. child: RefreshMoreList(
  30. pPrams: params,
  31. cardText: '您还没有新的订单',
  32. fetch: getOrderList,
  33. useState: (state) {
  34. orderList(GetList(state));
  35. },
  36. builder: (
  37. {required BuildContext context, required Function toggle}) {
  38. Refresh = toggle;
  39. return Obx(
  40. () => Column(
  41. children: orderList.value
  42. .map(
  43. (item) => OrderListCard(item: item),
  44. )
  45. .toList(),
  46. ),
  47. );
  48. },
  49. ),
  50. ),
  51. ],
  52. );
  53. }
  54. }