DeepSeek+Mermaid赋能研发提效

Mermaid 是一种基于文本的图表生成工具,支持多种图表类型,能够通过简单的语法生成可视化图表。

Mermaid支持的一些图表在软件研发中具有广泛的应用,能够帮助开发者、设计师和项目经理更清晰地表达设计思路、沟通需求、管理项目进度和优化系统架构。

1、流程图(Flowchart)

应用场景:在软件研发中,流程图常用于表示系统的业务流程,帮助开发者理解系统的整体结构和流程。

特点:

  • 支持多种节点形状(如矩形、菱形、圆形等)和连接线样式。
  • 可通过条件判断(如if、else)实现分支逻辑。

DeepSeek指令:

针对订单流程,生成流程图,输出Mermaid格式。

输出代码:

css 复制代码
graph LR
    A[用户提交订单] --> B{支付成功?}
    B -->|是| C{库存充足?}
    B -->|否| Z[订单失败]
    C -->|是| D[订单处理]
    C -->|否| E[取消订单并通知用户]
    D --> F[生成发货单]
    F --> G[物流配送]
    G --> H{用户确认收货?}
    H -->|是| I[订单完成]
    H -->|否| J[跟进物流异常]
    J --> I

效果:

graph LR A[用户提交订单] --> B{支付成功?} B -->|是| C{库存充足?} B -->|否| Z[订单失败] C -->|是| D[订单处理] C -->|否| E[取消订单并通知用户] D --> F[生成发货单] F --> G[物流配送] G --> H{用户确认收货?} H -->|是| I[订单完成] H -->|否| J[跟进物流异常] J --> I

2、序列图(Sequence Diagram)

应用场景:用于描述对象之间的交互顺序,特别适合展示软件系统中不同组件或服务之间的通信。

特点:

  • 支持参与者(Actor)、对象(Object)和消息(Message)的定义。
  • 可表示异步消息、循环、条件判断等。

DeepSeek指令:

针对订单流程,生成序列图,输出Mermaid格式。

输出代码:

rust 复制代码
sequenceDiagram
    用户 ->> 订单系统: 请求退款
    订单系统 ->> 支付网关: 发起逆向交易
    支付网关 -->> 订单系统: 退款结果
    订单系统 ->> ERP系统: 更新财务台账
    订单系统 ->> 用户: 通知退款结果

效果:

sequenceDiagram 用户 ->> 订单系统: 请求退款 订单系统 ->> 支付网关: 发起逆向交易 支付网关 -->> 订单系统: 退款结果 订单系统 ->> ERP系统: 更新财务台账 订单系统 ->> 用户: 通知退款结果

3、类图(Class Diagram)

应用场景:用于描述软件系统的类结构、属性和方法,以及类之间的关系(如继承、关联、聚合等)。

特点:

  • 支持类的定义、接口、枚举等。
  • 可表示类之间的继承、实现、依赖等关系。

DeepSeek指令:

针对商品管理,生成类图,输出Mermaid格式。

输出代码:

swift 复制代码
classDiagram
    class Product {
        +String productId
        +String name
        +String description
        +BigDecimal basePrice
        +ProductStatus status
        +List~ProductImage~ images
        +addSpecification()
        +toggleStatus()
    }

    class SKU {
        +String skuId
        +Map~String,String~ specifications
        +BigDecimal price
        +Integer stock
        +adjustStock()
        +updatePrice()
    }

    class Category {
        +String categoryId
        +String name
        +String path
        +addSubCategory()
    }

    class Brand {
        +String brandId
        +String brandName
        +String logoUrl
        +verifyTrademark()
    }

    class ProductAttribute {
        +String attrId
        +String attrName
        +List~String~ options
        +addOption()
    }

    class InventoryLog {
        +String logId
        +String operationType
        +Integer quantity
        +logOperation()
    }

    Product "1" *-- "1..*" SKU : 组合
    Product "1" --> "1" Brand : 关联
    Product "1" --> "1..*" Category : 分类
    Product "1" --> "0..*" ProductAttribute : 属性定义
    SKU "1" --> "0..*" InventoryLog : 库存变更记录
    Category "1" --> "0..*" Category : 层级结构

    note for Product "状态管理:\n- 上架/下架\n- 审核状态\n- 推荐状态"
    note for SKU "规格示例:\n颜色: 红/蓝/黑\n尺寸: S/M/L/XL"
    note for InventoryLog "操作类型:\n入库/出库/调整\n支持批次管理"

