eye candy

This commit is contained in:
jotty 2022-10-16 17:19:26 +02:00
parent be5b28e120
commit 8344186ad2
12 changed files with 59 additions and 32 deletions

View File

@ -12,13 +12,6 @@
<attribute name="gradle_used_by_scope" value="main,test"/> <attribute name="gradle_used_by_scope" value="main,test"/>
</attributes> </attributes>
</classpathentry> </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="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-17/"/> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-17/"/>
<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.web.container"/> <classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.web.container"/>
<classpathentry kind="con" path="org.eclipse.buildship.core.gradleclasspathcontainer"> <classpathentry kind="con" path="org.eclipse.buildship.core.gradleclasspathcontainer">

View File

@ -1,2 +1,13 @@
arguments=
auto.sync=false
build.scans.enabled=false
connection.gradle.distribution=GRADLE_DISTRIBUTION(WRAPPER)
connection.project.dir= connection.project.dir=
eclipse.preferences.version=1 eclipse.preferences.version=1
gradle.user.home=
java.home=
jvm.arguments=
offline.mode=false
override.workspace.settings=false
show.console.view=false
show.executions.view=false

View File

@ -1,14 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.5.0"> <?xml version="1.0" encoding="UTF-8"?>
<project-modules id="moduleCoreId" project-version="1.5.0">
<wb-module deploy-name="CampOrganizer2"> <wb-module deploy-name="camporganizer2">
<property name="context-root" value="camporganizer2"/>
<property name="context-root" value="CampOrganizer2"/>
<wb-resource deploy-path="/WEB-INF/classes" source-path="src/main/resources"/> <wb-resource deploy-path="/WEB-INF/classes" source-path="src/main/resources"/>
<wb-resource deploy-path="/WEB-INF/classes" source-path="src/main/java"/> <wb-resource deploy-path="/WEB-INF/classes" source-path="src/main/java"/>
<wb-resource deploy-path="/WEB-INF/classes" source-path="/src/test/java"/>
</wb-module> </wb-module>
</project-modules> </project-modules>

View File

@ -18,7 +18,7 @@ apply plugin: 'war'
apply plugin: 'application' apply plugin: 'application'
group = 'de.jottyfan.camporganizer' group = 'de.jottyfan.camporganizer'
version = '0.0.5' version = '0.0.6'
sourceCompatibility = 17 sourceCompatibility = 17
mainClassName = "de.jottyfan.camporganizer.Main" mainClassName = "de.jottyfan.camporganizer.Main"

View File

