Post by NTCart.com » Sat Jan 01, 2022 4:46 pm

如果同一張訂單需要由不同倉庫出貨、或是不同的運送方式(低溫+常溫)出貨、或是分批出貨(現貨+預購),都是需要能支援拆單的功能,否則若只用內建的訂單管理功能,必須搭配許多註記和人工作業,效率一定非常糟糕。

很多人都以為,要處理上述拆單的需求,就是要修改結帳機制,當新訂單同時購買了A、B兩家上游商家(或生產者)的商品時,系統就直接產生兩張訂單,達成拆單的效果。

但事實上系統的架構設計並不是這麼簡單,買家只有結一次帳,所以就只有一次付款及銷帳、只能算一次運費、只能用一組折價券、只能套一次滿額折扣 ....,但是產生了兩筆訂單,前面的付款、運費、折價券、滿額折扣等等,要如何拆分到兩張訂單,例如假設買家採銀行虛擬帳號轉帳付款,付款後如何一次消兩筆訂單的帳,都是問題,不只不容易解決,還會讓系統架構變得複雜,難以維護及再擴充。

而真正比較簡潔的設計方式,應該是維持原來的結帳機制與訂單架構,改採用即時拆單的擴充設計,就是在不更動原始功能架構之下,額外設計訂單匯出或供應商訂單檢視模組,在系統資料庫中,仍是維持一張訂單的結構儲存,所以結帳及訂單的管理功能皆無須客製修改。

如果分單後是要轉匯入ERP或進銷存系統,本來轉匯其他系統就要開發訂單資料匯出的程式了,只要在此匯出訂單的程式中,設計好拆單的功能即可,例如將一張系統訂單,轉出成多張訂單再給ERP或進銷存即可。

如果是要轉單給上游商家(或生產者),則只要擴充設計一套依供應商查詢訂單的擴充模組,讓供應商只能查詢、檢視含有購買自家商品的訂單及內容,雖然查詢的資料是含有多家供應商商品的訂單,但顯示的部分設計成只顯示該供應商的商品品項,如此就能達到拆單的效果,而無需為了拆單而大幅修改系統的結帳機制與訂單架構,不但不影響系統的穩定度,擴充的部分也會比較單純而容易設計。

台灣頂級 OpenCart 技術支援廠商
OpenCart 網站代管、客製、維護 https://www.osec.tw/
OpenCart 台灣優化版 https://www.osec.tw/opencart.html
OpenCart 台灣電商社團 https://www.facebook.com/groups/opencart.taiwan/


New member

Posts

Joined
Tue Nov 15, 2016 9:15 pm

Who is online

Users browsing this forum: No registered users and 4 guests