0

Dexie.js を使用して、JavaScript で単純な在庫/販売アプリケーションを作成しようとしています。たった 1 つの製品の総売上高に対してクエリを複数回実行するひどい再帰コードを書かずに、総売上高を返す方法がわかりません。

私のスキーマは次のようになります。

clients: "++id, name, phone",
order: "++id, clientId, daate",
order_content: "orderId, productId, qty",
product: "++id, name, mu, mk_cost, sa_cost, prod_cost",
stock: "++id, date, productId, qty, lot"

「商品」に商品の種類と価格などの詳細を保存します。注文が行われると、clientId を Order に保存し、「order_content」を使用してそこにアイテムを保存し、orderId をキーとして並べ替えます。

私は基本的にすべてのアイテムの合計とその合計をしたいと思っています。

以下のコードを db.product.each() ループで実行しようとしましたが、複雑になっているようです。

var product1Total = 0;
function calculateTotal(productId, price){
db.order_content
.where("productID")
.equals(productId)
.each(function(item){
product1Total += (price * qty)
})
}

ありがとうございました!

4

2 に答える 2