# my-erp **Repository Path**: elfbobo_admin_admin/my-erp ## Basic Information - **Project Name**: my-erp - **Description**: 哇噻ERP — 开源业财一体化系统。支持销售/采购/库存/财务、多公司账套、万里牛订单与库存同步;销售/采购退货可自动或手动关联原单(XD 系统单号、线上订单号、快递子母单)。Vue3 + FastAPI + Docker 一键部署。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2026-06-26 - **Last Updated**: 2026-06-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 哇噻ERP 开源业财一体化 ERP:销售 · 采购 · 库存 · 财务 · 多公司账套 · 万里牛电商对接。 欢迎 Fork、部署自用;**请勿将 `.env` 中的密钥提交到 Git**(见 [SECURITY.md](SECURITY.md))。 | 层级 | 技术 | |------|------| | 后端 | Python FastAPI · SQLAlchemy · PostgreSQL · Redis | | 前端 | Vue 3 · Element Plus · Vite | | 连接器 | FastAPI(万里牛同步 / 字段映射控制台) | | 部署 | Docker Compose(阿里云 ECS 单机 bundled 模式) | ### Gitee 仓库简介(可复制到「设置 → 基本信息」) > 哇噻ERP — 开源业财一体化系统。支持销售/采购/库存/财务、多公司账套、万里牛订单与库存同步;销售/采购退货可自动或手动关联原单(XD 系统单号、线上订单号、快递子母单)。Vue3 + FastAPI + Docker 一键部署。 --- ## 功能概览 | 模块 | 说明 | |------|------| | **销售** | 销售订单、出库、退货;退货可关联原销售单,订单详情可查看关联退货 | | **采购** | 采购订单、入库、退货;退货可关联原采购单 | | **库存** | 多仓库、批次、包材耗材领用 | | **财务** | 应收应付、凭证;可配置「电商发货即确认应收」 | | **多公司** | 账套切换、租户隔离 | | **万里牛** | 连接器同步订单/库存/退货入库;ERP 内连接器工作台与独立控制台 | ### 万里牛单号约定 | 代号 | 含义 | 退货关联 | |------|------|----------| | **XD** | 系统订单号 | ✅ 优先匹配销售单 `order_no` | | **线上订单号** | 平台单号 `tp_tid` | ✅ 次优先 | | **快递单号** | 发货/退货运单,支持**子母单逗号分隔** | ✅ 再次匹配 | | **XC** | 出库单号 | ❌ 不参与退货自动关联 | 销售退货自动关联优先级:**XD → 线上订单号 → 快递单号**。历史数据可在「销售退货」页使用 **补关联未匹配**。 采购退货按 **原采购单号 / 供应商单号** 关联,详见 [CHANGELOG.md](CHANGELOG.md)。 --- ## 公开仓库与安全 本仓库**只含代码与 `.env.example` 占位符**,不含: - 真实 API Key、数据库密码、JWT 密钥 - 企业名称、店铺名、公网 IP 等私有配置 - 内部验收文档(在 `.gitignore` 的 `docs/` 等目录,仅保留本地) 部署前请阅读 **[SECURITY.md](SECURITY.md)**,自行填写 `backend/.env`、`connector/.env`、`deploy/aliyun/.env`。 --- ## 本地开发(可选) ```bash docker compose up -d cd backend && cp .env.example .env && pip install -r requirements.txt alembic upgrade head && uvicorn app.main:app --reload --port 8000 cd frontend && npm install && npm run dev ``` 默认账号:租户 `1` · 用户 `admin` · 密码见 `backend/.env`(开发示例 `admin123`)。 --- ## 阿里云 ECS 部署 适用于 **2G 内存及以上** 单机:Docker 内置 PostgreSQL + Redis + Backend + Frontend(Nginx) + Connector。 详细步骤见 [deploy/aliyun/README.md](deploy/aliyun/README.md);已有服务器增量更新见 [deploy/aliyun/ECS_UPDATE.md](deploy/aliyun/ECS_UPDATE.md)。 ### 一、环境要求 #### ECS 必装 | 软件 | 用途 | |------|------| | **Git** | 拉取代码 | | **Docker + Docker Compose** | 运行全部服务 | ECS **不需要** Node/Python/PostgreSQL(均在容器内)。2G 机器请在开发机 `npm run build` 后上传 `frontend/dist`。 #### 开发机构建前端额外需要 **Node.js 20+**、npm #### 网络 安全组放行 **TCP 80**。 ### 二、配置文件 ```bash git clone https://gitee.com/wzqsxfyboy/my-erp.git cd my-erp cp deploy/aliyun/.env.example deploy/aliyun/.env cp backend/.env.example backend/.env cp connector/.env.example connector/.env ``` | 文件 | 必改项 | |------|--------| | `deploy/aliyun/.env` | 公网 IP、`POSTGRES_PASSWORD`、`CONNECTOR_SECRET` | | `backend/.env` | `SECRET_KEY`、`DEFAULT_ADMIN_PASSWORD`、`CONNECTOR_SECRET` | | `connector/.env` | 万里牛 `WN_APP_KEY`/`WN_APP_SECRET`、`CONNECTOR_SECRET`、`ERP_PASSWORD` | ```bash openssl rand -hex 32 # 生成 SECRET_KEY / CONNECTOR_SECRET ``` ### 三、部署顺序(新服务器) 1. 开发机:`cd frontend && npm ci && npm run build`,上传 `dist` 到 ECS 2. ECS:`git clone` → 解压 `dist` → 编辑三个 `.env` 3. `chmod +x deploy/aliyun/*.sh && bash deploy/aliyun/first-install.sh` 4. `bash deploy/aliyun/deploy.sh verify` 5. 浏览器访问 `http://你的公网IP` ### 四、日常更新 在 ECS **Workbench 终端**里粘贴**一行**即可(自动迁移、容器内构建前端、重启): ```bash cd /www/wwwroot/erp && git pull origin main && bash deploy/aliyun/update.sh ``` 等 5~15 分钟出现「更新完成」后,浏览器打开 ERP → **销售退货** → **补关联未匹配**。 ### 五、常见问题 | 现象 | 命令 | |------|------| | ERP 502 | `bash deploy/aliyun/fix-backend-502.sh` | | 连接器乱码 | `bash deploy/aliyun/fix-connector.sh` | | 登录后 500 | `bash deploy/aliyun/deploy.sh fix-schema` | --- ## 最近更新 完整记录见 [CHANGELOG.md](CHANGELOG.md);发版流程见 [RELEASE_CHECKLIST.md](RELEASE_CHECKLIST.md)。 | 日期 | 摘要 | |------|------| | 2025-06 | 包材标记:商品打标(礼盒/玻瓶等),包材策略按标记统一配置 | | 2025-06 | 销售退货关联:仅 XD / 线上订单号 / 快递单号;子母单逗号匹配 | | 2025-06 | 采购退货关联原采购单;包材耗材;财务「发货确认应收」开关 | | 2025-06 | 多平台连接器凭证、万里牛 Key 向导;品牌统一为「哇噻ERP」 | --- ## 目录 ``` backend/ FastAPI 业务 API、Alembic 迁移 frontend/ Vue SPA connector/ 万里牛连接器(订单/库存/退货入库映射) deploy/aliyun/ ECS 部署脚本与更新清单 connector-example/ 第三方对接示例 ``` --- ## 许可 代码开源可自由部署学习使用;商用请保留项目署名。