程序聚合 软件案例 面向企业的SaaS化管理

面向企业的SaaS化管理

2026-09-17 09:54:44
行业:企业服务(saas)
载体:网站、框架或代码包
技术:Java、JavaScript、SQL、FastAPI

业务和功能介绍

本系统采用 SaaS 多租户架构,面向多个独立企业/组织在同一平台统一部署与运营。立项背景是:传统单租户模式难以满足多客户并行接入、权限隔离、按需开通功能的需求。建设目标是:平台方统一维护租户套餐与功能边界,按套餐为各租户分配菜单、插件及账号额度;租户管理员在授权范围内独立管理本租户用户与业务;实现“一套系统、多租户隔离、按套餐差异化服务”,降低运维成本并支撑商业化订阅。

2、软件功能、核心功能模块的介绍

核心模块包括:(1)租户套餐管理:配置套餐名称、状态、价格、时长、关联菜单权限、包含插件(Addon)等,数据存储于 system_tenant_package 表;(2)租户管理:维护租户名称、联系人、套餐绑定、账号额度、过期时间、绑定域名及状态,支持新增、编辑、删除、导出;(3)权限与菜单:登录后通过 get-permission-info 加载用户角色与菜单,套餐 menu_ids 决定租户超级管理员可见功能;(4)平台套餐配置(Platform):以卡片形式管理套餐,支持推荐标签、插件关联、菜单数量展示,与系统租户模块共用套餐数据;(5)辅助能力:字典数据、租户切换、站内信未读提醒等,支撑管理端日常运营。

3、业务流程、功能路径描述

业务流程如下:① 平台管理员进入「平台管理 → 套餐配置」或「系统管理 → 租户套餐」,新建并启用套餐,勾选菜单、配置插件,保存至 system_tenant_package;② 进入「系统管理 → 租户管理 → 租户列表」,点击新增,填写租户信息并选择已启用套餐(调用 /system/tenant-package/simple-list 获取下拉选项),设置账号额度与过期时间,提交后系统自动创建租户管理员账号与角色;③ 租户管理员登录后,系统按套餐 menu_ids 过滤菜单,仅展示授权功能;④ 运营中若调整套餐,编辑租户并更换套餐,超级管理员菜单同步更新;⑤ 平台方通过租户列表查看套餐绑定、插件、状态与到期情况,到期或禁用的租户无法正常使用。整体路径为:套餐定义 → 租户开通 → 权限生效 → 日常运营 → 套餐变更/到期管控。


项目实现

项目采用前后端分离的 SaaS 多租户架构。后端基于 Spring Boot + MyBatis-Plus,按 yudao 模块化拆分:system 模块负责租户、权限、字典等基础能力,platform 模块负责套餐与 Addon 插件管理,通过 @TenantIgnore 实现套餐等全局数据的租户隔离绕过。前端为 Vue3 + Element Plus + TypeScript,路由由后端菜单动态生成。数据层使用 MySQL(system_tenant、system_tenant_package 等表),Redis 做缓存,登录鉴权走 JWT + Spring Security。设计上以「套餐定义功能边界 → 租户绑定套餐 → 菜单/权限动态下发」为主线,platform 与 system 共用 system_tenant_package 表,实现套餐统一维护、租户差异化授权。
我主要负责系统管理中的租户与套餐相关功能排查与梳理,覆盖后端 TenantPackageController、TenantServiceImpl 及前端 tenant/index.vue、tenantPackage API 等模块。通过日志与代码对照,定位登录初始化链路(get-permission-info 约 491ms、dict-data 1035 条、tenant simple-list 5 条租户),确认租户列表、套餐下拉、权限加载均正常触发。梳理出 2 套套餐管理入口(系统管理-租户套餐、平台管理-套餐配置),明确共用 1 张套餐表、2 组 API。输出完整业务流程说明(套餐配置→租户开通→权限生效→运营变更),为后续修复与联调提供依据。
主要难点是「租户套餐页面无数据」表象与真实原因不一致。排查发现:菜单 component 指向 system/tenantPackage/index,但前端缺少对应 Vue 页面,路由 findIndex 为 -1 导致组件 undefined,页面空白且不会发起 tenant-package 接口请求;同时项目已将套餐管理迁移至 platform/package/PackageList.vue,旧菜单未同步更新,造成“有菜单、无页面、无数据”的错觉。另外,租户表单下拉仅返回 status=0 的启用套餐,若库中无数据或全为禁用也会表现为空。解决方案:① 补全 tenantPackage 前端页面,或 ② 将菜单 component 改指向 platform/package/PackageList;③ 执行 platform-menu-seed.sql 并分配角色权限;④ 校验 system_tenant_package 表数据及 status 字段,确保有启用套餐供租户绑定。

