From 564f8cd35af80349807e6b0be0d53b28daf44ea3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=81=9F=E3=81=8F=E3=82=84?= Date: Sun, 21 Dec 2025 11:07:22 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BA=BA=E3=81=AE=E7=99=BB=E9=8C=B2?= =?UTF-8?q?=E3=81=97=E3=81=9F=E3=82=AA=E3=83=96=E3=82=B8=E3=82=A7=E3=82=AF?= =?UTF-8?q?=E3=83=88=E3=81=8C=E8=A6=8B=E3=82=8C=E3=81=A6=E3=81=97=E3=81=BE?= =?UTF-8?q?=E3=81=86=E5=95=8F=E9=A1=8C=E8=A7=A3=E6=B1=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/routes/$roomId/$editId.lazy.tsx | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/frontend/src/routes/$roomId/$editId.lazy.tsx b/frontend/src/routes/$roomId/$editId.lazy.tsx index b85306b..b108983 100644 --- a/frontend/src/routes/$roomId/$editId.lazy.tsx +++ b/frontend/src/routes/$roomId/$editId.lazy.tsx @@ -295,6 +295,22 @@ function RouteComponent() { }, [room, calendarItems, selectedDay]); const handleDayClick = (day: number) => { + // 他人の作成したアイテムがある場合はクリックを無効化 + if (room && calendarItems && user) { + const startDate = new Date(room.startAt); + const existingItem = calendarItems.find((item) => { + const openDate = new Date(item.openDate); + const diffTime = openDate.getTime() - startDate.getTime(); + const diffDays = Math.floor(diffTime / (1000 * 60 * 60 * 24)) + 1; + return diffDays === day; + }); + + if (existingItem && existingItem.userId !== user.id) { + console.log("他人のアイテムは編集できません"); + return; + } + } + const drawerIndex = day - 1; setSelectedDay(day); setIsDialogOpen(true);