# 目录结构整理方案

## 📋 职责划分

### services/ - 业务服务层
**职责**：对外提供业务逻辑服务，处理业务相关的操作
- 职位服务（job_service.js）
- 账号服务（pla_account_service.js）
- AI服务（ai_service.js）
- OSS服务（ossTool.js）
- 工作管理服务（jobManager.js）
- 聊天管理服务（chatManager.js）
- 简历管理服务（resumeManager.js）

### middleware/ - 中间件层
**职责**：系统级功能，基础设施服务
- 调度系统（schedule/）
- MQTT通信（mqtt/）
- 数据库代理（dbProxy.js）
- 日志代理（logProxy.js）

## 🔄 需要移动的文件

### 1. 从 middleware/job/ 移到 services/
- `jobManager.js` → `services/job_manager_service.js`
- `chatManager.js` → `services/chat_manager_service.js`
- `resumeManager.js` → `services/resume_manager_service.js`

### 2. 合并重复的AI服务
- `middleware/job/aiService.js` 和 `services/ai_service.js` 合并
- 保留 `services/ai_service.js`，删除 `middleware/job/aiService.js`

### 3. 处理未使用的文件
- `services/task_scheduler.js` - 标记为废弃或删除（实际未使用）

## 📁 整理后的目录结构

```
api/
├── services/                    # 业务服务层
│   ├── index.js                # 服务管理器
│   ├── ai_service.js            # AI服务（合并后）
│   ├── job_service.js          # 职位服务
│   ├── pla_account_service.js  # 账号服务
│   ├── ossTool.js              # OSS服务
│   ├── job_manager_service.js  # 工作管理服务（从middleware/job/移入）
│   ├── chat_manager_service.js # 聊天管理服务（从middleware/job/移入）
│   └── resume_manager_service.js # 简历管理服务（从middleware/job/移入）
│
└── middleware/                  # 中间件层
    ├── schedule/               # 调度系统
    │   ├── index.js
    │   ├── taskQueue.js
    │   ├── command.js
    │   └── ...
    ├── mqtt/                   # MQTT通信
    ├── dbProxy.js             # 数据库代理
    └── logProxy.js            # 日志代理
```

