class FaceAuditRecordModel {
  dynamic userId;
  String? entCode;
  String? communityId;
  num? status;
  String? doorGroupIds;
  String? id;
  String? residentId;
  String? residentName;
  String? photo;
  num? relation;
  String? houseInfo;
  String? applyTime;
  String? applyMan;
  List<HouseOfFaceAuditRecordModel>? house;
  String? remark;
  dynamic operationName;
  dynamic passCards;
  dynamic doorGroups;
  String? mobile;
  String? updateAt;
  String? auditRemark;
  String? facePassCardForms;
  String? openDoorWay;
  String? unitId;
  String? unitName;
  String? buildId;
  String? buildName;

  FaceAuditRecordModel({
    this.userId,
    this.entCode,
    this.communityId,
    this.status,
    this.doorGroupIds,
    this.id,
    this.residentId,
    this.residentName,
    this.photo,
    this.relation,
    this.houseInfo,
    this.applyTime,
    this.applyMan,
    this.house,
    this.remark,
    this.operationName,
    this.passCards,
    this.doorGroups,
    this.mobile,
    this.updateAt,
    this.auditRemark,
    this.facePassCardForms,
    this.openDoorWay,
    this.unitId,
    this.unitName,
    this.buildId,
    this.buildName,
  });

  FaceAuditRecordModel.fromJson(json) {
    Map<String, dynamic> map = Map.from(json ?? {});

    userId = map['userId'];
    entCode = map['entCode'];
    communityId = map['communityId'];
    status = map['status'];
    doorGroupIds = map['doorGroupIds'];
    id = map['id'];
    residentId = map['residentId'];
    residentName = map['residentName'];
    photo = map['photo'];
    relation = map['relation'];
    houseInfo = map['houseInfo'];
    applyTime = map['applyTime'];
    applyMan = map['applyMan'];
    house = List<HouseOfFaceAuditRecordModel>.from((map["house"] ?? [])
        .map((x) => HouseOfFaceAuditRecordModel.fromJson(x)));
    remark = map['remark'];
    operationName = map['operationName'];
    passCards = map['passCards'];
    doorGroups = map['doorGroups'];
    mobile = map['mobile'];
    updateAt = map['updateAt'];
    auditRemark = map['auditRemark'];
    facePassCardForms = map['facePassCardForms'];
    openDoorWay = map['openDoorWay'];
    unitId = map['unitId'];
    unitName = map['unitName'];
    buildId = map['buildId'];
    buildName = map['buildName'];
  }

  Map<String, dynamic> toJson() {
    Map<String, dynamic> json = Map<String, dynamic>();

    json['userId'] = this.userId;
    json['entCode'] = this.entCode;
    json['communityId'] = this.communityId;
    json['status'] = this.status;
    json['doorGroupIds'] = this.doorGroupIds;
    json['id'] = this.id;
    json['residentId'] = this.residentId;
    json['residentName'] = this.residentName;
    json['photo'] = this.photo;
    json['relation'] = this.relation;
    json['houseInfo'] = this.houseInfo;
    json['applyTime'] = this.applyTime;
    json['applyMan'] = this.applyMan;
    json['house'] = List<dynamic>.from((house ?? []).map((x) => x.toJson()));
    json['remark'] = this.remark;
    json['operationName'] = this.operationName;
    json['passCards'] = this.passCards;
    json['doorGroups'] = this.doorGroups;
    json['mobile'] = this.mobile;
    json['updateAt'] = this.updateAt;
    json['auditRemark'] = this.auditRemark;
    json['facePassCardForms'] = this.facePassCardForms;
    json['openDoorWay'] = this.openDoorWay;
    json['unitId'] = this.unitId;
    json['unitName'] = this.unitName;
    json['buildId'] = this.buildId;
    json['buildName'] = this.buildName;

    return json;
  }
}

class HouseOfFaceAuditRecordModel {
  String? id;
  String? roomNo;
  String? shortName;
  String? communityId;
  String? communityName;
  String? buildId;
  String? buildName;
  String? unitId;
  String? unitName;
  num? houseFloor;
  num? buildArea;
  num? billingArea;
  num? allocationMultiple;
  bool? isDecoration;
  bool? isDelivery;
  bool? isCheckIn;
  bool? isSignSerProtocol;
  num? communalArea;
  num? innerArea;
  UseSituationEnumOfHouseOfFaceAuditRecordModel? useSituationEnum;
  String? useSituation;
  dynamic deliveryAt;
  String? type;
  String? remark;
  dynamic residentName;
  String? propertyCompanyId;
  String? propertyCompanyName;

