Files
guilixu-admin/.workbuddy/memory/2026-08-17.md
T
gxwebsoft 65926a35b6 fix(special-zone): 修复专区商品抽屉分页点击无效
- 将分页配置从内联对象改为计算属性,避免分页参数被 Vue 不自动解包的问题
- goodsPagination 计算属性返回正确的分页参数并绑定 onChange 事件
- onChange 中调用 loadGoods 时修正 currentSectionId 使用 .value 获取
- 调整商品操作列宽度以适应界面显示
- 验证 vite build 通过,分页功能正常响应点击
2026-08-17 14:50:31 +08:00

28 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 2026-08-17 工作日志
## 专区销量统计功能(/special/zone
- 调研:专区与商品靠 `ShopGoods.section_ids`(逗号串)关联;`ShopOrderGoods` 无 sectionId,有 `goodsId/totalNum/price/payStatus/orderStatus/tenantId`;商品有 `sales` 累计字段。
- 确认方案:方案B(订单真实成交聚合)+ 列表汇总列 + 独立统计弹窗,指标=销量件数+销售额。
- 后端 guilixu-javashop 模块)改动:
- ShopHomeSection 实体加 salesNum/salesAmount@TableField(exist=false)
- 新建 VOSectionSalesSummaryVO / ShopSectionGoodsRankVO / SectionSalesStatsVOvo 包)
- ShopHomeSectionMapper 加 selectSectionSalesSummary(批量)/ selectSectionGoodsRankTOP50
- ShopHomeSectionServiceImpl.pageRel 批量填充汇总 + 新增 getSectionSalesStats
- ShopHomeSectionController 新增 GET /{id}/stats?start=&end=
- 口径:payStatus=1 且 orderStatus NOT IN(2,6)tenantId 隔离,时间对应 create_time
- 前端 guilixu-admin
- shopZone API 加 getSectionSalesStatsmodel 加字段与 VO 类型
- zone/index.vue 列表加「销量件数」「销售额」列 + 操作列「销量」按钮
- 新建 SectionSalesStatsModal.vue(时间筛选 + 汇总卡片 + 商品排行)
- vite build 通过(exit 0
- 待办:后端需 maven 编译并部署到 shop-api.websoft.top 才生效(本环境未部署)。
## 修复专区商品抽屉分页点击无效
- 文件:`src/views/special/zone/index.vue`
- 问题:抽屉里 `a-table``:pagination` 直接内联写 `{ current: goodsPage, pageSize: goodsPageSize, total: goodsTotal }`,对象属性中的 ref 不会被 Vue 自动解包,Pagination 拿到的是 ref 对象而非 number,导致分页按钮点不动。
- 修复:
- 提取 `goodsPagination = computed(() => ({ total: goodsTotal.value, current: goodsPage.value, pageSize: goodsPageSize.value, showSizeChanger: true, onChange: ... }))`
- `:pagination="goodsPagination"`
- `onChange``loadGoods(currentSectionId.value)` 修正为 `.value`
- 验证:`vite build` 通过(exit 0)。