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


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

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


/**
 * Справчоник причин для отсрочки/освобождения от службы
 */
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
public class DefermentReasonRecord extends UpdatableRecordImpl<DefermentReasonRecord> {

    private static final long serialVersionUID = 1L;

    /**
     * Setter for
     * <code>ervu_dashboard.deferment_reason.deferment_reason_id</code>.
     */
    public void setDefermentReasonId(Long value) {
        set(0, value);
    }

    /**
     * Getter for
     * <code>ervu_dashboard.deferment_reason.deferment_reason_id</code>.
     */
    public Long getDefermentReasonId() {
        return (Long) get(0);
    }

    /**
     * Setter for <code>ervu_dashboard.deferment_reason.code</code>. Cправочный
     * код причины
     */
    public void setCode(String value) {
        set(1, value);
    }

    /**
     * Getter for <code>ervu_dashboard.deferment_reason.code</code>. Cправочный
     * код причины
     */
    public String getCode() {
        return (String) get(1);
    }

    /**
     * Setter for <code>ervu_dashboard.deferment_reason.value</code>. Причина
     * отсрочки/освобождения
     */
    public void setValue(String value) {
        set(2, value);
    }

    /**
     * Getter for <code>ervu_dashboard.deferment_reason.value</code>. Причина
     * отсрочки/освобождения
     */
    public String getValue() {
        return (String) get(2);
    }

    /**
     * Setter for <code>ervu_dashboard.deferment_reason.actual</code>. Признак
     * актуальности справочного значения
     */
    public void setActual(Boolean value) {
        set(3, value);
    }

    /**
     * Getter for <code>ervu_dashboard.deferment_reason.actual</code>. Признак
     * актуальности справочного значения
     */
    public Boolean getActual() {
        return (Boolean) get(3);
    }

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

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

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

    /**
     * Create a detached DefermentReasonRecord
     */
    public DefermentReasonRecord() {
        super(DefermentReason.DEFERMENT_REASON);
    }

    /**
     * Create a detached, initialised DefermentReasonRecord
     */
    public DefermentReasonRecord(Long defermentReasonId, String code, String value, Boolean actual) {
        super(DefermentReason.DEFERMENT_REASON);

        setDefermentReasonId(defermentReasonId);
        setCode(code);
        setValue(value);
        setActual(actual);
        resetChangedOnNotNull();
    }
}
