From 159bbbfb1ff4cb71c59efc82a65da26f917f3c17 Mon Sep 17 00:00:00 2001 From: Felix Thape Date: Sun, 6 Aug 2023 11:37:54 +0200 Subject: [PATCH 1/5] feat: reenable duedate field --- pnpm-lock.yaml | 7 ++ tasks/components/layout/TaskDetailView.tsx | 67 ++++++++++++++----- tasks/mutations/task_mutations.ts | 77 +++++++++++++++------- tasks/package.json | 1 + tasks/utils/timeConversion.ts | 31 +++++++++ 5 files changed, 143 insertions(+), 40 deletions(-) create mode 100644 tasks/utils/timeConversion.ts diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 48e52cc2..e070d522 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -225,6 +225,9 @@ importers: '@twind/preset-typography': specifier: 1.0.7 version: 1.0.7(@twind/core@1.1.3)(typescript@5.1.6) + '@types/google-protobuf': + specifier: ^3.15.6 + version: 3.15.6 cookies-next: specifier: 2.1.2 version: 2.1.2 @@ -4507,6 +4510,10 @@ packages: resolution: {integrity: sha512-frsJrz2t/CeGifcu/6uRo4b+SzAwT4NYCVPu1GN8IB9XTzrpPkGuV0tmh9mN+/L0PklAlsC3u5Fxt0ju00LXIw==} dev: true + /@types/google-protobuf@3.15.6: + resolution: {integrity: sha512-pYVNNJ+winC4aek+lZp93sIKxnXt5qMkuKmaqS3WGuTq0Bw1ZDYNBgzG5kkdtwcv+GmYJGo3yEg6z2cKKAiEdw==} + dev: false + /@types/graceful-fs@4.1.6: resolution: {integrity: sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==} dependencies: diff --git a/tasks/components/layout/TaskDetailView.tsx b/tasks/components/layout/TaskDetailView.tsx index fac7cfad..04bde1b8 100644 --- a/tasks/components/layout/TaskDetailView.tsx +++ b/tasks/components/layout/TaskDetailView.tsx @@ -14,22 +14,25 @@ import { TaskTemplateListColumn } from '../TaskTemplateListColumn' import { Input } from '@helpwave/common/components/user_input/Input' import type { Languages } from '@helpwave/common/hooks/useLanguage' import type { TaskTemplateDTO } from '../../mutations/task_template_mutations' -import { - usePersonalTaskTemplateQuery, - useWardTaskTemplateQuery -} from '../../mutations/task_template_mutations' +import { usePersonalTaskTemplateQuery, useWardTaskTemplateQuery } from '../../mutations/task_template_mutations' import { useAuth } from '../../hooks/useAuth' import { useRouter } from 'next/router' import type { TaskDTO } from '../../mutations/task_mutations' import { emptyTask, useSubTaskAddMutation, - useTaskCreateMutation, useTaskDeleteMutation, + useTaskCreateMutation, + useTaskDeleteMutation, useTaskQuery, + useTaskToDoneMutation, + useTaskToInProgressMutation, + useTaskToToDoMutation, useTaskUpdateMutation } from '../../mutations/task_mutations' import { useEffect, useState } from 'react' import { LoadingAnimation } from '@helpwave/common/components/LoadingAnimation' +import { GetPatientDetailsResponse } from '@helpwave/proto-ts/proto/services/task_svc/v1/patient_svc_pb' +import TaskStatus = GetPatientDetailsResponse.TaskStatus type TaskDetailViewTranslation = { close: string, @@ -119,6 +122,9 @@ export const TaskDetailView = ({ const updateTaskMutation = useTaskUpdateMutation() const deleteTaskMutation = useTaskDeleteMutation(onClose) + const toToDoMutation = useTaskToToDoMutation() + const toInProgressMutation = useTaskToInProgressMutation() + const toDoneMutation = useTaskToDoneMutation() useEffect(() => { if (data) { @@ -149,6 +155,7 @@ export const TaskDetailView = ({ return } + console.log(data, data?.dueDate) return (
{isCreating && ( @@ -214,8 +221,8 @@ export const TaskDetailView = ({ }}/>
-
-
+
+
{ - const dueDate = new Date(value) - setTask({ ...task, dueDate }) - }} - /> +
+ { + const dueDate = new Date(value) + setTask({ ...task, dueDate }) + // Maybe add some auto save here after a validation + }} + /> + +
- setTask({ ...task, status })}/> + { + switch (status) { + case TaskStatus.TASK_STATUS_TODO: + toToDoMutation.mutate(task.id) + break + case TaskStatus.TASK_STATUS_IN_PROGRESS: + toInProgressMutation.mutate(task.id) + break + case TaskStatus.TASK_STATUS_DONE: + toDoneMutation.mutate(task.id) + break + default: + break + } + setTask({ ...task, status }) + }}/>
-
+