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


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

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

import ru.micord.ervu_dashboard.db_beans.ervu_dashboard.tables.CitizenWorkActivity;


/**
 * Сведения о трудовой деятельности
 */
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
public class CitizenWorkActivityRecord extends UpdatableRecordImpl<CitizenWorkActivityRecord> {

    private static final long serialVersionUID = 1L;

    /**
     * Setter for
     * <code>ervu_dashboard.citizen_work_activity.citizen_work_activity_id</code>.
     */
    public void setCitizenWorkActivityId(Long value) {
        set(0, value);
    }

    /**
     * Getter for
     * <code>ervu_dashboard.citizen_work_activity.citizen_work_activity_id</code>.
     */
    public Long getCitizenWorkActivityId() {
        return (Long) get(0);
    }

    /**
     * Setter for <code>ervu_dashboard.citizen_work_activity.place_work</code>.
     * Место работы
     */
    public void setPlaceWork(String value) {
        set(1, value);
    }

    /**
     * Getter for <code>ervu_dashboard.citizen_work_activity.place_work</code>.
     * Место работы
     */
    public String getPlaceWork() {
        return (String) get(1);
    }

    /**
     * Setter for
     * <code>ervu_dashboard.citizen_work_activity.employer_category</code>.
     * Категория работодателя
     */
    public void setEmployerCategory(String value) {
        set(2, value);
    }

    /**
     * Getter for
     * <code>ervu_dashboard.citizen_work_activity.employer_category</code>.
     * Категория работодателя
     */
    public String getEmployerCategory() {
        return (String) get(2);
    }

    /**
     * Setter for
     * <code>ervu_dashboard.citizen_work_activity.organization_name</code>.
     * Наименование организации
     */
    public void setOrganizationName(String value) {
        set(3, value);
    }

    /**
     * Getter for
     * <code>ervu_dashboard.citizen_work_activity.organization_name</code>.
     * Наименование организации
     */
    public String getOrganizationName() {
        return (String) get(3);
    }

    /**
     * Setter for <code>ervu_dashboard.citizen_work_activity.inn</code>. ИНН /
     * ИНН ФЛ
     */
    public void setInn(String value) {
        set(4, value);
    }

    /**
     * Getter for <code>ervu_dashboard.citizen_work_activity.inn</code>. ИНН /
     * ИНН ФЛ
     */
    public String getInn() {
        return (String) get(4);
    }

    /**
     * Setter for <code>ervu_dashboard.citizen_work_activity.recruit_id</code>.
     * ссылка на гражданина (citizen)
     */
    public void setRecruitId(UUID value) {
        set(5, value);
    }

    /**
     * Getter for <code>ervu_dashboard.citizen_work_activity.recruit_id</code>.
     * ссылка на гражданина (citizen)
     */
    public UUID getRecruitId() {
        return (UUID) get(5);
    }

    /**
     * Setter for <code>ervu_dashboard.citizen_work_activity.ogrn</code>. ОГРН /
     * ОГРНИП
     */
    public void setOgrn(String value) {
        set(6, value);
    }

    /**
     * Getter for <code>ervu_dashboard.citizen_work_activity.ogrn</code>. ОГРН /
     * ОГРНИП
     */
    public String getOgrn() {
        return (String) get(6);
    }

    /**
     * Setter for <code>ervu_dashboard.citizen_work_activity.kpp</code>. КПП
     */
    public void setKpp(String value) {
        set(7, value);
    }

    /**
     * Getter for <code>ervu_dashboard.citizen_work_activity.kpp</code>. КПП
     */
    public String getKpp() {
        return (String) get(7);
    }

    /**
     * Setter for
     * <code>ervu_dashboard.citizen_work_activity.organization_address</code>.
     * Адрес организации
     */
    public void setOrganizationAddress(String value) {
        set(8, value);
    }

    /**
     * Getter for
     * <code>ervu_dashboard.citizen_work_activity.organization_address</code>.
     * Адрес организации
     */
    public String getOrganizationAddress() {
        return (String) get(8);
    }

    /**
     * Setter for
     * <code>ervu_dashboard.citizen_work_activity.employer_status</code>. Статус
     * работодателя
     */
    public void setEmployerStatus(String value) {
        set(9, value);
    }

    /**
     * Getter for
     * <code>ervu_dashboard.citizen_work_activity.employer_status</code>. Статус
     * работодателя
     */
    public String getEmployerStatus() {
        return (String) get(9);
    }

    /**
     * Setter for
     * <code>ervu_dashboard.citizen_work_activity.type_separate_division</code>.
     * Тип обособленного подразделения работодателя
     */
    public void setTypeSeparateDivision(String value) {
        set(10, value);
    }

