From 14ece3eed2214e92a5cc77a95cd53f62b38e9824 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Henke?= Date: Thu, 4 Jan 2024 11:24:39 +0100 Subject: [PATCH] corrected overtime to become > 24 hours and negative --- build.gradle | 2 +- .../timetrack/db/done/tables/TOvertime.java | 17 ++- .../db/done/tables/VCurrentOvertime.java | 10 +- .../done/tables/records/TOvertimeRecord.java | 105 +++++++++--------- .../records/VCurrentOvertimeRecord.java | 26 ++--- src/main/resources/done_ext.sql | 10 +- 6 files changed, 84 insertions(+), 86 deletions(-) diff --git a/build.gradle b/build.gradle index a25cf9d..2a4e2d7 100644 --- a/build.gradle +++ b/build.gradle @@ -23,7 +23,7 @@ apply plugin: 'maven-publish' apply plugin: 'eclipse' group = 'de.jottyfan' -version = '20240103d' +version = '20240104' def artifactId = 'timetrackjooq' def versionNumber = version diff --git a/src/main/java/de/jottyfan/timetrack/db/done/tables/TOvertime.java b/src/main/java/de/jottyfan/timetrack/db/done/tables/TOvertime.java index 2f9fe53..9e55945 100644 --- a/src/main/java/de/jottyfan/timetrack/db/done/tables/TOvertime.java +++ b/src/main/java/de/jottyfan/timetrack/db/done/tables/TOvertime.java @@ -10,7 +10,6 @@ import de.jottyfan.timetrack.db.done.tables.records.TOvertimeRecord; import de.jottyfan.timetrack.db.profile.tables.TLogin; import java.time.LocalDateTime; -import java.time.LocalTime; import java.util.Arrays; import java.util.List; import java.util.function.Function; @@ -60,11 +59,6 @@ public class TOvertime extends TableImpl { */ public final TableField PK_OVERTIME = createField(DSL.name("pk_overtime"), SQLDataType.INTEGER.nullable(false).identity(true), this, ""); - /** - * The column done.t_overtime.worktime_offset. - */ - public final TableField WORKTIME_OFFSET = createField(DSL.name("worktime_offset"), SQLDataType.LOCALTIME(6).nullable(false), this, ""); - /** * The column done.t_overtime.impact. */ @@ -75,6 +69,11 @@ public class TOvertime extends TableImpl { */ public final TableField FK_LOGIN = createField(DSL.name("fk_login"), SQLDataType.INTEGER.nullable(false), this, ""); + /** + * The column done.t_overtime.overtime_minutes. + */ + public final TableField OVERTIME_MINUTES = createField(DSL.name("overtime_minutes"), SQLDataType.INTEGER.nullable(false).defaultValue(DSL.field(DSL.raw("0"), SQLDataType.INTEGER)), this, ""); + private TOvertime(Name alias, Table aliased) { this(alias, aliased, null); } @@ -189,14 +188,14 @@ public class TOvertime extends TableImpl { // ------------------------------------------------------------------------- @Override - public Row4 fieldsRow() { + public Row4 fieldsRow() { return (Row4) super.fieldsRow(); } /** * Convenience mapping calling {@link SelectField#convertFrom(Function)}. */ - public SelectField mapping(Function4 from) { + public SelectField mapping(Function4 from) { return convertFrom(Records.mapping(from)); } @@ -204,7 +203,7 @@ public class TOvertime extends TableImpl { * Convenience mapping calling {@link SelectField#convertFrom(Class, * Function)}. */ - public SelectField mapping(Class toType, Function4 from) { + public SelectField mapping(Class toType, Function4 from) { return convertFrom(toType, Records.mapping(from)); } } diff --git a/src/main/java/de/jottyfan/timetrack/db/done/tables/VCurrentOvertime.java b/src/main/java/de/jottyfan/timetrack/db/done/tables/VCurrentOvertime.java index 4a995e8..27a7268 100644 --- a/src/main/java/de/jottyfan/timetrack/db/done/tables/VCurrentOvertime.java +++ b/src/main/java/de/jottyfan/timetrack/db/done/tables/VCurrentOvertime.java @@ -7,7 +7,7 @@ package de.jottyfan.timetrack.db.done.tables; import de.jottyfan.timetrack.db.done.Done; import de.jottyfan.timetrack.db.done.tables.records.VCurrentOvertimeRecord; -import java.time.LocalTime; +import java.math.BigDecimal; import java.util.function.Function; import org.jooq.Field; @@ -51,7 +51,7 @@ public class VCurrentOvertime extends TableImpl { /** * The column done.v_current_overtime.overtime. */ - public final TableField OVERTIME = createField(DSL.name("overtime"), SQLDataType.LOCALTIME(6), this, ""); + public final TableField OVERTIME = createField(DSL.name("overtime"), SQLDataType.NUMERIC, this, ""); /** * The column done.v_current_overtime.impact. @@ -145,14 +145,14 @@ public class VCurrentOvertime extends TableImpl { // ------------------------------------------------------------------------- @Override - public Row3 fieldsRow() { + public Row3 fieldsRow() { return (Row3) super.fieldsRow(); } /** * Convenience mapping calling {@link SelectField#convertFrom(Function)}. */ - public SelectField mapping(Function3 from) { + public SelectField mapping(Function3 from) { return convertFrom(Records.mapping(from)); } @@ -160,7 +160,7 @@ public class VCurrentOvertime extends TableImpl { * Convenience mapping calling {@link SelectField#convertFrom(Class, * Function)}. */ - public SelectField mapping(Class toType, Function3 from) { + public SelectField mapping(Class toType, Function3 from) { return convertFrom(toType, Records.mapping(from)); } } diff --git a/src/main/java/de/jottyfan/timetrack/db/done/tables/records/TOvertimeRecord.java b/src/main/java/de/jottyfan/timetrack/db/done/tables/records/TOvertimeRecord.java index c304f75..5878f31 100644 --- a/src/main/java/de/jottyfan/timetrack/db/done/tables/records/TOvertimeRecord.java +++ b/src/main/java/de/jottyfan/timetrack/db/done/tables/records/TOvertimeRecord.java @@ -7,7 +7,6 @@ package de.jottyfan.timetrack.db.done.tables.records; import de.jottyfan.timetrack.db.done.tables.TOvertime; import java.time.LocalDateTime; -import java.time.LocalTime; import org.jooq.Field; import org.jooq.Record1; @@ -20,7 +19,7 @@ import org.jooq.impl.UpdatableRecordImpl; * This class is generated by jOOQ. */ @SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class TOvertimeRecord extends UpdatableRecordImpl implements Record4 { +public class TOvertimeRecord extends UpdatableRecordImpl implements Record4 { private static final long serialVersionUID = 1L; @@ -38,45 +37,45 @@ public class TOvertimeRecord extends UpdatableRecordImpl implem return (Integer) get(0); } - /** - * Setter for done.t_overtime.worktime_offset. - */ - public void setWorktimeOffset(LocalTime value) { - set(1, value); - } - - /** - * Getter for done.t_overtime.worktime_offset. - */ - public LocalTime getWorktimeOffset() { - return (LocalTime) get(1); - } - /** * Setter for done.t_overtime.impact. */ public void setImpact(LocalDateTime value) { - set(2, value); + set(1, value); } /** * Getter for done.t_overtime.impact. */ public LocalDateTime getImpact() { - return (LocalDateTime) get(2); + return (LocalDateTime) get(1); } /** * Setter for done.t_overtime.fk_login. */ public void setFkLogin(Integer value) { - set(3, value); + set(2, value); } /** * Getter for done.t_overtime.fk_login. */ public Integer getFkLogin() { + return (Integer) get(2); + } + + /** + * Setter for done.t_overtime.overtime_minutes. + */ + public void setOvertimeMinutes(Integer value) { + set(3, value); + } + + /** + * Getter for done.t_overtime.overtime_minutes. + */ + public Integer getOvertimeMinutes() { return (Integer) get(3); } @@ -94,12 +93,12 @@ public class TOvertimeRecord extends UpdatableRecordImpl implem // ------------------------------------------------------------------------- @Override - public Row4 fieldsRow() { + public Row4 fieldsRow() { return (Row4) super.fieldsRow(); } @Override - public Row4 valuesRow() { + public Row4 valuesRow() { return (Row4) super.valuesRow(); } @@ -109,60 +108,60 @@ public class TOvertimeRecord extends UpdatableRecordImpl implem } @Override - public Field field2() { - return TOvertime.T_OVERTIME.WORKTIME_OFFSET; - } - - @Override - public Field field3() { + public Field field2() { return TOvertime.T_OVERTIME.IMPACT; } @Override - public Field field4() { + public Field field3() { return TOvertime.T_OVERTIME.FK_LOGIN; } + @Override + public Field field4() { + return TOvertime.T_OVERTIME.OVERTIME_MINUTES; + } + @Override public Integer component1() { return getPkOvertime(); } @Override - public LocalTime component2() { - return getWorktimeOffset(); - } - - @Override - public LocalDateTime component3() { + public LocalDateTime component2() { return getImpact(); } @Override - public Integer component4() { + public Integer component3() { return getFkLogin(); } + @Override + public Integer component4() { + return getOvertimeMinutes(); + } + @Override public Integer value1() { return getPkOvertime(); } @Override - public LocalTime value2() { - return getWorktimeOffset(); - } - - @Override - public LocalDateTime value3() { + public LocalDateTime value2() { return getImpact(); } @Override - public Integer value4() { + public Integer value3() { return getFkLogin(); } + @Override + public Integer value4() { + return getOvertimeMinutes(); + } + @Override public TOvertimeRecord value1(Integer value) { setPkOvertime(value); @@ -170,25 +169,25 @@ public class TOvertimeRecord extends UpdatableRecordImpl implem } @Override - public TOvertimeRecord value2(LocalTime value) { - setWorktimeOffset(value); - return this; - } - - @Override - public TOvertimeRecord value3(LocalDateTime value) { + public TOvertimeRecord value2(LocalDateTime value) { setImpact(value); return this; } @Override - public TOvertimeRecord value4(Integer value) { + public TOvertimeRecord value3(Integer value) { setFkLogin(value); return this; } @Override - public TOvertimeRecord values(Integer value1, LocalTime value2, LocalDateTime value3, Integer value4) { + public TOvertimeRecord value4(Integer value) { + setOvertimeMinutes(value); + return this; + } + + @Override + public TOvertimeRecord values(Integer value1, LocalDateTime value2, Integer value3, Integer value4) { value1(value1); value2(value2); value3(value3); @@ -210,13 +209,13 @@ public class TOvertimeRecord extends UpdatableRecordImpl implem /** * Create a detached, initialised TOvertimeRecord */ - public TOvertimeRecord(Integer pkOvertime, LocalTime worktimeOffset, LocalDateTime impact, Integer fkLogin) { + public TOvertimeRecord(Integer pkOvertime, LocalDateTime impact, Integer fkLogin, Integer overtimeMinutes) { super(TOvertime.T_OVERTIME); setPkOvertime(pkOvertime); - setWorktimeOffset(worktimeOffset); setImpact(impact); setFkLogin(fkLogin); + setOvertimeMinutes(overtimeMinutes); resetChangedOnNotNull(); } } diff --git a/src/main/java/de/jottyfan/timetrack/db/done/tables/records/VCurrentOvertimeRecord.java b/src/main/java/de/jottyfan/timetrack/db/done/tables/records/VCurrentOvertimeRecord.java index 7b49feb..3f83491 100644 --- a/src/main/java/de/jottyfan/timetrack/db/done/tables/records/VCurrentOvertimeRecord.java +++ b/src/main/java/de/jottyfan/timetrack/db/done/tables/records/VCurrentOvertimeRecord.java @@ -6,7 +6,7 @@ package de.jottyfan.timetrack.db.done.tables.records; import de.jottyfan.timetrack.db.done.tables.VCurrentOvertime; -import java.time.LocalTime; +import java.math.BigDecimal; import org.jooq.Field; import org.jooq.Record3; @@ -18,22 +18,22 @@ import org.jooq.impl.TableRecordImpl; * This class is generated by jOOQ. */ @SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class VCurrentOvertimeRecord extends TableRecordImpl implements Record3 { +public class VCurrentOvertimeRecord extends TableRecordImpl implements Record3 { private static final long serialVersionUID = 1L; /** * Setter for done.v_current_overtime.overtime. */ - public void setOvertime(LocalTime value) { + public void setOvertime(BigDecimal value) { set(0, value); } /** * Getter for done.v_current_overtime.overtime. */ - public LocalTime getOvertime() { - return (LocalTime) get(0); + public BigDecimal getOvertime() { + return (BigDecimal) get(0); } /** @@ -69,17 +69,17 @@ public class VCurrentOvertimeRecord extends TableRecordImpl fieldsRow() { + public Row3 fieldsRow() { return (Row3) super.fieldsRow(); } @Override - public Row3 valuesRow() { + public Row3 valuesRow() { return (Row3) super.valuesRow(); } @Override - public Field field1() { + public Field field1() { return VCurrentOvertime.V_CURRENT_OVERTIME.OVERTIME; } @@ -94,7 +94,7 @@ public class VCurrentOvertimeRecord extends TableRecordImpl= x.impact left join done.t_required_worktime r on r.fk_login = x.fk_login and r.day = l.day where l.day < now() -group by x.worktime_offset, x.fk_login; +group by x.overtime_minutes, x.fk_login; grant select on done.v_current_overtime to timetrack; @@ -80,4 +80,4 @@ with x(dayworktime, day, fk_login, required, starttime, endtime) as ( grant select on done.v_day to timetrack; -create or replace view done.v_version as select 20240103 as version; +create or replace view done.v_version as select 20240104 as version;