2026-06-12 10:45:45 +08:00
|
|
|
|
# 改动记录
|
|
|
|
|
|
|
|
|
|
|
|
## 2026-06-12
|
|
|
|
|
|
|
|
|
|
|
|
### 后台长时间运行后首页登录态不同步
|
|
|
|
|
|
|
|
|
|
|
|
问题现象:
|
|
|
|
|
|
|
|
|
|
|
|
- APP 后台运行较长时间后再次进入。
|
|
|
|
|
|
- 商家首页显示未登录或无法及时获取商家信息。
|
|
|
|
|
|
- “我的”页面仍显示已登录。
|
|
|
|
|
|
- 从“我的”页面切回首页后,首页才能正常获取商家信息。
|
|
|
|
|
|
|
|
|
|
|
|
涉及文件:
|
|
|
|
|
|
|
|
|
|
|
|
- `App.vue`
|
|
|
|
|
|
- `pages/home/home.vue`
|
|
|
|
|
|
- `utils/request.js`
|
|
|
|
|
|
|
|
|
|
|
|
改动内容:
|
|
|
|
|
|
|
|
|
|
|
|
- `App.vue`
|
|
|
|
|
|
- 在全局 `onShow` 中新增 `uni.$emit('appShowRefresh')`。
|
|
|
|
|
|
- APP 从后台恢复前台时主动通知页面刷新状态,避免只依赖页面级 `onShow`。
|
|
|
|
|
|
|
|
|
|
|
|
- `pages/home/home.vue`
|
|
|
|
|
|
- 新增 `refreshPageState` 方法,统一处理首页登录态刷新。
|
|
|
|
|
|
- `onShow`、下拉刷新、APP 前台恢复事件都调用同一套刷新逻辑。
|
|
|
|
|
|
- `onLoad` 注册 `appShowRefresh` 事件。
|
|
|
|
|
|
- `onUnload` 解除 `appShowRefresh` 事件,避免重复监听。
|
|
|
|
|
|
- 有 token 时主动重新请求 `/sj/user/getUser`。
|
|
|
|
|
|
- 无 token 时清空 `userInfo`、`authDetails`、`sjId`,并重置 `isUserInfoLoaded`。
|
|
|
|
|
|
- `getUserInfo` 请求成功后显式设置 `isLogin = true` 和 `isUserInfoLoaded = true`。
|
|
|
|
|
|
- `getUserInfo` 请求失败时,如果本地 token 已被清理,则同步首页为未登录状态。
|
|
|
|
|
|
|
|
|
|
|
|
- `utils/request.js`
|
|
|
|
|
|
- `refreshToken` 兼容后端返回结构:
|
|
|
|
|
|
- 支持 token 在 `res.access_token`。
|
|
|
|
|
|
- 支持 token 在 `res.data.access_token`。
|
|
|
|
|
|
- 刷新 token 成功后同步更新:
|
|
|
|
|
|
- `accessToken`
|
|
|
|
|
|
- `refreshToken`
|
|
|
|
|
|
- `refresh_token_expries`
|
|
|
|
|
|
- 如果刷新接口成功但没有返回 `access_token`,主动抛错,避免写入 `undefined` token。
|
|
|
|
|
|
|
|
|
|
|
|
验证情况:
|
|
|
|
|
|
|
|
|
|
|
|
- 已检查相关 diff,未做全文件重构。
|
|
|
|
|
|
- `pages/home/home.vue` 原文件为 CRLF 行尾;为避免整文件行尾改造造成大面积 diff,本次保留原行尾。
|
|
|
|
|
|
- 项目 `package.json` 未配置 build/lint 脚本,未执行完整构建校验。
|
2026-06-12 11:33:33 +08:00
|
|
|
|
|
|
|
|
|
|
### 订单详情顾客头像被挤压
|
|
|
|
|
|
|
|
|
|
|
|
问题现象:
|
|
|
|
|
|
|
|
|
|
|
|
- `pages/shop/SellerDetail` 页面“顾客信息”一栏中,客户头像在部分图片比例下显示被拉伸或挤压。
|
|
|
|
|
|
|
|
|
|
|
|
涉及文件:
|
|
|
|
|
|
|
|
|
|
|
|
- `pages/shop/SellerDetail.vue`
|
|
|
|
|
|
|
|
|
|
|
|
改动内容:
|
|
|
|
|
|
|
|
|
|
|
|
- 给顾客头像 `<image>` 增加 `mode="aspectFill"`,按头像容器比例裁剪填充,避免原图比例不一致时被拉伸。
|
|
|
|
|
|
- 为 `.shop_photo` 增加 `min-width` 和 `min-height`,在 flex 布局中进一步锁定头像为固定正方形尺寸。
|
|
|
|
|
|
|
|
|
|
|
|
验证情况:
|
|
|
|
|
|
|
|
|
|
|
|
- 已执行 `pages/shop/SellerDetail.vue` 与 `CHANGE_RECORD.md` 的空白格式检查。
|
|
|
|
|
|
|
|
|
|
|
|
### 核销成功后工时/工位订单详情跳转错误
|
|
|
|
|
|
|
|
|
|
|
|
问题现象:
|
|
|
|
|
|
|
|
|
|
|
|
- 商家扫码核销或输入核销码核销成功后,工时订单和工位订单跳转到详情页时参数或页面类型不正确。
|
|
|
|
|
|
- 工时订单会进入工位详情链路,工位订单会落到普通订单详情链路。
|
|
|
|
|
|
|
|
|
|
|
|
涉及文件:
|
|
|
|
|
|
|
|
|
|
|
|
- `pages/shop/verify/verify-order-detail.vue`
|
|
|
|
|
|
|
|
|
|
|
|
改动内容:
|
|
|
|
|
|
|
|
|
|
|
|
- 新增 `getOrderDetailUrl`,统一按 `order_type` 生成核销成功后的详情页地址。
|
|
|
|
|
|
- `order_type=3` 工时订单跳转到 `/pages/shop/SellerDetail?order_id=...&identity=1`,使用手艺人工时订单详情链路。
|
|
|
|
|
|
- `order_type=4` 工位订单跳转到 `/pages/shop/SellerDetail?order_id=...`,使用商家工位订单详情链路。
|
|
|
|
|
|
- `order_type=6` 自营订单跳转普通订单详情并携带 `serviceType=2`。
|
|
|
|
|
|
- 其他普通订单跳转普通订单详情,不再误携带自营参数。
|
|
|
|
|
|
|
|
|
|
|
|
验证情况:
|
|
|
|
|
|
|
|
|
|
|
|
- 已执行 `pages/shop/verify/verify-order-detail.vue` 与 `CHANGE_RECORD.md` 的空白格式检查。
|