生产管理系统前端 - 瓦力0.73原型图提交

This commit is contained in:
2025-10-28 19:51:17 +08:00
parent 58f5ca7f22
commit e3829d2fcc
154 changed files with 24913 additions and 9377 deletions

View File

@@ -0,0 +1,463 @@
================================
员工管理 - 审核状态功能
================================
✅ 功能已完成!
================================
核心功能
================================
【审核状态】
🟡 待审核pending
- 新添加的员工默认状态
- 显示审核操作按钮
🟢 审核通过approved
- 审核通过的员工
- 可正常使用系统
🔴 已驳回rejected
- 审核未通过
- 记录驳回原因
【审核操作】
✅ 审核通过
- 绿色勾选图标
- 可选填审核意见
❌ 驳回
- 红色叉号图标
- 必填驳回原因
================================
界面变化
================================
【统计卡片】从3列改为4列
┌─────────┬─────────┬─────────┬─────────┐
│ 总员工数 │ 待审核 │ 审核通过 │ 已驳回 │
├─────────┼─────────┼─────────┼─────────┤
│ 3 │ 1 │ 1 │ 1 │
│ (蓝色) │ (黄色) │ (绿色) │ (红色) │
└─────────┴─────────┴─────────┴─────────┘
【筛选器】新增审核状态筛选
[搜索框] [账号状态▼] [审核状态▼]
新增的
审核状态选项:
• 全部审核
• 待审核
• 审核通过
• 已驳回
【表格列】从7列改为8列
| 姓名 | 用户名 | 电话 | 部门 | 角色 | 账号状态 | 审核状态 | 操作 |
新增的
【操作按钮】待审核员工多2个按钮
待审核员工:✅ ❌ 👁️ ✏️ 🔒 👤 🗑️
↑ ↑
新增的
已审核员工:👁️ ✏️ 🔒 👤 🗑️
【详情对话框】工作信息增加审核信息
部门:技术部
账号状态:[正常]
审核状态:[审核通过] ← 新增
审核意见:符合要求 ← 新增(如有)
审核人:管理员 ← 新增(如有)
审核时间2024... ← 新增(如有)
================================
快速测试
================================
【测试1】查看统计
----------------------------------
1. 访问:用户管理 → 员工管理
2. 查看统计卡片
预期结果:
✅ 显示4个统计卡片
✅ 待审核1人李四
✅ 审核通过1人张三
✅ 已驳回1人王五
【测试2】添加员工
----------------------------------
1. 点击"添加员工"
2. 填写信息:
• 用户名test001
• 姓名:测试员工
• 手机号13800138888
• 部门:技术部
• 角色:操作员
3. 点击"保存"
预期结果:
✅ 保存成功
✅ 审核状态显示"待审核"
✅ 操作列显示审核按钮(✅❌)
✅ "待审核"统计+1
【测试3】审核通过
----------------------------------
1. 找到待审核员工(李四)
2. 点击 ✅ 按钮
3. 查看对话框内容
预期结果:
✅ 显示员工信息
✅ 有审核意见输入框(可选)
✅ 有"确认通过"按钮
继续操作:
1. 填写审核意见:"符合要求"
2. 点击"确认通过"
预期结果:
✅ 提示"审核通过"
✅ 状态变为"审核通过"
✅ 不再显示审核按钮
✅ "待审核"-1"审核通过"+1
【测试4】驳回员工
----------------------------------
1. 添加新员工(测试用)
2. 点击 ❌ 按钮
3. 不填驳回原因
4. 点击"确认驳回"
预期结果:
✅ 提示"请填写驳回原因"
✅ 不允许提交
继续操作:
1. 填写驳回原因:"资质不符"
2. 点击"确认驳回"
预期结果:
✅ 提示"已驳回"
✅ 状态变为"已驳回"
✅ 不再显示审核按钮
✅ "待审核"-1"已驳回"+1
【测试5】筛选功能
----------------------------------
操作1
1. 选择"审核状态" = "待审核"
预期结果:
✅ 只显示待审核员工
操作2
1. 选择"审核状态" = "审核通过"
预期结果:
✅ 只显示审核通过的员工
操作3
1. 选择"审核状态" = "已驳回"
预期结果:
✅ 只显示已驳回的员工
操作4组合筛选
1. 选择"账号状态" = "正常"
2. 选择"审核状态" = "待审核"
预期结果:
✅ 只显示正常且待审核的员工
【测试6】查看详情
----------------------------------
测试待审核员工:
1. 找到待审核员工
2. 点击 👁️ 查看详情
3. 查看"工作信息"部分
预期结果:
✅ 显示"待审核"徽章
✅ 不显示审核意见
✅ 不显示审核人
✅ 不显示审核时间
测试审核通过员工:
1. 找到审核通过员工(张三)
2. 点击 👁️ 查看详情
3. 查看"工作信息"部分
预期结果:
✅ 显示"审核通过"徽章
✅ 显示审核人:管理员
✅ 显示审核时间
✅ 显示审核意见(如有)
测试已驳回员工:
1. 找到已驳回员工(王五)
2. 点击 👁️ 查看详情
3. 查看"工作信息"部分
预期结果:
✅ 显示"已驳回"徽章
✅ 显示驳回原因:资质不符合要求
✅ 显示审核人:管理员
✅ 显示审核时间
【测试7】暗色模式
----------------------------------
1. 切换到暗色模式
2. 查看所有界面
预期结果:
✅ 徽章颜色清晰可见
✅ 按钮颜色正确
✅ 对话框样式正常
✅ 文字可读性好
================================
示例数据
================================
【员工1】张三 - 审核通过
username: zhangsan
name: 张三
phone: 13800138001
auditStatus: approved
auditTime: 2024-10-01T09:00:00
auditor: 管理员
【员工2】李四 - 待审核
username: lisi
name: 李四
phone: 13900139002
auditStatus: pending
【员工3】王五 - 已驳回
username: wangwu
name: 王五
phone: 13700137003
auditStatus: rejected
auditReason: 资质不符合要求
auditTime: 2024-10-10T16:00:00
auditor: 管理员
================================
审核流程
================================
添加员工
[待审核] ← 默认状态
├─→ 审核通过 → [审核通过]
│ ↓
│ 正常使用
└─→ 驳回 → [已驳回]
重新处理
================================
审核对话框
================================
【审核通过对话框】
┌────────────────────────┐
│ 审核通过 │
├────────────────────────┤
│ 确认审核通过该员工吗? │
│ │
│ 员工姓名:李四 │
│ 用户名lisi │
│ 手机号13900139002 │
│ │
│ 审核意见 │
│ ┌────────────────────┐ │
│ │ 选填:审核意见... │ │
│ │ │ │
│ └────────────────────┘ │
│ │
│ [取消] [确认通过] │
└────────────────────────┘
【驳回对话框】
┌────────────────────────┐
│ 驳回 │
├────────────────────────┤
│ 请填写驳回原因 │
│ │
│ 员工姓名:李四 │
│ 用户名lisi │
│ 手机号13900139002 │
│ │
│ 驳回原因 * │
│ ┌────────────────────┐ │
│ │ 请输入驳回原因... │ │
│ │ │ │
│ │ │ │
│ └────────────────────┘ │
│ │
│ [取消] [确认驳回] │
└────────────────────────┘
================================
数据兼容性
================================
【旧数据处理】
旧员工数据没有审核字段,
需要手动更新。
【更新脚本】
在浏览器控制台执行:
const employees = JSON.parse(
localStorage.getItem('smart_agriculture_employees') || '[]'
);
const updated = employees.map(emp => ({
...emp,
auditStatus: emp.auditStatus || 'approved'
}));
localStorage.setItem(
'smart_agriculture_employees',
JSON.stringify(updated)
);
location.reload();
================================
注意事项
================================
【审核通过】
✅ 审核意见:可选填
✅ 记录审核人和时间
✅ 操作后不可撤销
【驳回】
✅ 驳回原因:必填
✅ 记录审核人和时间
✅ 操作后不可撤销
【权限】
当前所有登录用户都可以审核
建议后续限制为管理员
【审核记录】
审核信息保存在员工对象中
包括:状态、原因、时间、审核人
================================
常见问题
================================
Q: 审核按钮不显示?
A: 只有"待审核"状态才显示,
已审核的员工不显示。
Q: 驳回原因必填吗?
A: 是的,驳回时必须填写原因,
审核通过时意见可选填。
Q: 可以撤销审核吗?
A: 当前版本不支持撤销,
审核后状态不可修改。
Q: 统计数据不对?
A: 检查是否有筛选条件,
清除筛选后查看。
Q: 旧员工没有审核状态?
A: 运行数据更新脚本,
将旧数据默认设为"审核通过"。
================================
访问路径
================================
中心配置管理系统
└─ 用户管理
└─ 员工管理
├─ 统计卡片4列
├─ 筛选器(含审核状态)
├─ 员工列表
│ ├─ 待审核员工(有审核按钮)
│ └─ 已审核员工(无审核按钮)
└─ 审核对话框
├─ 审核通过
└─ 驳回
================================
详细文档
================================
完整指南:
/components/config/EMPLOYEE_AUDIT_STATUS_GUIDE.md
字段优化说明:
/EMPLOYEE_MANAGEMENT_FIELD_UPDATE.md
快速参考:
/员工管理字段优化.txt
类型定义:
/types/user-management.ts
================================
修改文件
================================
类型定义:
• /types/user-management.ts
- 新增 AuditStatusType 类型
- Employee 接口新增审核字段
组件:
• /components/config/EmployeeManagement.tsx
- 添加审核状态管理
- 添加审核操作功能
- 添加审核对话框
- 更新统计和筛选
- 更新表格和详情
================================
功能清单
================================
已实现:
✅ 三种审核状态
✅ 审核状态徽章
✅ 审核操作按钮
✅ 审核通过对话框
✅ 驳回对话框(必填原因)
✅ 审核信息记录
✅ 4列统计卡片
✅ 审核状态筛选
✅ 表格显示审核状态
✅ 详情显示审核信息
✅ 暗色模式适配
✅ 新员工默认待审核
建议优化:
□ 审核权限控制
□ 审核历史记录
□ 审核提醒
□ 批量审核
□ 审核统计报表
================================
更新记录
================================
更新时间2024-10-27
功能状态:✅ 开发完成
测试状态:⏳ 待测试
影响范围:员工管理
向后兼容:✅ 兼容(需更新旧数据)
================================