From da1c5e7c309f6e23966d6e59e1cdcab167c41fad Mon Sep 17 00:00:00 2001 From: zhx Date: Mon, 15 Jun 2026 00:37:52 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=A5=E8=B5=84=E7=9B=B8=E5=85=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../internal/storage/mysql/host_salary_settlement.go | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/services/wallet-service/internal/storage/mysql/host_salary_settlement.go b/services/wallet-service/internal/storage/mysql/host_salary_settlement.go index f954f6b9..071955b3 100644 --- a/services/wallet-service/internal/storage/mysql/host_salary_settlement.go +++ b/services/wallet-service/internal/storage/mysql/host_salary_settlement.go @@ -437,16 +437,16 @@ func (r *Repository) queryActiveHostSalaryPolicy(ctx context.Context, q hostSala modeClause := "" triggerClause := "" args := []any{appcode.FromContext(ctx), regionID, nowMs, nowMs} - if strings.TrimSpace(settlementMode) != "" { - // 结算任务必须精确匹配结算模式;H5 展示不传模式时只按区域取最新生效政策。 - modeClause = "AND settlement_mode = ?" - args = append(args, settlementMode) - } if strings.TrimSpace(triggerMode) != "" { // H5 展示不传 trigger 时 automatic/manual 都可展示;结算任务传 trigger 时仍精确匹配。 triggerClause = "AND settlement_trigger_mode = ?" args = append(args, triggerMode) } + if strings.TrimSpace(settlementMode) != "" { + // SQL 里 trigger 条件排在 mode 前面,所以参数也按 trigger -> mode 追加;否则 manual half-month 会被查成 trigger=half_month。 + modeClause = "AND settlement_mode = ?" + args = append(args, settlementMode) + } query := fmt.Sprintf(` SELECT policy_id, name, region_id, status, settlement_mode, settlement_trigger_mode, CAST(gift_coin_to_diamond_ratio AS CHAR),