001/*
002 * This file is generated by jOOQ.
003 */
004package com.echothree.model.jooq.server.tables.inventory;
005
006
007import com.echothree.model.data.accounting.common.pk.GlAccountPK;
008import com.echothree.model.data.accounting.common.pk.ItemAccountingCategoryPK;
009import com.echothree.model.data.inventory.common.pk.InventoryConditionGlAccountPK;
010import com.echothree.model.data.inventory.common.pk.InventoryConditionPK;
011import com.echothree.model.jooq.server.KeyRegistry;
012import com.echothree.model.jooq.server.tables.accounting.GlAccounts.GlAccountsPath;
013import com.echothree.model.jooq.server.tables.accounting.ItemAccountingCategories.ItemAccountingCategoriesPath;
014import com.echothree.model.jooq.server.tables.inventory.InventoryConditions.InventoryConditionsPath;
015
016import java.util.Arrays;
017import java.util.Collection;
018import java.util.List;
019
020import org.jooq.Condition;
021import org.jooq.Converter;
022import org.jooq.Field;
023import org.jooq.ForeignKey;
024import org.jooq.Name;
025import org.jooq.PlainSQL;
026import org.jooq.QueryPart;
027import org.jooq.SQL;
028import org.jooq.Stringly;
029import org.jooq.Table;
030import org.jooq.TableField;
031import org.jooq.TableLike;
032import org.jooq.TableOptions;
033import org.jooq.UniqueKey;
034import org.jooq.impl.DSL;
035import org.jooq.impl.Internal;
036import org.jooq.impl.SQLDataType;
037import org.jooq.impl.TableImpl;
038
039
040/**
041 * This class is generated by jOOQ.
042 */
043@SuppressWarnings({ "all", "unchecked", "rawtypes", "this-escape" })
044public class InventoryConditionGlAccounts extends TableImpl<com.echothree.model.jooq.server.records.inventory.InventoryConditionGlAccounts> {
045
046    private static final long serialVersionUID = 1L;
047
048    /**
049     * The reference instance of <code>inventoryconditionglaccounts</code>
050     */
051    public static final InventoryConditionGlAccounts InventoryConditionGlAccounts = new InventoryConditionGlAccounts();
052
053    /**
054     * The class holding records for this type
055     */
056    @Override
057    public Class<com.echothree.model.jooq.server.records.inventory.InventoryConditionGlAccounts> getRecordType() {
058        return com.echothree.model.jooq.server.records.inventory.InventoryConditionGlAccounts.class;
059    }
060
061    /**
062     * The column
063     * <code>inventoryconditionglaccounts.invcongla_inventoryconditionglaccountid</code>.
064     */
065    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryConditionGlAccounts, InventoryConditionGlAccountPK> INVENTORY_CONDITION_GL_ACCOUNT = createField(DSL.name("invcongla_inventoryconditionglaccountid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, InventoryConditionGlAccountPK.class, id -> new com.echothree.model.data.inventory.common.pk.InventoryConditionGlAccountPK(id), primaryKey -> primaryKey.getEntityId()));
066
067    /**
068     * The column
069     * <code>inventoryconditionglaccounts.invcongla_invcon_inventoryconditionid</code>.
070     */
071    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryConditionGlAccounts, InventoryConditionPK> INVENTORY_CONDITION = createField(DSL.name("invcongla_invcon_inventoryconditionid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, InventoryConditionPK.class, id -> new com.echothree.model.data.inventory.common.pk.InventoryConditionPK(id), primaryKey -> primaryKey.getEntityId()));
072
073    /**
074     * The column
075     * <code>inventoryconditionglaccounts.invcongla_iactgc_itemaccountingcategoryid</code>.
076     */
077    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryConditionGlAccounts, ItemAccountingCategoryPK> ITEM_ACCOUNTING_CATEGORY = createField(DSL.name("invcongla_iactgc_itemaccountingcategoryid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, ItemAccountingCategoryPK.class, id -> new com.echothree.model.data.accounting.common.pk.ItemAccountingCategoryPK(id), primaryKey -> primaryKey.getEntityId()));
078
079    /**
080     * The column
081     * <code>inventoryconditionglaccounts.invcongla_inventoryglaccountid</code>.
082     */
083    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryConditionGlAccounts, GlAccountPK> INVENTORY_GL_ACCOUNT = createField(DSL.name("invcongla_inventoryglaccountid"), SQLDataType.BIGINT, this, "", Converter.ofNullable(Long.class, GlAccountPK.class, id -> new com.echothree.model.data.accounting.common.pk.GlAccountPK(id), primaryKey -> primaryKey.getEntityId()));
084
085    /**
086     * The column
087     * <code>inventoryconditionglaccounts.invcongla_salesglaccountid</code>.
088     */
089    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryConditionGlAccounts, GlAccountPK> SALES_GL_ACCOUNT = createField(DSL.name("invcongla_salesglaccountid"), SQLDataType.BIGINT, this, "", Converter.ofNullable(Long.class, GlAccountPK.class, id -> new com.echothree.model.data.accounting.common.pk.GlAccountPK(id), primaryKey -> primaryKey.getEntityId()));
090
091    /**
092     * The column
093     * <code>inventoryconditionglaccounts.invcongla_returnsglaccountid</code>.
094     */
095    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryConditionGlAccounts, GlAccountPK> RETURNS_GL_ACCOUNT = createField(DSL.name("invcongla_returnsglaccountid"), SQLDataType.BIGINT, this, "", Converter.ofNullable(Long.class, GlAccountPK.class, id -> new com.echothree.model.data.accounting.common.pk.GlAccountPK(id), primaryKey -> primaryKey.getEntityId()));
096
097    /**
098     * The column
099     * <code>inventoryconditionglaccounts.invcongla_cogsglaccountid</code>.
100     */
101    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryConditionGlAccounts, GlAccountPK> COGS_GL_ACCOUNT = createField(DSL.name("invcongla_cogsglaccountid"), SQLDataType.BIGINT, this, "", Converter.ofNullable(Long.class, GlAccountPK.class, id -> new com.echothree.model.data.accounting.common.pk.GlAccountPK(id), primaryKey -> primaryKey.getEntityId()));
102
103    /**
104     * The column
105     * <code>inventoryconditionglaccounts.invcongla_returnscogsglaccountid</code>.
106     */
107    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryConditionGlAccounts, GlAccountPK> RETURNS_COGS_GL_ACCOUNT = createField(DSL.name("invcongla_returnscogsglaccountid"), SQLDataType.BIGINT, this, "", Converter.ofNullable(Long.class, GlAccountPK.class, id -> new com.echothree.model.data.accounting.common.pk.GlAccountPK(id), primaryKey -> primaryKey.getEntityId()));
108
109    /**
110     * The column <code>inventoryconditionglaccounts.invcongla_fromtime</code>.
111     */
112    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryConditionGlAccounts, Long> FROM_TIME = createField(DSL.name("invcongla_fromtime"), SQLDataType.BIGINT.nullable(false), this, "");
113
114    /**
115     * The column <code>inventoryconditionglaccounts.invcongla_thrutime</code>.
116     */
117    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryConditionGlAccounts, Long> THRU_TIME = createField(DSL.name("invcongla_thrutime"), SQLDataType.BIGINT.nullable(false), this, "");
118
119    private InventoryConditionGlAccounts(Name alias, Table<com.echothree.model.jooq.server.records.inventory.InventoryConditionGlAccounts> aliased) {
120        this(alias, aliased, (Field<?>[]) null, null);
121    }
122
123    private InventoryConditionGlAccounts(Name alias, Table<com.echothree.model.jooq.server.records.inventory.InventoryConditionGlAccounts> aliased, Field<?>[] parameters, Condition where) {
124        super(alias, null, aliased, parameters, DSL.comment(""), TableOptions.table(), where);
125    }
126
127    /**
128     * Create an aliased <code>inventoryconditionglaccounts</code> table
129     * reference
130     */
131    public InventoryConditionGlAccounts(String alias) {
132        this(DSL.name(alias), InventoryConditionGlAccounts);
133    }
134
135    /**
136     * Create an aliased <code>inventoryconditionglaccounts</code> table
137     * reference
138     */
139    public InventoryConditionGlAccounts(Name alias) {
140        this(alias, InventoryConditionGlAccounts);
141    }
142
143    /**
144     * Create a <code>inventoryconditionglaccounts</code> table reference
145     */
146    public InventoryConditionGlAccounts() {
147        this(DSL.name("inventoryconditionglaccounts"), null);
148    }
149
150    @Override
151    public UniqueKey<com.echothree.model.jooq.server.records.inventory.InventoryConditionGlAccounts> getPrimaryKey() {
152        return KeyRegistry.INVENTORY_CONDITION_GL_ACCOUNTS_PK;
153    }
154
155    @Override
156    public List<UniqueKey<com.echothree.model.jooq.server.records.inventory.InventoryConditionGlAccounts>> getUniqueKeys() {
157        return Arrays.asList(KeyRegistry.INVENTORY_CONDITION_GL_ACCOUNTS_INVENTORY_CONDITION_AND_ITEM_ACCOUNTING_CATEGORY_AND_THRU_TIME_UK);
158    }
159
160    @Override
161    public List<ForeignKey<com.echothree.model.jooq.server.records.inventory.InventoryConditionGlAccounts, ?>> getReferences() {
162        return Arrays.asList(KeyRegistry.INVENTORY_CONDITION_GL_ACCOUNTS_COGS_GL_ACCOUNT_FK, KeyRegistry.INVENTORY_CONDITION_GL_ACCOUNTS_ITEM_ACCOUNTING_CATEGORY_FK, KeyRegistry.INVENTORY_CONDITION_GL_ACCOUNTS_INVENTORY_CONDITION_FK, KeyRegistry.INVENTORY_CONDITION_GL_ACCOUNTS_INVENTORY_GL_ACCOUNT_FK, KeyRegistry.INVENTORY_CONDITION_GL_ACCOUNTS_RETURNS_COGS_GL_ACCOUNT_FK, KeyRegistry.INVENTORY_CONDITION_GL_ACCOUNTS_RETURNS_GL_ACCOUNT_FK, KeyRegistry.INVENTORY_CONDITION_GL_ACCOUNTS_SALES_GL_ACCOUNT_FK);
163    }
164
165    private transient GlAccountsPath _invcongla_cogsglaccountid_fk;
166
167    /**
168     * Get the implicit join path to the <code>glaccounts</code> table, via the
169     * <code>invcongla_cogsglaccountid_fk</code> key.
170     */
171    public GlAccountsPath invcongla_cogsglaccountid_fk() {
172        if (_invcongla_cogsglaccountid_fk == null)
173            _invcongla_cogsglaccountid_fk = new GlAccountsPath(this, KeyRegistry.INVENTORY_CONDITION_GL_ACCOUNTS_COGS_GL_ACCOUNT_FK, null);
174
175        return _invcongla_cogsglaccountid_fk;
176    }
177
178    private transient ItemAccountingCategoriesPath _invcongla_iactgc_itemaccountingcategoryid_fk;
179
180    /**
181     * Get the implicit join path to the <code>itemaccountingcategories</code>
182     * table.
183     */
184    public ItemAccountingCategoriesPath invcongla_iactgc_itemaccountingcategoryid_fk() {
185        if (_invcongla_iactgc_itemaccountingcategoryid_fk == null)
186            _invcongla_iactgc_itemaccountingcategoryid_fk = new ItemAccountingCategoriesPath(this, KeyRegistry.INVENTORY_CONDITION_GL_ACCOUNTS_ITEM_ACCOUNTING_CATEGORY_FK, null);
187
188        return _invcongla_iactgc_itemaccountingcategoryid_fk;
189    }
190
191    private transient InventoryConditionsPath _invcongla_invcon_inventoryconditionid_fk;
192
193    /**
194     * Get the implicit join path to the <code>inventoryconditions</code> table.
195     */
196    public InventoryConditionsPath invcongla_invcon_inventoryconditionid_fk() {
197        if (_invcongla_invcon_inventoryconditionid_fk == null)
198            _invcongla_invcon_inventoryconditionid_fk = new InventoryConditionsPath(this, KeyRegistry.INVENTORY_CONDITION_GL_ACCOUNTS_INVENTORY_CONDITION_FK, null);
199
200        return _invcongla_invcon_inventoryconditionid_fk;
201    }
202
203    private transient GlAccountsPath _invcongla_inventoryglaccountid_fk;
204
205    /**
206     * Get the implicit join path to the <code>glaccounts</code> table, via the
207     * <code>invcongla_inventoryglaccountid_fk</code> key.
208     */
209    public GlAccountsPath invcongla_inventoryglaccountid_fk() {
210        if (_invcongla_inventoryglaccountid_fk == null)
211            _invcongla_inventoryglaccountid_fk = new GlAccountsPath(this, KeyRegistry.INVENTORY_CONDITION_GL_ACCOUNTS_INVENTORY_GL_ACCOUNT_FK, null);
212
213        return _invcongla_inventoryglaccountid_fk;
214    }
215
216    private transient GlAccountsPath _invcongla_returnscogsglaccountid_fk;
217
218    /**
219     * Get the implicit join path to the <code>glaccounts</code> table, via the
220     * <code>invcongla_returnscogsglaccountid_fk</code> key.
221     */
222    public GlAccountsPath invcongla_returnscogsglaccountid_fk() {
223        if (_invcongla_returnscogsglaccountid_fk == null)
224            _invcongla_returnscogsglaccountid_fk = new GlAccountsPath(this, KeyRegistry.INVENTORY_CONDITION_GL_ACCOUNTS_RETURNS_COGS_GL_ACCOUNT_FK, null);
225
226        return _invcongla_returnscogsglaccountid_fk;
227    }
228
229    private transient GlAccountsPath _invcongla_returnsglaccountid_fk;
230
231    /**
232     * Get the implicit join path to the <code>glaccounts</code> table, via the
233     * <code>invcongla_returnsglaccountid_fk</code> key.
234     */
235    public GlAccountsPath invcongla_returnsglaccountid_fk() {
236        if (_invcongla_returnsglaccountid_fk == null)
237            _invcongla_returnsglaccountid_fk = new GlAccountsPath(this, KeyRegistry.INVENTORY_CONDITION_GL_ACCOUNTS_RETURNS_GL_ACCOUNT_FK, null);
238
239        return _invcongla_returnsglaccountid_fk;
240    }
241
242    private transient GlAccountsPath _invcongla_salesglaccountid_fk;
243
244    /**
245     * Get the implicit join path to the <code>glaccounts</code> table, via the
246     * <code>invcongla_salesglaccountid_fk</code> key.
247     */
248    public GlAccountsPath invcongla_salesglaccountid_fk() {
249        if (_invcongla_salesglaccountid_fk == null)
250            _invcongla_salesglaccountid_fk = new GlAccountsPath(this, KeyRegistry.INVENTORY_CONDITION_GL_ACCOUNTS_SALES_GL_ACCOUNT_FK, null);
251
252        return _invcongla_salesglaccountid_fk;
253    }
254
255    @Override
256    public InventoryConditionGlAccounts as(String alias) {
257        return new InventoryConditionGlAccounts(DSL.name(alias), this);
258    }
259
260    @Override
261    public InventoryConditionGlAccounts as(Name alias) {
262        return new InventoryConditionGlAccounts(alias, this);
263    }
264
265    @Override
266    public InventoryConditionGlAccounts as(Table<?> alias) {
267        return new InventoryConditionGlAccounts(alias.getQualifiedName(), this);
268    }
269
270    /**
271     * Rename this table
272     */
273    @Override
274    public InventoryConditionGlAccounts rename(String name) {
275        return new InventoryConditionGlAccounts(DSL.name(name), null);
276    }
277
278    /**
279     * Rename this table
280     */
281    @Override
282    public InventoryConditionGlAccounts rename(Name name) {
283        return new InventoryConditionGlAccounts(name, null);
284    }
285
286    /**
287     * Rename this table
288     */
289    @Override
290    public InventoryConditionGlAccounts rename(Table<?> name) {
291        return new InventoryConditionGlAccounts(name.getQualifiedName(), null);
292    }
293
294    /**
295     * Create an inline derived table from this table
296     */
297    @Override
298    public InventoryConditionGlAccounts where(Condition condition) {
299        return new InventoryConditionGlAccounts(getQualifiedName(), aliased() ? this : null, null, Internal.condition(this, condition));
300    }
301
302    /**
303     * Create an inline derived table from this table
304     */
305    @Override
306    public InventoryConditionGlAccounts where(Collection<? extends Condition> conditions) {
307        return where(DSL.and(conditions));
308    }
309
310    /**
311     * Create an inline derived table from this table
312     */
313    @Override
314    public InventoryConditionGlAccounts where(Condition... conditions) {
315        return where(DSL.and(conditions));
316    }
317
318    /**
319     * Create an inline derived table from this table
320     */
321    @Override
322    public InventoryConditionGlAccounts where(Field<Boolean> condition) {
323        return where(DSL.condition(condition));
324    }
325
326    /**
327     * Create an inline derived table from this table
328     */
329    @Override
330    @PlainSQL
331    public InventoryConditionGlAccounts where(SQL condition) {
332        return where(DSL.condition(condition));
333    }
334
335    /**
336     * Create an inline derived table from this table
337     */
338    @Override
339    @PlainSQL
340    public InventoryConditionGlAccounts where(@Stringly.SQL String condition) {
341        return where(DSL.condition(condition));
342    }
343
344    /**
345     * Create an inline derived table from this table
346     */
347    @Override
348    @PlainSQL
349    public InventoryConditionGlAccounts where(@Stringly.SQL String condition, Object... binds) {
350        return where(DSL.condition(condition, binds));
351    }
352
353    /**
354     * Create an inline derived table from this table
355     */
356    @Override
357    @PlainSQL
358    public InventoryConditionGlAccounts where(@Stringly.SQL String condition, QueryPart... parts) {
359        return where(DSL.condition(condition, parts));
360    }
361
362    /**
363     * Create an inline derived table from this table
364     */
365    @Override
366    public InventoryConditionGlAccounts whereExists(TableLike<?> select) {
367        return where(DSL.exists(select));
368    }
369
370    /**
371     * Create an inline derived table from this table
372     */
373    @Override
374    public InventoryConditionGlAccounts whereNotExists(TableLike<?> select) {
375        return where(DSL.notExists(select));
376    }
377}