import 'package:test_sa/models/gas_refill/gas_refill_details.dart';
import 'package:test_sa/models/lookup.dart';

class GasRefillModel{
  int id;
  //String userId;
  String clientName;
  String title;
  Lookup status;
  List<GasRefillDetails> details;

  GasRefillModel({
    this.id,
    //this.userId,
    this.clientName,
    this.title,
    this.status,
    this.details,
  });

  bool validate(){
    if(title == null) return false;
    if(status == null) return false;
    if(details == null && details.isEmpty) return false;
    return true;
  }

  fromGasRefillModel(GasRefillModel model){
    id = model.id;
    //userId = model.userId;
    clientName = model.clientName;
    title = model.title;
    status = Lookup.fromStatus(model.status);
    details = model.details.map((e) => GasRefillDetails.fromDetails(e)).toList();
  }

  factory GasRefillModel.fromJson(Map<String,dynamic> parsedJson){
    List<GasRefillDetails> details = [];
    if(parsedJson["gazRefillDetails"] != null){
      List list = parsedJson["gazRefillDetails"];
      details = list.map((e) => GasRefillDetails.fromJson(e)).toList();
    }
    return GasRefillModel(
      id: parsedJson["id"],
      //userId: parsedJson["uid"],
      title: parsedJson["gazRefillNo"],
      clientName: parsedJson["site"] == null ? null:
      parsedJson["site"]["custName"],
      status: Lookup.fromJson(parsedJson["status"]),
      details: details,
    );
  }
}

