From 7ad9c3c93f0cc103347ae2e2429e0122fb512e24 Mon Sep 17 00:00:00 2001
From: lrj <owen.stl@gmail.com>
Date: 星期三, 01 十月 2025 21:26:12 +0800
Subject: [PATCH] feat: 修复员工管理功能并优化UI

---
 web/src/views/employee-list.vue |   60 +++++++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 47 insertions(+), 13 deletions(-)

diff --git a/web/src/views/employee/index.vue b/web/src/views/employee-list.vue
similarity index 80%
rename from web/src/views/employee/index.vue
rename to web/src/views/employee-list.vue
index fcd0387..61201ff 100644
--- a/web/src/views/employee/index.vue
+++ b/web/src/views/employee-list.vue
@@ -35,11 +35,25 @@
             {{ formatDateTime(row.createTime) }}
           </template>
         </el-table-column>
-        <el-table-column label="鎿嶄綔" width="120" fixed="right">
+        <el-table-column label="鎿嶄綔" width="120" fixed="right" align="center">
           <template #default="{ row }">
             <div class="table-actions">
-              <el-button type="warning" size="small" @click="handleEdit(row)" :icon="Edit" circle title="缂栬緫"></el-button>
-              <el-button type="danger" size="small" @click="handleDelete(row)" :icon="Delete" circle title="鍒犻櫎"></el-button>
+              <el-button 
+                text 
+                :icon="Edit" 
+                size="small" 
+                @click="handleEdit(row)"
+                class="action-btn edit-btn"
+                title="缂栬緫"
+              />
+              <el-button 
+                text 
+                :icon="Delete" 
+                size="small" 
+                @click="handleDelete(row)"
+                class="action-btn delete-btn"
+                title="鍒犻櫎"
+              />
             </div>
           </template>
         </el-table-column>
@@ -65,7 +79,7 @@
 import { ElMessage, ElMessageBox } from 'element-plus'
 import { Search, Plus, Edit, Delete } from '@element-plus/icons-vue'
 import { employeeApi, type Employee } from '@/api/employee'
-import EmployeeForm from './EmployeeForm.vue'
+import EmployeeForm from './employee-detail.vue'
 
 const loading = ref(false)
 const formVisible = ref(false)
@@ -82,10 +96,10 @@
 // 鑾峰彇瑙掕壊鏍囩绫诲瀷
 const getRoleType = (roleId: string) => {
   const typeMap: Record<string, string> = {
-    'ADMIN': 'danger',
-    'MANAGER': 'warning',
-    'STAFF': 'primary',
-    'REVIEWER': 'success'
+    'SUPER_ADMIN': 'danger',
+    'AUDITOR': 'warning',
+    'JUDGE_MANAGER': 'success',
+    'PLAYER': 'primary'
   }
   return typeMap[roleId] || 'info'
 }
@@ -93,10 +107,10 @@
 // 鑾峰彇瑙掕壊鏂囨湰
 const getRoleText = (roleId: string) => {
   const textMap: Record<string, string> = {
-    'ADMIN': '绠$悊鍛�',
-    'MANAGER': '缁忕悊',
-    'STAFF': '宸ヤ綔浜哄憳',
-    'REVIEWER': '瀹℃牳鍛�'
+    'SUPER_ADMIN': '瓒呯骇绠$悊鍛�',
+    'AUDITOR': '骞冲彴宸ヤ綔浜哄憳',
+    'JUDGE_MANAGER': '璇勫',
+    'PLAYER': '鍙傝禌浜哄憳'
   }
   return textMap[roleId] || roleId
 }
@@ -202,7 +216,27 @@
   .table-actions {
     display: flex;
     gap: 8px;
-    flex-wrap: wrap;
+    justify-content: center;
+    align-items: center;
+    flex-wrap: nowrap; // 纭繚涓嶆崲琛�
+    
+    .action-btn {
+      &.edit-btn {
+        color: #409eff;
+        
+        &:hover {
+          color: #66b1ff;
+        }
+      }
+      
+      &.delete-btn {
+        color: #f56c6c;
+        
+        &:hover {
+          color: #f78989;
+        }
+      }
+    }
   }
   
   .pagination {

--
Gitblit v1.8.0