From b7fd1eadbb5fdccfd9b248e8a60e41b56826977f Mon Sep 17 00:00:00 2001 From: menxipeng Date: Sat, 25 Oct 2025 15:08:45 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/pages/WorkersPage.tsx | 81 ++-------------------------- 1 file changed, 5 insertions(+), 76 deletions(-) diff --git a/src/components/pages/WorkersPage.tsx b/src/components/pages/WorkersPage.tsx index 82b0a40..d9b3aa9 100644 --- a/src/components/pages/WorkersPage.tsx +++ b/src/components/pages/WorkersPage.tsx @@ -1,4 +1,4 @@ -import React, { useState, useEffect } from "react" +import { useState, useEffect } from "react" import { Button } from "../ui/button" import { Input } from "../ui/input" import { Card, CardContent, CardHeader, CardTitle } from "../ui/card" @@ -14,7 +14,6 @@ import { } from "../ui/dialog" import { Label } from "../ui/label" import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "../ui/select" -import { Textarea } from "../ui/textarea" import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from "../ui/table" import { Users, @@ -28,7 +27,6 @@ import { Edit, Trash2, Phone, - Calendar, Award, Wrench, CheckCircle, @@ -36,7 +34,6 @@ import { import { apiPost, apiGet, apiPut, apiDelete } from "../../lib/services/api" import { getProvinces } from '../../lib/services/region' import { getDealers } from '../../lib/services/dealer' -import { getSkillLevels } from '../../lib/services/skill' import { Province } from '../../lib/types/region' import { Dealer } from '../../lib/types/dealer' import { SkillLevel, SKILL_LEVEL_MAP } from '../../lib/types/skill' @@ -45,10 +42,8 @@ export default function WorkersPage() { const [workers, setWorkers] = useState([]) const [provinces, setProvinces] = useState([]) const [dealers, setDealers] = useState([]) - const [skillLevels, setSkillLevels] = useState([]) const [searchTerm, setSearchTerm] = useState("") const [provinceFilter, setProvinceFilter] = useState("all") - const [skillFilter, setSkillFilter] = useState("all") const [isAddDialogOpen, setIsAddDialogOpen] = useState(false) const [isEditDialogOpen, setIsEditDialogOpen] = useState(false) const [isDeleteDialogOpen, setIsDeleteDialogOpen] = useState(false) @@ -62,7 +57,6 @@ export default function WorkersPage() { specialties: "", jobNum: "", }) - const [editingWorker, setEditingWorker] = useState(null) const [editWorker, setEditWorker] = useState({ id: "", name: "", @@ -129,7 +123,7 @@ export default function WorkersPage() { workerId: worker.jobNum || worker.workersId || `W${worker.id}`, phone: worker.phone, dealerId: worker.distributorUserId, - dealerName: getDealerName(worker.distributorUserId), + dealerName: worker.distributorUser || '未知经销商', province: worker.province, skillLevel: mapAPISkillLevelToDisplay(worker.skillLevel), joinDate: worker.createdAt, @@ -157,12 +151,6 @@ export default function WorkersPage() { } } - // 根据经销商ID获取经销商名称 - const getDealerName = (dealerId: string) => { - const dealer = dealers.find(d => d.userId === dealerId) - return dealer ? dealer.userName : '未知经销商' - } - // 将API技能等级映射到显示格式 const mapAPISkillLevelToDisplay = (apiSkillLevel: string) => { return SKILL_LEVEL_MAP[apiSkillLevel as SkillLevel] || apiSkillLevel @@ -218,24 +206,6 @@ export default function WorkersPage() { loadDealers() }, []) - // 加载技能等级数据 - useEffect(() => { - const loadSkillLevels = async () => { - try { - const response = await getSkillLevels() - if (response.code === 200) { - setSkillLevels(response.data) - } else { - console.error('获取技能等级数据失败:', response.msg) - } - } catch (err) { - console.error('Error loading skill levels:', err) - } - } - - loadSkillLevels() - }, []) - // 组件挂载时获取数据 useEffect(() => { fetchWorkersList() @@ -264,8 +234,7 @@ export default function WorkersPage() { worker.dealerName.toLowerCase().includes(searchTerm.toLowerCase()) const matchesProvince = provinceFilter === "all" || worker.province === provinceFilter || provinces.find(p => p.code === provinceFilter)?.name === worker.province - const matchesSkill = skillFilter === "all" || worker.skillLevel === skillFilter - return matchesSearch && matchesProvince && matchesSkill + return matchesSearch && matchesProvince }) const handleAddWorker = async () => { @@ -315,8 +284,6 @@ export default function WorkersPage() { // 处理编辑工人 const handleEditWorker = (worker: any) => { - setEditingWorker(worker) - // 尝试根据省份名称查找省份代码 let provinceValue = worker.province const provinceByName = provinces.find(p => p.name === worker.province) @@ -376,7 +343,6 @@ export default function WorkersPage() { fetchWorkersList(currentPage, pageSize) setEditWorker({ id: "", name: "", phone: "", dealerId: "", province: "", skillLevel: "", specialties: "", jobNum: "", job: "1" }) - setEditingWorker(null) setIsEditDialogOpen(false) } else { console.error('编辑工人失败:', result) @@ -527,32 +493,6 @@ export default function WorkersPage() { } } - const getStatusBadge = (status: string) => { - switch (status) { - case "active": - return 在职 - case "inactive": - return 离职 - case "suspended": - return 停职 - default: - return 未知 - } - } - - const getSkillBadge = (skill: string) => { - switch (skill) { - case "高级技师": - return 高级技师 - case "中级技师": - return 中级技师 - case "初级技师": - return 初级技师 - default: - return {skill} - } - } - const getWorkOrderStatusBadge = (status: string) => { switch (status) { case "pending-accept": @@ -898,23 +838,12 @@ export default function WorkersPage() { ))} -