added billing
This commit is contained in:
32
.classpath
32
.classpath
@ -1,18 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="src" output="bin/main" path="src/main/resources">
|
||||
<attributes>
|
||||
<attribute name="gradle_scope" value="main"/>
|
||||
<attribute name="gradle_used_by_scope" value="main,test"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="src" output="bin/test" path="src/test/java">
|
||||
<attributes>
|
||||
<attribute name="gradle_scope" value="test"/>
|
||||
<attribute name="gradle_used_by_scope" value="test"/>
|
||||
<attribute name="test" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="src" output="bin/main" path="src/main/java">
|
||||
<attributes>
|
||||
<attribute name="gradle_scope" value="main"/>
|
||||
@ -25,13 +12,30 @@
|
||||
<attribute name="gradle_used_by_scope" value="main,test"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="src" output="bin/main" path="src/main/resources">
|
||||
<attributes>
|
||||
<attribute name="gradle_scope" value="main"/>
|
||||
<attribute name="gradle_used_by_scope" value="main,test"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="src" output="bin/test" path="src/test/java">
|
||||
<attributes>
|
||||
<attribute name="test" value="true"/>
|
||||
<attribute name="gradle_scope" value="test"/>
|
||||
<attribute name="gradle_used_by_scope" value="test"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="src" output="bin/main" path="src/main/webapp">
|
||||
<attributes>
|
||||
<attribute name="gradle_scope" value="main"/>
|
||||
<attribute name="gradle_used_by_scope" value="main,test"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11/"/>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11/">
|
||||
<attributes>
|
||||
<attribute name="module" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.web.container"/>
|
||||
<classpathentry kind="con" path="org.eclipse.buildship.core.gradleclasspathcontainer">
|
||||
<attributes>
|
||||
|
@ -25,7 +25,7 @@ apply plugin: 'war'
|
||||
apply plugin: 'eclipse'
|
||||
|
||||
group = 'jottyfan'
|
||||
version = '1.1.4'
|
||||
version = '1.1.5'
|
||||
|
||||
description = """timetrack"""
|
||||
|
||||
|
@ -5,6 +5,7 @@ package de.jottyfan.timetrack.db.done;
|
||||
|
||||
|
||||
import de.jottyfan.timetrack.db.DefaultCatalog;
|
||||
import de.jottyfan.timetrack.db.done.tables.TBilling;
|
||||
import de.jottyfan.timetrack.db.done.tables.TDone;
|
||||
import de.jottyfan.timetrack.db.done.tables.TJob;
|
||||
import de.jottyfan.timetrack.db.done.tables.TModule;
|
||||
@ -14,7 +15,6 @@ import de.jottyfan.timetrack.db.done.tables.VDaylimits;
|
||||
import de.jottyfan.timetrack.db.done.tables.VDaysummary;
|
||||
import de.jottyfan.timetrack.db.done.tables.VDone;
|
||||
import de.jottyfan.timetrack.db.done.tables.VDuration;
|
||||
import de.jottyfan.timetrack.db.done.tables.VEucanshare;
|
||||
import de.jottyfan.timetrack.db.done.tables.VHamster;
|
||||
import de.jottyfan.timetrack.db.done.tables.VHamstersummary;
|
||||
import de.jottyfan.timetrack.db.done.tables.VTasklist;
|
||||
@ -43,6 +43,11 @@ public class Done extends SchemaImpl {
|
||||
*/
|
||||
public static final Done DONE = new Done();
|
||||
|
||||
/**
|
||||
* The table <code>done.t_billing</code>.
|
||||
*/
|
||||
public final TBilling T_BILLING = TBilling.T_BILLING;
|
||||
|
||||
/**
|
||||
* The table <code>done.t_done</code>.
|
||||
*/
|
||||
@ -88,11 +93,6 @@ public class Done extends SchemaImpl {
|
||||
*/
|
||||
public final VDuration V_DURATION = VDuration.V_DURATION;
|
||||
|
||||
/**
|
||||
* The table <code>done.v_eucanshare</code>.
|
||||
*/
|
||||
public final VEucanshare V_EUCANSHARE = VEucanshare.V_EUCANSHARE;
|
||||
|
||||
/**
|
||||
* The table <code>done.v_hamster</code>.
|
||||
*/
|
||||
@ -139,6 +139,7 @@ public class Done extends SchemaImpl {
|
||||
@Override
|
||||
public final List<Table<?>> getTables() {
|
||||
return Arrays.<Table<?>>asList(
|
||||
TBilling.T_BILLING,
|
||||
TDone.T_DONE,
|
||||
TJob.T_JOB,
|
||||
TModule.T_MODULE,
|
||||
@ -148,7 +149,6 @@ public class Done extends SchemaImpl {
|
||||
VDaysummary.V_DAYSUMMARY,
|
||||
VDone.V_DONE,
|
||||
VDuration.V_DURATION,
|
||||
VEucanshare.V_EUCANSHARE,
|
||||
VHamster.V_HAMSTER,
|
||||
VHamstersummary.V_HAMSTERSUMMARY,
|
||||
VTasklist.V_TASKLIST,
|
||||
|
@ -4,10 +4,12 @@
|
||||
package de.jottyfan.timetrack.db.done;
|
||||
|
||||
|
||||
import de.jottyfan.timetrack.db.done.tables.TBilling;
|
||||
import de.jottyfan.timetrack.db.done.tables.TDone;
|
||||
import de.jottyfan.timetrack.db.done.tables.TJob;
|
||||
import de.jottyfan.timetrack.db.done.tables.TModule;
|
||||
import de.jottyfan.timetrack.db.done.tables.TProject;
|
||||
import de.jottyfan.timetrack.db.done.tables.records.TBillingRecord;
|
||||
import de.jottyfan.timetrack.db.done.tables.records.TDoneRecord;
|
||||
import de.jottyfan.timetrack.db.done.tables.records.TJobRecord;
|
||||
import de.jottyfan.timetrack.db.done.tables.records.TModuleRecord;
|
||||
@ -33,6 +35,9 @@ public class Keys {
|
||||
// UNIQUE and PRIMARY KEY definitions
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
public static final UniqueKey<TBillingRecord> T_BILLING_NAME_KEY = Internal.createUniqueKey(TBilling.T_BILLING, DSL.name("t_billing_name_key"), new TableField[] { TBilling.T_BILLING.NAME }, true);
|
||||
public static final UniqueKey<TBillingRecord> T_BILLING_PKEY = Internal.createUniqueKey(TBilling.T_BILLING, DSL.name("t_billing_pkey"), new TableField[] { TBilling.T_BILLING.PK }, true);
|
||||
public static final UniqueKey<TBillingRecord> T_BILLING_SHORTCUT_KEY = Internal.createUniqueKey(TBilling.T_BILLING, DSL.name("t_billing_shortcut_key"), new TableField[] { TBilling.T_BILLING.SHORTCUT }, true);
|
||||
public static final UniqueKey<TDoneRecord> T_DONE_PKEY = Internal.createUniqueKey(TDone.T_DONE, DSL.name("t_done_pkey"), new TableField[] { TDone.T_DONE.PK }, true);
|
||||
public static final UniqueKey<TJobRecord> T_CATEGORY_NAME_KEY = Internal.createUniqueKey(TJob.T_JOB, DSL.name("t_category_name_key"), new TableField[] { TJob.T_JOB.NAME }, true);
|
||||
public static final UniqueKey<TJobRecord> T_CATEGORY_PKEY = Internal.createUniqueKey(TJob.T_JOB, DSL.name("t_category_pkey"), new TableField[] { TJob.T_JOB.PK }, true);
|
||||
@ -45,6 +50,7 @@ public class Keys {
|
||||
// FOREIGN KEY definitions
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
public static final ForeignKey<TDoneRecord, TBillingRecord> T_DONE__T_DONE_FK_BILLING_FKEY = Internal.createForeignKey(TDone.T_DONE, DSL.name("t_done_fk_billing_fkey"), new TableField[] { TDone.T_DONE.FK_BILLING }, Keys.T_BILLING_PKEY, new TableField[] { TBilling.T_BILLING.PK }, true);
|
||||
public static final ForeignKey<TDoneRecord, TJobRecord> T_DONE__T_DONE_FK_CATEGORY_FKEY = Internal.createForeignKey(TDone.T_DONE, DSL.name("t_done_fk_category_fkey"), new TableField[] { TDone.T_DONE.FK_JOB }, Keys.T_CATEGORY_PKEY, new TableField[] { TJob.T_JOB.PK }, true);
|
||||
public static final ForeignKey<TDoneRecord, TModuleRecord> T_DONE__T_DONE_FK_JOB_FKEY = Internal.createForeignKey(TDone.T_DONE, DSL.name("t_done_fk_job_fkey"), new TableField[] { TDone.T_DONE.FK_MODULE }, Keys.T_JOB_PKEY, new TableField[] { TModule.T_MODULE.PK }, true);
|
||||
public static final ForeignKey<TDoneRecord, TLoginRecord> T_DONE__T_DONE_FK_LOGIN_FKEY = Internal.createForeignKey(TDone.T_DONE, DSL.name("t_done_fk_login_fkey"), new TableField[] { TDone.T_DONE.FK_LOGIN }, de.jottyfan.timetrack.db.profile.Keys.T_LOGIN_PKEY, new TableField[] { TLogin.T_LOGIN.PK }, true);
|
||||
|
@ -4,6 +4,7 @@
|
||||
package de.jottyfan.timetrack.db.done;
|
||||
|
||||
|
||||
import de.jottyfan.timetrack.db.done.tables.TBilling;
|
||||
import de.jottyfan.timetrack.db.done.tables.TDone;
|
||||
import de.jottyfan.timetrack.db.done.tables.TJob;
|
||||
import de.jottyfan.timetrack.db.done.tables.TModule;
|
||||
@ -13,7 +14,6 @@ import de.jottyfan.timetrack.db.done.tables.VDaylimits;
|
||||
import de.jottyfan.timetrack.db.done.tables.VDaysummary;
|
||||
import de.jottyfan.timetrack.db.done.tables.VDone;
|
||||
import de.jottyfan.timetrack.db.done.tables.VDuration;
|
||||
import de.jottyfan.timetrack.db.done.tables.VEucanshare;
|
||||
import de.jottyfan.timetrack.db.done.tables.VHamster;
|
||||
import de.jottyfan.timetrack.db.done.tables.VHamstersummary;
|
||||
import de.jottyfan.timetrack.db.done.tables.VTasklist;
|
||||
@ -28,6 +28,11 @@ import de.jottyfan.timetrack.db.done.tables.VWorktime;
|
||||
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
|
||||
public class Tables {
|
||||
|
||||
/**
|
||||
* The table <code>done.t_billing</code>.
|
||||
*/
|
||||
public static final TBilling T_BILLING = TBilling.T_BILLING;
|
||||
|
||||
/**
|
||||
* The table <code>done.t_done</code>.
|
||||
*/
|
||||
@ -73,11 +78,6 @@ public class Tables {
|
||||
*/
|
||||
public static final VDuration V_DURATION = VDuration.V_DURATION;
|
||||
|
||||
/**
|
||||
* The table <code>done.v_eucanshare</code>.
|
||||
*/
|
||||
public static final VEucanshare V_EUCANSHARE = VEucanshare.V_EUCANSHARE;
|
||||
|
||||
/**
|
||||
* The table <code>done.v_hamster</code>.
|
||||
*/
|
||||
|
164
src/jooq/java/de/jottyfan/timetrack/db/done/tables/TBilling.java
Normal file
164
src/jooq/java/de/jottyfan/timetrack/db/done/tables/TBilling.java
Normal file
@ -0,0 +1,164 @@
|
||||
/*
|
||||
* This file is generated by jOOQ.
|
||||
*/
|
||||
package de.jottyfan.timetrack.db.done.tables;
|
||||
|
||||
|
||||
import de.jottyfan.timetrack.db.done.Done;
|
||||
import de.jottyfan.timetrack.db.done.Keys;
|
||||
import de.jottyfan.timetrack.db.done.tables.records.TBillingRecord;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import org.jooq.Field;
|
||||
import org.jooq.ForeignKey;
|
||||
import org.jooq.Identity;
|
||||
import org.jooq.Name;
|
||||
import org.jooq.Record;
|
||||
import org.jooq.Row5;
|
||||
import org.jooq.Schema;
|
||||
import org.jooq.Table;
|
||||
import org.jooq.TableField;
|
||||
import org.jooq.TableOptions;
|
||||
import org.jooq.UniqueKey;
|
||||
import org.jooq.impl.DSL;
|
||||
import org.jooq.impl.SQLDataType;
|
||||
import org.jooq.impl.TableImpl;
|
||||
|
||||
|
||||
/**
|
||||
* This class is generated by jOOQ.
|
||||
*/
|
||||
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
|
||||
public class TBilling extends TableImpl<TBillingRecord> {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* The reference instance of <code>done.t_billing</code>
|
||||
*/
|
||||
public static final TBilling T_BILLING = new TBilling();
|
||||
|
||||
/**
|
||||
* The class holding records for this type
|
||||
*/
|
||||
@Override
|
||||
public Class<TBillingRecord> getRecordType() {
|
||||
return TBillingRecord.class;
|
||||
}
|
||||
|
||||
/**
|
||||
* The column <code>done.t_billing.lastchange</code>.
|
||||
*/
|
||||
public final TableField<TBillingRecord, LocalDateTime> LASTCHANGE = createField(DSL.name("lastchange"), SQLDataType.LOCALDATETIME(6).defaultValue(DSL.field("now()", SQLDataType.LOCALDATETIME)), this, "");
|
||||
|
||||
/**
|
||||
* The column <code>done.t_billing.pk</code>.
|
||||
*/
|
||||
public final TableField<TBillingRecord, Integer> PK = createField(DSL.name("pk"), SQLDataType.INTEGER.nullable(false).identity(true), this, "");
|
||||
|
||||
/**
|
||||
* The column <code>done.t_billing.name</code>.
|
||||
*/
|
||||
public final TableField<TBillingRecord, String> NAME = createField(DSL.name("name"), SQLDataType.CLOB.nullable(false), this, "");
|
||||
|
||||
/**
|
||||
* The column <code>done.t_billing.shortcut</code>.
|
||||
*/
|
||||
public final TableField<TBillingRecord, String> SHORTCUT = createField(DSL.name("shortcut"), SQLDataType.CLOB.nullable(false), this, "");
|
||||
|
||||
/**
|
||||
* The column <code>done.t_billing.csskey</code>.
|
||||
*/
|
||||
public final TableField<TBillingRecord, String> CSSKEY = createField(DSL.name("csskey"), SQLDataType.CLOB, this, "");
|
||||
|
||||
private TBilling(Name alias, Table<TBillingRecord> aliased) {
|
||||
this(alias, aliased, null);
|
||||
}
|
||||
|
||||
private TBilling(Name alias, Table<TBillingRecord> aliased, Field<?>[] parameters) {
|
||||
super(alias, null, aliased, parameters, DSL.comment(""), TableOptions.table());
|
||||
}
|
||||
|
||||
/**
|
||||
* Create an aliased <code>done.t_billing</code> table reference
|
||||
*/
|
||||
public TBilling(String alias) {
|
||||
this(DSL.name(alias), T_BILLING);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create an aliased <code>done.t_billing</code> table reference
|
||||
*/
|
||||
public TBilling(Name alias) {
|
||||
this(alias, T_BILLING);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a <code>done.t_billing</code> table reference
|
||||
*/
|
||||
public TBilling() {
|
||||
this(DSL.name("t_billing"), null);
|
||||
}
|
||||
|
||||
public <O extends Record> TBilling(Table<O> child, ForeignKey<O, TBillingRecord> key) {
|
||||
super(child, key, T_BILLING);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Schema getSchema() {
|
||||
return Done.DONE;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Identity<TBillingRecord, Integer> getIdentity() {
|
||||
return (Identity<TBillingRecord, Integer>) super.getIdentity();
|
||||
}
|
||||
|
||||
@Override
|
||||
public UniqueKey<TBillingRecord> getPrimaryKey() {
|
||||
return Keys.T_BILLING_PKEY;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<UniqueKey<TBillingRecord>> getKeys() {
|
||||
return Arrays.<UniqueKey<TBillingRecord>>asList(Keys.T_BILLING_PKEY, Keys.T_BILLING_NAME_KEY, Keys.T_BILLING_SHORTCUT_KEY);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TBilling as(String alias) {
|
||||
return new TBilling(DSL.name(alias), this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TBilling as(Name alias) {
|
||||
return new TBilling(alias, this);
|
||||
}
|
||||
|
||||
/**
|
||||
* Rename this table
|
||||
*/
|
||||
@Override
|
||||
public TBilling rename(String name) {
|
||||
return new TBilling(DSL.name(name), null);
|
||||
}
|
||||
|
||||
/**
|
||||
* Rename this table
|
||||
*/
|
||||
@Override
|
||||
public TBilling rename(Name name) {
|
||||
return new TBilling(name, null);
|
||||
}
|
||||
|
||||
// -------------------------------------------------------------------------
|
||||
// Row5 type methods
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
@Override
|
||||
public Row5<LocalDateTime, Integer, String, String, String> fieldsRow() {
|
||||
return (Row5) super.fieldsRow();
|
||||
}
|
||||
}
|
@ -91,9 +91,9 @@ public class TDone extends TableImpl<TDoneRecord> {
|
||||
public final TableField<TDoneRecord, Integer> FK_LOGIN = createField(DSL.name("fk_login"), SQLDataType.INTEGER.nullable(false), this, "");
|
||||
|
||||
/**
|
||||
* The column <code>done.t_done.wp</code>.
|
||||
* The column <code>done.t_done.fk_billing</code>.
|
||||
*/
|
||||
public final TableField<TDoneRecord, String> WP = createField(DSL.name("wp"), SQLDataType.CLOB, this, "");
|
||||
public final TableField<TDoneRecord, Integer> FK_BILLING = createField(DSL.name("fk_billing"), SQLDataType.INTEGER, this, "");
|
||||
|
||||
private TDone(Name alias, Table<TDoneRecord> aliased) {
|
||||
this(alias, aliased, null);
|
||||
@ -150,7 +150,7 @@ public class TDone extends TableImpl<TDoneRecord> {
|
||||
|
||||
@Override
|
||||
public List<ForeignKey<TDoneRecord, ?>> getReferences() {
|
||||
return Arrays.<ForeignKey<TDoneRecord, ?>>asList(Keys.T_DONE__T_DONE_FK_PROJECT_FKEY, Keys.T_DONE__T_DONE_FK_JOB_FKEY, Keys.T_DONE__T_DONE_FK_CATEGORY_FKEY, Keys.T_DONE__T_DONE_FK_LOGIN_FKEY);
|
||||
return Arrays.<ForeignKey<TDoneRecord, ?>>asList(Keys.T_DONE__T_DONE_FK_PROJECT_FKEY, Keys.T_DONE__T_DONE_FK_JOB_FKEY, Keys.T_DONE__T_DONE_FK_CATEGORY_FKEY, Keys.T_DONE__T_DONE_FK_LOGIN_FKEY, Keys.T_DONE__T_DONE_FK_BILLING_FKEY);
|
||||
}
|
||||
|
||||
public TProject tProject() {
|
||||
@ -169,6 +169,10 @@ public class TDone extends TableImpl<TDoneRecord> {
|
||||
return new TLogin(this, Keys.T_DONE__T_DONE_FK_LOGIN_FKEY);
|
||||
}
|
||||
|
||||
public TBilling tBilling() {
|
||||
return new TBilling(this, Keys.T_DONE__T_DONE_FK_BILLING_FKEY);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TDone as(String alias) {
|
||||
return new TDone(DSL.name(alias), this);
|
||||
@ -200,7 +204,7 @@ public class TDone extends TableImpl<TDoneRecord> {
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
@Override
|
||||
public Row9<LocalDateTime, Integer, LocalDateTime, LocalDateTime, Integer, Integer, Integer, Integer, String> fieldsRow() {
|
||||
public Row9<LocalDateTime, Integer, LocalDateTime, LocalDateTime, Integer, Integer, Integer, Integer, Integer> fieldsRow() {
|
||||
return (Row9) super.fieldsRow();
|
||||
}
|
||||
}
|
||||
|
@ -1,160 +0,0 @@
|
||||
/*
|
||||
* This file is generated by jOOQ.
|
||||
*/
|
||||
package de.jottyfan.timetrack.db.done.tables;
|
||||
|
||||
|
||||
import de.jottyfan.timetrack.db.done.Done;
|
||||
import de.jottyfan.timetrack.db.done.tables.records.VEucanshareRecord;
|
||||
|
||||
import java.time.LocalDate;
|
||||
|
||||
import org.jooq.Field;
|
||||
import org.jooq.ForeignKey;
|
||||
import org.jooq.Name;
|
||||
import org.jooq.Record;
|
||||
import org.jooq.Row8;
|
||||
import org.jooq.Schema;
|
||||
import org.jooq.Table;
|
||||
import org.jooq.TableField;
|
||||
import org.jooq.TableOptions;
|
||||
import org.jooq.impl.DSL;
|
||||
import org.jooq.impl.SQLDataType;
|
||||
import org.jooq.impl.TableImpl;
|
||||
import org.jooq.types.YearToSecond;
|
||||
|
||||
|
||||
/**
|
||||
* This class is generated by jOOQ.
|
||||
*/
|
||||
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
|
||||
public class VEucanshare extends TableImpl<VEucanshareRecord> {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* The reference instance of <code>done.v_eucanshare</code>
|
||||
*/
|
||||
public static final VEucanshare V_EUCANSHARE = new VEucanshare();
|
||||
|
||||
/**
|
||||
* The class holding records for this type
|
||||
*/
|
||||
@Override
|
||||
public Class<VEucanshareRecord> getRecordType() {
|
||||
return VEucanshareRecord.class;
|
||||
}
|
||||
|
||||
/**
|
||||
* The column <code>done.v_eucanshare.fk_done</code>.
|
||||
*/
|
||||
public final TableField<VEucanshareRecord, Integer> FK_DONE = createField(DSL.name("fk_done"), SQLDataType.INTEGER, this, "");
|
||||
|
||||
/**
|
||||
* The column <code>done.v_eucanshare.workday</code>.
|
||||
*/
|
||||
public final TableField<VEucanshareRecord, LocalDate> WORKDAY = createField(DSL.name("workday"), SQLDataType.LOCALDATE, this, "");
|
||||
|
||||
/**
|
||||
* The column <code>done.v_eucanshare.duration</code>.
|
||||
*/
|
||||
public final TableField<VEucanshareRecord, YearToSecond> DURATION = createField(DSL.name("duration"), SQLDataType.INTERVAL, this, "");
|
||||
|
||||
/**
|
||||
* The column <code>done.v_eucanshare.project_name</code>.
|
||||
*/
|
||||
public final TableField<VEucanshareRecord, String> PROJECT_NAME = createField(DSL.name("project_name"), SQLDataType.CLOB, this, "");
|
||||
|
||||
/**
|
||||
* The column <code>done.v_eucanshare.module_name</code>.
|
||||
*/
|
||||
public final TableField<VEucanshareRecord, String> MODULE_NAME = createField(DSL.name("module_name"), SQLDataType.CLOB, this, "");
|
||||
|
||||
/**
|
||||
* The column <code>done.v_eucanshare.job_name</code>.
|
||||
*/
|
||||
public final TableField<VEucanshareRecord, String> JOB_NAME = createField(DSL.name("job_name"), SQLDataType.CLOB, this, "");
|
||||
|
||||
/**
|
||||
* The column <code>done.v_eucanshare.fk_login</code>.
|
||||
*/
|
||||
public final TableField<VEucanshareRecord, Integer> FK_LOGIN = createField(DSL.name("fk_login"), SQLDataType.INTEGER, this, "");
|
||||
|
||||
/**
|
||||
* The column <code>done.v_eucanshare.wp</code>.
|
||||
*/
|
||||
public final TableField<VEucanshareRecord, String> WP = createField(DSL.name("wp"), SQLDataType.CLOB, this, "");
|
||||
|
||||
private VEucanshare(Name alias, Table<VEucanshareRecord> aliased) {
|
||||
this(alias, aliased, null);
|
||||
}
|
||||
|
||||
private VEucanshare(Name alias, Table<VEucanshareRecord> aliased, Field<?>[] parameters) {
|
||||
super(alias, null, aliased, parameters, DSL.comment(""), TableOptions.view());
|
||||
}
|
||||
|
||||
/**
|
||||
* Create an aliased <code>done.v_eucanshare</code> table reference
|
||||
*/
|
||||
public VEucanshare(String alias) {
|
||||
this(DSL.name(alias), V_EUCANSHARE);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create an aliased <code>done.v_eucanshare</code> table reference
|
||||
*/
|
||||
public VEucanshare(Name alias) {
|
||||
this(alias, V_EUCANSHARE);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a <code>done.v_eucanshare</code> table reference
|
||||
*/
|
||||
public VEucanshare() {
|
||||
this(DSL.name("v_eucanshare"), null);
|
||||
}
|
||||
|
||||
public <O extends Record> VEucanshare(Table<O> child, ForeignKey<O, VEucanshareRecord> key) {
|
||||
super(child, key, V_EUCANSHARE);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Schema getSchema() {
|
||||
return Done.DONE;
|
||||
}
|
||||
|
||||
@Override
|
||||
public VEucanshare as(String alias) {
|
||||
return new VEucanshare(DSL.name(alias), this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public VEucanshare as(Name alias) {
|
||||
return new VEucanshare(alias, this);
|
||||
}
|
||||
|
||||
/**
|
||||
* Rename this table
|
||||
*/
|
||||
@Override
|
||||
public VEucanshare rename(String name) {
|
||||
return new VEucanshare(DSL.name(name), null);
|
||||
}
|
||||
|
||||
/**
|
||||
* Rename this table
|
||||
*/
|
||||
@Override
|
||||
public VEucanshare rename(Name name) {
|
||||
return new VEucanshare(name, null);
|
||||
}
|
||||
|
||||
// -------------------------------------------------------------------------
|
||||
// Row8 type methods
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
@Override
|
||||
public Row8<Integer, LocalDate, YearToSecond, String, String, String, Integer, String> fieldsRow() {
|
||||
return (Row8) super.fieldsRow();
|
||||
}
|
||||
}
|
@ -11,7 +11,7 @@ import org.jooq.Field;
|
||||
import org.jooq.ForeignKey;
|
||||
import org.jooq.Name;
|
||||
import org.jooq.Record;
|
||||
import org.jooq.Row8;
|
||||
import org.jooq.Row9;
|
||||
import org.jooq.Schema;
|
||||
import org.jooq.Table;
|
||||
import org.jooq.TableField;
|
||||
@ -73,9 +73,14 @@ public class VWorktime extends TableImpl<VWorktimeRecord> {
|
||||
public final TableField<VWorktimeRecord, String> JOB_NAME = createField(DSL.name("job_name"), SQLDataType.CLOB, this, "");
|
||||
|
||||
/**
|
||||
* The column <code>done.v_worktime.wp</code>.
|
||||
* The column <code>done.v_worktime.billing_shortcut</code>.
|
||||
*/
|
||||
public final TableField<VWorktimeRecord, String> WP = createField(DSL.name("wp"), SQLDataType.CLOB, this, "");
|
||||
public final TableField<VWorktimeRecord, String> BILLING_SHORTCUT = createField(DSL.name("billing_shortcut"), SQLDataType.CLOB, this, "");
|
||||
|
||||
/**
|
||||
* The column <code>done.v_worktime.billing_csskey</code>.
|
||||
*/
|
||||
public final TableField<VWorktimeRecord, String> BILLING_CSSKEY = createField(DSL.name("billing_csskey"), SQLDataType.CLOB, this, "");
|
||||
|
||||
/**
|
||||
* The column <code>done.v_worktime.fk_login</code>.
|
||||
@ -147,11 +152,11 @@ public class VWorktime extends TableImpl<VWorktimeRecord> {
|
||||
}
|
||||
|
||||
// -------------------------------------------------------------------------
|
||||
// Row8 type methods
|
||||
// Row9 type methods
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
@Override
|
||||
public Row8<String, String, Double, String, String, String, String, Integer> fieldsRow() {
|
||||
return (Row8) super.fieldsRow();
|
||||
public Row9<String, String, Double, String, String, String, String, String, Integer> fieldsRow() {
|
||||
return (Row9) super.fieldsRow();
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,257 @@
|
||||
/*
|
||||
* This file is generated by jOOQ.
|
||||
*/
|
||||
package de.jottyfan.timetrack.db.done.tables.records;
|
||||
|
||||
|
||||
import de.jottyfan.timetrack.db.done.tables.TBilling;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
import org.jooq.Field;
|
||||
import org.jooq.Record1;
|
||||
import org.jooq.Record5;
|
||||
import org.jooq.Row5;
|
||||
import org.jooq.impl.UpdatableRecordImpl;
|
||||
|
||||
|
||||
/**
|
||||
* This class is generated by jOOQ.
|
||||
*/
|
||||
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
|
||||
public class TBillingRecord extends UpdatableRecordImpl<TBillingRecord> implements Record5<LocalDateTime, Integer, String, String, String> {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* Setter for <code>done.t_billing.lastchange</code>.
|
||||
*/
|
||||
public void setLastchange(LocalDateTime value) {
|
||||
set(0, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Getter for <code>done.t_billing.lastchange</code>.
|
||||
*/
|
||||
public LocalDateTime getLastchange() {
|
||||
return (LocalDateTime) get(0);
|
||||
}
|
||||
|
||||
/**
|
||||
* Setter for <code>done.t_billing.pk</code>.
|
||||
*/
|
||||
public void setPk(Integer value) {
|
||||
set(1, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Getter for <code>done.t_billing.pk</code>.
|
||||
*/
|
||||
public Integer getPk() {
|
||||
return (Integer) get(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* Setter for <code>done.t_billing.name</code>.
|
||||
*/
|
||||
public void setName(String value) {
|
||||
set(2, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Getter for <code>done.t_billing.name</code>.
|
||||
*/
|
||||
public String getName() {
|
||||
return (String) get(2);
|
||||
}
|
||||
|
||||
/**
|
||||
* Setter for <code>done.t_billing.shortcut</code>.
|
||||
*/
|
||||
public void setShortcut(String value) {
|
||||
set(3, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Getter for <code>done.t_billing.shortcut</code>.
|
||||
*/
|
||||
public String getShortcut() {
|
||||
return (String) get(3);
|
||||
}
|
||||
|
||||
/**
|
||||
* Setter for <code>done.t_billing.csskey</code>.
|
||||
*/
|
||||
public void setCsskey(String value) {
|
||||
set(4, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Getter for <code>done.t_billing.csskey</code>.
|
||||
*/
|
||||
public String getCsskey() {
|
||||
return (String) get(4);
|
||||
}
|
||||
|
||||
// -------------------------------------------------------------------------
|
||||
// Primary key information
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
@Override
|
||||
public Record1<Integer> key() {
|
||||
return (Record1) super.key();
|
||||
}
|
||||
|
||||
// -------------------------------------------------------------------------
|
||||
// Record5 type implementation
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
@Override
|
||||
public Row5<LocalDateTime, Integer, String, String, String> fieldsRow() {
|
||||
return (Row5) super.fieldsRow();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Row5<LocalDateTime, Integer, String, String, String> valuesRow() {
|
||||
return (Row5) super.valuesRow();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Field<LocalDateTime> field1() {
|
||||
return TBilling.T_BILLING.LASTCHANGE;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Field<Integer> field2() {
|
||||
return TBilling.T_BILLING.PK;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Field<String> field3() {
|
||||
return TBilling.T_BILLING.NAME;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Field<String> field4() {
|
||||
return TBilling.T_BILLING.SHORTCUT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Field<String> field5() {
|
||||
return TBilling.T_BILLING.CSSKEY;
|
||||
}
|
||||
|
||||
@Override
|
||||
public LocalDateTime component1() {
|
||||
return getLastchange();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer component2() {
|
||||
return getPk();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String component3() {
|
||||
return getName();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String component4() {
|
||||
return getShortcut();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String component5() {
|
||||
return getCsskey();
|
||||
}
|
||||
|
||||
@Override
|
||||
public LocalDateTime value1() {
|
||||
return getLastchange();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer value2() {
|
||||
return getPk();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String value3() {
|
||||
return getName();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String value4() {
|
||||
return getShortcut();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String value5() {
|
||||
return getCsskey();
|
||||
}
|
||||
|
||||
@Override
|
||||
public TBillingRecord value1(LocalDateTime value) {
|
||||
setLastchange(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public TBillingRecord value2(Integer value) {
|
||||
setPk(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public TBillingRecord value3(String value) {
|
||||
setName(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public TBillingRecord value4(String value) {
|
||||
setShortcut(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public TBillingRecord value5(String value) {
|
||||
setCsskey(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public TBillingRecord values(LocalDateTime value1, Integer value2, String value3, String value4, String value5) {
|
||||
value1(value1);
|
||||
value2(value2);
|
||||
value3(value3);
|
||||
value4(value4);
|
||||
value5(value5);
|
||||
return this;
|
||||
}
|
||||
|
||||
// -------------------------------------------------------------------------
|
||||
// Constructors
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* Create a detached TBillingRecord
|
||||
*/
|
||||
public TBillingRecord() {
|
||||
super(TBilling.T_BILLING);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a detached, initialised TBillingRecord
|
||||
*/
|
||||
public TBillingRecord(LocalDateTime lastchange, Integer pk, String name, String shortcut, String csskey) {
|
||||
super(TBilling.T_BILLING);
|
||||
|
||||
setLastchange(lastchange);
|
||||
setPk(pk);
|
||||
setName(name);
|
||||
setShortcut(shortcut);
|
||||
setCsskey(csskey);
|
||||
}
|
||||
}
|
@ -19,7 +19,7 @@ import org.jooq.impl.UpdatableRecordImpl;
|
||||
* This class is generated by jOOQ.
|
||||
*/
|
||||
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
|
||||
public class TDoneRecord extends UpdatableRecordImpl<TDoneRecord> implements Record9<LocalDateTime, Integer, LocalDateTime, LocalDateTime, Integer, Integer, Integer, Integer, String> {
|
||||
public class TDoneRecord extends UpdatableRecordImpl<TDoneRecord> implements Record9<LocalDateTime, Integer, LocalDateTime, LocalDateTime, Integer, Integer, Integer, Integer, Integer> {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ -136,17 +136,17 @@ public class TDoneRecord extends UpdatableRecordImpl<TDoneRecord> implements Rec
|
||||
}
|
||||
|
||||
/**
|
||||
* Setter for <code>done.t_done.wp</code>.
|
||||
* Setter for <code>done.t_done.fk_billing</code>.
|
||||
*/
|
||||
public void setWp(String value) {
|
||||
public void setFkBilling(Integer value) {
|
||||
set(8, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Getter for <code>done.t_done.wp</code>.
|
||||
* Getter for <code>done.t_done.fk_billing</code>.
|
||||
*/
|
||||
public String getWp() {
|
||||
return (String) get(8);
|
||||
public Integer getFkBilling() {
|
||||
return (Integer) get(8);
|
||||
}
|
||||
|
||||
// -------------------------------------------------------------------------
|
||||
@ -163,12 +163,12 @@ public class TDoneRecord extends UpdatableRecordImpl<TDoneRecord> implements Rec
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
@Override
|
||||
public Row9<LocalDateTime, Integer, LocalDateTime, LocalDateTime, Integer, Integer, Integer, Integer, String> fieldsRow() {
|
||||
public Row9<LocalDateTime, Integer, LocalDateTime, LocalDateTime, Integer, Integer, Integer, Integer, Integer> fieldsRow() {
|
||||
return (Row9) super.fieldsRow();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Row9<LocalDateTime, Integer, LocalDateTime, LocalDateTime, Integer, Integer, Integer, Integer, String> valuesRow() {
|
||||
public Row9<LocalDateTime, Integer, LocalDateTime, LocalDateTime, Integer, Integer, Integer, Integer, Integer> valuesRow() {
|
||||
return (Row9) super.valuesRow();
|
||||
}
|
||||
|
||||
@ -213,8 +213,8 @@ public class TDoneRecord extends UpdatableRecordImpl<TDoneRecord> implements Rec
|
||||
}
|
||||
|
||||
@Override
|
||||
public Field<String> field9() {
|
||||
return TDone.T_DONE.WP;
|
||||
public Field<Integer> field9() {
|
||||
return TDone.T_DONE.FK_BILLING;
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -258,8 +258,8 @@ public class TDoneRecord extends UpdatableRecordImpl<TDoneRecord> implements Rec
|
||||
}
|
||||
|
||||
@Override
|
||||
public String component9() {
|
||||
return getWp();
|
||||
public Integer component9() {
|
||||
return getFkBilling();
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -303,8 +303,8 @@ public class TDoneRecord extends UpdatableRecordImpl<TDoneRecord> implements Rec
|
||||
}
|
||||
|
||||
@Override
|
||||
public String value9() {
|
||||
return getWp();
|
||||
public Integer value9() {
|
||||
return getFkBilling();
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -356,13 +356,13 @@ public class TDoneRecord extends UpdatableRecordImpl<TDoneRecord> implements Rec
|
||||
}
|
||||
|
||||
@Override
|
||||
public TDoneRecord value9(String value) {
|
||||
setWp(value);
|
||||
public TDoneRecord value9(Integer value) {
|
||||
setFkBilling(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public TDoneRecord values(LocalDateTime value1, Integer value2, LocalDateTime value3, LocalDateTime value4, Integer value5, Integer value6, Integer value7, Integer value8, String value9) {
|
||||
public TDoneRecord values(LocalDateTime value1, Integer value2, LocalDateTime value3, LocalDateTime value4, Integer value5, Integer value6, Integer value7, Integer value8, Integer value9) {
|
||||
value1(value1);
|
||||
value2(value2);
|
||||
value3(value3);
|
||||
@ -389,7 +389,7 @@ public class TDoneRecord extends UpdatableRecordImpl<TDoneRecord> implements Rec
|
||||
/**
|
||||
* Create a detached, initialised TDoneRecord
|
||||
*/
|
||||
public TDoneRecord(LocalDateTime lastchange, Integer pk, LocalDateTime timeFrom, LocalDateTime timeUntil, Integer fkProject, Integer fkModule, Integer fkJob, Integer fkLogin, String wp) {
|
||||
public TDoneRecord(LocalDateTime lastchange, Integer pk, LocalDateTime timeFrom, LocalDateTime timeUntil, Integer fkProject, Integer fkModule, Integer fkJob, Integer fkLogin, Integer fkBilling) {
|
||||
super(TDone.T_DONE);
|
||||
|
||||
setLastchange(lastchange);
|
||||
@ -400,6 +400,6 @@ public class TDoneRecord extends UpdatableRecordImpl<TDoneRecord> implements Rec
|
||||
setFkModule(fkModule);
|
||||
setFkJob(fkJob);
|
||||
setFkLogin(fkLogin);
|
||||
setWp(wp);
|
||||
setFkBilling(fkBilling);
|
||||
}
|
||||
}
|
||||
|
@ -1,359 +0,0 @@
|
||||
/*
|
||||
* This file is generated by jOOQ.
|
||||
*/
|
||||
package de.jottyfan.timetrack.db.done.tables.records;
|
||||
|
||||
|
||||
import de.jottyfan.timetrack.db.done.tables.VEucanshare;
|
||||
|
||||
import java.time.LocalDate;
|
||||
|
||||
import org.jooq.Field;
|
||||
import org.jooq.Record8;
|
||||
import org.jooq.Row8;
|
||||
import org.jooq.impl.TableRecordImpl;
|
||||
import org.jooq.types.YearToSecond;
|
||||
|
||||
|
||||
/**
|
||||
* This class is generated by jOOQ.
|
||||
*/
|
||||
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
|
||||
public class VEucanshareRecord extends TableRecordImpl<VEucanshareRecord> implements Record8<Integer, LocalDate, YearToSecond, String, String, String, Integer, String> {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* Setter for <code>done.v_eucanshare.fk_done</code>.
|
||||
*/
|
||||
public void setFkDone(Integer value) {
|
||||
set(0, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Getter for <code>done.v_eucanshare.fk_done</code>.
|
||||
*/
|
||||
public Integer getFkDone() {
|
||||
return (Integer) get(0);
|
||||
}
|
||||
|
||||
/**
|
||||
* Setter for <code>done.v_eucanshare.workday</code>.
|
||||
*/
|
||||
public void setWorkday(LocalDate value) {
|
||||
set(1, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Getter for <code>done.v_eucanshare.workday</code>.
|
||||
*/
|
||||
public LocalDate getWorkday() {
|
||||
return (LocalDate) get(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* Setter for <code>done.v_eucanshare.duration</code>.
|
||||
*/
|
||||
public void setDuration(YearToSecond value) {
|
||||
set(2, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Getter for <code>done.v_eucanshare.duration</code>.
|
||||
*/
|
||||
public YearToSecond getDuration() {
|
||||
return (YearToSecond) get(2);
|
||||
}
|
||||
|
||||
/**
|
||||
* Setter for <code>done.v_eucanshare.project_name</code>.
|
||||
*/
|
||||
public void setProjectName(String value) {
|
||||
set(3, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Getter for <code>done.v_eucanshare.project_name</code>.
|
||||
*/
|
||||
public String getProjectName() {
|
||||
return (String) get(3);
|
||||
}
|
||||
|
||||
/**
|
||||
* Setter for <code>done.v_eucanshare.module_name</code>.
|
||||
*/
|
||||
public void setModuleName(String value) {
|
||||
set(4, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Getter for <code>done.v_eucanshare.module_name</code>.
|
||||
*/
|
||||
public String getModuleName() {
|
||||
return (String) get(4);
|
||||
}
|
||||
|
||||
/**
|
||||
* Setter for <code>done.v_eucanshare.job_name</code>.
|
||||
*/
|
||||
public void setJobName(String value) {
|
||||
set(5, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Getter for <code>done.v_eucanshare.job_name</code>.
|
||||
*/
|
||||
public String getJobName() {
|
||||
return (String) get(5);
|
||||
}
|
||||
|
||||
/**
|
||||
* Setter for <code>done.v_eucanshare.fk_login</code>.
|
||||
*/
|
||||
public void setFkLogin(Integer value) {
|
||||
set(6, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Getter for <code>done.v_eucanshare.fk_login</code>.
|
||||
*/
|
||||
public Integer getFkLogin() {
|
||||
return (Integer) get(6);
|
||||
}
|
||||
|
||||
/**
|
||||
* Setter for <code>done.v_eucanshare.wp</code>.
|
||||
*/
|
||||
public void setWp(String value) {
|
||||
set(7, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Getter for <code>done.v_eucanshare.wp</code>.
|
||||
*/
|
||||
public String getWp() {
|
||||
return (String) get(7);
|
||||
}
|
||||
|
||||
// -------------------------------------------------------------------------
|
||||
// Record8 type implementation
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
@Override
|
||||
public Row8<Integer, LocalDate, YearToSecond, String, String, String, Integer, String> fieldsRow() {
|
||||
return (Row8) super.fieldsRow();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Row8<Integer, LocalDate, YearToSecond, String, String, String, Integer, String> valuesRow() {
|
||||
return (Row8) super.valuesRow();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Field<Integer> field1() {
|
||||
return VEucanshare.V_EUCANSHARE.FK_DONE;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Field<LocalDate> field2() {
|
||||
return VEucanshare.V_EUCANSHARE.WORKDAY;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Field<YearToSecond> field3() {
|
||||
return VEucanshare.V_EUCANSHARE.DURATION;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Field<String> field4() {
|
||||
return VEucanshare.V_EUCANSHARE.PROJECT_NAME;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Field<String> field5() {
|
||||
return VEucanshare.V_EUCANSHARE.MODULE_NAME;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Field<String> field6() {
|
||||
return VEucanshare.V_EUCANSHARE.JOB_NAME;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Field<Integer> field7() {
|
||||
return VEucanshare.V_EUCANSHARE.FK_LOGIN;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Field<String> field8() {
|
||||
return VEucanshare.V_EUCANSHARE.WP;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer component1() {
|
||||
return getFkDone();
|
||||
}
|
||||
|
||||
@Override
|
||||
public LocalDate component2() {
|
||||
return getWorkday();
|
||||
}
|
||||
|
||||
@Override
|
||||
public YearToSecond component3() {
|
||||
return getDuration();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String component4() {
|
||||
return getProjectName();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String component5() {
|
||||
return getModuleName();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String component6() {
|
||||
return getJobName();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer component7() {
|
||||
return getFkLogin();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String component8() {
|
||||
return getWp();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer value1() {
|
||||
return getFkDone();
|
||||
}
|
||||
|
||||
@Override
|
||||
public LocalDate value2() {
|
||||
return getWorkday();
|
||||
}
|
||||
|
||||
@Override
|
||||
public YearToSecond value3() {
|
||||
return getDuration();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String value4() {
|
||||
return getProjectName();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String value5() {
|
||||
return getModuleName();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String value6() {
|
||||
return getJobName();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer value7() {
|
||||
return getFkLogin();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String value8() {
|
||||
return getWp();
|
||||
}
|
||||
|
||||
@Override
|
||||
public VEucanshareRecord value1(Integer value) {
|
||||
setFkDone(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public VEucanshareRecord value2(LocalDate value) {
|
||||
setWorkday(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public VEucanshareRecord value3(YearToSecond value) {
|
||||
setDuration(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public VEucanshareRecord value4(String value) {
|
||||
setProjectName(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public VEucanshareRecord value5(String value) {
|
||||
setModuleName(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public VEucanshareRecord value6(String value) {
|
||||
setJobName(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public VEucanshareRecord value7(Integer value) {
|
||||
setFkLogin(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public VEucanshareRecord value8(String value) {
|
||||
setWp(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public VEucanshareRecord values(Integer value1, LocalDate value2, YearToSecond value3, String value4, String value5, String value6, Integer value7, String value8) {
|
||||
value1(value1);
|
||||
value2(value2);
|
||||
value3(value3);
|
||||
value4(value4);
|
||||
value5(value5);
|
||||
value6(value6);
|
||||
value7(value7);
|
||||
value8(value8);
|
||||
return this;
|
||||
}
|
||||
|
||||
// -------------------------------------------------------------------------
|
||||
// Constructors
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* Create a detached VEucanshareRecord
|
||||
*/
|
||||
public VEucanshareRecord() {
|
||||
super(VEucanshare.V_EUCANSHARE);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a detached, initialised VEucanshareRecord
|
||||
*/
|
||||
public VEucanshareRecord(Integer fkDone, LocalDate workday, YearToSecond duration, String projectName, String moduleName, String jobName, Integer fkLogin, String wp) {
|
||||
super(VEucanshare.V_EUCANSHARE);
|
||||
|
||||
setFkDone(fkDone);
|
||||
setWorkday(workday);
|
||||
setDuration(duration);
|
||||
setProjectName(projectName);
|
||||
setModuleName(moduleName);
|
||||
setJobName(jobName);
|
||||
setFkLogin(fkLogin);
|
||||
setWp(wp);
|
||||
}
|
||||
}
|
@ -7,8 +7,8 @@ package de.jottyfan.timetrack.db.done.tables.records;
|
||||
import de.jottyfan.timetrack.db.done.tables.VWorktime;
|
||||
|
||||
import org.jooq.Field;
|
||||
import org.jooq.Record8;
|
||||
import org.jooq.Row8;
|
||||
import org.jooq.Record9;
|
||||
import org.jooq.Row9;
|
||||
import org.jooq.impl.TableRecordImpl;
|
||||
|
||||
|
||||
@ -16,7 +16,7 @@ import org.jooq.impl.TableRecordImpl;
|
||||
* This class is generated by jOOQ.
|
||||
*/
|
||||
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
|
||||
public class VWorktimeRecord extends TableRecordImpl<VWorktimeRecord> implements Record8<String, String, Double, String, String, String, String, Integer> {
|
||||
public class VWorktimeRecord extends TableRecordImpl<VWorktimeRecord> implements Record9<String, String, Double, String, String, String, String, String, Integer> {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ -105,45 +105,59 @@ public class VWorktimeRecord extends TableRecordImpl<VWorktimeRecord> implements
|
||||
}
|
||||
|
||||
/**
|
||||
* Setter for <code>done.v_worktime.wp</code>.
|
||||
* Setter for <code>done.v_worktime.billing_shortcut</code>.
|
||||
*/
|
||||
public void setWp(String value) {
|
||||
public void setBillingShortcut(String value) {
|
||||
set(6, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Getter for <code>done.v_worktime.wp</code>.
|
||||
* Getter for <code>done.v_worktime.billing_shortcut</code>.
|
||||
*/
|
||||
public String getWp() {
|
||||
public String getBillingShortcut() {
|
||||
return (String) get(6);
|
||||
}
|
||||
|
||||
/**
|
||||
* Setter for <code>done.v_worktime.billing_csskey</code>.
|
||||
*/
|
||||
public void setBillingCsskey(String value) {
|
||||
set(7, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Getter for <code>done.v_worktime.billing_csskey</code>.
|
||||
*/
|
||||
public String getBillingCsskey() {
|
||||
return (String) get(7);
|
||||
}
|
||||
|
||||
/**
|
||||
* Setter for <code>done.v_worktime.fk_login</code>.
|
||||
*/
|
||||
public void setFkLogin(Integer value) {
|
||||
set(7, value);
|
||||
set(8, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Getter for <code>done.v_worktime.fk_login</code>.
|
||||
*/
|
||||
public Integer getFkLogin() {
|
||||
return (Integer) get(7);
|
||||
return (Integer) get(8);
|
||||
}
|
||||
|
||||
// -------------------------------------------------------------------------
|
||||
// Record8 type implementation
|
||||
// Record9 type implementation
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
@Override
|
||||
public Row8<String, String, Double, String, String, String, String, Integer> fieldsRow() {
|
||||
return (Row8) super.fieldsRow();
|
||||
public Row9<String, String, Double, String, String, String, String, String, Integer> fieldsRow() {
|
||||
return (Row9) super.fieldsRow();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Row8<String, String, Double, String, String, String, String, Integer> valuesRow() {
|
||||
return (Row8) super.valuesRow();
|
||||
public Row9<String, String, Double, String, String, String, String, String, Integer> valuesRow() {
|
||||
return (Row9) super.valuesRow();
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -178,11 +192,16 @@ public class VWorktimeRecord extends TableRecordImpl<VWorktimeRecord> implements
|
||||
|
||||
@Override
|
||||
public Field<String> field7() {
|
||||
return VWorktime.V_WORKTIME.WP;
|
||||
return VWorktime.V_WORKTIME.BILLING_SHORTCUT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Field<Integer> field8() {
|
||||
public Field<String> field8() {
|
||||
return VWorktime.V_WORKTIME.BILLING_CSSKEY;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Field<Integer> field9() {
|
||||
return VWorktime.V_WORKTIME.FK_LOGIN;
|
||||
}
|
||||
|
||||
@ -218,11 +237,16 @@ public class VWorktimeRecord extends TableRecordImpl<VWorktimeRecord> implements
|
||||
|
||||
@Override
|
||||
public String component7() {
|
||||
return getWp();
|
||||
return getBillingShortcut();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer component8() {
|
||||
public String component8() {
|
||||
return getBillingCsskey();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer component9() {
|
||||
return getFkLogin();
|
||||
}
|
||||
|
||||
@ -258,11 +282,16 @@ public class VWorktimeRecord extends TableRecordImpl<VWorktimeRecord> implements
|
||||
|
||||
@Override
|
||||
public String value7() {
|
||||
return getWp();
|
||||
return getBillingShortcut();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer value8() {
|
||||
public String value8() {
|
||||
return getBillingCsskey();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer value9() {
|
||||
return getFkLogin();
|
||||
}
|
||||
|
||||
@ -304,18 +333,24 @@ public class VWorktimeRecord extends TableRecordImpl<VWorktimeRecord> implements
|
||||
|
||||
@Override
|
||||
public VWorktimeRecord value7(String value) {
|
||||
setWp(value);
|
||||
setBillingShortcut(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public VWorktimeRecord value8(Integer value) {
|
||||
public VWorktimeRecord value8(String value) {
|
||||
setBillingCsskey(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public VWorktimeRecord value9(Integer value) {
|
||||
setFkLogin(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public VWorktimeRecord values(String value1, String value2, Double value3, String value4, String value5, String value6, String value7, Integer value8) {
|
||||
public VWorktimeRecord values(String value1, String value2, Double value3, String value4, String value5, String value6, String value7, String value8, Integer value9) {
|
||||
value1(value1);
|
||||
value2(value2);
|
||||
value3(value3);
|
||||
@ -324,6 +359,7 @@ public class VWorktimeRecord extends TableRecordImpl<VWorktimeRecord> implements
|
||||
value6(value6);
|
||||
value7(value7);
|
||||
value8(value8);
|
||||
value9(value9);
|
||||
return this;
|
||||
}
|
||||
|
||||
@ -341,7 +377,7 @@ public class VWorktimeRecord extends TableRecordImpl<VWorktimeRecord> implements
|
||||
/**
|
||||
* Create a detached, initialised VWorktimeRecord
|
||||
*/
|
||||
public VWorktimeRecord(String day, String duration, Double durationHours, String projectName, String moduleName, String jobName, String wp, Integer fkLogin) {
|
||||
public VWorktimeRecord(String day, String duration, Double durationHours, String projectName, String moduleName, String jobName, String billingShortcut, String billingCsskey, Integer fkLogin) {
|
||||
super(VWorktime.V_WORKTIME);
|
||||
|
||||
setDay(day);
|
||||
@ -350,7 +386,8 @@ public class VWorktimeRecord extends TableRecordImpl<VWorktimeRecord> implements
|
||||
setProjectName(projectName);
|
||||
setModuleName(moduleName);
|
||||
setJobName(jobName);
|
||||
setWp(wp);
|
||||
setBillingShortcut(billingShortcut);
|
||||
setBillingCsskey(billingCsskey);
|
||||
setFkLogin(fkLogin);
|
||||
}
|
||||
}
|
||||
|
@ -10,16 +10,18 @@ public class DailySummaryBean {
|
||||
private final String moduleName;
|
||||
private final String jobName;
|
||||
private final String duration;
|
||||
private final String wp;
|
||||
private final String billingShortcut;
|
||||
private final String billingCsskey;
|
||||
private final Double durationHours;
|
||||
|
||||
public DailySummaryBean(String projectName, String moduleName, String jobName, String duration, String wp, Double durationHours) {
|
||||
public DailySummaryBean(String projectName, String moduleName, String jobName, String duration, String billingShortcut, String billingCsskey, Double durationHours) {
|
||||
super();
|
||||
this.projectName = projectName;
|
||||
this.moduleName = moduleName;
|
||||
this.jobName = jobName;
|
||||
this.duration = duration;
|
||||
this.wp = wp;
|
||||
this.billingShortcut = billingShortcut;
|
||||
this.billingCsskey = billingCsskey;
|
||||
this.durationHours = durationHours;
|
||||
}
|
||||
|
||||
@ -40,10 +42,17 @@ public class DailySummaryBean {
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the wp
|
||||
* @return the billing shortcut
|
||||
*/
|
||||
public String getWp() {
|
||||
return wp;
|
||||
public String getBillingShortcut() {
|
||||
return billingShortcut;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the billing csskey
|
||||
*/
|
||||
public String getBillingCsskey() {
|
||||
return billingCsskey;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -7,9 +7,9 @@ import java.time.LocalDateTime;
|
||||
import java.time.ZoneId;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import de.jottyfan.timetrack.db.done.tables.records.TBillingRecord;
|
||||
import de.jottyfan.timetrack.db.done.tables.records.TDoneRecord;
|
||||
import de.jottyfan.timetrack.db.done.tables.records.TJobRecord;
|
||||
import de.jottyfan.timetrack.db.done.tables.records.TModuleRecord;
|
||||
@ -32,31 +32,20 @@ public class DoneBean implements Bean, Serializable, Comparable<DoneBean> {
|
||||
private TProjectRecord project;
|
||||
private TModuleRecord module;
|
||||
private TJobRecord activity;
|
||||
private WpBean wp;
|
||||
private TBillingRecord billing;
|
||||
|
||||
public DoneBean() {
|
||||
}
|
||||
|
||||
public DoneBean(TDoneRecord r, Map<Integer, TProjectRecord> projectMap, Map<Integer, TModuleRecord> moduleMap,
|
||||
Map<Integer, TJobRecord> jobMap) {
|
||||
Map<Integer, TJobRecord> jobMap, Map<Integer, TBillingRecord> billingMap) {
|
||||
this.pk = r.getPk();
|
||||
this.timeFrom = r.getTimeFrom();
|
||||
this.timeUntil = r.getTimeUntil();
|
||||
this.project = projectMap.get(r.getFkProject());
|
||||
this.module = moduleMap.get(r.getFkModule());
|
||||
this.activity = jobMap.get(r.getFkJob());
|
||||
List<WpBean> list = DoneGateway.getAllWps();
|
||||
String key = r.getWp();
|
||||
if (key != null && key.isBlank()) {
|
||||
key = null;
|
||||
}
|
||||
if (key != null) {
|
||||
for (WpBean bean : list) {
|
||||
if (bean.getKey().equals(r.getWp())) {
|
||||
this.wp = bean;
|
||||
}
|
||||
}
|
||||
}
|
||||
this.billing = billingMap.get(r.getFkBilling());
|
||||
}
|
||||
|
||||
/**
|
||||
@ -133,11 +122,11 @@ public class DoneBean implements Bean, Serializable, Comparable<DoneBean> {
|
||||
return ldt;
|
||||
}
|
||||
|
||||
public String getProjectNameWithWP() {
|
||||
public String getProjectNameWithBilling() {
|
||||
StringBuilder buf = new StringBuilder();
|
||||
buf.append(project == null ? "" : project.getName());
|
||||
if (wp != null) {
|
||||
buf.append(" (").append(wp.getKey()).append(")");
|
||||
if (billing != null) {
|
||||
buf.append(" (").append(billing.getShortcut()).append(")");
|
||||
}
|
||||
return buf.toString();
|
||||
}
|
||||
@ -154,8 +143,8 @@ public class DoneBean implements Bean, Serializable, Comparable<DoneBean> {
|
||||
return activity == null ? "" : activity.getName();
|
||||
}
|
||||
|
||||
public String getWpName() {
|
||||
return wp == null ? "" : wp.getName();
|
||||
public String getBillingName() {
|
||||
return billing == null ? "" : billing.getName();
|
||||
}
|
||||
|
||||
public String getTimeFromString() {
|
||||
@ -223,16 +212,16 @@ public class DoneBean implements Bean, Serializable, Comparable<DoneBean> {
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the wp
|
||||
* @return the billing
|
||||
*/
|
||||
public WpBean getWp() {
|
||||
return wp;
|
||||
public TBillingRecord getBilling() {
|
||||
return billing;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param wp the wp to set
|
||||
* @param billing the billing to set
|
||||
*/
|
||||
public void setWp(WpBean wp) {
|
||||
this.wp = wp;
|
||||
public void setBilling(TBillingRecord billing) {
|
||||
this.billing = billing;
|
||||
}
|
||||
}
|
||||
|
@ -4,6 +4,7 @@ import static de.jottyfan.timetrack.db.done.Tables.T_DONE;
|
||||
import static de.jottyfan.timetrack.db.done.Tables.T_JOB;
|
||||
import static de.jottyfan.timetrack.db.done.Tables.T_MODULE;
|
||||
import static de.jottyfan.timetrack.db.done.Tables.T_PROJECT;
|
||||
import static de.jottyfan.timetrack.db.done.Tables.T_BILLING;
|
||||
import static de.jottyfan.timetrack.db.done.Tables.V_HAMSTERSUMMARY;
|
||||
import static de.jottyfan.timetrack.db.done.Tables.V_TOTALOFDAY;
|
||||
import static de.jottyfan.timetrack.db.done.Tables.V_WORKTIME;
|
||||
@ -33,6 +34,7 @@ import org.jooq.Record3;
|
||||
import org.jooq.Record4;
|
||||
import org.jooq.Record5;
|
||||
import org.jooq.Record6;
|
||||
import org.jooq.Record7;
|
||||
import org.jooq.SelectConditionStep;
|
||||
import org.jooq.SelectJoinStep;
|
||||
import org.jooq.SelectWhereStep;
|
||||
@ -40,6 +42,7 @@ import org.jooq.UpdateConditionStep;
|
||||
import org.jooq.exception.DataAccessException;
|
||||
|
||||
import de.jooqfaces.JooqFacesContext;
|
||||
import de.jottyfan.timetrack.db.done.tables.records.TBillingRecord;
|
||||
import de.jottyfan.timetrack.db.done.tables.records.TDoneRecord;
|
||||
import de.jottyfan.timetrack.db.done.tables.records.TJobRecord;
|
||||
import de.jottyfan.timetrack.db.done.tables.records.TModuleRecord;
|
||||
@ -125,6 +128,27 @@ public class DoneGateway extends JooqGateway {
|
||||
return list;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* get all billings from db
|
||||
*
|
||||
* @return billings
|
||||
* @throws SQLException
|
||||
* @throws ClassNotFoundException
|
||||
*/
|
||||
public List<TBillingRecord> getAllBillings() throws DataAccessException, ClassNotFoundException, SQLException {
|
||||
try (CloseableDSLContext jooq = getJooq()) {
|
||||
List<TBillingRecord> list = new ArrayList<>();
|
||||
SelectWhereStep<TBillingRecord> sql = jooq.selectFrom(T_BILLING);
|
||||
LOGGER.debug(sql.toString());
|
||||
for (TBillingRecord r : sql.fetch()) {
|
||||
list.add(r);
|
||||
}
|
||||
list.sort((o1, o2) -> o1 == null || o2 == null || o1.getName() == null || o2.getName() == null ? 0
|
||||
: o1.getName().compareTo(o2.getName()));
|
||||
return list;
|
||||
}
|
||||
}
|
||||
|
||||
private Map<Integer, TProjectRecord> generateProjectMap(List<TProjectRecord> list) {
|
||||
Map<Integer, TProjectRecord> map = new HashMap<>();
|
||||
@ -150,6 +174,14 @@ public class DoneGateway extends JooqGateway {
|
||||
return map;
|
||||
}
|
||||
|
||||
private Map<Integer, TBillingRecord> generateBillingMap(List<TBillingRecord> list) {
|
||||
Map<Integer, TBillingRecord> map = new HashMap<>();
|
||||
for (TBillingRecord r : list) {
|
||||
map.put(r.getPk(), r);
|
||||
}
|
||||
return map;
|
||||
}
|
||||
|
||||
/**
|
||||
* get all from t_done of the given day
|
||||
*
|
||||
@ -163,6 +195,7 @@ public class DoneGateway extends JooqGateway {
|
||||
Map<Integer, TProjectRecord> projectMap = generateProjectMap(getAllProjects());
|
||||
Map<Integer, TModuleRecord> moduleMap = generateModuleMap(getAllModules());
|
||||
Map<Integer, TJobRecord> jobMap = generateJobMap(getAllActivities());
|
||||
Map<Integer, TBillingRecord> billingMap = generateBillingMap(getAllBillings());
|
||||
|
||||
if (day == null) {
|
||||
day = LocalDateTime.now();
|
||||
@ -185,7 +218,7 @@ public class DoneGateway extends JooqGateway {
|
||||
// @formatter:on
|
||||
LOGGER.debug(sql.toString());
|
||||
for (TDoneRecord r : sql.fetch()) {
|
||||
list.add(new DoneBean(r, projectMap, moduleMap, jobMap));
|
||||
list.add(new DoneBean(r, projectMap, moduleMap, jobMap, billingMap));
|
||||
}
|
||||
}
|
||||
list.sort((o1, o2) -> o1 == null || o2 == null ? 0 : o1.compareTo(o2));
|
||||
@ -203,11 +236,11 @@ public class DoneGateway extends JooqGateway {
|
||||
Integer fkProject = bean.getProject() == null ? null : bean.getProject().getPk();
|
||||
Integer fkModule = bean.getModule() == null ? null : bean.getModule().getPk();
|
||||
Integer fkJob = bean.getActivity() == null ? null : bean.getActivity().getPk();
|
||||
String wp = bean.getWp() == null ? null : bean.getWp().getKey();
|
||||
Integer fkBilling = bean.getBilling() == null ? null : bean.getBilling().getPk();
|
||||
Integer fkLogin = getFkLogin();
|
||||
|
||||
try (CloseableDSLContext jooq = getJooq()) {
|
||||
InsertValuesStep7<TDoneRecord, LocalDateTime, LocalDateTime, Integer, Integer, Integer, String, Integer> sql = jooq
|
||||
InsertValuesStep7<TDoneRecord, LocalDateTime, LocalDateTime, Integer, Integer, Integer, Integer, Integer> sql = jooq
|
||||
// @formatter:off
|
||||
.insertInto(T_DONE,
|
||||
T_DONE.TIME_FROM,
|
||||
@ -215,9 +248,9 @@ public class DoneGateway extends JooqGateway {
|
||||
T_DONE.FK_PROJECT,
|
||||
T_DONE.FK_MODULE,
|
||||
T_DONE.FK_JOB,
|
||||
T_DONE.WP,
|
||||
T_DONE.FK_BILLING,
|
||||
T_DONE.FK_LOGIN)
|
||||
.values(bean.getTimeFrom(), bean.getTimeUntil(), fkProject, fkModule, fkJob, wp, fkLogin);
|
||||
.values(bean.getTimeFrom(), bean.getTimeUntil(), fkProject, fkModule, fkJob, fkBilling, fkLogin);
|
||||
// @formatter:on
|
||||
LOGGER.debug(sql.toString());
|
||||
sql.execute();
|
||||
@ -233,7 +266,6 @@ public class DoneGateway extends JooqGateway {
|
||||
*/
|
||||
public void update(DoneBean bean) throws DataAccessException, ClassNotFoundException, SQLException {
|
||||
try (CloseableDSLContext jooq = getJooq()) {
|
||||
String wp = bean.getWp() == null ? null : bean.getWp().getKey();
|
||||
UpdateConditionStep<TDoneRecord> sql = jooq
|
||||
// @formatter:off
|
||||
.update(T_DONE)
|
||||
@ -242,7 +274,7 @@ public class DoneGateway extends JooqGateway {
|
||||
.set(T_DONE.FK_PROJECT, bean.getProject() == null ? null : bean.getProject().getPk())
|
||||
.set(T_DONE.FK_JOB, bean.getActivity() == null ? null : bean.getActivity().getPk())
|
||||
.set(T_DONE.FK_MODULE, bean.getModule() == null ? null : bean.getModule().getPk())
|
||||
.set(T_DONE.WP, wp)
|
||||
.set(T_DONE.FK_BILLING, bean.getBilling() == null ? null : bean.getBilling().getPk())
|
||||
.where(T_DONE.PK.eq(bean.getPk()));
|
||||
// @formatter:on
|
||||
LOGGER.debug(sql.toString());
|
||||
@ -312,29 +344,31 @@ public class DoneGateway extends JooqGateway {
|
||||
public List<DailySummaryBean> getAllJobs(java.util.Date day)
|
||||
throws DataAccessException, ClassNotFoundException, SQLException {
|
||||
try (CloseableDSLContext jooq = getJooq()) {
|
||||
SelectConditionStep<Record6<String, Double, String, String, String, String>> sql = jooq
|
||||
SelectConditionStep<Record7<String, Double, String, String, String, String, String>> sql = jooq
|
||||
// @formatter:off
|
||||
.select(V_WORKTIME.DURATION,
|
||||
V_WORKTIME.DURATION_HOURS,
|
||||
V_WORKTIME.PROJECT_NAME,
|
||||
V_WORKTIME.MODULE_NAME,
|
||||
V_WORKTIME.JOB_NAME,
|
||||
V_WORKTIME.WP)
|
||||
V_WORKTIME.BILLING_SHORTCUT,
|
||||
V_WORKTIME.BILLING_CSSKEY)
|
||||
.from(V_WORKTIME)
|
||||
.where(V_WORKTIME.DAY.eq(new SimpleDateFormat("yyyy-MM-dd").format(day)))
|
||||
.and(V_WORKTIME.FK_LOGIN.eq(getFkLogin()));
|
||||
// @formatter:on
|
||||
LOGGER.debug(sql.toString());
|
||||
List<DailySummaryBean> list = new ArrayList<>();
|
||||
for (Record6<String, Double, String, String, String, String> r : sql.fetch()) {
|
||||
for (Record7<String, Double, String, String, String, String, String> r : sql.fetch()) {
|
||||
String duration = r.get(V_WORKTIME.DURATION);
|
||||
Double durationHours = r.get(V_WORKTIME.DURATION_HOURS);
|
||||
String projectName = r.get(V_WORKTIME.PROJECT_NAME);
|
||||
String moduleName = r.get(V_WORKTIME.MODULE_NAME);
|
||||
String jobName = r.get(V_WORKTIME.JOB_NAME);
|
||||
String wp = r.get(V_WORKTIME.WP);
|
||||
String billingShortcut = r.get(V_WORKTIME.BILLING_SHORTCUT);
|
||||
String billingCsskey = r.get(V_WORKTIME.BILLING_CSSKEY);
|
||||
durationHours = durationHours == null ? null : new BigDecimal(durationHours).setScale(2, RoundingMode.HALF_UP).doubleValue();
|
||||
list.add(new DailySummaryBean(projectName, moduleName, jobName, duration, wp, durationHours));
|
||||
list.add(new DailySummaryBean(projectName, moduleName, jobName, duration, billingShortcut, billingCsskey, durationHours));
|
||||
}
|
||||
return list;
|
||||
}
|
||||
@ -354,7 +388,7 @@ public class DoneGateway extends JooqGateway {
|
||||
// @formatter:off
|
||||
.select(T_DONE.TIME_FROM,
|
||||
T_DONE.TIME_UNTIL,
|
||||
T_DONE.WP,
|
||||
T_BILLING.NAME,
|
||||
T_PROJECT.NAME,
|
||||
T_MODULE.NAME,
|
||||
T_JOB.NAME)
|
||||
@ -362,6 +396,7 @@ public class DoneGateway extends JooqGateway {
|
||||
.leftJoin(T_PROJECT).on(T_PROJECT.PK.eq(T_DONE.FK_PROJECT))
|
||||
.leftJoin(T_MODULE).on(T_MODULE.PK.eq(T_DONE.FK_MODULE))
|
||||
.leftJoin(T_JOB).on(T_JOB.PK.eq(T_DONE.FK_JOB))
|
||||
.leftJoin(T_BILLING).on(T_BILLING.PK.eq(T_DONE.FK_BILLING))
|
||||
.where(T_DONE.FK_LOGIN.eq(getFkLogin()));
|
||||
// @formatter:on
|
||||
LOGGER.debug(sql.toString());
|
||||
@ -370,14 +405,14 @@ public class DoneGateway extends JooqGateway {
|
||||
String projectName = r.get(T_PROJECT.NAME);
|
||||
String moduleName = r.get(T_MODULE.NAME);
|
||||
String jobName = r.get(T_JOB.NAME);
|
||||
String wp = r.get(T_DONE.WP);
|
||||
String billingName = r.get(T_BILLING.NAME);
|
||||
LocalDateTime timeFrom = r.get(T_DONE.TIME_FROM);
|
||||
LocalDateTime timeUntil = r.get(T_DONE.TIME_UNTIL);
|
||||
|
||||
StringBuilder buf = new StringBuilder();
|
||||
buf.append(projectName);
|
||||
if (wp != null && !wp.isBlank()) {
|
||||
buf.append(" (").append(wp).append(")");
|
||||
if (billingName != null && !billingName.isBlank()) {
|
||||
buf.append(" (").append(billingName).append(")");
|
||||
}
|
||||
buf.append(", ");
|
||||
buf.append(moduleName);
|
||||
@ -453,18 +488,4 @@ public class DoneGateway extends JooqGateway {
|
||||
}
|
||||
return buf.toString();
|
||||
}
|
||||
|
||||
/**
|
||||
* dummy method to use until a table has been created
|
||||
*
|
||||
* @return all valid wps
|
||||
*/
|
||||
public static final List<WpBean> getAllWps() {
|
||||
List<WpBean> list = new ArrayList<>();
|
||||
list.add(new WpBean("WP2", "WP2 (eucs) - Opal/Mica/..., REST"));
|
||||
list.add(new WpBean("WP4", "WP4 (eucs) - Square²"));
|
||||
list.add(new WpBean("WP5", "WP5 (eucs) - SHIP-Datenbereitstellung"));
|
||||
list.add(new WpBean("NFDI TA3", "TA3 (nfdi) - Mica Dev"));
|
||||
return list;
|
||||
}
|
||||
}
|
||||
|
@ -21,6 +21,7 @@ import javax.inject.Named;
|
||||
import org.jooq.exception.DataAccessException;
|
||||
|
||||
import de.jooqfaces.JooqFacesContext;
|
||||
import de.jottyfan.timetrack.db.done.tables.records.TBillingRecord;
|
||||
import de.jottyfan.timetrack.db.done.tables.records.TJobRecord;
|
||||
import de.jottyfan.timetrack.db.done.tables.records.TModuleRecord;
|
||||
import de.jottyfan.timetrack.db.done.tables.records.TProjectRecord;
|
||||
@ -41,7 +42,7 @@ public class DoneModel implements Model, Serializable {
|
||||
private List<TProjectRecord> projects;
|
||||
private List<TModuleRecord> modules;
|
||||
private List<TJobRecord> activities;
|
||||
private List<WpBean> wps;
|
||||
private List<TBillingRecord> billings;
|
||||
private List<TimeBean> times;
|
||||
private List<DailySummaryBean> allJobs;
|
||||
private WholeDaySummaryBean daySummary;
|
||||
@ -58,7 +59,7 @@ public class DoneModel implements Model, Serializable {
|
||||
modules = gw.getAllModules();
|
||||
activities = gw.getAllActivities();
|
||||
projects = gw.getAllProjects();
|
||||
wps = DoneGateway.getAllWps();
|
||||
billings = gw.getAllBillings();
|
||||
daySummary = gw.getDaySummary(day);
|
||||
allJobs = gw.getAllJobs(day);
|
||||
calendarEvents = gw.getAllCalendarEvents();
|
||||
@ -211,8 +212,8 @@ public class DoneModel implements Model, Serializable {
|
||||
buf.append(thatday).append("\t");
|
||||
buf.append(sdb.getDuration()).append("\t");
|
||||
buf.append(sdb.getProjectName());
|
||||
if (sdb.getWp() != null && !sdb.getWp().isBlank()) {
|
||||
buf.append(" (").append(sdb.getWp()).append(")");
|
||||
if (sdb.getBillingShortcut() != null && !sdb.getBillingShortcut().isBlank()) {
|
||||
buf.append(" (").append(sdb.getBillingShortcut()).append(")");
|
||||
}
|
||||
buf.append("\t");
|
||||
buf.append(sdb.getModuleName()).append("\t");
|
||||
@ -246,8 +247,8 @@ public class DoneModel implements Model, Serializable {
|
||||
return activities;
|
||||
}
|
||||
|
||||
public List<WpBean> getWps() {
|
||||
return wps;
|
||||
public List<TBillingRecord> getBillings() {
|
||||
return billings;
|
||||
}
|
||||
|
||||
public List<DailySummaryBean> getAllJobs() {
|
||||
|
@ -1,34 +0,0 @@
|
||||
package de.jottyfan.timetrack.modules.done;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author jotty
|
||||
*
|
||||
*/
|
||||
public class WpBean implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
private final String name;
|
||||
private final String key;
|
||||
|
||||
public WpBean(String key, String name) {
|
||||
super();
|
||||
this.key = key;
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the name
|
||||
*/
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the key
|
||||
*/
|
||||
public String getKey() {
|
||||
return key;
|
||||
}
|
||||
}
|
@ -58,9 +58,9 @@
|
||||
<f:selectItem itemValue="" itemLabel="--- bitte wählen ---" />
|
||||
<f:selectItems value="#{doneModel.activities}" var="i" itemValue="#{i}" itemLabel="#{i.name}" />
|
||||
</b:selectOneMenu>
|
||||
<b:selectOneMenu id="wp" value="#{doneModel.bean.wp}">
|
||||
<b:selectOneMenu id="billing" value="#{doneModel.bean.billing}">
|
||||
<f:selectItem itemValue="" itemLabel="--- bitte wählen ---" />
|
||||
<f:selectItems value="#{doneModel.wps}" var="i" itemValue="#{i}" itemLabel="#{i.name}" />
|
||||
<f:selectItems value="#{doneModel.billings}" var="i" itemValue="#{i}" itemLabel="#{i.name}" />
|
||||
</b:selectOneMenu>
|
||||
</b:panelGrid>
|
||||
<b:buttonGroup>
|
||||
@ -72,7 +72,7 @@
|
||||
$("[id='formular:projectInner']").attr("size", 25);
|
||||
$("[id='formular:moduleInner']").attr("size", 25);
|
||||
$("[id='formular:activityInner']").attr("size", 25);
|
||||
$("[id='formular:wpInner']").attr("size", 25);
|
||||
$("[id='formular:billingInner']").attr("size", 25);
|
||||
});
|
||||
</script>
|
||||
</b:form>
|
||||
|
@ -23,6 +23,8 @@
|
||||
<h:outputText value="#{doneModel.bean.moduleName}" style="font-weight: bolder" />
|
||||
<h:outputText value="Tätigkeit: " />
|
||||
<h:outputText value="#{doneModel.bean.jobName}" style="font-weight: bolder" />
|
||||
<h:outputText value="Abrechnung: " />
|
||||
<h:outputText value="#{doneModel.bean.billingName}" style="font-weight: bolder" />
|
||||
</b:panelGrid>
|
||||
<b:form>
|
||||
<b:buttonGroup>
|
||||
|
@ -45,7 +45,7 @@
|
||||
<h:outputText value="Projekt (#{doneModel.bean.projectName})" />
|
||||
<h:outputText value="Modul (#{doneModel.bean.moduleName})" />
|
||||
<h:outputText value="Tätigkeit (#{doneModel.bean.jobName})" />
|
||||
<h:outputText value="Abrechnung (#{doneModel.bean.wpName})" />
|
||||
<h:outputText value="Abrechnung (#{doneModel.bean.billingName})" />
|
||||
<b:selectOneMenu id="project" value="#{doneModel.bean.project}">
|
||||
<f:selectItem itemValue="" itemLabel="--- bitte wählen ---" />
|
||||
<f:selectItems value="#{doneModel.projects}" var="i" itemValue="#{i}" itemLabel="#{i.name}" />
|
||||
@ -58,9 +58,9 @@
|
||||
<f:selectItem itemValue="" itemLabel="--- bitte wählen ---" />
|
||||
<f:selectItems value="#{doneModel.activities}" var="i" itemValue="#{i}" itemLabel="#{i.name}" />
|
||||
</b:selectOneMenu>
|
||||
<b:selectOneMenu id="wp" value="#{doneModel.bean.wp}">
|
||||
<b:selectOneMenu id="billing" value="#{doneModel.bean.billing}">
|
||||
<f:selectItem itemValue="" itemLabel="--- bitte wählen ---" />
|
||||
<f:selectItems value="#{doneModel.wps}" var="i" itemValue="#{i}" itemLabel="#{i.name}" />
|
||||
<f:selectItems value="#{doneModel.billings}" var="i" itemValue="#{i}" itemLabel="#{i.name}" />
|
||||
</b:selectOneMenu>
|
||||
</b:panelGrid>
|
||||
<b:buttonGroup>
|
||||
@ -72,7 +72,7 @@
|
||||
$("[id='formular:projectInner']").attr("size", 25);
|
||||
$("[id='formular:moduleInner']").attr("size", 25);
|
||||
$("[id='formular:activityInner']").attr("size", 25);
|
||||
$("[id='formular:wpInner']").attr("size", 25);
|
||||
$("[id='formular:billingInner']").attr("size", 25);
|
||||
});
|
||||
</script>
|
||||
</b:form>
|
||||
|
@ -24,7 +24,7 @@
|
||||
<b:commandButton action="#{doneControl.toDelete(b)}" value="Entfernen" look="danger" iconAwesome="trash" />
|
||||
</b:dataTableColumn>
|
||||
<b:dataTableColumn label="" value="#{b.timeSummary}" contentStyleClass="doneoverviewtext" style="width: 128px !important" orderable="false" />
|
||||
<b:dataTableColumn label="" value="#{b.projectNameWithWP}" contentStyleClass="doneoverviewtextemph" style="width: 160px !important" orderable="false" />
|
||||
<b:dataTableColumn label="" value="#{b.projectNameWithBilling}" contentStyleClass="doneoverviewtextemph" style="width: 160px !important" orderable="false" />
|
||||
<b:dataTableColumn label="" value="#{b.timeDiff}" contentStyleClass="doneoverviewtextemph" style="width: 64px !important" orderable="false" />
|
||||
<b:dataTableColumn label="" style="width: 100px !important" orderable="false">
|
||||
<b:commandButton action="#{doneControl.toEdit(b)}" value="Editieren" look="warning" iconAwesome="pencil" />
|
||||
@ -75,7 +75,7 @@
|
||||
searching="false">
|
||||
<b:dataTableColumn label="" value="#{col.projectName}" contentStyle="font-size: 120%" orderable="false" />
|
||||
<b:dataTableColumn label="" orderable="false">
|
||||
<b:badge value="#{col.wp}" styleClass="#{col.wp}" />
|
||||
<b:badge value="#{col.billingShortcut}" styleClass="#{col.billingCsskey}" />
|
||||
</b:dataTableColumn>
|
||||
<b:dataTableColumn label="" value="#{col.moduleName}" contentStyle="font-size: 120%" orderable="false" />
|
||||
<b:dataTableColumn label="" value="#{col.jobName}" contentStyle="font-size: 120%" orderable="false" />
|
||||
@ -108,9 +108,12 @@
|
||||
</ui:repeat>
|
||||
</b:tab>
|
||||
<b:tab title="Abrechnung">
|
||||
<b:dataTable value="#{doneModel.wps}" var="col" border="false" info="false">
|
||||
<b:dataTableColumn label="Schlüssel" value="#{col.key}" />
|
||||
<b:dataTable value="#{doneModel.billings}" var="col" border="false" info="false">
|
||||
<b:dataTableColumn label="Kürzel" value="#{col.shortcut}" />
|
||||
<b:dataTableColumn label="Name" value="#{col.name}" />
|
||||
<b:dataTableColumn label="Stil">
|
||||
<b:badge value="#{col.csskey}" styleClass="#{col.csskey}" />
|
||||
</b:dataTableColumn>
|
||||
</b:dataTable>
|
||||
</b:tab>
|
||||
</b:tabView>
|
||||
|
@ -47,17 +47,30 @@
|
||||
|
||||
.WP2 {
|
||||
color: black !important;
|
||||
background-color: #ffe169 !important;
|
||||
background: radial-gradient(#ffff00, #ffe169) !important;
|
||||
border: 1px solid darkgray;
|
||||
padding-top: 8px !important;
|
||||
}
|
||||
|
||||
.WP4 {
|
||||
color: white !important;
|
||||
background-color: #69c3ff !important;
|
||||
color: black !important;
|
||||
background: radial-gradient(#00ffff, #69c3ff) !important;
|
||||
border: 1px solid darkgray;
|
||||
padding-top: 8px !important;
|
||||
}
|
||||
|
||||
.WP5 {
|
||||
color: black !important;
|
||||
background-color: #e396ff !important;
|
||||
background: radial-gradient(#ff0000, #e396ff) !important;
|
||||
border: 1px solid darkgray;
|
||||
padding-top: 8px !important;
|
||||
}
|
||||
|
||||
.TA3 {
|
||||
color: black !important;
|
||||
background: radial-gradient(#99ff99, #ccffcc) !important;
|
||||
border: 1px solid darkgray;
|
||||
padding-top: 8px !important;
|
||||
}
|
||||
|
||||
.left {
|
||||
|
Reference in New Issue
Block a user