001/* 002 * This file is generated by jOOQ. 003 */ 004package com.echothree.model.jooq.server.tables.financial; 005 006 007import com.echothree.model.data.accounting.common.pk.CurrencyPK; 008import com.echothree.model.data.accounting.common.pk.GlAccountPK; 009import com.echothree.model.data.financial.common.pk.FinancialAccountDetailPK; 010import com.echothree.model.data.financial.common.pk.FinancialAccountPK; 011import com.echothree.model.data.financial.common.pk.FinancialAccountTypePK; 012import com.echothree.model.jooq.server.KeyRegistry; 013import com.echothree.model.jooq.server.tables.accounting.Currencies.CurrenciesPath; 014import com.echothree.model.jooq.server.tables.accounting.GlAccounts.GlAccountsPath; 015import com.echothree.model.jooq.server.tables.financial.FinancialAccountTypes.FinancialAccountTypesPath; 016import com.echothree.model.jooq.server.tables.financial.FinancialAccounts.FinancialAccountsPath; 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 FinancialAccountDetails extends TableImpl<com.echothree.model.jooq.server.records.financial.FinancialAccountDetails> { 050 051 private static final long serialVersionUID = 1L; 052 053 /** 054 * The reference instance of <code>financialaccountdetails</code> 055 */ 056 public static final FinancialAccountDetails FinancialAccountDetails = new FinancialAccountDetails(); 057 058 /** 059 * The class holding records for this type 060 */ 061 @Override 062 public Class<com.echothree.model.jooq.server.records.financial.FinancialAccountDetails> getRecordType() { 063 return com.echothree.model.jooq.server.records.financial.FinancialAccountDetails.class; 064 } 065 066 /** 067 * The column 068 * <code>financialaccountdetails.finadt_financialaccountdetailid</code>. 069 */ 070 public final TableField<com.echothree.model.jooq.server.records.financial.FinancialAccountDetails, FinancialAccountDetailPK> FINANCIAL_ACCOUNT_DETAIL = createField(DSL.name("finadt_financialaccountdetailid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, FinancialAccountDetailPK.class, id -> new com.echothree.model.data.financial.common.pk.FinancialAccountDetailPK(id), primaryKey -> primaryKey.getEntityId())); 071 072 /** 073 * The column 074 * <code>financialaccountdetails.finadt_fina_financialaccountid</code>. 075 */ 076 public final TableField<com.echothree.model.jooq.server.records.financial.FinancialAccountDetails, FinancialAccountPK> FINANCIAL_ACCOUNT = createField(DSL.name("finadt_fina_financialaccountid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, FinancialAccountPK.class, id -> new com.echothree.model.data.financial.common.pk.FinancialAccountPK(id), primaryKey -> primaryKey.getEntityId())); 077 078 /** 079 * The column 080 * <code>financialaccountdetails.finadt_fnatyp_financialaccounttypeid</code>. 081 */ 082 public final TableField<com.echothree.model.jooq.server.records.financial.FinancialAccountDetails, FinancialAccountTypePK> FINANCIAL_ACCOUNT_TYPE = createField(DSL.name("finadt_fnatyp_financialaccounttypeid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, FinancialAccountTypePK.class, id -> new com.echothree.model.data.financial.common.pk.FinancialAccountTypePK(id), primaryKey -> primaryKey.getEntityId())); 083 084 /** 085 * The column 086 * <code>financialaccountdetails.finadt_financialaccountname</code>. 087 */ 088 public final TableField<com.echothree.model.jooq.server.records.financial.FinancialAccountDetails, String> FINANCIAL_ACCOUNT_NAME = createField(DSL.name("finadt_financialaccountname"), SQLDataType.VARCHAR(40).nullable(false), this, ""); 089 090 /** 091 * The column <code>financialaccountdetails.finadt_cur_currencyid</code>. 092 */ 093 public final TableField<com.echothree.model.jooq.server.records.financial.FinancialAccountDetails, CurrencyPK> CURRENCY = createField(DSL.name("finadt_cur_currencyid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, CurrencyPK.class, id -> new com.echothree.model.data.accounting.common.pk.CurrencyPK(id), primaryKey -> primaryKey.getEntityId())); 094 095 /** 096 * The column <code>financialaccountdetails.finadt_gla_glaccountid</code>. 097 */ 098 public final TableField<com.echothree.model.jooq.server.records.financial.FinancialAccountDetails, GlAccountPK> GL_ACCOUNT = createField(DSL.name("finadt_gla_glaccountid"), SQLDataType.BIGINT.nullable(false), this, "", Converter.ofNullable(Long.class, GlAccountPK.class, id -> new com.echothree.model.data.accounting.common.pk.GlAccountPK(id), primaryKey -> primaryKey.getEntityId())); 099 100 /** 101 * The column <code>financialaccountdetails.finadt_reference</code>. 102 */ 103 public final TableField<com.echothree.model.jooq.server.records.financial.FinancialAccountDetails, String> REFERENCE = createField(DSL.name("finadt_reference"), SQLDataType.VARCHAR(40), this, ""); 104 105 /** 106 * The column <code>financialaccountdetails.finadt_description</code>. 107 */ 108 public final TableField<com.echothree.model.jooq.server.records.financial.FinancialAccountDetails, String> DESCRIPTION = createField(DSL.name("finadt_description"), SQLDataType.VARCHAR(132), this, ""); 109 110 /** 111 * The column <code>financialaccountdetails.finadt_fromtime</code>. 112 */ 113 public final TableField<com.echothree.model.jooq.server.records.financial.FinancialAccountDetails, Long> FROM_TIME = createField(DSL.name("finadt_fromtime"), SQLDataType.BIGINT.nullable(false), this, ""); 114 115 /** 116 * The column <code>financialaccountdetails.finadt_thrutime</code>. 117 */ 118 public final TableField<com.echothree.model.jooq.server.records.financial.FinancialAccountDetails, Long> THRU_TIME = createField(DSL.name("finadt_thrutime"), SQLDataType.BIGINT.nullable(false), this, ""); 119 120 private FinancialAccountDetails(Name alias, Table<com.echothree.model.jooq.server.records.financial.FinancialAccountDetails> aliased) { 121 this(alias, aliased, (Field<?>[]) null, null); 122 } 123 124 private FinancialAccountDetails(Name alias, Table<com.echothree.model.jooq.server.records.financial.FinancialAccountDetails> aliased, Field<?>[] parameters, Condition where) { 125 super(alias, null, aliased, parameters, DSL.comment(""), TableOptions.table(), where); 126 } 127 128 /** 129 * Create an aliased <code>financialaccountdetails</code> table reference 130 */ 131 public FinancialAccountDetails(String alias) { 132 this(DSL.name(alias), FinancialAccountDetails); 133 } 134 135 /** 136 * Create an aliased <code>financialaccountdetails</code> table reference 137 */ 138 public FinancialAccountDetails(Name alias) { 139 this(alias, FinancialAccountDetails); 140 } 141 142 /** 143 * Create a <code>financialaccountdetails</code> table reference 144 */ 145 public FinancialAccountDetails() { 146 this(DSL.name("financialaccountdetails"), null); 147 } 148 149 public <O extends Record> FinancialAccountDetails(Table<O> path, ForeignKey<O, com.echothree.model.jooq.server.records.financial.FinancialAccountDetails> childPath, InverseForeignKey<O, com.echothree.model.jooq.server.records.financial.FinancialAccountDetails> parentPath) { 150 super(path, childPath, parentPath, FinancialAccountDetails); 151 } 152 153 /** 154 * A subtype implementing {@link Path} for simplified path-based joins. 155 */ 156 public static class FinancialAccountDetailsPath extends FinancialAccountDetails implements Path<com.echothree.model.jooq.server.records.financial.FinancialAccountDetails> { 157 158 private static final long serialVersionUID = 1L; 159 public <O extends Record> FinancialAccountDetailsPath(Table<O> path, ForeignKey<O, com.echothree.model.jooq.server.records.financial.FinancialAccountDetails> childPath, InverseForeignKey<O, com.echothree.model.jooq.server.records.financial.FinancialAccountDetails> parentPath) { 160 super(path, childPath, parentPath); 161 } 162 private FinancialAccountDetailsPath(Name alias, Table<com.echothree.model.jooq.server.records.financial.FinancialAccountDetails> aliased) { 163 super(alias, aliased); 164 } 165 166 @Override 167 public FinancialAccountDetailsPath as(String alias) { 168 return new FinancialAccountDetailsPath(DSL.name(alias), this); 169 } 170 171 @Override 172 public FinancialAccountDetailsPath as(Name alias) { 173 return new FinancialAccountDetailsPath(alias, this); 174 } 175 176 @Override 177 public FinancialAccountDetailsPath as(Table<?> alias) { 178 return new FinancialAccountDetailsPath(alias.getQualifiedName(), this); 179 } 180 } 181 182 @Override 183 public UniqueKey<com.echothree.model.jooq.server.records.financial.FinancialAccountDetails> getPrimaryKey() { 184 return KeyRegistry.FINANCIAL_ACCOUNT_DETAILS_PK; 185 } 186 187 @Override 188 public List<UniqueKey<com.echothree.model.jooq.server.records.financial.FinancialAccountDetails>> getUniqueKeys() { 189 return Arrays.asList(KeyRegistry.FINANCIAL_ACCOUNT_DETAILS_FINANCIAL_ACCOUNT_AND_THRU_TIME_UK, KeyRegistry.FINANCIAL_ACCOUNT_DETAILS_FINANCIAL_ACCOUNT_TYPE_AND_FINANCIAL_ACCOUNT_NAME_AND_THRU_TIME_UK); 190 } 191 192 @Override 193 public List<ForeignKey<com.echothree.model.jooq.server.records.financial.FinancialAccountDetails, ?>> getReferences() { 194 return Arrays.asList(KeyRegistry.FINANCIAL_ACCOUNT_DETAILS_CURRENCY_FK, KeyRegistry.FINANCIAL_ACCOUNT_DETAILS_FINANCIAL_ACCOUNT_FK, KeyRegistry.FINANCIAL_ACCOUNT_DETAILS_FINANCIAL_ACCOUNT_TYPE_FK, KeyRegistry.FINANCIAL_ACCOUNT_DETAILS_GL_ACCOUNT_FK); 195 } 196 197 private transient CurrenciesPath _finadt_cur_currencyid_fk; 198 199 /** 200 * Get the implicit join path to the <code>currencies</code> table. 201 */ 202 public CurrenciesPath finadt_cur_currencyid_fk() { 203 if (_finadt_cur_currencyid_fk == null) 204 _finadt_cur_currencyid_fk = new CurrenciesPath(this, KeyRegistry.FINANCIAL_ACCOUNT_DETAILS_CURRENCY_FK, null); 205 206 return _finadt_cur_currencyid_fk; 207 } 208 209 private transient FinancialAccountsPath _finadt_fina_financialaccountid_fk; 210 211 /** 212 * Get the implicit join path to the <code>financialaccounts</code> table. 213 */ 214 public FinancialAccountsPath finadt_fina_financialaccountid_fk() { 215 if (_finadt_fina_financialaccountid_fk == null) 216 _finadt_fina_financialaccountid_fk = new FinancialAccountsPath(this, KeyRegistry.FINANCIAL_ACCOUNT_DETAILS_FINANCIAL_ACCOUNT_FK, null); 217 218 return _finadt_fina_financialaccountid_fk; 219 } 220 221 private transient FinancialAccountTypesPath _finadt_fnatyp_financialaccounttypeid_fk; 222 223 /** 224 * Get the implicit join path to the <code>financialaccounttypes</code> 225 * table. 226 */ 227 public FinancialAccountTypesPath finadt_fnatyp_financialaccounttypeid_fk() { 228 if (_finadt_fnatyp_financialaccounttypeid_fk == null) 229 _finadt_fnatyp_financialaccounttypeid_fk = new FinancialAccountTypesPath(this, KeyRegistry.FINANCIAL_ACCOUNT_DETAILS_FINANCIAL_ACCOUNT_TYPE_FK, null); 230 231 return _finadt_fnatyp_financialaccounttypeid_fk; 232 } 233 234 private transient GlAccountsPath _finadt_gla_glaccountid_fk; 235 236 /** 237 * Get the implicit join path to the <code>glaccounts</code> table. 238 */ 239 public GlAccountsPath finadt_gla_glaccountid_fk() { 240 if (_finadt_gla_glaccountid_fk == null) 241 _finadt_gla_glaccountid_fk = new GlAccountsPath(this, KeyRegistry.FINANCIAL_ACCOUNT_DETAILS_GL_ACCOUNT_FK, null); 242 243 return _finadt_gla_glaccountid_fk; 244 } 245 246 @Override 247 public FinancialAccountDetails as(String alias) { 248 return new FinancialAccountDetails(DSL.name(alias), this); 249 } 250 251 @Override 252 public FinancialAccountDetails as(Name alias) { 253 return new FinancialAccountDetails(alias, this); 254 } 255 256 @Override 257 public FinancialAccountDetails as(Table<?> alias) { 258 return new FinancialAccountDetails(alias.getQualifiedName(), this); 259 } 260 261 /** 262 * Rename this table 263 */ 264 @Override 265 public FinancialAccountDetails rename(String name) { 266 return new FinancialAccountDetails(DSL.name(name), null); 267 } 268 269 /** 270 * Rename this table 271 */ 272 @Override 273 public FinancialAccountDetails rename(Name name) { 274 return new FinancialAccountDetails(name, null); 275 } 276 277 /** 278 * Rename this table 279 */ 280 @Override 281 public FinancialAccountDetails rename(Table<?> name) { 282 return new FinancialAccountDetails(name.getQualifiedName(), null); 283 } 284 285 /** 286 * Create an inline derived table from this table 287 */ 288 @Override 289 public FinancialAccountDetails where(Condition condition) { 290 return new FinancialAccountDetails(getQualifiedName(), aliased() ? this : null, null, Internal.condition(this, condition)); 291 } 292 293 /** 294 * Create an inline derived table from this table 295 */ 296 @Override 297 public FinancialAccountDetails where(Collection<? extends Condition> conditions) { 298 return where(DSL.and(conditions)); 299 } 300 301 /** 302 * Create an inline derived table from this table 303 */ 304 @Override 305 public FinancialAccountDetails where(Condition... conditions) { 306 return where(DSL.and(conditions)); 307 } 308 309 /** 310 * Create an inline derived table from this table 311 */ 312 @Override 313 public FinancialAccountDetails where(Field<Boolean> condition) { 314 return where(DSL.condition(condition)); 315 } 316 317 /** 318 * Create an inline derived table from this table 319 */ 320 @Override 321 @PlainSQL 322 public FinancialAccountDetails where(SQL 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 FinancialAccountDetails where(@Stringly.SQL String 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 FinancialAccountDetails where(@Stringly.SQL String condition, Object... binds) { 341 return where(DSL.condition(condition, binds)); 342 } 343 344 /** 345 * Create an inline derived table from this table 346 */ 347 @Override 348 @PlainSQL 349 public FinancialAccountDetails where(@Stringly.SQL String condition, QueryPart... parts) { 350 return where(DSL.condition(condition, parts)); 351 } 352 353 /** 354 * Create an inline derived table from this table 355 */ 356 @Override 357 public FinancialAccountDetails whereExists(TableLike<?> select) { 358 return where(DSL.exists(select)); 359 } 360 361 /** 362 * Create an inline derived table from this table 363 */ 364 @Override 365 public FinancialAccountDetails whereNotExists(TableLike<?> select) { 366 return where(DSL.notExists(select)); 367 } 368}