当前位置: 首页 > news >正文

Mermaid 绘图--以企业权限视图为例

文章目录

    • 一、示例代码
    • 二、基础结构设计
      • 2.1 组织架构树
      • 2.2 权限视图设计
    • 三、销售数据权限系统
    • 四、关键语法技巧汇总

一、示例代码

在企业管理系统开发中,清晰的权限视图设计至关重要。本文将分享如何使用 Mermaid 绘制直观的企业权限关系图,复制以下代码到mermaid中,将得到关系图如图1。

graph LR
ZJL[总经理]:::red
HW[海外销售部]:::blue
GN[国内营销部]:::blue
Zu[组领导]:::yellow
ZY[专员]:::purple
subgraph 关系图
ZJL ==> HW & GN ==> Zu ==> ZY
endsubgraph 图表种类需求
hwbmtj{{海外部门统计}}:::green
gnbmtj{{国内部门统计}}:::green
grxstj{{个人销售统计}}:::pureBlue
zntj{{组内统计}}:::green
znxsrank{{组内销售rank}}:::pureRed
hwbmxsrank{{海外部门销售rank}}:::pureRed
gnbmxsrank{{国内部门销售rank}}:::pureRed
ddzt{{订单状态}}
salesSummary{{销售总结}}:::lightYellow
endsubgraph 实际图表归并
grddtj{{个人订单统计}}:::lightBlue
grcpxstj{{个人产品销售统计}}:::lightBlue
khphtj{{客户贡献排行}}:::lightBlue
rank{{销售人员RANK}}:::lightRed
_ddzt{{订单状态}}
hnwbmtj{{海内外部门统计 + 组内统计}}:::lightGreen
salesFeedback{{销售反馈}}:::lightYellowgrxstj --> grddtj & grcpxstj & khphtj
hwbmxsrank & gnbmxsrank & znxsrank --> rank
ddzt --> _ddzt
hwbmtj & gnbmtj & zntj --> hnwbmtj
salesSummary --> salesFeedbackendsubgraph 总经理可见内容
总经理:::red ---> hwbmtj & gnbmtj & salesSummary
endsubgraph 国外部门经理可见内容
国外部门经理:::blue ---> hwbmtj & grxstj & hwbmxsrank & ddzt
endsubgraph 国内部门经理可见内容
国内部门经理:::blue ---> gnbmtj & grxstj & gnbmxsrank & ddzt
endsubgraph 组领导可见内容
组:::yellow ---> zntj & grxstj & znxsrank & ddzt
endsubgraph 销售专员可见内容
专员:::purple ---> grxstj & ddztendclassDef red fill:#eeaa9c,color:#fff;
classDef blue fill:#93b5cf,color:#fff;
classDef yellow fill:#fcd217,color:#fff;
classDef purple fill:#e0c8d1,color:#fff;
classDef green fill:#0f0;
classDef pureRed fill:#f00,color:#fff;
classDef pureBlue fill:#00f,color:#fff;
classDef lightBlue fill:#2e317c,color:#fff;
classDef lightGreen fill:#a4cab6,color:#fff;
classDef purple fill:#fef200,color:#fff;
销售专员可见内容
组领导可见内容
国内部门经理可见内容
国外部门经理可见内容
总经理可见内容
实际图表归并
图表种类需求
关系图
专员
国内部门经理
国外部门经理
总经理
个人订单统计
个人产品销售统计
客户贡献排行
销售人员RANK
订单状态
海内外部门统计 + 组内统计
销售反馈
海外部门统计
国内部门统计
个人销售统计
组内统计
组内销售rank
海外部门销售rank
国内部门销售rank
订单状态
销售总结
专员
组领导
海外销售部
国内营销部
总经理

二、基础结构设计

2.1 组织架构树

使用 graph LR 创建从左到右的组织关系图,通过 subgraph 划分逻辑模块:

graph LR
ZJL[总经理]:::red
HW[海外销售部]:::blue
GN[国内营销部]:::blue
Zu[组领导]:::yellow
ZY[专员]:::purplesubgraph 组织架构
ZJL ==> HW & GN ==> Zu ==> ZY
endclassDef red fill:#eeaa9c,color:#fff;
classDef blue fill:#93b5cf,color:#fff;
classDef yellow fill:#fcd217,color:#fff;
classDef purple fill:#e0c8d1,color:#fff;
组织架构
专员
组领导
海外销售部
国内营销部
总经理

效果说明

  • 总经理(红色)统领两个部门
  • 部门经理(蓝色)管理组领导
  • 组领导(黄色)直接管理专员
  • 颜色编码增强角色辨识度

2.2 权限视图设计

通过嵌套 subgraph 实现三层视图结构:

graph LR
subgraph 图表种类需求
hwbmtj{{海外部门统计}}:::green
...
endsubgraph 实际图表归并
grddtj{{个人订单统计}}:::lightBlue
...
endsubgraph 角色可见内容
总经理:::red ---> hwbmtj & gnbmtj
...
end
角色可见内容
实际图表归并
图表种类需求
gnbmtj
总经理
个人订单统计
海外部门统计
...

