# yunaiv/yudao-cloud architecture

> Architecture diagram of the GitHub repository yunaiv/yudao-cloud, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-30). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/yunaiv/yudao-cloud
- Repository: https://github.com/yunaiv/yudao-cloud

## Overview

Yudao Cloud is a Spring Cloud business platform. Its user-facing flow is a client request into backend services, where authentication and shared framework concerns support domain operations and responses. The README documents a broad product surface—workflow, commerce, payments, reporting, collaboration, and enterprise modules—so these appear as distinct branches rather than an invented single transaction chain. The excerpts mainly show service interfaces, not controller wiring or implementations; edges between those layers are therefore omitted or marked unverified.

Main entry points: [`yudao-module-mall/yudao-module-trade-server/src/main/java/cn/iocoder/yudao/module/trade/service`](https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-mall/yudao-module-trade-server/src/main/java/cn/iocoder/yudao/module/trade/service) (Trade and brokerage), [`yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/pojo`](https://github.com/yunaiv/yudao-cloud/tree/master/yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/pojo) (Common API types), [`yudao-module-hrm/yudao-module-hrm-server/src/main/java/cn/iocoder/yudao/module/hrm/service/performance/assessment`](https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-hrm/yudao-module-hrm-server/src/main/java/cn/iocoder/yudao/module/hrm/service/performance/assessment) (HR and performance), [`yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/util`](https://github.com/yunaiv/yudao-cloud/tree/master/yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/util) (Common utilities)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_shared["Shared framework"]
  node_common["Common API types"]
  node_commonutils["Common utilities"]
end

subgraph group_identity["Identity and access"]
  node_adminauth["Admin authentication"]
  node_memberauth["Member authentication"]
  node_dataperm["Data permissions"]
  node_tenant["Tenant support"]
end

subgraph group_business["Business domains"]
  node_bpm["Workflow tasks"]
  node_malltrade["Trade and brokerage"]
  node_mallproduct["Mall products"]
  node_pay["Payments and wallets"]
  node_report["Reports and dashboards"]
end

subgraph group_enterprise["Enterprise features"]
  node_crm["CRM"]
  node_erpwms["ERP and WMS"]
  node_hrm["HR and performance"]
  node_mes["Manufacturing"]
  node_oa["Office collaboration"]
end

subgraph group_platform["Platform capabilities"]
  node_ai["AI services"]
  node_iot["IoT services"]
  node_im["Instant messaging"]
  node_codegen["Code generation"]
end

node_client(("Web and app users"))

node_client -.->|"authenticates"| node_adminauth
node_client -.->|"authenticates"| node_memberauth
node_client -.->|"uses workflow"| node_bpm
node_client -.->|"places orders"| node_malltrade
node_client -.->|"pays"| node_pay
node_client -.->|"views reports"| node_report
node_client -.->|"generates code"| node_codegen
node_hrm -->|"uses page results"| node_common
node_malltrade -->|"uses page results"| node_common
node_malltrade -->|"uses collections"| node_commonutils

click node_common "https://github.com/yunaiv/yudao-cloud/tree/master/yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/pojo"
click node_commonutils "https://github.com/yunaiv/yudao-cloud/tree/master/yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/util"
click node_adminauth "https://github.com/yunaiv/yudao-cloud/blob/master/yudao-module-system/yudao-module-system-server/src/main/java/cn/iocoder/yudao/module/system/service/auth/AdminAuthService.java"
click node_memberauth "https://github.com/yunaiv/yudao-cloud/blob/master/yudao-module-member/yudao-module-member-server/src/main/java/cn/iocoder/yudao/module/member/service/auth/MemberAuthService.java"
click node_dataperm "https://github.com/yunaiv/yudao-cloud/tree/master/yudao-framework/yudao-spring-boot-starter-biz-data-permission/src/main/java/cn/iocoder/yudao/framework/datapermission"
click node_tenant "https://github.com/yunaiv/yudao-cloud/tree/master/yudao-framework/yudao-spring-boot-starter-biz-tenant/src/main/java/cn/iocoder/yudao/framework/tenant"
click node_bpm "https://github.com/yunaiv/yudao-cloud/blob/master/yudao-module-bpm/yudao-module-bpm-server/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmTaskService.java"
click node_malltrade "https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-mall/yudao-module-trade-server/src/main/java/cn/iocoder/yudao/module/trade/service"
click node_mallproduct "https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-mall/yudao-module-product-server/src/main/java/cn/iocoder/yudao/module/product/service"
click node_pay "https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-pay/yudao-module-pay-server/src/main/java/cn/iocoder/yudao/module/pay/service"
click node_report "https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-report/yudao-module-report-server/src/main/java/cn/iocoder/yudao/module/report/service"
click node_crm "https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-crm/yudao-module-crm-server/src/main/java/cn/iocoder/yudao/module/crm/service"
click node_erpwms "https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-erp/yudao-module-erp-server/src/main/java/cn/iocoder/yudao/module/erp/service"
click node_hrm "https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-hrm/yudao-module-hrm-server/src/main/java/cn/iocoder/yudao/module/hrm/service/performance/assessment"
click node_mes "https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-mes/yudao-module-mes-server/src/main/java/cn/iocoder/yudao/module/mes/service"
click node_oa "https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-oa/yudao-module-oa-server/src/main/java/cn/iocoder/yudao/module/oa/service"
click node_ai "https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-ai/yudao-module-ai-server/src/main/java/cn/iocoder/yudao/module/ai/service"
click node_iot "https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-iot/yudao-module-iot-server/src/main/java/cn/iocoder/yudao/module/iot/service"
click node_im "https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-im/yudao-module-im-server/src/main/java/cn/iocoder/yudao/module/im/service"
click node_codegen "https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-infra/yudao-module-infra-server/src/main/java/cn/iocoder/yudao/module/infra/service/codegen"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_common,node_commonutils,node_client toneBlue
class node_adminauth,node_memberauth,node_dataperm,node_tenant toneAmber
class node_bpm,node_malltrade,node_mallproduct,node_pay,node_report toneMint
class node_crm,node_erpwms,node_hrm,node_mes,node_oa toneRose
class node_ai,node_iot,node_im,node_codegen toneIndigo
```

## Components

### Shared framework

- [Common API types](https://github.com/yunaiv/yudao-cloud/tree/master/yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/pojo): `yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/pojo`
- [Common utilities](https://github.com/yunaiv/yudao-cloud/tree/master/yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/util): `yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/util`

### Identity and access

- [Admin authentication](https://github.com/yunaiv/yudao-cloud/blob/master/yudao-module-system/yudao-module-system-server/src/main/java/cn/iocoder/yudao/module/system/service/auth/AdminAuthService.java): `yudao-module-system/yudao-module-system-server/src/main/java/cn/iocoder/yudao/module/system/service/auth/AdminAuthService.java`
- [Member authentication](https://github.com/yunaiv/yudao-cloud/blob/master/yudao-module-member/yudao-module-member-server/src/main/java/cn/iocoder/yudao/module/member/service/auth/MemberAuthService.java): `yudao-module-member/yudao-module-member-server/src/main/java/cn/iocoder/yudao/module/member/service/auth/MemberAuthService.java`
- [Data permissions](https://github.com/yunaiv/yudao-cloud/tree/master/yudao-framework/yudao-spring-boot-starter-biz-data-permission/src/main/java/cn/iocoder/yudao/framework/datapermission): `yudao-framework/yudao-spring-boot-starter-biz-data-permission/src/main/java/cn/iocoder/yudao/framework/datapermission`
- [Tenant support](https://github.com/yunaiv/yudao-cloud/tree/master/yudao-framework/yudao-spring-boot-starter-biz-tenant/src/main/java/cn/iocoder/yudao/framework/tenant): `yudao-framework/yudao-spring-boot-starter-biz-tenant/src/main/java/cn/iocoder/yudao/framework/tenant`

### Business domains

- [Workflow tasks](https://github.com/yunaiv/yudao-cloud/blob/master/yudao-module-bpm/yudao-module-bpm-server/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmTaskService.java): `yudao-module-bpm/yudao-module-bpm-server/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmTaskService.java`
- [Trade and brokerage](https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-mall/yudao-module-trade-server/src/main/java/cn/iocoder/yudao/module/trade/service): `yudao-module-mall/yudao-module-trade-server/src/main/java/cn/iocoder/yudao/module/trade/service`
- [Mall products](https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-mall/yudao-module-product-server/src/main/java/cn/iocoder/yudao/module/product/service): `yudao-module-mall/yudao-module-product-server/src/main/java/cn/iocoder/yudao/module/product/service`
- [Payments and wallets](https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-pay/yudao-module-pay-server/src/main/java/cn/iocoder/yudao/module/pay/service): `yudao-module-pay/yudao-module-pay-server/src/main/java/cn/iocoder/yudao/module/pay/service`
- [Reports and dashboards](https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-report/yudao-module-report-server/src/main/java/cn/iocoder/yudao/module/report/service): `yudao-module-report/yudao-module-report-server/src/main/java/cn/iocoder/yudao/module/report/service`

### Enterprise features

- [CRM](https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-crm/yudao-module-crm-server/src/main/java/cn/iocoder/yudao/module/crm/service): `yudao-module-crm/yudao-module-crm-server/src/main/java/cn/iocoder/yudao/module/crm/service`
- [ERP and WMS](https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-erp/yudao-module-erp-server/src/main/java/cn/iocoder/yudao/module/erp/service): `yudao-module-erp/yudao-module-erp-server/src/main/java/cn/iocoder/yudao/module/erp/service`
- [HR and performance](https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-hrm/yudao-module-hrm-server/src/main/java/cn/iocoder/yudao/module/hrm/service/performance/assessment): `yudao-module-hrm/yudao-module-hrm-server/src/main/java/cn/iocoder/yudao/module/hrm/service/performance/assessment`
- [Manufacturing](https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-mes/yudao-module-mes-server/src/main/java/cn/iocoder/yudao/module/mes/service): `yudao-module-mes/yudao-module-mes-server/src/main/java/cn/iocoder/yudao/module/mes/service`
- [Office collaboration](https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-oa/yudao-module-oa-server/src/main/java/cn/iocoder/yudao/module/oa/service): `yudao-module-oa/yudao-module-oa-server/src/main/java/cn/iocoder/yudao/module/oa/service`

### Platform capabilities

- [AI services](https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-ai/yudao-module-ai-server/src/main/java/cn/iocoder/yudao/module/ai/service): `yudao-module-ai/yudao-module-ai-server/src/main/java/cn/iocoder/yudao/module/ai/service`
- [IoT services](https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-iot/yudao-module-iot-server/src/main/java/cn/iocoder/yudao/module/iot/service): `yudao-module-iot/yudao-module-iot-server/src/main/java/cn/iocoder/yudao/module/iot/service`
- [Instant messaging](https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-im/yudao-module-im-server/src/main/java/cn/iocoder/yudao/module/im/service): `yudao-module-im/yudao-module-im-server/src/main/java/cn/iocoder/yudao/module/im/service`
- [Code generation](https://github.com/yunaiv/yudao-cloud/tree/master/yudao-module-infra/yudao-module-infra-server/src/main/java/cn/iocoder/yudao/module/infra/service/codegen): `yudao-module-infra/yudao-module-infra-server/src/main/java/cn/iocoder/yudao/module/infra/service/codegen`

### Other components

- **Web and app users**

## Connections

- Web and app users → Admin authentication: authenticates
- Web and app users → Member authentication: authenticates
- Web and app users → Workflow tasks: uses workflow
- Web and app users → Trade and brokerage: places orders
- Web and app users → Payments and wallets: pays
- Web and app users → Reports and dashboards: views reports
- Web and app users → Code generation: generates code
- HR and performance → Common API types: uses page results (evidence: `yudao-module-hrm/yudao-module-hrm-server/src/main/java/cn/iocoder/yudao/module/hrm/service/performance/assessment/HrmPerformanceAssessmentQueryService.java`)
- Trade and brokerage → Common API types: uses page results (evidence: `yudao-module-mall/yudao-module-trade-server/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderQueryService.java`)
- Trade and brokerage → Common utilities: uses collections (evidence: `yudao-module-mall/yudao-module-trade-server/src/main/java/cn/iocoder/yudao/module/trade/service/brokerage/BrokerageRecordService.java`)
