# DLBDI Web

大连市大数据研究院用户 Web / 管理端原型，当前已接入本地统一后端。

## Getting Started

先启动后端：

```bash
cd ../backend
npm run db:migrate:lite
npm run start:lite
```

再启动 Web：

```bash
npm run dev
```

Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.

默认接口地址：

- `NEXT_PUBLIC_API_BASE_URL=http://localhost:4000/api`
- Docker/生产环境中，浏览器侧可用 `NEXT_PUBLIC_API_BASE_URL=/api`，Next 服务端读取后端数据必须配置 `SERVER_API_BASE_URL=http://backend:4000/api`
- `NEXT_PUBLIC_ADMIN_TOKEN` 仅在需要显式启用开发管理员令牌时配置；生产环境默认不带 `dev-admin-token`

已接入真实本地接口：

- 登录/注册：手机号验证码接口；开发环境获取验证码时可返回并自动填入 `123456`，生产环境不返回演示验证码
- 用户端：购物车结算、创建订单、PC 微信 Native 扫码支付、本地开发支付成功、我的订单、交付任务
- 管理端：首页订单/成交额/任务/专家分账，内容页商品发布/下架，优惠码创建
- 统一登录：`/login`，普通用户、管理端、员工端、顾问端、专家端都从这里进入，均使用手机号 + 验证码
- 员工端数据：复用后端 `/api/staff/tasks`，管理端首页可更新任务状态

## 支付

Web 端结算页按接口地址自动选择支付渠道：

- `NEXT_PUBLIC_API_BASE_URL` 指向 `localhost` / `127.0.0.1` 时，默认使用 `dev` 支付，便于本地完整测试订单和权益发放。
- 生产域名下默认使用 `wechat_native`，创建支付单后显示微信扫码二维码，并每 2 秒查询 `/api/payment-orders/:paymentNo/status`。
- 支付成功必须以后端微信回调验签后的状态为准，前端只负责展示二维码、轮询状态和跳转成功页。

生产 Web 建议配置：

```env
NEXT_PUBLIC_API_BASE_URL=/api
SERVER_API_BASE_URL=http://backend:4000/api
```

后端生产环境必须同时配置微信支付证书、APIv3 密钥、商户号、AppID 和回调地址，详见 `../backend/README.md`。

You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome!

## Deploy on Vercel

The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.

Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details.
