From 487e9eb8ead27bd1c26fd060b441512a5d75257a Mon Sep 17 00:00:00 2001 From: PhuocNTB Date: Tue, 14 Jul 2026 07:39:18 +0700 Subject: [PATCH] fix ui --- {block_.gitea => .gitea}/workflows/deploy.yml | 0 management/src/components/AttendancePanel.tsx | 34 ++++++++-- management/src/components/ClassWorkspace.tsx | 2 +- management/src/components/ViolationsPanel.tsx | 21 ++++++- management/src/index.css | 34 ++++++++++ server/internal/db/db.go | 1 + .../internal/handlers/handlers_attendance.go | 58 +++++++++++++++--- server/internal/models/models.go | 12 ++++ server/server_test.exe | Bin 0 -> 20528640 bytes 9 files changed, 145 insertions(+), 17 deletions(-) rename {block_.gitea => .gitea}/workflows/deploy.yml (100%) create mode 100644 server/server_test.exe diff --git a/block_.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml similarity index 100% rename from block_.gitea/workflows/deploy.yml rename to .gitea/workflows/deploy.yml diff --git a/management/src/components/AttendancePanel.tsx b/management/src/components/AttendancePanel.tsx index b42c763..cbc3cd8 100644 --- a/management/src/components/AttendancePanel.tsx +++ b/management/src/components/AttendancePanel.tsx @@ -16,6 +16,7 @@ import { interface AttendancePanelProps { classId: number; + onClose?: () => void; } function formatQldtTime(iso?: string): string { @@ -28,7 +29,7 @@ function formatQldtTime(iso?: string): string { }); } -export const AttendancePanel: React.FC = ({ classId }) => { +export const AttendancePanel: React.FC = ({ classId, onClose }) => { const today = new Date().toISOString().slice(0, 10); const [date, setDate] = useState(today); const [period, setPeriod] = useState(1); @@ -231,7 +232,25 @@ export const AttendancePanel: React.FC = ({ classId }) => const qldtDirty = Boolean(shiftInfo?.qldtDirty); return ( -
+
+
+
+
+

+ 📋 Quản lý điểm danh ca học +

+
+ +
+ +