data_detail.dart 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. import 'package:app_business/service/abase.dart';
  2. import 'package:app_business/service/api.dart';
  3. import 'package:track_common/view/home/data_detail/data_detail_controller.dart';
  4. export 'package:track_common/view/home/data_detail/data_detail.dart';
  5. export 'package:track_common/view/home/data_detail/data_detail_controller.dart';
  6. class DataDetailControllerImpl extends DataDetailController {
  7. ApiService get api => Get.find();
  8. @override
  9. Future<List<int>> getHistoryDetail(int gameId) async {
  10. final r =
  11. await api.stub.toHistoryGameDetail(IdRequest()..id = Int64(gameId));
  12. return r.writeToBuffer();
  13. }
  14. @override
  15. Future<List<UserDetail>> getUserList(int mapId) async {
  16. final r =
  17. await api.stub.toHistoryUserListQuery(IdRequest()..id = Int64(mapId));
  18. return r.list
  19. .map((e) => UserDetail()
  20. ..id = e.oId
  21. ..name = e.oName
  22. ..history = e.list
  23. .map((e2) => UserHistorySimple()
  24. ..gameId = e2.gameId
  25. ..routeName = e2.courseName
  26. ..eventName = e2.actName
  27. ..duration = e2.duration.toModel()
  28. ..startAt = e2.startAt.toModel())
  29. .toList())
  30. .toList();
  31. }
  32. }