categoryModel.dart 1.41 KB
Newer Older
yenisleydi committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
// lib/src/models/category_model.dart

class CategoryModel {
  int id;
  int? version;
  String clave;
  String nombre;
  int? fechaCreado;
  String categoria;
  bool? activo;

  CategoryModel({
    required this.id,
    this.version,
    required this.clave,
    required this.nombre,
    this.fechaCreado,
    required this.categoria,
    this.activo,
  });

  // Método para crear una instancia de CategoryModel desde un JSON
  factory CategoryModel.fromJson(Map<String, dynamic> json) => CategoryModel(
    id: json['id'],
    version: json['version'] ?? 0,
    clave: json['clave'] ?? '',
    nombre: json['nombre'] ?? '',
    fechaCreado: json['fechaCreado'],
    categoria: json['categoria'] ?? '',
    activo: json['activo'],
  );

  // Método para convertir una instancia de CategoryModel a JSON
  Map<String, dynamic> toJson() => {
    'id': id,
    'version': version,
    'clave': clave,
    'nombre': nombre,
    'fechaCreado': fechaCreado,
    'categoria': categoria,
    'activo': activo,
  };

  // Método para crear una lista de CategoryModel desde una lista de JSONs
  static List<CategoryModel> fromJsonArray(List<dynamic> json) {
    return json.map((data) => CategoryModel.fromJson(data)).toList();
  }

  // Método para convertir una lista de CategoryModel a una lista de JSONs
  static List<Map<String, dynamic>> toJsonArray(List<CategoryModel> list) {
    return list.map((item) => item.toJson()).toList();
  }
}