在线预览
项目简介
羚羊系统专注于实际业务场景, 集成多个功能模块, 方便快速开发功能, 避免重复开发,目前支持微服务和单体部署无缝切换,代码无需改动, 项目100%开源,允许商用
- 基于SpringCloud 2023、SpringBoot2.7, Oauth2的RBAC权限系统
- 封装很多常用通过框架组件, 开箱即用
欢迎使用本项目并提出宝贵建议, 如果项目对你有用,麻烦点击一下star😀
功能模块
系统模块
功能 | 描述 |
---|
成员管理 | 用于管理租户下管理员用户 |
部门管理 | 可将用户分配到多个部门中, 支持不同部门看到数据不同 |
我的部门 | 可查看我所属的部门以及部门用户 |
系统角色 | 可为角色分配权限以及用户, 则用户就拥有角色的权限 |
资源管理 | 管理项目的接口资源, 可一键同步所有接口, 方便菜单选择权限 |
菜单管理 | 管理项目的菜单列表并可以为菜单分配权限, 在角色中可选择菜单资源 |
客户端管理 | Oauth2的客户端管理, 可设置登录失败次数, 锁定周期, 是否使用验证码 |
租户管理 | 每个租户可拥有独立域名并可为租户选择租户套餐包(菜单资源) |
系统配置 | 可以配置系统需要动态配置的数据 |
字典管理 | 管理项目中用的字典数据 |
访问密钥 | 用于管理项目需要对外放开接口时的访问密钥, 目前保留 |
通知公告 | 管理通知数据, 目前需要完善 |
系统API | 获取swagger接口文档,罗列项目中所有接口 |
短链管理
功能 | 描述 |
---|
短链分组 | 对短链进行分组管理 |
短链域名 | 管理生成短链的域名 |
短链列表 | 被生成的短链 |
访问日志 | 短链访问日志 |
开发平台
功能 | 描述 |
---|
代码生成 | 从数据库中导入表并进行配置的记录 |
代码模板 | 代码生成依赖代码模板, 通过强大的模板引擎可以快速生成代码 |
代码模板组 | 对代码进行分组 |
数据源 | 管理数据库的数据源 |
支付模块
功能 | 描述 |
---|
商户列表 | 支持多商户, 每个商户可以管理多个应用 |
应用列表 | 一个应用表示一个支付场景, 可以为应用配置多个支付渠道和方式 |
支付订单 | 所有支付的订单都会在这里展示 |
退款订单 | 管理被退款的订单 |
商户通知 | 再支付或者退款的时候会通知接入的应用 |
账单下载 | 直连第三方平台下载账单数据 |
转账订单 | 管理账单订单,待验证 |
支付接口 | 可以动态配置支付相关参数 |
支付方式 | 配置每个支付接口的支付方式,比如微信支付有JAPI支付,H5支付 |
基础设施&系统监控
功能 | 描述 |
---|
文件配置 | 可以配置文件上传时限制的类型,大小,以及使用的存储介质,并支持动态替换文件url |
文件列表 | 展示文件上传记录 |
在线用户 | 展示所有在线的用户 |
定时任务 | 统一管理所有分布式定时任务 |
登录日志 | 记录用户登录行为 |
操作日志 | 记录用户操作行为 |
消息推送
功能 | 描述 |
---|
推送任务 | 每个消息任务支持一种渠道推送方式并可以设置推送参数 |
推送记录 | 所有的消息推送都将被记录 |
消息渠道 | 管理消息推送的渠道 |
公众号管理
功能 | 描述 |
---|
账号管理 | 管理公众号账号 |
标签管理 | 管理用户标签 |
菜单管理 | 管理公众号菜单 |
粉丝管理 | 展示公众号所有粉丝 |
自动回复 | 公众号自动回复功能,目前支持图片和文本 |
素材管理 | 管理公众号素材 |
图文草稿箱 | 待实现 |
会员中心
待开发
核心技术栈
框架 | 说明 | 版本 |
---|
SpringBoot | 系统应用框架 | 2.7.3 |
SpringCloud | 微服务框架 | 2021 |
MybatPlus | 持久层框架 | |
Redis | 缓存框架 | 6.2.17 |
lombok | 消除冗余代码 | |
MapStruct | 高性能java bean转换 | |
MySql | 数据库 | 8.0 |
lingyang-framework | 我自己开发的所用工程通用的、对第三方库封装的库, 你可以拉取到本地执行构建,目前已经推送到中央仓库 | |
本地安装 lingyang-framework工程(可选)
由于项目依赖了lingyang-framework工程, 所以你要先拉取lingyang-framework工程到本地进行编译, 安装到本地的maven仓库或者远程的maven仓库中
git clone https://gitee.com/sgy_project/lingyang-framework.git
cd lingyang-framework/bin
bash build.sh`
注意: 如果你是win10电脑, 可以使用git命令行执行上面的脚本
项目结构
lingyang-boot
├── bin
│ ├── build-back-end.sh: 构建后端脚本
├── db
│ ├── nacos.sql: nacos相关sql
│ ├── system-v1.sql
├── docker
│ ├── be: 部署后端应用
│ ├── clean.sh
│ ├── mysql
│ ├── nacos
│ ├── nginx
│ ├── README.md
│ └── redis
├── lingyang-commons: 公共组件库
│ ├── lingyang-common-core
│ ├── lingyang-common-datasource
│ ├── lingyang-common-security
├── lingyang-gateway: 网关
├── lingyang-module-system
│ ├── lingyang-module-system-api: 系统服务接口, 供其他服务调用的远程接口
│ ├── lingyang-module-system-biz: 系统服务业务
├── lingyang-module-pay 统一支付
│ ├── lingyang-module-pay-api: 统一支付接口, 供其他服务调用的远程接口
│ ├── lingyang-module-pay-biz: 统一支付业务实现
├── lingyang-module-portal 前台系统
│ ├── lingyang-module-portal-api: 前台系统接口, 供其他服务调用的远程接口
│ ├── lingyang-module-portal-biz: 前台系统系统业务实现
├── lingyang-module-auth
│ ├── lingyang-module-auth-api: 认证模块接口, 供其他服务调用的远程接口
│ ├── lingyang-module-auth-biz: 认证模块具体业务实现
├── lingyang-module-msg-push
│ ├── lingyang-module-msg-push-api: 消息推送接口, 供其他服务调用的远程接口
│ ├── lingyang-module-msg-push-biz: 消息推送实现
├── lingyang-module-infra
│ ├── lingyang-module-infra-api: 基础设施接口, 供其他服务调用的远程接口
│ ├── lingyang-module-infra-biz: 基础设施实现(文件管理, 定时任务管理等基础设施)
├── lingyang-module-short-link
│ ├── lingyang-module-short-link-api: 短链模块接口, 供其他服务调用的远程接口
│ ├── lingyang-module-short-link-biz: 短链模块业务实现
├── lingyang-extent-dict: 扩展字典模块, 可以单独部署也可以集成到任意模块
├── lingyang-plugin: 插件模块(和业务相关)
│ ├── lingyang-plugin-gen: 代码生成插件
│ ├── lingyang-plugin-weixin: 微信插件
├── lingyang-startup-cloud: 微服务启动器
│ ├── lingyang-startup-cloud-auth: 授权启动器
│ ├── lingyang-startup-cloud-gateway: 网关
│ ├── lingyang-startup-cloud-infra: 基础设施
│ ├── lingyang-startup-cloud-msg-push: 消息推送
│ ├── lingyang-startup-cloud-pay: 支付
│ ├── lingyang-startup-cloud-system: 系统
├── lingyang-startup-standalone: 单体服务启动器
│ ├── lingyang-startup-standalone-server: 服务(整合所有模块, 可自行删减)
│ ├── lingyang-startup-standalone-gateway: 网关
前端应用启动
拉取前端代码, 进入到根目录下执行如下命令
yarn install
yarn run dev