项目介绍:物流中台主要解决步步高旗下云通物流公司各个系统之间数据不同步,管理困难问题
1.主要负责公共组件的开发
2. 主要技术Spring Boot,Spring Cloud,XXL-JOB,MyBatis Plus,Druid,Nacos,Spring Cloud Gateway,Logback,rocketmq
3.主要负责模块
● 注册中心服务
● 网关服务实现
● 统一用户管理服务:主要包含用户管理,资源管理,角色管理,岗位管理,部门管理,子系统管理,门户管理
●认证服务:主要做登录验证,图片验证获取,退出登录等简单操作 1.用户登录验证后通过JWT生成唯一token返回给前端,前端通过指定秘钥解析token获取用户信息,每次请求通过JWT重新加密加上时间戳生成token传入后端,后端通过秘钥解密对比时间超过指定范围后网关直接打回。防止token被伪造。
●内容管理服务:主要统一保存图片,文件等 1.实现文件压缩 2.图片水印添加
●域管理服务:1.包含字典功能 2.域动作管理,主要原理通过对状态的动作定义可以在服务代码中实现某个状态流转控制。
●字典管理服务:主要用于后端返回状态码定义,用于多语言返回结果提示
●操作日志服务:主要记录用户操作记录,在网关拦截请求信息,异步调用日志服务。
●数据权限服务:定义数据权限,需要后台同步修改代码,属于侵入式
4.负责公共jar包
core:主要把一些通用工具做集成
data:1.通过@RestControllerAdvice做全局异常拦截 2.MybatisPlus分页支持,解决Mybatis Plus Order By SQL注入问题
log:1.定义log注解 2.定义LogAspect通过aop切面触发log注解统一获取请求信息异步写入日志服务
redis:1.配置redis信息 2.配置redis通知监听,3.配置redis使用service
security:1.定义PreAuthorize权限注解 2.定义PreAuthorizeAspect通过aop切面触发PreAuthorize注解
判断用户信息是否有权限访问 3.feign相关配置 4. feign请求拦截器传递用户信息请求头