/*
 * 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.RemovalRegistration;


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

    private static final long serialVersionUID = 1L;

    /**
     * Setter for
     * <code>deregistration.removal_registration.removal_registration_id</code>.
     */
    public void setRemovalRegistrationId(Long value) {
        set(0, value);
    }

    /**
     * Getter for
     * <code>deregistration.removal_registration.removal_registration_id</code>.
     */
    public Long getRemovalRegistrationId() {
        return (Long) get(0);
    }

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

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

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

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

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

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

    /**
     * Setter for
     * <code>deregistration.removal_registration.count_age_limit</code>.
     */
    public void setCountAgeLimit(Long value) {
        set(4, value);
    }

    /**
     * Getter for
     * <code>deregistration.removal_registration.count_age_limit</code>.
     */
    public Long getCountAgeLimit() {
        return (Long) get(4);
    }

    /**
     * Setter for
     * <code>deregistration.removal_registration.count_reason_death</code>.
     */
    public void setCountReasonDeath(Long value) {
        set(5, value);
    }

    /**
     * Getter for
     * <code>deregistration.removal_registration.count_reason_death</code>.
     */
    public Long getCountReasonDeath() {
        return (Long) get(5);
    }

    /**
     * Setter for
     * <code>deregistration.removal_registration.count_loss_citizenship</code>.
     */
    public void setCountLossCitizenship(Long value) {
        set(6, value);
    }

    /**
     * Getter for
     * <code>deregistration.removal_registration.count_loss_citizenship</code>.
     */
    public Long getCountLossCitizenship() {
        return (Long) get(6);
    }

    /**
     * Setter for
     * <code>deregistration.removal_registration.count_cancellation_record</code>.
     */
    public void setCountCancellationRecord(Long value) {
        set(7, value);
    }

    /**
     * Getter for
     * <code>deregistration.removal_registration.count_cancellation_record</code>.
     */
    public Long getCountCancellationRecord() {
        return (Long) get(7);
    }

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

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

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

    /**
     * Create a detached RemovalRegistrationRecord
     */
    public RemovalRegistrationRecord() {
        super(RemovalRegistration.REMOVAL_REGISTRATION);
    }

    /**
     * Create a detached, initialised RemovalRegistrationRecord
     */
    public RemovalRegistrationRecord(Long removalRegistrationId, String recruitmentId, Timestamp updateDate, Date infoDate, Long countAgeLimit, Long countReasonDeath, Long countLossCitizenship, Long countCancellationRecord) {
        super(RemovalRegistration.REMOVAL_REGISTRATION);

        setRemovalRegistrationId(removalRegistrationId);
        setRecruitmentId(recruitmentId);
        setUpdateDate(updateDate);
        setInfoDate(infoDate);
        setCountAgeLimit(countAgeLimit);
        setCountReasonDeath(countReasonDeath);
        setCountLossCitizenship(countLossCitizenship);
        setCountCancellationRecord(countCancellationRecord);
        resetChangedOnNotNull();
    }
}
