_query.dart 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. import 'package:chicken_farm/core/api/api_service.dart';
  2. import 'package:chicken_farm/modes/breeding/batch.dart';
  3. import 'package:chicken_farm/modes/breeding/chicken.dart';
  4. import 'package:chicken_farm/modes/breeding/family.dart';
  5. import 'package:chicken_farm/modes/api/page_model.dart';
  6. class BreedQueryApi {
  7. static final BreedQueryApi _instance = BreedQueryApi._internal();
  8. factory BreedQueryApi() => _instance;
  9. BreedQueryApi._internal();
  10. static final String apiPrefix = '/app/breeding';
  11. Future<PageResultModel<BatchModel>> queryPageBatchs(dynamic query) async {
  12. final result = await ApiService().get(
  13. '$apiPrefix/listBatch',
  14. queryParameters: query,
  15. );
  16. if (result.success) {
  17. final List<BatchModel> rows = (result.data['rows'] as List)
  18. .map((e) => BatchModel.fromJson(e))
  19. .toList();
  20. return PageResultModel<BatchModel>(
  21. rows: rows,
  22. total: result.data['total'],
  23. );
  24. }
  25. return PageResultModel.empty();
  26. }
  27. Future<PageResultModel<FamilyModel>> queryPageFamilys(dynamic query) async {
  28. final result = await ApiService().get(
  29. '$apiPrefix/listFamily',
  30. queryParameters: query,
  31. );
  32. if (result.success) {
  33. final List<FamilyModel> rows = (result.data['rows'] as List)
  34. .map((e) => FamilyModel.fromJson(e))
  35. .toList();
  36. return PageResultModel<FamilyModel>(
  37. rows: rows,
  38. total: result.data['total'],
  39. );
  40. }
  41. return PageResultModel.empty();
  42. }
  43. Future<ChickenModel?> queryChicken(String electronicId) async {
  44. final result = await ApiService().get(
  45. '$apiPrefix/getChicken/$electronicId',
  46. );
  47. if (result.success && result.data != null) {
  48. return ChickenModel.fromJson(result.data);
  49. } else {
  50. return null;
  51. }
  52. }
  53. }