001/*
002 * This file is generated by jOOQ.
003 */
004package com.echothree.model.jooq.server.tables.order;
005
006
007import com.echothree.model.data.order.common.pk.OrderPK;
008import com.echothree.model.data.order.common.pk.OrderPaymentPreferenceDetailPK;
009import com.echothree.model.data.order.common.pk.OrderPaymentPreferencePK;
010import com.echothree.model.data.payment.common.pk.PartyPaymentMethodPK;
011import com.echothree.model.data.payment.common.pk.PaymentMethodPK;
012import com.echothree.model.jooq.server.KeyRegistry;
013import com.echothree.model.jooq.server.tables.order.OrderPaymentPreferences.OrderPaymentPreferencesPath;
014import com.echothree.model.jooq.server.tables.order.Orders.OrdersPath;
015import com.echothree.model.jooq.server.tables.payment.PartyPaymentMethods.PartyPaymentMethodsPath;
016import com.echothree.model.jooq.server.tables.payment.PaymentMethods.PaymentMethodsPath;
017
018import java.util.Arrays;
019import java.util.Collection;
020import java.util.List;
021
022import org.jooq.Condition;
023import org.jooq.Converter;
024import org.jooq.Field;
025import org.jooq.ForeignKey;
026import org.jooq.InverseForeignKey;
027import org.jooq.Name;
028import org.jooq.Path;
029import org.jooq.PlainSQL;
030import org.jooq.QueryPart;
031import org.jooq.Record;
032import org.jooq.SQL;
033import org.jooq.Stringly;
034import org.jooq.Table;
035import org.jooq.TableField;
036import org.jooq.TableLike;
037import org.jooq.TableOptions;
038import org.jooq.UniqueKey;
039import org.jooq.impl.DSL;
040import org.jooq.impl.Internal;
041import org.jooq.impl.SQLDataType;
042import org.jooq.impl.TableImpl;
043
044
045/**
046 * This class is generated by jOOQ.
047 */
048@SuppressWarnings({ "all", "unchecked", "rawtypes", "this-escape" })
049public class OrderPaymentPreferenceDetails extends TableImpl<com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails> {
050
051    private static final long serialVersionUID = 1L;
052
053    /**
054     * The reference instance of <code>orderpaymentpreferencedetails</code>
055     */
056    public static final OrderPaymentPreferenceDetails OrderPaymentPreferenceDetails = new OrderPaymentPreferenceDetails();
057
058    /**
059     * The class holding records for this type
060     */
061    @Override
062    public Class<com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails> getRecordType() {
063        return com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails.class;
064    }
065
066    /**
067     * The column
068     * <code>orderpaymentpreferencedetails.ordpymtprfdt_orderpaymentpreferencedetailid</code>.
069     */
070    public final TableField<com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails, OrderPaymentPreferenceDetailPK> ORDER_PAYMENT_PREFERENCE_DETAIL = createField(DSL.name("ordpymtprfdt_orderpaymentpreferencedetailid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, OrderPaymentPreferenceDetailPK.class, id -> new com.echothree.model.data.order.common.pk.OrderPaymentPreferenceDetailPK(id), primaryKey -> primaryKey.getEntityId()));
071
072    /**
073     * The column
074     * <code>orderpaymentpreferencedetails.ordpymtprfdt_ordpymtprf_orderpaymentpreferenceid</code>.
075     */
076    public final TableField<com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails, OrderPaymentPreferencePK> ORDER_PAYMENT_PREFERENCE = createField(DSL.name("ordpymtprfdt_ordpymtprf_orderpaymentpreferenceid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, OrderPaymentPreferencePK.class, id -> new com.echothree.model.data.order.common.pk.OrderPaymentPreferencePK(id), primaryKey -> primaryKey.getEntityId()));
077
078    /**
079     * The column
080     * <code>orderpaymentpreferencedetails.ordpymtprfdt_ord_orderid</code>.
081     */
082    public final TableField<com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails, OrderPK> ORDER = createField(DSL.name("ordpymtprfdt_ord_orderid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, OrderPK.class, id -> new com.echothree.model.data.order.common.pk.OrderPK(id), primaryKey -> primaryKey.getEntityId()));
083
084    /**
085     * The column
086     * <code>orderpaymentpreferencedetails.ordpymtprfdt_orderpaymentpreferencesequence</code>.
087     */
088    public final TableField<com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails, Integer> ORDER_PAYMENT_PREFERENCE_SEQUENCE = createField(DSL.name("ordpymtprfdt_orderpaymentpreferencesequence"), SQLDataType.INTEGER.nullable(false), this, "");
089
090    /**
091     * The column
092     * <code>orderpaymentpreferencedetails.ordpymtprfdt_pm_paymentmethodid</code>.
093     */
094    public final TableField<com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails, PaymentMethodPK> PAYMENT_METHOD = createField(DSL.name("ordpymtprfdt_pm_paymentmethodid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, PaymentMethodPK.class, id -> new com.echothree.model.data.payment.common.pk.PaymentMethodPK(id), primaryKey -> primaryKey.getEntityId()));
095
096    /**
097     * The column
098     * <code>orderpaymentpreferencedetails.ordpymtprfdt_parpm_partypaymentmethodid</code>.
099     */
100    public final TableField<com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails, PartyPaymentMethodPK> PARTY_PAYMENT_METHOD = createField(DSL.name("ordpymtprfdt_parpm_partypaymentmethodid"), SQLDataType.BIGINT, this, "", Converter.ofNullable(Long.class, PartyPaymentMethodPK.class, id -> new com.echothree.model.data.payment.common.pk.PartyPaymentMethodPK(id), primaryKey -> primaryKey.getEntityId()));
101
102    /**
103     * The column
104     * <code>orderpaymentpreferencedetails.ordpymtprfdt_waspresent</code>.
105     */
106    public final TableField<com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails, Boolean> WAS_PRESENT = createField(DSL.name("ordpymtprfdt_waspresent"), SQLDataType.BIT, this, "");
107
108    /**
109     * The column
110     * <code>orderpaymentpreferencedetails.ordpymtprfdt_maximumamount</code>.
111     */
112    public final TableField<com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails, Long> MAXIMUM_AMOUNT = createField(DSL.name("ordpymtprfdt_maximumamount"), SQLDataType.BIGINT, this, "");
113
114    /**
115     * The column
116     * <code>orderpaymentpreferencedetails.ordpymtprfdt_sortorder</code>.
117     */
118    public final TableField<com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails, Integer> SORT_ORDER = createField(DSL.name("ordpymtprfdt_sortorder"), SQLDataType.INTEGER.nullable(false), this, "");
119
120    /**
121     * The column
122     * <code>orderpaymentpreferencedetails.ordpymtprfdt_fromtime</code>.
123     */
124    public final TableField<com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails, Long> FROM_TIME = createField(DSL.name("ordpymtprfdt_fromtime"), SQLDataType.BIGINT.nullable(false), this, "");
125
126    /**
127     * The column
128     * <code>orderpaymentpreferencedetails.ordpymtprfdt_thrutime</code>.
129     */
130    public final TableField<com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails, Long> THRU_TIME = createField(DSL.name("ordpymtprfdt_thrutime"), SQLDataType.BIGINT.nullable(false), this, "");
131
132    private OrderPaymentPreferenceDetails(Name alias, Table<com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails> aliased) {
133        this(alias, aliased, (Field<?>[]) null, null);
134    }
135
136    private OrderPaymentPreferenceDetails(Name alias, Table<com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails> aliased, Field<?>[] parameters, Condition where) {
137        super(alias, null, aliased, parameters, DSL.comment(""), TableOptions.table(), where);
138    }
139
140    /**
141     * Create an aliased <code>orderpaymentpreferencedetails</code> table
142     * reference
143     */
144    public OrderPaymentPreferenceDetails(String alias) {
145        this(DSL.name(alias), OrderPaymentPreferenceDetails);
146    }
147
148    /**
149     * Create an aliased <code>orderpaymentpreferencedetails</code> table
150     * reference
151     */
152    public OrderPaymentPreferenceDetails(Name alias) {
153        this(alias, OrderPaymentPreferenceDetails);
154    }
155
156    /**
157     * Create a <code>orderpaymentpreferencedetails</code> table reference
158     */
159    public OrderPaymentPreferenceDetails() {
160        this(DSL.name("orderpaymentpreferencedetails"), null);
161    }
162
163    public <O extends Record> OrderPaymentPreferenceDetails(Table<O> path, ForeignKey<O, com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails> childPath, InverseForeignKey<O, com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails> parentPath) {
164        super(path, childPath, parentPath, OrderPaymentPreferenceDetails);
165    }
166
167    /**
168     * A subtype implementing {@link Path} for simplified path-based joins.
169     */
170    public static class OrderPaymentPreferenceDetailsPath extends OrderPaymentPreferenceDetails implements Path<com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails> {
171
172        private static final long serialVersionUID = 1L;
173        public <O extends Record> OrderPaymentPreferenceDetailsPath(Table<O> path, ForeignKey<O, com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails> childPath, InverseForeignKey<O, com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails> parentPath) {
174            super(path, childPath, parentPath);
175        }
176        private OrderPaymentPreferenceDetailsPath(Name alias, Table<com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails> aliased) {
177            super(alias, aliased);
178        }
179
180        @Override
181        public OrderPaymentPreferenceDetailsPath as(String alias) {
182            return new OrderPaymentPreferenceDetailsPath(DSL.name(alias), this);
183        }
184
185        @Override
186        public OrderPaymentPreferenceDetailsPath as(Name alias) {
187            return new OrderPaymentPreferenceDetailsPath(alias, this);
188        }
189
190        @Override
191        public OrderPaymentPreferenceDetailsPath as(Table<?> alias) {
192            return new OrderPaymentPreferenceDetailsPath(alias.getQualifiedName(), this);
193        }
194    }
195
196    @Override
197    public UniqueKey<com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails> getPrimaryKey() {
198        return KeyRegistry.ORDER_PAYMENT_PREFERENCE_DETAILS_PK;
199    }
200
201    @Override
202    public List<UniqueKey<com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails>> getUniqueKeys() {
203        return Arrays.asList(KeyRegistry.ORDER_PAYMENT_PREFERENCE_DETAILS_ORDER_PAYMENT_PREFERENCE_AND_THRU_TIME_UK, KeyRegistry.ORDER_PAYMENT_PREFERENCE_DETAILS_ORDER_AND_ORDER_PAYMENT_PREFERENCE_SEQUENCE_AND_THRU_TIME_UK);
204    }
205
206    @Override
207    public List<ForeignKey<com.echothree.model.jooq.server.records.order.OrderPaymentPreferenceDetails, ?>> getReferences() {
208        return Arrays.asList(KeyRegistry.ORDER_PAYMENT_PREFERENCE_DETAILS_ORDER_FK, KeyRegistry.ORDER_PAYMENT_PREFERENCE_DETAILS_ORDER_PAYMENT_PREFERENCE_FK, KeyRegistry.ORDER_PAYMENT_PREFERENCE_DETAILS_PARTY_PAYMENT_METHOD_FK, KeyRegistry.ORDER_PAYMENT_PREFERENCE_DETAILS_PAYMENT_METHOD_FK);
209    }
210
211    private transient OrdersPath _ordpymtprfdt_ord_orderid_fk;
212
213    /**
214     * Get the implicit join path to the <code>orders</code> table.
215     */
216    public OrdersPath ordpymtprfdt_ord_orderid_fk() {
217        if (_ordpymtprfdt_ord_orderid_fk == null)
218            _ordpymtprfdt_ord_orderid_fk = new OrdersPath(this, KeyRegistry.ORDER_PAYMENT_PREFERENCE_DETAILS_ORDER_FK, null);
219
220        return _ordpymtprfdt_ord_orderid_fk;
221    }
222
223    private transient OrderPaymentPreferencesPath _ordpymtprfdt_ordpymtprf_orderpaymentpreferenceid_fk;
224
225    /**
226     * Get the implicit join path to the <code>orderpaymentpreferences</code>
227     * table.
228     */
229    public OrderPaymentPreferencesPath ordpymtprfdt_ordpymtprf_orderpaymentpreferenceid_fk() {
230        if (_ordpymtprfdt_ordpymtprf_orderpaymentpreferenceid_fk == null)
231            _ordpymtprfdt_ordpymtprf_orderpaymentpreferenceid_fk = new OrderPaymentPreferencesPath(this, KeyRegistry.ORDER_PAYMENT_PREFERENCE_DETAILS_ORDER_PAYMENT_PREFERENCE_FK, null);
232
233        return _ordpymtprfdt_ordpymtprf_orderpaymentpreferenceid_fk;
234    }
235
236    private transient PartyPaymentMethodsPath _ordpymtprfdt_parpm_partypaymentmethodid_fk;
237
238    /**
239     * Get the implicit join path to the <code>partypaymentmethods</code> table.
240     */
241    public PartyPaymentMethodsPath ordpymtprfdt_parpm_partypaymentmethodid_fk() {
242        if (_ordpymtprfdt_parpm_partypaymentmethodid_fk == null)
243            _ordpymtprfdt_parpm_partypaymentmethodid_fk = new PartyPaymentMethodsPath(this, KeyRegistry.ORDER_PAYMENT_PREFERENCE_DETAILS_PARTY_PAYMENT_METHOD_FK, null);
244
245        return _ordpymtprfdt_parpm_partypaymentmethodid_fk;
246    }
247
248    private transient PaymentMethodsPath _ordpymtprfdt_pm_paymentmethodid_fk;
249
250    /**
251     * Get the implicit join path to the <code>paymentmethods</code> table.
252     */
253    public PaymentMethodsPath ordpymtprfdt_pm_paymentmethodid_fk() {
254        if (_ordpymtprfdt_pm_paymentmethodid_fk == null)
255            _ordpymtprfdt_pm_paymentmethodid_fk = new PaymentMethodsPath(this, KeyRegistry.ORDER_PAYMENT_PREFERENCE_DETAILS_PAYMENT_METHOD_FK, null);
256
257        return _ordpymtprfdt_pm_paymentmethodid_fk;
258    }
259
260    @Override
261    public OrderPaymentPreferenceDetails as(String alias) {
262        return new OrderPaymentPreferenceDetails(DSL.name(alias), this);
263    }
264
265    @Override
266    public OrderPaymentPreferenceDetails as(Name alias) {
267        return new OrderPaymentPreferenceDetails(alias, this);
268    }
269
270    @Override
271    public OrderPaymentPreferenceDetails as(Table<?> alias) {
272        return new OrderPaymentPreferenceDetails(alias.getQualifiedName(), this);
273    }
274
275    /**
276     * Rename this table
277     */
278    @Override
279    public OrderPaymentPreferenceDetails rename(String name) {
280        return new OrderPaymentPreferenceDetails(DSL.name(name), null);
281    }
282
283    /**
284     * Rename this table
285     */
286    @Override
287    public OrderPaymentPreferenceDetails rename(Name name) {
288        return new OrderPaymentPreferenceDetails(name, null);
289    }
290
291    /**
292     * Rename this table
293     */
294    @Override
295    public OrderPaymentPreferenceDetails rename(Table<?> name) {
296        return new OrderPaymentPreferenceDetails(name.getQualifiedName(), null);
297    }
298
299    /**
300     * Create an inline derived table from this table
301     */
302    @Override
303    public OrderPaymentPreferenceDetails where(Condition condition) {
304        return new OrderPaymentPreferenceDetails(getQualifiedName(), aliased() ? this : null, null, Internal.condition(this, condition));
305    }
306
307    /**
308     * Create an inline derived table from this table
309     */
310    @Override
311    public OrderPaymentPreferenceDetails where(Collection<? extends Condition> conditions) {
312        return where(DSL.and(conditions));
313    }
314
315    /**
316     * Create an inline derived table from this table
317     */
318    @Override
319    public OrderPaymentPreferenceDetails where(Condition... conditions) {
320        return where(DSL.and(conditions));
321    }
322
323    /**
324     * Create an inline derived table from this table
325     */
326    @Override
327    public OrderPaymentPreferenceDetails where(Field<Boolean> condition) {
328        return where(DSL.condition(condition));
329    }
330
331    /**
332     * Create an inline derived table from this table
333     */
334    @Override
335    @PlainSQL
336    public OrderPaymentPreferenceDetails where(SQL condition) {
337        return where(DSL.condition(condition));
338    }
339
340    /**
341     * Create an inline derived table from this table
342     */
343    @Override
344    @PlainSQL
345    public OrderPaymentPreferenceDetails where(@Stringly.SQL String condition) {
346        return where(DSL.condition(condition));
347    }
348
349    /**
350     * Create an inline derived table from this table
351     */
352    @Override
353    @PlainSQL
354    public OrderPaymentPreferenceDetails where(@Stringly.SQL String condition, Object... binds) {
355        return where(DSL.condition(condition, binds));
356    }
357
358    /**
359     * Create an inline derived table from this table
360     */
361    @Override
362    @PlainSQL
363    public OrderPaymentPreferenceDetails where(@Stringly.SQL String condition, QueryPart... parts) {
364        return where(DSL.condition(condition, parts));
365    }
366
367    /**
368     * Create an inline derived table from this table
369     */
370    @Override
371    public OrderPaymentPreferenceDetails whereExists(TableLike<?> select) {
372        return where(DSL.exists(select));
373    }
374
375    /**
376     * Create an inline derived table from this table
377     */
378    @Override
379    public OrderPaymentPreferenceDetails whereNotExists(TableLike<?> select) {
380        return where(DSL.notExists(select));
381    }
382}