    /**
     * Getter for
     * <code>ervu_dashboard.citizen_work_activity.type_separate_division</code>.
     * Тип обособленного подразделения работодателя
     */
    public String getTypeSeparateDivision() {
        return (String) get(10);
    }

    /**
     * Setter for
     * <code>ervu_dashboard.citizen_work_activity.address_separate_division</code>.
     * Адрес обособленного структурного подразделения работодателя
     */
    public void setAddressSeparateDivision(String value) {
        set(11, value);
    }

    /**
     * Getter for
     * <code>ervu_dashboard.citizen_work_activity.address_separate_division</code>.
     * Адрес обособленного структурного подразделения работодателя
     */
    public String getAddressSeparateDivision() {
        return (String) get(11);
    }

    /**
     * Setter for
     * <code>ervu_dashboard.citizen_work_activity.type_hr_event</code>. Тип
     * кадрового мероприятия 
     */
    public void setTypeHrEvent(String value) {
        set(12, value);
    }

    /**
     * Getter for
     * <code>ervu_dashboard.citizen_work_activity.type_hr_event</code>. Тип
     * кадрового мероприятия 
     */
    public String getTypeHrEvent() {
        return (String) get(12);
    }

    /**
     * Setter for
     * <code>ervu_dashboard.citizen_work_activity.date_hr_event</code>. Дата
     * кадрового мероприятия
     */
    public void setDateHrEvent(Date value) {
        set(13, value);
    }

    /**
     * Getter for
     * <code>ervu_dashboard.citizen_work_activity.date_hr_event</code>. Дата
     * кадрового мероприятия
     */
    public Date getDateHrEvent() {
        return (Date) get(13);
    }

    /**
     * Setter for <code>ervu_dashboard.citizen_work_activity.job_title</code>.
     * Должность
     */
    public void setJobTitle(String value) {
        set(14, value);
    }

    /**
     * Getter for <code>ervu_dashboard.citizen_work_activity.job_title</code>.
     * Должность
     */
    public String getJobTitle() {
        return (String) get(14);
    }

    /**
     * Setter for
     * <code>ervu_dashboard.citizen_work_activity.info_parental_leave</code>.
     * Сведения о нахождении в отпуске по уходу за ребенком
     */
    public void setInfoParentalLeave(String value) {
        set(15, value);
    }

    /**
     * Getter for
     * <code>ervu_dashboard.citizen_work_activity.info_parental_leave</code>.
     * Сведения о нахождении в отпуске по уходу за ребенком
     */
    public String getInfoParentalLeave() {
        return (String) get(15);
    }

    /**
     * Setter for
     * <code>ervu_dashboard.citizen_work_activity.start_date_parental_leave</code>.
     * Дата начала отпуска по уходу за ребенком
     */
    public void setStartDateParentalLeave(Date value) {
        set(16, value);
    }

    /**
     * Getter for
     * <code>ervu_dashboard.citizen_work_activity.start_date_parental_leave</code>.
     * Дата начала отпуска по уходу за ребенком
     */
    public Date getStartDateParentalLeave() {
        return (Date) get(16);
    }

    /**
     * Setter for
     * <code>ervu_dashboard.citizen_work_activity.end_date_parental_leave</code>.
     * Дата окончания отпуска по уходу за ребенком
     */
    public void setEndDateParentalLeave(Date value) {
        set(17, value);
    }

    /**
     * Getter for
     * <code>ervu_dashboard.citizen_work_activity.end_date_parental_leave</code>.
     * Дата окончания отпуска по уходу за ребенком
     */
    public Date getEndDateParentalLeave() {
        return (Date) get(17);
    }

    /**
     * Setter for <code>ervu_dashboard.citizen_work_activity.ogrn_ip</code>.
     * ОГРНИП (ИП)
     */
    public void setOgrnIp(String value) {
        set(18, value);
    }

    /**
     * Getter for <code>ervu_dashboard.citizen_work_activity.ogrn_ip</code>.
     * ОГРНИП (ИП)
     */
    public String getOgrnIp() {
        return (String) get(18);
    }

    /**
     * Setter for <code>ervu_dashboard.citizen_work_activity.date_reg_ip</code>.
     * Дата регистрации в качестве ИП
     */
    public void setDateRegIp(Date value) {
        set(19, value);
    }

    /**
     * Getter for <code>ervu_dashboard.citizen_work_activity.date_reg_ip</code>.
     * Дата регистрации в качестве ИП
     */
    public Date getDateRegIp() {
        return (Date) get(19);
    }

