Commit Graph

1350 Commits

Author SHA1 Message Date
c9d77e901d chore:我的名片组件二维码外观正常 2026-10-23 15:17:25 +08:00
a595a4ae1b chore:微信小程序分享正常 2026-10-23 14:01:20 +08:00
ecc81b9b31 chore:我的名片组件发送名片正常 2026-10-23 10:44:03 +08:00
8348cbb179 chore:我的名片组件,隐藏我的名片组件的下面登录后即可展示我的名片隐藏, 2026-10-23 10:21:25 +08:00
cb454db326 chore:我的名片样式 2026-10-23 09:59:12 +08:00
887c1848a4 chore:精选名片名片高度变化时这段距离恒定改拉伸终点 2026-10-23 09:43:03 +08:00
f9277e8644 chore:精选名片蓝色背景 2026-10-23 09:27:10 +08:00
41d07843e7 chore:我的名片的快捷按钮样式 2026-10-23 09:04:03 +08:00
5f4a0ecea1 chore:精选名片的快捷按钮样式改变 2026-10-23 09:01:20 +08:00
f26d11f38a chore:我的名片组件网站的图标显示正常 2026-10-22 18:31:46 +08:00
efa7c736f9 chore:主题渐变饰条正常 2026-10-22 18:25:00 +08:00
3fb5b0b92e chore:我的名片发送名片样式正常 2026-10-22 16:43:42 +08:00
e11aa27279 chore:我的名片组件的所有快捷按钮样式正常 2026-10-22 16:18:09 +08:00
31f67c109b chore:我的名片快捷按钮样式 2026-10-22 16:01:32 +08:00
df9db2e2ed chore:精选名片发送名片正常 2026-10-22 14:38:09 +08:00
9b33fb7719 Merge branch 'feat/camcard' of http://git.aigc-quickapp.com/Uniapp/lucky_shop into feat/camcard 2026-10-22 14:26:32 +08:00
6c2619a33c chore:开启隐藏精选名片的资料行图标可控 2026-10-22 14:20:44 +08:00
d64e989c25 feat(diy-card): 添加链接选择功能,优化名片发送按钮文本 2026-10-22 14:14:42 +08:00
3bcf0c8c87 chore:二维码微调值可以正常调动 2026-10-22 11:26:43 +08:00
3d144a7492 chore:二维码的尺寸可以调 2026-10-22 10:52:47 +08:00
b294fc3640 chore:“发送名片”按钮功能正常 2026-10-22 09:53:27 +08:00
6f9ac29aa6 chore:二维码位置和后台同步 2026-10-21 18:16:49 +08:00
a1d8ee8d7a chore:二维码精选名片后台控制开启显示 2026-10-21 17:32:30 +08:00
d605f4c9ea feat(goods-detail): 商品详情页主图/视频按后台「媒体显示顺序」切换
后台商品「高级设置」新增 media_order(1=主图在前 2=视频在前), 前端按其决定
商品详情页媒体区默认展示哪一个, 以及底部「图片/视频」切换按钮的排列顺序.

改动:
- goods-detail-view 组件:
  - 新增 applyMediaOrder() 按 media_order 决定默认展示主图还是视频
  - 新增 mediaOrderKey 计算属性 + watcher: 只在「媒体显示顺序/视频地址」
    变化时重新应用, 避免用户手动切到「视频」后被详情数据深层变更打回
  - 新增 mediaTabs 计算属性: 切换按钮顺序跟随配置
  - 切换按钮改用 switchMediaTab(), 切回主图时暂停视频
- common/js/goods_detail_base.js: 父级那行 switchMedia 赋值原本是死代码
  (父级无此 data 字段, 无模板读取), 改成与新规则一致, 避免两处规则打架
2026-10-21 16:35:47 +08:00
724e7ac134 chore:精选名片组件可以支持头像开启关闭 2026-10-21 16:05:59 +08:00
37cd3c2f30 chore:新增精选名片组件,样式 2026-10-21 15:53:15 +08:00
d188737a6c Merge branch 'feat/camcard' of http://git.aigc-quickapp.com/Uniapp/lucky_shop into feat/camcard 2026-10-21 14:32:15 +08:00
57a67bd61b chore:名片样式 2026-10-21 14:30:13 +08:00
f1bd606e0b fix(diy-card): 审计修复——corner 档头部水平让位动态化 + self 首载骨架屏
- 修复 P1: corner 档自定义 qrSize>120 时静态 padding-right:180rpx
  让位不足, 浮层压住头部姓名区 → 新增 cornerHeadStyle 按浮层实际
  宽度(尺寸+衬底+右偏移20+呼吸20)动态反算, 与 cornerClearStyle
  垂直让位同口径; 废弃静态 CSS 值(负断言锁定)
