Files

89 lines
2.1 KiB
Markdown
Raw Permalink Normal View History

2026-07-20 15:31:52 +08:00
# 接入 HashMall 商城
独立项目验证完成后,将 `src/pages/customer-service`、`src/components/customer-service`、`src/api`、`src/services`、`src/config`、`src/adapters` 和客服静态资源合入商城工程。
## 1. 注册页面
建议在商城 `pages.json` 中将客服页放入分包:
```json
{
"root": "pages/customer_service_package",
"pages": [
{
"path": "chat/chat",
"style": {
"navigationBarTitleText": "在线客服",
"navigationBarBackgroundColor": "#FFFFFF",
"navigationBarTextStyle": "black"
}
}
]
}
```
合入分包时需要同步调整 `hashmall.js` 中的 `CHAT_ROUTE` 和页面内 `@/` 引用路径。
## 2. 初始化商城适配
商城启动后设置登录页。应用级 Authorization 应由商城现有配置注入,不要复制到客服源码或提交 Git。
```js
configureHashMallIntegration({
loginPage: '/pages/login_package/login/login',
appAuthorization: Authorization
})
```
客服请求会继续读取商城已有的:
- Token:`fcc-token`
- 用户缓存:`fcc-user-data`
- 用户详情接口:`/user/getUserInfo`
## 3. “我的”页入口
把当前客服电话弹窗或第三方客服跳转替换为:
```js
openCustomerService()
```
## 4. 商品详情入口
```js
openProductConsultation({
goodsId: goods.id,
goodsName: goods.name,
goodsMainGraph: goods.mainGraph,
currentPrice: goods.currentPrice
})
```
页面只把该对象作为待发送预览。正式发送前后端仍需按 `goodsId` 校验并补齐可信商品信息。
## 5. 订单入口
```js
openOrderConsultation({
id: order.id,
orderNo: order.orderNo,
goodsName: order.goodsName,
goodsMainGraph: order.goodsMainGraph,
payAmount: order.payAmount
})
```
正式发送前后端必须校验订单归属当前登录用户。
## 6. 小程序配置
微信公众平台需要配置测试或正式环境的:
- request 合法域名
- socket 合法域名
- uploadFile 合法域名
- downloadFile 合法域名
测试环境 API 为 `https://api.o.tbmall.xin`,Socket 使用对应的 `wss://api.o.tbmall.xin`。