核心技巧

  1. 使用 {{ }} 表示可点击图表元素
  2. ---> 单向箭头表示权限范围
  3. 颜色区分视图层级(需求/实现/权限)

三、销售数据权限系统

graph LR
ZJL[总经理]:::red
HW[海外销售部]:::blue
GN[国内营销部]:::blue
Zu[组领导]:::yellow
ZY[专员]:::purplesubgraph 组织架构
ZJL ==> HW & GN ==> Zu ==> ZY
endsubgraph 图表需求
hwbmtj{{海外部门统计}}:::green
gnbmtj{{国内部门统计}}:::green
grxstj{{个人销售统计}}:::pureBlue
endsubgraph 图表实现
grddtj{{个人订单统计}}:::lightBlue
grcpxstj{{产品销售统计}}:::lightBlue
grxstj --> grddtj & grcpxstj
endsubgraph 总经理权限
总经理:::red ---> hwbmtj & gnbmtj
endsubgraph 专员权限
专员:::purple ---> grddtj
endclassDef red fill:#eeaa9c,stroke:#d12727,stroke-width:2px;
classDef blue fill:#93b5cf,stroke:#2b6ca3;
classDef yellow fill:#fcd217,stroke:#d9a602;
classDef purple fill:#e0c8d1,stroke:#a87b8f;
classDef green fill:#a4cab6,stroke:#3a7d5e;
classDef pureBlue fill:#2e317c,color:#fff;
classDef lightBlue fill:#b6d7e8;
专员权限
总经理权限
图表实现
图表需求
组织架构
专员
总经理
个人订单统计
产品销售统计
海外部门统计
国内部门统计
个人销售统计
专员
组领导
海外销售部
国内营销部
总经理

四、关键语法技巧汇总

这个表格简要地展示了 Mermaid 图中使用的语法和结构:

功能/语法描述示例
graph LR定义图表布局和方向,LR表示从左到右。graph LR
subgraph定义子图,将节点和连接划分为一个小组。subgraph 关系图
节点定义[节点名称]定义节点。ZJL[总经理]
连接节点使用-->表示节点之间的连接。ZJL ==> HW
双箭头==>表示带有关系的连接,通常用于流向的展示。HW ==> Zu ==> ZY
classDef用来定义节点的样式(如背景色、字体颜色等)。classDef red fill:#eeaa9c,color:#fff;
class给节点指定样式类。ZJL[总经理]:::red
自定义颜色classDef中设置颜色、文本颜色等节点样式。classDef blue fill:#93b5cf,color:#fff;
嵌套结构/归并图表subgraph定义嵌套图表,组织和归类相关节点。subgraph 总经理可见内容
节点间的关系定义节点之间的连接与关系。grxstj --> grddtj & grcpxstj & khphtj
嵌套子图通过子图将多个图表合并为一个结构,定义不同角色的权限可见内容。subgraph 总经理可见内容
节点样式通过classDef定义节点的不同样式,如背景颜色、文本颜色等。classDef green fill:#0f0;
http://www.lqws.cn/news/132517.html

相关文章:

  • Cursor 工具项目构建指南: Web Vue-Element UI 环境下的 Prompt Rules 约束(new Vue 方式)
  • 如何在mac上安装podman
  • 核心线程池大小如何设置?
  • 基于LangChain构建高效RAG问答系统:向量检索与LLM集成实战
  • 实践篇:利用ragas在自己RAG上实现LLM评估②
  • 性能剖析:在 ABP 框架中集成 MiniProfiler 实现性能可视化诊断
  • 【vibe coding解决100个问题】开发CRM管理系统, Augment/windsurf/bolt.new哪家强?
  • 【论文写作】如何撰写基于模型拼接(A+B)的创新性论文
  • 论文导读 | 动态图存储与事务处理系统总结
  • 华为VanillaNet遇上BiFPN:YOLOv8的性能突破之旅
  • Ubuntu更新国内源
  • CATIA-CAD 拆图
  • 153页PPT麦肯锡咨询流程管理及企业五年发展布局构想与路径规划
  • DAY43 复习日
  • 解决docker运行zentao 报错:ln: failed to create symbolic link ‘/opt/zbox/tmp/mysq
  • Webpack性能优化:构建速度与体积优化策略
  • 如何用AI高效运营1000+Tiktok矩阵账号
  • 防止网站被iframe嵌套的安全防护指南
  • 红外测温传感器:为母婴类产品精准测温保驾护航
  • 大模型相关技术综述
  • Day12
  • TMS320C55xx——AIC23B的进阶使用_中断与DMA+中断
  • [网页五子棋][匹配模块]实现胜负判定,处理玩家掉线
  • 前端面试二之运算符与表达式
  • 十六、【前端强化篇】完善 TestCase 编辑器:支持 API 结构化定义与断言配置
  • <el-table>构建树形结构
  • nest实现前端图形校验
  • yaffs2目录搜索上下文数据结构struct yaffsfs_dirsearchcontext yaffsfs_dsc[] 详细解析
  • TDengine 在电力行业如何使用 AI ?
  • AtCoder解析大全