From 4f4c556bb968590b82d715440dec100ebefd9457 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20B=C3=B6ckelmann?= Date: Mon, 13 Nov 2023 19:49:36 +0100 Subject: [PATCH] Use moment for parsing dates of taskfieldinfo and adapt annotation for spring json parsing --- .../core/api/models/timemanager/tasks/TaskFieldInfo.java | 5 +++++ frontend/src/app/tasks/task-editor/task-editor.component.ts | 5 +++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/backend/src/main/java/core/api/models/timemanager/tasks/TaskFieldInfo.java b/backend/src/main/java/core/api/models/timemanager/tasks/TaskFieldInfo.java index d4f2cf9..1cf7335 100644 --- a/backend/src/main/java/core/api/models/timemanager/tasks/TaskFieldInfo.java +++ b/backend/src/main/java/core/api/models/timemanager/tasks/TaskFieldInfo.java @@ -1,5 +1,6 @@ package core.api.models.timemanager.tasks; +import com.fasterxml.jackson.annotation.JsonFormat; import org.hibernate.validator.constraints.Length; import javax.validation.constraints.NotBlank; @@ -11,7 +12,11 @@ public class TaskFieldInfo { @Length(max = 255) private String taskName; private int eta; + + @JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX") private LocalDate startDate; + + @JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX") private LocalDate deadline; public TaskFieldInfo() { diff --git a/frontend/src/app/tasks/task-editor/task-editor.component.ts b/frontend/src/app/tasks/task-editor/task-editor.component.ts index 7752773..ab05b42 100644 --- a/frontend/src/app/tasks/task-editor/task-editor.component.ts +++ b/frontend/src/app/tasks/task-editor/task-editor.component.ts @@ -7,6 +7,7 @@ import {MAT_DIALOG_DATA, MatDialogRef} from "@angular/material/dialog"; import {TaskService} from "../../../api"; import {TaskEditorData} from "./TaskEditorData"; import {MatSnackBar} from "@angular/material/snack-bar"; +import * as moment from "moment/moment"; @Component({ @@ -53,8 +54,8 @@ export class TaskEditorComponent implements OnInit { this.taskService.tasksTaskgroupIDPut(this.editorData.taskgroupID, { taskName: this.nameCtrl.value, eta: this.etaCtrl.value, - startDate: this.startDate.value, - deadline: this.endDate.value + startDate: moment(this.startDate.value).format('YYYY-MM-DDTHH:mm:ss.SSSZ'), + deadline: moment(this.endDate.value).format('YYYY-MM-DDTHH:mm:ss.SSSZ') }).subscribe({ next: resp => { this.dialog.close(resp);