Commit Graph

44 Commits

Author SHA1 Message Date
3f1931e420 feat(address): 修复默认地址唯一性并新增用户浏览记录功能
- 后端新增 clearDefault 方法,保存默认地址前清除其他默认状态,避免多默认地址
- 前端地址编辑页保存成功后若为默认,调用 setDefaultAddress 触发后端清理逻辑
- useAddress hook 加入 ensureSingleDefault,前端保证地址数据中只有一个默认地址
- 新增 shop_goods_browse 表及相关实体、Mapper、服务和控制器,实现用户商品浏览记录功能
- 商品详情页接入浏览记录上报,支持登录用户浏览记录服务端同步
- 浏览历史页支持登录用户服务端分页查询,未登录用户使用本地存储兜底
- 浏览历史页支持浏览记录单条删除、清空、上拉加载和下拉刷新功能
- 调整用户中心入口,恢复浏览历史菜单项显示
- 文档和内存文件更新,包括数据库建表 SQL、接口定义和项目编译说明
2026-07-15 12:52:25 +08:00
ad3c209fe5 feat(order): 优化订单备注结构及线下付款状态显示
- 门店订单修改金额时,修改原因从追加 comments 改为保存 merchantRemarks 字段
- ShopOrder 和 OrderCreateRequest 接口新增 buyerRemarks 和 merchantRemarks 字段,实现订单备注字段分离
- 结算页由 comments 注入变更为 buyerRemarks,门店订单列表新增买家备注展示块
- 修复线下付款订单状态显示:统一线下付款(payType=9)与货到付款(payType=8)的待发货状态显示
- 取消按钮逻辑优化,已付款订单不显示取消按钮,文案由"关闭订单"改为"取消订单"
- 订单列表和详情页弹窗标题及提示文案更新,确保状态描述准确,提升用户体验
2026-07-15 03:07:35 +08:00
e47a0d3d3e feat(shop): 优化VIP价格支持及线下付款兼容
- 结算页新增线下付款异常友好提示,避免支付配置中appid缺失错误
- 后端修复支付类型判断,防止线下付款仍试图创建微信支付订单
- 结算页默认支付方式调整为线下付款,货到付款选项注释
- 新增门店订单“修改金额”功能,支持弹窗输入新金额和修改原因
- 订单修改支持追加操作记录,接口复用updateShopOrder,无需新接口
- 重构多处页面和组件,使用响应式useVipStatus替代同步isVipMember缓存
- 新增OrderGoodsItem.price字段,下单时传VIP dealerPrice确保价格准确
- 购物车、商品详情、分类页、SkuSelector、商品卡片等支持动态VIP价格展示
- 修改购物车上下文calcPrice函数,响应VIP状态变更自动更新价格显示
- 提升前端VIP状态管理一致性,防止过期缓存导致VIP特权价格显示异常
- 验证构建通过,后端服务重启后生效线下付款修复和订单修改功能
2026-07-15 02:45:19 +08:00
1e4549095a fix(shop): 调整结算页默认支付方式为线下付款
- 注释掉了货到付款(id=8)支付方式选项
- 将默认支付方式由货到付款改为线下付款(id=9)
- 更新支付方式相关状态默认值为线下付款
- 确保支付方式选项列表仅保留线下付款项
2026-07-15 00:50:24 +08:00
dfbcbcf615 feat(payment): 新增线下付款方式及相关订单状态支持
- 支付页面新增线下付款选项,支持微信转账付款方式
- 订单流程新增线下付款待确认(offline_pending)阶段
- 订单详情与订单卡片显示线下付款状态及提示信息
- 支付接口和模型增加线下付款支付方式(payType=9)支持
- 订单列表页区分线下付款待确认与待收款状态
- 地址编辑页修复智能识别按钮无法点击问题,调整布局避免被Textarea遮挡
2026-07-14 22:15:31 +08:00
44b3cb10be refactor(shop): 简化商品详情页客服功能
- 用户反馈客服功能复杂,改为使用微信原生 open-type="contact" 按钮
- 删除 handleContactService 函数及页面跳转逻辑
- 替换客服图标组件为 Button,使用 openType="contact" 触发联系客服
- 保留客服页面但不再从商品详情页跳转
- 提示 open-type="contact" 需真机预览测试,开发者工具无反应
2026-07-14 21:03:26 +08:00
a6a34da3cb fix(payment): 调整货到付款支付方式及状态逻辑
- 将支付方式默认值修改为8表示货到付款
- 删除前端创建订单时对payStatus和payTime的传递,改为后端自动处理
- 更新订单详情页支付方式映射,新增多种支付方式及货到付款标识
- 修改订单状态展示逻辑,针对货到付款订单调整状态标签和流程判断
- 优化订单列表卡片状态显示,支持货到付款的特殊显示需求
- 更新订单模型注释,统一支付方式编码及对应说明
2026-07-14 19:26:43 +08:00
df4305edf1 fix(shop): 修复商品详情页孤立“0”渲染问题
- 修正赚取积分、重量和销量条件渲染,避免数字0被渲染成文本节点
- 赚取积分判断改为仅判断数值是否大于0,防止0泄漏
- 重量同样改为判断数值大于0避免显示无效数据
- 销量为0时隐藏销量信息,符合用户需求
- 调整加购按钮尺寸,使其视觉更协调
2026-07-14 03:08:59 +08:00
f6f8cb4579 fix(shop): 修复商品详情页孤立“0”渲染问题
- 修正赚取积分、重量和销量条件渲染,避免数字0被渲染成文本节点
- 赚取积分判断改为仅判断数值是否大于0,防止0泄漏
- 重量同样改为判断数值大于0避免显示无效数据
- 销量为0时隐藏销量信息,符合用户需求
- 调整加购按钮尺寸,使其视觉更协调
2026-07-14 03:06:44 +08:00
f92e399d72 fix(shop): 修复商品详情页孤立“0”渲染问题
- 修正赚取积分、重量和销量条件渲染,避免数字0被渲染成文本节点
- 赚取积分判断改为仅判断数值是否大于0,防止0泄漏
- 重量同样改为判断数值大于0避免显示无效数据
- 销量为0时隐藏销量信息,符合用户需求
- 调整加购按钮尺寸,使其视觉更协调
2026-07-14 03:05:14 +08:00
b7bdefba96 fix(shop): 修复商品详情页孤立“0”渲染问题
- 修正赚取积分、重量和销量条件渲染,避免数字0被渲染成文本节点
- 赚取积分判断改为仅判断数值是否大于0,防止0泄漏
- 重量同样改为判断数值大于0避免显示无效数据
- 销量为0时隐藏销量信息,符合用户需求
- 调整加购按钮尺寸,使其视觉更协调
2026-07-14 03:01:54 +08:00
e157aac4c5 feat(shop): 使用白色购物车图标替换文本图标
- 引入了 base64 格式的白色购物车 SVG 图标常量
- 将购物车按钮内的文本符号替换为可自适应大小的 Image 组件
- 保持图标外观和布局一致,增强视觉统一性
- 提升图标加载性能,适配绿色浮动按钮主题
2026-07-14 02:50:21 +08:00
70af5426e8 feat(shop): 添加商城列表页浮动购物车按钮
- 在 shop 页面右下角添加固定定位的绿色圆形购物车按钮
- 按钮右上角显示购物车商品数量角标,超过 99 显示为 99+
- 点击按钮跳转到购物车页面,非 tabBar 页面
- 使用 useCartContext 的 totalCount 实时更新商品数量显示
- 注释掉用户页面 “我的钱包” 入口,暂时隐藏该功能
2026-07-14 02:31:49 +08:00
b8d2325ff9 fix(shop): 购物车页面进入不刷新问题
- 购物车页面添加 useDidShow 钩子,页面显示时自动刷新购物车数据
- 商品列表页和分类页改用 CartContext 的 addItem 方法添加商品
- 移除直接调用 addToCart API,避免购物车状态不同步
- 解决从商品列表页或分类页加入购物车后进入购物车页面商品不显示的问题
2026-07-14 02:25:12 +08:00
fd03ed80fd refactor(user): 禁用 loginByOpenId 静默登录并优化登录状态控制
- 移除 UserContext 和 useUser 中的 loginByOpenId 调用及相关降级逻辑
- 无本地 token 时保持未登录状态,不再自动触发静默登录
- 清理无用导入 TenantId 和 loginByOpenId
- 订单列表页增加登录校验,未登录用户跳转登录页并阻止渲染订单
- 商城首页价格改为 Price 组件,未登录游客显示登录遮罩,单位仅登录后可见
2026-07-14 01:36:58 +08:00
93a46bdae7 fix(shop-cart): 修复购物车后端查询及前后端字段名对齐问题
- 修复后端ShopCartMapper SQL,关联查询商品和SKU信息,返回完整商品详情字段
- 新增ShopCart实体非持久化字段,映射商品名称、图片、价格、库存等
- 调整后端Controller列表方法,自动过滤当前登录用户购物车数据
- 前端ShopCart接口新增salePrice、dealerPrice字段,CartContext映射新增字段
- 修正购物车数量和选中状态字段名,前端与后端统一使用cartNum和selected
- 统一更新购物车数量、选中状态的接口调用参数,避免因字段不匹配导致更新失败
- 购物车及结算页价格显示逻辑优先使用后端扁平dealerPrice字段,兼容VIP价格显示
- 各购物车相关页面调整添加购物车参数,确保字段名一致和正确传递
2026-07-14 01:14:15 +08:00
711db25093 fix(shop): 修复购物车和收藏列表图片及价格显示问题
- 购物车上下文补全映射后端返回的 product 和 sku 嵌套对象字段
- 购物车页面商品图片资源回退增加 sku.image
- 添加 ensureFullUrl 辅助函数,完善图片 URL 完整性,增强图片压缩函数健壮性
- 收藏列表扩展 ShopGoodsFavorite 模型,支持嵌套商品详情字段
- 收藏列表图片、名称、价格显示逻辑升级,优先显示嵌套商品信息
- 购物车相关接口请求参数及方法调整,修正 PUT 请求路径和请求体字段
- 收藏列表列表项 key 使用 id 或 goodsId 避免重复Key警告
2026-07-14 00:55:35 +08:00
2f12a1fd27 feat(shop): 接入分类页分享功能支持好友、朋友圈及复制链接
- 在 `src/pages/shop/index.config.ts` 中启用分享转发配置
- 在 `src/pages/shop/index.tsx` 增加 `useShare` 钩子调用,支持分享标题、路径及朋友圈和复制链接功能
- 分类页作为 tabBar 页面,确保三种分享按钮均可用
- 通过类型检查,代码无错误保证功能稳定
2026-07-13 12:15:03 +08:00
8a9cf43fd9 feat(share): 启用多页面分享功能并显式显示分享菜单
- 在多页面配置中统一开启 enableShareAppMessage 和 enableShareTimeline
- 在 useShare 钩子中增加运行时保底逻辑,确保分享菜单按钮始终显示
- 新增多个页面的分享配置文件,支持分享赚佣金、VIP升级、积分商品等功能
- 优化用户分享体验,提高分享功能的全面性与可靠性
2026-07-13 10:25:40 +08:00
d6d6b1f5a7 feat(user): 使用微信原生 Picker 替换所在地选择弹层
- 删除 NutUI Address 相关导入、状态及地区数据转换逻辑
- 新增派生 regionValue 用于绑定微信原生 Picker 的 value
- 将 handleRegionChange 调整为处理微信 Picker 的事件
- 将所在地选择 UI 修改为微信原生 Picker 包裹的视图结构
- 地图定位失败使用弹窗提示,引导用户手动选择或重试
- 移除手动打开地区选择器的函数及 NutUI 组件
- 保留 RegionData 用于文本智能识别解析
- 编译通过,提升在无地图或无权限环境下的地区选择稳定性
2026-07-13 08:16:17 +08:00
f1da250295 fix(shop): 修正商品图片展示模式为适应容器
- 将图片模式从填充裁剪改为适应容器比例
- 优化了商品详情页图片的显示效果
- 保持图片完整展示,避免内容裁剪
- 改善了页面视觉一致性和用户体验
2026-07-11 19:03:20 +08:00
7572738bcd feat(shop): 调整商品列表为一排两个竖向方格布局
- 商品列表容器调整为 flex-wrap 布局以支持多列显示
- 每个商品项宽度设为 50%,左右间距微调
- 商品卡片改为竖向结构,图片置顶,固定高度 144px,图片模式改为 aspectFill
- 商品名称、积分标签、价格、销量排布调整优化
- 加购按钮位置及样式微调增加左边距
- 保持顶部搜索栏、左侧分类栏和排序栏布局不变
2026-07-11 18:06:53 +08:00
02acd5b311 fix(images): 修正图片展示模式为aspectFit
- 将商品分类页图片组件的mode属性从aspectFill改为aspectFit
- 修改首页图片组件的mode属性以保持图片完整显示
- 防止图片裁剪,提升图片展示效果一致性
2026-07-09 18:09:20 +08:00
700b6f865c fix(images): 修正图片展示模式为aspectFit
- 将商品分类页图片组件的mode属性从aspectFill改为aspectFit
- 修改首页图片组件的mode属性以保持图片完整显示
- 防止图片裁剪,提升图片展示效果一致性
2026-07-09 18:06:22 +08:00
082646a613 feat(image): 全项目应用图片压缩优化
- 将图片显示统一替换为 getCompressedImageUrl 函数处理压缩
- 覆盖 35 个文件,包括 4 个组件和 31 个页面
- 主要组件:LazyImage、ProductCard、OrderCard、SkuSelector 内部自动压缩图片
- 主要页面:购物车、订单、积分、活动、拼团、秒杀、收藏、浏览历史等
- 跳过用户头像、二维码、商品详情大图及所有 Taro.previewImage 调用
- 调整压缩默认宽度为 300,保持质量90,启用压缩功能
2026-07-06 12:21:39 +08:00
df5886a62d fix(shop): 修正左右分栏高度适配问题
- 左侧分类栏 ScrollView 高度由 h-screen 修改为 h-full
- 右侧排序栏及商品列表容器高度由 h-screen 修改为 h-full
- 商品列表 ScrollView 添加 min-h-0 用于改善滚动高度限制
2026-07-04 13:48:22 +08:00
45207d519f chore(config): 更新项目名称为 xinlong-taro
- 修改 config/index.ts 中的 projectName 字段
- 更新 package.json 的 name 字段
- 调整 project.config.json 中 description 和 projectname 为新名称
- 修改 README.md 中项目目录名称为 xinlong-taro
2026-07-04 13:40:34 +08:00
a3e4c2d786 chore(config): 更新项目名称为 xinlong-taro
- 修改 config/index.ts 中的 projectName 字段
- 更新 package.json 的 name 字段
- 调整 project.config.json 中 description 和 projectname 为新名称
- 修改 README.md 中项目目录名称为 xinlong-taro
2026-07-04 13:28:52 +08:00
1729ef3ae4 feat(shop): 改造分类页为左右布局并新增商品排序功能
- 重写分类页,实现左侧一级分类列表和右侧商品列表布局
- 右侧增加商品排序栏,支持默认、销量、最新、价格排序(价格可升降序切换)
- 商品列表横向卡片布局,显示图片、标题、积分标签、VIP价格、销量及加购按钮
- 支持滚动触底自动分页加载更多商品
- 点击商品跳转详情页,点击加购按钮调用加入购物车接口
- 复用 VIP 价格逻辑,优化价格显示
- 修复门店中心页 loading 状态,确保数据加载完成后隐藏加载中提示
- 优化订阅消息模板 ID 填充和错误提示提示细节
2026-07-04 13:17:52 +08:00
994695c405 feat(store): 新增门店中心及VIP会员升级功能
- 个人信息页新增门店名称和门店地址展示,支持异步加载与只读显示
- 用户信息卡片整体改为绿色渐变背景,添加光晕和白色边框样式
- 新增升级VIP会员入口,突出展示并添加推荐标签
- 新建VIP会员升级页面,包含门店信息表单和VIP权益预览
- 提交升级申请调用新增api,支持状态检测表单只读
- 门店中心页面重构,简化订单管理,新增功能卡片及VIP审核入口
- 页面加载校验店员身份,非店员拒绝访问并提示
- 购物相关页面和组件全面支持VIP会员价格优先显示dealerPrice
- 新增ShopDealerApply模型门店相关字段,丰富会员申请数据记录
2026-07-04 10:26:47 +08:00
ce7f5177eb feat(store): 优化门店中心订单管理和Checkout订单创建
- Checkout创建订单时直接传递payStatus和payTime字段防止未付款订单被删除
- 门店中心Tab改为三个(全部、待处理、已完成),并合并多个statusFilter查询
- 操作按钮逻辑调整为根据订单状态判断,已完成及已关闭订单无操作和删除按钮
- 状态文案和颜色适配完善,添加订单送达凭证照片预览功能
- 确认完成操作强制上传配送凭证照片,凭证支持JSON数组格式存储
- 收款操作支持上传凭证照片并追加至备注中
- 优化订单列表加载逻辑,多个请求结果合并去重并按创建时间降序排序
- 代码格式调整及UI细节优化,提升代码一致性和用户体验
2026-07-01 16:54:10 +08:00
1fa58040f3 feat(user): 新增收货地址管理及售后申请页面
- 新增地址类型定义,增强前端地址数据结构
- 新增地址编辑页面,支持地址智能识别和定位选点功能
- 地址编辑支持省市区选择及默认地址设置
- 新增地址列表页面,支持地址展示、删除、编辑和选择功能
- 实现售后申请页面,支持选择售后类型和退款原因
- 售后申请支持商品选择、退款金额计算和凭证上传
- 新增售后详情页面,支持售后状态展示及申请取消
- 优化页面加载和用户交互体验,增加错误提示和权限处理
2026-07-01 12:11:56 +08:00
c2de1fcd12 fix(search): 修复搜索页商品状态筛选条件错误
- 将搜索页商品筛选条件由 isShow: 1 修改为 status: 0,统一与商城主页规则
- 确认收藏列表和浏览历史不受影响,维护数据一致性

