diff options
Diffstat (limited to 'lib/gtc-contract/status/create-gtc-document-dialog.tsx')
| -rw-r--r-- | lib/gtc-contract/status/create-gtc-document-dialog.tsx | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/lib/gtc-contract/status/create-gtc-document-dialog.tsx b/lib/gtc-contract/status/create-gtc-document-dialog.tsx index 6791adfa..98cd249f 100644 --- a/lib/gtc-contract/status/create-gtc-document-dialog.tsx +++ b/lib/gtc-contract/status/create-gtc-document-dialog.tsx @@ -42,11 +42,18 @@ import { toast } from "sonner" import { createGtcDocumentSchema, type CreateGtcDocumentSchema } from "@/lib/gtc-contract/validations" import { createGtcDocument, getProjectsForSelect } from "@/lib/gtc-contract/service" import { type Project } from "@/db/schema/projects" +import { useSession } from "next-auth/react" export function CreateGtcDocumentDialog() { const [open, setOpen] = React.useState(false) const [projects, setProjects] = React.useState<Project[]>([]) const [isCreatePending, startCreateTransition] = React.useTransition() + const { data: session } = useSession() + + const currentUserId =React.useMemo(() => { + return session?.user?.id ? Number(session.user.id) : null; + }, [session]); + React.useEffect(() => { if (open) { @@ -70,8 +77,17 @@ export function CreateGtcDocumentDialog() { async function onSubmit(data: CreateGtcDocumentSchema) { startCreateTransition(async () => { + + if (!currentUserId) { + toast.error("로그인이 필요합니다") + return + } + try { - const result = await createGtcDocument(data) + const result = await createGtcDocument({ + ...data, + createdById: currentUserId + }) if (result.error) { toast.error(`에러: ${result.error}`) |
