/*
 * This file is generated by jOOQ.
 */
package ervu_dashboard.ervu_dashboard.db_beans.public_.tables.records;


import ervu_dashboard.ervu_dashboard.db_beans.public_.tables.Citizen;

import java.sql.Date;
import java.util.UUID;

import org.jooq.Record1;
import org.jooq.impl.UpdatableRecordImpl;


/**
 * This class is generated by jOOQ.
 */
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
public class CitizenRecord extends UpdatableRecordImpl<CitizenRecord> {

    private static final long serialVersionUID = 1L;

    /**
     * Setter for <code>public.citizen.id_ERN</code>.
     */
    public void setIdErn(String value) {
        set(0, value);
    }

    /**
     * Getter for <code>public.citizen.id_ERN</code>.
     */
    public String getIdErn() {
        return (String) get(0);
    }

    /**
     * Setter for <code>public.citizen.fio</code>.
     */
    public void setFio(String value) {
        set(1, value);
    }

    /**
     * Getter for <code>public.citizen.fio</code>.
     */
    public String getFio() {
        return (String) get(1);
    }

    /**
     * Setter for <code>public.citizen.residence</code>.
     */
    public void setResidence(String value) {
        set(2, value);
    }

    /**
     * Getter for <code>public.citizen.residence</code>.
     */
    public String getResidence() {
        return (String) get(2);
    }

    /**
     * Setter for <code>public.citizen.age</code>.
     */
    public void setAge(String value) {
        set(3, value);
    }

    /**
     * Getter for <code>public.citizen.age</code>.
     */
    public String getAge() {
        return (String) get(3);
    }

    /**
     * Setter for <code>public.citizen.recruitment</code>.
     */
    public void setRecruitment(String value) {
        set(4, value);
    }

    /**
     * Getter for <code>public.citizen.recruitment</code>.
     */
    public String getRecruitment() {
        return (String) get(4);
    }

    /**
     * Setter for <code>public.citizen.recruitment_id</code>.
     */
    public void setRecruitmentId(UUID value) {
        set(5, value);
    }

    /**
     * Getter for <code>public.citizen.recruitment_id</code>.
     */
    public UUID getRecruitmentId() {
        return (UUID) get(5);
    }

    /**
     * Setter for <code>public.citizen.gender_id</code>.
     */
    public void setGenderId(Long value) {
        set(6, value);
    }

    /**
     * Getter for <code>public.citizen.gender_id</code>.
     */
    public Long getGenderId() {
        return (Long) get(6);
    }

    /**
     * Setter for <code>public.citizen.marital_status_id</code>.
     */
    public void setMaritalStatusId(Long value) {
        set(7, value);
    }

    /**
     * Getter for <code>public.citizen.marital_status_id</code>.
     */
    public Long getMaritalStatusId() {
        return (Long) get(7);
    }

    /**
     * Setter for <code>public.citizen.education_id</code>.
     */
    public void setEducationId(Long value) {
        set(8, value);
    }

    /**
     * Getter for <code>public.citizen.education_id</code>.
     */
    public Long getEducationId() {
        return (Long) get(8);
    }

    /**
     * Setter for <code>public.citizen.employment_id</code>.
     */
    public void setEmploymentId(Long value) {
        set(9, value);
    }

    /**
     * Getter for <code>public.citizen.employment_id</code>.
     */
    public Long getEmploymentId() {
        return (Long) get(9);
    }

    /**
     * Setter for <code>public.citizen.urgent_service</code>.
     */
    public void setUrgentService(Boolean value) {
        set(10, value);
    }

    /**
     * Getter for <code>public.citizen.urgent_service</code>.
     */
    public Boolean getUrgentService() {
        return (Boolean) get(10);
    }

    /**
     * Setter for <code>public.citizen.contract_service</code>.
     */
    public void setContractService(Boolean value) {
        set(11, value);
    }

    /**
     * Getter for <code>public.citizen.contract_service</code>.
     */
    public Boolean getContractService() {
        return (Boolean) get(11);
    }

