basico_model.dart 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. /// Modelo de datos para retener la informacion basica necesaria de todos los modelos
  2. class Basico {
  3. static const String identificadorLocal = "idLocal";
  4. static const String identificadorWeb = "id";
  5. int id;
  6. int idLocal;
  7. DateTime? creado;
  8. DateTime? modificado;
  9. DateTime? eliminado;
  10. Basico({
  11. this.id = 0,
  12. this.idLocal = -1,
  13. this.creado,
  14. this.modificado,
  15. this.eliminado,
  16. });
  17. static parseDate(origen) {
  18. if (origen == "null") return null;
  19. if (origen == null) return null;
  20. if (origen == '') return null;
  21. if (origen == "null") return null;
  22. return DateTime.parse(origen);
  23. }
  24. static double parseDouble(origen) {
  25. if (origen == null) return 0.0;
  26. if (origen == "null") return 0.0;
  27. if (origen == "") return 0.0;
  28. if (origen.runtimeType.toString() == 'double') return origen;
  29. return double.parse(origen.toString());
  30. }
  31. static int parseInt(origen) {
  32. if (origen == null) return 0;
  33. if (origen == "") return 0;
  34. if (origen == "null") return 0;
  35. if (origen.runtimeType.toString() == 'int') return origen;
  36. return int.parse(origen.toString());
  37. }
  38. static String parseString(origen) {
  39. if (origen == "null") return "";
  40. if (origen == null) return "";
  41. if (origen == "") return "";
  42. if (origen == "null") return "";
  43. if (origen.runtimeType.toString() == 'string') return origen;
  44. return origen.toString();
  45. }
  46. static bool parseBolean(origen) {
  47. if (origen == null) return false;
  48. if (origen == "") return false;
  49. if (origen == "null") return false;
  50. if (origen == "false") return false;
  51. if (origen.runtimeType.toString() == 'bool') return origen;
  52. return bool.parse(origen.toString());
  53. }
  54. Map<String, dynamic> toJson() {
  55. return {
  56. 'id': id,
  57. 'idLocal': idLocal,
  58. 'eliminado': eliminado,
  59. };
  60. }
  61. parseJson(Map<String, dynamic> json) {
  62. id = json['id'] != null ? int.parse(json['id'].toString()) : 0;
  63. idLocal = json['idLocal'] ?? -1;
  64. eliminado = parseDate(json['eliminado']);
  65. creado = parseDate(json['creado']);
  66. modificado = parseDate(json['modificado']);
  67. }
  68. }