diff --git a/client/lib/models/inventory.dart b/client/lib/models/inventory.dart index ddb418b..c9a6407 100644 --- a/client/lib/models/inventory.dart +++ b/client/lib/models/inventory.dart @@ -23,20 +23,24 @@ class Inventory { required this.quantity, }); - factory Inventory.fromJson(Map json) => Inventory( - warehouseId: (json['warehouse_id'] as num).toInt(), - warehouseName: json['warehouse_name'] as String?, - productId: (json['product_id'] as num).toInt(), - productName: json['product_name'] as String?, - productCode: json['product_code'] as String?, - productSpec: json['product_spec'] as String?, - productUnit: json['product_unit'] as String?, - productBrand: json['product_brand'] as String?, - minStock: json['min_stock'] != null - ? (json['min_stock'] as num).toInt() - : null, - quantity: (json['quantity'] as num).toDouble(), - ); + factory Inventory.fromJson(Map json) { + final warehouse = json['warehouse'] as Map?; + final product = json['product'] as Map?; + return Inventory( + warehouseId: (json['warehouse_id'] as num).toInt(), + warehouseName: warehouse?['name'] as String?, + productId: (json['product_id'] as num).toInt(), + productName: product?['name'] as String?, + productCode: product?['code'] as String?, + productSpec: product?['spec'] as String?, + productUnit: product?['unit'] as String?, + productBrand: product?['brand'] as String?, + minStock: product?['min_stock'] != null + ? (product!['min_stock'] as num).toInt() + : null, + quantity: (json['quantity'] as num).toDouble(), + ); + } } class InventoryLog { @@ -68,9 +72,9 @@ class InventoryLog { factory InventoryLog.fromJson(Map json) => InventoryLog( warehouseId: (json['warehouse_id'] as num).toInt(), - warehouseName: json['warehouse_name'] as String?, + warehouseName: (json['warehouse'] as Map?)?['name'] as String?, productId: (json['product_id'] as num).toInt(), - productName: json['product_name'] as String?, + productName: (json['product'] as Map?)?['name'] as String?, direction: json['direction'] as String, quantity: (json['quantity'] as num).toDouble(), qtyBefore: json['qty_before'] != null