001/*
002 * This file is generated by jOOQ.
003 */
004package com.echothree.model.jooq.server.tables.inventory;
005
006
007import com.echothree.model.data.inventory.common.pk.InventoryAdjustmentTypePK;
008import com.echothree.model.data.inventory.common.pk.InventoryTransactionLineDetailPK;
009import com.echothree.model.data.inventory.common.pk.InventoryTransactionLinePK;
010import com.echothree.model.data.inventory.common.pk.InventoryTransactionPK;
011import com.echothree.model.data.inventory.common.pk.InventoryTransactionReasonPK;
012import com.echothree.model.data.inventory.common.pk.LotPK;
013import com.echothree.model.data.item.common.pk.ItemPK;
014import com.echothree.model.jooq.server.KeyRegistry;
015import com.echothree.model.jooq.server.tables.inventory.InventoryAdjustmentTypes.InventoryAdjustmentTypesPath;
016import com.echothree.model.jooq.server.tables.inventory.InventoryTransactionLines.InventoryTransactionLinesPath;
017import com.echothree.model.jooq.server.tables.inventory.InventoryTransactionReasons.InventoryTransactionReasonsPath;
018import com.echothree.model.jooq.server.tables.inventory.InventoryTransactions.InventoryTransactionsPath;
019import com.echothree.model.jooq.server.tables.inventory.Lots.LotsPath;
020import com.echothree.model.jooq.server.tables.item.Items.ItemsPath;
021
022import java.util.Arrays;
023import java.util.Collection;
024import java.util.List;
025
026import org.jooq.Condition;
027import org.jooq.Converter;
028import org.jooq.Field;
029import org.jooq.ForeignKey;
030import org.jooq.InverseForeignKey;
031import org.jooq.Name;
032import org.jooq.Path;
033import org.jooq.PlainSQL;
034import org.jooq.QueryPart;
035import org.jooq.Record;
036import org.jooq.SQL;
037import org.jooq.Stringly;
038import org.jooq.Table;
039import org.jooq.TableField;
040import org.jooq.TableLike;
041import org.jooq.TableOptions;
042import org.jooq.UniqueKey;
043import org.jooq.impl.DSL;
044import org.jooq.impl.Internal;
045import org.jooq.impl.SQLDataType;
046import org.jooq.impl.TableImpl;
047
048
049/**
050 * This class is generated by jOOQ.
051 */
052@SuppressWarnings({ "all", "unchecked", "rawtypes", "this-escape" })
053public class InventoryTransactionLineDetails extends TableImpl<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails> {
054
055    private static final long serialVersionUID = 1L;
056
057    /**
058     * The reference instance of <code>inventorytransactionlinedetails</code>
059     */
060    public static final InventoryTransactionLineDetails InventoryTransactionLineDetails = new InventoryTransactionLineDetails();
061
062    /**
063     * The class holding records for this type
064     */
065    @Override
066    public Class<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails> getRecordType() {
067        return com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails.class;
068    }
069
070    /**
071     * The column
072     * <code>inventorytransactionlinedetails.invtrxldt_inventorytransactionlinedetailid</code>.
073     */
074    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails, InventoryTransactionLineDetailPK> INVENTORY_TRANSACTION_LINE_DETAIL = createField(DSL.name("invtrxldt_inventorytransactionlinedetailid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, InventoryTransactionLineDetailPK.class, id -> new com.echothree.model.data.inventory.common.pk.InventoryTransactionLineDetailPK(id), primaryKey -> primaryKey.getEntityId()));
075
076    /**
077     * The column
078     * <code>inventorytransactionlinedetails.invtrxldt_invtrxl_inventorytransactionlineid</code>.
079     */
080    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails, InventoryTransactionLinePK> INVENTORY_TRANSACTION_LINE = createField(DSL.name("invtrxldt_invtrxl_inventorytransactionlineid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, InventoryTransactionLinePK.class, id -> new com.echothree.model.data.inventory.common.pk.InventoryTransactionLinePK(id), primaryKey -> primaryKey.getEntityId()));
081
082    /**
083     * The column
084     * <code>inventorytransactionlinedetails.invtrxldt_invtrx_inventorytransactionid</code>.
085     */
086    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails, InventoryTransactionPK> INVENTORY_TRANSACTION = createField(DSL.name("invtrxldt_invtrx_inventorytransactionid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, InventoryTransactionPK.class, id -> new com.echothree.model.data.inventory.common.pk.InventoryTransactionPK(id), primaryKey -> primaryKey.getEntityId()));
087
088    /**
089     * The column
090     * <code>inventorytransactionlinedetails.invtrxldt_inventorytransactionlinesequence</code>.
091     */
092    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails, Integer> INVENTORY_TRANSACTION_LINE_SEQUENCE = createField(DSL.name("invtrxldt_inventorytransactionlinesequence"), SQLDataType.INTEGER.nullable(false), this, "");
093
094    /**
095     * The column
096     * <code>inventorytransactionlinedetails.invtrxldt_invtrxrsn_inventorytransactionreasonid</code>.
097     */
098    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails, InventoryTransactionReasonPK> INVENTORY_TRANSACTION_REASON = createField(DSL.name("invtrxldt_invtrxrsn_inventorytransactionreasonid"), SQLDataType.BIGINT, this, "", Converter.ofNullable(Long.class, InventoryTransactionReasonPK.class, id -> new com.echothree.model.data.inventory.common.pk.InventoryTransactionReasonPK(id), primaryKey -> primaryKey.getEntityId()));
099
100    /**
101     * The column
102     * <code>inventorytransactionlinedetails.invtrxldt_itm_itemid</code>.
103     */
104    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails, ItemPK> ITEM = createField(DSL.name("invtrxldt_itm_itemid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, ItemPK.class, id -> new com.echothree.model.data.item.common.pk.ItemPK(id), primaryKey -> primaryKey.getEntityId()));
105
106    /**
107     * The column
108     * <code>inventorytransactionlinedetails.invtrxldt_lt_lotid</code>.
109     */
110    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails, LotPK> LOT = createField(DSL.name("invtrxldt_lt_lotid"), SQLDataType.BIGINT, this, "", Converter.ofNullable(Long.class, LotPK.class, id -> new com.echothree.model.data.inventory.common.pk.LotPK(id), primaryKey -> primaryKey.getEntityId()));
111
112    /**
113     * The column
114     * <code>inventorytransactionlinedetails.invtrxldt_invadjtyp_inventoryadjustmenttypeid</code>.
115     */
116    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails, InventoryAdjustmentTypePK> INVENTORY_ADJUSTMENT_TYPE = createField(DSL.name("invtrxldt_invadjtyp_inventoryadjustmenttypeid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, InventoryAdjustmentTypePK.class, id -> new com.echothree.model.data.inventory.common.pk.InventoryAdjustmentTypePK(id), primaryKey -> primaryKey.getEntityId()));
117
118    /**
119     * The column
120     * <code>inventorytransactionlinedetails.invtrxldt_unitamount</code>.
121     */
122    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails, Long> UNIT_AMOUNT = createField(DSL.name("invtrxldt_unitamount"), SQLDataType.BIGINT, this, "");
123
124    /**
125     * The column
126     * <code>inventorytransactionlinedetails.invtrxldt_description</code>.
127     */
128    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails, String> DESCRIPTION = createField(DSL.name("invtrxldt_description"), SQLDataType.VARCHAR(132), this, "");
129
130    /**
131     * The column
132     * <code>inventorytransactionlinedetails.invtrxldt_fromtime</code>.
133     */
134    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails, Long> FROM_TIME = createField(DSL.name("invtrxldt_fromtime"), SQLDataType.BIGINT.nullable(false), this, "");
135
136    /**
137     * The column
138     * <code>inventorytransactionlinedetails.invtrxldt_thrutime</code>.
139     */
140    public final TableField<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails, Long> THRU_TIME = createField(DSL.name("invtrxldt_thrutime"), SQLDataType.BIGINT.nullable(false), this, "");
141
142    private InventoryTransactionLineDetails(Name alias, Table<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails> aliased) {
143        this(alias, aliased, (Field<?>[]) null, null);
144    }
145
146    private InventoryTransactionLineDetails(Name alias, Table<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails> aliased, Field<?>[] parameters, Condition where) {
147        super(alias, null, aliased, parameters, DSL.comment(""), TableOptions.table(), where);
148    }
149
150    /**
151     * Create an aliased <code>inventorytransactionlinedetails</code> table
152     * reference
153     */
154    public InventoryTransactionLineDetails(String alias) {
155        this(DSL.name(alias), InventoryTransactionLineDetails);
156    }
157
158    /**
159     * Create an aliased <code>inventorytransactionlinedetails</code> table
160     * reference
161     */
162    public InventoryTransactionLineDetails(Name alias) {
163        this(alias, InventoryTransactionLineDetails);
164    }
165
166    /**
167     * Create a <code>inventorytransactionlinedetails</code> table reference
168     */
169    public InventoryTransactionLineDetails() {
170        this(DSL.name("inventorytransactionlinedetails"), null);
171    }
172
173    public <O extends Record> InventoryTransactionLineDetails(Table<O> path, ForeignKey<O, com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails> childPath, InverseForeignKey<O, com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails> parentPath) {
174        super(path, childPath, parentPath, InventoryTransactionLineDetails);
175    }
176
177    /**
178     * A subtype implementing {@link Path} for simplified path-based joins.
179     */
180    public static class InventoryTransactionLineDetailsPath extends InventoryTransactionLineDetails implements Path<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails> {
181
182        private static final long serialVersionUID = 1L;
183        public <O extends Record> InventoryTransactionLineDetailsPath(Table<O> path, ForeignKey<O, com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails> childPath, InverseForeignKey<O, com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails> parentPath) {
184            super(path, childPath, parentPath);
185        }
186        private InventoryTransactionLineDetailsPath(Name alias, Table<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails> aliased) {
187            super(alias, aliased);
188        }
189
190        @Override
191        public InventoryTransactionLineDetailsPath as(String alias) {
192            return new InventoryTransactionLineDetailsPath(DSL.name(alias), this);
193        }
194
195        @Override
196        public InventoryTransactionLineDetailsPath as(Name alias) {
197            return new InventoryTransactionLineDetailsPath(alias, this);
198        }
199
200        @Override
201        public InventoryTransactionLineDetailsPath as(Table<?> alias) {
202            return new InventoryTransactionLineDetailsPath(alias.getQualifiedName(), this);
203        }
204    }
205
206    @Override
207    public UniqueKey<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails> getPrimaryKey() {
208        return KeyRegistry.INVENTORY_TRANSACTION_LINE_DETAILS_PK;
209    }
210
211    @Override
212    public List<UniqueKey<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails>> getUniqueKeys() {
213        return Arrays.asList(KeyRegistry.INVENTORY_TRANSACTION_LINE_DETAILS_INVENTORY_TRANSACTION_LINE_AND_THRU_TIME_UK, KeyRegistry.INVENTORY_TRANSACTION_LINE_DETAILS_INVENTORY_TRANSACTION_AND_INVENTORY_TRANSACTION_LINE_SEQUENCE_AND_THRU_TIME_UK);
214    }
215
216    @Override
217    public List<ForeignKey<com.echothree.model.jooq.server.records.inventory.InventoryTransactionLineDetails, ?>> getReferences() {
218        return Arrays.asList(KeyRegistry.INVENTORY_TRANSACTION_LINE_DETAILS_INVENTORY_ADJUSTMENT_TYPE_FK, KeyRegistry.INVENTORY_TRANSACTION_LINE_DETAILS_INVENTORY_TRANSACTION_FK, KeyRegistry.INVENTORY_TRANSACTION_LINE_DETAILS_INVENTORY_TRANSACTION_LINE_FK, KeyRegistry.INVENTORY_TRANSACTION_LINE_DETAILS_INVENTORY_TRANSACTION_REASON_FK, KeyRegistry.INVENTORY_TRANSACTION_LINE_DETAILS_ITEM_FK, KeyRegistry.INVENTORY_TRANSACTION_LINE_DETAILS_LOT_FK);
219    }
220
221    private transient InventoryAdjustmentTypesPath _invtrxldt_invadjtyp_inventoryadjustmenttypeid_fk;
222
223    /**
224     * Get the implicit join path to the <code>inventoryadjustmenttypes</code>
225     * table.
226     */
227    public InventoryAdjustmentTypesPath invtrxldt_invadjtyp_inventoryadjustmenttypeid_fk() {
228        if (_invtrxldt_invadjtyp_inventoryadjustmenttypeid_fk == null)
229            _invtrxldt_invadjtyp_inventoryadjustmenttypeid_fk = new InventoryAdjustmentTypesPath(this, KeyRegistry.INVENTORY_TRANSACTION_LINE_DETAILS_INVENTORY_ADJUSTMENT_TYPE_FK, null);
230
231        return _invtrxldt_invadjtyp_inventoryadjustmenttypeid_fk;
232    }
233
234    private transient InventoryTransactionsPath _invtrxldt_invtrx_inventorytransactionid_fk;
235
236    /**
237     * Get the implicit join path to the <code>inventorytransactions</code>
238     * table.
239     */
240    public InventoryTransactionsPath invtrxldt_invtrx_inventorytransactionid_fk() {
241        if (_invtrxldt_invtrx_inventorytransactionid_fk == null)
242            _invtrxldt_invtrx_inventorytransactionid_fk = new InventoryTransactionsPath(this, KeyRegistry.INVENTORY_TRANSACTION_LINE_DETAILS_INVENTORY_TRANSACTION_FK, null);
243
244        return _invtrxldt_invtrx_inventorytransactionid_fk;
245    }
246
247    private transient InventoryTransactionLinesPath _invtrxldt_invtrxl_inventorytransactionlineid_fk;
248
249    /**
250     * Get the implicit join path to the <code>inventorytransactionlines</code>
251     * table.
252     */
253    public InventoryTransactionLinesPath invtrxldt_invtrxl_inventorytransactionlineid_fk() {
254        if (_invtrxldt_invtrxl_inventorytransactionlineid_fk == null)
255            _invtrxldt_invtrxl_inventorytransactionlineid_fk = new InventoryTransactionLinesPath(this, KeyRegistry.INVENTORY_TRANSACTION_LINE_DETAILS_INVENTORY_TRANSACTION_LINE_FK, null);
256
257        return _invtrxldt_invtrxl_inventorytransactionlineid_fk;
258    }
259
260    private transient InventoryTransactionReasonsPath _invtrxldt_invtrxrsn_inventorytransactionreasonid_fk;
261
262    /**
263     * Get the implicit join path to the
264     * <code>inventorytransactionreasons</code> table.
265     */
266    public InventoryTransactionReasonsPath invtrxldt_invtrxrsn_inventorytransactionreasonid_fk() {
267        if (_invtrxldt_invtrxrsn_inventorytransactionreasonid_fk == null)
268            _invtrxldt_invtrxrsn_inventorytransactionreasonid_fk = new InventoryTransactionReasonsPath(this, KeyRegistry.INVENTORY_TRANSACTION_LINE_DETAILS_INVENTORY_TRANSACTION_REASON_FK, null);
269
270        return _invtrxldt_invtrxrsn_inventorytransactionreasonid_fk;
271    }
272
273    private transient ItemsPath _invtrxldt_itm_itemid_fk;
274
275    /**
276     * Get the implicit join path to the <code>items</code> table.
277     */
278    public ItemsPath invtrxldt_itm_itemid_fk() {
279        if (_invtrxldt_itm_itemid_fk == null)
280            _invtrxldt_itm_itemid_fk = new ItemsPath(this, KeyRegistry.INVENTORY_TRANSACTION_LINE_DETAILS_ITEM_FK, null);
281
282        return _invtrxldt_itm_itemid_fk;
283    }
284
285    private transient LotsPath _invtrxldt_lt_lotid_fk;
286
287    /**
288     * Get the implicit join path to the <code>lots</code> table.
289     */
290    public LotsPath invtrxldt_lt_lotid_fk() {
291        if (_invtrxldt_lt_lotid_fk == null)
292            _invtrxldt_lt_lotid_fk = new LotsPath(this, KeyRegistry.INVENTORY_TRANSACTION_LINE_DETAILS_LOT_FK, null);
293
294        return _invtrxldt_lt_lotid_fk;
295    }
296
297    @Override
298    public InventoryTransactionLineDetails as(String alias) {
299        return new InventoryTransactionLineDetails(DSL.name(alias), this);
300    }
301
302    @Override
303    public InventoryTransactionLineDetails as(Name alias) {
304        return new InventoryTransactionLineDetails(alias, this);
305    }
306
307    @Override
308    public InventoryTransactionLineDetails as(Table<?> alias) {
309        return new InventoryTransactionLineDetails(alias.getQualifiedName(), this);
310    }
311
312    /**
313     * Rename this table
314     */
315    @Override
316    public InventoryTransactionLineDetails rename(String name) {
317        return new InventoryTransactionLineDetails(DSL.name(name), null);
318    }
319
320    /**
321     * Rename this table
322     */
323    @Override
324    public InventoryTransactionLineDetails rename(Name name) {
325        return new InventoryTransactionLineDetails(name, null);
326    }
327
328    /**
329     * Rename this table
330     */
331    @Override
332    public InventoryTransactionLineDetails rename(Table<?> name) {
333        return new InventoryTransactionLineDetails(name.getQualifiedName(), null);
334    }
335
336    /**
337     * Create an inline derived table from this table
338     */
339    @Override
340    public InventoryTransactionLineDetails where(Condition condition) {
341        return new InventoryTransactionLineDetails(getQualifiedName(), aliased() ? this : null, null, Internal.condition(this, condition));
342    }
343
344    /**
345     * Create an inline derived table from this table
346     */
347    @Override
348    public InventoryTransactionLineDetails where(Collection<? extends Condition> conditions) {
349        return where(DSL.and(conditions));
350    }
351
352    /**
353     * Create an inline derived table from this table
354     */
355    @Override
356    public InventoryTransactionLineDetails where(Condition... conditions) {
357        return where(DSL.and(conditions));
358    }
359
360    /**
361     * Create an inline derived table from this table
362     */
363    @Override
364    public InventoryTransactionLineDetails where(Field<Boolean> condition) {
365        return where(DSL.condition(condition));
366    }
367
368    /**
369     * Create an inline derived table from this table
370     */
371    @Override
372    @PlainSQL
373    public InventoryTransactionLineDetails where(SQL condition) {
374        return where(DSL.condition(condition));
375    }
376
377    /**
378     * Create an inline derived table from this table
379     */
380    @Override
381    @PlainSQL
382    public InventoryTransactionLineDetails where(@Stringly.SQL String condition) {
383        return where(DSL.condition(condition));
384    }
385
386    /**
387     * Create an inline derived table from this table
388     */
389    @Override
390    @PlainSQL
391    public InventoryTransactionLineDetails where(@Stringly.SQL String condition, Object... binds) {
392        return where(DSL.condition(condition, binds));
393    }
394
395    /**
396     * Create an inline derived table from this table
397     */
398    @Override
399    @PlainSQL
400    public InventoryTransactionLineDetails where(@Stringly.SQL String condition, QueryPart... parts) {
401        return where(DSL.condition(condition, parts));
402    }
403
404    /**
405     * Create an inline derived table from this table
406     */
407    @Override
408    public InventoryTransactionLineDetails whereExists(TableLike<?> select) {
409        return where(DSL.exists(select));
410    }
411
412    /**
413     * Create an inline derived table from this table
414     */
415    @Override
416    public InventoryTransactionLineDetails whereNotExists(TableLike<?> select) {
417        return where(DSL.notExists(select));
418    }
419}