diff --git a/front/src/actions/event/register/viewmodel.ts b/front/src/actions/event/register/viewmodel.ts index 5405e7a..66c5528 100644 --- a/front/src/actions/event/register/viewmodel.ts +++ b/front/src/actions/event/register/viewmodel.ts @@ -19,9 +19,8 @@ const BaseSchema = z.object({ description: z.string({ required_error: 'イベントの説明は必須です。', }), - userGroupId: z.coerce.number({ - required_error: 'ユーザーグループは必須です。', - }), + userGroupId: z.string() + .refine((val) => val.length > 0 && !isNaN(Number(val)), { message: 'ユーザーグループの指定が不正です。' }), eventDate: z.string() .regex(DATE_PATTERN, 'イベント日はYYYY-MM-DD形式で入力してください。') .refine((date) => !isNaN(Date.parse(date)), '有効な日付を入力してください。'), @@ -108,6 +107,7 @@ export async function registerEvent( ...rest, startDateTime: new Date(`${eventDate}T${eventStartTime}:00.000`), endDateTime: new Date(`${eventDate}T${eventEndTime}:00.000`), + userGroupId: Number(rest.userGroupId) }; // イベントの登録処理(トランザクションは正直なくてもいいけど、lib/db側の記述がシンプルになるために使用) diff --git a/front/src/components/templates/event/register/EventRegisterTemplate.tsx b/front/src/components/templates/event/register/EventRegisterTemplate.tsx index 3495ebd..c23f91b 100644 --- a/front/src/components/templates/event/register/EventRegisterTemplate.tsx +++ b/front/src/components/templates/event/register/EventRegisterTemplate.tsx @@ -25,6 +25,7 @@ export default function EventRegisterTemplate({ userGroups }: Readonly ({ value: group.id.toString(), label: group.name