- 修复: self.vue 已登录首次加载三分支都不渲染(loading 且无 card)
  → 白屏闪烁; 改 v-else-if="loading || card" 挂上 mini 骨架屏
- 契约测试: 新增 cornerHeadStyle 断言 + resolveQrSize 三处口径 +
  静态让位废弃负断言; 3 项变异验证全抓住; 四文件 67 项全绿
2026-10-21 14:09:56 +08:00
805bbb9598 feat(diy-card): 4.0 头像开关 + 二维码四档外观/自定义尺寸/微调位移/提示开关
- common.js: QR_STYLES 四档枚举 + normalizeQrStyle(未知回落 card) +
  resolveQrSize(自定义 px×2>档位自动 rpx) + qrTransform(位移经
  translate, WXSS 不支持 calc)
- mini.vue 基件: 头像可隐藏(默认显示, 兼容历史配置); qrBlockStyle
  统一四档外观(plain 原图/card 白卡/theme 主题色/gradient 渐变,
  多彩只装饰外围衬底, 码黑白保可扫); cornerClearStyle 按实际尺寸
  反算让位(自定义大尺寸/关 tip 自动跟随); 扫码提示可关
- show/self: 6 新字段透传; ab-visual 测试 corner 断言改锚动态让位
- 新增 qr-style 契约测试 20 项(纯函数真值 + 基件 + 透传 + 两个
  design.html 面板控件绑定与预览消费 + 反例), 9 项变异验证全抓住
- 前端四测试文件共 66 项全绿; E2E 143 项; 三回归 79/41/56 全绿
2026-10-21 12:28:18 +08:00
8bdd9f1291 fix(diy-card): 修复两处 WXSS 不兼容 calc() + MP 兼容契约测试
微信小程序 WXSS 不支持 calc(), 两处布局在小程序上会失效:

- mini.vue corner 档: max-width: calc(100% - 170rpx) →
  .mini-head { padding-right: 180rpx }(固定值, 浮层宽 120+偏移 20+呼吸 20)
- list.vue 网格: itemStyle width calc(50% - gap/2) →
  布局盒 50% 宽 + 左右各 half-gap padding, 视觉移入内层 .item-card
  (border/圆角/padding 随之下移, 布局盒透明只算 gutter)
- 新增 tests/diy-card-mp-compat.test.js 20 项: 全组件禁 calc()/var(--)
  (先剥注释再断言) + template 标签配平(栈式匹配, 兼容插槽嵌套 template)
  + 反例自测

注: 渐变角度 linear-gradient(deg,...) 有生产先例(detail/enterprise/
forward 均在生产小程序运行), 不在禁项; 真机渲染需 HBuilderX 构建验证。
验证: 46/46(三个名片测试文件) + npm test 仅剩两个存量失败
2026-10-21 11:58:35 +08:00
a841af8f5b feat(diy-card): A+B 视觉升级(资料行图标/可点 + 二维码四档任意位)
配合后端 f031476, 组件内直接复刻参考图视觉, 功能仍归详情页(路径A):

- common.js: rowIconFor(field→iconfont glyph, 无字形退化空串) +
  rowActOf(href 派生 tel/mail/copy, 空 href 不可点) +
  normalizeQrPosition/QR_SIZES(四档归一化+尺寸表)
- mini.vue: 资料行图标列(与文字标签列同宽, 值列左缘对齐) +
  行点击 emit row-act; 二维码四档渲染:
  rows 行下(默认) / head 头部右侧(三段 flex 零遮挡) /
  corner 右上浮层(白底衬底+Logo 避让+资料行让位 108rpx) /
  bottom 主按钮上方; 二维码尺寸随档位(180/120/120/180)
- show/self: miniConfig 透传 showRowIcons/rowTap/qrPosition,
  模板挂 @row-act="doAct" 复用既有动作分发
- 新增 tests/diy-card-ab-visual.test.js 13 项(真函数+源码断言,
  7 项变异验证全抓住)

node --test tests/diy-card-ab-visual.test.js → 13/13
2026-10-21 11:44:37 +08:00
35137ae814 test(diy-card): 路径A链路契约测试(组件卡跳完整名片页)
参考图(名片卡+二维码+发名片)的完整功能在详情页, 组件靠「查看完整名片」
全宽主按钮把用户送过去。固化为 13 项断言(先剥注释再断言, 7 项变异验证):

- show/self: miniConfig 透传 showDetailBtn/detailBtnText
- show/self: 模板挂 @detail="goDetail"; goDetail 跳
  /pages_tool/card/detail 带 card_id + 空 id 守卫
