我正在構建一個庫存管理系統,該庫存管理系統由一個數量值包含多個事務的產品表組成,其中包含多個事務以記錄庫存是如何添加到系統中的。將數據從控制器中的對象傳遞到模型方法
交易一旦創建,產品表上的數量(庫存量)就需要重新計算。我正在尋找最好的方式做到這一點
current_product = Product.find_by_id(product_id)
transaction = current_product.transactions.create(
:qty => 10,
:value => 5.00,
)
#once a transaction has been created it needs to reclcuate the SOH value at the SKU level
current_product.update_stock_on_hand(transaction.id)
我不知道如何寫在產品型號的update_stock_on_hand
方法。目前,它查找剛剛創建的事務ID並獲取需要更改的數量值。
update_stock_on_hand
的結果是否應該傳遞迴控制器並保存在控制器中,或者我可以在模型中執行所有操作嗎?如果是後者,最好的方法是什麼?