feat(price): 全站商品价格登录后可见脱敏实现

- 将所有硬编码价格替换为支持游客脱敏的 <Price loginMask> 组件
- 覆盖首页热销、收藏列表、秒杀列表、秒杀详情、拼团列表和拼团详情多个页面
- 秒杀详情价格组件支持白色字体,保持视觉效果一致
2026-06-27 21:43:55 +08:00
dc0909d37d fix(shop): 修复商品详情页轮播图显示不完整问题
- 将图片裁剪模式从 aspectFill 改为 widthFix,确保图片宽度撑满屏幕
- 新增 swiperHeight 状态,根据首张图片实际宽高比动态计算轮播图高度
- 通过图片 onLoad 事件设置动态高度,避免图片被裁剪不完整
- 优化图片组件布局,移除高度限制,防止图片变形
2026-06-27 10:02:32 +08:00
7693c7a3d6 fix(SkuSelector): 修正价格显示逻辑避免价格错误
- 调整fakeSku中price字段优先使用product.price,确保价格正确显示
- 修改currentPrice计算顺序,使price优先于salePrice,符合实际售价需求
- 统一价格逻辑,避免SKU弹窗和商品详情页价格不一致问题
- 添加注释说明ShopGoods和ShopGoodsSku中price与salePrice的区别及优先级规则
2026-06-27 01:13:51 +08:00
cdab04de21 fix(SkuSelector): 修正价格显示逻辑避免价格错误
- 调整fakeSku中price字段优先使用product.price,确保价格正确显示
- 修改currentPrice计算顺序,使price优先于salePrice,符合实际售价需求
- 统一价格逻辑,避免SKU弹窗和商品详情页价格不一致问题
- 添加注释说明ShopGoods和ShopGoodsSku中price与salePrice的区别及优先级规则
2026-06-27 01:08:04 +08:00
9f1c50b7a4 fix(SkuSelector): 修正价格显示逻辑避免价格错误
- 调整fakeSku中price字段优先使用product.price,确保价格正确显示
- 修改currentPrice计算顺序,使price优先于salePrice,符合实际售价需求
- 统一价格逻辑,避免SKU弹窗和商品详情页价格不一致问题
- 添加注释说明ShopGoods和ShopGoodsSku中price与salePrice的区别及优先级规则
2026-06-27 00:44:38 +08:00
7f43897a64 refactor(api): 优化商品收藏接口调用并统一数据解包
- 新增 unwrap 函数统一处理响应数据解包
- 将收藏相关接口改为 async 函数,显式等待请求结果
- 统一调用 unwrap 提取响应中的 data 字段,保障数据一致性
- 确保收藏状态接口返回纯布尔值,避免类型不确定
- 收藏列表接口添加空数组和空对象默认值处理,防止异常

