1
我正在POS系統中工作,並且我正在使用Firebase作爲後端。我需要做的一個報告是「大多數/少銷售的產品」。Firebase數據結構想法
我有我的結構是這樣/sales/
:
"1234": {
"date": 1234567890, // timestamp
"products": {
"coca-cola-clasica-355-ml": {
"quantity": 3,
"salesPrice": 500,
"costPrice": 400
},
"coca-cola-clasica-600-ml": {
"quantity": 6,
"salesPrice": 900,
"costPrice": 700
}
},
"subtotal": 6400,
"total": 6400
},
"5678": {
"date": 1234567890, // timestamp
"products": {
"taqueritos-chile-picante": {
"quantity": 2,
"salesPrice": 100,
"costPrice": 80
},
"coca-cola-clasica-600-ml": {
"quantity": 4,
"salesPrice": 900,
"costPrice": 700
}
},
"subtotal": 200,
"total": 200
}
而且/產品/:
{
"coca-cola-clasica-355-ml": {
"costPrice": 350,
"name": "Coca Cola Clasica 355 ml",
"salesPrice": 500,
"stock": 99,
"supplier": "femsa-coca-cola",
"tax": false,
},
"coca-cola-clasica-600-ml": {
"costPrice": 700,
"name": "Coca Cola Clasica 600 ml",
"salesPrice": 900,
"stock": 99,
"supplier": "femsa-coca-cola",
"tax": false,
},
"taqueritos-chile-picante": {
"costPrice": 80,
"name": "Taqueritos Chile Picante",
"salesPrice": 100,
"stock": 500,
"supplier": "dinant",
"tax": true
}
}
所以,如果我要得到「最暢銷的產品」現在我不得不遍歷所有的銷售和添加數量,每次我找到一個產品,然後訂購結果,並得到最賣的產品,這很糟糕。
我有兩個思路來解決這個:
- 一個屬性添加到
/products/
像「soldTimes」和每一個產品銷售的時間加量。 - 創建第三個實體電話,如
soldProducts
,並計算每次客戶購買時每個產品的銷售數量。
這2種方法有效嗎?我在Firebase中丟失了什麼?
感謝您的幫助。
謝謝!這絕對是更好,更快的閱讀。 – fmontes