perf(query): 优化后台手机号精确查询
This commit is contained in:
@@ -41,14 +41,15 @@ require_pattern "backend/internal/modules/pickup/repository.go" "if pageSize > 1
|
||||
# 智能意图路由与单表唯一索引直达防线(防止多表跨表 OR/LIKE 导致 MySQL 放弃索引而退化为全表扫描)
|
||||
require_pattern "backend/internal/modules/order/queries.go" "o.order_no = ?" "订单列表订单号唯一索引直达"
|
||||
require_pattern "backend/internal/modules/order/queries.go" "l.listing_no = ?" "订单列表商品号唯一索引直达"
|
||||
require_pattern "backend/internal/modules/order/queries.go" "owner.phone = ? OR renter.phone = ?" "订单列表手机号索引直达"
|
||||
require_pattern "backend/internal/modules/order/queries.go" "o.owner_id = (SELECT id FROM users WHERE phone = ?)" "订单列表手机号解析用户索引直达"
|
||||
require_pattern "backend/internal/modules/order/queries.go" "page == 1 && len(rows) < pageSize" "订单列表首页面单扫描短路"
|
||||
|
||||
require_pattern "backend/internal/modules/pickup/repository.go" "p.pickup_no = ?" "提号列表提号单号唯一索引直达"
|
||||
require_pattern "backend/internal/modules/pickup/repository.go" "owner.phone = ?" "提号列表号主手机号索引直达"
|
||||
require_pattern "backend/internal/modules/pickup/repository.go" "p.owner_id = (SELECT id FROM users WHERE phone = ?)" "提号列表号主手机号解析用户索引直达"
|
||||
require_pattern "backend/internal/modules/pickup/repository.go" "page == 1 && len(rows) < pageSize" "提号列表首页面单扫描短路"
|
||||
|
||||
require_pattern "backend/internal/modules/dispute/query.go" "o.order_no = ?" "纠纷列表订单号唯一索引直达"
|
||||
require_pattern "backend/internal/modules/dispute/query.go" "o.owner_id = (SELECT id FROM users WHERE phone = ?)" "纠纷列表手机号解析用户索引直达"
|
||||
require_pattern "backend/internal/modules/dispute/query.go" "page == 1 && len(rows) < pageSize" "纠纷列表首页面单扫描短路"
|
||||
|
||||
require_pattern "backend/internal/modules/adminuser/repository.go" "u.phone = ?" "用户管理手机号唯一索引直达"
|
||||
@@ -58,7 +59,10 @@ require_pattern "backend/internal/modules/listing/query.go" "l.listing_no = ?" "
|
||||
require_pattern "backend/internal/modules/listing/query.go" "page == 1 && len(rows) < pageSize" "商品列表首页面单扫描短路"
|
||||
|
||||
require_pattern "backend/internal/modules/chat/support.go" "l.listing_no = ?" "客服会话商品号唯一索引直达"
|
||||
require_pattern "backend/internal/modules/chat/support.go" "renter.phone = ? OR owner.phone = ?" "客服会话手机号唯一索引直达"
|
||||
require_pattern "backend/internal/modules/chat/support.go" "matched_phone.conversation_id = c.id" "客服会话手机号经订单角色索引直达"
|
||||
|
||||
require_pattern "backend/internal/modules/adminfinance/disbursement_list.go" "d.source_type = ? AND d.user_id = (SELECT id FROM users WHERE phone = ?)" "出款列表手机号解析用户索引直达"
|
||||
require_pattern "backend/internal/modules/adminfinance/disbursement_list.go" "wr.user_id = (SELECT id FROM users WHERE phone = ?)" "出款列表手机号在联合前裁剪来源"
|
||||
|
||||
# 禁止核心列表重新引入跨表 6~10 路全扫描反模式
|
||||
forbid_pattern "backend/internal/modules/dispute/query.go" "o.order_no LIKE ? OR l.listing_no LIKE ? OR a.title LIKE ? OR owner.phone LIKE ? OR renter.phone LIKE ? OR d.id = ?" "纠纷列表禁止6表无意图全表扫描"
|
||||
|
||||
Reference in New Issue
Block a user