summaryrefslogtreecommitdiff
path: root/lib/gtc-contract/status/create-gtc-document-dialog.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'lib/gtc-contract/status/create-gtc-document-dialog.tsx')
-rw-r--r--lib/gtc-contract/status/create-gtc-document-dialog.tsx18
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}`)