# Excel商品数据处理工具

## 项目简介

Excel商品数据处理工具是一个基于Node.js开发的Web应用，用于上传、编辑和下载Excel文件中的商品数据。该工具提供了友好的Web界面，允许用户对Excel数据进行在线编辑，并支持将修改后的数据下载为新的Excel文件。

## 主要功能

- Excel文件上传与解析
- 在线数据编辑
- Excel文件导出
- 图片上传至阿里云OSS存储
- 自动检查数据格式和长度限制

## 技术栈

- **后端**: Node.js, Express
- **前端**: HTML, JavaScript, CSS
- **数据处理**: xlsx库
- **文件上传**: multer
- **云存储**: 阿里云OSS

## 安装与运行

### 前置条件

- Node.js (v12.0.0或更高版本)
- npm包管理器

### 安装步骤

1. 克隆项目到本地
   ```
   git clone <项目仓库地址>
   cd plugin/goods-excel
   ```

2. 安装依赖
   ```
   npm install
   ```

3. 配置环境变量
   创建`.env`文件并设置以下变量:
   ```
   OSS_ACCESS_KEY_ID=<阿里云OSS访问密钥ID>
   OSS_ACCESS_KEY_SECRET=<阿里云OSS访问密钥Secret>
   OSS_BUCKET=<阿里云OSS存储桶名称>
   OSS_ENDPOINT=<阿里云OSS终端节点>
   ```

4. 启动服务器
   ```
   node app.js
   ```

5. 在浏览器中访问
   ```
   http://localhost:3100
   ```

## 使用说明

1. 在网页界面上传Excel文件（支持.xlsx格式）
2. 系统会解析并显示Excel中的数据
3. 可以在线编辑数据内容
4. 编辑完成后，点击保存按钮导出为新的Excel文件
5. 对于需要上传的图片，会自动上传至阿里云OSS并生成链接

## 注意事项

- Excel单元格内容长度不能超过32767个字符，系统会自动检查并提示
- 上传的文件会暂存在服务器，下载完成后会自动清理
- 图片上传需要正确配置阿里云OSS的访问凭证

## 项目结构

```
plugin/goods-excel/
├── app.js            # 应用主入口
├── .env              # 环境变量配置
├── public/           # 静态资源目录
│   └── index.html    # Web界面
├── routes/           # 路由文件
│   └── upload.js     # 上传相关路由
├── downloads/        # 下载文件临时目录
├── uploads/          # 上传文件临时目录
└── package.json      # 项目依赖配置
```

## 许可证

ISC 