示例图片视频


程序员Tuski
24小时内活跃
方向: 后端-Java、爬虫/脚本-爬虫/脚本、
交付率:100.00%
相似推荐
青岛铁塔-青岛铁塔app+pc
青岛铁塔综合业务平台是针对中国铁塔青岛分公司对铁塔的巡检专门设计的系统,主要使巡检效率提升,方便隐患处理,显著提高运维效率,保障通信塔安全。Pc端主要负责管理部门的核查及审核,主要的使用人群是公司的运维部,app端主要用于巡检人员和塔工。巡检过程按部就班交给下一级来审核或修改,生成全流程进度施工流程查询单,快速查询定位全流程节点,实现数据整合,便于问题排查与分析,提升管理水平。1个平台整合巡检、隐患、整改全流程,打破数据孤岛,实现数据共享与协同,提升运维效率。标准化流程、智能化预警、全链路数据追踪,提升运维质量与管理水平,降低风险。
云主机终端安全
该项目负责对原有产品(jsp)进行前后端分离,从前期的技术调研选型,到项目搭建功能开发,逐步实现对原有功能的完善,并且融入其他终端产品的功能代码,实现在新的UI项目上,客户能够对原有业务的处理;并且新的UI能够给用户更加便捷的操作和全新的体验
公安实战大数据平台
公安实战大数据平台是中电兴发的核心产品之一,该产品通过视频图像对过 往车辆和行人进行结构化分析,运用物联网、大数据实战车辆、人员信息的跨区 域实时查询及分析,为大数据挖掘和跨地市案件串并等深度应用提供技术支撑。 该系统主要包括检索中心、车辆实战、人脸实战、报警实战、视频实战、卡口车 辆实战、WiFi 探针实战、系统管理等模块。
工业园区智能访客通行与安防联动系统-访客管理系统
1、立项背景和目标:半导体制造园区对安全保密与出入管控有极高要求,传统人工登记核验效率低且存在管控盲区,需构建全流程数字化、智能化的访客通行与安防联动体系。 2、软件功能与核心模块:涵盖微信小程序访客预约审批、线下智能人脸识别一体机终端交互、智能门禁与闸机联动、园区安防监控联动与轨迹追踪、禁限区域越界实时报警。 3、业务流程与路径:访客微信小程序线上预约登记 → 内部审批生成凭证 → 访客线下一体机人脸识别快速核验身份 → 闸机自动开闸无感通行 → 厂区内视频轨迹追踪与越界告警 → 离场核销闭环。
AI风控
业务背景 该系统服务于线上交易及游戏平台的实时风控审查,主要面向风控运营、审核人员及业务管理员,帮助他们识别、分析、处置潜在的套利、刷子、异常投注、资金异常等风险行为。 系统核心能力包括: 规则引擎驱动:支持可视化配置风控规则,动态调整策略; AI辅助分析:自动聚合多维度风险信号,生成案件摘要与处置建议; 全链路审核闭环:从风险命中、告警触发、人工审核到历史追溯,形成完整处置链路。
帮助文档   Copyright @ 2021-2024 程聚宝 | 浙ICP备2021014372号
人工客服