效果:

4、状态图(State Diagram)

应用场景:用于描述对象的状态变化和状态之间的转换,特别适合表示有限状态机(FSM)或复杂的状态逻辑。

特点:

  • 支持状态(State)、事件(Event)和转换(Transition)的定义。
  • 可表示并发状态、嵌套状态等。

DeepSeek指令:

针对库存,生成状态图,输出Mermaid格式。

输出代码:

sql 复制代码
stateDiagram-v2
    [*] --> Available: 初始状态
    Available --> Reserved: 创建订单\n(预占库存)
    Reserved --> Available: 订单取消/超时\n(释放库存)
    Reserved --> Deducted: 支付成功\n(扣减库存)
    Deducted --> ReturnPending: 发起退货\n(退货审核中)
    ReturnPending --> Available: 退货完成\n(重新上架)
    ReturnPending --> Scrapped: 质检不合格\n(报废处理)
    Deducted --> Available: 未发货取消\n(特殊退款)
    Scrapped --> [*]: 库存核销
    ReturnPending --> Deducted: 驳回退货\n(维持扣减)

    note left of Available: 可售库存池
    note right of Deducted: 实际减少库存\n(影响在库数量)
    note right of ReturnPending: 需走质检流程\n(3-5个工作日)

    state 业务规则 {
        预占时效: 30分钟未支付自动释放
        安全库存: Available <阈值时\n触发采购预警
        并发控制: 预占操作需加分布式锁
        批次管理: 先进先出(FIFO)\n效期跟踪
    }

效果:

stateDiagram-v2 [*] --> Available: 初始状态 Available --> Reserved: 创建订单\n(预占库存) Reserved --> Available: 订单取消/超时\n(释放库存) Reserved --> Deducted: 支付成功\n(扣减库存) Deducted --> ReturnPending: 发起退货\n(退货审核中) ReturnPending --> Available: 退货完成\n(重新上架) ReturnPending --> Scrapped: 质检不合格\n(报废处理) Deducted --> Available: 未发货取消\n(特殊退款) Scrapped --> [*]: 库存核销 ReturnPending --> Deducted: 驳回退货\n(维持扣减) note left of Available: 可售库存池 note right of Deducted: 实际减少库存\n(影响在库数量) note right of ReturnPending: 需走质检流程\n(3-5个工作日) state 业务规则 { 预占时效: 30分钟未支付自动释放 安全库存: Available <阈值时\n触发采购预警 并发控制: 预占操作需加分布式锁 批次管理: 先进先出(FIFO)\n效期跟踪 }

5、实体关系图(Entity Relationship Diagram, ERD)

应用场景:用于数据库设计,描述实体(表)、属性(字段)和实体之间的关系(如一对一、一对多、多对多)。

特点:

  • 支持实体、属性、主键、外键的定义。
  • 可表示实体之间的关联关系。

DeepSeek指令:

针对用户和权限管理,生成ER图,输出Mermaid格式。

输出代码:

