Change Status Invoice

對應 legacy API:

/quote_bids/change_status/invoice/{quote_bid_id}.json

快速結論

  • 用途:provider 建立 / 更新 invoice。
  • actor:provider。
  • new API:目前未搬。
  • 注意:這條和 payment / transaction 關係深,不要和 rating 同一批。

Legacy 規則

request data:

invoice_date
reference_no
invoice_description[]
invoice_amount[]
quote_invoice_id

成功 side effect:

  • 建立或更新 quote_invoices
  • 重建 quote_invoice_items
  • 檢查 invoice amount 必須大於等於 quote.minimum_site_transaction_amount
  • 建立 transactions,class = QuoteInvoice
  • 寫 SubmitInvoice / UpdateInvoice activity
  • 送 message notification 給 consumer
  • 回傳 pending amount 與 invoice list

建議處理

  • 獨立成 invoice migration batch。
  • 先補 DB schema 與 transaction 文件。
  • 測試要覆蓋新增 invoice、更新未付款 invoice、低於 minimum amount。