// To parse this JSON data, do
//
//     final propertyInfo = propertyInfoFromJson(jsonString);

import 'dart:convert';

PropertyInfo propertyInfoFromJson(String str) =>
    PropertyInfo.fromJson(json.decode(str));

String propertyInfoToJson(PropertyInfo data) => json.encode(data.toJson());

class PropertyInfo {
  final int? id;
  final String? assessedById;
  final String? assessedByName;
  final DateTime? dateCreated;
  final DateTime? dateModified;
  final String? transCode;
  final String? tdn;
  final String? pin;
  final String? owner;
  final String? address;
  final String? telno;
  final String? tin;
  final String? adminUser;
  final String? adminAddress;
  final String? adminTelno;
  final String? adminTin;
  final String? faasType;

  PropertyInfo({
    this.id,
    this.assessedById,
    this.assessedByName,
    this.dateCreated,
    this.dateModified,
    this.transCode,
    this.tdn,
    this.pin,
    this.owner,
    this.address,
    this.telno,
    this.tin,
    this.adminUser,
    this.adminAddress,
    this.adminTelno,
    this.adminTin,
    this.faasType,
  });

  factory PropertyInfo.fromJson(Map<String, dynamic> json) => PropertyInfo(
        id: json["id"],
        assessedById: json["assessed_by_id"],
        assessedByName: json["assessed_by_name"],
        dateCreated: json["date_created"] == null
            ? null
            : DateTime.parse(json["date_created"]),
        dateModified: json["date_modified"] == null
            ? null
            : DateTime.parse(json["date_modified"]),
        transCode: json["trans_code"],
        tdn: json["tdn"],
        pin: json["pin"],
        owner: json["owner"],
        address: json["address"],
        telno: json["telno"],
        tin: json["tin"],
        adminUser: json["admin_user"],
        adminAddress: json["admin_address"],
        adminTelno: json["admin_telno"],
        adminTin: json["admin_tin"],
        faasType: json["faas_type"],
      );

  Map<String, dynamic> toJson() => {
        "id": id,
        "assessed_by_id": assessedById,
        "assessed_by_name": assessedByName,
        "date_created": dateCreated?.toIso8601String(),
        "date_modified": dateModified?.toIso8601String(),
        "trans_code": transCode,
        "tdn": tdn,
        "pin": pin,
        "owner": owner,
        "address": address,
        "telno": telno,
        "tin": tin,
        "admin_user": adminUser,
        "admin_address": adminAddress,
        "admin_telno": adminTelno,
        "admin_tin": adminTin,
        "faas_type": faasType,
      };
}
