89 lines
2.1 KiB
Markdown
89 lines
2.1 KiB
Markdown
# 接入 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`。
|