controller.dart 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. import 'package:electronic_assistant/base/base_controller.dart';
  2. import 'package:electronic_assistant/data/bean/payment_way.dart';
  3. import 'package:electronic_assistant/data/repositories/store_repository.dart';
  4. import 'package:get/get.dart';
  5. import '../../data/bean/store_item.dart';
  6. class StoreController extends BaseController {
  7. final isExpanded = false.obs;
  8. final RxList<StoreItem> storeItems = <StoreItem>[].obs;
  9. final RxList<PaymentWay> paymentWays = <PaymentWay>[].obs;
  10. final Rxn<StoreItem> currentSelectedStoreItem = Rxn<StoreItem>();
  11. final Rxn<PaymentWay> currentSelectedPaymentWay = Rxn<PaymentWay>();
  12. final RxBool isPaymentWayExpanded = false.obs;
  13. @override
  14. void onInit() {
  15. super.onInit();
  16. initStoreIndexData();
  17. }
  18. void initStoreIndexData() {
  19. storeRepository.storeIndex().then((indexData) {
  20. storeItems.clear();
  21. storeItems.addAll(indexData.items);
  22. currentSelectedStoreItem.value =
  23. storeItems.isNotEmpty ? storeItems.first : null;
  24. paymentWays.clear();
  25. paymentWays.addAll(indexData.paymentWays);
  26. currentSelectedPaymentWay.value =
  27. paymentWays.isNotEmpty ? paymentWays.first : null;
  28. });
  29. }
  30. onStoreItemClick(StoreItem storeItem) {
  31. currentSelectedStoreItem.value = storeItem;
  32. }
  33. void onPaymentWayItemClick(PaymentWay paymentWay) {
  34. currentSelectedPaymentWay.value = paymentWay;
  35. }
  36. onBuyClick() {}
  37. }