Project

General

Profile

Actions

解析Bug #435

closed
ZY ZY

v3.0: Some order data is missing when paging the order list (暂时关闭,因为马上切换到4.0)

解析Bug #435: v3.0: Some order data is missing when paging the order list (暂时关闭,因为马上切换到4.0)

Added by Zhongbao Ye over 1 year ago. Updated about 2 months ago.

Status:
已关闭
Priority:
普通
Assignee:
Target version:
IT: Easytryck (Sweden) - v3.0
Start date:
Due date:
% Done:

100%

Estimated time:
4.00 h

Description

Task Details
  1. Investigate the cause of data loss.
Input
  • Bruce
Output
  • Report and Solution

Others

ZY Updated by Zhongbao Ye over 1 year ago Actions #1

Output(2024/10/15) 九亭

原因: order list 分页处理错误

详细信息:

列表显示的SQL查询的步骤:
step 1. 查询满足所有条件的订单ids。 Sql: 【... limit 0, 80】
step 2. 查询所有的order products 数据,sql:   【... order_id in (step 1 的ids)】。
        该结果按照order products级别展示,条数肯定是大于/等于80

列表分页查询步骤:
step 1. 根据前端传递offset字段(列表总行数),组装limit数据,Sql:【... limit offset, 80】
step 2. 查询所有的order products 相关字段,sql:   【... order_id in (step 1 的ids)】。

问题出在offset字段,前端offset返回的是order products总行数(order products总行数>=订单总数),这将在后端查询sql时,错误计算limit(正确:limit 80, 80,错误:limit offset, 80)

解决方案:
  1. 前端正确计算offset(取去重后的order总个数,而不是取所有 order product的总个数)
    • 前端框架封装好的offset处理方式,(不推荐)
  2. 后端修改Sql查询(推荐)
    • Old: 查询满足条件的所有order
    • New: 查询满足条件的所有order products

因影响性不是很大,紧急度低。暂时先记录于此,后续找时间修改。

XF Updated by Xihua Fan 2 months ago Actions #2

  • Subject changed from v3.0: Some order data is missing when paging the order list to v3.0: Some order data is missing when paging the order list (暂时关闭,因为马上切换到4.0)
  • Status changed from 新建 to 已关闭

XF Updated by Xihua Fan about 2 months ago Actions #3

  • % Done changed from 0 to 100
Actions

Also available in: PDF Atom