Skip to content

code2docs-ai/itihub_staffjoy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

staffjoy

Staffjoy 微服务系统总结

概述

Staffjoy 是一个基于微服务架构的企业级人力资源管理系统,主要提供账户管理、公司组织、排班调度、消息通知等功能。系统采用Spring Boot和Spring Cloud技术栈构建,包含多个独立部署的微服务模块,通过Feign客户端进行服务间通信。整体架构遵循分层设计原则,各模块职责明确,具备良好的扩展性和可维护性。

系统主要特点包括:

  • 模块化设计,服务边界清晰
  • 统一的认证授权机制
  • 标准化的API响应格式
  • 完善的异常处理和监控
  • 支持多环境配置
  • 异步处理提升系统吞吐量

主要业务场景

1. 用户账户管理

  • 账户全生命周期:注册、激活、信息维护、密码重置、账户删除
  • 认证与安全:基于JWT的身份验证,密码哈希存储,敏感信息隔离
  • 权限控制:通过角色和字段实现细粒度权限管理
  • 第三方集成:支持Intercom用户数据同步

2. 公司组织架构

  • 公司基础管理:创建、查询、更新及状态管理
  • 团队管理:团队创建与时区配置
  • 职位管理:岗位设置与分类
  • 人员管理:员工入职、团队分配、权限控制

3. 排班调度系统

  • 班次管理:创建、发布、更新、删除班次
  • 批量操作:支持班次的批量发布和修改
  • 日历集成:生成iCalendar格式排班数据
  • 提醒通知:班次变更自动触发提醒

4. 消息通知服务

  • 邮件通知:账户激活、密码重置、入职欢迎等邮件模板
  • 短信通知:验证码、班次提醒等短信发送
  • 机器人服务:自动化处理入职流程、班次变更提醒
  • 异步处理:通过线程池提高通知发送效率

5. 系统基础设施

  • API网关:Faraday服务提供请求转发、负载均衡和安全控制
  • 统一认证:whoami服务处理用户身份识别
  • 监控告警:集成Sentry实现错误监控和上报
  • 配置管理:通过Common Lib提供多环境支持

6. 前端交互

  • Web应用:提供用户注册、登录、密码重置等界面
  • 静态页面:关于页、错误页等静态内容展示
  • 动态页面:基于工厂模式构建业务页面
  • 资源管理:图像加载和Base64编码转换

7. 服务间通信

  • Feign客户端:标准化服务调用接口
  • DTO传输:统一的数据传输对象定义
  • 服务发现:通过常量维护服务名称映射
  • 异常处理:统一的业务异常和错误码

该系统通过模块化设计和标准化接口,为企业提供了完整的账户管理、组织架构和排班调度解决方案,同时具备良好的扩展性和可靠性。各微服务既可独立部署又可协同工作,满足不同规模企业的需求。

快速导航

👨‍💻 开发者

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published