# erp **Repository Path**: Debugman/erp_1 ## Basic Information - **Project Name**: erp - **Description**: 旭创ERP 5.1是一套面向智能制造4.0的企业资源计划系统,基于Java 21、Spring Boot与Vue 3前后端分离架构。集成68+业务模块,覆盖销售、采购、库存、财务、生产、MRP、质量等核心流程,支持集团多组织管理与SaaS多租户,融合DeepSeek AI智能与工作流引擎,是制造企业数字化转型的一体化解决方案。 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2026-08-17 - **Last Updated**: 2026-08-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 旭创ERP系统 v4.2 一个功能完整的智能制造4.0企业资源计划管理系统,集成68+业务模块,覆盖集团多组织管理、AI智能(DeepSeek大模型)、大数据分析、边缘计算、工作流引擎、规则引擎和智能制造适配等企业级功能。 > **当前版本**: 4.2.145 | **JDK**: 21+ | **Spring Boot**: 3.5.14 | **Vue**: 3.5.34 ## 功能特性 ### 核心业务功能 - ✅ **销售管理 (Sales)** - 销售订单、销售计划、销售分析、报价管理 - ✅ **采购管理 (Purchase)** - 采购订单、采购计划、采购收货、供应商对账 - ✅ **库存管理 (Inventory)** - 库存查询、库存转移、库存预警、盘点管理 - ✅ **仓储管理 (Warehouse)** - 仓库管理、出入库、库位管理、条码管理 - ✅ **财务管理 (Finance)** - 凭证管理、应收应付、成本核算、总账、税务管理、资金管理 - ✅ **费用管理 (Expense)** - 费用报销、预算管理、费用审批 - ✅ **出纳管理 (Cashier)** - 银行日记账、现金日记账、银行对账 - ✅ **生产管理 (Production)** - 生产计划、工单管理、工序管理、报工管理 - ✅ **车间管理 (Workshop)** - 车间排产、产线管理、电子看板 - ✅ **MRP/MPS (MRP)** - 物料需求计划、主生产计划、BOM展开 - ✅ **客户关系管理 (CRM)** - 客户信息、商机管理、服务管理、知识库 - ✅ **供应商管理 (SRM)** - 供应商信息、采购合同、报价管理、绩效评估、供应商门户 - ✅ **人力资源管理 (HRM)** - 员工档案、绩效管理、招聘管理、薪资管理、培训管理 - ✅ **设备管理 (Equipment)** - 设备档案、设备维护、检验计划、非合格品管理 - ✅ **质量管理 (Quality)** - 质量检验、质量成本、SPC分析 - ✅ **项目管理 (Project)** - 项目管理、里程碑、进度跟踪、资源协调、项目文档、项目风险 - ✅ **物流管理 (Logistics)** - 运输管理、配送管理、物流跟踪 - ✅ **零售管理 (Retail)** - 会员管理、POS零售、门店管理 - ✅ **营销管理 (Marketing)** - 营销活动、促销管理、渠道管理 - ✅ **资产管理 (Asset)** - 固定资产、资产盘点、折旧管理 - ✅ **外协管理 (Outsourcing)** - 外协订单、外协收货、外协对账 - ✅ **成本管理 (Cost)** - 成本核算、成本分析、标准成本 - ✅ **预算管理 (Budget)** - 预算编制、预算执行、预算分析 - ✅ **PLM管理 (PLM)** - 产品生命周期、BOM管理、工程变更(ECN) - ✅ **供应链管理 (SupplyChain)** - 供应链协同、需求预测、供应计划 ### 智能制造4.0功能 - ✅ **集团多组织管理** - 多账套管理、多权限管理、多维度数据合并 - ✅ **AI智能模块** - DeepSeek大模型集成、RAG企业知识库(pgvector)、智能审批、生产数据异常预警 - ✅ **智能制造适配** - MES接口、WMS接口、APS接口集成 - ✅ **边缘计算模块** - 边缘AI推理、边缘数据处理、边缘离线支持 - ✅ **大数据模块** - 时序数据库、预测分析、数据仓库、数据湖 - ✅ **工作流引擎 (Workflow)** - BPMN 2.0建模、流程审批、流程监控 - ✅ **规则引擎 (RuleEngine)** - 业务规则配置、自动决策 - ✅ **表单引擎 (FormEngine)** - 动态表单设计、表单渲染 - ✅ **状态机 (StateMachine)** - 业务状态流转、状态机配置 - ✅ **通知管理模块** - 通知管理、通知模板、消息发送、WebSocket实时推送 ### 外部集成 - ✅ **税务发票** - 金税、航天信息、百望、税友(默认Mock模式) - ✅ **银企直联** - 工行、中行、建行、农行(默认Mock模式) - ✅ **电商平台** - 淘宝、京东等(默认Mock模式) - ✅ **物流平台** - 物流对接、运单管理(默认Mock模式) - ✅ **渠道门户 (ChannelPortal)** - 经销商自助门户 - ✅ **供应商门户** - 供应商自助下单、对账 - ✅ **移动应用 (Mobile)** - 移动端支持 ### 报表分析 - ✅ **销售分析** - 销售趋势、对比分析、TOP分析 - ✅ **采购分析** - 采购统计和分析 - ✅ **库存分析** - 库存统计和分析 - ✅ **财务分析** - 财务统计和分析 - ✅ **仪表盘** - 数据可视化展示(ECharts) - ✅ **合并报表** - 跨组织合并财务报表 ### SaaS多租户 - ✅ **租户管理** - 租户信息和资源配置 - ✅ **集团注册** - 集团客户注册和初始化 - ✅ **计费管理** - 套餐管理、账单生成、计费管理 - ✅ **订阅管理** - 订阅计划、订阅管理 - ✅ **SaaS运营总控台** - SaaS运营数据总览 - ✅ **多租户隔离** - 单库多租户策略,支持子域名识别 ### 后台管理 - ✅ **管理后台 (Admin)** - 运营概览、系统管理 - ✅ **用户与权限管理** - RBAC权限、数据权限、多组织权限 - ✅ **日志管理** - 日志采集、存储、查询、分析 - ✅ **系统配置** - 参数配置、字典管理 - ✅ **数据备份与恢复** - 备份策略、自动备份 - ✅ **任务调度管理** - 定时任务管理 - ✅ **API管理** - Knife4j API文档、接口管理 - ✅ **打印模板** - 打印模板设计和管理 - ✅ **工业模板** - 行业模板配置 - ✅ **内部审核 (InternalAudit)** - 内审管理 - ✅ **协作管理 (Collaboration)** - 团队协作、消息 - ✅ **扩展字段 (ExtField)** - 自定义扩展字段 - ✅ **模板管理 (Template)** - 业务模板管理 - ✅ **工具集 (Tools)** - 系统工具 ## 技术栈 ### 前端 | 技术 | 版本 | 用途 | |------|------|------| | Vue | 3.5.34 | 核心框架 | | Element Plus | 2.5.1 | UI组件库(自动导入) | | Vite | 5.0.11 | 构建工具 | | Pinia | 2.1.7 | 状态管理 | | Vue Router | 4.2.5 | 路由管理 | | ECharts | 5.4.3 | 图表可视化 | | BPMN.js | 18.16.1 | 工作流BPMN建模 | | FullCalendar | 6.1.20 | 日历组件 | | Axios | 1.6.5 | HTTP客户端(含重试) | | Dayjs | 1.11.10 | 日期处理 | | Marked | 18.0.4 | Markdown渲染 | | Sass | 1.69.7 | CSS预处理器 | ### 后端 | 技术 | 版本 | 用途 | |------|------|------| | Spring Boot | 3.5.14 | 核心框架 | | Java | 21 | 运行时 | | MyBatis-Plus | 3.5.5 | ORM框架 | | Druid | 1.2.23 | 数据库连接池 | | MySQL | 8.0+ | 关系数据库 | | Redis | 6.0+ | 缓存(Lettuce) | | Kafka | 3.1.3 | 消息队列 | | Spring AI | 1.1.7 | AI/LLM集成(DeepSeek) | | pgvector | - | 向量存储(RAG知识库) | | Knife4j | 4.4.0 | API文档(OpenAPI 3) | | Hutool | 5.8.23 | 工具库 | | EasyExcel | 3.3.4 | Excel导入导出 | | MapStruct | 1.5.5 | DTO/Entity自动转换 | | Caffeine | 3.1.8 | 本地缓存 | | Lombok | 1.18.32 | 代码简化 | | Dynamic Datasource | 3.6.1 | 多数据源管理 | | JSqlParser | 4.6 | SQL解析(数据权限) | | JaCoCo | 0.8.11 | 测试覆盖率 | ### 测试 | 技术 | 版本 | 用途 | |------|------|------| | JUnit 5 | - | 后端单元测试 | | Mockito | 4.11.0 | Mock框架 | | H2 | - | 测试内存数据库 | | Vitest | 0.34.6 | 前端单元测试 | | Vue Test Utils | 2.4.1 | Vue组件测试 | | Playwright | 1.59.1 | E2E测试 | ### DevOps | 技术 | 说明 | |------|------| | Maven | 3.8+ 构建工具 | | Node.js | 18.0+ 前端运行时 | | Docker / Docker Compose | 容器化部署 | | Nginx | 1.18+ Web服务器/反向代理 | | GitHub Actions | CI/CD(可选) | ## 系统架构 ``` ┌─────────────────────────────────────────────────────────┐ │ 前端层 (Vue 3) │ │ ┌─────────────────────────────┐ │ │ │ Element Plus UI │ │ │ └─────────────────────────────┘ │ └─────────────────────────────────────────────────────────┘ │ │ HTTP/HTTPS │ ┌─────────────────────────────────────────────────────────┐ │ 应用层 (Spring Boot) │ │ ┌──────────┬──────────┬──────────┬──────────┐ │ │ │ 用户 │ 业务 │ AI │ 大数据 │ │ │ │ 服务 │ 服务 │ 服务 │ 服务 │ │ │ └──────────┴──────────┴──────────┴──────────┘ │ └─────────────────────────────────────────────────────────┘ │ │ ┌─────────────────────────────────────────────────────────┐ │ 数据层 │ │ ┌──────────┬──────────┬──────────┬──────────┐ │ │ │ MySQL │ Redis │ Kafka │ 文件存储 │ │ │ └──────────┴──────────┴──────────┴──────────┘ │ └─────────────────────────────────────────────────────────┘ ``` ## 快速开始 ### 方式一:Docker Compose部署(推荐) 1. 克隆项目 ```bash git clone https://github.com/musicmtv/erp.git cd erp ``` 2. 启动所有服务 ```bash docker-compose up -d ``` 3. 访问系统 - 前端: http://localhost - 后端API: http://localhost:8080/erp - API文档: http://localhost:8080/erp/doc.html - Druid监控: http://localhost:8080/erp/druid/ ### 方式二:本地开发 #### 1. 环境要求 - **JDK** 21+ - **Node.js** 18.0+ - **MySQL** 8.0+ - **Redis** 6.0+ - **Maven** 3.8+(或使用内置 `mvnw`) #### 2. 后端启动 ```bash # 构建项目(跳过测试) ./mvnw clean package -DskipTests # 或直接运行 ./mvnw spring-boot:run # 或打包后运行 java -jar target/erp-4.2.145.jar ``` #### 3. 前端启动 ```bash cd erp-web # 安装依赖 npm install # 启动开发服务器(端口3000,支持热更新) npm run dev # 构建生产版本 npm run build ``` ### 方式三:一键启动 ```bash # Linux / macOS ./dev.sh ``` ## 默认账号 - 用户名: admin - 密码: 123456 ## 项目结构 ``` erp/ ├── src/ # 后端源代码 │ ├── main/ │ │ ├── java/com/xuchuang/erp/ │ │ │ ├── ai/ # AI智能模块 (DeepSeek/RAG) │ │ │ ├── analytics/ # 数据分析模块 │ │ │ ├── asset/ # 资产管理 │ │ │ ├── bigdata/ # 大数据模块 │ │ │ ├── bom/ # BOM物料清单 │ │ │ ├── budget/ # 预算管理 │ │ │ ├── cashier/ # 出纳管理 │ │ │ ├── channel/ # 渠道管理 │ │ │ ├── channelportal/ # 渠道门户 │ │ │ ├── collaboration/ # 协作管理 │ │ │ ├── common/ # 公共模块 (BaseEntity/Result等) │ │ │ ├── config/ # Spring配置 │ │ │ ├── cost/ # 成本管理 │ │ │ ├── crm/ # 客户关系管理 │ │ │ ├── document/ # 文档管理 │ │ │ ├── ecn/ # 工程变更通知 │ │ │ ├── edge/ # 边缘计算 │ │ │ ├── equipment/ # 设备管理 │ │ │ ├── event/ # 事件管理 │ │ │ ├── expense/ # 费用管理 │ │ │ ├── extfield/ # 扩展字段 │ │ │ ├── finance/ # 财务管理 │ │ │ ├── formengine/ # 表单引擎 │ │ │ ├── gateway/ # API网关 │ │ │ ├── hrm/ # 人力资源管理 │ │ │ ├── industry/ # 行业模板 │ │ │ ├── integration/ # 外部集成(电商/物流/税务/银行) │ │ │ ├── internalaudit/ # 内部审核 │ │ │ ├── inventory/ # 库存管理 │ │ │ ├── logistics/ # 物流管理 │ │ │ ├── lot/ # 批次管理 │ │ │ ├── manufacturing/ # 智能制造适配(MES/WMS/APS) │ │ │ ├── marketing/ # 营销管理 │ │ │ ├── mes/ # MES制造执行 │ │ │ ├── message/ # 消息管理 │ │ │ ├── mobile/ # 移动端 │ │ │ ├── mrp/ # MRP物料需求计划 │ │ │ ├── outsourcing/ # 外协管理 │ │ │ ├── permission/ # 权限管理 │ │ │ ├── plm/ # 产品生命周期管理 │ │ │ ├── print/ # 打印模板 │ │ │ ├── process/ # 流程管理 │ │ │ ├── processchain/ # 流程链 │ │ │ ├── production/ # 生产管理 │ │ │ ├── project/ # 项目管理 │ │ │ ├── purchase/ # 采购管理 │ │ │ ├── quality/ # 质量管理 │ │ │ ├── qualitycost/ # 质量成本 │ │ │ ├── report/ # 报表 │ │ │ ├── retail/ # 零售管理 │ │ │ ├── ruleengine/ # 规则引擎 │ │ │ ├── saas/ # SaaS管理 │ │ │ ├── sales/ # 销售管理 │ │ │ ├── security/ # 安全认证 │ │ │ ├── srm/ # 供应商管理 │ │ │ ├── statemachine/ # 状态机 │ │ │ ├── supplychain/ # 供应链管理 │ │ │ ├── system/ # 系统管理 │ │ │ ├── template/ # 模板管理 │ │ │ ├── tenant/ # 多租户 │ │ │ ├── tools/ # 工具集 │ │ │ ├── user/ # 用户管理 │ │ │ ├── verification/ # 验证码 │ │ │ ├── warehouse/ # 仓储管理 │ │ │ ├── workflow/ # 工作流引擎 │ │ │ └── workshop/ # 车间管理 │ │ └── resources/ │ │ ├── application.yml # 主配置文件 │ │ ├── application-*.yml # 环境配置 (dev/ai/docker等) │ │ ├── mapper/ # MyBatis XML映射 │ │ └── db/ # 数据库脚本 │ └── test/ # 测试代码 (50+模块) ├── erp-web/ # 前端项目 (Vue 3) │ ├── src/ │ │ ├── api/ # API接口层 (107+文件) │ │ ├── assets/ # 静态资源 │ │ ├── components/ # 公共组件 │ │ ├── composables/ # 组合式函数 │ │ ├── config/ # 前端配置 │ │ ├── directives/ # 自定义指令 │ │ ├── layout/ # 布局组件 │ │ ├── router/ # 路由配置 │ │ ├── stores/ # Pinia状态管理 │ │ ├── utils/ # 工具函数 │ │ └── views/ # 页面组件 (55+目录) │ ├── e2e/ # E2E测试 (Playwright) │ ├── package.json │ └── vite.config.mjs ├── sql/ # 数据库DDL (56个SQL文件) ├── deploy/ # 部署配置 │ ├── app-server/ # 应用服务器部署 │ ├── db-server/ # 数据库服务器部署 │ └── vllm-opencode/ # AI模型部署 ├── scripts/ # 构建/部署/测试脚本 ├── pom.xml # Maven配置 ├── docker-compose.yml # 开发环境 ├── docker-compose.prod.yml # 生产环境 └── VERSION # 版本号 ``` ## 核心功能说明 ### 集团多组织管理 - **多账套管理**: 支持多个会计账套,实现财务数据隔离 - **多权限管理**: 基于组织、部门、岗位、人员等多维度的RBAC权限控制 - **多维度数据合并**: 支持跨组织、跨系统、跨账套的数据合并 - **动态数据源**: 基于Dynamic Datasource实现多组织数据源切换 ### AI智能模块 (Spring AI 1.1.7 + DeepSeek) - **RAG企业知识库**: 基于pgvector向量存储,支持文档上传、索引和智能搜索 - **智能审批**: 支持AI辅助审批决策和批量审批 - **生产数据异常预警**: 支持设备数据异常检测和预警处理 - **大模型集成**: 通过Spring AI Starter对接DeepSeek大模型(兼容OpenAI接口) ### 工作流引擎 (BPMN 2.0) - **流程建模**: 基于BPMN.js的可视化流程设计器 - **流程审批**: 多级审批、会签、或签、委托审批 - **流程监控**: 实时流程跟踪、超时提醒 - **Camunda兼容**: 支持Camunda BPMN模型定义 ### 智能制造适配 - **MES接口**: 支持与制造执行系统的数据交互 - **WMS接口**: 支持与仓库管理系统的数据交互 - **APS接口**: 支持与高级计划排程系统的数据交互 - **模式适配**: 支持离散制造和流程制造两种主流模式 ### 边缘计算 - **边缘AI推理**: 支持本地AI模型推理,减少云端依赖 - **边缘数据处理**: 支持实时数据处理和分析 - **边缘离线支持**: 支持断网本地运行,数据自动同步 ### 大数据模块 - **时序数据库**: 支持时间序列数据存储、查询、聚合分析 - **预测分析**: 支持基于历史数据的预测分析 - **数据仓库**: 支持结构化数据存储和管理 - **数据湖**: 支持非结构化数据存储 ### 外部集成平台 - **税务发票**: 金税/航天信息/百望/税友,支持开票、查询、作废、下载 - **银企直联**: 工行/中行/建行/农行,支持转账、余额查询、对账单 - **电商平台**: 淘宝/京东等,支持订单同步、库存同步、发货同步 - **物流平台**: 物流信息对接、运单跟踪 - **渠道门户**: 经销商自助下单、对账、返利查询 - **供应商门户**: 供应商自助报价、对账 ## 适用行业 本系统特别适合以下行业: - **制造业**: 汽车制造、电子制造、机械制造、家电制造等 - **流程工业**: 化工、制药、食品、能源、建材等 - **集团企业**: 多分子公司、多工厂的集团企业 - **成长型企业**: 快速发展中的制造企业 ## 系统特色 1. **智能制造4.0**: 集成AI、大数据、边缘计算等先进技术 2. **集团多组织**: 支持多账套、多权限、多维度数据合并 3. **SaaS多租户**: 支持多租户隔离和计费管理 4. **前后端分离**: 现代化的架构设计,易于维护和扩展 5. **容器化部署**: 支持Docker和Docker Compose一键部署 6. **完整的文档**: 提供详细的部署文档和使用说明 ## 开发文档 - [部署文档](docs_4.0/部署文档.md) - 详细的部署指南 - [功能开发状态核实报告](docs_4.0/功能开发状态核实报告.md) - 功能开发状态 - [核心功能优化方案](docs_4.0/核心功能优化方案.md) - 功能优化方案 - [需求文档](docs_4.0/需求文档.md) - 系统需求说明 ## 开发约定 - **后端context-path**: `/erp` — 所有API路由均以此为前缀 - **Jackson**: 日期格式 `yyyy-MM-dd HH:mm:ss`,时区 GMT+8,排除null字段 - **逻辑删除**: `deleted` 字段(1=已删除,0=正常),MyBatis-Plus自动过滤 - **MyBatis-Plus**: ID策略 `auto`,驼峰映射,空值null处理 - **上传限制**: 100MB(max-file-size + max-request-size) - **Lombok**: `stopBubbling=true`,`@lombok.Generated`,`@ConstructorProperties` - **外部服务**: 税务/银行/电商/物流默认Mock模式,可通过环境变量切换 - **Dev Profile**: 排除Kafka自动配置,启用DevTools热重启 - **Test Profile**: H2内存数据库(MySQL兼容),禁用Druid/Redis/Kafka/DynamicDS - **前端**: 端口3000,`@` → `./src`,Element Plus自动导入 - **模块架构**: 每个业务模块遵循 Entity → Mapper → Service → Impl → Controller 结构 ## 测试 ### 后端测试 ```bash # 运行所有测试(默认跳过部分模块) ./mvnw test # 运行所有测试(包含排除模块) ./mvnw test -DtestExcludes= # 测试覆盖率报告 ./mvnw verify # 生成 JaCoCo 报告 ``` > **注意**: 默认跳过 analytics/asset/bom/document/manufacturing/channel/system 模块的测试,使用 `-DtestExcludes=` 可覆盖。 ### 前端测试 ```bash cd erp-web # 单元测试 (Vitest) npm run test:unit # 单元测试覆盖率 npm run test:coverage # E2E测试 (Playwright) npm run test:e2e # E2E烟雾测试 npm run test:e2e:smoke # E2E测试报告 npm run test:e2e:report ``` ## 环境变量 | 变量 | 默认值 | 说明 | |------|--------|------| | `DB_URL` | `jdbc:mysql://localhost:3306/xuchuang_erp?...` | 数据库连接 | | `DB_USERNAME` | `root` | 数据库用户名 | | `DB_PASSWORD` | *(空)* | 数据库密码 | | `REDIS_HOST` | `localhost` | Redis地址 | | `REDIS_PORT` | `6379` | Redis端口 | | `REDIS_PASSWORD` | *(空)* | Redis密码 | | `KAFKA_BOOTSTRAP_SERVERS` | `127.0.0.1:9092` | Kafka地址 | | `FILE_UPLOAD_PATH` | `./uploads` | 文件上传路径 | | `TENANT_BASE_DOMAIN` | `erp.com` | 租户基础域名 | | `TAX_INVOICE_*` | *(空)* | 税务发票配置 | | `BANK_LINK_*` | *(空)* | 银企直联配置 | | `ECOMMERCE_*` | *(空)* | 电商平台配置 | ## 更新日志 ### v4.2.145 (2026-08) - ✅ 升级 Spring Boot 至 3.5.14,Java 至 21 - ✅ 集成 Spring AI 1.1.7 + DeepSeek 大模型 - ✅ 新增工作流引擎(BPMN 2.0 + BPMN.js) - ✅ 新增规则引擎、表单引擎、状态机模块 - ✅ 新增渠道门户和供应商门户 - ✅ 新增税务发票集成(金税/航天信息/百望/税友) - ✅ 新增银企直联(工行/中行/建行/农行) - ✅ 新增电商平台集成(淘宝/京东) - ✅ 新增物流平台集成 - ✅ 新增MRP物料需求计划模块 - ✅ 新增车间管理和电子看板 - ✅ 新增成本管理和预算管理 - ✅ 新增PLM产品生命周期管理 - ✅ 新增供应链管理和外协管理 - ✅ 新增零售管理和营销管理 - ✅ 新增协作管理和内部审核 - ✅ 后端模块扩展至68+ - ✅ 前端视图扩展至55+目录,API文件107+ - ✅ E2E测试框架 Playwright 集成 - ✅ JaCoCo 测试覆盖率报告 - ✅ 支持 WebSocket 实时推送 - ✅ 支持 SaaS 多租户(单库策略 + 子域名识别) ### v4.0.0 (2026-03-25) - ✅ 完成智能制造适配模块开发 - ✅ 完成AI智能模块开发 - ✅ 完成集团多组织模块开发 - ✅ 完成边缘计算模块开发 - ✅ 完成大数据模块开发 - ✅ 完成通知管理模块开发 - ✅ 支持离散制造和流程制造两种模式 - ✅ 支持MES、WMS、APS系统接口集成 - ✅ 支持RAG企业知识库、智能审批、生产数据异常预警 ## 许可证 Apache License 2.0