    /**
     * Setter for
     * <code>ervu_dashboard.citizen_work_activity.date_dereg_ip</code>. Дата
     * снятия с учета в качестве ИП
     */
    public void setDateDeregIp(Date value) {
        set(20, value);
    }

    /**
     * Getter for
     * <code>ervu_dashboard.citizen_work_activity.date_dereg_ip</code>. Дата
     * снятия с учета в качестве ИП
     */
    public Date getDateDeregIp() {
        return (Date) get(20);
    }

    /**
     * Setter for
     * <code>ervu_dashboard.citizen_work_activity.date_term_reg_ip</code>. Дата
     * прекращения регистрации в качестве ИП
     */
    public void setDateTermRegIp(Date value) {
        set(21, value);
    }

    /**
     * Getter for
     * <code>ervu_dashboard.citizen_work_activity.date_term_reg_ip</code>. Дата
     * прекращения регистрации в качестве ИП
     */
    public Date getDateTermRegIp() {
        return (Date) get(21);
    }

    /**
     * Setter for
     * <code>ervu_dashboard.citizen_work_activity.date_reg_self</code>. Дата
     * постановки на учет (Самозанятый)
     */
    public void setDateRegSelf(Date value) {
        set(22, value);
    }

    /**
     * Getter for
     * <code>ervu_dashboard.citizen_work_activity.date_reg_self</code>. Дата
     * постановки на учет (Самозанятый)
     */
    public Date getDateRegSelf() {
        return (Date) get(22);
    }

    /**
     * Setter for
     * <code>ervu_dashboard.citizen_work_activity.date_dereg_self</code>. Дата
     * снятия с учета (Самозанятый)
     */
    public void setDateDeregSelf(Date value) {
        set(23, value);
    }

    /**
     * Getter for
     * <code>ervu_dashboard.citizen_work_activity.date_dereg_self</code>. Дата
     * снятия с учета (Самозанятый)
     */
    public Date getDateDeregSelf() {
        return (Date) get(23);
    }

    /**
     * Setter for
     * <code>ervu_dashboard.citizen_work_activity.info_separator_didvision</code>.
     * Сведения о работе гражданина в обособленном подразделении работодателя
     */
    public void setInfoSeparatorDidvision(String value) {
        set(24, value);
    }

    /**
     * Getter for
     * <code>ervu_dashboard.citizen_work_activity.info_separator_didvision</code>.
     * Сведения о работе гражданина в обособленном подразделении работодателя
     */
    public String getInfoSeparatorDidvision() {
        return (String) get(24);
    }

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

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

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

    /**
     * Create a detached CitizenWorkActivityRecord
     */
    public CitizenWorkActivityRecord() {
        super(CitizenWorkActivity.CITIZEN_WORK_ACTIVITY);
    }

    /**
     * Create a detached, initialised CitizenWorkActivityRecord
     */
    public CitizenWorkActivityRecord(Long citizenWorkActivityId, String placeWork, String employerCategory, String organizationName, String inn, UUID recruitId, String ogrn, String kpp, String organizationAddress, String employerStatus, String typeSeparateDivision, String addressSeparateDivision, String typeHrEvent, Date dateHrEvent, String jobTitle, String infoParentalLeave, Date startDateParentalLeave, Date endDateParentalLeave, String ogrnIp, Date dateRegIp, Date dateDeregIp, Date dateTermRegIp, Date dateRegSelf, Date dateDeregSelf, String infoSeparatorDidvision) {
        super(CitizenWorkActivity.CITIZEN_WORK_ACTIVITY);

        setCitizenWorkActivityId(citizenWorkActivityId);
        setPlaceWork(placeWork);
        setEmployerCategory(employerCategory);
        setOrganizationName(organizationName);
        setInn(inn);
        setRecruitId(recruitId);
        setOgrn(ogrn);
        setKpp(kpp);
        setOrganizationAddress(organizationAddress);
        setEmployerStatus(employerStatus);
        setTypeSeparateDivision(typeSeparateDivision);
        setAddressSeparateDivision(addressSeparateDivision);
        setTypeHrEvent(typeHrEvent);
        setDateHrEvent(dateHrEvent);
        setJobTitle(jobTitle);
        setInfoParentalLeave(infoParentalLeave);
        setStartDateParentalLeave(startDateParentalLeave);
        setEndDateParentalLeave(endDateParentalLeave);
        setOgrnIp(ogrnIp);
        setDateRegIp(dateRegIp);
        setDateDeregIp(dateDeregIp);
        setDateTermRegIp(dateTermRegIp);
        setDateRegSelf(dateRegSelf);
        setDateDeregSelf(dateDeregSelf);
        setInfoSeparatorDidvision(infoSeparatorDidvision);
        resetChangedOnNotNull();
    }
}
