error_handler.dart 1000 B

1234567891011121314151617181920212223242526272829303132333435
  1. import 'package:electronic_assistant/utils/http_handler.dart';
  2. import 'package:electronic_assistant/utils/toast_util.dart';
  3. import 'package:get/get.dart';
  4. import '../data/consts/error_code.dart';
  5. import '../resource/string.gen.dart';
  6. class ErrorHandler {
  7. ErrorHandler._();
  8. static void toastError(dynamic error, {String? message}) {
  9. String toastMessage = (error is ServerErrorException)
  10. ? _getToastMessageFromError(error)
  11. : _getDefaultToastMessage(message);
  12. ToastUtil.showToast(toastMessage);
  13. }
  14. static String _getToastMessageFromError(ServerErrorException error) {
  15. return getErrorCodeMsg(error.code) ?? StringName.networkError.tr;
  16. }
  17. static String? getErrorCodeMsg(int? code) {
  18. String? msg;
  19. switch (code) {
  20. case ErrorCode.errorCodeNoLogin:
  21. msg = StringName.errorCodeNoLogin.tr;
  22. break;
  23. }
  24. return msg;
  25. }
  26. static String _getDefaultToastMessage(String? message) {
  27. return message ?? StringName.networkError.tr;
  28. }
  29. }