basico_model.dart 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  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. String id;
  6. int idLocal;
  7. DateTime? creado;
  8. DateTime? modificado;
  9. DateTime? eliminado;
  10. Basico({
  11. this.id = '',
  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 == false) return 0;
  36. if (origen == true) return 1;
  37. if (origen.runtimeType.toString() == 'int') return origen;
  38. return int.parse(origen.toString());
  39. }
  40. static String parseString(origen) {
  41. if (origen == "null") return "";
  42. if (origen == null) return "";
  43. if (origen == "") return "";
  44. if (origen == "null") return "";
  45. if (origen.runtimeType.toString() == 'string') return origen;
  46. return origen.toString();
  47. }
  48. static bool parseBolean(origen) {
  49. if (origen == null) return false;
  50. if (origen == "") return false;
  51. if (origen == "null") return false;
  52. if (origen == "false") return false;
  53. if (origen.runtimeType.toString() == 'bool') return origen;
  54. return bool.parse(origen.toString());
  55. }
  56. Map<String, dynamic> toJson() {
  57. return {
  58. 'id': id,
  59. 'idLocal': idLocal,
  60. 'eliminado': eliminado,
  61. };
  62. }
  63. parseJson(Map<String, dynamic> json) {
  64. id = json['id'] ?? '';
  65. idLocal = json['idLocal'] ?? -1;
  66. eliminado = parseDate(json['eliminado']);
  67. creado = parseDate(json['creado']);
  68. modificado = parseDate(json['modificado']);
  69. }
  70. }