refactor(shop): 简化购物车和客服页面跳转逻辑

- 购物车跳转采用 navigateTo,确保非 tabBar 页面正常打开
- 客服跳转直接进入客服页面,去除复杂客服会话功能调用逻辑
2026-06-26 22:39:17 +08:00
6f83780e9c fix(shop): 修复商品详情页底部三按钮功能异常
- 修正购物车按钮路由,改用 navigateTo 指向实际页面
- 实现微信小程序原生客服会话,失败时降级跳转客服页面
- 优化收藏接口容错,错误时仍同步前端状态避免UI卡死
- 去除重复错误提示,保持错误信息统一由handleError处理
2026-06-26 22:34:45 +08:00
44ca5bbbfc feat(shop): 添加商品详情页轮播图点击放大预览功能
- 在 src/pages/shop/product-detail.tsx 的轮播图 Image 上添加 onClick 事件
- 使用 Taro.previewImage 实现图片全屏预览和左右滑动浏览
- 同样在 src/pages/points/product-detail.tsx 商品图片添加点击预览功能
- 新增完整的 shop-api 秒杀模块,包含实体、参数、mapper、service、controller 和定时任务
- 实现防重复提交、活动校验、限购校验和原子扣库存的秒杀核心下单逻辑
- 提供管理端 CRUD 与用户端秒杀订单相关接口
- 引入定时任务 SeckillStatusTask 定时更新秒杀活动状态
- 添加秒杀模块相关数据库建表脚本和接口路径对齐前端设计
2026-06-26 22:25:07 +08:00
8fb0bbcd8b fix(shop): 修复商品详情页图片显示和收货地址接口兼容性
- 新增 parseContent 函数,将 Markdown 图片语法转换为 RichText 可识别的 HTML 标签
- RichText 组件中使用 parseContent 处理后的内容,解决图片无法显示问题
- 重写 listShopUserAddress 接口,兼容后端多种响应格式及 code 为 0 或 200 的情况
- useAddress 中添加加载地址日志,优化错误捕获并规范日志输出格式
2026-06-25 22:48:37 +08:00
e72ca89b2b feat(user): 完善提现规则展示与秒杀购买交互
- 新增提现规则卡片,展示提现额度、最低提现、单次限额、每日限额、每日提现次数、提现时间、到账时间、手续费等
- 添加提现规则说明文字,提示审核时间、提现次数限制、金额范围和提现时间段
- 优化秒杀详情和秒杀页面购买按钮交互,增加秒杀状态提示(未开始、已结束、已抢光)
- 统一秒杀购买事件处理函数名为 handleBuyClick,取消按钮条件绑定,增强点击响应体验
- 新增提现规则相关样式,确保提现规则卡和说明区块视觉效果一致
2026-06-23 16:52:21 +08:00
8975197522 fix(api): 替换所有接口请求的域名为 guilixu-api.websoft.top
- 将获取 STS Token 的接口地址由 paopao-api 改为 guilixu-api
- 更新图片上传接口地址为新的 guilixu-api 域名
- 修改用户推广页面中邀请码链接和二维码接口的域名
- 更改注册页微信登录接口请求的域名为 guilixu-api
2026-06-17 16:50:30 +08:00
f3886664f7 fix(api): 替换所有接口请求的域名为 guilixu-api.websoft.top
- 将获取 STS Token 的接口地址由 paopao-api 改为 guilixu-api
- 更新图片上传接口地址为新的 guilixu-api 域名
- 修改用户推广页面中邀请码链接和二维码接口的域名
- 更改注册页微信登录接口请求的域名为 guilixu-api
2026-06-16 17:15:59 +08:00