xcbyy
|
68e41ca962
|
feat(lbs): 真实距离与按距离派单落地
- 数据库:orders/activities 新增 latitude/longitude(含存量表 ALTER 迁移)
- 服务端:Haversine 计算 distanceKm/distanceText,派单池支持 lat/lng/radius 过滤并按距离升序;历史无坐标订单用腾讯地理编码兜底并回写缓存
- 新增 /api/lbs/reverse 逆地址解析(Key 仅服务端持有,登录 + 限流)
- 小程序:雷达/接单大厅改用真实定位与真实距离,删除全部写死演示距离;下单页新增地图选点,组局页保存选点经纬度
- 修复接单大厅点接单会新建订单的问题,改为真正 claimOrder 认领
- 新增 lbs-distance 护栏(110 套件/729 用例全绿)
|
2026-10-21 14:29:33 +08:00 |
|
xcbyy
|
f3ea26d161
|
feat(admin): 方案A—消息铃铛接真实待办聚合 + 清理空壳接口与空卡片
【消息铃铛(真实数据)】
- POST /api/message/list 改为待办聚合:待接单订单/待审核大神/待审核提现/待处理举报/待仲裁工单(复用 getDashboardTodos + 新增 pendingOrdersCount)
- POST /api/message/read 持久化已读:新表 admin_message_reads 记录"已读时的数量",待办数量增加会重新变未读
- 两个接口均加 requireAdmin(待办数量属运营数据,不再匿名可见)
【删除空壳/死接口(前端已无调用方)】
- /api/user/save-info、/api/chat/list、/api/user/my-team/list、/api/user/latest-activity、/api/user/my-project/list
【后台页面清理】
- 「用户与个人中心 → 管理员资料」移除 我的项目/最近动态/我的团队/站内通知 四张空卡(保留真实的管理员资料头部)
- 删除对应 4 个组件;api/user-center.ts 移除 queryMyProjectList/queryMyTeamList/queryLatestActivity/saveUserInfo;api/message.ts 移除 queryChatList
【验证】
- 新增 admin-todo-bell.spec.ts;更新 admin-demo-data-cleanup.spec.ts
- 全量 101 套件 / 690 用例全绿;冒烟 8/8(未登录50008、待办数量、已读、新增后重新未读)
- 后台 pnpm build 通过
|
2026-10-20 15:52:04 +08:00 |
|
xcbyy
|
dde3cce562
|
fix(ui): 下单页背景/卡片/文字跟随全局主题(修复暖色主题下仍是深色底)
- create.vue 原先把整套深色配色写死,仅局部有 .theme-warm 覆盖 → 暖色主题下页面底色/卡片仍是深色
- 统一改用全局主题变量:容器 var(--bg-primary)、卡片 var(--bg-surface)、次级面 var(--bg-surface-elevated)、文字 --text-primary/secondary/muted、描边 --border-subtle、品牌 --color-brand(-gradient)、底部支付栏 --bg-surface-glass
- 替换 15 处深色时代的中性半透明白(rgba(255,255,255,0.03~0.1))为对应主题变量,暖色下不再白上白
- 主按钮渐变改用 var(--color-brand-gradient),暖色下自动变为橙色渐变
- theme-consistency.spec.ts 增加下单页断言(99 套件/682 用例全绿)
|
2026-10-20 14:00:27 +08:00 |
|
xcbyy
|
d5c50aabe6
|
fix(order): 修复大神无服务包时下单页崩溃(Cannot read properties of null reading 'title')
- 起因:上一批移除"系统自动生成演示服务包"后,未配置服务包的大神返回空列表,下单页模板直接取 selectedService.title 触发空指针
- 下单页新增 serviceView 安全视图(computed 带兜底对象),模板统一改用 serviceView.title/price/unit,杜绝解引用 null
- 无服务包时按大神基础时薪兜底生成"<品类>基础陪伴服务",保证仍可下单(价格仍由服务端档案价二次校验)
- 详情页取 services[0] 前先判空,并新增"暂未配置服务项目"空态提示
- 新增回归护栏 null-service-guard.spec.ts(98 套件/677 用例全绿)
|
2026-10-19 15:51:23 +08:00 |
|
xcbyy
|
6576c9e4be
|
feat(coupon): 优惠券中心(领取)+ 我的券 + 下单核销/回退
- 新表 user_coupons(快照面额/门槛/类目/有效期)+ orders.user_coupon_id
- 仓储:getCouponsWithClaimed/claimCoupon/getUserCoupons/resolveUserCoupon/consumeUserCoupon/releaseUserCouponByOrder
- 接口:POST /api/marketing/coupons/:id/claim(同券仅一次、受总量限制)、GET /api/marketing/my-coupons(自动标记过期)、券中心带 claimed 标识
- 下单:createOrder 支持 userCouponId(校验归属/门槛/类目/有效期,服务端算抵扣,与订单同事务占用)
- 回退:买家取消/大神拒单/超时退款/仲裁退款 均把券退回为 UNUSED
- 小程序:新增 pages/user/coupons(券中心+我的券)、个人中心入口(可用张数)、下单改为选择"我的券"并传 userCouponId
- 回归 94 套件/666 用例全绿;冒烟 9/9(领取/重复领取409/不存在404/下单抵扣100-10=90/取消回退)
|
2026-10-19 15:05:56 +08:00 |
|
xcbyy
|
029c6189a7
|
feat(mini): 下单/提现/报名前补订阅消息授权(提升微信服务通知到达率)
- 新增 common/subscribe.js:页面预加载模板ID + 点击动作中同步请求授权(避免 await 丢失手势上下文)
- 下单支付前请求订单状态/核销码模板;提现前请求到账模板;组局报名确认后请求报名模板
- 自动过滤 tmpl_ 占位模板;授权失败不阻塞业务
- 新增回归护栏 subscribe-authorization.spec.ts(80 套件/615 用例全绿)
|
2026-10-19 09:01:36 +08:00 |
|
xcbyy
|
2599dce315
|
feat(security): 三端闭环加固 + 微信提现打款/订阅消息落地
后端: 身份与归属鉴权收口; 资金安全(结算闸门/支付防篡改/报名费真实扣款/赠金/结算唯一入账/提现打款); 数据泄露与隐私; 登录与密钥安全(默认密钥闸门/登录限流); 可观测性; 启动自检.
微信: 商家转账到零钱提现打款闭环(含回调/查单/失败退回佣金); 订阅消息真实下发闭环与后台模板字段对齐.
后台: 财务/微信支付配置读取失败锁定; 看板/待办/走势去假数据; 打款与测试推送文案修正.
小程序: 请求层错误透传与登录过期提示; 多页失败反馈与乐观回滚; 帮助中心FAQ页面化.
测试: 新增 40+ 回归护栏与真实 MySQL 冒烟(75 套件/599 用例全绿).
|
2026-10-17 18:00:09 +08:00 |
|
xcbyy
|
78117bb4e1
|
feat: security hardening, wechat pay v3 platform cert integration, companion certification revocation, and audit closed-loop
|
2026-10-16 17:38:17 +08:00 |
|
xcbyy
|
3bf38db8b6
|
feat(order): complete 7.1 order full lifecycle state transitions, 15m/30m/48h auto-timeouts, expert reject/apply-complete, and partial refund arbitration
|
2026-10-14 15:52:56 +08:00 |
|
xcbyy
|
51c19d6063
|
feat(closed-loop): complete end-to-end closed loops across miniapp, backend, and admin
|
2026-10-14 10:13:50 +08:00 |
|
xcbyy
|
f8e81d2df4
|
fix(mp-weixin): 全量修复22个页面及组件因增量编译scoped哈希不一致导致的样式失效问题
|
2026-10-14 09:21:03 +08:00 |
|
xcbyy
|
9e2c19088b
|
fix(report): optimize wechat toast length limit and add admin violation reports management center
|
2026-10-13 17:08:25 +08:00 |
|
xcbyy
|
56e672219e
|
fix(modal): resolve premature modal closing caused by unsupported click.self in wechat miniprogram
|
2026-10-13 16:54:55 +08:00 |
|
xcbyy
|
831dd4a493
|
fix(order-list): ensure back button returns to user center instead of home page
|
2026-10-13 15:04:32 +08:00 |
|
xcbyy
|
63b18512f6
|
fix(order-list): add immersive custom navigation bar and return button with dual-theme adaptation
|
2026-10-13 15:00:12 +08:00 |
|
xcbyy
|
1fb0cc4273
|
feat(withdraw): build dedicated withdrawal page with optimized layout and multichannel support
|
2026-10-13 09:19:34 +08:00 |
|
xcbyy
|
e867488d0d
|
feat(expert): full closure of expert revenue trends, multichannel withdrawals, service manage, review reply and post manage
|
2026-10-13 09:13:06 +08:00 |
|
xcbyy
|
ac20bf1c5f
|
fix(uniapp): resolve css syntax error in create order and rename custom-tab-bar to app-tab-bar
|
2026-10-10 16:34:12 +08:00 |
|
xcbyy
|
7ac81035b4
|
feat(order): support balance payment, dynamic marketing coupon recommendation, and quick activity picker
|
2026-10-10 15:37:41 +08:00 |
|
xcbyy
|
d0f4050cdc
|
feat: 完善对象存储上传与真实条码二维码引擎,彻底剥离保底Mock数据
|
2026-10-09 17:18:14 +08:00 |
|
wikiboss
|
6d3076cdb8
|
feat(ui): 优化顶部安全距离,实现微信小程序与H5端无缝兼容及胶囊避让
|
2026-09-16 20:53:02 +08:00 |
|
wikiboss
|
6f6e6229ec
|
feat(ui): 移除四大TabBar主页原生navbar实现全沉浸式视觉体验
|
2026-09-16 20:46:32 +08:00 |
|
wikiboss
|
f829d6f6b5
|
fix(theme): 修复浅色主题下大神昵称白底白字及标签对比度过低问题,消除黑底黑字与样式失效缺陷
|
2026-09-16 20:39:02 +08:00 |
|
wikiboss
|
1a56ba2682
|
feat(theme): 完善顶部导航栏与底部菜单浅色暖色系适配及多端Tab生命周期同步
|
2026-09-16 20:27:07 +08:00 |
|
wikiboss
|
9fd7ea2c5a
|
feat(companion): 全面确立以陪吃·陪喝·陪唱为主的核心架构,重构首屏推荐阵容与歌声试听
|
2026-09-16 20:16:56 +08:00 |
|
wikiboss
|
341023c77b
|
feat(companion): 全面扩展同城生活陪伴体系(陪吃·陪喝·陪玩),完成TDD测试与安全核销闭环
|
2026-09-16 20:12:54 +08:00 |
|
wikiboss
|
8bc0d018fe
|
style(ux): 依据UIUX规范4.2节深度打磨大神端4位核销码九宫格键盘与身份确认卡及订单空状态引导
|
2026-09-16 18:16:56 +08:00 |
|
wikiboss
|
973586ff5f
|
style(uiux): 依据ui-ux-pro-max规范深度打磨移动浏览器端细节并完成真机视口验收
|
2026-09-16 17:09:19 +08:00 |
|
wikiboss
|
a377327465
|
style(uiux): 严格对齐UIUX设计约束规范,全面替换系统Emoji为电竞矢量SVG图标并修复H5居中自适应
|
2026-09-16 17:01:01 +08:00 |
|
wikiboss
|
935d6fa840
|
feat(pwuniapp): 在HBuilderX原生工程中实现电竞暗夜流光全套静态UI页面及4位门票核销
|
2026-09-16 16:47:30 +08:00 |
|