From bf864de805b7dfae5ce79d944997f01ea1274f38 Mon Sep 17 00:00:00 2001 From: xianyi Date: Tue, 16 Dec 2025 10:12:28 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=86=E7=A6=BB=E5=B7=A6=E4=BE=A7=E5=BF=AB?= =?UTF-8?q?=E9=80=9F=E6=93=8D=E4=BD=9C=E9=9D=A2=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modals/MealRegistrationModal.tsx | 64 +++++++++++ src/components/modals/NoteModal.tsx | 35 ++++++ src/components/modals/QuickActionModal.tsx | 106 +++++------------- src/components/modals/VipAuthModal.tsx | 38 +++++++ 4 files changed, 162 insertions(+), 81 deletions(-) create mode 100644 src/components/modals/MealRegistrationModal.tsx create mode 100644 src/components/modals/NoteModal.tsx create mode 100644 src/components/modals/VipAuthModal.tsx diff --git a/src/components/modals/MealRegistrationModal.tsx b/src/components/modals/MealRegistrationModal.tsx new file mode 100644 index 0000000..fde8b0c --- /dev/null +++ b/src/components/modals/MealRegistrationModal.tsx @@ -0,0 +1,64 @@ +import type { ExamClient } from '../../data/mockData'; +import { EXAM_CLIENTS } from '../../data/mockData'; +import { InfoCard } from '../ui'; + +interface MealRegistrationModalProps { + onClose: () => void; + totalExamCount: number; + mealCount: number; + notMealCount: number; + mealDoneIds: string[]; + onMealDone: (id: string) => void; +} + +export const MealRegistrationModal = ({ + onClose, + totalExamCount, + mealCount, + notMealCount, + mealDoneIds, + onMealDone, +}: MealRegistrationModalProps) => { + return ( +
+
+
+
用餐登记
+ +
+
+
+
+ + + +
+
选择已用餐客户进行登记:
+
+ {EXAM_CLIENTS.map((c: ExamClient) => { + const checked = mealDoneIds.includes(c.id); + return ( + + ); + })} +
+
+
+
+
+ ); +}; + diff --git a/src/components/modals/NoteModal.tsx b/src/components/modals/NoteModal.tsx new file mode 100644 index 0000000..55bbb43 --- /dev/null +++ b/src/components/modals/NoteModal.tsx @@ -0,0 +1,35 @@ +interface NoteModalProps { + noteText: string; + onNoteChange: (v: string) => void; + onClose: () => void; +} + +export const NoteModal = ({ noteText, onNoteChange, onClose }: NoteModalProps) => { + return ( +
+
+
+
备注窗
+ +
+
+
+
体检客户服务备注(仅内部可见)
+