my_datas.dart 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  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()
  23. .fromJson(json.decode(response.data.toString()));
  24. commodityCategoryBeanData = entity.data;
  25. print(json.encode(commodityCategoryBeanData));
  26. EventBus().emit('commodity_category');
  27. return commodityCategoryBeanData;
  28. } else {
  29. return commodityCategoryBeanData;
  30. }
  31. }, (error) {
  32. return commodityCategoryBeanData;
  33. });
  34. } else {
  35. return commodityCategoryBeanData;
  36. }
  37. }
  38. Future<void> init(BuildContext context) async {
  39. await getCommodityCategoryBeanData(context);
  40. EventBus().emit('dataComplete');
  41. }
  42. }