/*
 * This file is generated by jOOQ.
 */
package ru.micord.webbpm.ervu.business_metrics.db_beans.deregistration.tables.records;


import java.sql.Date;
import java.sql.Timestamp;

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

import ru.micord.webbpm.ervu.business_metrics.db_beans.deregistration.tables.ApplicationsReceivedFromEpgu;


/**
 * Снятие с учета. Заявления, поступившие через ЕПГУ
 */
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
public class ApplicationsReceivedFromEpguRecord extends UpdatableRecordImpl<ApplicationsReceivedFromEpguRecord> {

    private static final long serialVersionUID = 1L;

    /**
     * Setter for
     * <code>deregistration.applications_received_from_epgu.applications_received_from_epgu_id</code>.
     */
    public void setApplicationsReceivedFromEpguId(Long value) {
        set(0, value);
    }

    /**
     * Getter for
     * <code>deregistration.applications_received_from_epgu.applications_received_from_epgu_id</code>.
     */
    public Long getApplicationsReceivedFromEpguId() {
        return (Long) get(0);
    }

    /**
     * Setter for
     * <code>deregistration.applications_received_from_epgu.recruitment_id</code>.
     */
    public void setRecruitmentId(String value) {
        set(1, value);
    }

    /**
     * Getter for
     * <code>deregistration.applications_received_from_epgu.recruitment_id</code>.
     */
    public String getRecruitmentId() {
        return (String) get(1);
    }

    /**
     * Setter for
     * <code>deregistration.applications_received_from_epgu.update_date</code>.
     */
    public void setUpdateDate(Timestamp value) {
        set(2, value);
    }

    /**
     * Getter for
     * <code>deregistration.applications_received_from_epgu.update_date</code>.
     */
    public Timestamp getUpdateDate() {
        return (Timestamp) get(2);
    }

    /**
     * Setter for
     * <code>deregistration.applications_received_from_epgu.info_date</code>.
     */
    public void setInfoDate(Date value) {
        set(3, value);
    }

    /**
     * Getter for
     * <code>deregistration.applications_received_from_epgu.info_date</code>.
     */
    public Date getInfoDate() {
        return (Date) get(3);
    }

    /**
     * Setter for
     * <code>deregistration.applications_received_from_epgu.count_all</code>.
     */
    public void setCountAll(Long value) {
        set(4, value);
    }

    /**
     * Getter for
     * <code>deregistration.applications_received_from_epgu.count_all</code>.
     */
    public Long getCountAll() {
        return (Long) get(4);
    }

    /**
     * Setter for
     * <code>deregistration.applications_received_from_epgu.count_executor_appointed</code>.
     * Назначен исполнитель
     */
    public void setCountExecutorAppointed(Long value) {
        set(5, value);
    }

    /**
     * Getter for
     * <code>deregistration.applications_received_from_epgu.count_executor_appointed</code>.
     * Назначен исполнитель
     */
    public Long getCountExecutorAppointed() {
        return (Long) get(5);
    }

    /**
     * Setter for
     * <code>deregistration.applications_received_from_epgu.count_executor_not_appointed_expired</code>.
     * Не назначен исполнитель свыше допустимых сроков (просрочено)
     */
    public void setCountExecutorNotAppointedExpired(Long value) {
        set(6, value);
    }

    /**
     * Getter for
     * <code>deregistration.applications_received_from_epgu.count_executor_not_appointed_expired</code>.
     * Не назначен исполнитель свыше допустимых сроков (просрочено)
     */
    public Long getCountExecutorNotAppointedExpired() {
        return (Long) get(6);
    }

    /**
     * Setter for
     * <code>deregistration.applications_received_from_epgu.count_executor_not_appointed_on_time</code>.
     * Не назначен исполнитель в пределах допустимых сроков
     */
    public void setCountExecutorNotAppointedOnTime(Long value) {
        set(7, value);
    }

    /**
     * Getter for
     * <code>deregistration.applications_received_from_epgu.count_executor_not_appointed_on_time</code>.
     * Не назначен исполнитель в пределах допустимых сроков
     */
    public Long getCountExecutorNotAppointedOnTime() {
        return (Long) get(7);
    }

    /**
     * Setter for
     * <code>deregistration.applications_received_from_epgu.count_registered</code>.
     * Зарегистрировано заявлений
     */
    public void setCountRegistered(Long value) {
        set(8, value);
    }

    /**
     * Getter for
     * <code>deregistration.applications_received_from_epgu.count_registered</code>.
     * Зарегистрировано заявлений
     */
    public Long getCountRegistered() {
        return (Long) get(8);
    }

    /**
     * Setter for
     * <code>deregistration.applications_received_from_epgu.count_registration_refusal</code>.
     * Получен отказ в регистрации
     */
    public void setCountRegistrationRefusal(Long value) {
        set(9, value);
    }

    /**
     * Getter for
     * <code>deregistration.applications_received_from_epgu.count_registration_refusal</code>.
     * Получен отказ в регистрации
     */
    public Long getCountRegistrationRefusal() {
        return (Long) get(9);
    }

    /**
     * Setter for
     * <code>deregistration.applications_received_from_epgu.count_refusal_provide_service</code>.
     * Получен отказ в предоставлении услуги по заявлению
     */
    public void setCountRefusalProvideService(Long value) {
        set(10, value);
    }

    /**
     * Getter for
     * <code>deregistration.applications_received_from_epgu.count_refusal_provide_service</code>.
     * Получен отказ в предоставлении услуги по заявлению
     */
    public Long getCountRefusalProvideService() {
        return (Long) get(10);
    }

    /**
     * Setter for
     * <code>deregistration.applications_received_from_epgu.count_provided</code>.
     * Услуга по заявлению оказана
     */
    public void setCountProvided(Long value) {
        set(11, value);
    }

    /**
     * Getter for
     * <code>deregistration.applications_received_from_epgu.count_provided</code>.
     * Услуга по заявлению оказана
     */
    public Long getCountProvided() {
        return (Long) get(11);
    }

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

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

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

    /**
     * Create a detached ApplicationsReceivedFromEpguRecord
     */
    public ApplicationsReceivedFromEpguRecord() {
        super(ApplicationsReceivedFromEpgu.APPLICATIONS_RECEIVED_FROM_EPGU);
    }

    /**
     * Create a detached, initialised ApplicationsReceivedFromEpguRecord
     */
    public ApplicationsReceivedFromEpguRecord(Long applicationsReceivedFromEpguId, String recruitmentId, Timestamp updateDate, Date infoDate, Long countAll, Long countExecutorAppointed, Long countExecutorNotAppointedExpired, Long countExecutorNotAppointedOnTime, Long countRegistered, Long countRegistrationRefusal, Long countRefusalProvideService, Long countProvided) {
        super(ApplicationsReceivedFromEpgu.APPLICATIONS_RECEIVED_FROM_EPGU);

        setApplicationsReceivedFromEpguId(applicationsReceivedFromEpguId);
        setRecruitmentId(recruitmentId);
        setUpdateDate(updateDate);
        setInfoDate(infoDate);
        setCountAll(countAll);
        setCountExecutorAppointed(countExecutorAppointed);
        setCountExecutorNotAppointedExpired(countExecutorNotAppointedExpired);
        setCountExecutorNotAppointedOnTime(countExecutorNotAppointedOnTime);
        setCountRegistered(countRegistered);
        setCountRegistrationRefusal(countRegistrationRefusal);
        setCountRefusalProvideService(countRefusalProvideService);
        setCountProvided(countProvided);
        resetChangedOnNotNull();
    }
}
