2
0
Просмотр исходного кода

✨ feat(submission): 优化提交记录页面用户信息展示

- 合并用户ID和昵称列,创建统一的"用户"列
- 在用户列中显示用户名和ID组合信息
- 移除表单中的昵称字段,减少冗余信息收集
- 优化用户信息展示布局,使用垂直排列的用户名和ID格式
- 当用户信息不存在时,优雅降级显示用户ID或占位符
yourname 6 месяцев назад
Родитель
Сommit
b70cec389d
1 измененных файлов с 11 добавлено и 33 удалено
  1. 11 33
      src/client/admin/pages/SubmissionRecordsPage.tsx

+ 11 - 33
src/client/admin/pages/SubmissionRecordsPage.tsx

@@ -50,7 +50,6 @@ export const SubmissionRecordsPage = () => {
     defaultValues: {
       classroomNo: null,
       userId: null,
-      nickname: null,
       score: null,
       code: null,
       trainingDate: null,
@@ -72,7 +71,6 @@ export const SubmissionRecordsPage = () => {
     defaultValues: {
       classroomNo: null,
       userId: null,
-      nickname: null,
       score: null,
       code: null,
       trainingDate: null,
@@ -130,7 +128,6 @@ export const SubmissionRecordsPage = () => {
     updateForm.reset({
       classroomNo: record.classroomNo,
       userId: record.userId,
-      nickname: record.nickname,
       score: record.score,
       code: record.code,
       trainingDate: record.trainingDate ? new Date(record.trainingDate) : null,
@@ -281,8 +278,7 @@ export const SubmissionRecordsPage = () => {
                 <TableRow>
                   <TableHead>ID</TableHead>
                   <TableHead>教室号</TableHead>
-                  <TableHead>用户ID</TableHead>
-                  <TableHead>昵称</TableHead>
+                  <TableHead>用户</TableHead>
                   <TableHead>成绩</TableHead>
                   <TableHead>代码</TableHead>
                   <TableHead>训练日期</TableHead>
@@ -297,8 +293,16 @@ export const SubmissionRecordsPage = () => {
                   <TableRow key={record.id}>
                     <TableCell className="font-medium">{record.id}</TableCell>
                     <TableCell>{record.classroomNo || '-'}</TableCell>
-                    <TableCell>{record.userId || '-'}</TableCell>
-                    <TableCell>{record.nickname || '-'}</TableCell>
+                    <TableCell>
+                      {record.user ? (
+                        <div className="flex flex-col">
+                          <span className="font-medium">{record.user.username}</span>
+                          <span className="text-xs text-muted-foreground">ID: {record.userId}</span>
+                        </div>
+                      ) : (
+                        record.userId || '-'
+                      )}
+                    </TableCell>
                     <TableCell>{record.score || '-'}</TableCell>
                     <TableCell>{record.code || '-'}</TableCell>
                     <TableCell>
@@ -390,19 +394,6 @@ export const SubmissionRecordsPage = () => {
                     )}
                   />
 
-                  <FormField
-                    control={createForm.control}
-                    name="nickname"
-                    render={({ field }) => (
-                      <FormItem>
-                        <FormLabel>昵称</FormLabel>
-                        <FormControl>
-                          <Input placeholder="请输入昵称" {...field} value={field.value || ''} />
-                        </FormControl>
-                        <FormMessage />
-                      </FormItem>
-                    )}
-                  />
 
                   <FormField
                     control={createForm.control}
@@ -667,19 +658,6 @@ export const SubmissionRecordsPage = () => {
                     )}
                   />
 
-                  <FormField
-                    control={updateForm.control}
-                    name="nickname"
-                    render={({ field }) => (
-                      <FormItem>
-                        <FormLabel>昵称</FormLabel>
-                        <FormControl>
-                          <Input placeholder="请输入昵称" {...field} value={field.value || ''} />
-                        </FormControl>
-                        <FormMessage />
-                      </FormItem>
-                    )}
-                  />
 
                   <FormField
                     control={updateForm.control}