# NOTE: This file is auto generated by OpenAPI Generator 7.12.0 (https://openapi-generator.tech). # Do not edit this file manually. defmodule Procore.Model.WebView do @moduledoc """ Project Person """ @derive Jason.Encoder defstruct [ :first_name, :id, :is_employee, :last_name, :user_id, :origin_id, :work_classification, :vendor, :contact, :contact_id, :employee_id, :initials, :avatar, :reference_user, :created_at, :updated_at, :email, :mobile_phone, :business_phone, :job_title, :fax_number, :address, :city, :country_code, :state_code, :zip, :connected, :last_login_at, :welcome_email_sent_at, :erp_integrated_accountant, :permission_template ] @type t :: %__MODULE__{ :first_name => String.t() | nil, :id => integer() | nil, :is_employee => boolean() | nil, :last_name => String.t() | nil, :user_id => integer() | nil, :origin_id => integer() | nil, :work_classification => Procore.Model.ExtendedViewWorkClassification.t() | nil, :vendor => Procore.Model.VendorProjectPersonWeb.t() | nil, :contact => Procore.Model.NormalContact.t() | nil, :contact_id => integer() | nil, :employee_id => String.t() | nil, :initials => String.t() | nil, :avatar => String.t() | nil, :reference_user => boolean() | nil, :created_at => DateTime.t() | nil, :updated_at => DateTime.t() | nil, :email => String.t() | nil, :mobile_phone => String.t() | nil, :business_phone => String.t() | nil, :job_title => String.t() | nil, :fax_number => String.t() | nil, :address => String.t() | nil, :city => String.t() | nil, :country_code => String.t() | nil, :state_code => String.t() | nil, :zip => String.t() | nil, :connected => boolean() | nil, :last_login_at => DateTime.t() | nil, :welcome_email_sent_at => DateTime.t() | nil, :erp_integrated_accountant => boolean() | nil, :permission_template => Procore.Model.WebViewPermissionTemplate.t() | nil } alias Procore.Deserializer def decode(value) do value |> Deserializer.deserialize( :work_classification, :struct, Procore.Model.ExtendedViewWorkClassification ) |> Deserializer.deserialize(:vendor, :struct, Procore.Model.VendorProjectPersonWeb) |> Deserializer.deserialize(:contact, :struct, Procore.Model.NormalContact) |> Deserializer.deserialize(:created_at, :datetime, nil) |> Deserializer.deserialize(:updated_at, :datetime, nil) |> Deserializer.deserialize(:last_login_at, :datetime, nil) |> Deserializer.deserialize(:welcome_email_sent_at, :datetime, nil) |> Deserializer.deserialize( :permission_template, :struct, Procore.Model.WebViewPermissionTemplate ) end end