2017-11-07 10 views
0

現在AndroidのFirebaseListAdapterを使用して注文のリストを表示しています。ファイヤーベースで1日の総注文から販売されたアイテムの数を取得する方法

私の注文はこのようにfirebaseデータベースに保存されます。私はアイテムのチャートを作成したいと思います

-completed 
-KsRHO1sLcVxKtVMec3o 
     dateCreated: 1503713136950 
     orderItems: 0 
       description: “Fries” 
       id: 101 
      1 
       description: “Small Burger“ 
       id: 1023 

は、どのように私は完了した注文のリストを通過し、特定の日に販売されているフライドポテトの量を数えることができる

を販売しましたか?

私はこの

{ 
    “Item”: “fries”, 
    “amountSold”: 34 
    } 
{ 
    “Item”: “Small Burger”, 
    “amountSold”: 4 
    } 

答えて

0

Firebase機能がそれを行うことが容易になりますようにデータが返されたいです。あなたはあなたのデータを調べて、売り上げたアイテム(子供は本質的に数えます)を数え、その合計をあなたの目的地に書き込む必要があります。

子供を数えるためのFirebase関数の例については、Hereを参照してください。正しい値を数えるコードは、データの構造によって異なりますが、基本的に同じです。データを取得し、子供を数え、合計をデータベースにアップロードする必要があります。すべて1つのFirebase機能内で発生します。あなたの関数はonWriteによってトリガされるので、新しい書き込みや更新によってトリガされます。

合計をデータベースに書き込むときにトランザクションを使用することを確認してください。これは、その合計をデータベースに書き込むときに値が変更される可能性があるためです。

1

すべて作成した日付と終了日のような日付のファイルを作成すると、両方で同じ日付が保存され、日付に基づいて子供が検索されます。

var startDate = 14-02-17; 
var endDate = 14-02-17; 

ref.orderByChild("childID").startAt(startDate).endAt(endDate) 
     .addValueEventListener(new ValueEventListener() { 
} 


var query = firebase.database().ref('child').orderByChild('startDate').equalTo(startDate); 
関連する問題