/*
 * This file is generated by jOOQ.
 */
package jj.tech.paolu.repository.jooq.tables.daos;


import java.util.List;
import java.util.Optional;

import jj.tech.paolu.repository.jooq.tables.Idc9998AdminInfo;
import jj.tech.paolu.repository.jooq.tables.records.Idc9998AdminInfoRecord;

import org.jooq.Configuration;
import org.jooq.impl.DAOImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;


/**
 * This class is generated by jOOQ.
 */
@SuppressWarnings({ "all", "unchecked", "rawtypes", "this-escape" })
@Repository
public class Idc9998AdminInfoDao extends DAOImpl<Idc9998AdminInfoRecord, jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo, String> {

    /**
     * Create a new Idc9998AdminInfoDao without any configuration
     */
    public Idc9998AdminInfoDao() {
        super(Idc9998AdminInfo.IDC9998_ADMIN_INFO, jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo.class);
    }

    /**
     * Create a new Idc9998AdminInfoDao with an attached configuration
     */
    @Autowired
    public Idc9998AdminInfoDao(Configuration configuration) {
        super(Idc9998AdminInfo.IDC9998_ADMIN_INFO, jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo.class, configuration);
    }

    @Override
    public String getId(jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo object) {
        return object.getId();
    }

    /**
     * Fetch records that have <code>id BETWEEN lowerInclusive AND
     * upperInclusive</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchRangeOfId(String lowerInclusive, String upperInclusive) {
        return fetchRange(Idc9998AdminInfo.IDC9998_ADMIN_INFO.ID, lowerInclusive, upperInclusive);
    }

    /**
     * Fetch records that have <code>id IN (values)</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchById(String... values) {
        return fetch(Idc9998AdminInfo.IDC9998_ADMIN_INFO.ID, values);
    }

    /**
     * Fetch a unique record that has <code>id = value</code>
     */
    public jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo fetchOneById(String value) {
        return fetchOne(Idc9998AdminInfo.IDC9998_ADMIN_INFO.ID, value);
    }

    /**
     * Fetch a unique record that has <code>id = value</code>
     */
    public Optional<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchOptionalById(String value) {
        return fetchOptional(Idc9998AdminInfo.IDC9998_ADMIN_INFO.ID, value);
    }