c 复制代码
erDiagram
    USER {
        int user_id PK "用户ID"
        string username "用户名"
        string email "邮箱"
        datetime created_at "创建时间"
    }

    ROLE {
        int role_id PK "角色ID"
        string role_code "角色编码"
        string description "描述"
    }

    PERMISSION {
        int perm_id PK "权限ID"
        string perm_code "权限编码"
        string resource "资源路径"
        string action "操作类型"
    }

    USER_GROUP {
        int group_id PK "组ID"
        string group_name "组名称"
        string inherit_mode "继承模式"
    }

    USER ||--o{ USER_ROLE : "分配"
    ROLE ||--o{ ROLE_PERMISSION : "授权"
    USER ||--o{ USER_GROUP_MEMBER : "隶属"
    USER_GROUP ||--o{ GROUP_ROLE : "继承"

    USER_ROLE {
        int user_id FK "用户ID"
        int role_id FK "角色ID"
        datetime granted_at "授权时间"
    }

    ROLE_PERMISSION {
        int role_id FK "角色ID"
        int perm_id FK "权限ID"
        string scope "作用域"
    }

    USER_GROUP_MEMBER {
        int user_id FK "用户ID"
        int group_id FK "组ID"
        datetime joined_at "加入时间"
    }

    GROUP_ROLE {
        int group_id FK "组ID"
        int role_id FK "角色ID"
        bool is_inheritable "可继承"
    }

效果:

erDiagram USER { int user_id PK "用户ID" string username "用户名" string email "邮箱" datetime created_at "创建时间" } ROLE { int role_id PK "角色ID" string role_code "角色编码" string description "描述" } PERMISSION { int perm_id PK "权限ID" string perm_code "权限编码" string resource "资源路径" string action "操作类型" } USER_GROUP { int group_id PK "组ID" string group_name "组名称" string inherit_mode "继承模式" } USER ||--o{ USER_ROLE : "分配" ROLE ||--o{ ROLE_PERMISSION : "授权" USER ||--o{ USER_GROUP_MEMBER : "隶属" USER_GROUP ||--o{ GROUP_ROLE : "继承" USER_ROLE { int user_id FK "用户ID" int role_id FK "角色ID" datetime granted_at "授权时间" } ROLE_PERMISSION { int role_id FK "角色ID" int perm_id FK "权限ID" string scope "作用域" } USER_GROUP_MEMBER { int user_id FK "用户ID" int group_id FK "组ID" datetime joined_at "加入时间" } GROUP_ROLE { int group_id FK "组ID" int role_id FK "角色ID" bool is_inheritable "可继承" }

6、Git 图(Git Graph)

应用场景:用于展示代码仓库的提交历史和分支结构,特别适合团队协作中的代码管理。

特点:

  • 支持提交(Commit)、分支(Branch)和合并(Merge)的定义。
  • 可表示分支的创建和合并过程。

DeepSeek指令:

针对Git分支管理,生成Git图,输出Mermaid格式。

输出代码:

bash 复制代码
gitGraph
    commit id: "Initial"
    branch develop
    checkout develop
    commit id: "Add core framework"
    branch feature/login
    checkout feature/login
    commit id: "Implement auth service"
    commit id: "Add 2FA support"
    checkout develop
    merge feature/login tag: "v0.1-auth" id: "Merge login feature"
    branch release/v1.0
    checkout release/v1.0
    commit id: "Fix regression bugs" type: HIGHLIGHT
    checkout main
    merge release/v1.0 tag: "v1.0.0" id: "Production release"
    checkout develop
    merge release/v1.0 id: "Sync to develop"
    branch hotfix/security-patch
    checkout hotfix/security-patch
    commit id: "Patch CVE-2023-xxx"
    checkout main
    merge hotfix/security-patch tag: "v1.0.1"
    checkout develop
    merge hotfix/security-patch
    branch feature/payment
    checkout feature/payment
    commit id: "Add payment gateway"
    commit id: "Implement refund flow"
    checkout develop
    merge feature/payment tag: "v1.1-pre" id: "Merge payment feature"
    branch release/v1.1
    commit id: "Final testing"
    checkout main
    merge release/v1.1 tag: "v1.1.0"

效果:

gitGraph commit id: "Initial" branch develop checkout develop commit id: "Add core framework" branch feature/login checkout feature/login commit id: "Implement auth service" commit id: "Add 2FA support" checkout develop merge feature/login tag: "v0.1-auth" id: "Merge login feature" branch release/v1.0 checkout release/v1.0 commit id: "Fix regression bugs" type: HIGHLIGHT checkout main merge release/v1.0 tag: "v1.0.0" id: "Production release" checkout develop merge release/v1.0 id: "Sync to develop" branch hotfix/security-patch checkout hotfix/security-patch commit id: "Patch CVE-2023-xxx" checkout main merge hotfix/security-patch tag: "v1.0.1" checkout develop merge hotfix/security-patch branch feature/payment checkout feature/payment commit id: "Add payment gateway" commit id: "Implement refund flow" checkout develop merge feature/payment tag: "v1.1-pre" id: "Merge payment feature" branch release/v1.1 commit id: "Final testing" checkout main merge release/v1.1 tag: "v1.1.0"

7、架构图(Architecture Diagrams)

应用场景:在云架构和CI/CD流程中,架构图常用于表示系统的整体架构和组件关系。

特点:支持服务(节点)和边(edges)的定义,可表示服务之间的连接和组织方式。

示例:

scss 复制代码
architecture-beta
    group api(cloud)[API]

    service db(database)[Database] in api
    service disk1(disk)[Storage] in api
    service disk2(disk)[Storage] in api
    service server(server)[Server] in api

    db:L -- R:server
    disk1:T -- B:server
    disk2:T -- B:db

效果:

8、数据包图(Packet Diagram)

应用场景:在网络通信和协议设计中,数据包图常用于表示数据包的结构和字段。

特点:支持数据包结构和字段的定义,可表示网络数据包的传输过程。

示例:

yaml 复制代码
---
title: "TCP Packet"
---
packet-beta
0-15: "Source Port"
16-31: "Destination Port"
32-63: "Sequence Number"
64-95: "Acknowledgment Number"
96-99: "Data Offset"
100-105: "Reserved"
106: "URG"
107: "ACK"
108: "PSH"
109: "RST"
110: "SYN"
111: "FIN"
112-127: "Window"
128-143: "Checksum"
144-159: "Urgent Pointer"
160-191: "(Options and Padding)"
192-255: "Data (variable length)"

效果:

9、块状图(Block diagrams)

应用场景:在工程、软件开发和流程管理中,块状图常用于表示系统的组件和关系。

特点:由块状元素和连接符组成,可表示系统的基本组件和流向。

示例:

scss 复制代码
block-beta
columns 1
  db(("DB"))
  blockArrowId6<["&nbsp;&nbsp;&nbsp;"]>(down)
  block:ID
    A
    B["A wide one in the middle"]
    C
  end
  space
  D
  ID --> D
  C --> D
  style B fill:#969,stroke:#333,stroke-width:4px

效果:

相关推荐
文心快码BaiduComate28 分钟前
百度云与光本位签署战略合作:用AI Agent 重构芯片研发流程
前端·人工智能·架构
风象南1 小时前
Claude Code这个隐藏技能,让我告别PPT焦虑
人工智能·后端
Mintopia2 小时前
OpenClaw 对软件行业产生的影响
人工智能
陈广亮2 小时前
构建具有长期记忆的 AI Agent:从设计模式到生产实践
人工智能
会写代码的柯基犬3 小时前
DeepSeek vs Kimi vs Qwen —— AI 生成俄罗斯方块代码效果横评
人工智能·llm
Mintopia3 小时前
OpenClaw 是什么?为什么节后热度如此之高?
人工智能
爱可生开源社区3 小时前
DBA 的未来?八位行业先锋的年度圆桌讨论
人工智能·dba
叁两6 小时前
用opencode打造全自动公众号写作流水线,AI 代笔太香了!
前端·人工智能·agent
前端付豪6 小时前
LangChain记忆:通过Memory记住上次的对话细节
人工智能·python·langchain