status_card_item_vm.dart 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. import 'package:flutter/cupertino.dart';
  2. import 'package:flutter/material.dart';
  3. import 'package:riverpod_annotation/riverpod_annotation.dart';
  4. import 'package:router/ext/auto_router_extensions.dart';
  5. import 'package:shared/utils/log_utils.dart';
  6. import '../../../respository/services_respository.dart';
  7. import '../constants_services.dart';
  8. import '../modules/services/service_evaluate_create/service_evaluate_create_page.dart';
  9. part 'status_card_item_vm.g.dart';
  10. @riverpod
  11. class StatusCardItemVm extends _$StatusCardItemVm {
  12. late ServicesRespository serviceRespositoryInstance;
  13. late int _serviceId;
  14. late Map<String, dynamic> _serviceType;
  15. late Map<String, dynamic> _serviceStatus;
  16. late int _serviceTypeCode;
  17. initState(){
  18. Log.d("--------------------------initState---------------------");
  19. return null;
  20. }
  21. @override
  22. build(){
  23. // 引入数据仓库
  24. // serviceRespositoryInstance = ref.read(servicesRespositoryProvider);
  25. final state = initState();
  26. Log.d("--------------------------build---------------------");
  27. return state;
  28. }
  29. // void changeLoadingState(LoadState loadState, String? errorMsg) {
  30. // state = state.copyWith(
  31. // loadingState: loadState,
  32. // errorMessage: errorMsg
  33. // );
  34. // }
  35. setInitData(BuildContext context,int serviceId, Map<String, dynamic> serviceType, Map<String, dynamic> serviceStatus){
  36. _serviceId = serviceId;
  37. _serviceType = serviceType;
  38. _serviceStatus = serviceStatus;
  39. _serviceTypeCode = serviceType['code']!;
  40. }
  41. handlerClickActionBtn(BuildContext context, Map<String, dynamic> actionBtn){
  42. final actionBtnCode = actionBtn['code']!.toString();
  43. switch (actionBtnCode) {
  44. case '0':
  45. // context.router.pushNamed('/detail');
  46. break;
  47. case '1':
  48. // context.router.pushNamed('/detail');
  49. break;
  50. case '2':
  51. // context.router.pushNamed('/detail');
  52. break;
  53. case '3':
  54. // context.router.pushNamed('/detail');
  55. break;
  56. case '4':
  57. // 去评价
  58. // context.router.pushNamed('/detail');
  59. ServiceEvaluateCreatePage.startInstance(id: _serviceId, serviceTypeCode: _serviceTypeCode,);
  60. break;
  61. default:
  62. break;
  63. }
  64. }
  65. }