my_datas.dart 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. import 'dart:convert';
  2. import 'package:bbyyy/beans/commodity_category_bean_entity.dart';
  3. import 'package:bbyyy/https/MyDio.dart';
  4. import 'package:flutter/cupertino.dart';
  5. import 'package:bbyyy/my_tools/event_bus.dart';
  6. class MyData {
  7. MyData._internal();
  8. static MyData _singleton = MyData._internal();
  9. factory MyData() => _singleton;
  10. List<CommodityCategoryBeanData> commodityCategoryBeanData;
  11. Future<List<CommodityCategoryBeanData>> getCommodityCategoryBeanData(
  12. BuildContext context) async {
  13. if (commodityCategoryBeanData == null) {
  14. MyDio().query({
  15. "key": "commodity_category",
  16. "filters": {},
  17. "dims": [
  18. "name",
  19. ]
  20. }, (response, hasError) {
  21. if (!hasError) {
  22. CommodityCategoryBeanEntity entity = CommodityCategoryBeanEntity.fromJson(json.decode(response.data.toString()));
  23. commodityCategoryBeanData = entity.data;
  24. print(json.encode(commodityCategoryBeanData));
  25. EventBus().emit('commodity_category');
  26. return commodityCategoryBeanData;
  27. } else {
  28. return commodityCategoryBeanData;
  29. }
  30. }, (error) {
  31. return commodityCategoryBeanData;
  32. });
  33. } else {
  34. return commodityCategoryBeanData;
  35. }
  36. }
  37. Future<void> init(BuildContext context) async {
  38. await getCommodityCategoryBeanData(context);
  39. EventBus().emit('dataComplete');
  40. }
  41. }