mrr.sj.front/CHANGE_RECORD.md

3.5 KiB
Raw Permalink Blame History

改动记录

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 时清空 userInfoauthDetailssjId,并重置 isUserInfoLoaded
    • getUserInfo 请求成功后显式设置 isLogin = trueisUserInfoLoaded = 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 脚本,未执行完整构建校验。

订单详情顾客头像被挤压

问题现象:

  • pages/shop/SellerDetail 页面“顾客信息”一栏中,客户头像在部分图片比例下显示被拉伸或挤压。

涉及文件:

  • pages/shop/SellerDetail.vue

改动内容:

  • 给顾客头像 <image> 增加 mode="aspectFill",按头像容器比例裁剪填充,避免原图比例不一致时被拉伸。
  • .shop_photo 增加 min-widthmin-height,在 flex 布局中进一步锁定头像为固定正方形尺寸。

验证情况:

  • 已执行 pages/shop/SellerDetail.vueCHANGE_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.vueCHANGE_RECORD.md 的空白格式检查。