44 lines
1.5 KiB
Markdown
44 lines
1.5 KiB
Markdown
# SuggestPrice
|
|
|
|
Gợi ý giá listing cho một SKU dựa trên: lịch sử giá supplier (ERP) + giá eBay (đang bán / đã bán) → đưa GPT suggest giá.
|
|
|
|
## Trạng thái hiện tại
|
|
Đang chạy bằng **MOCK DATA**. Các service `erp`, `ebay`, `gpt` đều trả dữ liệu giả lập, sẵn cấu trúc để cắm API thật sau (xem `USE_MOCK` trong `.env`).
|
|
|
|
## Cấu trúc
|
|
```
|
|
SuggestPrice/
|
|
├─ server/ # Express API (Node, ESM)
|
|
└─ web/ # React + Vite + Recharts
|
|
```
|
|
|
|
## Chạy (2 terminal)
|
|
|
|
```bash
|
|
# Terminal 1 - backend (cổng 3001)
|
|
cd server
|
|
cp .env.example .env
|
|
npm install
|
|
npm run dev
|
|
|
|
# Terminal 2 - frontend (cổng 5173, proxy /api -> 3001)
|
|
cd web
|
|
npm install
|
|
npm run dev
|
|
```
|
|
|
|
Mở http://localhost:5173 → nhập SKU bất kỳ + chọn condition → Suggest.
|
|
|
|
## API
|
|
`POST /api/suggest-price` body: `{ "sku": "ABC123", "condition": "USED" }`
|
|
|
|
Trả về: `aiSuggestion`, `supplierSeries[]`, `ebayActiveSeries[]`, `ebaySoldSeries[]`.
|
|
|
|
## Khi có API thật
|
|
1. ERP: điền `ERP_API_URL` / `ERP_API_KEY`, hoàn thiện `server/src/services/erpService.js`.
|
|
2. eBay: điền `EBAY_CLIENT_ID` / `EBAY_CLIENT_SECRET`, hoàn thiện `server/src/services/ebayService.js`
|
|
- Active listings: Browse API (dùng được ngay).
|
|
- Sold listings: Marketplace Insights API (cần eBay duyệt - Limited Release).
|
|
3. GPT: điền `OPENAI_API_KEY`, bỏ comment phần thật trong `server/src/services/gptService.js`.
|
|
4. Đặt `USE_MOCK=false` trong `.env`.
|