提交1 bmad搭建与项目启动 - ok

This commit is contained in:
2025-10-17 17:24:56 +08:00
commit ec58562661
686 changed files with 149750 additions and 0 deletions

View File

@@ -0,0 +1,325 @@
# 🏢 企业注册功能说明
## ✨ 功能概述
用户注册时需要选择所属企业系统已预置5家企业供选择。用户注册后将自动关联到所选企业。
---
## 🏭 可选企业列表
### **1. 绿野农业科技有限公司**
- 企业代码LYNY001
- 企业类型:种植企业
- 地址:江苏省南京市江宁区农业科技园区
- 联系人:李经理
- 电话025-12345678
- 状态:✅ 运营中
### **2. 丰收农场管理集团**
- 企业代码FSNC002
- 企业类型:综合农场
- 地址:山东省济南市章丘区现代农业示范区
- 联系人:王总
- 电话0531-87654321
- 状态:✅ 运营中
### **3. 智慧农业示范基地**
- 企业代码ZHNY003
- 企业类型:示范基地
- 地址:浙江省杭州市萧山区智慧农业园
- 联系人:陈主任
- 电话0571-23456789
- 状态:✅ 运营中
### **4. 现代农业合作社**
- 企业代码XDNY004
- 企业类型:合作社
- 地址:河南省郑州市中牟县农业园区
- 联系人:赵理事长
- 电话0371-34567890
- 状态:✅ 运营中
### **5. 优质粮食生产基地**
- 企业代码YZLS005
- 企业类型:粮食基地
- 地址:黑龙江省哈尔滨市五常市
- 联系人:孙场长
- 电话0451-45678901
- 状态:✅ 运营中
---
## 📝 注册流程
### **步骤1填写基本信息**
- 用户名(必填)
- 真实姓名(必填)
- 手机号(必填)
### **步骤2选择所属企业** 🆕
- 从下拉列表中选择您所在的企业
- 显示企业名称、代码和类型
- 必须选择企业才能继续注册
### **步骤3获取验证码**
- 点击"发送验证码"按钮
- 输入收到的短信验证码测试环境固定为123456
### **步骤4设置密码**
- 输入密码至少6位
- 确认密码
### **步骤5完成注册**
- 输入图形验证码
- 点击"立即注册"
- 注册成功后自动登录
---
## 🎯 企业关联说明
### **用户注册后**
- ✅ 自动绑定到所选企业
- ✅ 企业名称显示在用户信息中
- ✅ 用户菜单中显示所属企业
- ✅ 个人中心显示企业信息
### **企业数据隔离**
- 同一企业的用户可以看到企业内的数据
- 不同企业的用户数据相互隔离
- 管理员可以管理本企业的所有用户
### **默认权限**
新注册用户默认权限:
- `machinery:view` - 查看农机信息
- `field:view` - 查看地块信息
- `operation:view` - 查看农事操作
- 角色普通用户user
- 部门:待分配
---
## 🔒 企业验证机制
### **注册验证**
1. ✅ 检查企业ID是否存在
2. ✅ 检查企业状态是否为"active"
3. ✅ 验证企业是否可用
4. ✅ 绑定用户到企业
### **安全机制**
- 只有状态为"active"的企业可以注册新用户
- 企业停用后无法注册新用户
- 已注册用户不受企业停用影响
---
## 📊 用户信息展示
### **登录后显示**
**导航栏用户菜单**
```
┌─────────────────────────────┐
│ 👤 张三 │
│ 普通用户 │
├─────────────────────────────┤
│ 用户名: zhangsan │
│ 手机号: 13900139000 │
│ 所属企业: 绿野农业科技有限公司 │ ← 新增
│ 部门: 待分配 │
│ 上次登录: 2024-10-15 14:30 │
├─────────────────────────────┤
│ 👤 个人中心 │
│ 🚪 退出登录 │
└─────────────────────────────┘
```
---
## 🎨 注册界面
### **企业选择下拉框**
```
┌────────────────────────────────────┐
│ 🏢 请选择所属企业 ▼ │
├────────────────────────────────────┤
│ 绿野农业科技有限公司 │
│ LYNY001 · 种植企业 │
├────────────────────────────────────┤
│ 丰收农场管理集团 │
│ FSNC002 · 综合农场 │
├────────────────────────────────────┤
│ 智慧农业示范基地 │
│ ZHNY003 · 示范基地 │
├────────────────────────────────────┤
│ 现代农业合作社 │
│ XDNY004 · 合作社 │
├────────────────────────────────────┤
│ 优质粮食生产基地 │
│ YZLS005 · 粮食基地 │
└────────────────────────────────────┘
```
### **显示信息**
- 企业名称(主要显示)
- 企业代码 · 企业类型(辅助信息)
- 只显示状态为"active"的企业
---
## 💡 使用示例
### **示例1新用户注册**
```typescript
// 用户填写信息
{
username: 'wangwu',
realName: '王五',
phone: '13900139003',
enterpriseId: 'ent-2', // 选择"丰收农场管理集团"
password: 'wangwu123',
code: '123456',
captcha: 'ABCD'
}
// 系统处理
1. 验证企业存在且可用
2. 创建用户账号
3. 关联企业信息
- enterpriseId: 'ent-2'
- enterpriseName: '丰收农场管理集团'
4. 自动登录系统
```
### **示例2查看用户信息**
```typescript
// 登录后的用户信息
{
id: 'user-12345',
username: 'wangwu',
realName: '王五',
phone: '13900139003',
role: 'user',
enterpriseId: 'ent-2',
enterpriseName: '丰收农场管理集团',
department: '待分配',
permissions: ['machinery:view', 'field:view', 'operation:view']
}
```
---
## 🔧 技术实现
### **数据结构**
**Enterprise类型**
```typescript
interface Enterprise {
id: string; // 企业ID
name: string; // 企业名称
code: string; // 企业代码
type: string; // 企业类型
status: 'active' | 'inactive'; // 状态
address?: string; // 地址
contact?: string; // 联系人
phone?: string; // 电话
createdAt: string; // 创建时间
}
```
**User类型更新**
```typescript
interface User {
// ... 原有字段
enterpriseId: string; // 企业ID新增
enterpriseName: string; // 企业名称(新增)
}
```
### **核心函数**
**获取企业列表**
```typescript
getAllEnterprises(): Enterprise[]
// 返回所有状态为"active"的企业
```
**根据ID获取企业**
```typescript
getEnterpriseById(id: string): Enterprise | undefined
// 根据企业ID获取企业详情
```
**注册验证**
```typescript
registerUser(form: RegisterForm): Promise<Result>
// 验证企业ID
// 检查企业状态
// 创建用户并关联企业
```
---
## ⚠️ 注意事项
### **必须选择企业**
- 注册时必须选择所属企业
- 不选择企业无法完成注册
- 系统会提示"请选择所属企业"
### **企业验证**
- 只能选择状态为"active"的企业
- 企业停用后不会出现在列表中
- 已注册用户不受企业状态变化影响
### **测试账号**
测试账号已关联到"绿野农业科技有限公司"
- admin系统管理员
- zhangsan部门经理
---
## 📈 未来扩展
### **可能的扩展功能**
- [ ] 企业管理模块(新增、编辑、停用企业)
- [ ] 企业审核机制(新企业需要审核)
- [ ] 企业层级结构(总部、分公司)
- [ ] 跨企业协作(企业间数据共享)
- [ ] 企业统计报表(用户数、设备数)
- [ ] 企业自定义配置Logo、主题色
- [ ] 企业邀请码(通过邀请码加入企业)
- [ ] 企业切换功能(用户可属于多个企业)
---
## 🆘 常见问题
**Q: 如果没有我的企业怎么办?**
A: 当前版本暂不支持自助创建企业,请联系系统管理员添加企业。
**Q: 可以更换企业吗?**
A: 当前版本不支持用户自行更换企业,需要联系管理员处理。
**Q: 企业信息可以修改吗?**
A: 企业信息由系统管理员管理,普通用户无权修改。
**Q: 不同企业的数据会互相看到吗?**
A: 不会,系统实现了企业级数据隔离。
---
## 📞 技术支持
如有问题,请联系系统管理员或查看:
- `/AUTH_SYSTEM_GUIDE.md` - 认证系统完整指南
- `/AUTH_FEATURES.md` - 功能特性清单
---
**更新时间**: 2024-10-15
**版本**: v1.1.0
**新功能**: ✅ 企业选择功能