- mini 基件: showDetailBtn flagOn 默认开 + mini-detail emit('detail')
- detail.vue: 错误信封带 wap_url → fallbackToPublicPage
  (H5 直跳/非 H5 走 share 中转 web-view, 游客不死路)
- 反例: 虚构字段/错误落点必须查不到

node --test tests/diy-card-detail-jump.test.js → 13/13
2026-10-21 11:24:50 +08:00
48a17a59f7 feat(diy-card): 名片 DIY 组件 2.0 视觉与功能升级(原生渲染, 禁 webview)
- diy-card-common.js(新): 设计 token 层 —— 颜色/字阶/间距/圆角/阴影/动效/
  触达尺寸 + px2rpx/flagOn/initialOf/avatarBg/themeGradient/visibleRows 助手
- diy-card-mini.vue(新): 共享名片卡基件 —— 封面+遮罩/渐变饰条/Logo/主题色
  头像(首字兜底)/资料行折叠(showRows 总开关+maxRows 上限+展开收起)/快捷操作
  芯片(首个主动作实心, 72rpx 触达)/二维码/详情按钮/骨架屏 shimmer/badge 插槽
- diy-card-entry.vue: 三预设(gradient/solid/minimal)×两布局(left/center)×
  图标装饰(内置字形/图片)×按钮四变体(solid/ghost/link/none)
- diy-card-list.vue: 三布局(grid 双列/list/scroll 横滑)+骨架屏+逐项 fade-up
  入场+标题行(计数/更多)+企业徽章+空态
- diy-card-show.vue / diy-card-self.vue: 改为基件包装; self 管登录态
  (hasToken watch 刷新)+兜底(fallbackMode)+空态 CTA+「我的名片」角标
- 修复死配置: 面板「显示资料行」showRows 此前被 C 端丢弃, 现由基件消费
  (历史配置无此字段时默认显示, 兼容 1.0)
- 规范: 禁 CSS 变量, 动态样式走 $util.objToStyle, rpx 尺寸
2026-10-21 09:56:51 +08:00
cc96e2ca13 Merge branch 'dev/1.0' into feat/camcard 2026-10-21 09:24:29 +08:00
d0fe005c4a diy: 名片 DIY 组件原生渲染(禁 webview) + diy-group 分发
- 新增 diy-card-entry/list/show/self.vue(easycom 自动加载):
  头像/资料行/快捷操作原生渲染, tel 走 makePhoneCall,
  wx/mail/web 走复制, 点击卡片跳 pages_tool/card/detail
- diy-card-self 登录态自适应: hasToken watch 自动刷新,
  未登录兜底(企业卡/指定卡/登录引导)由后端 /card/api/diy/mycard 决定
- diy-group.vue: DiyCard* 四个 componentName 分发分支
2026-10-21 09:13:56 +08:00
c9a4673203 chore:已经登录了企业名片刷新不会出现登录提示 2026-10-20 15:17:54 +08:00
bdd0935fab chore:新增一个企业微信名片 2026-10-20 14:07:05 +08:00
9d3cd2b65e chore:titel改为名片 2026-10-20 10:06:16 +08:00
22b33c45ad chore:名片删除按钮功能正常 2026-10-20 08:48:50 +08:00
699787528c feat(card): PAGE_CARD_ENTERPRISE 页面链接映射——企业名片(后端 2.11.94 link 注册配套)
路径约定 /pages_tool/card/enterprise(页面由前端开发, 数据走
/card/api/enterprise/* 企业名片 API)。diy 链接管理的企业名片
节点已在后端 lucky_link 注册(name=CARD_ENTERPRISE)。
2026-10-19 18:09:57 +08:00
a2bf8d6c25 chore:增加名片删除按钮 2026-10-19 16:58:04 +08:00
8635f9795f chore:title改成名片 2026-10-19 16:44:02 +08:00
166450f6ce chore:浏览 2026-10-19 15:28:02 +08:00
b4509e3092 chore: 2026-10-19 15:18:30 +08:00
8fa16d9b14 chore:保留test 2026-10-19 10:12:44 +08:00
9c9d1a412f Merge remote-tracking branch 'origin/dev/1.0' into feat/camcard 2026-10-19 09:55:43 +08:00
1f87b23e7b merge dev/1.0 into feat/camcard: resolve card list/detail conflicts keeping feat/camcard implementation 2026-10-19 09:55:21 +08:00
421dad516c chore:名片选择样式最后两个调换颜色 2026-10-19 09:46:11 +08:00
ab8dff4b93 chore:微信小程序名片样式选择颜色对应 2026-10-19 09:41:58 +08:00