@ -13,7 +13,7 @@ import de.jottyfan.camporganizer.db.jooq.enums.EnumSex;
* *
*/ */
public class BookingBean implements Serializable { public class BookingBean implements Serializable {
private static final long serialVersionUID = 2L; private static final long serialVersionUID = 4L;
private Integer pk; private Integer pk;
private String forename; private String forename;
@ -39,6 +39,8 @@ public class BookingBean implements Serializable {
private Boolean isOver; private Boolean isOver;
private String campName; private String campName;
private String registrator; private String registrator;
private Boolean accept;
private String subscriber;
/** /**
* @return the forename * @return the forename
@ -358,4 +360,20 @@ public class BookingBean implements Serializable {
this.registrator = registrator; this.registrator = registrator;
} }
public Boolean getAccept() {
return accept;
}
public void setAccept(Boolean accept) {
this.accept = accept;
}
public String getSubscriber() {
return subscriber;
}
public void setSubscriber(String subscriber) {
this.subscriber = subscriber;
}
} }

View File

@ -14,7 +14,6 @@ import org.jooq.Condition;
import org.jooq.DSLContext; import org.jooq.DSLContext;
import org.jooq.Record; import org.jooq.Record;
import org.jooq.SelectConditionStep; import org.jooq.SelectConditionStep;
import org.jooq.impl.DSL;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
@ -59,6 +58,9 @@ public class IndexGateway {
T_PERSON.CREATED, T_PERSON.CREATED,
T_PERSON.EMAIL, T_PERSON.EMAIL,
T_PERSON.SEX, T_PERSON.SEX,
T_PERSON.ACCEPT,
T_PROFILE.FORENAME,
T_PROFILE.SURNAME,
REGISTRATOR.FORENAME, REGISTRATOR.FORENAME,
REGISTRATOR.SURNAME, REGISTRATOR.SURNAME,
V_CAMP.NAME, V_CAMP.NAME,
@ -103,6 +105,7 @@ public class IndexGateway {
bean.setUrl(r.get(V_CAMP.URL)); bean.setUrl(r.get(V_CAMP.URL));
bean.setIsOver(r.get(V_CAMP.IS_OVER)); bean.setIsOver(r.get(V_CAMP.IS_OVER));
bean.setCampName(r.get(V_CAMP.NAME)); bean.setCampName(r.get(V_CAMP.NAME));
bean.setAccept(r.get(T_PERSON.ACCEPT));
StringBuilder buf = new StringBuilder(); StringBuilder buf = new StringBuilder();
String forename = r.get(REGISTRATOR.FORENAME); String forename = r.get(REGISTRATOR.FORENAME);
String surname = r.get(REGISTRATOR.SURNAME); String surname = r.get(REGISTRATOR.SURNAME);
@ -111,6 +114,14 @@ public class IndexGateway {
} }
buf.append(surname != null ? surname : ""); buf.append(surname != null ? surname : "");
bean.setRegistrator(buf.toString()); bean.setRegistrator(buf.toString());
buf = new StringBuilder();
String regForename = r.get(T_PROFILE.FORENAME);
String regSurname = r.get(T_PROFILE.SURNAME);
if (regForename != null) {
buf.append(regForename).append(" ");
}
buf.append(regSurname != null ? regSurname : "");
bean.setSubscriber(buf.toString());
list.add(bean); list.add(bean);
} }
return list; return list;

View File

@ -52,7 +52,7 @@
</tr> </tr>
<tr> <tr>
<th>Kontostand</th> <th>Kontostand</th>
<td><span th:text="${#strings.replace(#numbers.formatCurrency(booker.paid), '¤', '€')}" th:if="${booker.paid != null}"></span> <td><span th:text="${#numbers.formatDecimal(booker.paid, 1, 2) + ' €'}" th:if="${booker.paid != null}"></span>
</tr> </tr>
</tbody> </tbody>
</table> </table>

View File

@ -35,7 +35,7 @@
<td th:text="${b.sex}"></td> <td th:text="${b.sex}"></td>
<td th:text="${b.camp}"></td> <td th:text="${b.camp}"></td>
<td th:text="${b.role}"></td> <td th:text="${b.role}"></td>
<td><span th:text="${#strings.replace(#numbers.formatCurrency(b.paid), '¤', '€')}"></span> <td><span th:text="${#numbers.formatDecimal(b.paid, 1, 2) + ' €'}" th:if="${b.paid != null}"></span>
<form action="#" th:action="@{'/business/bookings/payment/' + ${b.pk}}" th:object="${addBean}" method="post"> <form action="#" th:action="@{'/business/bookings/payment/' + ${b.pk}}" th:object="${addBean}" method="post">
<input type="number" step="0.01" th:field="*{payment}"> <input type="submit" style="padding: 4px" value="einzahlen"> <input type="number" step="0.01" th:field="*{payment}"> <input type="submit" style="padding: 4px" value="einzahlen">
</form></td> </form></td>

View File

@ -30,7 +30,7 @@
<tr> <tr>
<td th:text="${#numbers.formatDecimal(b.campYear, 1, 0)}"></td> <td th:text="${#numbers.formatDecimal(b.campYear, 1, 0)}"></td>
<td><a th:href="@{/business/camp/{id}(id=${b.campId})}" th:text="${b.campName}" class="tablelink" title="Freizeitübersicht laden"></a></td> <td><a th:href="@{/business/camp/{id}(id=${b.campId})}" th:text="${b.campName}" class="tablelink" title="Freizeitübersicht laden"></a></td>
<td th:text="${#strings.replace(#numbers.formatCurrency(b.budget), '¤', '€')}"></td> <td th:text="${#numbers.formatDecimal(b.budget, 1, 2) + ' €'}"></td>
</tr> </tr>
</th:block> </th:block>
</tbody> </tbody>

View File

@ -52,7 +52,7 @@
</tr> </tr>
<tr> <tr>
<td>Beiträge</td> <td>Beiträge</td>
<th th:text="${#strings.replace(#numbers.formatCurrency(booking.paid), '¤', '€')}"></th> <th><span th:text="${#numbers.formatDecimal(booking.paid, 1, 2) + ' €'}" th:if="${booking.paid != null}"></span></th>
</tbody> </tbody>
</table> </table>
</div> </div>
@ -79,7 +79,7 @@
<td><a class="btn btn-icon-silent" th:href="@{/business/bookings/{id}(id=${b.pk})}" title="bearbeiten" th:text="${b.name}"></a></td> <td><a class="btn btn-icon-silent" th:href="@{/business/bookings/{id}(id=${b.pk})}" title="bearbeiten" th:text="${b.name}"></a></td>
<td th:text="${b.sex}"></td> <td th:text="${b.sex}"></td>
<td th:text="${b.role}"></td> <td th:text="${b.role}"></td>
<td th:text="${#strings.replace(#numbers.formatCurrency(b.paid), '¤', '€')}"></td> <td><span th:text="${#numbers.formatDecimal(b.paid, 1, 2) + ' €'}" th:if="${b.paid != null}"></span></td>
<td th:text="${#temporals.format(b.bookingDate, 'dd.MM.yyyy')}"></td> <td th:text="${#temporals.format(b.bookingDate, 'dd.MM.yyyy')}"></td>
<td th:text="${b.accept == null ? '' : (b.accept ? 'Ja' : 'abgelehnt')}"></td> <td th:text="${b.accept == null ? '' : (b.accept ? 'Ja' : 'abgelehnt')}"></td>
</tr> </tr>

View File

@ -72,10 +72,10 @@
</div> </div>
<div class="card-footer"> <div class="card-footer">
<div th:if="${b.created != null}"> <div th:if="${b.created != null}">
angemeldet am <span th:text="${#temporals.format(b.created, 'dd.MM.yyyy')}"></span> angemeldet am <span th:text="${#temporals.format(b.created, 'dd.MM.yyyy')}"></span> von <span th:text="${b.subscriber}"></span>
</div> </div>
<div th:if="${!#strings.isEmpty(b.registrator)}"> <div th:if="${b.accept != null}">
bearbeitet von <span th:text="${b.registrator}"></span> <span th:text="${b.accept ? 'bestätigt' : 'abgelehnt'}"></span> von <span th:text="${b.registrator}"></span>
</div> </div>
<span th:if="${b.isOver}">Die Freizeit ist bereits vorbei.</span> <span th:if="${b.isOver}">Die Freizeit ist bereits vorbei.</span>
</div> </div>

View File

@ -40,7 +40,7 @@
</div> </div>
<div class="row"> <div class="row">
<div class="col-sm-3">Preis</div> <div class="col-sm-3">Preis</div>
<div class="col-sm-9" th:text="${c.price}"></div> <div class="col-sm-9" th:text="${c.price + ' €'}"></div>
</div> </div>
<div class="row"> <div class="row">
<div class="col-sm-3">Ferien</div> <div class="col-sm-3">Ferien</div>