    /**
     * Setter for <code>public.citizen.mobilization</code>.
     */
    public void setMobilization(Boolean value) {
        set(12, value);
    }

    /**
     * Getter for <code>public.citizen.mobilization</code>.
     */
    public Boolean getMobilization() {
        return (Boolean) get(12);
    }

    /**
     * Setter for <code>public.citizen.is_registered</code>.
     */
    public void setIsRegistered(Boolean value) {
        set(13, value);
    }

    /**
     * Getter for <code>public.citizen.is_registered</code>.
     */
    public Boolean getIsRegistered() {
        return (Boolean) get(13);
    }

    /**
     * Setter for <code>public.citizen.reason_registration_id</code>.
     */
    public void setReasonRegistrationId(Integer value) {
        set(14, value);
    }

    /**
     * Getter for <code>public.citizen.reason_registration_id</code>.
     */
    public Integer getReasonRegistrationId() {
        return (Integer) get(14);
    }

    /**
     * Setter for <code>public.citizen.issue_date</code>.
     */
    public void setIssueDate(Date value) {
        set(15, value);
    }

    /**
     * Getter for <code>public.citizen.issue_date</code>.
     */
    public Date getIssueDate() {
        return (Date) get(15);
    }

    /**
     * Setter for <code>public.citizen.passport_series</code>.
     */
    public void setPassportSeries(String value) {
        set(16, value);
    }

    /**
     * Getter for <code>public.citizen.passport_series</code>.
     */
    public String getPassportSeries() {
        return (String) get(16);
    }

    /**
     * Setter for <code>public.citizen.passport_number</code>.
     */
    public void setPassportNumber(String value) {
        set(17, value);
    }

    /**
     * Getter for <code>public.citizen.passport_number</code>.
     */
    public String getPassportNumber() {
        return (String) get(17);
    }

    /**
     * Setter for <code>public.citizen.number_children</code>.
     */
    public void setNumberChildren(Integer value) {
        set(18, value);
    }

    /**
     * Getter for <code>public.citizen.number_children</code>.
     */
    public Integer getNumberChildren() {
        return (Integer) get(18);
    }

    /**
     * Setter for <code>public.citizen.phone</code>.
     */
    public void setPhone(String value) {
        set(19, value);
    }

    /**
     * Getter for <code>public.citizen.phone</code>.
     */
    public String getPhone() {
        return (String) get(19);
    }

    // -------------------------------------------------------------------------
    // Primary key information
    // -------------------------------------------------------------------------

    @Override
    public Record1<String> key() {
        return (Record1) super.key();
    }

    // -------------------------------------------------------------------------
    // Constructors
    // -------------------------------------------------------------------------

    /**
     * Create a detached CitizenRecord
     */
    public CitizenRecord() {
        super(Citizen.CITIZEN);
    }

    /**
     * Create a detached, initialised CitizenRecord
     */
    public CitizenRecord(String idErn, String fio, String residence, String age, String recruitment, UUID recruitmentId, Long genderId, Long maritalStatusId, Long educationId, Long employmentId, Boolean urgentService, Boolean contractService, Boolean mobilization, Boolean isRegistered, Integer reasonRegistrationId, Date issueDate, String passportSeries, String passportNumber, Integer numberChildren, String phone) {
        super(Citizen.CITIZEN);

        setIdErn(idErn);
        setFio(fio);
        setResidence(residence);
        setAge(age);
        setRecruitment(recruitment);
        setRecruitmentId(recruitmentId);
        setGenderId(genderId);
        setMaritalStatusId(maritalStatusId);
        setEducationId(educationId);
        setEmploymentId(employmentId);
        setUrgentService(urgentService);
        setContractService(contractService);
        setMobilization(mobilization);
        setIsRegistered(isRegistered);
        setReasonRegistrationId(reasonRegistrationId);
        setIssueDate(issueDate);
        setPassportSeries(passportSeries);
        setPassportNumber(passportNumber);
        setNumberChildren(numberChildren);
        setPhone(phone);
        resetChangedOnNotNull();
    }
}
