diff --git a/backend/pom.xml b/backend/pom.xml
index 8b3c354..52cf731 100644
--- a/backend/pom.xml
+++ b/backend/pom.xml
@@ -14,7 +14,7 @@
${java.version}
${java.version}
5.1.0
- 0.4.0
+ 0.4.3
diff --git a/backend/src/main/java/de/champonthis/buntspecht/controller/TurnoverController.java b/backend/src/main/java/de/champonthis/buntspecht/controller/TurnoverController.java
index 8c7f69d..535967a 100644
--- a/backend/src/main/java/de/champonthis/buntspecht/controller/TurnoverController.java
+++ b/backend/src/main/java/de/champonthis/buntspecht/controller/TurnoverController.java
@@ -9,7 +9,6 @@ import org.springframework.http.HttpStatus;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.util.StringUtils;
import org.springframework.validation.Errors;
-import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PatchMapping;
import org.springframework.web.bind.annotation.PathVariable;
@@ -149,16 +148,14 @@ public class TurnoverController extends BaseController {
throw new EntityResponseStatusException(errors.getAllErrors(), HttpStatus.CONFLICT);
}
+ Turnover existing = turnoverManager.get(turnover.getId());
if (!hasRole("ROLE_ADMIN")) {
- Turnover existing = turnoverManager.get(turnover.getId());
if (!getCurrentUsername().equals(existing.getUsername())) {
throw new EntityResponseStatusException(HttpStatus.FORBIDDEN);
}
turnover.setUsername(getCurrentUsername());
}
- Turnover existing = turnoverManager.get(turnover.getId());
-
if (existing.equals(turnover)) {
throw new EntityResponseStatusException(HttpStatus.NOT_MODIFIED);
}
diff --git a/backend/src/main/java/de/champonthis/buntspecht/model/Turnover.java b/backend/src/main/java/de/champonthis/buntspecht/model/Turnover.java
index 4367871..134126c 100644
--- a/backend/src/main/java/de/champonthis/buntspecht/model/Turnover.java
+++ b/backend/src/main/java/de/champonthis/buntspecht/model/Turnover.java
@@ -147,24 +147,28 @@ public class Turnover {
Turnover turnover = (Turnover) obj;
boolean equals = true;
- equals &= dueDate.equals(turnover.getDueDate());
+ equals &= dueDate == null && turnover.getDueDate() == null
+ || dueDate != null && dueDate.equals(turnover.getDueDate());
- equals &= id == null && turnover.getId() == null || id.equals(turnover.getId());
+ equals &= id == null && turnover.getId() == null || id != null && id.equals(turnover.getId());
- equals &= username == null && turnover.getUsername() == null || username.equals(turnover.getUsername());
+ equals &= username == null && turnover.getUsername() == null
+ || username != null && username.equals(turnover.getUsername());
- equals &= customer == null && turnover.getCustomer() == null || customer.equals(turnover.getCustomer());
+ equals &= customer == null && turnover.getCustomer() == null
+ || customer != null && customer.equals(turnover.getCustomer());
- equals &= motif == null && turnover.getMotif() == null || motif.equals(turnover.getMotif());
+ equals &= motif == null && turnover.getMotif() == null || motif != null && motif.equals(turnover.getMotif());
equals &= price == turnover.getPrice();
equals &= timeInvestment == turnover.getTimeInvestment();
- equals &= remark == null && turnover.getRemark() == null || remark.equals(turnover.getRemark());
+ equals &= remark == null && turnover.getRemark() == null
+ || remark != null && remark.equals(turnover.getRemark());
equals &= materialConsumption == null && turnover.getMaterialConsumption() == null
- || materialConsumption.equals(turnover.getMaterialConsumption());
+ || materialConsumption != null && materialConsumption.equals(turnover.getMaterialConsumption());
return equals;
}
diff --git a/frontend/package-lock.json b/frontend/package-lock.json
index 0122247..5387eb7 100644
--- a/frontend/package-lock.json
+++ b/frontend/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "buntspecht-web",
- "version": "0.4.2",
+ "version": "0.4.3",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "buntspecht-web",
- "version": "0.4.2",
+ "version": "0.4.3",
"license": "AGPL3",
"dependencies": {
"@angular/animations": "^18.2.7",
diff --git a/frontend/package.json b/frontend/package.json
index 5927805..6c12c5c 100644
--- a/frontend/package.json
+++ b/frontend/package.json
@@ -1,6 +1,6 @@
{
"name": "buntspecht-web",
- "version": "0.4.2",
+ "version": "0.4.3",
"license": "AGPL3",
"scripts": {
"ng": "ng",
diff --git a/frontend/src/app/pages/turnover/turnover.page.ts b/frontend/src/app/pages/turnover/turnover.page.ts
index 5f20ce5..a20ba40 100644
--- a/frontend/src/app/pages/turnover/turnover.page.ts
+++ b/frontend/src/app/pages/turnover/turnover.page.ts
@@ -145,7 +145,7 @@ export class PageTurnover implements OnInit {
}
this.working = true;
- this.turnover.dueDate = this.form.get("dueDate").value;
+ this.turnover.dueDate = this.form.get("dueDate").value || this.turnover.created;
this.turnover.customer = this.form.get("customer").value;
this.turnover.motif = this.form.get("motif").value;
this.turnover.price = this.form.get("price").value;