Files
smart-crop-ui/src/ENTERPRISE_REGISTRATION.md

8.8 KiB
Raw Blame History

🏢 企业注册功能说明

功能概述

用户注册时需要选择所属企业系统已预置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新用户注册

// 用户填写信息
{
  username: 'wangwu',
  realName: '王五',
  phone: '13900139003',
  enterpriseId: 'ent-2',  // 选择"丰收农场管理集团"
  password: 'wangwu123',
  code: '123456',
  captcha: 'ABCD'
}

// 系统处理
1. 验证企业存在且可用 
2. 创建用户账号 
3. 关联企业信息 
   - enterpriseId: 'ent-2'
   - enterpriseName: '丰收农场管理集团'
4. 自动登录系统 

示例2查看用户信息

// 登录后的用户信息
{
  id: 'user-12345',
  username: 'wangwu',
  realName: '王五',
  phone: '13900139003',
  role: 'user',
  enterpriseId: 'ent-2',
  enterpriseName: '丰收农场管理集团',
  department: '待分配',
  permissions: ['machinery:view', 'field:view', 'operation:view']
}

🔧 技术实现

数据结构

Enterprise类型

interface Enterprise {
  id: string;              // 企业ID
  name: string;            // 企业名称
  code: string;            // 企业代码
  type: string;            // 企业类型
  status: 'active' | 'inactive';  // 状态
  address?: string;        // 地址
  contact?: string;        // 联系人
  phone?: string;          // 电话
  createdAt: string;       // 创建时间
}

User类型更新

interface User {
  // ... 原有字段
  enterpriseId: string;       // 企业ID新增
  enterpriseName: string;     // 企业名称(新增)
}

核心函数

获取企业列表

getAllEnterprises(): Enterprise[]
// 返回所有状态为"active"的企业

根据ID获取企业

getEnterpriseById(id: string): Enterprise | undefined
// 根据企业ID获取企业详情

注册验证

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
新功能: 企业选择功能