    /**
     * Fetch records that have <code>status BETWEEN lowerInclusive AND
     * upperInclusive</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchRangeOfStatus(Integer lowerInclusive, Integer upperInclusive) {
        return fetchRange(Idc9998AdminInfo.IDC9998_ADMIN_INFO.STATUS, lowerInclusive, upperInclusive);
    }

    /**
     * Fetch records that have <code>status IN (values)</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchByStatus(Integer... values) {
        return fetch(Idc9998AdminInfo.IDC9998_ADMIN_INFO.STATUS, values);
    }

    /**
     * Fetch records that have <code>manager_name BETWEEN lowerInclusive AND
     * upperInclusive</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchRangeOfManagerName(String lowerInclusive, String upperInclusive) {
        return fetchRange(Idc9998AdminInfo.IDC9998_ADMIN_INFO.MANAGER_NAME, lowerInclusive, upperInclusive);
    }

    /**
     * Fetch records that have <code>manager_name IN (values)</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchByManagerName(String... values) {
        return fetch(Idc9998AdminInfo.IDC9998_ADMIN_INFO.MANAGER_NAME, values);
    }

    /**
     * Fetch records that have <code>member_name BETWEEN lowerInclusive AND
     * upperInclusive</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchRangeOfMemberName(String lowerInclusive, String upperInclusive) {
        return fetchRange(Idc9998AdminInfo.IDC9998_ADMIN_INFO.MEMBER_NAME, lowerInclusive, upperInclusive);
    }

    /**
     * Fetch records that have <code>member_name IN (values)</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchByMemberName(String... values) {
        return fetch(Idc9998AdminInfo.IDC9998_ADMIN_INFO.MEMBER_NAME, values);
    }

    /**
     * Fetch records that have <code>user_name BETWEEN lowerInclusive AND
     * upperInclusive</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchRangeOfUserName(String lowerInclusive, String upperInclusive) {
        return fetchRange(Idc9998AdminInfo.IDC9998_ADMIN_INFO.USER_NAME, lowerInclusive, upperInclusive);
    }

    /**
     * Fetch records that have <code>user_name IN (values)</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchByUserName(String... values) {
        return fetch(Idc9998AdminInfo.IDC9998_ADMIN_INFO.USER_NAME, values);
    }

    /**
     * Fetch records that have <code>user_password BETWEEN lowerInclusive AND
     * upperInclusive</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchRangeOfUserPassword(String lowerInclusive, String upperInclusive) {
        return fetchRange(Idc9998AdminInfo.IDC9998_ADMIN_INFO.USER_PASSWORD, lowerInclusive, upperInclusive);
    }

    /**
     * Fetch records that have <code>user_password IN (values)</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchByUserPassword(String... values) {
        return fetch(Idc9998AdminInfo.IDC9998_ADMIN_INFO.USER_PASSWORD, values);
    }

    /**
     * Fetch records that have <code>domain BETWEEN lowerInclusive AND
     * upperInclusive</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchRangeOfDomain(String lowerInclusive, String upperInclusive) {
        return fetchRange(Idc9998AdminInfo.IDC9998_ADMIN_INFO.DOMAIN, lowerInclusive, upperInclusive);
    }

    /**
     * Fetch records that have <code>domain IN (values)</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchByDomain(String... values) {
        return fetch(Idc9998AdminInfo.IDC9998_ADMIN_INFO.DOMAIN, values);
    }

    /**
     * Fetch records that have <code>is_default BETWEEN lowerInclusive AND
     * upperInclusive</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchRangeOfIsDefault(Integer lowerInclusive, Integer upperInclusive) {
        return fetchRange(Idc9998AdminInfo.IDC9998_ADMIN_INFO.IS_DEFAULT, lowerInclusive, upperInclusive);
    }

    /**
     * Fetch records that have <code>is_default IN (values)</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchByIsDefault(Integer... values) {
        return fetch(Idc9998AdminInfo.IDC9998_ADMIN_INFO.IS_DEFAULT, values);
    }

    /**
     * Fetch records that have <code>is_online BETWEEN lowerInclusive AND
     * upperInclusive</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchRangeOfIsOnline(Integer lowerInclusive, Integer upperInclusive) {
        return fetchRange(Idc9998AdminInfo.IDC9998_ADMIN_INFO.IS_ONLINE, lowerInclusive, upperInclusive);
    }

    /**
     * Fetch records that have <code>is_online IN (values)</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchByIsOnline(Integer... values) {
        return fetch(Idc9998AdminInfo.IDC9998_ADMIN_INFO.IS_ONLINE, values);
    }

    /**
     * Fetch records that have <code>login_info BETWEEN lowerInclusive AND
     * upperInclusive</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchRangeOfLoginInfo(String lowerInclusive, String upperInclusive) {
        return fetchRange(Idc9998AdminInfo.IDC9998_ADMIN_INFO.LOGIN_INFO, lowerInclusive, upperInclusive);
    }

    /**
     * Fetch records that have <code>login_info IN (values)</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchByLoginInfo(String... values) {
        return fetch(Idc9998AdminInfo.IDC9998_ADMIN_INFO.LOGIN_INFO, values);
    }

    /**
     * Fetch records that have <code>g_24 BETWEEN lowerInclusive AND
     * upperInclusive</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchRangeOfG_24(Integer lowerInclusive, Integer upperInclusive) {
        return fetchRange(Idc9998AdminInfo.IDC9998_ADMIN_INFO.G_24, lowerInclusive, upperInclusive);
    }

    /**
     * Fetch records that have <code>g_24 IN (values)</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchByG_24(Integer... values) {
        return fetch(Idc9998AdminInfo.IDC9998_ADMIN_INFO.G_24, values);
    }

    /**
     * Fetch records that have <code>g_29 BETWEEN lowerInclusive AND
     * upperInclusive</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchRangeOfG_29(Integer lowerInclusive, Integer upperInclusive) {
        return fetchRange(Idc9998AdminInfo.IDC9998_ADMIN_INFO.G_29, lowerInclusive, upperInclusive);
    }

    /**
     * Fetch records that have <code>g_29 IN (values)</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchByG_29(Integer... values) {
        return fetch(Idc9998AdminInfo.IDC9998_ADMIN_INFO.G_29, values);
    }

    /**
     * Fetch records that have <code>g_30 BETWEEN lowerInclusive AND
     * upperInclusive</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchRangeOfG_30(Integer lowerInclusive, Integer upperInclusive) {
        return fetchRange(Idc9998AdminInfo.IDC9998_ADMIN_INFO.G_30, lowerInclusive, upperInclusive);
    }

    /**
     * Fetch records that have <code>g_30 IN (values)</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchByG_30(Integer... values) {
        return fetch(Idc9998AdminInfo.IDC9998_ADMIN_INFO.G_30, values);
    }

    /**
     * Fetch records that have <code>g_31 BETWEEN lowerInclusive AND
     * upperInclusive</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchRangeOfG_31(Integer lowerInclusive, Integer upperInclusive) {
        return fetchRange(Idc9998AdminInfo.IDC9998_ADMIN_INFO.G_31, lowerInclusive, upperInclusive);
    }

    /**
     * Fetch records that have <code>g_31 IN (values)</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchByG_31(Integer... values) {
        return fetch(Idc9998AdminInfo.IDC9998_ADMIN_INFO.G_31, values);
    }

    /**
     * Fetch records that have <code>g_35 BETWEEN lowerInclusive AND
     * upperInclusive</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchRangeOfG_35(Integer lowerInclusive, Integer upperInclusive) {
        return fetchRange(Idc9998AdminInfo.IDC9998_ADMIN_INFO.G_35, lowerInclusive, upperInclusive);
    }

    /**
     * Fetch records that have <code>g_35 IN (values)</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchByG_35(Integer... values) {
        return fetch(Idc9998AdminInfo.IDC9998_ADMIN_INFO.G_35, values);
    }

    /**
     * Fetch records that have <code>g_37 BETWEEN lowerInclusive AND
     * upperInclusive</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchRangeOfG_37(Integer lowerInclusive, Integer upperInclusive) {
        return fetchRange(Idc9998AdminInfo.IDC9998_ADMIN_INFO.G_37, lowerInclusive, upperInclusive);
    }

    /**
     * Fetch records that have <code>g_37 IN (values)</code>
     */
    public List<jj.tech.paolu.repository.jooq.tables.pojos.Idc9998AdminInfo> fetchByG_37(Integer... values) {
        return fetch(Idc9998AdminInfo.IDC9998_ADMIN_INFO.G_37, values);
    }
}
