/quote_feedbacks/sent[/sort:{sort}].json | GET | 使用者 session + API key | app/Plugin/Quotes/Controller/QuoteFeedbacksController.php:38 | 使用者送出的 feedback 清單 | QuoteFeedbacks::sent() | 已補 action + routing + PHPUnit | 正式 legacy access log 有 GET 200 共 213 筆;本地保留 raw array、sort、nested comments / attachments、service photo、Redis session cache、inactive-user guard、auth side effects 與專用 legacy info/warning log。PHP 8.2 測試 10 tests, 76 assertions;待 new staging 複驗。調查與前端截圖見 details/quote_feedbacks/sent.md。 |
/quote_service_categories/add... | POST | 使用者 session + API key | app/Plugin/Quotes/Controller/QuoteServiceCategoriesController.php:134 | 新增 pro service category | QuoteServiceCategories::add() | 已補 action + routing + PHPUnit | Legacy 9930 / 130 baseline 與 2026-07-23 new staging 9930 / 700 response / DB 已確認;duplicate rollback、PHP 5.6 numeric-string parity 已補。Nginx rewrite 造成專用 log 遺失 named parameters 的修正已完成 staging 部署後複驗:專用與 generic log 均保留完整 path,且沒有產生短版 channel。本地 add 測試 17 tests, 147 assertions,完整 QSC regression 27 tests, 234 assertions。調查見 details/quote_service_categories/add.md。 |
/quote_service_categories/job_preference_form.json | 待確認 | 全域 API key | app/Plugin/Quotes/Controller/QuoteServiceCategoriesController.php:316 | job preference form schema | 未找到 | 未找到 | 新專案 QuoteServiceCategories 沒有同名 method。 |
/quote_service_categories/pricing_form/{quote_category_id}.json | GET | API key;client 也會帶 session | app/Plugin/Quotes/Controller/QuoteServiceCategoriesController.php:400 | pricing form schema | QuoteServiceCategories::pricing_form() | 已補 action parity + routing + PHPUnit | 正式流量高;2026-06-18 查到多個 category path 200,包含 201 895 筆、206 829 筆。new 保留既有 top-level new = 1。調查見 details/quote_service_categories/pricing_form.md。 |
/quote_service_categories/edit/.json, /quote_service_categories/edit/{quote_service_category_id}.json | POST | 使用者 session + API key | app/Plugin/Quotes/Controller/QuoteServiceCategoriesController.php:488 | 編輯 / 建立 pro service category setting | QuoteServiceCategories::edit() | 已補 action + routing + PHPUnit | 正式流量高;legacy validateSave() 會更新多張表,已補主流程、budget pending、log、pricing rows、auto quote branch。本地測試通過,legacy staging baseline 已補。調查見 details/quote_service_categories/edit.md。 |
/quote_service_categories/pricing_preview.json | 待確認 | API key | app/Plugin/Quotes/Controller/QuoteServiceCategoriesController.php:603 | pricing preview | 未找到 | 未找到 | mapping 檔有舊路徑規則,但 QuoteServiceCategories::pricing_preview() method 未找到。 |
/quote_service_categories/nearme.json | 待確認 | API key | app/Plugin/Quotes/Controller/QuoteServiceCategoriesController.php:679 | nearme | 未找到 | 未找到 | 新專案 QuoteServiceCategories 沒有同名 method。 |
/quote_services/add.json | POST | API key;session optional | app/Plugin/Quotes/Controller/QuoteServicesController.php:1009 | 新增 pro service;支援 session、登入、註冊、social path | QuoteServices::add() | 已補 action + routing + PHPUnit | 2026-06-12 正式機有 POST 200 合計 2209 筆、OPTIONS 200 合計 887 筆;同次未見 legacy HTML path /quote_services/add 流量。已完整搬 user resolve、service insert、category mapping、external review URL、activity、queue、notification side effect。調查見 details/quote_services/add.md。 |
/quote_services/edit/{quote_service_id}.json | POST | 使用者 session + API key | app/Plugin/Quotes/Controller/QuoteServicesController.php:1734 | 編輯 pro service | QuoteServices::edit() | 已補 action + routing + PHPUnit | 已補主 service explicit update allowlist、contact full sync、attachment/photo DB write、content review、profile score、activity、service_update queue、category mapping rebuild、rematch queue。縮圖產生仍列為切換前待確認。調查見 details/quote_services/edit.md。 |
/quote_services/update.json | 待確認 | 全域 API key | app/Plugin/Quotes/Controller/QuoteServicesController.php:2415 | 更新 service | 未找到 | 未找到 | 新專案 QuoteServices 沒有 update()。 |
/quote_services/search_adm.json | 待確認 | 全域 API key | app/Plugin/Quotes/Controller/QuoteServicesController.php:2563 | search;名稱偏內部 | 未找到 | 未找到 | 新專案沒有 QuoteServices::search_adm();看起來偏舊內部 action。 |
/quote_services/quote_feedbacks_each_category.json | 待確認 | 全域 API key | app/Plugin/Quotes/Controller/QuoteServicesController.php:2893 | 每分類 quote feedback | 未找到 | 未找到 | 新專案有 Endpoint/V1/QuoteServices.php,但沒有 quote_feedbacks_each_category()。 |
/quote_services/static_fields.json | GET | 全域 API key | app/Plugin/Quotes/Controller/QuoteServicesController.php:3117 | static fields | QuoteServices::static_fields() | 已補 action + routing + PHPUnit | 正式機有 GET 200 合計 7006 筆;legacy 實際固定回 {"StaticFormField":[]},不讀寫 DB。調查見 details/quote_services/static_fields.md。 |
/quote_services/add_quote_faq.json | 待確認 | 使用者 session | app/Plugin/Quotes/Controller/QuoteServicesController.php:3176 | 新增 quote FAQ | 未找到 | 未找到 | 新專案 QuoteServices 沒有 add_quote_faq()。 |
/quote_services/change_status/archive/{quote_service_id}.json | POST | 使用者 session + API key | app/Plugin/Quotes/Controller/QuoteServicesController.php:3452 | 封存 pro service | QuoteServices::change_status_archive() | 已補 action + routing + PHPUnit | 正式機有少量前台流量;會更新 is_archived、寫 ArchiveService activity、送 greserve_archived / service_update task event。調查見 details/quote_services/change_status/archive.md。 |
/quote_services/change_status/profile_ready/{quote_service_id}.json | POST | 使用者 session + API key | app/Plugin/Quotes/Controller/QuoteServicesController.php:3452 | pro profile ready | QuoteServices::change_status_profile_ready() | 已補 action + routing + PHPUnit | 會進 _handle_profile_ready() 相容流程:啟用 service、設 onboard,並依 start_identity_free_credit_user_id / free credit event 決定是否排 queue、寫 wallet、送 Pro_Ready event。調查見 details/quote_services/change_status/profile_ready.md。 |
/quote_services/change_status/activate/{quote_service_id}.json | POST | 使用者 session + API key | app/Plugin/Quotes/Controller/QuoteServicesController.php:3452 | 啟用 pro service | 未找到 | 低優先 | 2026-06-11 正式機 quote_services/change_status/ log 未見 activate 前台流量;若補齊 umbrella 再拆獨立文件。 |
/quote_services/change_status/deactivate/{quote_service_id}.json | POST | 使用者 session + API key | app/Plugin/Quotes/Controller/QuoteServicesController.php:3452 | 停用 pro service | 未找到 | 低優先 | 2026-06-11 正式機 quote_services/change_status/ log 未見 deactivate 前台流量;若補齊 umbrella 再拆獨立文件。 |
/quote_services/change_status/unarchive/{quote_service_id}.json | POST | 使用者 session + API key | app/Plugin/Quotes/Controller/QuoteServicesController.php:3452 | 取消封存 pro service | 未找到 | 低優先 | 2026-06-11 正式機 quote_services/change_status/ log 未見 unarchive 前台流量;若補齊 umbrella 再拆獨立文件。 |
/quote_services/external_review/link/{quote_service_id}.json | GET | 使用者 session + API key | app/Plugin/Quotes/Controller/QuoteServicesController.php:3571 | 取得外部評價邀請連結 | QuoteServices::external_review_link() | 已補 action + routing + PHPUnit | 正式機有 GET 200 合計 4433 筆;已有 external_review_url 直接回傳,空值時建立 security_hashes 並寫回 service。調查見 details/quote_services/external_review/link.md。 |
/quote_services/external_review/invite/{quote_service_id}.json | POST | 使用者 session + API key | app/Plugin/Quotes/Controller/QuoteServicesController.php:3673 | 寄送外部評價邀請 email | QuoteServices::external_review_invite() | 已補 action + routing + PHPUnit | legacy 會用 email / emails 建立 External_Review event queue,template key 390 External Review Invite,且依賴 mail.icon.star_full。正式機 external_review 統計未見 invite path,但 legacy 有完整分支,已一起補齊。調查見 details/quote_services/external_review/invite.md。 |
/quote_services/external_review/submit.json | POST | 使用者 session 或外部 review 輸入 | app/Plugin/Quotes/Controller/QuoteServicesController.php:3620 | 提交外部評價 | QuoteServices::external_review_submit() | 已補 action + routing + PHPUnit | 正式機有 POST 200 合計 125 筆;支援 session user 與 User[...] 外部登入 / 註冊,成功建立 quote_feedbacks 與 QuoteService / AddReview activity。調查見 details/quote_services/external_review/submit.md。 |
/quote_services/fix_user_review_count.json | 待確認 | 使用者 session | app/Plugin/Quotes/Controller/QuoteServicesController.php:3607 | 看起來偏維護工具 | 未找到 | 未找到 | 新專案 QuoteServices 沒有同名 method。 |
/quote_services/tag.json | 待確認 | 全域 API key | app/Plugin/Quotes/Controller/QuoteServicesController.php:4644 | tag | 未找到 | 未找到 | 新專案 QuoteServices 沒有 tag()。 |
/quote_templates/view.json | 待確認 | 使用者 session | app/Plugin/Quotes/Controller/QuoteTemplatesController.php:81 | template detail | 未找到 | 未找到 | 新專案 QuoteTemplates 目前只看到 index()。 |
/quote_vendor_categories/view.json | 待確認 | 全域 API key | app/Plugin/Quotes/Controller/QuoteVendorCategoriesController.php:368 | vendor category detail | 未找到 | 未找到 | 新專案有 Endpoint/V1/QuoteVendorCategories.php,但沒有 view()。 |
/quote_vendor_categories/pro_selection_list/quote_category_id:{id}.json | GET | API key | app/Plugin/Quotes/Controller/QuoteVendorCategoriesController.php:399-458 | pro selection list | QuoteVendorCategories::pro_selection_list() | 已補 action + routing + PHPUnit | 30/60 天各 1 call 且唯一流量為 4xx,未確認 caller,疑似未使用;已補 Legacy parity,待保留/退役決策。詳見 details/quote_vendor_categories/pro_selection_list.md。 |
/service_certificates/view.json | 待確認 | 使用者 session | app/Controller/ServiceCertificatesController.php:369 | 服務證照 | ServiceCertificates::view() | 同路徑已存在 | 新專案 Endpoint/V1/ServiceCertificates.php 有同名 action。 |
/quote_feedbacks/recommend.json | 待確認 | 全域 API key | app/Plugin/Quotes/Controller/QuoteFeedbacksController.php:352 | 推薦 feedback | QuoteFeedbacks::recommend() | 同路徑已存在 | 新專案 Endpoint/V1/QuoteFeedbacks.php 有同名 action。 |
/quote_feedbacks/review.json | 待確認 | 全域 API key | app/Plugin/Quotes/Controller/QuoteFeedbacksController.php:376 | review feedback | QuoteFeedbacks::review() | 同路徑已存在 | 新專案 Endpoint/V1/QuoteFeedbacks.php 有同名 action。 |
/quote_reports/add.json | 待確認 | 使用者 session + API key | app/Plugin/Quotes/Controller/QuoteReportsController.php:127 | 新增 report | QuoteReportTopics::index() / QuoteReviewConsumers::add() | 可能需改路徑 | 新專案沒有 QuoteReports::add();只看到 report topics 與 consumer review 相關 endpoint。 |
/quote_service_categories/index.json | 待確認 | 使用者 session | app/Plugin/Quotes/Controller/QuoteServiceCategoriesController.php:531 | pro service category 清單 | QuoteServiceCategories::index() | 同路徑已存在 | 新專案 Endpoint/V1/QuoteServiceCategories.php 有同名 action。 |
/quote_service_categories/view.json | 待確認 | 使用者 session | app/Plugin/Quotes/Controller/QuoteServiceCategoriesController.php:570 | pro service category detail | QuoteServiceCategories::view() | 同路徑已存在 | 新專案 Endpoint/V1/QuoteServiceCategories.php 有同名 action。 |
/quote_services/index.json | 待確認 | 使用者 session | app/Plugin/Quotes/Controller/QuoteServicesController.php:61 | pro service 清單 | QuoteServices::index_myservices() | 可能需改路徑 | 新專案 mapping 是 /quote_services/index/type:myservices... 到 index_myservices();未找到同名 index()。 |
/quote_services/view.json | 待確認 | 使用者 session | app/Plugin/Quotes/Controller/QuoteServicesController.php:2254 | pro service detail | QuoteServices::view() | 同路徑已存在 | 新專案 Endpoint/V1/QuoteServices.php 有同名 action。 |
/quote_services/profile.json | 待確認 | 全域 API key | app/Plugin/Quotes/Controller/QuoteServicesController.php:2465 | pro profile | Service::index() / QuoteServices::view() | 可能需改路徑 | 新專案沒有 QuoteServices::profile();pro profile 可能已拆到 Service 或 QuoteServices::view(),需確認 payload。 |
/quote_services/search.json | GET | 全域 API key | app/Plugin/Quotes/Controller/QuoteServicesController.php:2729 | pro search | QuoteServices::search() | 已補 action + routing + PHPUnit | 2026-06-17 legacy 正式 log 有少量 /quote_services/search.json?keyword=... 與 /quote_services/search/tag:{tag}.json 200;目前 web-app active pro list 已走 /quote_services/pro_list...。本次補 legacy compatibility,包含 no-tag / missing-tag / keyword fallback。調查見 details/quote_services/search.md。 |
/quote_services/quote_feedbacks.json | 待確認 | 全域 API key | app/Plugin/Quotes/Controller/QuoteServicesController.php:2861 | quote feedback | QuoteServices::quote_feedbacks() | 同路徑已存在 | 新專案 Endpoint/V1/QuoteServices.php 有同名 action。 |
/quote_services/quote_feedbacks_public.json | 待確認 | 全域 API key | app/Plugin/Quotes/Controller/QuoteServicesController.php:3006 | public quote feedback | QuoteServices::quote_feedbacks_public() | 同路徑已存在 | 新專案 Endpoint/V1/QuoteServices.php 有同名 action。 |
/quote_services/quote_faq.json | 待確認 | 使用者 session | app/Plugin/Quotes/Controller/QuoteServicesController.php:3292 | quote FAQ | QuoteServices::quote_faq() | 同路徑已存在 | 新專案 Endpoint/V1/QuoteServices.php 有同名 action。 |
/quote_templates/index.json | 待確認 | 使用者 session | app/Plugin/Quotes/Controller/QuoteTemplatesController.php:23 | template 清單 | QuoteTemplates::index() | 同路徑已存在 | 新專案 Endpoint/V1/QuoteTemplates.php 有同名 action。 |
/quote_vendor_categories/index.json | 待確認 | 全域 API key | app/Plugin/Quotes/Controller/QuoteVendorCategoriesController.php:374 | vendor category 清單 | QuoteVendorCategories::index() | 同路徑已存在 | 新專案 Endpoint/V1/QuoteVendorCategories.php 有同名 action。 |