manual_fee_discount

文件狀態:初版。
最後驗證日期:2026-05-20。

快速判讀

quote_requests.manual_fee_discount 是找新客戶列表手動報價 fee 的折扣倍率。

意義列表文字
1.0000不折扣空字串
0.80008 折8折
0.60006 折6折

前端畫面可能再加上 限時,變成 限時8折 / 限時6折

誰會讀它

流程用途
quote bid 列表轉成 manual_fee_discount_text
列表 discount filtermanual_fee_discount < 1 或上下界篩選
fee preview / contact fee把它當既有倍率計算
discount bid 插入只挑 manual_fee_discount < 1 的案件

誰會寫它

一般 TW 案件的 6/8 折由 cron 寫入:

cron_list_7/Lib/ETL/adjust_request_fee.php

本地若沒有跑:

cron_list_7/DataMart/main.php

這個欄位不會因時間到而自動變 8 折或 6 折。

TW cron 規則

基本條件:

r.sent_count > 10
r.is_notification_mail_sent = 1
r.manual_fee > 0
r.is_closed = 0
r.is_archived = 0
r.is_allow_contact_charge = 0
r.match_type != 7

折價條件:

案件年齡互動條件原本折扣新折扣
24-48 小時0 報價且 0 auto contact10.8
48-72 小時報價 + auto contact <= 110.8
72-144 小時報價 + auto contact <= 10.80.6

白話:

太久沒什麼互動 -> 先 8 折
已經 8 折又繼續沒什麼互動 -> 6 折

價格如何跟著變

折價時同步更新:

manual_fee_discount
manual_fee
site_fee
contact_charge_fee
original_contact_charge_fee

計算方式:

manual_fee = round((目前 manual_fee / 目前 manual_fee_discount) * 新 discount)
contact_charge_fee = round(original_contact_charge_fee * 新 discount)
contact_charge_fee 最低 75
site_fee = manual_fee

第一次從 1 進入折扣時,會先記錄:

original_contact_charge_fee = contact_charge_fee

7 天後恢復

同一支 cron 會恢復 7 天後、45 天內的折扣案。

條件:

r.created < current_timestamp - interval 7 day
r.created > current_timestamp - interval 45 day
manual_fee_discount < 1

恢復:

manual_fee_discount = 1
manual_fee = manual_fee / 舊 manual_fee_discount
site_fee = manual_fee
contact_charge_fee = original_contact_charge_fee

Log

折價或恢復都會寫:

quote_request_fee_change_logs

常用來確認某筆 request 為什麼變成 8 折或 6 折。

和其他 fee 規則的關係

manual_fee_discount 是後補折扣倍率。

初始 manual_fee 仍可能先被其他規則影響:

category 基礎費
variable fee
quote_fee_adjust_campaigns
quote_group_variable_fees
quote_categories.fee_discounts
booking user / area special case

注意:

quote_categories.fee_discounts 會影響初始 fee multiplier
但列表的 6折 / 8折文字主要看 manual_fee_discount

其他寫入點

情境寫入值
booking user1.0
SG area special case0
HK adjust_request_fee_hk0.5
wallet admin 補款流程可能 reset 成 1

排查

  1. quote_requests.manual_fee_discount
  2. quote_request_fee_change_logs
  3. 若本地沒有變折扣,確認是否有跑 cron_list_7/DataMart/main.php
  4. 若是 production,查 pro360_data_mart.etl_status 是否啟用 adjust_request_fee

完整流程請看 Quote Bid 列表價格與手動報價折扣