lcj
a8b4f08921
Merge branch 'main' of https://git.hn12301.net/xuchao/pingxiangcard
2026-09-04 16:24:16 +08:00
lcj
4ed72056a9
绑卡
2026-09-04 16:20:56 +08:00
jacobxu666
6cef231473
fix: 景区详情公告弹窗内容保留换行格式展示,正文固定高度45vh可滑动不被按钮遮盖
2026-09-04 16:17:44 +08:00
jacobxu666 and Claude Fable 5
e1801f1026
fix: 主包孤儿文件 api/order.ts 迁入分包(pingxiang-order),消除真机代码质量告警
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-09-04 16:00:00 +08:00
jacobxu666 and Claude Fable 5
64ac69db93
feat: 移除预约记录/详情页防截屏限制,预约日期条支持置灰显示已过预约时间
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-09-04 11:42:21 +08:00
jacobxu666 and Claude Opus 4.8
08e2f6888b
feat: 客服热线弹窗、取消预约文案与旅游卡页布局优化
...
- 客服热线改为弹窗拉取 mpContent/queryList 客服信息(SERVICE_INFO),富文本电话可点击拨号
- 取消预约确认弹窗展示具体预约日期与景区名称,取消后隐藏取消按钮
- makePhoneCall 用户取消时静默处理,不再上报异常
- 景区列表搜索图标改为 OSS 图片
- 旅游卡页:人脸头像方形竖版、信息单行靠右、入园提示移至持卡人信息下方等布局优化
- project.config.json appid 同步为 wxae3b39ac443fedc3
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-08-07 18:29:12 +08:00
lcj
f0911c67a0
feat: 抖音核销接入小泥人API、公告详情页、景区预约人选人等多处优化
...
抖音核销(douyin-verify):
- 对接小泥人 OAuth2 token 与 voucher-list 券码接口,按 code 分组展示订单券号及可激活次数
- 支持手动输入券码验证券码;核销流程改为先调后端 sendAndBind 发卡绑定,再验证券码
- 购卡须知改为富文本渲染,新增无可核销订单提示弹窗、客服电话拨打
- 增加 product_id 过滤与 per-page=100,验证券码命中后仅展示不弹提示
公告模块:
- 首页/公告列表点击跳转到新增公告详情页(notice-detail),展示标题、发布时间、富文本内容及视频
- 公告列表卡片改为标题+发布时间+查看详情按钮,时间与按钮同排
- 富文本支持内嵌 video 解析播放;content 为空不显示分隔线;标题取公告 title 而非类型
首页与价格:
- 首页大卡价格/划线价/立省改为商品详情接口动态获取
- 热门景区列表扩展至8条,支持优惠/折扣标签与默认占位图
预约/景区:
- 预约页改为选择预约人(可选/已预约置灰),预约参数改用预约人信息
- 景区列表与详情支持优惠类型、折扣、特惠价展示,富文本图片防溢出
- 景区列表移除自定义导航改用原生导航
订单/绑卡:
- 订单列表/详情增加抖音核销单号(thirdOrderNo)展示,核销订单隐藏金额与退款入口
- 绑卡页移除人脸可选开关,照片必传改为拍照
- 其他:图片域名统一为 hn12301,tabBar'旅游卡'改名,登录页支持 redirect 回跳
2026-08-07 10:45:53 +08:00
jacobxu666
40cebaa3a5
Merge branch 'xuchao'
2026-07-30 11:17:59 +08:00
jacobxu666 and Claude Opus 4.8
d1bff755d9
feat: 新增抖音核销功能(首页入口+核销页+购卡须知弹窗)
...
- 首页金刚区新增「抖音核销」入口,未登录拦截跳转登录页
- 新增核销页:按手机号查券(有券单选 / 无券手输券号并校验纯数字)、绑卡信息、人脸上传、证件类型选择
- 购卡须知弹窗(单图 aspx.png),确认核销后模拟成功并跳转旅游卡页
- 核销页背景对齐设计稿改为白底,原生窗口底色同步置白
- 接口层 DOUYIN_BACKEND_READY 开关,后端未就绪时返回模拟数据
- 修正金刚区图标域名 hntgov.net -> hn12301.net
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-30 11:12:16 +08:00
jacobxu666
8cc76dec6c
Update CLAUDE.md
2026-07-29 13:54:13 +08:00
lcj
cdb23eea01
7月29号
2026-07-29 13:53:24 +08:00
lcj
ee0825c1e6
1232
2026-07-13 11:15:59 +08:00
jacobxu666
45a74578fc
fix:优化入园码的显示和无预约时去预约的调整
2026-07-07 11:47:29 +08:00
lcj
6d89d1049f
123
2026-07-07 09:00:53 +08:00
lcj
203d129ffb
第一个版本
2026-07-06 09:17:41 +08:00
jacobxu666
1b4dcabad2
fix:icon 调整
...
旅游卡头像出的放大镜 icon 大小调整
2026-06-26 15:02:39 +08:00
jacobxu666 and Claude Haiku 4.5
f10a1896e7
fix: comply with F2E Spec — filename naming, any types, JSDoc
...
- Rename PascalCase component files to kebab-case (AnnouncementModal →
announcement-modal, McGlass → mc-glass)
- Replace any types with proper uni-app/WeChat callback types
(RequestSuccessCallbackResult, LoginRes, ShowModalRes, etc.)
- Add JSDoc documentation comments to all exported/important functions
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-26 14:45:49 +08:00
jacobxu666 and Claude Sonnet 4.6
77c177bfa9
fix(scenic-detail): 自定义轮播圆点修复层叠遮挡问题
...
微信原生 swiper 组件为独立渲染层,内置 indicator-dots 无法通过
z-index 突破到外部元素上方。改为在 swiper 外渲染自定义圆点:
- hero-container z-index:4(低于 info-card)
- info-card z-index:5(遮住 swiper 底部)
- hero-dots z-index:6(显示在 info-card 上方 12px)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-26 13:52:41 +08:00
jacobxu666 and Claude
03a72825bb
fix(scenic-detail): swiper dots covered by info-card
...
Add position:relative + z-index:6 to hero-swiper so it sits above
the info-card (z-index:5) which overlaps the bottom 40rpx via
negative margin. Dots are now visible above the overlap zone.
Co-Authored-By: Claude <noreply@anthropic.com >
2026-06-26 13:12:07 +08:00
jacobxu666 and Claude
2c165bf69d
fix: compress all images to meet 200KB resource limit
...
- logo.png: 320x320 83KB → 160x160 25KB
- icon/*.png: 128x128 → 64x64 (6 files, 101KB → 36KB)
- qr-demo.png: 250x250 → 128x128
- tabbar icons: kept at 81x81 (WeChat standard)
- Total: 230KB → 113KB (under 200KB limit)
Co-Authored-By: Claude <noreply@anthropic.com >
2026-06-26 12:53:53 +08:00
jacobxu666 and Claude
289291f195
fix: remove mock/order.js from main package
...
- Move mock/order.ts to packages/user/mock/ (subpackage-relative import)
- Delete unused api/order.ts, api/reserve.ts, api/scenic.ts (no page imports them)
- Delete unused mock/store.ts, mock/reserve.ts (dead code)
- order-list.vue now uses relative import ../../mock/order
Main package mock/ now only contains: images.js, notice.js, scenic.js
(all used by main package pages)
Co-Authored-By: Claude <noreply@anthropic.com >
2026-06-26 12:43:02 +08:00
jacobxu666 and Claude
f89e26cc57
fix(order-detail): restore divider between pay amount and bind/refund time
...
Remove detail-row--last from pay amount row so the border appears
when activatedTime or refundedTime rows are conditionally shown.
Co-Authored-By: Claude <noreply@anthropic.com >
2026-06-26 12:22:42 +08:00
jacobxu666
4acb2e6a9c
refactor: move pages to subpackages to reduce main package size
2026-06-26 11:59:59 +08:00
jacobxu666 and Claude
4b7c540343
fix(order-detail): add top padding to bottom bar buttons
...
Buttons now have 24rpx gap from the top edge of the bottom bar.
Co-Authored-By: Claude <noreply@anthropic.com >
2026-06-26 11:52:22 +08:00
jacobxu666 and Claude
b85196fa2e
fix: bottom bar safe-area adaptation (height → min-height)
...
Affected pages:
- order-detail: bottom action bar
- card-buy: bottom price/pay bar
- reserve-index: bottom submit bar
Root cause: box-sizing:border-box + fixed height + padding-bottom:safe-area
caused buttons to overflow when safe area inset is large (iPhone X+).
Changed to min-height so bar expands naturally.
Co-Authored-By: Claude <noreply@anthropic.com >
2026-06-26 11:49:40 +08:00
jacobxu666 and Claude
6eb4ab05ae
feat(reserve): add session/场次 info to success page and usage detail
...
- reserve-index: pass selected session time to success page via query param
- reserve-success: receive and display session conditionally
- reserve-list: add session field to ReserveRecord model and detail sheet
- 4 of 6 mock records now include session data
Co-Authored-By: Claude <noreply@anthropic.com >
2026-06-26 11:42:20 +08:00
jacobxu666 and Claude
455b865931
fix: cleanup remaining font-weight:bold, remove stale scenic-spots.ts
...
- Replace font-weight: bold with 700 (plain CSS) or $font-weight-bold (SCSS)
in qrcode.vue, card-item.vue, bind.vue, activate.vue
- Remove src/data/scenic-spots.ts (replaced by mock/scenic.ts)
Co-Authored-By: Claude <noreply@anthropic.com >
2026-06-26 11:15:08 +08:00
jacobxu666
d92875c86d
refactor: migrate additional hardcoded colors to design tokens
2026-06-26 11:11:27 +08:00
jacobxu666
26b89e8132
refactor(components): migrate public components to design tokens
2026-06-26 11:09:08 +08:00
jacobxu666
e4ce6b4703
refactor(pages): migrate remaining pages to design tokens
2026-06-26 11:07:22 +08:00
jacobxu666
c78f97301d
refactor(reserve): migrate hardcoded colors, font sizes, and weights to design tokens
2026-06-26 11:05:22 +08:00
jacobxu666
824bb3b808
refactor(order): migrate hardcoded colors, spacing, and mock data to design tokens
2026-06-26 11:00:46 +08:00
jacobxu666
72f435f7b3
refactor(buy-flow): migrate hardcoded colors and spacing to design tokens
2026-06-26 10:54:45 +08:00
jacobxu666
f2b8ad9604
refactor(card/detail): migrate hardcoded colors and spacing to design tokens
2026-06-26 10:51:54 +08:00
jacobxu666
d9a7aad499
refactor(index): migrate hardcoded values to design tokens and mock data
2026-06-26 10:48:59 +08:00
jacobxu666 and Claude
cfb9a4ce26
refactor: remove local SCSS variables from 9 pages
...
Replace with global uni.scss tokens:
$font → $font-family-body
$primary → $uv-primary
$text-* → $uv-main-color/$uv-content-color/$uv-tips-color/$uv-placeholder-color
$divider → $uv-border-color
$card-radius → $radius-lg
$accent → $uv-primary
Kept $bar-height: 120rpx as component-specific local var.
Removed dead $primary-dark: #e89a2a from card-bind.vue (never used).
Co-Authored-By: Claude <noreply@anthropic.com >
2026-06-26 10:34:54 +08:00
jacobxu666
25a1cc4eb3
feat(api): add scenic, order, reserve API functions with mock fallback
2026-06-26 10:26:35 +08:00
jacobxu666
a1307fa148
feat(mock): extract all hardcoded data into mock/ modules
...
- scenic.ts: 42 items from scenic-list.vue + filter options
- scenic-detail.ts: 8 items from scenic-detail.vue
- order.ts: 6 items from order-list.vue (replaces placeholder)
- reserve.ts: 6 items from reserve-list.vue (replaces placeholder)
- notice.ts: 5 items from notice-list.vue
- store.ts: updated to use new local types
All image URLs replaced with constants from images.ts
2026-06-26 10:16:24 +08:00
jacobxu666 and Claude
7d4d61af81
style(index): update promo card price styling (¥98 yellow, larger font)
...
Co-Authored-By: Claude <noreply@anthropic.com >
2026-06-26 10:06:45 +08:00
jacobxu666 and Claude
36a367b2a5
fix: add VITE_USE_MOCK to env.d.ts type declarations
...
Co-Authored-By: Claude <noreply@anthropic.com >
2026-06-26 10:06:36 +08:00
jacobxu666
ce729704f8
feat(mock): create mock infrastructure with USE_MOCK switch
2026-06-26 09:58:09 +08:00
jacobxu666 and Claude
e739c061c4
feat(types): add ScenicSession, ReserveRecord, Notice, FaqItem, PageResult types
...
Co-Authored-By: Claude <noreply@anthropic.com >
2026-06-26 09:48:20 +08:00
jacobxu666
72d1c16f6d
refactor(tokens): align _tokens.scss with uni.scss values
...
All color, typography, and spacing values now match uni.scss.
Added semantic colors and $font-size-xxs/$font-size-4xl.
2026-06-26 09:42:54 +08:00
jacobxu666
dcba287aeb
feat(tokens): add missing variables to uni.scss
...
- $font-size-xxs (18rpx), $font-size-4xl (64rpx)
- $uv-placeholder-color (#999999 )
- Semantic colors: $color-price, $color-status-*
- Change $font-family-body to system fonts
2026-06-26 09:38:10 +08:00
jacobxu666 and Claude
e03ac06e02
docs: add UI/UX standardization implementation plan
...
17 tasks across 3 phases:
- Phase 1 (Tasks 1-8): Infrastructure (tokens, types, mock, cleanup)
- Phase 2 (Tasks 9-12): Core pages (index, card list/detail, buy)
- Phase 3 (Tasks 13-17): Remaining pages and components
Co-Authored-By: Claude <noreply@anthropic.com >
2026-06-26 09:32:56 +08:00
jacobxu666 and Claude
1b12c1a6b7
docs: final spec refinements per second review
...
- Fix type import syntax in mock example (Scenic[] → Scenic)
- Add pagination example to mock mechanism
- Clarify $uv-placeholder-color placement in uni.scss
- Separate $color-price vs $uv-error in migration table
- Split task 1.1 into 1.1a/1.1b/1.1c sub-tasks
- Add App.vue global style example
- Add SCSS import rules
Co-Authored-By: Claude <noreply@anthropic.com >
2026-06-26 09:19:09 +08:00
jacobxu666 and Claude
6e27b449bb
docs: update UI/UX spec per review feedback
...
- Add $font-size-4xl (64rpx) to font scale
- Fix line-height-tight to match uni.scss (1.2)
- Use existing $uv-* naming for neutral colors, add $uv-placeholder-color
- Clarify $font-family-body change (serif → system fonts for body)
- Split spacing into recommended vs reserved tiers
- Fix $radius-md → $radius-base, add $radius-xl
- Fix shadow values to match uni.scss rgba(15,23,42,...) base
- Add PageResult<T> pagination type
- Add MockStore for interactive mock data
- Add image resource specs (sizes, formats)
- Add accessibility guidelines
- Fix page count (27 → 21)
Co-Authored-By: Claude <noreply@anthropic.com >
2026-06-26 09:12:16 +08:00
jacobxu666 and Claude
e328177067
docs: add UI/UX standardization design spec
...
Co-Authored-By: Claude <noreply@anthropic.com >
2026-06-26 09:05:59 +08:00
jacobxu666 and Claude
4ad874adf9
refactor: 全项目 UI/UX 标准化修复
...
- P0: uni.scss 全局 Token 修正(字体SourceHanSerifCN、色彩#111/#333/#666/#999/#eeeeee、删除600字重)
- P0: 分包6页面色彩迁移(#4A90D9→#3c9cff、#E74C3C→#e53935、圆角统一24rpx)
- P1: qrcode页面全量SCSS迁移(12个硬编码色值替换、emoji图标替换、圆角统一)
- P1: index页面价格色修正(#f9ae3d→#e53935、按钮主色统一、硬编码字号对齐)
- P2: 10个页面字号/圆角/字体统一(notice-list/scenic/login/profile/faq/card-bind等)
- P3: 全局 font-weight:600 替换为500/700(5处),删除semibold变量和工具类
- 新增 -size-title: 38rpx Token
- 构建验证通过
Co-Authored-By: Claude <noreply@anthropic.com >
2026-06-26 02:50:21 +08:00
jacobxu666 and Claude
f67dd63972
feat: 新增预约系统三页面 + 订单/使用记录优化
...
- 新增 pages/reserve/reserve-index 景区预约页(日期选择/场次/库存/实名信息)
- 新增 pages/reserve/reserve-success 预约成功页(二维码/规则/返回拦截)
- 新增 pages/reserve/reserve-list 预约使用记录页(Tab筛选/取消/详情弹窗)
- 预约日期仅展示明天起3天,支持已约满/无场次状态
- 使用详情增加卡种/卡号/核销照片/时间字段,照片可放大预览
- 订单列表/详情全部激活改绑定,卡号CJ格式,Tab均分布局
- 景区详情立即预约跳转预约页,使用说明跳转独立页面
- 统一景区信息区字号间距规范
Co-Authored-By: Claude <noreply@anthropic.com >
2026-06-26 01:33:32 +08:00