企业后端多租户管理平台

devtools/2024/11/28 0:19:28/

1 简介

        此系统在企业后端管理系统上进行的更改,用于快速开发租户管理平台。项目中详细的功能请查看文章:企业后端系统通用模版_后端模板-CSDN博客

        支持多租户,支持多租户切换,支持多租户数据隔离,支持多租户数据同步等功能。项目地址:ywz-saas-project:多租户管理平台模版 - GitCode

2 技术栈

2.1 ywz-saas-crm-ui 前端

  1. vue3.0
  2. element-plus

2.2 ywz-saas-crm-manage 后端

  1. springboot 2.5.15
  2. mybatis-plus 3.4.3.4
  3. mysql 8
  4. jdk 1.8
  5. redis

3 模块

3.1 登录模块

        用户根据帐号来区分租户。帐号结构 为:租户key_用户名。例如:key_zhangsan。

3.2 租户管理

        此为核心模块建议只允许管理员访问。租户模块用于管理租户信息,包括租户的增删改查等操作。 添加租户时,根据租户key和服务器地址,自动生成租户的分库。并初始化数据库。

  1. 分库的帐号密码在配置文件中配置。
  2. 自动创建管理员账号,帐号默认为租户key_admin,默认密码为:123456。
  3. 自动创建管理员角色,角色名称为:超级管理员,标识为admin。

3.3 菜单管理

        此为核心模块建议只允许管理员访问。菜单模块用于管理菜单信息,包括菜单的增删改查等操作。菜单分为两级,一级菜单和二级菜单。

  1. 新添加的租户没有菜单,需要在菜单管理中手动添加。
  2. 同步菜单会将主机菜单同步到租户菜单中。
  3. 菜单可以进行拖动调整菜单顺序,也可以设置菜单图标。
  4. 菜单地址为vue路由地址,新的组件需要添加路由需要在此处添加。例如:/home/index

3.4 权限管理

        此模块用于管理角色权限信息,与菜单分离可以做到更细致化的权限管理。用户登录时,会根据用户的角色查询出对应的权限。然后根据权限绑定的菜单进行菜单的显示。

  1. 查询当前系统中的所有权限
  2. 可以添加编辑相应的权限与菜单进行关联。
  3. 可以删除权限。

3.5 角色管理

        此模块用于管理角色信息,包括角色的增删改查等操作。角色与权限关联,一个角色可以关联多个权限。

  1. 查询当前系统中的所有角色
  2. 可以添加编辑相应的角色与权限进行关联。
  3. 可以删除角色。

3.6 部门管理

        此模块用于管理部门信息,包括部门的增删改查等操作。

  1. 查询当前系统中的所有部门
  2. 可以添加编辑相应的部门。
  3. 可以删除部门。

3.7 用户管理

        此模块用于管理用户信息,包括用户的增删改查等操作。用户与角色关联,一个用户可以关联多个角色。

  1. 查询当前系统中的所有用户
  2. 可以添加编辑相应的用户与角色进行关联。
  3. 可以删除用户。

3.8 标签管理

        此模块用于管理标签信息,包括标签的增删改查等操作。

  1. 查询当前系统中的所有标签。
  2. 可以添加编辑相应的标签。
  3. 可以删除标签。

3.9 日志管理

        此模块用于管理日志信息。

  1. 查询当前系统中的所有登录日志。
  2. 查询当前系统中的所有操作日志。


http://www.ppmy.cn/devtools/137524.html

相关文章

11.19机器学习_逻辑回归

十二 逻辑回归 1.概念 逻辑回归(Logistic Regression)是机器学习中的一种分类模型,逻辑回归是一种分类算法,虽然名字中带有回归,但是它与回归之间有一定的联系。由于算法的简单和高效,在实际中应用非常广泛。 逻辑回归一般用于…

C#-利用反射自动绑定请求标志类和具体执行命令类

文章速览 概述例程请求类命名空间父类示例子类示例 命令类命名空间子类示例 记录的数据结构实现绑定方法 坚持记录实属不易,希望友善多金的码友能够随手点一个赞。 共同创建氛围更加良好的开发者社区! 谢谢~ 概述 需求: 将指定的两种类型的…

C++ —— 以真我之名 如飞花般绚丽 - 智能指针

目录 1. RAII和智能指针的设计思路 2. C标准库智能指针的使用 2.1 auto_ptr 2.2 unique_ptr 2.3 简单模拟实现auto_ptr和unique_ptr的核心功能 2.4 shared_ptr 2.4.1 make_shared 2.5 weak_ptr 2.6 shared_ptr的缺陷:循环引用问题 3. shared_ptr 和 unique_…

Vue.Draggable使用nested-with-vmodel进行拖拽

Vue.Draggable使用nested-with-vmodel进行拖拽 1. 介绍 ‌draggable‌是一个基于Sortable.js的Vue组件,用于实现拖拽功能。它支持触摸设备、拖拽和选择文本、智能滚动、不同列表之间的拖拽等功能,并且与Vue的视图模型同步刷新,兼容Vue2的过…

标贝科技大模型声音复刻 快速获取高品质专属AI声音

这两天,科技界发生了一件炸裂的事情——代表科技最高峰的诺贝尔物理学奖,居然颁给了两位人工智能领域的科学家,约翰霍普菲尔德和杰弗里辛顿。他们在机器学习和人工神经网络领域的开创性研究,不仅为现代机器学习奠定了基础&#xf…

TCP IP协议和网络安全

传输层的两个协议: 可靠传输 TCP 分段传输 建立对话(消耗系统资源) 丢失重传netstat -n 不可靠传输 UDP 一个数据包就能表达完整的意思或屏幕广播 应用层协议(默认端口): httpTCP80 网页 ftpTCP21验证用户身…

Unity图形学之BRDF双向反射分布函数

1.描述了入射光线在非透明物体表面如何进行反射,也就是说多少光发生了漫反射,多少光发生了镜面反射 BRDF 函数计算的是“特定反射方向的光强与入射光强的比例” 2.各向异性 与 均向性 相反,是指在不同方向具有不同行为的性质,也就…

Lock锁和AQS之间的关系与区别:基于第一原理的深入分析

引言 在Java并发编程中,锁(Lock)和队列同步器(AbstractQueuedSynchronizer,简称AQS)是两个核心概念。它们为多线程环境下的同步和互斥提供了强大的支持。本文将从第一原理出发,深入探讨Lock锁和…