企业ERP系统产品系统

我要开发同款
proginn15301090182025年08月24日
68阅读

技术信息

语言技术
PythonTypeScriptNode.jselectronMySQL

作品详情

功能介绍

本项目是一个基于Next.js开发的虾皮电商平台专用ERP管理系统,提供订单管理、入库管理、物流管理等功能。

## 功能特点

- **入库管理**:管理产品入库流程,记录库存信息
- **订单管理**:处理订单,跟踪订单状态
- **待发货订单**:查看和处理待发货的订单
- **物流管理**:跟踪物流状态,管理物流信息
- **店铺管理**:管理多个店铺
- **系统设置**:配置系统参数

## 技术栈

- **前端**:Next.js 14, React 18, TailwindCSS
- **后端**:FastAPI (Python)
- **数据库**:MySQL
- **部署**:支持Docker容器部署

## 安装与启动

### 系统要求

- Node.js 18+
- PNPM (推荐) 或 NPM
- MySQL 8.0+
- Python 3.8+ (后端)

### 安装步骤

1. 克隆本仓库
```
git clone
cd erp-system
```

2. 安装前端依赖
```
pnpm install
```

3. 配置环境变量
创建`.env.local`文件并添加以下配置:
```
NODE_OPTIONS=--dns-result-order=ipv4first
HOSTNAME=127.0.0.1
HOST=127.0.0.1
NEXT_PUBLIC_HOST=127.0.0.1
NEXT_PUBLIC_API_BASE_URL=http://127.0.0.1:8000/api/v1
NEXT_TELEMETRY_DISABLED=1
NEXT_PRIVATE_HOST=127.0.0.1
```

4. 启动后端服务器
```
cd bak/backend
uvicorn app.main:app --host 0.0.0.0 --port 8000 --reload
```

5. 启动前端开发服务器
```
pnpm dev
```

6. 访问系统
在浏览器中打开 [http://127.0.0.1:8090](http://127.0.0.1:8090)

### 使用快捷启动脚本

我们提供了多个批处理脚本,用于简化启动和修复过程:

- `修复并启动.bat`:修复Radix UI问题并启动前端
- `直接进入系统.bat`:跳过登录直接进入系统
- `直接进入系统完整版.bat`:同时启动前后端并跳过登录

## 项目结构

```
erp-system/

├── app/ # Next.js应用目录
│ ├── api/ # API路由和工具
│ ├── components/ # 公共组件
│ ├── context/ # 上下文管理
│ ├── inventory/ # 库存管理模块
│ ├── orders/ # 订单管理模块
│ ├── stocks/ # 入库管理模块(新)
│ ├── shipping/ # 物流管理模块
│ ├── stores/ # 店铺管理模块
│ └── settings/ # 系统设置模块

├── components/ # UI组件
│ ├── ui/ # UI基础组件
│ └── ... # 其他组件

├── lib/ # 工具库

├── bak/ # 备份和后端代码
│ └── backend/ # Python后端代码

├── public/ # 静态资源

└── ...
```

## API接口

系统主要使用以下API接口:

- `/api/v1/stocks/`:入库管理相关API
- `/api/v1/orders/`:订单管理相关API
- `/api/v1/stores/`:店铺管理相关API
- `/api/v1/shipping/`:物流管理相关API

## 常见问题解决

### React无限循环渲染问题

如遇到"Maximum update depth exceeded"错误,请运行以下修复脚本:

```
node fix-presence-issue.js
node fix-compose-refs.js
```

### 数据库连接问题

如遇到数据库连接问题,请运行:

```
修复数据库权限.bat
```

## 贡献指南

如果您想为项目贡献代码,请遵循以下步骤:

1. Fork本仓库
2. 创建功能分支 (`git checkout -b feature/amazing-feature`)
3. 提交更改 (`git commit -m 'Add some amazing feature'`)
4. 推送到分支 (`git push origin feature/amazing-feature`)
5. 发起Pull Request

示例图片

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论