/*
 * 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.enums.EmployerCategoryType;
import ru.micord.ervu_dashboard.db_beans.ervu_dashboard.tables.Work;


/**
 * сведения об имуществе
 */
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
public class WorkRecord extends UpdatableRecordImpl<WorkRecord> {

    private static final long serialVersionUID = 1L;

    /**
     * Setter for <code>ervu_dashboard.work.work_id</code>.
     */
    public void setWorkId(Long value) {
        set(0, value);
    }

    /**
     * Getter for <code>ervu_dashboard.work.work_id</code>.
     */
    public Long getWorkId() {
        return (Long) get(0);
    }

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

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

    /**
     * Setter for <code>ervu_dashboard.work.employer_category</code>. категория
     * работодателя: юр лицо/ИП/физ лицо/глава КФХ
     */
    public void setEmployerCategory(EmployerCategoryType value) {
        set(2, value);
    }

    /**
     * Getter for <code>ervu_dashboard.work.employer_category</code>. категория
     * работодателя: юр лицо/ИП/физ лицо/глава КФХ
     */
    public EmployerCategoryType getEmployerCategory() {
        return (EmployerCategoryType) get(2);
    }

    /**
     * Setter for <code>ervu_dashboard.work.place</code>. место работы
     */
    public void setPlace(String value) {
        set(3, value);
    }

    /**
     * Getter for <code>ervu_dashboard.work.place</code>. место работы
     */
    public String getPlace() {
        return (String) get(3);
    }

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

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

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

    /**
     * Getter for <code>ervu_dashboard.work.inn</code>. ИНН
     */
    public String getInn() {
        return (String) get(5);
    }

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

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

    /**
     * Setter for <code>ervu_dashboard.work.ogrnip</code>. ОГРНИП
     */
    public void setOgrnip(String value) {
        set(7, value);
    }

    /**
     * Getter for <code>ervu_dashboard.work.ogrnip</code>. ОГРНИП
     */
    public String getOgrnip() {
        return (String) get(7);
    }

    /**
     * Setter for <code>ervu_dashboard.work.position</code>. должность
     */
    public void setPosition(String value) {
        set(8, value);
    }

    /**
     * Getter for <code>ervu_dashboard.work.position</code>. должность
     */
    public String getPosition() {
        return (String) get(8);
    }

    /**
     * Setter for <code>ervu_dashboard.work.event_type</code>. тип кадрового
     * мероприятия 
     */
    public void setEventType(String value) {
        set(9, value);
    }

    /**
     * Getter for <code>ervu_dashboard.work.event_type</code>. тип кадрового
     * мероприятия 
     */
    public String getEventType() {
        return (String) get(9);
    }

    /**
     * Setter for <code>ervu_dashboard.work.event_date</code>. дата кадрового
     * мероприятия
     */
    public void setEventDate(Date value) {
        set(10, value);
    }

    /**
     * Getter for <code>ervu_dashboard.work.event_date</code>. дата кадрового
     * мероприятия
     */
    public Date getEventDate() {
        return (Date) get(10);
    }

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

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

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

    /**
     * Create a detached WorkRecord
     */
    public WorkRecord() {
        super(Work.WORK);
    }

    /**
     * Create a detached, initialised WorkRecord
     */
    public WorkRecord(Long workId, UUID recruitId, EmployerCategoryType employerCategory, String place, String organizationName, String inn, String kpp, String ogrnip, String position, String eventType, Date eventDate) {
        super(Work.WORK);

        setWorkId(workId);
        setRecruitId(recruitId);
        setEmployerCategory(employerCategory);
        setPlace(place);
        setOrganizationName(organizationName);
        setInn(inn);
        setKpp(kpp);
        setOgrnip(ogrnip);
        setPosition(position);
        setEventType(eventType);
        setEventDate(eventDate);
        resetChangedOnNotNull();
    }
}