  HouseOfFaceAuditRecordModel({
    this.id,
    this.roomNo,
    this.shortName,
    this.communityId,
    this.communityName,
    this.buildId,
    this.buildName,
    this.unitId,
    this.unitName,
    this.houseFloor,
    this.buildArea,
    this.billingArea,
    this.allocationMultiple,
    this.isDecoration,
    this.isDelivery,
    this.isCheckIn,
    this.isSignSerProtocol,
    this.communalArea,
    this.innerArea,
    this.useSituationEnum,
    this.useSituation,
    this.deliveryAt,
    this.type,
    this.remark,
    this.residentName,
    this.propertyCompanyId,
    this.propertyCompanyName,
  });

  HouseOfFaceAuditRecordModel.fromJson(json) {
    Map<String, dynamic> map = Map.from(json ?? {});

    id = map['id'];
    roomNo = map['roomNo'];
    shortName = map['shortName'];
    communityId = map['communityId'];
    communityName = map['communityName'];
    buildId = map['buildId'];
    buildName = map['buildName'];
    unitId = map['unitId'];
    unitName = map['unitName'];
    houseFloor = map['houseFloor'];
    buildArea = map['buildArea'];
    billingArea = map['billingArea'];
    allocationMultiple = map['allocationMultiple'];
    isDecoration = map['isDecoration'];
    isDelivery = map['isDelivery'];
    isCheckIn = map['isCheckIn'];
    isSignSerProtocol = map['isSignSerProtocol'];
    communalArea = map['communalArea'];
    innerArea = map['innerArea'];
    useSituationEnum = UseSituationEnumOfHouseOfFaceAuditRecordModel.fromJson(
        map["useSituationEnum"] ?? {});
    useSituation = map['useSituation'];
    deliveryAt = map['deliveryAt'];
    type = map['type'];
    remark = map['remark'];
    residentName = map['residentName'];
    propertyCompanyId = map['propertyCompanyId'];
    propertyCompanyName = map['propertyCompanyName'];
  }

  Map<String, dynamic> toJson() {
    Map<String, dynamic> json = Map<String, dynamic>();

    json['id'] = this.id;
    json['roomNo'] = this.roomNo;
    json['shortName'] = this.shortName;
    json['communityId'] = this.communityId;
    json['communityName'] = this.communityName;
    json['buildId'] = this.buildId;
    json['buildName'] = this.buildName;
    json['unitId'] = this.unitId;
    json['unitName'] = this.unitName;
    json['houseFloor'] = this.houseFloor;
    json['buildArea'] = this.buildArea;
    json['billingArea'] = this.billingArea;
    json['allocationMultiple'] = this.allocationMultiple;
    json['isDecoration'] = this.isDecoration;
    json['isDelivery'] = this.isDelivery;
    json['isCheckIn'] = this.isCheckIn;
    json['isSignSerProtocol'] = this.isSignSerProtocol;
    json['communalArea'] = this.communalArea;
    json['innerArea'] = this.innerArea;
    json['useSituationEnum'] = this.useSituationEnum!.toJson();
    json['useSituation'] = this.useSituation;
    json['deliveryAt'] = this.deliveryAt;
    json['type'] = this.type;
    json['remark'] = this.remark;
    json['residentName'] = this.residentName;
    json['propertyCompanyId'] = this.propertyCompanyId;
    json['propertyCompanyName'] = this.propertyCompanyName;

    return json;
  }
}

class UseSituationEnumOfHouseOfFaceAuditRecordModel {
  String? code;
  String? name;

  UseSituationEnumOfHouseOfFaceAuditRecordModel({
    this.code,
    this.name,
  });

  UseSituationEnumOfHouseOfFaceAuditRecordModel.fromJson(json) {
    Map<String, dynamic> map = Map.from(json ?? {});

    code = map['code'];
    name = map['name'];
  }

  Map<String, dynamic> toJson() {
    Map<String, dynamic> json = Map<String, dynamic>();

    json['code'] = this.code;
    json['name'] = this.name;

    return json;
  }
}
